From 2ea919a94774ea6acab320f0260b7b155b815d98 Mon Sep 17 00:00:00 2001 From: disclearing Date: Tue, 12 Feb 2019 17:38:11 +0000 Subject: [PATCH] :heart: --- (OLD) Paik/.classpath | 11 + (OLD) Paik/.project | 17 + .../.settings/org.eclipse.jdt.core.prefs | 11 + (OLD) Paik/META-INF/MANIFEST.MF | 3 + (OLD) Paik/bin/META-INF/MANIFEST.MF | 3 + (OLD) Paik/bin/config.yml | 39 + (OLD) Paik/bin/plugin.yml | 26 + (OLD) Paik/src/META-INF/MANIFEST.MF | 3 + (OLD) Paik/src/config.yml | 39 + (OLD) Paik/src/plugin.yml | 26 + .../src/secondlife/network/paik/Paik.java | 71 + .../network/paik/checks/combat/AutoBlock.java | 78 + .../paik/checks/combat/AutoClicker.java | 158 + .../network/paik/checks/combat/FastBow.java | 52 + .../network/paik/checks/combat/FastEat.java | 45 + .../network/paik/checks/combat/Killaura.java | 195 + .../network/paik/checks/combat/Reach.java | 77 + .../network/paik/checks/combat/Regen.java | 40 + .../paik/checks/movement/GroundSpoof.java | 47 + .../paik/checks/movement/Inventory.java | 84 + .../paik/checks/movement/NoSlowdown.java | 59 + .../network/paik/checks/movement/Sneak.java | 50 + .../network/paik/checks/movement/Speed.java | 513 ++ .../network/paik/checks/movement/Timer.java | 176 + .../paik/checks/movement/fly/FlyA.java | 135 + .../paik/checks/movement/fly/FlyB.java | 61 + .../network/paik/checks/other/Crash.java | 48 + .../paik/checks/other/CustomPayload.java | 56 + .../paik/checks/other/ImpossiblePitch.java | 25 + .../paik/checks/other/InvalidInteract.java | 35 + .../network/paik/checks/other/Nametags.java | 36 + .../network/paik/checks/other/PingSpoof.java | 40 + .../network/paik/checks/other/Refill.java | 74 + .../paik/commands/KillauraCommand.java | 42 + .../network/paik/commands/LogsCommand.java | 91 + .../network/paik/commands/OCMCCommand.java | 43 + .../network/paik/commands/PaikBanCommand.java | 77 + .../network/paik/commands/PaikCommand.java | 320 + .../network/paik/commands/PingCommand.java | 54 + .../network/paik/commands/zBaseCommand.java | 26 + .../network/paik/handlers/AlertsHandler.java | 31 + .../network/paik/handlers/CheatHandler.java | 428 + .../network/paik/handlers/CommandHandler.java | 60 + .../network/paik/handlers/PacketHandler.java | 217 + .../network/paik/handlers/PlayerHandler.java | 180 + .../paik/handlers/data/PlayerStats.java | 119 + .../handlers/data/PlayerStatsHandler.java | 57 + .../events/PlayerMoveByBlockEvent.java | 36 + .../handlers/fixes/BookExploitHandler.java | 52 + .../handlers/fixes/FenceGlitchHandler.java | 63 + .../network/paik/utils/CheatUtils.java | 260 + .../secondlife/network/paik/utils/Color.java | 10 + .../network/paik/utils/DirectoryUtils.java | 19 + .../network/paik/utils/Handler.java | 13 + .../network/paik/utils/LocationUtils.java | 10 + .../network/paik/utils/Message.java | 25 + .../network/paik/utils/PasteUtils.java | 582 ++ .../network/paik/utils/PlayerUtils.java | 13 + .../network/paik/utils/ServerUtils.java | 10 + .../network/paik/utils/file/ConfigFile.java | 92 + .../network/paik/utils/file/LogFile.java | 89 + Bungee/.classpath | 9 + Bungee/.project | 17 + Bungee/.settings/org.eclipse.jdt.core.prefs | 11 + Bungee/bin/META-INF/MANIFEST.MF | 3 + Bungee/bin/config.yml | 13 + Bungee/bin/plugin.yml | 4 + .../secondlife/network/bungee/Bungee$1.class | Bin 0 -> 793 bytes .../secondlife/network/bungee/Bungee$2.class | Bin 0 -> 698 bytes .../secondlife/network/bungee/Bungee$3.class | Bin 0 -> 890 bytes .../secondlife/network/bungee/Bungee.class | Bin 0 -> 6811 bytes .../network/bungee/antibot/AntiBotUtils.class | Bin 0 -> 1346 bytes .../network/bungee/antibot/BotAttack$1.class | Bin 0 -> 1277 bytes .../network/bungee/antibot/BotAttack.class | Bin 0 -> 2544 bytes .../network/bungee/antibot/BotBoth.class | Bin 0 -> 7469 bytes .../bungee/commands/ABNatureCommand.class | Bin 0 -> 2292 bytes .../bungee/commands/ABVisualCommand.class | Bin 0 -> 2598 bytes .../bungee/commands/GListCommand.class | Bin 0 -> 2285 bytes .../network/bungee/commands/HubCommand.class | Bin 0 -> 1859 bytes .../network/bungee/commands/JoinCommand.class | Bin 0 -> 2305 bytes .../bungee/commands/MaintenanceCommand.class | Bin 0 -> 1695 bytes .../network/bungee/commands/MotdCommand.class | Bin 0 -> 1698 bytes .../bungee/commands/ReloadCommand.class | Bin 0 -> 1149 bytes .../bungee/commands/ReportCommand.class | Bin 0 -> 4051 bytes .../bungee/commands/RequestCommand.class | Bin 0 -> 4645 bytes .../bungee/commands/SilentCommand.class | Bin 0 -> 1658 bytes .../bungee/commands/StaffChatCommand.class | Bin 0 -> 1686 bytes .../bungee/commands/StaffListCommand.class | Bin 0 -> 3179 bytes .../bungee/handlers/AnnounceHandler.class | Bin 0 -> 2875 bytes .../bungee/handlers/AntiBotHandler$1.class | Bin 0 -> 1947 bytes .../bungee/handlers/AntiBotHandler$2.class | Bin 0 -> 1495 bytes .../bungee/handlers/AntiBotHandler.class | Bin 0 -> 6372 bytes .../handlers/AutoMessageHandler$1.class | Bin 0 -> 1271 bytes .../bungee/handlers/AutoMessageHandler.class | Bin 0 -> 3013 bytes .../bungee/handlers/MaintenanceHandler.class | Bin 0 -> 3075 bytes .../network/bungee/handlers/MotdHandler.class | Bin 0 -> 1984 bytes .../bungee/handlers/PlayerHandler$1.class | Bin 0 -> 1688 bytes .../bungee/handlers/PlayerHandler$2.class | Bin 0 -> 741 bytes .../bungee/handlers/PlayerHandler.class | Bin 0 -> 7365 bytes .../handlers/PluginMessageHandler.class | Bin 0 -> 9452 bytes .../bungee/handlers/ReportHandler.class | Bin 0 -> 1891 bytes .../bungee/handlers/RequestHandler.class | Bin 0 -> 1895 bytes .../bungee/handlers/SilentHandler.class | Bin 0 -> 699 bytes .../bungee/handlers/StaffChatHandler.class | Bin 0 -> 3522 bytes .../network/bungee/utils/Color.class | Bin 0 -> 566 bytes .../network/bungee/utils/Handler.class | Bin 0 -> 812 bytes .../network/bungee/utils/Message.class | Bin 0 -> 1333 bytes .../network/bungee/utils/NumberUtils.class | Bin 0 -> 667 bytes .../network/bungee/utils/StringUtils.class | Bin 0 -> 1894 bytes Bungee/out/production/Bungee/config.yml | 13 + Bungee/out/production/Bungee/plugin.yml | 4 + .../secondlife/network/bungee/Bungee$1.class | Bin 0 -> 793 bytes .../secondlife/network/bungee/Bungee$2.class | Bin 0 -> 698 bytes .../secondlife/network/bungee/Bungee$3.class | Bin 0 -> 890 bytes .../secondlife/network/bungee/Bungee.class | Bin 0 -> 6889 bytes .../network/bungee/antibot/AntiBotUtils.class | Bin 0 -> 1346 bytes .../network/bungee/antibot/BotAttack$1.class | Bin 0 -> 1277 bytes .../network/bungee/antibot/BotAttack.class | Bin 0 -> 2544 bytes .../network/bungee/antibot/BotBoth.class | Bin 0 -> 7469 bytes .../bungee/commands/ABNatureCommand.class | Bin 0 -> 2292 bytes .../bungee/commands/ABVisualCommand.class | Bin 0 -> 2513 bytes .../bungee/commands/GListCommand.class | Bin 0 -> 2285 bytes .../network/bungee/commands/HubCommand.class | Bin 0 -> 1859 bytes .../network/bungee/commands/JoinCommand.class | Bin 0 -> 2311 bytes .../bungee/commands/MaintenanceCommand.class | Bin 0 -> 1695 bytes .../network/bungee/commands/MotdCommand.class | Bin 0 -> 1698 bytes .../bungee/commands/ReloadCommand.class | Bin 0 -> 1149 bytes .../bungee/commands/ReportCommand.class | Bin 0 -> 4051 bytes .../bungee/commands/RequestCommand.class | Bin 0 -> 4674 bytes .../bungee/commands/SilentCommand.class | Bin 0 -> 1658 bytes .../bungee/commands/StaffChatCommand.class | Bin 0 -> 1692 bytes .../bungee/commands/StaffListCommand.class | Bin 0 -> 3179 bytes .../bungee/handlers/AnnounceHandler.class | Bin 0 -> 2863 bytes .../bungee/handlers/AntiBotHandler$1.class | Bin 0 -> 1947 bytes .../bungee/handlers/AntiBotHandler$2.class | Bin 0 -> 1495 bytes .../bungee/handlers/AntiBotHandler.class | Bin 0 -> 6372 bytes .../bungee/handlers/AutoMessageHandler.class | Bin 0 -> 3670 bytes .../bungee/handlers/MaintenanceHandler.class | Bin 0 -> 3075 bytes .../network/bungee/handlers/MotdHandler.class | Bin 0 -> 1984 bytes .../bungee/handlers/PlayerHandler$1.class | Bin 0 -> 1688 bytes .../bungee/handlers/PlayerHandler$2.class | Bin 0 -> 741 bytes .../bungee/handlers/PlayerHandler.class | Bin 0 -> 7517 bytes .../handlers/PluginMessageHandler.class | Bin 0 -> 9454 bytes .../bungee/handlers/ReportHandler.class | Bin 0 -> 1891 bytes .../bungee/handlers/RequestHandler.class | Bin 0 -> 1895 bytes .../bungee/handlers/SilentHandler.class | Bin 0 -> 699 bytes .../bungee/handlers/StaffChatHandler.class | Bin 0 -> 3522 bytes .../network/bungee/utils/Color.class | Bin 0 -> 566 bytes .../network/bungee/utils/Handler.class | Bin 0 -> 812 bytes .../network/bungee/utils/Message.class | Bin 0 -> 1333 bytes .../network/bungee/utils/NumberUtils.class | Bin 0 -> 667 bytes .../network/bungee/utils/StringUtils.class | Bin 0 -> 1894 bytes .../BungeeCore/META-INF/MANIFEST.MF | 3 + Bungee/out/production/BungeeCore/config.yml | 13 + Bungee/out/production/BungeeCore/plugin.yml | 4 + .../secondlife/network/bungee/Bungee$1.class | Bin 0 -> 793 bytes .../secondlife/network/bungee/Bungee$2.class | Bin 0 -> 698 bytes .../secondlife/network/bungee/Bungee$3.class | Bin 0 -> 890 bytes .../secondlife/network/bungee/Bungee.class | Bin 0 -> 6811 bytes .../network/bungee/antibot/AntiBotUtils.class | Bin 0 -> 1346 bytes .../network/bungee/antibot/BotAttack$1.class | Bin 0 -> 1277 bytes .../network/bungee/antibot/BotAttack.class | Bin 0 -> 2544 bytes .../network/bungee/antibot/BotBoth.class | Bin 0 -> 7469 bytes .../bungee/commands/ABNatureCommand.class | Bin 0 -> 2292 bytes .../bungee/commands/ABVisualCommand.class | Bin 0 -> 2513 bytes .../bungee/commands/GListCommand.class | Bin 0 -> 2285 bytes .../network/bungee/commands/HubCommand.class | Bin 0 -> 1859 bytes .../network/bungee/commands/JoinCommand.class | Bin 0 -> 2305 bytes .../bungee/commands/MaintenanceCommand.class | Bin 0 -> 1695 bytes .../network/bungee/commands/MotdCommand.class | Bin 0 -> 1698 bytes .../bungee/commands/ReloadCommand.class | Bin 0 -> 1149 bytes .../bungee/commands/ReportCommand.class | Bin 0 -> 4051 bytes .../bungee/commands/RequestCommand.class | Bin 0 -> 4645 bytes .../bungee/commands/SilentCommand.class | Bin 0 -> 1658 bytes .../bungee/commands/StaffChatCommand.class | Bin 0 -> 1686 bytes .../bungee/commands/StaffListCommand.class | Bin 0 -> 3179 bytes .../bungee/handlers/AnnounceHandler.class | Bin 0 -> 2875 bytes .../bungee/handlers/AntiBotHandler$1.class | Bin 0 -> 1947 bytes .../bungee/handlers/AntiBotHandler$2.class | Bin 0 -> 1495 bytes .../bungee/handlers/AntiBotHandler.class | Bin 0 -> 6372 bytes .../handlers/AutoMessageHandler$1.class | Bin 0 -> 1271 bytes .../bungee/handlers/AutoMessageHandler.class | Bin 0 -> 3013 bytes .../bungee/handlers/MaintenanceHandler.class | Bin 0 -> 3075 bytes .../network/bungee/handlers/MotdHandler.class | Bin 0 -> 1984 bytes .../bungee/handlers/PlayerHandler$1.class | Bin 0 -> 1688 bytes .../bungee/handlers/PlayerHandler$2.class | Bin 0 -> 741 bytes .../bungee/handlers/PlayerHandler.class | Bin 0 -> 7383 bytes .../handlers/PluginMessageHandler.class | Bin 0 -> 9452 bytes .../bungee/handlers/ReportHandler.class | Bin 0 -> 1891 bytes .../bungee/handlers/RequestHandler.class | Bin 0 -> 1895 bytes .../bungee/handlers/SilentHandler.class | Bin 0 -> 699 bytes .../bungee/handlers/StaffChatHandler.class | Bin 0 -> 3522 bytes .../network/bungee/utils/Color.class | Bin 0 -> 566 bytes .../network/bungee/utils/Handler.class | Bin 0 -> 812 bytes .../network/bungee/utils/Message.class | Bin 0 -> 1333 bytes .../network/bungee/utils/NumberUtils.class | Bin 0 -> 667 bytes .../network/bungee/utils/StringUtils.class | Bin 0 -> 1894 bytes Bungee/src/META-INF/MANIFEST.MF | 3 + Bungee/src/config.yml | 13 + Bungee/src/plugin.yml | 4 + .../src/secondlife/network/bungee/Bungee.java | 151 + .../network/bungee/antibot/AntiBotUtils.java | 17 + .../network/bungee/antibot/BotAttack.java | 98 + .../network/bungee/antibot/BotBoth.java | 253 + .../bungee/commands/ABNatureCommand.java | 86 + .../bungee/commands/ABVisualCommand.java | 61 + .../network/bungee/commands/GListCommand.java | 38 + .../network/bungee/commands/HubCommand.java | 34 + .../network/bungee/commands/JoinCommand.java | 56 + .../bungee/commands/MaintenanceCommand.java | 35 + .../network/bungee/commands/MotdCommand.java | 34 + .../bungee/commands/ReloadCommand.java | 23 + .../bungee/commands/ReportCommand.java | 83 + .../bungee/commands/RequestCommand.java | 100 + .../bungee/commands/SilentCommand.java | 35 + .../bungee/commands/StaffChatCommand.java | 43 + .../bungee/commands/StaffListCommand.java | 65 + .../bungee/handlers/AnnounceHandler.java | 50 + .../bungee/handlers/AntiBotHandler.java | 160 + .../bungee/handlers/AutoMessageHandler.java | 46 + .../bungee/handlers/MaintenanceHandler.java | 48 + .../network/bungee/handlers/MotdHandler.java | 35 + .../bungee/handlers/PlayerHandler.java | 179 + .../bungee/handlers/PluginMessageHandler.java | 209 + .../bungee/handlers/ReportHandler.java | 38 + .../bungee/handlers/RequestHandler.java | 38 + .../bungee/handlers/SilentHandler.java | 18 + .../bungee/handlers/StaffChatHandler.java | 62 + .../network/bungee/utils/Color.java | 10 + .../network/bungee/utils/Handler.java | 22 + .../network/bungee/utils/Message.java | 22 + .../network/bungee/utils/NumberUtils.java | 13 + .../network/bungee/utils/StringUtils.java | 39 + .../production/Factions/META-INF/MANIFEST.MF | 3 + Factions/out/production/Factions/config.yml | 124 + Factions/out/production/Factions/plugin.yml | 6 + .../network/victions/Victions.class | Bin 0 -> 7277 bytes .../network/victions/VictionsAPI.class | Bin 0 -> 6698 bytes .../network/victions/VictionsConfig.class | Bin 0 -> 1374 bytes .../victions/commands/BalanceCommand.class | Bin 0 -> 2427 bytes .../victions/commands/DonatorCommands.class | Bin 0 -> 3715 bytes .../victions/commands/HomeCommand.class | Bin 0 -> 5538 bytes .../victions/commands/KitCommand.class | Bin 0 -> 7956 bytes .../victions/commands/LogoutCommand.class | Bin 0 -> 1328 bytes .../victions/commands/TeleportCommands.class | Bin 0 -> 7961 bytes .../handler/CustomMovemomentHandler.class | Bin 0 -> 2208 bytes .../secondlife/network/victions/kit/Kit.class | Bin 0 -> 3214 bytes .../network/victions/kit/PlayerKit.class | Bin 0 -> 2707 bytes .../victions/listeners/ChatListener.class | Bin 0 -> 3260 bytes .../listeners/ChunkBusterListener.class | Bin 0 -> 4105 bytes .../listeners/EntityLimiterListener.class | Bin 0 -> 1557 bytes .../victions/listeners/FactionsListener.class | Bin 0 -> 15442 bytes .../victions/listeners/MobStackListener.class | Bin 0 -> 1500 bytes .../victions/listeners/PlayerListener$1.class | Bin 0 -> 673 bytes .../victions/listeners/PlayerListener.class | Bin 0 -> 8795 bytes .../listeners/PotionLimitListener$1.class | Bin 0 -> 3254 bytes .../listeners/PotionLimitListener.class | Bin 0 -> 7877 bytes .../victions/listeners/SellWandListener.class | Bin 0 -> 8308 bytes .../victions/listeners/SpawnTagListener.class | Bin 0 -> 5445 bytes .../managers/EntityLimiterManager.class | Bin 0 -> 2826 bytes .../victions/managers/FactionsManager.class | Bin 0 -> 3102 bytes .../victions/managers/GlassManager.class | Bin 0 -> 6352 bytes .../victions/managers/KitManager.class | Bin 0 -> 6859 bytes .../victions/managers/MobStackManager$1.class | Bin 0 -> 2235 bytes .../victions/managers/MobStackManager.class | Bin 0 -> 5383 bytes .../victions/managers/PlayerManager.class | Bin 0 -> 12253 bytes .../PotionLimitManager$PotionLimit.class | Bin 0 -> 1352 bytes .../managers/PotionLimitManager.class | Bin 0 -> 3422 bytes .../victions/managers/SellWandManager.class | Bin 0 -> 2626 bytes .../victions/managers/TeleportManager.class | Bin 0 -> 949 bytes .../victions/player/FactionsData.class | Bin 0 -> 15312 bytes .../providers/ScoreboardProvider.class | Bin 0 -> 5452 bytes .../network/victions/tasks/FactionsTask.class | Bin 0 -> 3982 bytes .../victions/utilities/CustomLocation.class | Bin 0 -> 5958 bytes .../victions/utilities/FactionsUtils.class | Bin 0 -> 606 bytes .../victions/utilities/GlowEnchantment.class | Bin 0 -> 2195 bytes .../network/victions/utilities/Manager.class | Bin 0 -> 658 bytes Factions/src/META-INF/MANIFEST.MF | 3 + Factions/src/config.yml | 124 + Factions/src/plugin.yml | 6 + .../secondlife/network/victions/Victions.java | 88 + .../network/victions/VictionsAPI.java | 128 + .../network/victions/VictionsConfig.java | 16 + .../victions/commands/BalanceCommand.java | 40 + .../victions/commands/DonatorCommands.java | 66 + .../victions/commands/HomeCommand.java | 89 + .../network/victions/commands/KitCommand.java | 329 + .../victions/commands/LogoutCommand.java | 25 + .../victions/commands/TeleportCommands.java | 170 + .../handler/CustomMovemomentHandler.java | 44 + .../secondlife/network/victions/kit/Kit.java | 34 + .../network/victions/kit/PlayerKit.java | 39 + .../victions/listeners/ChatListener.java | 62 + .../listeners/ChunkBusterListener.java | 63 + .../listeners/EntityLimiterListener.java | 22 + .../victions/listeners/FactionsListener.java | 386 + .../victions/listeners/MobStackListener.java | 22 + .../victions/listeners/PlayerListener.java | 179 + .../listeners/PotionLimitListener.java | 154 + .../victions/listeners/SellWandListener.java | 168 + .../victions/listeners/SpawnTagListener.java | 122 + .../managers/EntityLimiterManager.java | 37 + .../victions/managers/FactionsManager.java | 78 + .../victions/managers/GlassManager.java | 128 + .../network/victions/managers/KitManager.java | 92 + .../victions/managers/MobStackManager.java | 130 + .../victions/managers/PlayerManager.java | 241 + .../victions/managers/PotionLimitManager.java | 51 + .../victions/managers/SellWandManager.java | 35 + .../victions/managers/TeleportManager.java | 24 + .../network/victions/player/FactionsData.java | 265 + .../providers/ScoreboardProvider.java | 105 + .../network/victions/tasks/FactionsTask.java | 51 + .../victions/utilities/CustomLocation.java | 136 + .../victions/utilities/FactionsUtils.java | 15 + .../victions/utilities/GlowEnchantment.java | 71 + .../network/victions/utilities/Manager.java | 16 + HCF/out/production/HCF/META-INF/MANIFEST.MF | 3 + HCF/out/production/HCF/config.yml | 49 + HCF/out/production/HCF/factions.yml | 1 + HCF/out/production/HCF/limiters.yml | 107 + HCF/out/production/HCF/plugin.yml | 114 + HCF/out/production/HCF/schedules.yml | 9 + .../secondlife/network/hcfactions/HCF$1.class | Bin 0 -> 1704 bytes .../secondlife/network/hcfactions/HCF.class | Bin 0 -> 11599 bytes .../network/hcfactions/HCFConfiguration.class | Bin 0 -> 3268 bytes .../network/hcfactions/classes/Archer.class | Bin 0 -> 7736 bytes .../network/hcfactions/classes/Bard$1.class | Bin 0 -> 4094 bytes .../network/hcfactions/classes/Bard.class | Bin 0 -> 12869 bytes .../network/hcfactions/classes/Miner.class | Bin 0 -> 2128 bytes .../network/hcfactions/classes/Rogue.class | Bin 0 -> 9103 bytes .../hcfactions/classes/utils/ArmorClass.class | Bin 0 -> 3109 bytes .../classes/utils/ArmorClassHandler.class | Bin 0 -> 4144 bytes .../classes/utils/bard/BardData.class | Bin 0 -> 1436 bytes .../classes/utils/bard/EffectData.class | Bin 0 -> 1191 bytes .../utils/bard/EffectRestorerHandler$1.class | Bin 0 -> 1206 bytes .../utils/bard/EffectRestorerHandler.class | Bin 0 -> 5310 bytes .../utils/events/ArmorClassEquipEvent.class | Bin 0 -> 1160 bytes .../utils/events/ArmorClassUnequipEvent.class | Bin 0 -> 1166 bytes .../hcfactions/commands/BaseCommand.class | Bin 0 -> 1292 bytes .../hcfactions/commands/CommandHandler.class | Bin 0 -> 4778 bytes .../commands/arguments/BalanceCommand.class | Bin 0 -> 2973 bytes .../commands/arguments/ChestCommand.class | Bin 0 -> 2361 bytes .../commands/arguments/CoordsCommand.class | Bin 0 -> 1383 bytes .../commands/arguments/EOTWCommand$1.class | Bin 0 -> 279 bytes .../arguments/EOTWCommand$EotwPrompt.class | Bin 0 -> 2760 bytes .../commands/arguments/EOTWCommand.class | Bin 0 -> 5302 bytes .../commands/arguments/EventCommand.class | Bin 0 -> 12671 bytes .../arguments/FirstJoinItemsCommand.class | Bin 0 -> 3010 bytes .../commands/arguments/FocusCommand.class | Bin 0 -> 5668 bytes .../commands/arguments/HelpCommand.class | Bin 0 -> 1375 bytes .../commands/arguments/LogoutCommand$1.class | Bin 0 -> 2709 bytes .../commands/arguments/LogoutCommand.class | Bin 0 -> 3091 bytes .../commands/arguments/MapKitCommand.class | Bin 0 -> 1717 bytes .../commands/arguments/PayCommand.class | Bin 0 -> 2820 bytes .../commands/arguments/ReclaimCommand.class | Bin 0 -> 4451 bytes .../commands/arguments/RegenCommand$1.class | Bin 0 -> 970 bytes .../commands/arguments/RegenCommand.class | Bin 0 -> 3930 bytes .../commands/arguments/SaveDataCommand.class | Bin 0 -> 2031 bytes .../commands/arguments/SetCommand.class | Bin 0 -> 2963 bytes .../commands/arguments/SpawnCommand$1.class | Bin 0 -> 2497 bytes .../commands/arguments/SpawnCommand.class | Bin 0 -> 4483 bytes .../commands/arguments/StatsCommand.class | Bin 0 -> 3466 bytes .../arguments/TellCoordsCommand.class | Bin 0 -> 2252 bytes .../arguments/ToggleLightningCommand.class | Bin 0 -> 1686 bytes .../arguments/event/EventManagerCommand.class | Bin 0 -> 4064 bytes .../arguments/event/HostCommand.class | Bin 0 -> 4501 bytes .../arguments/event/JoinEventCommand.class | Bin 0 -> 4081 bytes .../arguments/event/LeaveEventCommand.class | Bin 0 -> 2476 bytes .../arguments/event/SpawnsCommand.class | Bin 0 -> 3185 bytes .../arguments/zSecondLifeCommand.class | Bin 0 -> 2908 bytes .../network/hcfactions/data/HCFData.class | Bin 0 -> 8063 bytes .../hcfactions/economy/EconomySign.class | Bin 0 -> 3968 bytes .../economy/EconomySignHandler$1.class | Bin 0 -> 1877 bytes .../economy/EconomySignHandler.class | Bin 0 -> 9264 bytes .../hcfactions/economy/EconomySignType.class | Bin 0 -> 1620 bytes .../elevators/SignElevatorHandler.class | Bin 0 -> 5944 bytes .../events/EventCountdownTask.class | Bin 0 -> 5687 bytes .../hcfactions/events/EventManager.class | Bin 0 -> 7218 bytes .../hcfactions/events/EventPlayer.class | Bin 0 -> 872 bytes .../hcfactions/events/EventState.class | Bin 0 -> 1162 bytes .../hcfactions/events/KitMapEvent.class | Bin 0 -> 11384 bytes .../hcfactions/events/SpawnManager.class | Bin 0 -> 3440 bytes .../events/sumo/SumoCountdownTask.class | Bin 0 -> 2124 bytes .../events/sumo/SumoEvent$SumoFightTask.class | Bin 0 -> 5498 bytes .../sumo/SumoEvent$WaterCheckTask.class | Bin 0 -> 2943 bytes .../hcfactions/events/sumo/SumoEvent.class | Bin 0 -> 11951 bytes .../events/sumo/SumoPlayer$SumoState.class | Bin 0 -> 1397 bytes .../hcfactions/events/sumo/SumoPlayer.class | Bin 0 -> 1694 bytes .../factions/AbstractFactionManager$1.class | Bin 0 -> 2324 bytes .../factions/AbstractFactionManager.class | Bin 0 -> 16348 bytes .../network/hcfactions/factions/Faction.class | Bin 0 -> 9975 bytes .../hcfactions/factions/FactionManager.class | Bin 0 -> 2159 bytes .../hcfactions/factions/FactionMember.class | Bin 0 -> 3937 bytes .../factions/FlatFileFactionManager.class | Bin 0 -> 3399 bytes .../factions/MongoFactionManager.class | Bin 0 -> 3073 bytes .../factions/claim/ClaimHandler$1.class | Bin 0 -> 1428 bytes .../factions/claim/ClaimHandler.class | Bin 0 -> 12019 bytes .../factions/claim/ClaimSelection.class | Bin 0 -> 3011 bytes .../factions/claim/ClaimWandHandler$1.class | Bin 0 -> 1334 bytes .../factions/claim/ClaimWandHandler$2.class | Bin 0 -> 796 bytes .../factions/claim/ClaimWandHandler.class | Bin 0 -> 12383 bytes .../hcfactions/factions/claim/ClaimZone.class | Bin 0 -> 5333 bytes .../factions/commands/SubCommand.class | Bin 0 -> 1171 bytes .../commands/SubCommandExecutor.class | Bin 0 -> 10449 bytes .../commands/captain/FactionAllyCommand.class | Bin 0 -> 5908 bytes .../captain/FactionAnnouncementCommand.class | Bin 0 -> 3657 bytes .../captain/FactionClaimCommand.class | Bin 0 -> 2648 bytes .../captain/FactionClaimsCommand.class | Bin 0 -> 3960 bytes .../captain/FactionInviteCommand.class | Bin 0 -> 5532 bytes .../captain/FactionInvitesCommand.class | Bin 0 -> 3906 bytes .../commands/captain/FactionKickCommand.class | Bin 0 -> 3940 bytes .../captain/FactionPromoteCommand.class | Bin 0 -> 3363 bytes .../captain/FactionSetHomeCommand.class | Bin 0 -> 3704 bytes .../commands/captain/FactionTagCommand.class | Bin 0 -> 4518 bytes .../captain/FactionUnallyCommand.class | Bin 0 -> 5528 bytes .../captain/FactionUninviteCommand.class | Bin 0 -> 3518 bytes .../captain/FactionWithdrawCommand.class | Bin 0 -> 3960 bytes .../leader/FactionCoLeaderCommand.class | Bin 0 -> 3361 bytes .../leader/FactionDemoteCommand.class | Bin 0 -> 3535 bytes .../leader/FactionDisbandCommand$1.class | Bin 0 -> 1289 bytes .../leader/FactionDisbandCommand.class | Bin 0 -> 4219 bytes .../leader/FactionLeaderCommand.class | Bin 0 -> 3231 bytes .../member/FactionAcceptCommand.class | Bin 0 -> 4499 bytes .../commands/member/FactionChatCommand.class | Bin 0 -> 4222 bytes .../member/FactionCreateCommand.class | Bin 0 -> 3311 bytes .../member/FactionDepositCommand.class | Bin 0 -> 3948 bytes .../member/FactionHomeCommand$1.class | Bin 0 -> 842 bytes .../commands/member/FactionHomeCommand.class | Bin 0 -> 4270 bytes .../commands/member/FactionLeaveCommand.class | Bin 0 -> 3418 bytes .../member/FactionListCommand$1.class | Bin 0 -> 1281 bytes .../commands/member/FactionListCommand.class | Bin 0 -> 9643 bytes .../commands/member/FactionMapCommand.class | Bin 0 -> 2688 bytes .../member/FactionPointsCommand.class | Bin 0 -> 5897 bytes .../commands/member/FactionShowCommand.class | Bin 0 -> 2192 bytes .../commands/member/FactionStuckCommand.class | Bin 0 -> 2399 bytes .../member/FactionUnclaimCommand.class | Bin 0 -> 4448 bytes .../staff/FactionClaimforCommand.class | Bin 0 -> 3803 bytes ...earclaimsCommand$ClaimClearAllPrompt.class | Bin 0 -> 4064 bytes .../staff/FactionClearclaimsCommand.class | Bin 0 -> 4159 bytes .../staff/FactionCreateSystemCommand.class | Bin 0 -> 3578 bytes .../staff/FactionForceDemoteCommand.class | Bin 0 -> 3062 bytes .../staff/FactionForceJoinCommand.class | Bin 0 -> 3503 bytes .../staff/FactionForceKickCommand.class | Bin 0 -> 3267 bytes .../staff/FactionForceLeaderCommand.class | Bin 0 -> 3495 bytes .../staff/FactionForcePromoteCommand.class | Bin 0 -> 3069 bytes ...FactionRemoveCommand$RemoveAllPrompt.class | Bin 0 -> 3856 bytes .../commands/staff/FactionRemoveCommand.class | Bin 0 -> 3766 bytes .../staff/FactionSetBalanceCommand.class | Bin 0 -> 4082 bytes .../commands/staff/FactionSetDTRCommand.class | Bin 0 -> 3734 bytes .../staff/FactionSetDTRRegenCommand.class | Bin 0 -> 3535 bytes .../commands/staff/FactionTpHereCommand.class | Bin 0 -> 2845 bytes .../factions/handlers/FactionHandler.class | Bin 0 -> 10026 bytes .../handlers/ProtectionHandler$1.class | Bin 0 -> 1940 bytes .../factions/handlers/ProtectionHandler.class | Bin 0 -> 30245 bytes .../handlers/SignSubclaimHandler.class | Bin 0 -> 13638 bytes .../factions/type/ClaimableFaction.class | Bin 0 -> 8158 bytes .../factions/type/PlayerFaction$1.class | Bin 0 -> 1322 bytes .../factions/type/PlayerFaction$2.class | Bin 0 -> 981 bytes .../factions/type/PlayerFaction.class | Bin 0 -> 28475 bytes .../type/games/CapturableFaction.class | Bin 0 -> 955 bytes .../factions/type/games/EventFaction.class | Bin 0 -> 3683 bytes .../type/system/EndPortalFaction.class | Bin 0 -> 1605 bytes .../factions/type/system/RoadFaction.class | Bin 0 -> 1817 bytes .../factions/type/system/SpawnFaction.class | Bin 0 -> 1462 bytes .../factions/type/system/WarzoneFaction.class | Bin 0 -> 1269 bytes .../type/system/WildernessFaction.class | Bin 0 -> 1288 bytes .../factions/utils/CaptureZone.class | Bin 0 -> 5875 bytes .../hcfactions/factions/utils/LandMap.class | Bin 0 -> 5413 bytes .../utils/enums/ClaimChangeEnum.class | Bin 0 -> 1266 bytes .../utils/enums/FactionLeaveEnum.class | Bin 0 -> 1271 bytes .../utils/events/FactionChatEvent.class | Bin 0 -> 4180 bytes .../events/FactionClaimChangeEvent.class | Bin 0 -> 3396 bytes .../events/FactionClaimChangedEvent.class | Bin 0 -> 2461 bytes .../utils/events/FactionCreateEvent.class | Bin 0 -> 1547 bytes ...FactionDTRChangeEvent$DtrUpdateCause.class | Bin 0 -> 1494 bytes .../utils/events/FactionDTRChangeEvent.class | Bin 0 -> 2718 bytes .../factions/utils/events/FactionEvent.class | Bin 0 -> 1140 bytes ...tionPlayerClaimEnterEvent$EnterCause.class | Bin 0 -> 1514 bytes .../events/FactionPlayerClaimEnterEvent.class | Bin 0 -> 3260 bytes .../utils/events/FactionPlayerJoinEvent.class | Bin 0 -> 3272 bytes .../events/FactionPlayerJoinedEvent.class | Bin 0 -> 2664 bytes .../events/FactionPlayerLeaveEvent.class | Bin 0 -> 4243 bytes .../utils/events/FactionPlayerLeftEvent.class | Bin 0 -> 3434 bytes .../events/FactionRelationCreateEvent.class | Bin 0 -> 1846 bytes .../events/FactionRelationRemoveEvent.class | Bin 0 -> 1846 bytes .../utils/events/FactionRemoveEvent.class | Bin 0 -> 1547 bytes .../utils/events/FactionRenameEvent.class | Bin 0 -> 2188 bytes .../capzone/CaptureZoneEnterEvent.class | Bin 0 -> 2414 bytes .../capzone/CaptureZoneLeaveEvent.class | Bin 0 -> 2414 bytes .../utils/struction/ChatChannel$1.class | Bin 0 -> 954 bytes .../utils/struction/ChatChannel.class | Bin 0 -> 5006 bytes .../factions/utils/struction/Raidable.class | Bin 0 -> 487 bytes .../utils/struction/RegenStatus.class | Bin 0 -> 1842 bytes .../factions/utils/struction/Relation$1.class | Bin 0 -> 882 bytes .../factions/utils/struction/Relation.class | Bin 0 -> 2883 bytes .../factions/utils/struction/Role.class | Bin 0 -> 1726 bytes .../network/hcfactions/game/GameType.class | Bin 0 -> 2725 bytes .../hcfactions/game/events/GameManager.class | Bin 0 -> 739 bytes .../game/events/eotw/EOTWHandler.class | Bin 0 -> 6183 bytes .../game/events/eotw/EOTWRunnable.class | Bin 0 -> 1529 bytes .../game/events/faction/KothFaction.class | Bin 0 -> 5853 bytes .../hcfactions/game/type/KothType.class | Bin 0 -> 4860 bytes .../hcfactions/handlers/BorderHandler.class | Bin 0 -> 5940 bytes .../hcfactions/handlers/ChatHandler.class | Bin 0 -> 6975 bytes .../handlers/CombatLoggerHandler$1.class | Bin 0 -> 865 bytes .../handlers/CombatLoggerHandler$2.class | Bin 0 -> 1336 bytes .../handlers/CombatLoggerHandler$3.class | Bin 0 -> 1080 bytes .../handlers/CombatLoggerHandler$4.class | Bin 0 -> 1080 bytes .../handlers/CombatLoggerHandler$5.class | Bin 0 -> 2209 bytes .../handlers/CombatLoggerHandler.class | Bin 0 -> 14181 bytes .../handlers/CustomMovementHandler.class | Bin 0 -> 4201 bytes .../handlers/DeathMessagesHandler.class | Bin 0 -> 4850 bytes .../handlers/DynamicPlayerHandler$1.class | Bin 0 -> 1151 bytes .../handlers/DynamicPlayerHandler$2.class | Bin 0 -> 1164 bytes .../handlers/DynamicPlayerHandler$3.class | Bin 0 -> 1768 bytes .../handlers/DynamicPlayerHandler.class | Bin 0 -> 29867 bytes .../handlers/EventSignHandler.class | Bin 0 -> 6139 bytes ...urnaceSpeedHandler$FurnaceUpdateTask.class | Bin 0 -> 1114 bytes .../handlers/FurnaceSpeedHandler.class | Bin 0 -> 2491 bytes .../hcfactions/handlers/GlassHandler$1.class | Bin 0 -> 1454 bytes .../hcfactions/handlers/GlassHandler.class | Bin 0 -> 6515 bytes .../hcfactions/handlers/HCFDataHandler.class | Bin 0 -> 1966 bytes .../handlers/KillStreakHandler.class | Bin 0 -> 4738 bytes .../hcfactions/handlers/KitMapHandler$1.class | Bin 0 -> 1162 bytes .../hcfactions/handlers/KitMapHandler$2.class | Bin 0 -> 1012 bytes .../hcfactions/handlers/KitMapHandler.class | Bin 0 -> 4891 bytes .../handlers/KitSignHandler$1.class | Bin 0 -> 1082 bytes .../handlers/KitSignHandler$2.class | Bin 0 -> 1082 bytes .../handlers/KitSignHandler$3.class | Bin 0 -> 1082 bytes .../handlers/KitSignHandler$4.class | Bin 0 -> 1082 bytes .../handlers/KitSignHandler$5.class | Bin 0 -> 1082 bytes .../hcfactions/handlers/KitSignHandler.class | Bin 0 -> 13515 bytes .../hcfactions/handlers/MapKitHandler.class | Bin 0 -> 4444 bytes .../hcfactions/handlers/NametagsHandler.class | Bin 0 -> 2780 bytes .../handlers/OnlineDonatorsHandler$1.class | Bin 0 -> 3327 bytes .../handlers/OnlineDonatorsHandler.class | Bin 0 -> 1218 bytes .../hcfactions/handlers/PearlFixHandler.class | Bin 0 -> 6208 bytes .../hcfactions/handlers/RegisterHandler.class | Bin 0 -> 6102 bytes .../handlers/ScoreboardLayoutHandler.class | Bin 0 -> 16056 bytes .../hcfactions/handlers/ShopHandler.class | Bin 0 -> 16317 bytes .../handlers/TabLayoutHandler.class | Bin 0 -> 12329 bytes .../handlers/ThrowableCobwebHandler$1.class | Bin 0 -> 1655 bytes .../handlers/ThrowableCobwebHandler.class | Bin 0 -> 6046 bytes .../network/hcfactions/staff/OptionType.class | Bin 0 -> 2341 bytes .../hcfactions/staff/StaffPlayerData.class | Bin 0 -> 1093 bytes .../staff/commands/StaffModeCommand.class | Bin 0 -> 1574 bytes .../staff/commands/VanishCommand.class | Bin 0 -> 3354 bytes .../staff/handlers/StaffModeHandler$1.class | Bin 0 -> 991 bytes .../staff/handlers/StaffModeHandler.class | Bin 0 -> 14004 bytes .../staff/handlers/VanishHandler$1.class | Bin 0 -> 1889 bytes .../staff/handlers/VanishHandler.class | Bin 0 -> 11164 bytes .../hcfactions/stattrack/StatTracker.class | Bin 0 -> 3529 bytes .../stattrack/StatTrackerHandler.class | Bin 0 -> 2569 bytes .../stattrack/StatTrackerType.class | Bin 0 -> 1812 bytes .../hcfactions/timers/AppleHandler.class | Bin 0 -> 3378 bytes .../timers/ArcherHandler$TaggedTask.class | Bin 0 -> 1243 bytes .../hcfactions/timers/ArcherHandler.class | Bin 0 -> 1806 bytes .../timers/ClassWarmupHandler$1.class | Bin 0 -> 1288 bytes .../timers/ClassWarmupHandler$2.class | Bin 0 -> 1627 bytes .../timers/ClassWarmupHandler.class | Bin 0 -> 5295 bytes .../hcfactions/timers/EnderpearlHandler.class | Bin 0 -> 4021 bytes .../hcfactions/timers/GameHandler$1.class | Bin 0 -> 1357 bytes .../hcfactions/timers/GameHandler.class | Bin 0 -> 12562 bytes .../hcfactions/timers/GappleHandler.class | Bin 0 -> 3447 bytes .../hcfactions/timers/HomeHandler$1.class | Bin 0 -> 1547 bytes .../hcfactions/timers/HomeHandler.class | Bin 0 -> 6357 bytes .../timers/LogoutHandler$LogoutTask.class | Bin 0 -> 1505 bytes .../hcfactions/timers/LogoutHandler.class | Bin 0 -> 6031 bytes .../hcfactions/timers/SpawnTagHandler.class | Bin 0 -> 7573 bytes .../hcfactions/timers/StuckHandler$1.class | Bin 0 -> 879 bytes .../hcfactions/timers/StuckHandler.class | Bin 0 -> 6704 bytes .../utilties/ActionMessage$AMText.class | Bin 0 -> 4167 bytes .../ActionMessage$ClickableType.class | Bin 0 -> 1562 bytes .../hcfactions/utilties/ActionMessage.class | Bin 0 -> 3027 bytes .../utilties/CacheCleanerThread.class | Bin 0 -> 1526 bytes .../hcfactions/utilties/ChunkPosition.class | Bin 0 -> 582 bytes .../hcfactions/utilties/CustomLocation.class | Bin 0 -> 5964 bytes .../hcfactions/utilties/GenericUtils.class | Bin 0 -> 3873 bytes .../hcfactions/utilties/HCFUtils$1.class | Bin 0 -> 723 bytes .../hcfactions/utilties/HCFUtils.class | Bin 0 -> 12181 bytes .../network/hcfactions/utilties/Handler.class | Bin 0 -> 1372 bytes .../hcfactions/utilties/JavaUtils.class | Bin 0 -> 6198 bytes .../hcfactions/utilties/MapSorting$1.class | Bin 0 -> 1255 bytes .../hcfactions/utilties/MapSorting.class | Bin 0 -> 2145 bytes .../hcfactions/utilties/PacketUtils.class | Bin 0 -> 4210 bytes .../utilties/PersistableLocation.class | Bin 0 -> 5957 bytes .../hcfactions/utilties/TimeUtil.class | Bin 0 -> 8135 bytes .../utilties/events/BaseEvent.class | Bin 0 -> 1124 bytes .../utilties/events/EventStartEvent.class | Bin 0 -> 771 bytes .../hcfactions/utilties/file/ConfigFile.class | Bin 0 -> 3308 bytes .../utilties/file/LimitersFile.class | Bin 0 -> 3316 bytes .../utilties/file/SchedulesFile.class | Bin 0 -> 3320 bytes .../utilties/file/UtilitiesFile.class | Bin 0 -> 3320 bytes .../utilties/redis/Redis$RedisCommand.class | Bin 0 -> 421 bytes .../hcfactions/utilties/redis/Redis.class | Bin 0 -> 1998 bytes .../utilties/redis/UUIDHandler.class | Bin 0 -> 1000 bytes .../utilties/redis/UUIDUtils$1.class | Bin 0 -> 2030 bytes .../hcfactions/utilties/redis/UUIDUtils.class | Bin 0 -> 4805 bytes HCF/out/production/HCF/utilities.yml | 15 + .../production/HCFCore/META-INF/MANIFEST.MF | 3 + HCF/out/production/HCFCore/config.yml | 49 + HCF/out/production/HCFCore/limiters.yml | 107 + HCF/out/production/HCFCore/plugin.yml | 114 + HCF/out/production/HCFCore/schedules.yml | 9 + .../network/hcfactions/Configuration.class | Bin 0 -> 3259 bytes .../secondlife/network/hcfactions/HCF$1.class | Bin 0 -> 1692 bytes .../secondlife/network/hcfactions/HCF.class | Bin 0 -> 7545 bytes .../network/hcfactions/classes/Archer.class | Bin 0 -> 7751 bytes .../network/hcfactions/classes/Bard$1.class | Bin 0 -> 4094 bytes .../network/hcfactions/classes/Bard.class | Bin 0 -> 12875 bytes .../network/hcfactions/classes/Miner.class | Bin 0 -> 2125 bytes .../network/hcfactions/classes/Rogue.class | Bin 0 -> 9100 bytes .../hcfactions/classes/utils/ArmorClass.class | Bin 0 -> 3109 bytes .../classes/utils/ArmorClassHandler.class | Bin 0 -> 4144 bytes .../classes/utils/bard/BardData.class | Bin 0 -> 1436 bytes .../classes/utils/bard/EffectData.class | Bin 0 -> 1191 bytes .../utils/bard/EffectRestorerHandler$1.class | Bin 0 -> 1206 bytes .../utils/bard/EffectRestorerHandler.class | Bin 0 -> 5310 bytes .../utils/events/ArmorClassEquipEvent.class | Bin 0 -> 1160 bytes .../utils/events/ArmorClassUnequipEvent.class | Bin 0 -> 1166 bytes .../hcfactions/commands/BaseCommand.class | Bin 0 -> 1292 bytes .../hcfactions/commands/CommandHandler.class | Bin 0 -> 4775 bytes .../commands/arguments/BalanceCommand.class | Bin 0 -> 3000 bytes .../commands/arguments/ChestCommand.class | Bin 0 -> 2070 bytes .../commands/arguments/CoordsCommand.class | Bin 0 -> 1383 bytes .../commands/arguments/EOTWCommand$1.class | Bin 0 -> 279 bytes .../arguments/EOTWCommand$EotwPrompt.class | Bin 0 -> 2760 bytes .../commands/arguments/EOTWCommand.class | Bin 0 -> 5302 bytes .../commands/arguments/EventCommand.class | Bin 0 -> 12688 bytes .../arguments/FirstJoinItemsCommand.class | Bin 0 -> 3010 bytes .../commands/arguments/FocusCommand.class | Bin 0 -> 5433 bytes .../commands/arguments/HelpCommand.class | Bin 0 -> 1375 bytes .../commands/arguments/LogoutCommand$1.class | Bin 0 -> 2718 bytes .../commands/arguments/LogoutCommand.class | Bin 0 -> 2807 bytes .../commands/arguments/MapKitCommand.class | Bin 0 -> 1717 bytes .../commands/arguments/PayCommand.class | Bin 0 -> 2847 bytes .../commands/arguments/ReclaimCommand.class | Bin 0 -> 4368 bytes .../commands/arguments/RegenCommand$1.class | Bin 0 -> 970 bytes .../commands/arguments/RegenCommand.class | Bin 0 -> 3927 bytes .../commands/arguments/SaveDataCommand.class | Bin 0 -> 2019 bytes .../commands/arguments/SetCommand.class | Bin 0 -> 2963 bytes .../commands/arguments/SpawnCommand$1.class | Bin 0 -> 2497 bytes .../commands/arguments/SpawnCommand.class | Bin 0 -> 4236 bytes .../commands/arguments/StatsCommand.class | Bin 0 -> 3493 bytes .../arguments/TellCoordsCommand.class | Bin 0 -> 2252 bytes .../arguments/ToggleLightningCommand.class | Bin 0 -> 1713 bytes .../arguments/zSecondLifeCommand.class | Bin 0 -> 2747 bytes .../factions/AbstractFactionManager$1.class | Bin 0 -> 2381 bytes .../factions/AbstractFactionManager.class | Bin 0 -> 15895 bytes .../network/hcfactions/factions/Faction.class | Bin 0 -> 8465 bytes .../hcfactions/factions/FactionManager.class | Bin 0 -> 2159 bytes .../factions/MongoFactionHandler$1.class | Bin 0 -> 1273 bytes .../factions/MongoFactionHandler$2.class | Bin 0 -> 8560 bytes .../factions/MongoFactionHandler.class | Bin 0 -> 8327 bytes .../factions/claim/ClaimHandler$1.class | Bin 0 -> 1428 bytes .../factions/claim/ClaimHandler.class | Bin 0 -> 11984 bytes .../factions/claim/ClaimSelection.class | Bin 0 -> 3013 bytes .../factions/claim/ClaimWandHandler$1.class | Bin 0 -> 1334 bytes .../factions/claim/ClaimWandHandler$2.class | Bin 0 -> 796 bytes .../factions/claim/ClaimWandHandler.class | Bin 0 -> 12383 bytes .../hcfactions/factions/claim/ClaimZone.class | Bin 0 -> 4354 bytes .../factions/commands/SubCommand.class | Bin 0 -> 1171 bytes .../commands/SubCommandExecutor.class | Bin 0 -> 10449 bytes .../commands/captain/FactionAllyCommand.class | Bin 0 -> 5917 bytes .../captain/FactionAnnouncementCommand.class | Bin 0 -> 3669 bytes .../captain/FactionClaimCommand.class | Bin 0 -> 2648 bytes .../captain/FactionClaimsCommand.class | Bin 0 -> 3961 bytes .../captain/FactionInviteCommand.class | Bin 0 -> 5541 bytes .../captain/FactionInvitesCommand.class | Bin 0 -> 3906 bytes .../commands/captain/FactionKickCommand.class | Bin 0 -> 3960 bytes .../captain/FactionPromoteCommand.class | Bin 0 -> 3381 bytes .../captain/FactionSetHomeCommand.class | Bin 0 -> 3724 bytes .../commands/captain/FactionTagCommand.class | Bin 0 -> 4527 bytes .../captain/FactionUnallyCommand.class | Bin 0 -> 5537 bytes .../captain/FactionUninviteCommand.class | Bin 0 -> 3536 bytes .../captain/FactionWithdrawCommand.class | Bin 0 -> 4005 bytes .../leader/FactionCoLeaderCommand.class | Bin 0 -> 3379 bytes .../leader/FactionDemoteCommand.class | Bin 0 -> 3553 bytes .../leader/FactionDisbandCommand$1.class | Bin 0 -> 1289 bytes .../leader/FactionDisbandCommand.class | Bin 0 -> 4228 bytes .../leader/FactionLeaderCommand.class | Bin 0 -> 3249 bytes .../member/FactionAcceptCommand.class | Bin 0 -> 4508 bytes .../commands/member/FactionChatCommand.class | Bin 0 -> 4240 bytes .../member/FactionCreateCommand.class | Bin 0 -> 3308 bytes .../member/FactionDepositCommand.class | Bin 0 -> 3987 bytes .../member/FactionHomeCommand$1.class | Bin 0 -> 842 bytes .../commands/member/FactionHomeCommand.class | Bin 0 -> 4270 bytes .../commands/member/FactionLeaveCommand.class | Bin 0 -> 3432 bytes .../member/FactionListCommand$1.class | Bin 0 -> 1200 bytes .../commands/member/FactionListCommand.class | Bin 0 -> 7536 bytes .../commands/member/FactionMapCommand.class | Bin 0 -> 2715 bytes .../member/FactionPointsCommand.class | Bin 0 -> 6011 bytes .../commands/member/FactionShowCommand.class | Bin 0 -> 2192 bytes .../commands/member/FactionStuckCommand.class | Bin 0 -> 2408 bytes .../member/FactionUnclaimCommand.class | Bin 0 -> 4467 bytes .../staff/FactionClaimforCommand.class | Bin 0 -> 3803 bytes ...earclaimsCommand$ClaimClearAllPrompt.class | Bin 0 -> 4065 bytes .../staff/FactionClearclaimsCommand.class | Bin 0 -> 4160 bytes .../staff/FactionCreateSystemCommand.class | Bin 0 -> 3605 bytes .../staff/FactionForceDemoteCommand.class | Bin 0 -> 3080 bytes .../staff/FactionForceJoinCommand.class | Bin 0 -> 3515 bytes .../staff/FactionForceKickCommand.class | Bin 0 -> 3287 bytes .../staff/FactionForceLeaderCommand.class | Bin 0 -> 3519 bytes .../staff/FactionForcePromoteCommand.class | Bin 0 -> 3087 bytes ...FactionRemoveCommand$RemoveAllPrompt.class | Bin 0 -> 3856 bytes .../commands/staff/FactionRemoveCommand.class | Bin 0 -> 3766 bytes .../staff/FactionSetBalanceCommand.class | Bin 0 -> 4106 bytes .../commands/staff/FactionSetDTRCommand.class | Bin 0 -> 3734 bytes .../staff/FactionSetDTRRegenCommand.class | Bin 0 -> 3535 bytes .../commands/staff/FactionTpHereCommand.class | Bin 0 -> 2845 bytes .../factions/handlers/FactionHandler.class | Bin 0 -> 10044 bytes .../handlers/ProtectionHandler$1.class | Bin 0 -> 1940 bytes .../factions/handlers/ProtectionHandler.class | Bin 0 -> 31268 bytes .../handlers/SignSubclaimHandler.class | Bin 0 -> 13656 bytes .../factions/type/ClaimableFaction.class | Bin 0 -> 7271 bytes .../factions/type/PlayerFaction$1.class | Bin 0 -> 1322 bytes .../factions/type/PlayerFaction$2.class | Bin 0 -> 981 bytes .../factions/type/PlayerFaction.class | Bin 0 -> 25655 bytes .../type/games/CapturableFaction.class | Bin 0 -> 613 bytes .../factions/type/games/EventFaction.class | Bin 0 -> 3313 bytes .../type/system/EndPortalFaction.class | Bin 0 -> 1299 bytes .../factions/type/system/RoadFaction.class | Bin 0 -> 1532 bytes .../factions/type/system/SpawnFaction.class | Bin 0 -> 1153 bytes .../factions/type/system/WarzoneFaction.class | Bin 0 -> 1098 bytes .../type/system/WildernessFaction.class | Bin 0 -> 1117 bytes .../factions/utils/CaptureZone.class | Bin 0 -> 4669 bytes .../factions/utils/FactionMember.class | Bin 0 -> 2871 bytes .../hcfactions/factions/utils/LandMap.class | Bin 0 -> 5413 bytes .../utils/enums/ClaimChangeEnum.class | Bin 0 -> 1266 bytes .../utils/enums/FactionLeaveEnum.class | Bin 0 -> 1271 bytes .../utils/events/FactionChatEvent.class | Bin 0 -> 4204 bytes .../events/FactionClaimChangeEvent.class | Bin 0 -> 3396 bytes .../events/FactionClaimChangedEvent.class | Bin 0 -> 2461 bytes .../utils/events/FactionCreateEvent.class | Bin 0 -> 1547 bytes ...FactionDTRChangeEvent$DtrUpdateCause.class | Bin 0 -> 1494 bytes .../utils/events/FactionDTRChangeEvent.class | Bin 0 -> 2718 bytes .../factions/utils/events/FactionEvent.class | Bin 0 -> 1140 bytes ...tionPlayerClaimEnterEvent$EnterCause.class | Bin 0 -> 1514 bytes .../events/FactionPlayerClaimEnterEvent.class | Bin 0 -> 3260 bytes .../utils/events/FactionPlayerJoinEvent.class | Bin 0 -> 3272 bytes .../events/FactionPlayerJoinedEvent.class | Bin 0 -> 2664 bytes .../events/FactionPlayerLeaveEvent.class | Bin 0 -> 4243 bytes .../utils/events/FactionPlayerLeftEvent.class | Bin 0 -> 3434 bytes .../events/FactionRelationCreateEvent.class | Bin 0 -> 1846 bytes .../events/FactionRelationRemoveEvent.class | Bin 0 -> 1846 bytes .../utils/events/FactionRemoveEvent.class | Bin 0 -> 1547 bytes .../utils/events/FactionRenameEvent.class | Bin 0 -> 2188 bytes .../capzone/CaptureZoneEnterEvent.class | Bin 0 -> 2414 bytes .../capzone/CaptureZoneLeaveEvent.class | Bin 0 -> 2414 bytes .../utils/struction/ChatChannel$1.class | Bin 0 -> 954 bytes .../utils/struction/ChatChannel.class | Bin 0 -> 5003 bytes .../factions/utils/struction/Raidable.class | Bin 0 -> 487 bytes .../utils/struction/RegenStatus.class | Bin 0 -> 1842 bytes .../factions/utils/struction/Relation$1.class | Bin 0 -> 882 bytes .../factions/utils/struction/Relation.class | Bin 0 -> 2880 bytes .../factions/utils/struction/Role.class | Bin 0 -> 1726 bytes .../network/hcfactions/game/GameType.class | Bin 0 -> 2725 bytes .../hcfactions/game/events/GameManager.class | Bin 0 -> 757 bytes .../game/events/eotw/EOTWHandler.class | Bin 0 -> 6183 bytes .../game/events/eotw/EOTWRunnable.class | Bin 0 -> 4708 bytes .../game/events/faction/KothFaction.class | Bin 0 -> 5209 bytes .../hcfactions/game/type/KothType.class | Bin 0 -> 5129 bytes .../hcfactions/handlers/BorderHandler.class | Bin 0 -> 5937 bytes .../handlers/ChatControlHandler.class | Bin 0 -> 4588 bytes .../hcfactions/handlers/ChatHandler.class | Bin 0 -> 6987 bytes .../handlers/CombatLoggerHandler$1.class | Bin 0 -> 865 bytes .../handlers/CombatLoggerHandler$2.class | Bin 0 -> 1336 bytes .../handlers/CombatLoggerHandler$3.class | Bin 0 -> 1080 bytes .../handlers/CombatLoggerHandler$4.class | Bin 0 -> 1080 bytes .../handlers/CombatLoggerHandler$5.class | Bin 0 -> 2236 bytes .../handlers/CombatLoggerHandler.class | Bin 0 -> 14235 bytes .../handlers/DeathMessagesHandler.class | Bin 0 -> 4877 bytes .../handlers/DynamicPlayerHandler$1.class | Bin 0 -> 1151 bytes .../handlers/DynamicPlayerHandler$2.class | Bin 0 -> 1161 bytes .../handlers/DynamicPlayerHandler$3.class | Bin 0 -> 1768 bytes .../handlers/DynamicPlayerHandler.class | Bin 0 -> 26346 bytes .../handlers/EventSignHandler.class | Bin 0 -> 6139 bytes ...urnaceSpeedHandler$FurnaceUpdateTask.class | Bin 0 -> 1114 bytes .../handlers/FurnaceSpeedHandler.class | Bin 0 -> 2491 bytes .../hcfactions/handlers/GlassHandler$1.class | Bin 0 -> 1454 bytes .../hcfactions/handlers/GlassHandler.class | Bin 0 -> 6504 bytes .../hcfactions/handlers/MapKitHandler.class | Bin 0 -> 4444 bytes .../hcfactions/handlers/NametagsHandler.class | Bin 0 -> 2786 bytes .../handlers/OnlineDonatorsHandler$1.class | Bin 0 -> 3327 bytes .../handlers/OnlineDonatorsHandler.class | Bin 0 -> 1218 bytes .../handlers/RegisterHandler$1.class | Bin 0 -> 920 bytes .../hcfactions/handlers/RegisterHandler.class | Bin 0 -> 5979 bytes .../handlers/ScoreboardLayoutHandler.class | Bin 0 -> 11320 bytes .../handlers/TabLayoutHandler.class | Bin 0 -> 12398 bytes .../handlers/ThrowableCobwebHandler$1.class | Bin 0 -> 1655 bytes .../handlers/ThrowableCobwebHandler.class | Bin 0 -> 6161 bytes .../hcfactions/handlers/data/HCFData.class | Bin 0 -> 6193 bytes .../handlers/data/HCFDataHandler.class | Bin 0 -> 2003 bytes .../handlers/economy/EconomySign.class | Bin 0 -> 4049 bytes .../economy/EconomySignHandler$1.class | Bin 0 -> 1949 bytes .../handlers/economy/EconomySignHandler.class | Bin 0 -> 9390 bytes .../handlers/economy/EconomySignType.class | Bin 0 -> 1674 bytes .../elevators/SignElevatorHandler.class | Bin 0 -> 5962 bytes .../handlers/kitmap/KillStreakHandler.class | Bin 0 -> 4779 bytes .../handlers/kitmap/KitMapHandler$1.class | Bin 0 -> 1197 bytes .../handlers/kitmap/KitMapHandler$2.class | Bin 0 -> 1047 bytes .../handlers/kitmap/KitMapHandler.class | Bin 0 -> 4933 bytes .../handlers/kitmap/KitSignHandler$1.class | Bin 0 -> 1117 bytes .../handlers/kitmap/KitSignHandler$2.class | Bin 0 -> 1117 bytes .../handlers/kitmap/KitSignHandler$3.class | Bin 0 -> 1117 bytes .../handlers/kitmap/KitSignHandler$4.class | Bin 0 -> 1117 bytes .../handlers/kitmap/KitSignHandler$5.class | Bin 0 -> 1117 bytes .../handlers/kitmap/KitSignHandler.class | Bin 0 -> 13571 bytes .../handlers/kitmap/ShopHandler.class | Bin 0 -> 16358 bytes .../handlers/stattrack/StatTracker.class | Bin 0 -> 3592 bytes .../stattrack/StatTrackerHandler.class | Bin 0 -> 2632 bytes .../handlers/stattrack/StatTrackerType.class | Bin 0 -> 1866 bytes .../handlers/timers/AppleHandler.class | Bin 0 -> 3396 bytes .../timers/ArcherHandler$TaggedTask.class | Bin 0 -> 1270 bytes .../handlers/timers/ArcherHandler.class | Bin 0 -> 1833 bytes .../timers/ClassWarmupHandler$1.class | Bin 0 -> 1342 bytes .../timers/ClassWarmupHandler$2.class | Bin 0 -> 1672 bytes .../handlers/timers/ClassWarmupHandler.class | Bin 0 -> 5349 bytes .../handlers/timers/EnderpearlHandler.class | Bin 0 -> 4039 bytes .../handlers/timers/GameHandler$1.class | Bin 0 -> 1411 bytes .../handlers/timers/GameHandler.class | Bin 0 -> 12268 bytes .../handlers/timers/GappleHandler.class | Bin 0 -> 3483 bytes .../handlers/timers/HomeHandler$1.class | Bin 0 -> 1574 bytes .../handlers/timers/HomeHandler.class | Bin 0 -> 6382 bytes .../timers/LogoutHandler$LogoutTask.class | Bin 0 -> 1532 bytes .../handlers/timers/LogoutHandler.class | Bin 0 -> 6076 bytes .../handlers/timers/SpawnTagHandler.class | Bin 0 -> 7392 bytes .../handlers/timers/StuckHandler$1.class | Bin 0 -> 906 bytes .../handlers/timers/StuckHandler.class | Bin 0 -> 6734 bytes .../network/hcfactions/staff/OptionType.class | Bin 0 -> 2341 bytes .../hcfactions/staff/StaffPlayerData.class | Bin 0 -> 1093 bytes .../staff/commands/StaffModeCommand.class | Bin 0 -> 1586 bytes .../staff/commands/VanishCommand.class | Bin 0 -> 3354 bytes .../staff/handlers/StaffModeHandler$1.class | Bin 0 -> 991 bytes .../staff/handlers/StaffModeHandler.class | Bin 0 -> 14004 bytes .../staff/handlers/VanishHandler$1.class | Bin 0 -> 1889 bytes .../staff/handlers/VanishHandler.class | Bin 0 -> 11164 bytes .../utilties/ActionMessage$AMText.class | Bin 0 -> 4167 bytes .../ActionMessage$ClickableType.class | Bin 0 -> 1562 bytes .../hcfactions/utilties/ActionMessage.class | Bin 0 -> 3027 bytes .../utilties/CacheCleanerThread.class | Bin 0 -> 1526 bytes .../hcfactions/utilties/ChunkPosition.class | Bin 0 -> 582 bytes .../hcfactions/utilties/HCFUtils$1.class | Bin 0 -> 723 bytes .../hcfactions/utilties/HCFUtils.class | Bin 0 -> 9014 bytes .../network/hcfactions/utilties/Handler.class | Bin 0 -> 1581 bytes .../hcfactions/utilties/JavaUtils.class | Bin 0 -> 6198 bytes .../hcfactions/utilties/MapSorting$1.class | Bin 0 -> 1255 bytes .../hcfactions/utilties/MapSorting.class | Bin 0 -> 2145 bytes .../hcfactions/utilties/PacketUtils.class | Bin 0 -> 4210 bytes .../hcfactions/utilties/file/ConfigFile.class | Bin 0 -> 3308 bytes .../utilties/file/LimitersFile.class | Bin 0 -> 3316 bytes .../utilties/file/SchedulesFile.class | Bin 0 -> 3320 bytes .../utilties/file/UtilitiesFile.class | Bin 0 -> 3320 bytes .../utilties/redis/Redis$RedisCommand.class | Bin 0 -> 421 bytes .../hcfactions/utilties/redis/Redis.class | Bin 0 -> 2002 bytes .../utilties/redis/UUIDHandler.class | Bin 0 -> 1000 bytes .../utilties/redis/UUIDUtils$1.class | Bin 0 -> 2030 bytes .../hcfactions/utilties/redis/UUIDUtils.class | Bin 0 -> 4805 bytes HCF/out/production/HCFCore/utilities.yml | 15 + HCF/src/META-INF/MANIFEST.MF | 3 + HCF/src/config.yml | 49 + HCF/src/factions.yml | 1 + HCF/src/limiters.yml | 107 + HCF/src/plugin.yml | 114 + HCF/src/schedules.yml | 9 + .../secondlife/network/hcfactions/HCF.java | 186 + .../network/hcfactions/HCFConfiguration.java | 108 + .../network/hcfactions/classes/Archer.java | 204 + .../network/hcfactions/classes/Bard.java | 299 + .../network/hcfactions/classes/Miner.java | 42 + .../network/hcfactions/classes/Rogue.java | 217 + .../hcfactions/classes/utils/ArmorClass.java | 52 + .../classes/utils/ArmorClassHandler.java | 80 + .../classes/utils/bard/BardData.java | 43 + .../classes/utils/bard/EffectData.java | 22 + .../utils/bard/EffectRestorerHandler.java | 85 + .../utils/events/ArmorClassEquipEvent.java | 31 + .../utils/events/ArmorClassUnequipEvent.java | 31 + .../hcfactions/commands/BaseCommand.java | 29 + .../hcfactions/commands/CommandHandler.java | 75 + .../commands/arguments/BalanceCommand.java | 71 + .../commands/arguments/ChestCommand.java | 46 + .../commands/arguments/CoordsCommand.java | 24 + .../commands/arguments/EOTWCommand.java | 119 + .../commands/arguments/EventCommand.java | 362 + .../arguments/FirstJoinItemsCommand.java | 70 + .../commands/arguments/FocusCommand.java | 137 + .../commands/arguments/HelpCommand.java | 26 + .../commands/arguments/LogoutCommand.java | 67 + .../commands/arguments/MapKitCommand.java | 39 + .../commands/arguments/PayCommand.java | 67 + .../commands/arguments/ReclaimCommand.java | 126 + .../commands/arguments/RegenCommand.java | 59 + .../commands/arguments/SaveDataCommand.java | 34 + .../commands/arguments/SetCommand.java | 65 + .../commands/arguments/SpawnCommand.java | 102 + .../commands/arguments/StatsCommand.java | 76 + .../commands/arguments/TellCoordsCommand.java | 37 + .../arguments/ToggleLightningCommand.java | 37 + .../arguments/event/EventManagerCommand.java | 74 + .../commands/arguments/event/HostCommand.java | 85 + .../arguments/event/JoinEventCommand.java | 80 + .../arguments/event/LeaveEventCommand.java | 53 + .../arguments/event/SpawnsCommand.java | 56 + .../arguments/zSecondLifeCommand.java | 55 + .../network/hcfactions/data/HCFData.java | 152 + .../hcfactions/economy/EconomySign.java | 85 + .../economy/EconomySignHandler.java | 187 + .../hcfactions/economy/EconomySignType.java | 14 + .../elevators/SignElevatorHandler.java | 145 + .../hcfactions/events/EventCountdownTask.java | 94 + .../hcfactions/events/EventManager.java | 92 + .../hcfactions/events/EventPlayer.java | 13 + .../network/hcfactions/events/EventState.java | 8 + .../hcfactions/events/KitMapEvent.java | 173 + .../hcfactions/events/SpawnManager.java | 60 + .../events/sumo/SumoCountdownTask.java | 30 + .../hcfactions/events/sumo/SumoEvent.java | 285 + .../hcfactions/events/sumo/SumoPlayer.java | 26 + .../factions/AbstractFactionManager.java | 300 + .../network/hcfactions/factions/Faction.java | 194 + .../hcfactions/factions/FactionManager.java | 61 + .../hcfactions/factions/FactionMember.java | 64 + .../factions/FlatFileFactionManager.java | 65 + .../factions/MongoFactionManager.java | 327 + .../factions/claim/ClaimHandler.java | 270 + .../factions/claim/ClaimSelection.java | 50 + .../factions/claim/ClaimWandHandler.java | 245 + .../hcfactions/factions/claim/ClaimZone.java | 98 + .../factions/commands/SubCommand.java | 26 + .../factions/commands/SubCommandExecutor.java | 169 + .../commands/captain/FactionAllyCommand.java | 110 + .../captain/FactionAnnouncementCommand.java | 73 + .../commands/captain/FactionClaimCommand.java | 49 + .../captain/FactionClaimsCommand.java | 79 + .../captain/FactionInviteCommand.java | 90 + .../captain/FactionInvitesCommand.java | 55 + .../commands/captain/FactionKickCommand.java | 133 + .../captain/FactionPromoteCommand.java | 69 + .../captain/FactionSetHomeCommand.java | 65 + .../commands/captain/FactionTagCommand.java | 91 + .../captain/FactionUnallyCommand.java | 97 + .../captain/FactionUninviteCommand.java | 64 + .../captain/FactionWithdrawCommand.java | 77 + .../leader/FactionCoLeaderCommand.java | 66 + .../commands/leader/FactionDemoteCommand.java | 70 + .../leader/FactionDisbandCommand.java | 73 + .../commands/leader/FactionLeaderCommand.java | 65 + .../commands/member/FactionAcceptCommand.java | 74 + .../commands/member/FactionChatCommand.java | 65 + .../commands/member/FactionCreateCommand.java | 73 + .../member/FactionDepositCommand.java | 68 + .../commands/member/FactionHomeCommand.java | 99 + .../commands/member/FactionLeaveCommand.java | 48 + .../commands/member/FactionListCommand.java | 131 + .../commands/member/FactionMapCommand.java | 49 + .../commands/member/FactionPointsCommand.java | 56 + .../commands/member/FactionShowCommand.java | 51 + .../commands/member/FactionStuckCommand.java | 42 + .../member/FactionUnclaimCommand.java | 79 + .../staff/FactionClaimforCommand.java | 69 + .../staff/FactionClearclaimsCommand.java | 114 + .../staff/FactionCreateSystemCommand.java | 79 + .../staff/FactionForceDemoteCommand.java | 57 + .../staff/FactionForceJoinCommand.java | 62 + .../staff/FactionForceKickCommand.java | 61 + .../staff/FactionForceLeaderCommand.java | 69 + .../staff/FactionForcePromoteCommand.java | 58 + .../commands/staff/FactionRemoveCommand.java | 101 + .../staff/FactionSetBalanceCommand.java | 60 + .../commands/staff/FactionSetDTRCommand.java | 72 + .../staff/FactionSetDTRRegenCommand.java | 68 + .../commands/staff/FactionTpHereCommand.java | 52 + .../factions/handlers/FactionHandler.java | 161 + .../factions/handlers/ProtectionHandler.java | 669 ++ .../handlers/SignSubclaimHandler.java | 291 + .../factions/type/ClaimableFaction.java | 135 + .../factions/type/PlayerFaction.java | 630 ++ .../type/games/CapturableFaction.java | 19 + .../factions/type/games/EventFaction.java | 89 + .../type/system/EndPortalFaction.java | 37 + .../factions/type/system/RoadFaction.java | 38 + .../factions/type/system/SpawnFaction.java | 37 + .../factions/type/system/WarzoneFaction.java | 23 + .../type/system/WildernessFaction.java | 23 + .../factions/utils/CaptureZone.java | 132 + .../hcfactions/factions/utils/LandMap.java | 75 + .../factions/utils/enums/ClaimChangeEnum.java | 6 + .../utils/enums/FactionLeaveEnum.java | 6 + .../utils/events/FactionChatEvent.java | 49 + .../utils/events/FactionClaimChangeEvent.java | 44 + .../events/FactionClaimChangedEvent.java | 38 + .../utils/events/FactionCreateEvent.java | 34 + .../utils/events/FactionDTRChangeEvent.java | 47 + .../factions/utils/events/FactionEvent.java | 25 + .../events/FactionPlayerClaimEnterEvent.java | 48 + .../utils/events/FactionPlayerJoinEvent.java | 57 + .../events/FactionPlayerJoinedEvent.java | 48 + .../utils/events/FactionPlayerLeaveEvent.java | 63 + .../utils/events/FactionPlayerLeftEvent.java | 53 + .../events/FactionRelationCreateEvent.java | 68 + .../events/FactionRelationRemoveEvent.java | 69 + .../utils/events/FactionRemoveEvent.java | 34 + .../utils/events/FactionRenameEvent.java | 44 + .../events/capzone/CaptureZoneEnterEvent.java | 43 + .../events/capzone/CaptureZoneLeaveEvent.java | 43 + .../factions/utils/struction/ChatChannel.java | 121 + .../factions/utils/struction/Raidable.java | 18 + .../factions/utils/struction/RegenStatus.java | 18 + .../factions/utils/struction/Relation.java | 62 + .../factions/utils/struction/Role.java | 17 + .../network/hcfactions/game/GameType.java | 33 + .../hcfactions/game/events/GameManager.java | 19 + .../game/events/eotw/EOTWHandler.java | 136 + .../game/events/eotw/EOTWRunnable.java | 93 + .../game/events/faction/KothFaction.java | 92 + .../hcfactions/game/type/KothType.java | 80 + .../hcfactions/handlers/BorderHandler.java | 153 + .../hcfactions/handlers/ChatHandler.java | 132 + .../handlers/CombatLoggerHandler.java | 326 + .../handlers/CustomMovementHandler.java | 59 + .../handlers/DeathMessagesHandler.java | 87 + .../handlers/DynamicPlayerHandler.java | 681 ++ .../hcfactions/handlers/EventSignHandler.java | 117 + .../handlers/FurnaceSpeedHandler.java | 66 + .../hcfactions/handlers/GlassHandler.java | 124 + .../hcfactions/handlers/HCFDataHandler.java | 39 + .../handlers/KillStreakHandler.java | 98 + .../hcfactions/handlers/KitMapHandler.java | 99 + .../hcfactions/handlers/KitSignHandler.java | 550 ++ .../hcfactions/handlers/MapKitHandler.java | 105 + .../hcfactions/handlers/NametagsHandler.java | 54 + .../handlers/OnlineDonatorsHandler.java | 50 + .../hcfactions/handlers/PearlFixHandler.java | 118 + .../hcfactions/handlers/RegisterHandler.java | 155 + .../handlers/ScoreboardLayoutHandler.java | 435 + .../hcfactions/handlers/ShopHandler.java | 749 ++ .../hcfactions/handlers/TabLayoutHandler.java | 210 + .../handlers/ThrowableCobwebHandler.java | 117 + .../network/hcfactions/staff/OptionType.java | 26 + .../hcfactions/staff/StaffPlayerData.java | 17 + .../staff/commands/StaffModeCommand.java | 36 + .../staff/commands/VanishCommand.java | 83 + .../staff/handlers/StaffModeHandler.java | 334 + .../staff/handlers/VanishHandler.java | 316 + .../hcfactions/stattrack/StatTracker.java | 68 + .../stattrack/StatTrackerHandler.java | 42 + .../hcfactions/stattrack/StatTrackerType.java | 17 + .../hcfactions/timers/AppleHandler.java | 66 + .../hcfactions/timers/ArcherHandler.java | 55 + .../hcfactions/timers/ClassWarmupHandler.java | 124 + .../hcfactions/timers/EnderpearlHandler.java | 78 + .../hcfactions/timers/GameHandler.java | 266 + .../hcfactions/timers/GappleHandler.java | 63 + .../hcfactions/timers/HomeHandler.java | 140 + .../hcfactions/timers/LogoutHandler.java | 184 + .../hcfactions/timers/SpawnTagHandler.java | 165 + .../hcfactions/timers/StuckHandler.java | 154 + .../hcfactions/utilties/ActionMessage.java | 127 + .../utilties/CacheCleanerThread.java | 36 + .../hcfactions/utilties/ChunkPosition.java | 16 + .../hcfactions/utilties/CustomLocation.java | 136 + .../hcfactions/utilties/GenericUtils.java | 73 + .../network/hcfactions/utilties/HCFUtils.java | 183 + .../network/hcfactions/utilties/Handler.java | 37 + .../hcfactions/utilties/JavaUtils.java | 135 + .../hcfactions/utilties/MapSorting.java | 31 + .../hcfactions/utilties/PacketUtils.java | 71 + .../utilties/PersistableLocation.java | 140 + .../network/hcfactions/utilties/TimeUtil.java | 290 + .../hcfactions/utilties/events/BaseEvent.java | 26 + .../utilties/events/EventStartEvent.java | 11 + .../hcfactions/utilties/file/ConfigFile.java | 93 + .../utilties/file/LimitersFile.java | 93 + .../utilties/file/SchedulesFile.java | 92 + .../utilties/file/UtilitiesFile.java | 93 + .../hcfactions/utilties/redis/Redis.java | 40 + .../utilties/redis/UUIDHandler.java | 13 + .../hcfactions/utilties/redis/UUIDUtils.java | 78 + HCF/src/utilities.yml | 15 + .../src/secondlife/network/hcf/HCF.java | 25 + .../network/hcf/data/FactionsData.java | 7 + .../secondlife/network/hcf/data/HCFData.java | 7 + .../network/hcf/utilities/Manager.java | 16 + Hub/.idea/artifacts/Hub_jar.xml | 8 + Hub/.idea/compiler.xml | 8 + Hub/.idea/misc.xml | 6 + Hub/.idea/modules.xml | 8 + Hub/.idea/workspace.xml | 763 ++ Hub/Hub.iml | 60 + Hub/out/production/Hub/META-INF/MANIFEST.MF | 3 + Hub/out/production/Hub/META-INF/plugin.xml | 35 + Hub/out/production/Hub/plugin.yml | 6 + .../Hub/secondlife/network/hub/Hub.class | Bin 0 -> 6750 bytes .../hub/commands/MultiSpawnCommand.class | Bin 0 -> 3238 bytes .../network/hub/commands/ProfileCommand.class | Bin 0 -> 2323 bytes .../network/hub/commands/QueueCommands.class | Bin 0 -> 2924 bytes .../hub/commands/SecurityCommands.class | Bin 0 -> 4505 bytes .../network/hub/data/QueueData.class | Bin 0 -> 6901 bytes .../network/hub/data/StaffData.class | Bin 0 -> 4699 bytes .../hub/handler/CustomMovementHandler.class | Bin 0 -> 1720 bytes .../network/hub/listeners/ChatListener.class | Bin 0 -> 3815 bytes .../hub/listeners/DataStaffListener.class | Bin 0 -> 8710 bytes .../hub/listeners/PlayerListener.class | Bin 0 -> 16839 bytes .../hub/managers/AutoKickManager.class | Bin 0 -> 3300 bytes .../network/hub/managers/CountManager.class | Bin 0 -> 3899 bytes .../network/hub/managers/HubManager.class | Bin 0 -> 5030 bytes .../hub/managers/MultiSpawnManager.class | Bin 0 -> 3190 bytes .../network/hub/managers/QueueManager.class | Bin 0 -> 4977 bytes .../hub/managers/SelectorManager.class | Bin 0 -> 7213 bytes .../hub/managers/StaffSecurityManager.class | Bin 0 -> 3638 bytes .../hub/providers/NametagsProvider.class | Bin 0 -> 1051 bytes .../hub/providers/ScoreboardProvider.class | Bin 0 -> 5527 bytes .../network/hub/providers/TabProvider.class | Bin 0 -> 4618 bytes .../network/hub/utilties/HubUtils$1.class | Bin 0 -> 744 bytes .../network/hub/utilties/HubUtils.class | Bin 0 -> 5819 bytes .../network/hub/utilties/Manager.class | Bin 0 -> 616 bytes .../BukkitProfileStorage$PlayerData.class | Bin 0 -> 1076 bytes .../profile/BukkitProfileStorage.class | Bin 0 -> 3099 bytes .../utilties/profile/BukkitProfileUtils.class | Bin 0 -> 2497 bytes .../hub/utilties/profile/RemoveThread.class | Bin 0 -> 2246 bytes Hub/out/production/Hub/utilities.yml | 1 + Hub/resources/META-INF/plugin.xml | 35 + Hub/src/META-INF/MANIFEST.MF | 3 + Hub/src/plugin.yml | 6 + Hub/src/secondlife/network/hub/Hub.java | 86 + .../hub/commands/MultiSpawnCommand.java | 45 + .../network/hub/commands/ProfileCommand.java | 35 + .../network/hub/commands/QueueCommands.java | 52 + .../hub/commands/SecurityCommands.java | 78 + .../network/hub/data/QueueData.java | 115 + .../network/hub/data/StaffData.java | 90 + .../hub/handler/CustomMovementHandler.java | 27 + .../network/hub/listeners/ChatListener.java | 70 + .../hub/listeners/DataStaffListener.java | 206 + .../network/hub/listeners/PlayerListener.java | 305 + .../network/hub/managers/AutoKickManager.java | 49 + .../network/hub/managers/CountManager.java | 71 + .../network/hub/managers/HubManager.java | 92 + .../hub/managers/MultiSpawnManager.java | 70 + .../network/hub/managers/QueueManager.java | 113 + .../network/hub/managers/SelectorManager.java | 157 + .../hub/managers/StaffSecurityManager.java | 59 + .../hub/providers/NametagsProvider.java | 25 + .../hub/providers/ScoreboardProvider.java | 72 + .../network/hub/providers/TabProvider.java | 105 + .../network/hub/utilties/HubUtils.java | 100 + .../network/hub/utilties/Manager.java | 16 + .../profile/BukkitProfileStorage.java | 61 + .../utilties/profile/BukkitProfileUtils.java | 43 + .../hub/utilties/profile/RemoveThread.java | 21 + Hub/src/utilities.yml | 1 + MeetupGame/src/config.yml | 0 MeetupGame/src/kits.yml | 0 MeetupGame/src/plugin.yml | 0 .../network/meetupgame/MeetupGame.java | 34 + .../meetupgame/layouts/ScoreboardLayout.java | 67 + .../meetupgame/listeners/GameListener.java | 59 + .../meetupgame/listeners/PlayerListener.java | 131 + .../meetupgame/listeners/VoteListener.java | 51 + .../meetupgame/managers/GameManager.java | 79 + .../meetupgame/managers/InventoryManager.java | 47 + .../meetupgame/managers/VoteManager.java | 36 + .../network/meetupgame/player/PlayerData.java | 160 + .../network/meetupgame/scenario/Scenario.java | 46 + .../meetupgame/scenario/ScenarioManager.java | 67 + .../scenario/type/BowlessScenario.java | 50 + .../scenario/type/DefaultScenario.java | 15 + .../scenario/type/DoNotDisturbScenario.java | 61 + .../scenario/type/FirelessScenario.java | 28 + .../scenario/type/NoCleanScenario.java | 92 + .../scenario/type/RodlessScenario.java | 50 + .../scenario/type/TimeBombScenario.java | 158 + .../network/meetupgame/state/GameState.java | 9 + .../network/meetupgame/state/PlayerState.java | 9 + .../network/meetupgame/tasks/GameTask.java | 55 + .../meetupgame/tasks/StartingTask.java | 42 + .../network/meetupgame/tasks/VoteTask.java | 44 + .../network/meetupgame/tasks/WinTask.java | 45 + .../network/meetupgame/utilities/Manager.java | 16 + .../meetupgame/utilities/MeetupUtils.java | 23 + .../utilities/database/MeetupDatabase.java | 56 + MeetupLobby/src/config.yml | 5 + .../network/meetuplobby/MeetupLobby.java | 121 + .../meetuplobby/jedis/JedisController.java | 28 + .../meetuplobby/jedis/JedisListener.java | 47 + .../meetuplobby/jedis/JedisPublisher.java | 41 + .../meetuplobby/jedis/JedisSubscriber.java | 48 + .../meetuplobby/layouts/ScoreboardLayout.java | 56 + .../listeners/InventoryListener.java | 40 + .../meetuplobby/listeners/PlayerListener.java | 153 + .../managers/InventoryManager.java | 45 + .../meetuplobby/managers/QueueManager.java | 90 + .../network/meetuplobby/party/Party.java | 63 + .../meetuplobby/party/PartyManager.java | 49 + .../party/command/PartyCommand.java | 233 + .../meetuplobby/queue/QueueAction.java | 18 + .../network/meetuplobby/tasks/CheckTask.java | 39 + .../meetuplobby/utilities/Manager.java | 16 + .../meetuplobby/utilities/MeetupUtils.java | 24 + .../meetuplobby/utilities/OfflinePlayer.java | 29 + Overpass/.idea/artifacts/Overpass_jar.xml | 8 + Overpass/.idea/compiler.xml | 8 + Overpass/.idea/misc.xml | 6 + Overpass/.idea/modules.xml | 8 + Overpass/.idea/workspace.xml | 755 ++ Overpass/Overpass.iml | 42 + .../production/Overpass/META-INF/MANIFEST.MF | 3 + Overpass/out/production/Overpass/config.yml | 4 + Overpass/out/production/Overpass/plugin.yml | 6 + .../network/overpass/Overpass.class | Bin 0 -> 6339 bytes .../overpass/commands/OverpassCommand.class | Bin 0 -> 4542 bytes .../commands/OverpassCommands$1$1.class | Bin 0 -> 1024 bytes .../commands/OverpassCommands$1.class | Bin 0 -> 5149 bytes .../overpass/commands/OverpassCommands.class | Bin 0 -> 6880 bytes .../network/overpass/data/OverpassData.class | Bin 0 -> 6344 bytes .../handler/CustomMovementHandler.class | Bin 0 -> 1491 bytes .../listeners/OverpassDataListener$1.class | Bin 0 -> 2027 bytes .../listeners/OverpassDataListener$2.class | Bin 0 -> 1396 bytes .../listeners/OverpassDataListener.class | Bin 0 -> 3646 bytes .../overpass/listeners/PlayerListener.class | Bin 0 -> 5267 bytes .../overpass/managers/OverpassManager.class | Bin 0 -> 1202 bytes .../overpass/managers/PremiumManager.class | Bin 0 -> 1613 bytes .../network/overpass/tasks/LoginTask.class | Bin 0 -> 2436 bytes .../network/overpass/utilties/Manager.class | Bin 0 -> 563 bytes .../overpass/utilties/OverpassUtils.class | Bin 0 -> 3621 bytes .../overpass/utilties/events/LoginEvent.class | Bin 0 -> 1195 bytes Overpass/resources/META-INF/plugin.xml | 35 + Overpass/src/META-INF/MANIFEST.MF | 3 + Overpass/src/config.yml | 4 + Overpass/src/plugin.yml | 6 + .../secondlife/network/overpass/Overpass.java | 77 + .../overpass/commands/OverpassCommand.java | 161 + .../overpass/commands/OverpassCommands.java | 231 + .../network/overpass/data/OverpassData.java | 129 + .../handler/CustomMovementHandler.java | 29 + .../listeners/OverpassDataListener.java | 89 + .../overpass/listeners/PlayerListener.java | 164 + .../overpass/managers/OverpassManager.java | 35 + .../overpass/managers/PremiumManager.java | 33 + .../network/overpass/tasks/LoginTask.java | 33 + .../network/overpass/utilties/Manager.java | 16 + .../overpass/utilties/OverpassUtils.java | 84 + .../overpass/utilties/events/LoginEvent.java | 34 + Paik/.idea/misc.xml | 55 + Paik/.idea/modules.xml | 8 + Paik/.idea/workspace.xml | 1076 +++ .../production/LordMeme/META-INF/MANIFEST.MF | 3 + Paik/out/production/LordMeme/plugin.yml | 6 + .../secondlife/network/paik/Paik.class | Bin 0 -> 4997 bytes .../secondlife/network/paik/PaikAPI.class | Bin 0 -> 1371 bytes .../network/paik/check/AbstractCheck.class | Bin 0 -> 6681 bytes .../network/paik/check/ICheck.class | Bin 0 -> 377 bytes .../paik/check/checks/PacketCheck.class | Bin 0 -> 901 bytes .../paik/check/checks/PositionCheck.class | Bin 0 -> 947 bytes .../paik/check/checks/RotationCheck.class | Bin 0 -> 947 bytes .../check/impl/aimassist/AimAssistA.class | Bin 0 -> 2804 bytes .../check/impl/aimassist/AimAssistB.class | Bin 0 -> 2806 bytes .../check/impl/aimassist/AimAssistC.class | Bin 0 -> 2638 bytes .../check/impl/aimassist/AimAssistD.class | Bin 0 -> 3266 bytes .../check/impl/aimassist/AimAssistE.class | Bin 0 -> 3003 bytes .../check/impl/autoclicker/AutoClickerA.class | Bin 0 -> 2950 bytes .../check/impl/autoclicker/AutoClickerB.class | Bin 0 -> 3536 bytes .../check/impl/autoclicker/AutoClickerC.class | Bin 0 -> 2735 bytes .../check/impl/autoclicker/AutoClickerD.class | Bin 0 -> 3960 bytes .../check/impl/autoclicker/AutoClickerE.class | Bin 0 -> 2812 bytes .../check/impl/autoclicker/AutoClickerF.class | Bin 0 -> 4061 bytes .../check/impl/autoclicker/AutoClickerG.class | Bin 0 -> 2399 bytes .../check/impl/autoclicker/AutoClickerH.class | Bin 0 -> 4112 bytes .../check/impl/autoclicker/AutoClickerI.class | Bin 0 -> 3986 bytes .../check/impl/autoclicker/AutoClickerJ.class | Bin 0 -> 3055 bytes .../check/impl/autoclicker/AutoClickerK.class | Bin 0 -> 3309 bytes .../check/impl/autoclicker/AutoClickerL.class | Bin 0 -> 3530 bytes .../check/impl/badpackets/BadPacketsA.class | Bin 0 -> 2016 bytes .../check/impl/badpackets/BadPacketsB.class | Bin 0 -> 1925 bytes .../check/impl/badpackets/BadPacketsC.class | Bin 0 -> 2591 bytes .../check/impl/badpackets/BadPacketsD.class | Bin 0 -> 2589 bytes .../check/impl/badpackets/BadPacketsE.class | Bin 0 -> 2392 bytes .../check/impl/badpackets/BadPacketsF.class | Bin 0 -> 2264 bytes .../check/impl/badpackets/BadPacketsG.class | Bin 0 -> 2623 bytes .../check/impl/badpackets/BadPacketsH.class | Bin 0 -> 2175 bytes .../check/impl/badpackets/BadPacketsI.class | Bin 0 -> 2128 bytes .../check/impl/badpackets/BadPacketsJ.class | Bin 0 -> 2499 bytes .../check/impl/badpackets/BadPacketsK.class | Bin 0 -> 3245 bytes .../check/impl/badpackets/BadPacketsL.class | Bin 0 -> 2955 bytes .../network/paik/check/impl/fly/FlyA.class | Bin 0 -> 3599 bytes .../network/paik/check/impl/fly/FlyB.class | Bin 0 -> 2803 bytes .../network/paik/check/impl/fly/FlyC.class | Bin 0 -> 4392 bytes .../network/paik/check/impl/fly/FlyD.class | Bin 0 -> 2441 bytes .../check/impl/inventory/InventoryA.class | Bin 0 -> 2178 bytes .../check/impl/inventory/InventoryB.class | Bin 0 -> 2525 bytes .../check/impl/inventory/InventoryC.class | Bin 0 -> 3464 bytes .../check/impl/inventory/InventoryD.class | Bin 0 -> 2325 bytes .../check/impl/inventory/InventoryE.class | Bin 0 -> 2219 bytes .../check/impl/inventory/InventoryF.class | Bin 0 -> 2219 bytes .../check/impl/inventory/InventoryG.class | Bin 0 -> 2790 bytes .../paik/check/impl/killaura/KillAuraA.class | Bin 0 -> 2576 bytes .../paik/check/impl/killaura/KillAuraB.class | Bin 0 -> 3162 bytes .../paik/check/impl/killaura/KillAuraC.class | Bin 0 -> 3250 bytes .../paik/check/impl/killaura/KillAuraD.class | Bin 0 -> 2386 bytes .../paik/check/impl/killaura/KillAuraE.class | Bin 0 -> 3307 bytes .../paik/check/impl/killaura/KillAuraF.class | Bin 0 -> 2674 bytes .../paik/check/impl/killaura/KillAuraG.class | Bin 0 -> 2831 bytes .../paik/check/impl/killaura/KillAuraH.class | Bin 0 -> 2626 bytes .../paik/check/impl/killaura/KillAuraI.class | Bin 0 -> 2187 bytes .../paik/check/impl/killaura/KillAuraJ.class | Bin 0 -> 2188 bytes .../paik/check/impl/killaura/KillAuraK.class | Bin 0 -> 2744 bytes .../paik/check/impl/killaura/KillAuraL.class | Bin 0 -> 3012 bytes .../paik/check/impl/killaura/KillAuraM.class | Bin 0 -> 2973 bytes .../paik/check/impl/killaura/KillAuraN.class | Bin 0 -> 2338 bytes .../paik/check/impl/killaura/KillAuraO.class | Bin 0 -> 2559 bytes .../paik/check/impl/killaura/KillAuraP.class | Bin 0 -> 2885 bytes .../paik/check/impl/killaura/KillAuraQ.class | Bin 0 -> 2718 bytes .../paik/check/impl/killaura/KillAuraR.class | Bin 0 -> 2302 bytes .../paik/check/impl/killaura/KillAuraS.class | Bin 0 -> 3139 bytes .../paik/check/impl/killaura/KillAuraT.class | Bin 0 -> 1373 bytes .../paik/check/impl/phase/PhaseA.class | Bin 0 -> 4307 bytes .../paik/check/impl/phase/PhaseB.class | Bin 0 -> 2764 bytes .../paik/check/impl/range/RangeA.class | Bin 0 -> 5561 bytes .../paik/check/impl/scaffold/ScaffoldA.class | Bin 0 -> 3479 bytes .../paik/check/impl/scaffold/ScaffoldB.class | Bin 0 -> 2902 bytes .../paik/check/impl/scaffold/ScaffoldC.class | Bin 0 -> 3320 bytes .../network/paik/check/impl/step/StepA.class | Bin 0 -> 1864 bytes .../paik/check/impl/timer/TimerA.class | Bin 0 -> 3119 bytes .../paik/check/impl/vclip/VClipA.class | Bin 0 -> 2045 bytes .../paik/check/impl/vclip/VClipB.class | Bin 0 -> 2037 bytes .../paik/check/impl/velocity/VelocityA.class | Bin 0 -> 3220 bytes .../paik/check/impl/velocity/VelocityB.class | Bin 0 -> 2862 bytes .../paik/check/impl/velocity/VelocityC.class | Bin 0 -> 3867 bytes .../network/paik/check/impl/wtap/WTapA.class | Bin 0 -> 4098 bytes .../network/paik/check/impl/wtap/WTapB.class | Bin 0 -> 4177 bytes .../network/paik/client/ClientManager.class | Bin 0 -> 7207 bytes .../network/paik/client/ClientType.class | Bin 0 -> 198 bytes .../network/paik/client/EnumClientType.class | Bin 0 -> 2872 bytes .../network/paik/client/ModClientType.class | Bin 0 -> 917 bytes .../paik/client/PayloadClientType.class | Bin 0 -> 842 bytes .../network/paik/commands/PaikCommand.class | Bin 0 -> 710 bytes .../paik/commands/sub/LogsCommand.class | Bin 0 -> 3998 bytes .../paik/commands/sub/PaikBanCommand.class | Bin 0 -> 3984 bytes .../paik/commands/sub/PaikFunCommand.class | Bin 0 -> 1478 bytes .../paik/commands/sub/RangeCommand.class | Bin 0 -> 2094 bytes .../paik/commands/sub/ToggleCommand.class | Bin 0 -> 2191 bytes .../network/paik/handlers/BungeeHandler.class | Bin 0 -> 3455 bytes .../paik/handlers/CustomMovementHandler.class | Bin 0 -> 6159 bytes .../paik/handlers/CustomPacketHandler.class | Bin 0 -> 24134 bytes .../paik/handlers/ModListHandler.class | Bin 0 -> 5487 bytes .../network/paik/handlers/PlayerHandler.class | Bin 0 -> 10898 bytes .../paik/handlers/data/PlayerData.class | Bin 0 -> 26867 bytes .../paik/handlers/logs/LogsHandler.class | Bin 0 -> 4277 bytes .../handlers/managers/AlertsManager.class | Bin 0 -> 1967 bytes .../handlers/managers/PlayerDataManager.class | Bin 0 -> 1647 bytes .../network/paik/utilties/BlockUtil.class | Bin 0 -> 11101 bytes .../paik/utilties/CustomLocation.class | Bin 0 -> 6408 bytes .../paik/utilties/DirectoryUtils.class | Bin 0 -> 788 bytes .../network/paik/utilties/Handler.class | Bin 0 -> 541 bytes .../network/paik/utilties/MapUtil.class | Bin 0 -> 1528 bytes .../network/paik/utilties/MathUtil.class | Bin 0 -> 1476 bytes .../paik/utilties/command/BukkitCommand.class | Bin 0 -> 4042 bytes .../utilties/command/BukkitCompleter.class | Bin 0 -> 3650 bytes .../paik/utilties/command/Command.class | Bin 0 -> 647 bytes .../paik/utilties/command/CommandArgs.class | Bin 0 -> 2269 bytes .../utilties/command/CommandFramework.class | Bin 0 -> 10673 bytes .../paik/utilties/command/Completer.class | Bin 0 -> 521 bytes .../paik/utilties/dummy/DummyPlayer.class | Bin 0 -> 1473 bytes .../dummy/DummyPlayerInteractManager.class | Bin 0 -> 513 bytes .../paik/utilties/events/BaseEvent.class | Bin 0 -> 1112 bytes .../utilties/events/BungeeReceivedEvent.class | Bin 0 -> 1096 bytes .../events/ModListRetrieveEvent.class | Bin 0 -> 957 bytes .../paik/utilties/events/PlayerEvent.class | Bin 0 -> 727 bytes .../player/PlayerAlertEvent$AlertType.class | Bin 0 -> 1433 bytes .../events/player/PlayerAlertEvent.class | Bin 0 -> 2216 bytes .../events/player/PlayerBanEvent.class | Bin 0 -> 1565 bytes .../paik/utilties/file/ConfigFile.class | Bin 0 -> 4338 bytes .../network/paik/utilties/file/LogFile.class | Bin 0 -> 3477 bytes .../production/Paik Novi/META-INF/MANIFEST.MF | 3 + Paik/out/production/Paik Novi/plugin.yml | 6 + Paik/out/production/Paik/META-INF/MANIFEST.MF | 3 + Paik/out/production/Paik/plugin.yml | 6 + .../Paik/secondlife/network/paik/Paik.class | Bin 0 -> 4992 bytes .../secondlife/network/paik/PaikAPI.class | Bin 0 -> 1371 bytes .../network/paik/check/AbstractCheck.class | Bin 0 -> 6526 bytes .../network/paik/check/ICheck.class | Bin 0 -> 377 bytes .../paik/check/checks/PacketCheck.class | Bin 0 -> 901 bytes .../paik/check/checks/PositionCheck.class | Bin 0 -> 947 bytes .../paik/check/checks/RotationCheck.class | Bin 0 -> 947 bytes .../check/impl/aimassist/AimAssistA.class | Bin 0 -> 2803 bytes .../check/impl/aimassist/AimAssistB.class | Bin 0 -> 2805 bytes .../check/impl/aimassist/AimAssistC.class | Bin 0 -> 2638 bytes .../check/impl/aimassist/AimAssistD.class | Bin 0 -> 3265 bytes .../check/impl/aimassist/AimAssistE.class | Bin 0 -> 3003 bytes .../check/impl/autoclicker/AutoClickerA.class | Bin 0 -> 2949 bytes .../check/impl/autoclicker/AutoClickerB.class | Bin 0 -> 3536 bytes .../check/impl/autoclicker/AutoClickerC.class | Bin 0 -> 2734 bytes .../check/impl/autoclicker/AutoClickerD.class | Bin 0 -> 3959 bytes .../check/impl/autoclicker/AutoClickerE.class | Bin 0 -> 2812 bytes .../check/impl/autoclicker/AutoClickerF.class | Bin 0 -> 4060 bytes .../check/impl/autoclicker/AutoClickerG.class | Bin 0 -> 2399 bytes .../check/impl/autoclicker/AutoClickerH.class | Bin 0 -> 4112 bytes .../check/impl/autoclicker/AutoClickerI.class | Bin 0 -> 3986 bytes .../check/impl/autoclicker/AutoClickerJ.class | Bin 0 -> 3054 bytes .../check/impl/autoclicker/AutoClickerK.class | Bin 0 -> 3276 bytes .../check/impl/autoclicker/AutoClickerL.class | Bin 0 -> 3530 bytes .../check/impl/badpackets/BadPacketsA.class | Bin 0 -> 2015 bytes .../check/impl/badpackets/BadPacketsB.class | Bin 0 -> 1924 bytes .../check/impl/badpackets/BadPacketsC.class | Bin 0 -> 2590 bytes .../check/impl/badpackets/BadPacketsD.class | Bin 0 -> 2588 bytes .../check/impl/badpackets/BadPacketsE.class | Bin 0 -> 2391 bytes .../check/impl/badpackets/BadPacketsF.class | Bin 0 -> 2261 bytes .../check/impl/badpackets/BadPacketsG.class | Bin 0 -> 2622 bytes .../check/impl/badpackets/BadPacketsH.class | Bin 0 -> 2174 bytes .../check/impl/badpackets/BadPacketsI.class | Bin 0 -> 2128 bytes .../check/impl/badpackets/BadPacketsJ.class | Bin 0 -> 2498 bytes .../check/impl/badpackets/BadPacketsK.class | Bin 0 -> 3244 bytes .../check/impl/badpackets/BadPacketsL.class | Bin 0 -> 2955 bytes .../network/paik/check/impl/fly/FlyA.class | Bin 0 -> 3598 bytes .../network/paik/check/impl/fly/FlyB.class | Bin 0 -> 2802 bytes .../network/paik/check/impl/fly/FlyC.class | Bin 0 -> 4391 bytes .../network/paik/check/impl/fly/FlyD.class | Bin 0 -> 2441 bytes .../check/impl/inventory/InventoryA.class | Bin 0 -> 2177 bytes .../check/impl/inventory/InventoryB.class | Bin 0 -> 2524 bytes .../check/impl/inventory/InventoryC.class | Bin 0 -> 3463 bytes .../check/impl/inventory/InventoryD.class | Bin 0 -> 2325 bytes .../check/impl/inventory/InventoryE.class | Bin 0 -> 2219 bytes .../check/impl/inventory/InventoryF.class | Bin 0 -> 2219 bytes .../check/impl/inventory/InventoryG.class | Bin 0 -> 2790 bytes .../paik/check/impl/killaura/KillAuraA.class | Bin 0 -> 2575 bytes .../paik/check/impl/killaura/KillAuraB.class | Bin 0 -> 3330 bytes .../paik/check/impl/killaura/KillAuraC.class | Bin 0 -> 3249 bytes .../paik/check/impl/killaura/KillAuraD.class | Bin 0 -> 2385 bytes .../paik/check/impl/killaura/KillAuraE.class | Bin 0 -> 3306 bytes .../paik/check/impl/killaura/KillAuraF.class | Bin 0 -> 2671 bytes .../paik/check/impl/killaura/KillAuraG.class | Bin 0 -> 2830 bytes .../paik/check/impl/killaura/KillAuraH.class | Bin 0 -> 2625 bytes .../paik/check/impl/killaura/KillAuraI.class | Bin 0 -> 2300 bytes .../paik/check/impl/killaura/KillAuraJ.class | Bin 0 -> 2188 bytes .../paik/check/impl/killaura/KillAuraK.class | Bin 0 -> 2744 bytes .../paik/check/impl/killaura/KillAuraL.class | Bin 0 -> 3011 bytes .../paik/check/impl/killaura/KillAuraM.class | Bin 0 -> 2973 bytes .../paik/check/impl/killaura/KillAuraN.class | Bin 0 -> 2338 bytes .../paik/check/impl/killaura/KillAuraO.class | Bin 0 -> 2558 bytes .../paik/check/impl/killaura/KillAuraP.class | Bin 0 -> 2884 bytes .../paik/check/impl/killaura/KillAuraQ.class | Bin 0 -> 2717 bytes .../paik/check/impl/killaura/KillAuraR.class | Bin 0 -> 2301 bytes .../paik/check/impl/killaura/KillAuraS.class | Bin 0 -> 3138 bytes .../paik/check/impl/killaura/KillAuraT.class | Bin 0 -> 1373 bytes .../paik/check/impl/phase/PhaseA.class | Bin 0 -> 4311 bytes .../paik/check/impl/phase/PhaseB.class | Bin 0 -> 2764 bytes .../paik/check/impl/range/RangeA.class | Bin 0 -> 5560 bytes .../paik/check/impl/scaffold/ScaffoldA.class | Bin 0 -> 3479 bytes .../paik/check/impl/scaffold/ScaffoldB.class | Bin 0 -> 2902 bytes .../paik/check/impl/scaffold/ScaffoldC.class | Bin 0 -> 3320 bytes .../network/paik/check/impl/step/StepA.class | Bin 0 -> 1864 bytes .../paik/check/impl/timer/TimerA.class | Bin 0 -> 3118 bytes .../paik/check/impl/vclip/VClipA.class | Bin 0 -> 2045 bytes .../paik/check/impl/vclip/VClipB.class | Bin 0 -> 2037 bytes .../paik/check/impl/velocity/VelocityA.class | Bin 0 -> 3219 bytes .../paik/check/impl/velocity/VelocityB.class | Bin 0 -> 2861 bytes .../paik/check/impl/velocity/VelocityC.class | Bin 0 -> 3866 bytes .../network/paik/check/impl/wtap/WTapA.class | Bin 0 -> 4098 bytes .../network/paik/check/impl/wtap/WTapB.class | Bin 0 -> 4177 bytes .../network/paik/client/ClientManager.class | Bin 0 -> 7207 bytes .../network/paik/client/ClientType.class | Bin 0 -> 198 bytes .../network/paik/client/EnumClientType.class | Bin 0 -> 2872 bytes .../network/paik/client/ModClientType.class | Bin 0 -> 917 bytes .../paik/client/PayloadClientType.class | Bin 0 -> 842 bytes .../network/paik/commands/PaikCommand.class | Bin 0 -> 710 bytes .../paik/commands/sub/LogsCommand.class | Bin 0 -> 3998 bytes .../paik/commands/sub/PaikBanCommand.class | Bin 0 -> 3864 bytes .../paik/commands/sub/PaikFunCommand.class | Bin 0 -> 1314 bytes .../paik/commands/sub/RangeCommand.class | Bin 0 -> 2094 bytes .../paik/commands/sub/ToggleCommand.class | Bin 0 -> 2027 bytes .../network/paik/handlers/BungeeHandler.class | Bin 0 -> 3455 bytes .../paik/handlers/CustomMovementHandler.class | Bin 0 -> 6115 bytes .../paik/handlers/CustomPacketHandler.class | Bin 0 -> 24288 bytes .../network/paik/handlers/LogsHandler.class | Bin 0 -> 4267 bytes .../paik/handlers/ModListHandler.class | Bin 0 -> 5468 bytes .../paik/handlers/PlayerHandler$1.class | Bin 0 -> 1389 bytes .../network/paik/handlers/PlayerHandler.class | Bin 0 -> 10129 bytes .../paik/handlers/data/PlayerData.class | Bin 0 -> 25557 bytes .../handlers/managers/AlertsManager.class | Bin 0 -> 1967 bytes .../handlers/managers/PlayerDataManager.class | Bin 0 -> 1647 bytes .../network/paik/utilties/BlockUtil.class | Bin 0 -> 11742 bytes .../paik/utilties/CustomLocation.class | Bin 0 -> 6300 bytes .../paik/utilties/DirectoryUtils.class | Bin 0 -> 788 bytes .../network/paik/utilties/Handler.class | Bin 0 -> 541 bytes .../network/paik/utilties/MapUtil.class | Bin 0 -> 1528 bytes .../network/paik/utilties/MathUtil.class | Bin 0 -> 1476 bytes .../paik/utilties/command/BukkitCommand.class | Bin 0 -> 4042 bytes .../utilties/command/BukkitCompleter.class | Bin 0 -> 3650 bytes .../paik/utilties/command/Command.class | Bin 0 -> 647 bytes .../paik/utilties/command/CommandArgs.class | Bin 0 -> 2269 bytes .../utilties/command/CommandFramework.class | Bin 0 -> 10673 bytes .../paik/utilties/command/Completer.class | Bin 0 -> 521 bytes .../paik/utilties/dummy/DummyPlayer.class | Bin 0 -> 1473 bytes .../dummy/DummyPlayerInteractManager.class | Bin 0 -> 513 bytes .../paik/utilties/events/BaseEvent.class | Bin 0 -> 1112 bytes .../utilties/events/BungeeReceivedEvent.class | Bin 0 -> 1096 bytes .../events/ModListRetrieveEvent.class | Bin 0 -> 957 bytes .../paik/utilties/events/PlayerEvent.class | Bin 0 -> 727 bytes .../player/PlayerAlertEvent$AlertType.class | Bin 0 -> 1433 bytes .../events/player/PlayerAlertEvent.class | Bin 0 -> 2216 bytes .../events/player/PlayerBanEvent.class | Bin 0 -> 1565 bytes .../paik/utilties/file/ConfigFile.class | Bin 0 -> 4338 bytes .../network/paik/utilties/file/LogFile.class | Bin 0 -> 3477 bytes Paik/resources/META-INF/MANIFEST.MF | 3 + Paik/src/META-INF/MANIFEST.MF | 3 + Paik/src/plugin.yml | 6 + Paik/src/secondlife/network/paik/Paik.java | 76 + Paik/src/secondlife/network/paik/PaikAPI.java | 21 + .../network/paik/check/AbstractCheck.java | 86 + .../secondlife/network/paik/check/ICheck.java | 10 + .../paik/check/checks/PacketCheck.java | 13 + .../paik/check/checks/PositionCheck.java | 13 + .../paik/check/checks/RotationCheck.java | 13 + .../paik/check/impl/aimassist/AimAssistA.java | 39 + .../paik/check/impl/aimassist/AimAssistB.java | 39 + .../paik/check/impl/aimassist/AimAssistC.java | 34 + .../paik/check/impl/aimassist/AimAssistD.java | 49 + .../paik/check/impl/aimassist/AimAssistE.java | 48 + .../check/impl/autoclicker/AutoClickerA.java | 39 + .../check/impl/autoclicker/AutoClickerB.java | 70 + .../check/impl/autoclicker/AutoClickerC.java | 44 + .../check/impl/autoclicker/AutoClickerD.java | 91 + .../check/impl/autoclicker/AutoClickerE.java | 55 + .../check/impl/autoclicker/AutoClickerF.java | 75 + .../check/impl/autoclicker/AutoClickerG.java | 39 + .../check/impl/autoclicker/AutoClickerH.java | 83 + .../check/impl/autoclicker/AutoClickerI.java | 69 + .../check/impl/autoclicker/AutoClickerJ.java | 59 + .../check/impl/autoclicker/AutoClickerK.java | 103 + .../check/impl/autoclicker/AutoClickerL.java | 73 + .../check/impl/badpackets/BadPacketsA.java | 32 + .../check/impl/badpackets/BadPacketsB.java | 23 + .../check/impl/badpackets/BadPacketsC.java | 42 + .../check/impl/badpackets/BadPacketsD.java | 42 + .../check/impl/badpackets/BadPacketsE.java | 27 + .../check/impl/badpackets/BadPacketsF.java | 37 + .../check/impl/badpackets/BadPacketsG.java | 37 + .../check/impl/badpackets/BadPacketsH.java | 35 + .../check/impl/badpackets/BadPacketsI.java | 45 + .../check/impl/badpackets/BadPacketsJ.java | 38 + .../check/impl/badpackets/BadPacketsK.java | 39 + .../check/impl/badpackets/BadPacketsL.java | 45 + .../network/paik/check/impl/fly/FlyA.java | 55 + .../network/paik/check/impl/fly/FlyB.java | 41 + .../network/paik/check/impl/fly/FlyC.java | 102 + .../network/paik/check/impl/fly/FlyD.java | 24 + .../paik/check/impl/inventory/InventoryA.java | 31 + .../paik/check/impl/inventory/InventoryB.java | 32 + .../paik/check/impl/inventory/InventoryC.java | 63 + .../paik/check/impl/inventory/InventoryD.java | 40 + .../paik/check/impl/inventory/InventoryE.java | 33 + .../paik/check/impl/inventory/InventoryF.java | 33 + .../paik/check/impl/inventory/InventoryG.java | 40 + .../paik/check/impl/killaura/KillAuraA.java | 41 + .../paik/check/impl/killaura/KillAuraB.java | 61 + .../paik/check/impl/killaura/KillAuraC.java | 56 + .../paik/check/impl/killaura/KillAuraD.java | 27 + .../paik/check/impl/killaura/KillAuraE.java | 55 + .../paik/check/impl/killaura/KillAuraF.java | 41 + .../paik/check/impl/killaura/KillAuraG.java | 66 + .../paik/check/impl/killaura/KillAuraH.java | 39 + .../paik/check/impl/killaura/KillAuraI.java | 34 + .../paik/check/impl/killaura/KillAuraJ.java | 33 + .../paik/check/impl/killaura/KillAuraK.java | 61 + .../paik/check/impl/killaura/KillAuraL.java | 40 + .../paik/check/impl/killaura/KillAuraM.java | 45 + .../paik/check/impl/killaura/KillAuraN.java | 50 + .../paik/check/impl/killaura/KillAuraO.java | 37 + .../paik/check/impl/killaura/KillAuraP.java | 37 + .../paik/check/impl/killaura/KillAuraQ.java | 47 + .../paik/check/impl/killaura/KillAuraR.java | 37 + .../paik/check/impl/killaura/KillAuraS.java | 50 + .../paik/check/impl/killaura/KillAuraT.java | 30 + .../network/paik/check/impl/phase/PhaseA.java | 83 + .../network/paik/check/impl/phase/PhaseB.java | 60 + .../network/paik/check/impl/range/RangeA.java | 89 + .../paik/check/impl/scaffold/ScaffoldA.java | 62 + .../paik/check/impl/scaffold/ScaffoldB.java | 55 + .../paik/check/impl/scaffold/ScaffoldC.java | 78 + .../network/paik/check/impl/step/StepA.java | 26 + .../network/paik/check/impl/timer/TimerA.java | 53 + .../network/paik/check/impl/vclip/VClipA.java | 28 + .../network/paik/check/impl/vclip/VClipB.java | 27 + .../paik/check/impl/velocity/VelocityA.java | 42 + .../paik/check/impl/velocity/VelocityB.java | 37 + .../paik/check/impl/velocity/VelocityC.java | 51 + .../network/paik/check/impl/wtap/WTapA.java | 76 + .../network/paik/check/impl/wtap/WTapB.java | 71 + .../network/paik/client/ClientManager.java | 94 + .../network/paik/client/ClientType.java | 8 + .../network/paik/client/EnumClientType.java | 39 + .../network/paik/client/ModClientType.java | 27 + .../paik/client/PayloadClientType.java | 27 + .../network/paik/commands/PaikCommand.java | 13 + .../paik/commands/sub/LogsCommand.java | 86 + .../paik/commands/sub/PaikBanCommand.java | 51 + .../paik/commands/sub/PaikFunCommand.java | 22 + .../paik/commands/sub/RangeCommand.java | 35 + .../paik/commands/sub/ToggleCommand.java | 36 + .../network/paik/handlers/BungeeHandler.java | 52 + .../paik/handlers/CustomMovementHandler.java | 137 + .../paik/handlers/CustomPacketHandler.java | 619 ++ .../network/paik/handlers/LogsHandler.java | 84 + .../network/paik/handlers/ModListHandler.java | 90 + .../network/paik/handlers/PlayerHandler.java | 174 + .../paik/handlers/data/PlayerData.java | 285 + .../paik/handlers/managers/AlertsManager.java | 45 + .../handlers/managers/PlayerDataManager.java | 35 + .../network/paik/utilties/BlockUtil.java | 356 + .../network/paik/utilties/CustomLocation.java | 143 + .../network/paik/utilties/DirectoryUtils.java | 19 + .../network/paik/utilties/Handler.java | 19 + .../network/paik/utilties/MapUtil.java | 29 + .../network/paik/utilties/MathUtil.java | 30 + .../paik/utilties/command/BukkitCommand.java | 93 + .../utilties/command/BukkitCompleter.java | 60 + .../paik/utilties/command/Command.java | 26 + .../paik/utilties/command/CommandArgs.java | 71 + .../utilties/command/CommandFramework.java | 226 + .../paik/utilties/command/Completer.java | 24 + .../paik/utilties/dummy/DummyPlayer.java | 12 + .../dummy/DummyPlayerInteractManager.java | 11 + .../paik/utilties/events/BaseEvent.java | 27 + .../utilties/events/BungeeReceivedEvent.java | 23 + .../utilties/events/ModListRetrieveEvent.java | 18 + .../paik/utilties/events/PlayerEvent.java | 20 + .../events/player/PlayerAlertEvent.java | 37 + .../events/player/PlayerBanEvent.java | 31 + .../paik/utilties/file/ConfigFile.java | 103 + .../network/paik/utilties/file/LogFile.java | 89 + Practice/.idea/compiler.xml | 8 + Practice/.idea/misc.xml | 6 + Practice/.idea/modules.xml | 8 + Practice/.idea/workspace.xml | 1281 +++ .../Practice NOVI/META-INF/MANIFEST.MF | 3 + .../out/production/Practice NOVI/arenas.yml | 0 .../out/production/Practice NOVI/config.yml | 2 + .../out/production/Practice NOVI/ladders.yml | 0 .../out/production/Practice NOVI/plugin.yml | 6 + .../network/practice/Practice.class | Bin 0 -> 14173 bytes .../network/practice/arena/Arena.class | Bin 0 -> 3921 bytes .../practice/arena/StandaloneArena.class | Bin 0 -> 1539 bytes .../practice/commands/InventoryCommand.class | Bin 0 -> 2690 bytes .../practice/commands/PartyCommand.class | Bin 0 -> 12111 bytes .../commands/PremiumMatchesCommand.class | Bin 0 -> 3050 bytes .../practice/commands/ResetStatsCommand.class | Bin 0 -> 3197 bytes .../practice/commands/SaveCommand.class | Bin 0 -> 2242 bytes .../practice/commands/SpawnCommand.class | Bin 0 -> 1982 bytes .../practice/commands/StatsCommand.class | Bin 0 -> 5986 bytes .../practice/commands/ToggleDuelCommand.class | Bin 0 -> 2432 bytes .../commands/ToggleSpectatorsCommand.class | Bin 0 -> 2497 bytes .../practice/commands/TournamentCommand.class | Bin 0 -> 11950 bytes .../commands/duel/AcceptCommand.class | Bin 0 -> 6506 bytes .../practice/commands/duel/DuelCommand.class | Bin 0 -> 4746 bytes .../commands/duel/SpectateCommand.class | Bin 0 -> 6477 bytes .../commands/event/EventManagerCommand.class | Bin 0 -> 4039 bytes .../practice/commands/event/HostCommand.class | Bin 0 -> 4479 bytes .../commands/event/JoinEventCommand.class | Bin 0 -> 6046 bytes .../commands/event/LeaveEventCommand.class | Bin 0 -> 3169 bytes .../commands/event/SpectateEventCommand.class | Bin 0 -> 4895 bytes .../commands/event/StatusEventCommand.class | Bin 0 -> 5904 bytes .../commands/management/ArenaCommand.class | Bin 0 -> 8023 bytes .../commands/management/KitCommand.class | Bin 0 -> 12465 bytes .../commands/management/RankedCommand.class | Bin 0 -> 2298 bytes .../commands/management/SpawnsCommand.class | Bin 0 -> 6941 bytes .../practice/events/EventCountdownTask.class | Bin 0 -> 5266 bytes .../network/practice/events/EventPlayer.class | Bin 0 -> 772 bytes .../network/practice/events/EventState.class | Bin 0 -> 1150 bytes .../practice/events/PracticeEvent.class | Bin 0 -> 12771 bytes .../events/oitc/OITCCountdownTask.class | Bin 0 -> 2124 bytes .../practice/events/oitc/OITCEvent$1.class | Bin 0 -> 255 bytes .../events/oitc/OITCEvent$OITCGameTask.class | Bin 0 -> 5207 bytes .../events/oitc/OITCEvent$RespawnTask.class | Bin 0 -> 5624 bytes .../oitc/OITCEvent$SortComparator.class | Bin 0 -> 1604 bytes .../practice/events/oitc/OITCEvent.class | Bin 0 -> 15861 bytes .../events/oitc/OITCPlayer$OITCState.class | Bin 0 -> 1436 bytes .../practice/events/oitc/OITCPlayer.class | Bin 0 -> 2085 bytes .../events/parkour/ParkourCountdownTask.class | Bin 0 -> 2139 bytes .../ParkourEvent$ParkourGameTask.class | Bin 0 -> 4899 bytes .../parkour/ParkourEvent$WaterCheckTask.class | Bin 0 -> 4627 bytes .../events/parkour/ParkourEvent.class | Bin 0 -> 11424 bytes .../parkour/ParkourPlayer$ParkourState.class | Bin 0 -> 1342 bytes .../events/parkour/ParkourPlayer.class | Bin 0 -> 1719 bytes .../events/sumo/SumoCountdownTask.class | Bin 0 -> 2124 bytes .../events/sumo/SumoEvent$SumoFightTask.class | Bin 0 -> 5410 bytes .../sumo/SumoEvent$WaterCheckTask.class | Bin 0 -> 2921 bytes .../practice/events/sumo/SumoEvent.class | Bin 0 -> 12481 bytes .../events/sumo/SumoPlayer$SumoState.class | Bin 0 -> 1383 bytes .../practice/events/sumo/SumoPlayer.class | Bin 0 -> 1676 bytes .../practice/handlers/ChatHandler.class | Bin 0 -> 5491 bytes .../handlers/CustomMovementHandler.class | Bin 0 -> 8701 bytes .../practice/handlers/EnderpearlHandler.class | Bin 0 -> 6230 bytes .../practice/handlers/EntityHandler$1.class | Bin 0 -> 819 bytes .../practice/handlers/EntityHandler.class | Bin 0 -> 10086 bytes .../practice/handlers/InventoryHandler.class | Bin 0 -> 3807 bytes .../practice/handlers/MatchHandler.class | Bin 0 -> 17211 bytes .../practice/handlers/PearlFixHandler$1.class | Bin 0 -> 2648 bytes .../practice/handlers/PearlFixHandler.class | Bin 0 -> 4158 bytes .../practice/handlers/PlayerHandler$1.class | Bin 0 -> 1152 bytes .../practice/handlers/PlayerHandler$2.class | Bin 0 -> 2269 bytes .../practice/handlers/PlayerHandler.class | Bin 0 -> 23649 bytes .../practice/handlers/WorldHandler.class | Bin 0 -> 11024 bytes .../inventory/InventorySnapshot$1.class | Bin 0 -> 2410 bytes .../inventory/InventorySnapshot.class | Bin 0 -> 10520 bytes .../secondlife/network/practice/kit/Kit.class | Bin 0 -> 5546 bytes .../network/practice/kit/PlayerKit.class | Bin 0 -> 2676 bytes .../leaderboard/LeaderboardEntry.class | Bin 0 -> 1750 bytes .../practice/leaderboard/Leaderboards.class | Bin 0 -> 9805 bytes .../practice/managers/ArenaManager$1$1.class | Bin 0 -> 2117 bytes .../practice/managers/ArenaManager$1.class | Bin 0 -> 3579 bytes .../practice/managers/ArenaManager.class | Bin 0 -> 12963 bytes .../practice/managers/ChunkManager.class | Bin 0 -> 7324 bytes .../practice/managers/EditorManager.class | Bin 0 -> 3793 bytes .../practice/managers/EventManager.class | Bin 0 -> 11553 bytes .../managers/InventoryManager$1.class | Bin 0 -> 2518 bytes .../managers/InventoryManager$10.class | Bin 0 -> 1650 bytes .../managers/InventoryManager$11.class | Bin 0 -> 2465 bytes .../managers/InventoryManager$12.class | Bin 0 -> 1716 bytes .../managers/InventoryManager$13.class | Bin 0 -> 1716 bytes .../managers/InventoryManager$14.class | Bin 0 -> 1716 bytes .../managers/InventoryManager$15.class | Bin 0 -> 1716 bytes .../managers/InventoryManager$16.class | Bin 0 -> 1780 bytes .../managers/InventoryManager$17$1.class | Bin 0 -> 1554 bytes .../managers/InventoryManager$17$2.class | Bin 0 -> 1554 bytes .../managers/InventoryManager$17$3.class | Bin 0 -> 1710 bytes .../managers/InventoryManager$17.class | Bin 0 -> 2952 bytes .../managers/InventoryManager$18.class | Bin 0 -> 1551 bytes .../managers/InventoryManager$19.class | Bin 0 -> 1551 bytes .../managers/InventoryManager$2.class | Bin 0 -> 2516 bytes .../managers/InventoryManager$20.class | Bin 0 -> 1778 bytes .../managers/InventoryManager$3.class | Bin 0 -> 2274 bytes .../managers/InventoryManager$4.class | Bin 0 -> 1548 bytes .../managers/InventoryManager$5.class | Bin 0 -> 1548 bytes .../managers/InventoryManager$6.class | Bin 0 -> 1548 bytes .../managers/InventoryManager$7.class | Bin 0 -> 1548 bytes .../managers/InventoryManager$8.class | Bin 0 -> 1650 bytes .../managers/InventoryManager$9.class | Bin 0 -> 1648 bytes .../practice/managers/InventoryManager.class | Bin 0 -> 35597 bytes .../practice/managers/ItemManager.class | Bin 0 -> 3144 bytes .../practice/managers/KitManager.class | Bin 0 -> 8050 bytes .../practice/managers/MatchManager.class | Bin 0 -> 26589 bytes .../practice/managers/PartyManager$1.class | Bin 0 -> 821 bytes .../practice/managers/PartyManager.class | Bin 0 -> 7685 bytes .../practice/managers/QueueManager.class | Bin 0 -> 18324 bytes .../practice/managers/SpawnManager.class | Bin 0 -> 8848 bytes .../practice/managers/TournamentManager.class | Bin 0 -> 11352 bytes .../network/practice/match/Match.class | Bin 0 -> 12581 bytes .../network/practice/match/MatchRequest.class | Bin 0 -> 1197 bytes .../network/practice/match/MatchState.class | Bin 0 -> 1197 bytes .../network/practice/match/MatchTeam.class | Bin 0 -> 789 bytes .../network/practice/party/Party.class | Bin 0 -> 4482 bytes .../network/practice/player/PlayerState.class | Bin 0 -> 1422 bytes .../practice/player/PracticeData.class | Bin 0 -> 26691 bytes .../practice/providers/NametagsProvider.class | Bin 0 -> 2967 bytes .../providers/ScoreboardProvider$1.class | Bin 0 -> 1122 bytes .../providers/ScoreboardProvider.class | Bin 0 -> 18496 bytes .../practice/providers/TabProvider.class | Bin 0 -> 2670 bytes .../network/practice/queue/QueueEntry.class | Bin 0 -> 1016 bytes .../network/practice/queue/QueueType.class | Bin 0 -> 1490 bytes .../runnable/ArenaCommandRunnable$1.class | Bin 0 -> 4499 bytes .../runnable/ArenaCommandRunnable.class | Bin 0 -> 2428 bytes .../runnable/BlockPlaceRunnable.class | Bin 0 -> 5000 bytes .../runnable/DuplicateArenaRunnable$1.class | Bin 0 -> 1074 bytes .../runnable/DuplicateArenaRunnable.class | Bin 0 -> 5061 bytes .../practice/runnable/ExpBarRunnable.class | Bin 0 -> 3578 bytes .../runnable/ItemDespawnRunnable.class | Bin 0 -> 633 bytes .../runnable/MatchResetRunnable.class | Bin 0 -> 2564 bytes .../practice/runnable/MatchRunnable$1.class | Bin 0 -> 862 bytes .../practice/runnable/MatchRunnable.class | Bin 0 -> 6317 bytes .../practice/runnable/RematchRunnable.class | Bin 0 -> 2326 bytes .../practice/runnable/SaveDataRunnable.class | Bin 0 -> 937 bytes .../runnable/TournamentRunnable.class | Bin 0 -> 8546 bytes .../network/practice/team/KillableTeam.class | Bin 0 -> 3284 bytes .../practice/tournament/Tournament.class | Bin 0 -> 5812 bytes .../practice/tournament/TournamentState.class | Bin 0 -> 1199 bytes .../practice/tournament/TournamentTeam.class | Bin 0 -> 3112 bytes .../network/practice/utilties/BlockUtil.class | Bin 0 -> 6819 bytes .../network/practice/utilties/CC.class | Bin 0 -> 645 bytes .../network/practice/utilties/Config.class | Bin 0 -> 2472 bytes .../practice/utilties/CustomLocation.class | Bin 0 -> 5844 bytes .../network/practice/utilties/EloUtil.class | Bin 0 -> 1836 bytes .../network/practice/utilties/Handler.class | Bin 0 -> 640 bytes .../network/practice/utilties/KFactor.class | Bin 0 -> 704 bytes .../network/practice/utilties/MathUtil.class | Bin 0 -> 1352 bytes .../practice/utilties/OfflinePlayer.class | Bin 0 -> 1249 bytes .../practice/utilties/PlayerUtil$1.class | Bin 0 -> 2514 bytes .../practice/utilties/PlayerUtil.class | Bin 0 -> 8642 bytes .../network/practice/utilties/TeamUtil.class | Bin 0 -> 2142 bytes .../network/practice/utilties/TimeUtil.class | Bin 0 -> 8131 bytes .../practice/utilties/TtlHandler.class | Bin 0 -> 325 bytes .../practice/utilties/TtlHashMap.class | Bin 0 -> 4738 bytes .../practice/utilties/event/BaseEvent.class | Bin 0 -> 1118 bytes .../utilties/event/EventStartEvent.class | Bin 0 -> 669 bytes .../utilties/event/match/MatchEndEvent.class | Bin 0 -> 1004 bytes .../utilties/event/match/MatchEvent.class | Bin 0 -> 938 bytes .../event/match/MatchStartEvent.class | Bin 0 -> 519 bytes .../practice/utilties/file/ArenaFile.class | Bin 0 -> 3311 bytes .../practice/utilties/file/ConfigFile.class | Bin 0 -> 3314 bytes .../practice/utilties/file/LaddersFile.class | Bin 0 -> 3318 bytes .../utilties/inventory/InventoryUI$1.class | Bin 0 -> 2152 bytes .../utilties/inventory/InventoryUI$2.class | Bin 0 -> 2317 bytes .../InventoryUI$AbstractClickableItem.class | Bin 0 -> 1074 bytes .../inventory/InventoryUI$ClickableItem.class | Bin 0 -> 498 bytes .../InventoryUI$EmptyClickableItem.class | Bin 0 -> 1255 bytes .../inventory/InventoryUI$Inventory2D.class | Bin 0 -> 4746 bytes .../InventoryUI$InventoryUIHolder.class | Bin 0 -> 1744 bytes .../utilties/inventory/InventoryUI.class | Bin 0 -> 6552 bytes .../utilties/inventory/ItemUtil$1.class | Bin 0 -> 975 bytes .../inventory/ItemUtil$ItemEnchant.class | Bin 0 -> 988 bytes .../inventory/ItemUtil$ReloreType.class | Bin 0 -> 1376 bytes .../utilties/inventory/ItemUtil.class | Bin 0 -> 6762 bytes .../production/Practice/META-INF/MANIFEST.MF | 3 + Practice/out/production/Practice/arenas.yml | 0 Practice/out/production/Practice/config.yml | 2 + Practice/out/production/Practice/ladders.yml | 0 Practice/out/production/Practice/plugin.yml | 6 + .../network/practice/Practice.class | Bin 0 -> 12904 bytes .../network/practice/arena/Arena.class | Bin 0 -> 4838 bytes .../practice/arena/StandaloneArena.class | Bin 0 -> 2360 bytes .../practice/commands/InventoryCommand.class | Bin 0 -> 2690 bytes .../practice/commands/PartyCommand.class | Bin 0 -> 12111 bytes .../commands/PremiumMatchesCommand.class | Bin 0 -> 3050 bytes .../practice/commands/ResetStatsCommand.class | Bin 0 -> 3197 bytes .../practice/commands/SaveCommand.class | Bin 0 -> 2242 bytes .../practice/commands/SpawnCommand.class | Bin 0 -> 1982 bytes .../practice/commands/StatsCommand.class | Bin 0 -> 5986 bytes .../practice/commands/ToggleDuelCommand.class | Bin 0 -> 2432 bytes .../commands/ToggleSpectatorsCommand.class | Bin 0 -> 2497 bytes .../practice/commands/TournamentCommand.class | Bin 0 -> 11950 bytes .../commands/duel/AcceptCommand.class | Bin 0 -> 6506 bytes .../practice/commands/duel/DuelCommand.class | Bin 0 -> 4746 bytes .../commands/duel/SpectateCommand.class | Bin 0 -> 6477 bytes .../commands/event/EventManagerCommand.class | Bin 0 -> 4039 bytes .../practice/commands/event/HostCommand.class | Bin 0 -> 4479 bytes .../commands/event/JoinEventCommand.class | Bin 0 -> 6046 bytes .../commands/event/LeaveEventCommand.class | Bin 0 -> 3169 bytes .../commands/event/SpectateEventCommand.class | Bin 0 -> 4895 bytes .../commands/event/StatusEventCommand.class | Bin 0 -> 5904 bytes .../commands/management/ArenaCommand.class | Bin 0 -> 9154 bytes .../commands/management/KitCommand.class | Bin 0 -> 12958 bytes .../commands/management/RankedCommand.class | Bin 0 -> 2298 bytes .../commands/management/SpawnsCommand.class | Bin 0 -> 6941 bytes .../practice/events/EventCountdownTask.class | Bin 0 -> 5266 bytes .../network/practice/events/EventPlayer.class | Bin 0 -> 868 bytes .../network/practice/events/EventState.class | Bin 0 -> 1150 bytes .../practice/events/PracticeEvent.class | Bin 0 -> 13002 bytes .../events/oitc/OITCCountdownTask.class | Bin 0 -> 2124 bytes .../practice/events/oitc/OITCEvent$1.class | Bin 0 -> 255 bytes .../events/oitc/OITCEvent$OITCGameTask.class | Bin 0 -> 5207 bytes .../events/oitc/OITCEvent$RespawnTask.class | Bin 0 -> 5720 bytes .../oitc/OITCEvent$SortComparator.class | Bin 0 -> 1604 bytes .../practice/events/oitc/OITCEvent.class | Bin 0 -> 15861 bytes .../events/oitc/OITCPlayer$OITCState.class | Bin 0 -> 1436 bytes .../practice/events/oitc/OITCPlayer.class | Bin 0 -> 2085 bytes .../events/parkour/ParkourCountdownTask.class | Bin 0 -> 2139 bytes .../ParkourEvent$ParkourGameTask.class | Bin 0 -> 4899 bytes .../parkour/ParkourEvent$WaterCheckTask.class | Bin 0 -> 4627 bytes .../events/parkour/ParkourEvent.class | Bin 0 -> 11424 bytes .../parkour/ParkourPlayer$ParkourState.class | Bin 0 -> 1342 bytes .../events/parkour/ParkourPlayer.class | Bin 0 -> 1719 bytes .../events/sumo/SumoCountdownTask.class | Bin 0 -> 2124 bytes .../events/sumo/SumoEvent$SumoFightTask.class | Bin 0 -> 5512 bytes .../sumo/SumoEvent$WaterCheckTask.class | Bin 0 -> 2921 bytes .../practice/events/sumo/SumoEvent.class | Bin 0 -> 12481 bytes .../events/sumo/SumoPlayer$SumoState.class | Bin 0 -> 1383 bytes .../practice/events/sumo/SumoPlayer.class | Bin 0 -> 1676 bytes .../practice/handlers/ChatHandler.class | Bin 0 -> 5491 bytes .../handlers/CustomMovementHandler.class | Bin 0 -> 8701 bytes .../practice/handlers/EnderpearlHandler.class | Bin 0 -> 6230 bytes .../practice/handlers/EntityHandler$1.class | Bin 0 -> 819 bytes .../practice/handlers/EntityHandler.class | Bin 0 -> 10363 bytes .../practice/handlers/InventoryHandler.class | Bin 0 -> 3735 bytes .../practice/handlers/MatchHandler.class | Bin 0 -> 17438 bytes .../practice/handlers/PearlFixHandler$1.class | Bin 0 -> 2648 bytes .../practice/handlers/PearlFixHandler.class | Bin 0 -> 4158 bytes .../practice/handlers/PlayerHandler$1.class | Bin 0 -> 1152 bytes .../practice/handlers/PlayerHandler$2.class | Bin 0 -> 2269 bytes .../practice/handlers/PlayerHandler.class | Bin 0 -> 25558 bytes .../practice/handlers/WorldHandler.class | Bin 0 -> 11984 bytes .../inventory/InventorySnapshot$1.class | Bin 0 -> 2410 bytes .../inventory/InventorySnapshot.class | Bin 0 -> 10520 bytes .../secondlife/network/practice/kit/Kit.class | Bin 0 -> 5905 bytes .../network/practice/kit/PlayerKit.class | Bin 0 -> 2778 bytes .../leaderboard/LeaderboardEntry.class | Bin 0 -> 1901 bytes .../practice/leaderboard/Leaderboards.class | Bin 0 -> 11353 bytes .../practice/managers/ArenaManager$1$1.class | Bin 0 -> 2124 bytes .../practice/managers/ArenaManager$1.class | Bin 0 -> 3586 bytes .../practice/managers/ArenaManager.class | Bin 0 -> 13372 bytes .../practice/managers/ChunkManager.class | Bin 0 -> 7324 bytes .../practice/managers/EditorManager.class | Bin 0 -> 3793 bytes .../practice/managers/EventManager.class | Bin 0 -> 11553 bytes .../managers/InventoryManager$1.class | Bin 0 -> 2525 bytes .../managers/InventoryManager$10.class | Bin 0 -> 1657 bytes .../managers/InventoryManager$11.class | Bin 0 -> 2472 bytes .../managers/InventoryManager$12.class | Bin 0 -> 1723 bytes .../managers/InventoryManager$13.class | Bin 0 -> 1723 bytes .../managers/InventoryManager$14.class | Bin 0 -> 1723 bytes .../managers/InventoryManager$15.class | Bin 0 -> 1723 bytes .../managers/InventoryManager$16.class | Bin 0 -> 1787 bytes .../managers/InventoryManager$17$1.class | Bin 0 -> 1561 bytes .../managers/InventoryManager$17$2.class | Bin 0 -> 1561 bytes .../managers/InventoryManager$17$3.class | Bin 0 -> 1717 bytes .../managers/InventoryManager$17.class | Bin 0 -> 2959 bytes .../managers/InventoryManager$18.class | Bin 0 -> 1558 bytes .../managers/InventoryManager$19.class | Bin 0 -> 1558 bytes .../managers/InventoryManager$2.class | Bin 0 -> 2523 bytes .../managers/InventoryManager$20.class | Bin 0 -> 1785 bytes .../managers/InventoryManager$3.class | Bin 0 -> 2281 bytes .../managers/InventoryManager$4.class | Bin 0 -> 1555 bytes .../managers/InventoryManager$5.class | Bin 0 -> 1555 bytes .../managers/InventoryManager$6.class | Bin 0 -> 1555 bytes .../managers/InventoryManager$7.class | Bin 0 -> 1555 bytes .../managers/InventoryManager$8.class | Bin 0 -> 1657 bytes .../managers/InventoryManager$9.class | Bin 0 -> 1655 bytes .../practice/managers/InventoryManager.class | Bin 0 -> 35773 bytes .../practice/managers/ItemManager.class | Bin 0 -> 3144 bytes .../practice/managers/KitManager.class | Bin 0 -> 8179 bytes .../practice/managers/MatchManager.class | Bin 0 -> 26589 bytes .../practice/managers/PartyManager$1.class | Bin 0 -> 821 bytes .../practice/managers/PartyManager.class | Bin 0 -> 7685 bytes .../practice/managers/QueueManager.class | Bin 0 -> 18324 bytes .../practice/managers/SpawnManager.class | Bin 0 -> 8848 bytes .../practice/managers/TournamentManager.class | Bin 0 -> 11352 bytes .../network/practice/match/Match.class | Bin 0 -> 12581 bytes .../network/practice/match/MatchRequest.class | Bin 0 -> 1302 bytes .../network/practice/match/MatchState.class | Bin 0 -> 1197 bytes .../network/practice/match/MatchTeam.class | Bin 0 -> 789 bytes .../network/practice/party/Party.class | Bin 0 -> 4482 bytes .../network/practice/player/PlayerState.class | Bin 0 -> 1422 bytes .../practice/player/PracticeData.class | Bin 0 -> 27391 bytes .../providers/ScoreboardProvider$1.class | Bin 0 -> 1122 bytes .../providers/ScoreboardProvider.class | Bin 0 -> 18302 bytes .../practice/providers/TabProvider.class | Bin 0 -> 2670 bytes .../network/practice/queue/QueueEntry.class | Bin 0 -> 1118 bytes .../network/practice/queue/QueueType.class | Bin 0 -> 1490 bytes .../runnable/ArenaCommandRunnable$1.class | Bin 0 -> 5434 bytes .../runnable/ArenaCommandRunnable.class | Bin 0 -> 3018 bytes .../runnable/BlockPlaceRunnable.class | Bin 0 -> 5000 bytes .../runnable/DuplicateArenaRunnable$1.class | Bin 0 -> 1074 bytes .../runnable/DuplicateArenaRunnable.class | Bin 0 -> 5061 bytes .../practice/runnable/ExpBarRunnable.class | Bin 0 -> 4260 bytes .../runnable/ItemDespawnRunnable.class | Bin 0 -> 633 bytes .../runnable/MatchResetRunnable.class | Bin 0 -> 2657 bytes .../practice/runnable/MatchRunnable$1.class | Bin 0 -> 862 bytes .../practice/runnable/MatchRunnable.class | Bin 0 -> 6410 bytes .../practice/runnable/NametagRunnable.class | Bin 0 -> 4805 bytes .../practice/runnable/RematchRunnable.class | Bin 0 -> 2419 bytes .../practice/runnable/SaveDataRunnable.class | Bin 0 -> 937 bytes .../runnable/TournamentRunnable.class | Bin 0 -> 8639 bytes .../network/practice/team/KillableTeam.class | Bin 0 -> 3284 bytes .../practice/tournament/Tournament.class | Bin 0 -> 5914 bytes .../practice/tournament/TournamentState.class | Bin 0 -> 1199 bytes .../practice/tournament/TournamentTeam.class | Bin 0 -> 3112 bytes .../network/practice/utilties/BlockUtil.class | Bin 0 -> 6819 bytes .../network/practice/utilties/CC.class | Bin 0 -> 645 bytes .../network/practice/utilties/Config.class | Bin 0 -> 2472 bytes .../practice/utilties/CustomLocation.class | Bin 0 -> 5952 bytes .../network/practice/utilties/EloUtil.class | Bin 0 -> 1836 bytes .../network/practice/utilties/Handler.class | Bin 0 -> 640 bytes .../network/practice/utilties/KFactor.class | Bin 0 -> 795 bytes .../network/practice/utilties/MathUtil.class | Bin 0 -> 1352 bytes .../practice/utilties/OfflinePlayer.class | Bin 0 -> 1352 bytes .../practice/utilties/PlayerUtil$1.class | Bin 0 -> 2514 bytes .../practice/utilties/PlayerUtil.class | Bin 0 -> 8642 bytes .../network/practice/utilties/TeamUtil.class | Bin 0 -> 2142 bytes .../network/practice/utilties/TimeUtil.class | Bin 0 -> 8131 bytes .../practice/utilties/TtlHandler.class | Bin 0 -> 325 bytes .../practice/utilties/TtlHashMap.class | Bin 0 -> 4738 bytes .../practice/utilties/event/BaseEvent.class | Bin 0 -> 1118 bytes .../utilties/event/EventStartEvent.class | Bin 0 -> 762 bytes .../utilties/event/match/MatchEndEvent.class | Bin 0 -> 1004 bytes .../utilties/event/match/MatchEvent.class | Bin 0 -> 1031 bytes .../event/match/MatchStartEvent.class | Bin 0 -> 519 bytes .../practice/utilties/file/ArenaFile.class | Bin 0 -> 3311 bytes .../practice/utilties/file/ConfigFile.class | Bin 0 -> 3314 bytes .../practice/utilties/file/LaddersFile.class | Bin 0 -> 3318 bytes .../utilties/inventory/InventoryUI$1.class | Bin 0 -> 2152 bytes .../utilties/inventory/InventoryUI$2.class | Bin 0 -> 2317 bytes .../InventoryUI$AbstractClickableItem.class | Bin 0 -> 1074 bytes .../inventory/InventoryUI$ClickableItem.class | Bin 0 -> 498 bytes .../InventoryUI$EmptyClickableItem.class | Bin 0 -> 1255 bytes .../inventory/InventoryUI$Inventory2D.class | Bin 0 -> 4746 bytes .../InventoryUI$InventoryUIHolder.class | Bin 0 -> 1744 bytes .../utilties/inventory/InventoryUI.class | Bin 0 -> 6552 bytes .../utilties/inventory/ItemUtil$1.class | Bin 0 -> 975 bytes .../inventory/ItemUtil$ItemEnchant.class | Bin 0 -> 1084 bytes .../inventory/ItemUtil$ReloreType.class | Bin 0 -> 1376 bytes .../utilties/inventory/ItemUtil.class | Bin 0 -> 6762 bytes Practice/resources/META-INF/plugin.xml | 35 + Practice/src/META-INF/MANIFEST.MF | 3 + Practice/src/arenas.yml | 0 Practice/src/config.yml | 2 + Practice/src/ladders.yml | 0 Practice/src/plugin.yml | 6 + .../secondlife/network/practice/Practice.java | 175 + .../network/practice/arena/Arena.java | 50 + .../practice/arena/StandaloneArena.java | 35 + .../practice/commands/InventoryCommand.java | 43 + .../practice/commands/PartyCommand.java | 265 + .../commands/PremiumMatchesCommand.java | 71 + .../practice/commands/ResetStatsCommand.java | 56 + .../practice/commands/SaveCommand.java | 33 + .../practice/commands/SpawnCommand.java | 38 + .../practice/commands/StatsCommand.java | 111 + .../practice/commands/ToggleDuelCommand.java | 34 + .../commands/ToggleSpectatorsCommand.java | 34 + .../practice/commands/TournamentCommand.java | 219 + .../practice/commands/duel/AcceptCommand.java | 126 + .../practice/commands/duel/DuelCommand.java | 95 + .../commands/duel/SpectateCommand.java | 123 + .../commands/event/EventManagerCommand.java | 74 + .../practice/commands/event/HostCommand.java | 85 + .../commands/event/JoinEventCommand.java | 125 + .../commands/event/LeaveEventCommand.java | 65 + .../commands/event/SpectateEventCommand.java | 86 + .../commands/event/StatusEventCommand.java | 86 + .../commands/management/ArenaCommand.java | 209 + .../commands/management/KitCommand.java | 305 + .../commands/management/RankedCommand.java | 32 + .../commands/management/SpawnsCommand.java | 134 + .../practice/events/EventCountdownTask.java | 90 + .../network/practice/events/EventPlayer.java | 12 + .../network/practice/events/EventState.java | 8 + .../practice/events/PracticeEvent.java | 204 + .../events/oitc/OITCCountdownTask.java | 31 + .../practice/events/oitc/OITCEvent.java | 345 + .../practice/events/oitc/OITCPlayer.java | 28 + .../events/parkour/ParkourCountdownTask.java | 31 + .../practice/events/parkour/ParkourEvent.java | 279 + .../events/parkour/ParkourPlayer.java | 26 + .../events/sumo/SumoCountdownTask.java | 30 + .../practice/events/sumo/SumoEvent.java | 301 + .../practice/events/sumo/SumoPlayer.java | 26 + .../practice/handlers/ChatHandler.java | 109 + .../handlers/CustomMovementHandler.java | 171 + .../practice/handlers/EnderpearlHandler.java | 112 + .../practice/handlers/EntityHandler.java | 271 + .../practice/handlers/InventoryHandler.java | 60 + .../practice/handlers/MatchHandler.java | 277 + .../practice/handlers/PearlFixHandler.java | 93 + .../practice/handlers/PlayerHandler.java | 743 ++ .../practice/handlers/WorldHandler.java | 283 + .../practice/inventory/InventorySnapshot.java | 169 + .../secondlife/network/practice/kit/Kit.java | 57 + .../network/practice/kit/PlayerKit.java | 36 + .../leaderboard/LeaderboardEntry.java | 17 + .../practice/leaderboard/Leaderboards.java | 156 + .../practice/managers/ArenaManager.java | 258 + .../practice/managers/ChunkManager.java | 258 + .../practice/managers/EditorManager.java | 49 + .../practice/managers/EventManager.java | 185 + .../practice/managers/InventoryManager.java | 778 ++ .../practice/managers/ItemManager.java | 102 + .../network/practice/managers/KitManager.java | 110 + .../practice/managers/MatchManager.java | 479 ++ .../practice/managers/PartyManager.java | 140 + .../practice/managers/QueueManager.java | 437 + .../practice/managers/SpawnManager.java | 146 + .../practice/managers/TournamentManager.java | 267 + .../network/practice/match/Match.java | 183 + .../network/practice/match/MatchRequest.java | 17 + .../network/practice/match/MatchState.java | 8 + .../network/practice/match/MatchTeam.java | 18 + .../network/practice/party/Party.java | 66 + .../network/practice/player/PlayerState.java | 13 + .../network/practice/player/PracticeData.java | 461 + .../providers/ScoreboardProvider.java | 385 + .../practice/providers/TabProvider.java | 51 + .../network/practice/queue/QueueEntry.java | 16 + .../network/practice/queue/QueueType.java | 19 + .../runnable/ArenaCommandRunnable.java | 89 + .../practice/runnable/BlockPlaceRunnable.java | 70 + .../runnable/DuplicateArenaRunnable.java | 112 + .../practice/runnable/ExpBarRunnable.java | 68 + .../runnable/ItemDespawnRunnable.java | 24 + .../practice/runnable/MatchResetRunnable.java | 47 + .../practice/runnable/MatchRunnable.java | 63 + .../practice/runnable/NametagRunnable.java | 81 + .../practice/runnable/RematchRunnable.java | 35 + .../practice/runnable/SaveDataRunnable.java | 16 + .../practice/runnable/TournamentRunnable.java | 143 + .../network/practice/team/KillableTeam.java | 42 + .../practice/tournament/Tournament.java | 100 + .../practice/tournament/TournamentState.java | 5 + .../practice/tournament/TournamentTeam.java | 30 + .../network/practice/utilties/BlockUtil.java | 281 + .../network/practice/utilties/CC.java | 16 + .../network/practice/utilties/Config.java | 70 + .../practice/utilties/CustomLocation.java | 136 + .../network/practice/utilties/EloUtil.java | 55 + .../network/practice/utilties/Handler.java | 20 + .../network/practice/utilties/KFactor.java | 12 + .../network/practice/utilties/MathUtil.java | 36 + .../practice/utilties/OfflinePlayer.java | 27 + .../network/practice/utilties/PlayerUtil.java | 128 + .../network/practice/utilties/TeamUtil.java | 38 + .../network/practice/utilties/TimeUtil.java | 290 + .../network/practice/utilties/TtlHandler.java | 9 + .../network/practice/utilties/TtlHashMap.java | 128 + .../practice/utilties/event/BaseEvent.java | 26 + .../utilties/event/EventStartEvent.java | 11 + .../utilties/event/match/MatchEndEvent.java | 20 + .../utilties/event/match/MatchEvent.java | 24 + .../utilties/event/match/MatchStartEvent.java | 9 + .../practice/utilties/file/ArenaFile.java | 92 + .../practice/utilties/file/ConfigFile.java | 92 + .../practice/utilties/file/LaddersFile.java | 92 + .../utilties/inventory/InventoryUI.java | 307 + .../practice/utilties/inventory/ItemUtil.java | 147 + UHC/.idea/compiler.xml | 8 + UHC/.idea/misc.xml | 6 + UHC/.idea/modules.xml | 8 + UHC/.idea/workspace.xml | 1086 +++ UHC/UHC.iml | 51 + UHC/out/production/UHC/META-INF/MANIFEST.MF | 3 + UHC/out/production/UHC/META-INF/plugin.xml | 35 + UHC/out/production/UHC/config.yml | 2 + UHC/out/production/UHC/plugin.yml | 89 + UHC/out/production/UHC/utilities.yml | 1 + UHC/resources/META-INF/plugin.xml | 35 + UHC/src/META-INF/MANIFEST.MF | 3 + UHC/src/config.yml | 2 + UHC/src/plugin.yml | 89 + UHC/src/secondlife/network/uhc/UHC.java | 231 + .../secondlife/network/uhc/border/Border.java | 86 + .../network/uhc/border/InvisibleFix.java | 45 + .../uhc/border/worldborder/BorderData.java | 390 + .../uhc/border/worldborder/Config.java | 731 ++ .../uhc/border/worldborder/CoordXZ.java | 59 + .../border/worldborder/DynMapFeatures.java | 248 + .../uhc/border/worldborder/WorldFileData.java | 257 + .../uhc/border/worldborder/api/DynmapAPI.java | 67 + .../worldborder/api/DynmapCommonAPI.java | 147 + .../api/DynmapCommonAPIListener.java | 100 + .../worldborder/api/DynmapWebChatEvent.java | 51 + .../worldborder/api/markers/AreaMarker.java | 105 + .../worldborder/api/markers/CircleMarker.java | 97 + .../api/markers/GenericMarker.java | 77 + .../worldborder/api/markers/Marker.java | 41 + .../worldborder/api/markers/MarkerAPI.java | 68 + .../api/markers/MarkerDescription.java | 14 + .../worldborder/api/markers/MarkerIcon.java | 61 + .../worldborder/api/markers/MarkerSet.java | 259 + .../worldborder/api/markers/PlayerSet.java | 63 + .../api/markers/PolyLineMarker.java | 71 + .../api/permissions/PermissionsHandler.java | 58 + .../api/renderer/CustomColorMultiplier.java | 25 + .../api/renderer/CustomRenderer.java | 186 + .../api/renderer/MapDataContext.java | 64 + .../worldborder/api/renderer/RenderPatch.java | 10 + .../api/renderer/RenderPatchFactory.java | 94 + .../worldborder/commands/WBCommand.java | 244 + .../commands/arguments/WBBypassCommand.java | 101 + .../arguments/WBBypasslistCommand.java | 60 + .../commands/arguments/WBClearCommand.java | 71 + .../worldborder/commands/arguments/WBCmd.java | 147 + .../commands/arguments/WBCommands.java | 76 + .../commands/arguments/WBDebugCommand.java | 42 + .../commands/arguments/WBDelayCommand.java | 53 + .../arguments/WBDenypearlCommand.java | 44 + .../commands/arguments/WBDynmapCommand.java | 42 + .../arguments/WBDynmapmsgCommand.java | 50 + .../commands/arguments/WBFillCommand.java | 187 + .../arguments/WBFillautosaveCommand.java | 63 + .../commands/arguments/WBGetmsgCommand.java | 32 + .../commands/arguments/WBHelpCommand.java | 53 + .../arguments/WBKnockbackCommand.java | 55 + .../commands/arguments/WBListCommand.java | 44 + .../commands/arguments/WBPortalCommand.java | 43 + .../arguments/WBPreventPlaceCommand.java | 35 + .../arguments/WBPreventSpawnCommand.java | 35 + .../commands/arguments/WBRadiusCommand.java | 94 + .../commands/arguments/WBReloadCommand.java | 37 + .../commands/arguments/WBRemountCommand.java | 61 + .../commands/arguments/WBSetCommand.java | 147 + .../arguments/WBSetcornersCommand.java | 60 + .../commands/arguments/WBSetmsgCommand.java | 48 + .../commands/arguments/WBShapeCommand.java | 51 + .../commands/arguments/WBTrimCommand.java | 180 + .../commands/arguments/WBWhooshCommand.java | 42 + .../commands/arguments/WBWrapCommand.java | 64 + .../commands/arguments/WBWshapeCommand.java | 71 + .../worldborder/utilties/NameFetcher.java | 56 + .../worldborder/utilties/UUIDFetcher.java | 121 + .../network/uhc/commands/BaseCommand.java | 28 + .../network/uhc/commands/CommandHandler.java | 80 + .../commands/arguments/AutoStartCommand.java | 51 + .../commands/arguments/BackpackCommand.java | 57 + .../uhc/commands/arguments/BorderCommand.java | 46 + .../uhc/commands/arguments/ConfigCommand.java | 37 + .../uhc/commands/arguments/FlatCommand.java | 46 + .../uhc/commands/arguments/GameCommand.java | 567 ++ .../uhc/commands/arguments/HealthCommand.java | 49 + .../arguments/HideLocationCommand.java | 32 + .../commands/arguments/KillCountCommand.java | 52 + .../arguments/LeaderboardCommand.java | 22 + .../uhc/commands/arguments/MLGCommand.java | 168 + .../commands/arguments/MultiSpawnCommand.java | 94 + .../commands/arguments/NextGameCommand.java | 35 + .../arguments/OnlineStaffCommand.java | 83 + .../uhc/commands/arguments/PartyCommand.java | 387 + .../commands/arguments/PartyListCommand.java | 108 + .../uhc/commands/arguments/ReviveCommand.java | 95 + .../commands/arguments/ScatterCommand.java | 67 + .../commands/arguments/ScenariosCommand.java | 37 + .../commands/arguments/SpectatorCommand.java | 98 + .../uhc/commands/arguments/StatsCommand.java | 64 + .../commands/arguments/TopKillsCommand.java | 64 + .../arguments/UHCPracticeCommand.java | 268 + .../commands/arguments/WhitelistCommand.java | 66 + .../uhc/commands/arguments/XRayCommand.java | 25 + .../secondlife/network/uhc/config/Option.java | 72 + .../network/uhc/config/Options.java | 101 + .../network/uhc/deathlookup/DeathLookup.java | 330 + .../uhc/deathlookup/DeathLookupCommand.java | 50 + .../uhc/deathlookup/DeathLookupData.java | 15 + .../uhc/deathlookup/LastInventoryCommand.java | 106 + .../uhc/deathlookup/data/DeathData.java | 192 + .../uhc/deathlookup/data/ProfileFight.java | 72 + .../deathlookup/data/ProfileFightEffect.java | 17 + .../data/ProfileFightEnvironment.java | 13 + .../data/killer/ProfileFightKiller.java | 20 + .../type/ProfileFightEnvironmentKiller.java | 16 + .../killer/type/ProfileFightPlayerKiller.java | 43 + .../network/uhc/listeners/ChatListener.java | 119 + .../uhc/listeners/CombatLoggerListener.java | 187 + .../uhc/listeners/CustomMovementHandler.java | 28 + .../uhc/listeners/DeathLookupListener.java | 203 + .../uhc/listeners/DeathMessagesListener.java | 120 + .../network/uhc/listeners/GameListener.java | 219 + .../uhc/listeners/GameOptimizeListener.java | 167 + .../network/uhc/listeners/IPVPListener.java | 69 + .../uhc/listeners/InventoryListener.java | 311 + .../uhc/listeners/MobStackListener.java | 22 + .../uhc/listeners/MultiSpawnListener.java | 116 + .../uhc/listeners/OptionsListener.java | 177 + .../network/uhc/listeners/PlayerListener.java | 449 + .../uhc/listeners/PracticeListener.java | 93 + .../uhc/listeners/ProfileFightListener.java | 105 + .../uhc/listeners/SpectatorListener.java | 320 + .../network/uhc/listeners/StatsListener.java | 205 + .../network/uhc/listeners/VanishListener.java | 223 + .../uhc/listeners/WorldBorderListener.java | 105 + .../network/uhc/listeners/XrayListener.java | 82 + .../network/uhc/managers/BorderManager.java | 348 + .../uhc/managers/CombatLoggerManager.java | 125 + .../network/uhc/managers/GameManager.java | 149 + .../network/uhc/managers/GlassManager.java | 82 + .../uhc/managers/InventoryManager.java | 173 + .../network/uhc/managers/MobStackManager.java | 130 + .../network/uhc/managers/OptionManager.java | 111 + .../network/uhc/managers/PartyManager.java | 131 + .../network/uhc/managers/PlayerManager.java | 70 + .../network/uhc/managers/PracticeManager.java | 31 + .../network/uhc/managers/RequestManager.java | 62 + .../network/uhc/managers/ScenarioManager.java | 166 + .../uhc/managers/SpectatorManager.java | 310 + .../network/uhc/managers/VanishManager.java | 60 + .../secondlife/network/uhc/party/Party.java | 86 + .../network/uhc/party/PartyRequest.java | 39 + .../network/uhc/player/UHCData.java | 119 + .../uhc/providers/NametagsProvider.java | 48 + .../uhc/providers/ScoreboardProvider.java | 202 + .../network/uhc/providers/TabProvider.java | 229 + .../network/uhc/scenario/Scenario.java | 55 + .../uhc/scenario/ScenarioListeners.java | 414 + .../uhc/scenario/type/BackPacksScenario.java | 14 + .../uhc/scenario/type/BareBonesScenario.java | 37 + .../uhc/scenario/type/BestPVEScenario.java | 110 + .../scenario/type/BloodDiamondsScenario.java | 29 + .../scenario/type/BloodEnchantsScenario.java | 32 + .../uhc/scenario/type/BowlessScenario.java | 67 + .../scenario/type/ColdWeaponsScenario.java | 124 + .../uhc/scenario/type/CutCleanScenario.java | 268 + .../scenario/type/DiamondlessScenario.java | 54 + .../scenario/type/DoNotDisturbScenario.java | 110 + .../uhc/scenario/type/DoubleExpScenario.java | 76 + .../uhc/scenario/type/DoubleOresScenario.java | 222 + .../uhc/scenario/type/FirelessScenario.java | 34 + .../type/GoldenRetrieverScenario.java | 28 + .../uhc/scenario/type/GoldlessScenario.java | 60 + .../scenario/type/GoneFishingScenario.java | 47 + .../uhc/scenario/type/HorselessScenario.java | 31 + .../type/InfiniteEnchanterScenario.java | 28 + .../uhc/scenario/type/IronlessScenario.java | 63 + .../scenario/type/LimitationsScenario.java | 141 + .../type/LimitedEnchantsScenario.java | 105 + .../uhc/scenario/type/LongShotsScenario.java | 82 + .../scenario/type/LuckyLeavesScenario.java | 31 + .../uhc/scenario/type/NineSlotScenario.java | 49 + .../uhc/scenario/type/NoCleanScenario.java | 158 + .../uhc/scenario/type/NoEnchantsScenario.java | 56 + .../scenario/type/NoFallDamageScenario.java | 37 + .../uhc/scenario/type/OreFrenzyScenario.java | 96 + .../scenario/type/RiskyRetrievalScenario.java | 82 + .../uhc/scenario/type/RodlessScenario.java | 72 + .../uhc/scenario/type/SeasonsScenario.java | 12 + .../uhc/scenario/type/SoupScenario.java | 50 + .../uhc/scenario/type/SwitcherooScenario.java | 65 + .../uhc/scenario/type/SwordlessScenario.java | 53 + .../uhc/scenario/type/TimberScenario.java | 136 + .../uhc/scenario/type/TimeBombScenario.java | 155 + .../uhc/scenario/type/TripleExpScenario.java | 71 + .../uhc/scenario/type/TripleOresScenario.java | 223 + .../scenario/type/VanillaPlusScenario.java | 88 + .../uhc/scenario/type/WebCageScenario.java | 68 + .../network/uhc/state/GameState.java | 12 + .../network/uhc/tasks/AutoStartTask.java | 97 + .../network/uhc/tasks/BorderCheckTask.java | 179 + .../network/uhc/tasks/BorderTask.java | 41 + .../network/uhc/tasks/BorderTimeTask.java | 33 + .../network/uhc/tasks/GameTask.java | 207 + .../network/uhc/tasks/PracticeTask.java | 35 + .../uhc/tasks/UpdateInventoryTask.java | 12 + .../network/uhc/tasks/WorldFillTask.java | 504 ++ .../network/uhc/tasks/WorldTrimTask.java | 436 + .../network/uhc/utilties/BaseListener.java | 11 + .../network/uhc/utilties/BossBar.java | 126 + .../network/uhc/utilties/Manager.java | 16 + .../network/uhc/utilties/ScenarioUtils.java | 21 + .../network/uhc/utilties/UHCUtils.java | 484 ++ .../network/uhc/utilties/WorldCreator.java | 170 + .../events/ConfigOptionChangeEvent.java | 39 + .../uhc/utilties/events/GameStopEvent.java | 26 + .../uhc/utilties/events/GameWinEvent.java | 28 + .../uhc/utilties/events/GameWinTeamEvent.java | 33 + .../events/WorldBorderFillFinishedEvent.java | 29 + .../events/WorldBorderFillStartEvent.java | 27 + .../events/WorldBorderTrimFinishedEvent.java | 29 + .../events/WorldBorderTrimStartEvent.java | 27 + .../network/uhc/utilties/items/Items.java | 625 ++ .../uhc/utilties/items/StatsItems.java | 102 + .../uhc/utilties/spectator/OptionType.java | 26 + .../uhc/utilties/spectator/SpectatorData.java | 17 + UHC/src/utilities.yml | 1 + .../UHCMeetup-Game/META-INF/MANIFEST.MF | 3 + .../out/production/UHCMeetup-Game/kits.yml | 1075 +++ .../out/production/UHCMeetup-Game/plugin.yml | 6 + .../network/meetupgame/MeetupGame.class | Bin 0 -> 8156 bytes .../network/meetupgame/border/Border.class | Bin 0 -> 3635 bytes .../meetupgame/border/InvisibleFix$1.class | Bin 0 -> 2890 bytes .../meetupgame/border/InvisibleFix.class | Bin 0 -> 814 bytes .../meetupgame/commands/AnnounceCommand.class | Bin 0 -> 3008 bytes .../meetupgame/commands/EloCommand.class | Bin 0 -> 1615 bytes .../meetupgame/commands/KitCommand.class | Bin 0 -> 3907 bytes .../meetupgame/commands/LeaveCommand.class | Bin 0 -> 755 bytes .../meetupgame/commands/RerollCommand.class | Bin 0 -> 3485 bytes .../meetupgame/commands/StatsCommand.class | Bin 0 -> 2462 bytes .../network/meetupgame/data/GameData.class | Bin 0 -> 3521 bytes .../network/meetupgame/data/MeetupData.class | Bin 0 -> 6676 bytes .../meetupgame/data/SpectatorData.class | Bin 0 -> 1085 bytes .../meetupgame/listeners/ChatListener.class | Bin 0 -> 3525 bytes .../listeners/DeathMessagesListener.class | Bin 0 -> 4080 bytes .../listeners/PlayerListener$1.class | Bin 0 -> 1368 bytes .../meetupgame/listeners/PlayerListener.class | Bin 0 -> 20644 bytes .../listeners/SpectatorListener$1.class | Bin 0 -> 777 bytes .../listeners/SpectatorListener.class | Bin 0 -> 10848 bytes .../meetupgame/managers/BorderManager$1.class | Bin 0 -> 1235 bytes .../meetupgame/managers/BorderManager$2.class | Bin 0 -> 3042 bytes .../meetupgame/managers/BorderManager.class | Bin 0 -> 5866 bytes .../meetupgame/managers/GameManager.class | Bin 0 -> 10664 bytes .../meetupgame/managers/GlassManager.class | Bin 0 -> 5794 bytes .../managers/InventoryManager.class | Bin 0 -> 3086 bytes .../meetupgame/managers/KitsManager.class | Bin 0 -> 3912 bytes .../meetupgame/managers/ScenarioManager.class | Bin 0 -> 4583 bytes .../managers/SpectatorManager.class | Bin 0 -> 13061 bytes .../meetupgame/managers/VanishManager.class | Bin 0 -> 3095 bytes .../meetupgame/managers/VoteManager.class | Bin 0 -> 4079 bytes .../providers/NametagsProvider.class | Bin 0 -> 1093 bytes .../providers/ScoreboardProvider$1.class | Bin 0 -> 934 bytes .../providers/ScoreboardProvider.class | Bin 0 -> 8313 bytes .../meetupgame/providers/TabProvider.class | Bin 0 -> 5554 bytes .../meetupgame/scenario/Scenario.class | Bin 0 -> 1870 bytes .../scenario/ScenarioListeners.class | Bin 0 -> 7103 bytes .../scenario/type/BowlessScenario.class | Bin 0 -> 2198 bytes .../scenario/type/DefaultScenario.class | Bin 0 -> 640 bytes .../scenario/type/DoNotDisturbScenario.class | Bin 0 -> 3768 bytes .../scenario/type/FirelessScenario.class | Bin 0 -> 1377 bytes .../scenario/type/HorselessScenario.class | Bin 0 -> 1272 bytes .../scenario/type/LongShotsScenario.class | Bin 0 -> 2418 bytes .../scenario/type/NineSlotScenario.class | Bin 0 -> 2308 bytes .../scenario/type/NoCleanScenario.class | Bin 0 -> 4693 bytes .../scenario/type/NoFallDamageScenario.class | Bin 0 -> 1345 bytes .../scenario/type/RodlessScenario.class | Bin 0 -> 2234 bytes .../scenario/type/SoupScenario.class | Bin 0 -> 1767 bytes .../scenario/type/SwitcherooScenario.class | Bin 0 -> 1939 bytes .../scenario/type/TimeBombScenario.class | Bin 0 -> 5073 bytes .../scenario/type/WebCageScenario.class | Bin 0 -> 1894 bytes .../network/meetupgame/states/GameState.class | Bin 0 -> 1202 bytes .../meetupgame/states/PlayerState.class | Bin 0 -> 1166 bytes .../network/meetupgame/tasks/BorderTask.class | Bin 0 -> 1962 bytes .../meetupgame/tasks/BorderTimeTask.class | Bin 0 -> 1318 bytes .../network/meetupgame/tasks/GameTask.class | Bin 0 -> 4941 bytes .../meetupgame/tasks/StartingTask.class | Bin 0 -> 3116 bytes .../network/meetupgame/tasks/VoteTask.class | Bin 0 -> 3445 bytes .../network/meetupgame/tasks/WinTask.class | Bin 0 -> 3342 bytes .../meetupgame/utilties/EloUtils.class | Bin 0 -> 2041 bytes .../network/meetupgame/utilties/Manager.class | Bin 0 -> 672 bytes .../meetupgame/utilties/MeetupUtils.class | Bin 0 -> 9383 bytes .../meetupgame/utilties/OptionType.class | Bin 0 -> 2359 bytes UHCMeetup-Game/src/META-INF/MANIFEST.MF | 3 + UHCMeetup-Game/src/kits.yml | 1075 +++ UHCMeetup-Game/src/plugin.yml | 6 + .../network/meetupgame/MeetupGame.java | 107 + .../network/meetupgame/border/Border.java | 86 + .../meetupgame/border/InvisibleFix.java | 45 + .../meetupgame/commands/AnnounceCommand.java | 44 + .../meetupgame/commands/EloCommand.java | 23 + .../meetupgame/commands/KitCommand.java | 66 + .../meetupgame/commands/LeaveCommand.java | 16 + .../meetupgame/commands/RerollCommand.java | 63 + .../meetupgame/commands/StatsCommand.java | 41 + .../network/meetupgame/data/GameData.java | 33 + .../network/meetupgame/data/MeetupData.java | 123 + .../meetupgame/data/SpectatorData.java | 17 + .../meetupgame/listeners/ChatListener.java | 79 + .../listeners/DeathMessagesListener.java | 72 + .../meetupgame/listeners/PlayerListener.java | 439 + .../listeners/SpectatorListener.java | 286 + .../meetupgame/managers/BorderManager.java | 209 + .../meetupgame/managers/GameManager.java | 174 + .../meetupgame/managers/GlassManager.java | 79 + .../meetupgame/managers/InventoryManager.java | 35 + .../meetupgame/managers/KitsManager.java | 63 + .../meetupgame/managers/ScenarioManager.java | 67 + .../meetupgame/managers/SpectatorManager.java | 294 + .../meetupgame/managers/VanishManager.java | 60 + .../meetupgame/managers/VoteManager.java | 62 + .../providers/NametagsProvider.java | 26 + .../providers/ScoreboardProvider.java | 140 + .../meetupgame/providers/TabProvider.java | 132 + .../network/meetupgame/scenario/Scenario.java | 28 + .../scenario/ScenarioListeners.java | 165 + .../scenario/type/BowlessScenario.java | 36 + .../scenario/type/DefaultScenario.java | 15 + .../scenario/type/DoNotDisturbScenario.java | 67 + .../scenario/type/FirelessScenario.java | 24 + .../scenario/type/HorselessScenario.java | 21 + .../scenario/type/LongShotsScenario.java | 50 + .../scenario/type/NineSlotScenario.java | 38 + .../scenario/type/NoCleanScenario.java | 96 + .../scenario/type/NoFallDamageScenario.java | 26 + .../scenario/type/RodlessScenario.java | 39 + .../scenario/type/SoupScenario.java | 29 + .../scenario/type/SwitcherooScenario.java | 41 + .../scenario/type/TimeBombScenario.java | 119 + .../scenario/type/WebCageScenario.java | 37 + .../network/meetupgame/states/GameState.java | 12 + .../meetupgame/states/PlayerState.java | 11 + .../network/meetupgame/tasks/BorderTask.java | 34 + .../meetupgame/tasks/BorderTimeTask.java | 36 + .../network/meetupgame/tasks/GameTask.java | 66 + .../meetupgame/tasks/StartingTask.java | 44 + .../network/meetupgame/tasks/VoteTask.java | 52 + .../network/meetupgame/tasks/WinTask.java | 55 + .../network/meetupgame/utilties/EloUtils.java | 131 + .../network/meetupgame/utilties/Manager.java | 16 + .../meetupgame/utilties/MeetupUtils.java | 184 + .../meetupgame/utilties/OptionType.java | 29 + .../UHCMeetup-Info/META-INF/MANIFEST.MF | 3 + .../out/production/UHCMeetup-Info/config.yml | 5 + .../out/production/UHCMeetup-Info/plugin.yml | 6 + .../secondlife/network/info/InfoPlugin.class | Bin 0 -> 3168 bytes .../secondlife/network/info/MeetupData.class | Bin 0 -> 4910 bytes .../network/info/MeetupServer.class | Bin 0 -> 1939 bytes .../handlers/DataSubscriptionHandler$1.class | Bin 0 -> 771 bytes .../handlers/DataSubscriptionHandler.class | Bin 0 -> 2658 bytes .../ServerSubscriptionHandler$1.class | Bin 0 -> 779 bytes .../handlers/ServerSubscriptionHandler.class | Bin 0 -> 2508 bytes .../network/info/jedis/JedisAction.class | Bin 0 -> 1065 bytes .../network/info/jedis/JedisPublisher.class | Bin 0 -> 2815 bytes .../network/info/jedis/JedisQueue.class | Bin 0 -> 3304 bytes .../network/info/jedis/JedisSettings.class | Bin 0 -> 1169 bytes .../info/jedis/JedisSubscriber$1.class | Bin 0 -> 1826 bytes .../network/info/jedis/JedisSubscriber.class | Bin 0 -> 3607 bytes .../info/jedis/JedisSubscriptionHandler.class | Bin 0 -> 217 bytes .../network/info/thread/UpdateThread.class | Bin 0 -> 1365 bytes UHCMeetup-Info/src/META-INF/MANIFEST.MF | 3 + UHCMeetup-Info/src/config.yml | 5 + UHCMeetup-Info/src/plugin.yml | 6 + .../secondlife/network/info/InfoPlugin.java | 55 + .../secondlife/network/info/MeetupData.java | 49 + .../secondlife/network/info/MeetupServer.java | 32 + .../handlers/DataSubscriptionHandler.java | 39 + .../handlers/ServerSubscriptionHandler.java | 38 + .../network/info/jedis/JedisAction.java | 8 + .../network/info/jedis/JedisPublisher.java | 57 + .../network/info/jedis/JedisQueue.java | 16 + .../network/info/jedis/JedisSettings.java | 26 + .../network/info/jedis/JedisSubscriber.java | 59 + .../info/jedis/JedisSubscriptionHandler.java | 9 + .../network/info/thread/UpdateThread.java | 25 + .../UHCMeetup-Lobby/META-INF/MANIFEST.MF | 3 + .../out/production/UHCMeetup-Lobby/config.yml | 0 .../out/production/UHCMeetup-Lobby/plugin.yml | 6 + .../network/meetuplobby/MeetupLobby.class | Bin 0 -> 4911 bytes .../meetuplobby/commands/MeetupCommands.class | Bin 0 -> 2279 bytes .../meetuplobby/listeners/ChatListener.class | Bin 0 -> 2972 bytes .../listeners/PlayerListener$1.class | Bin 0 -> 775 bytes .../listeners/PlayerListener.class | Bin 0 -> 9939 bytes .../managers/InventoryManager.class | Bin 0 -> 8184 bytes .../providers/NametagsProvider.class | Bin 0 -> 1067 bytes .../providers/ScoreboardProvider.class | Bin 0 -> 4900 bytes .../meetuplobby/providers/TabProvider.class | Bin 0 -> 5169 bytes .../meetuplobby/utilties/Manager.class | Bin 0 -> 680 bytes .../meetuplobby/utilties/MeetupUtils$1.class | Bin 0 -> 780 bytes .../meetuplobby/utilties/MeetupUtils.class | Bin 0 -> 5464 bytes UHCMeetup-Lobby/src/config.yml | 0 UHCMeetup-Lobby/src/plugin.yml | 6 + .../network/meetuplobby/MeetupLobby.java | 70 + .../meetuplobby/commands/MeetupCommands.java | 28 + .../meetuplobby/listeners/ChatListener.java | 57 + .../meetuplobby/listeners/PlayerListener.java | 186 + .../managers/InventoryManager.java | 129 + .../providers/NametagsProvider.java | 25 + .../providers/ScoreboardProvider.java | 80 + .../meetuplobby/providers/TabProvider.java | 129 + .../network/meetuplobby/utilties/Manager.java | 16 + .../meetuplobby/utilties/MeetupUtils.java | 79 + Vituz/.classpath | 10 + Vituz/.idea/compiler.xml | 8 + Vituz/.idea/misc.xml | 6 + Vituz/.idea/modules.xml | 8 + Vituz/.idea/workspace.xml | 788 ++ Vituz/.project | 17 + .../org.eclipse.core.resources.prefs | 3 + Vituz/SL - Vituz.iml | 68 + Vituz/bin/META-INF/MANIFEST.MF | 3 + Vituz/bin/config.yml | 9 + Vituz/bin/crates.yml | 1 + Vituz/bin/items.csv | 7449 +++++++++++++++++ Vituz/bin/plugin.yml | 240 + Vituz/bin/ranks.yml | 181 + .../secondlife/network/vituz/Vituz$1.class | Bin 0 -> 895 bytes .../bin/secondlife/network/vituz/Vituz.class | Bin 0 -> 11457 bytes .../secondlife/network/vituz/VituzAPI.class | Bin 0 -> 6374 bytes .../network/vituz/commands/BaseCommand.class | Bin 0 -> 1263 bytes .../vituz/commands/CommandHandler.class | Bin 0 -> 11277 bytes .../arguments/ChallengeCommand$1.class | Bin 0 -> 2922 bytes .../commands/arguments/ChallengeCommand.class | Bin 0 -> 4934 bytes .../commands/arguments/ColorCommand.class | Bin 0 -> 1262 bytes .../commands/arguments/DonateCommand.class | Bin 0 -> 1051 bytes .../commands/arguments/ListCommand$1.class | Bin 0 -> 3199 bytes .../commands/arguments/ListCommand.class | Bin 0 -> 1289 bytes .../commands/arguments/PingCommand.class | Bin 0 -> 2004 bytes .../commands/arguments/PlaytimeCommand.class | Bin 0 -> 2054 bytes .../commands/arguments/PrefixCommand.class | Bin 0 -> 1155 bytes .../commands/arguments/SettingsCommand.class | Bin 0 -> 1041 bytes .../commands/arguments/TeamSpeakCommand.class | Bin 0 -> 1058 bytes .../arguments/console/BungeeCommand.class | Bin 0 -> 1654 bytes .../arguments/message/BroadcastCommand.class | Bin 0 -> 1580 bytes .../arguments/message/IgnoreCommand.class | Bin 0 -> 3667 bytes .../arguments/message/MessageCommand.class | Bin 0 -> 2357 bytes .../arguments/message/ReplyCommand$1.class | Bin 0 -> 3053 bytes .../arguments/message/ReplyCommand.class | Bin 0 -> 1233 bytes .../arguments/message/SocialspyCommand.class | Bin 0 -> 1991 bytes .../arguments/message/SoundsCommand.class | Bin 0 -> 1857 bytes .../arguments/message/ToggleChatCommand.class | Bin 0 -> 1888 bytes .../arguments/message/TogglePMCommand.class | Bin 0 -> 1881 bytes .../arguments/staff/ChatControlCommand.class | Bin 0 -> 3059 bytes .../commands/arguments/staff/DayCommand.class | Bin 0 -> 1632 bytes .../commands/arguments/staff/ExpCommand.class | Bin 0 -> 3140 bytes .../arguments/staff/FeedCommand.class | Bin 0 -> 3545 bytes .../commands/arguments/staff/FlyCommand.class | Bin 0 -> 3615 bytes .../arguments/staff/FreezeCommand.class | Bin 0 -> 3043 bytes .../commands/arguments/staff/GodCommand.class | Bin 0 -> 3820 bytes .../arguments/staff/HealCommand.class | Bin 0 -> 3992 bytes .../arguments/staff/KickallCommand.class | Bin 0 -> 2497 bytes .../arguments/staff/KillCommand.class | Bin 0 -> 2563 bytes .../arguments/staff/KillallCommand.class | Bin 0 -> 3221 bytes .../commands/arguments/staff/LagCommand.class | Bin 0 -> 3437 bytes .../arguments/staff/LoreCommand.class | Bin 0 -> 2370 bytes .../arguments/staff/NightCommand.class | Bin 0 -> 1653 bytes .../arguments/staff/NotesCommand$1.class | Bin 0 -> 2047 bytes .../arguments/staff/NotesCommand.class | Bin 0 -> 5272 bytes .../staff/PlayerdistanceCommand.class | Bin 0 -> 3313 bytes .../arguments/staff/ProtocolCommand.class | Bin 0 -> 3230 bytes .../arguments/staff/RebootCommand.class | Bin 0 -> 2191 bytes .../arguments/staff/SeenCommand.class | Bin 0 -> 2666 bytes .../arguments/staff/SpawnerCommand.class | Bin 0 -> 2665 bytes .../arguments/staff/SpeedCommand.class | Bin 0 -> 2313 bytes .../arguments/staff/StaffJoinCommand.class | Bin 0 -> 1414 bytes .../arguments/staff/StatusCommand.class | Bin 0 -> 2977 bytes .../commands/arguments/staff/SunCommand.class | Bin 0 -> 1734 bytes .../arguments/staff/TasksCommand.class | Bin 0 -> 2472 bytes .../staff/ViewdistanceCommand$1.class | Bin 0 -> 1469 bytes .../arguments/staff/ViewdistanceCommand.class | Bin 0 -> 2898 bytes .../staff/gamemode/AdventureCommand.class | Bin 0 -> 3090 bytes .../staff/gamemode/CreativeCommand.class | Bin 0 -> 3083 bytes .../staff/gamemode/GamemodeCommand.class | Bin 0 -> 4922 bytes .../staff/gamemode/SurvivalCommand.class | Bin 0 -> 3083 bytes .../staff/inventory/ClearCommand.class | Bin 0 -> 3002 bytes .../staff/inventory/CraftCommand.class | Bin 0 -> 1388 bytes .../staff/inventory/EnchantCommand.class | Bin 0 -> 3172 bytes .../staff/inventory/EnderchestCommand.class | Bin 0 -> 2655 bytes .../staff/inventory/GiveCommand.class | Bin 0 -> 5224 bytes .../staff/inventory/GiveYourSelfCommand.class | Bin 0 -> 3137 bytes .../staff/inventory/InvseeCommand.class | Bin 0 -> 1956 bytes .../staff/inventory/MoreCommand.class | Bin 0 -> 1840 bytes .../staff/inventory/RenameCommand.class | Bin 0 -> 2491 bytes .../staff/inventory/RepairCommand.class | Bin 0 -> 3443 bytes .../staff/teleport/BackCommand.class | Bin 0 -> 1749 bytes .../staff/teleport/TeleportCommand.class | Bin 0 -> 1930 bytes .../staff/teleport/TeleportallCommand.class | Bin 0 -> 1886 bytes .../staff/teleport/TeleporthereCommand.class | Bin 0 -> 1971 bytes .../teleport/TeleportpositionCommand.class | Bin 0 -> 2517 bytes .../arguments/staff/teleport/TopCommand.class | Bin 0 -> 1912 bytes .../staff/teleport/WarpCommand.class | Bin 0 -> 5704 bytes .../staff/teleport/WorldCommand.class | Bin 0 -> 2192 bytes .../network/vituz/crates/Crate.class | Bin 0 -> 5142 bytes .../network/vituz/crates/CrateHandler.class | Bin 0 -> 12596 bytes .../vituz/crates/command/CrateCommand.class | Bin 0 -> 7491 bytes .../vituz/handlers/AutoRestartHandler$1.class | Bin 0 -> 1494 bytes .../vituz/handlers/AutoRestartHandler.class | Bin 0 -> 937 bytes .../network/vituz/handlers/BackHandler.class | Bin 0 -> 2776 bytes .../vituz/handlers/ChatControlHandler.class | Bin 0 -> 2084 bytes .../vituz/handlers/ChatHandler$1.class | Bin 0 -> 778 bytes .../network/vituz/handlers/ChatHandler.class | Bin 0 -> 8007 bytes .../handlers/CustomMovementHandler.class | Bin 0 -> 1100 bytes .../vituz/handlers/DatabaseHandler.class | Bin 0 -> 3625 bytes .../vituz/handlers/EssentialsHandler$1.class | Bin 0 -> 1295 bytes .../vituz/handlers/EssentialsHandler$2.class | Bin 0 -> 1102 bytes .../vituz/handlers/EssentialsHandler.class | Bin 0 -> 9360 bytes .../vituz/handlers/FreezeHandler.class | Bin 0 -> 13391 bytes .../vituz/handlers/GlitchHandler$1.class | Bin 0 -> 1133 bytes .../vituz/handlers/GlitchHandler.class | Bin 0 -> 6093 bytes .../network/vituz/handlers/GodHandler.class | Bin 0 -> 2803 bytes .../vituz/handlers/InvseeHandler.class | Bin 0 -> 7756 bytes .../vituz/handlers/MessageHandler.class | Bin 0 -> 4313 bytes .../vituz/handlers/SecurityHandler$1.class | Bin 0 -> 1490 bytes .../vituz/handlers/SecurityHandler$2.class | Bin 0 -> 1702 bytes .../vituz/handlers/SecurityHandler.class | Bin 0 -> 7288 bytes .../network/vituz/handlers/WarpHandler.class | Bin 0 -> 948 bytes .../vituz/handlers/data/ChallengeData.class | Bin 0 -> 8165 bytes .../handlers/data/ChallengeDataHandler.class | Bin 0 -> 2894 bytes .../vituz/handlers/data/PlayerData.class | Bin 0 -> 10113 bytes .../handlers/data/PlayerDataHandler.class | Bin 0 -> 2873 bytes .../handlers/events/PlayerMessageEvent.class | Bin 0 -> 4352 bytes .../handlers/runnables/FreezeRunnable.class | Bin 0 -> 1970 bytes .../handlers/runnables/RebootRunnable$1.class | Bin 0 -> 950 bytes .../handlers/runnables/RebootRunnable.class | Bin 0 -> 2502 bytes .../handlers/settings/SettingsHandler.class | Bin 0 -> 7671 bytes .../tags/ChallengeLeaderboardEntry.class | Bin 0 -> 1243 bytes .../vituz/handlers/tags/Challenges.class | Bin 0 -> 5632 bytes .../network/vituz/handlers/tags/Colors.class | Bin 0 -> 3931 bytes .../vituz/handlers/tags/Prefixes.class | Bin 0 -> 7263 bytes .../vituz/handlers/tags/ServerColors.class | Bin 0 -> 5045 bytes .../tags/type/ChallengesHandler$1.class | Bin 0 -> 3390 bytes .../tags/type/ChallengesHandler.class | Bin 0 -> 5840 bytes .../handlers/tags/type/ColorsHandler.class | Bin 0 -> 3982 bytes .../handlers/tags/type/PrefixesHandler.class | Bin 0 -> 5649 bytes .../tags/type/ServerColorsHandler.class | Bin 0 -> 3928 bytes .../vituz/providers/LayoutProvider.class | Bin 0 -> 245 bytes ...metagProvider$DefaultNametagProvider.class | Bin 0 -> 927 bytes .../vituz/providers/NametagProvider.class | Bin 0 -> 1214 bytes .../vituz/providers/ScoreProvider.class | Bin 0 -> 212 bytes .../providers/listeners/NametagListener.class | Bin 0 -> 1970 bytes .../listeners/ScoreboardListener.class | Bin 0 -> 1156 bytes .../providers/listeners/TabListener$1.class | Bin 0 -> 1135 bytes .../providers/listeners/TabListener.class | Bin 0 -> 1553 bytes .../providers/nametags/NametagInfo.class | Bin 0 -> 1286 bytes .../providers/nametags/NametagUpdate.class | Bin 0 -> 920 bytes .../nametags/VituzNametagHandler$1.class | Bin 0 -> 1262 bytes .../nametags/VituzNametagHandler.class | Bin 0 -> 8065 bytes .../packets/PlayerInfoPacketMod.class | Bin 0 -> 2175 bytes .../packets/ScoreboardTeamPacketMod.class | Bin 0 -> 3266 bytes .../scoreboard/ScoreboardConfiguration.class | Bin 0 -> 1139 bytes .../providers/scoreboard/TitleGetter.class | Bin 0 -> 792 bytes .../scoreboard/VituzScoreboard.class | Bin 0 -> 10982 bytes .../scoreboard/VituzScoreboardHandler.class | Bin 0 -> 2463 bytes .../vituz/providers/tab/TabLayout.class | Bin 0 -> 7457 bytes .../vituz/providers/tab/TabUtils.class | Bin 0 -> 2097 bytes .../vituz/providers/tab/VituzTab.class | Bin 0 -> 9015 bytes .../vituz/providers/tab/VituzTabHandler.class | Bin 0 -> 4278 bytes .../providers/threads/NametagThread.class | Bin 0 -> 2209 bytes .../providers/threads/ScoreboardThread.class | Bin 0 -> 1512 bytes .../vituz/providers/threads/TabThread.class | Bin 0 -> 1459 bytes .../network/vituz/status/Server.class | Bin 0 -> 1713 bytes .../network/vituz/status/ServerData.class | Bin 0 -> 4954 bytes .../handlers/DataSubscriptionHandler$1.class | Bin 0 -> 819 bytes .../handlers/DataSubscriptionHandler.class | Bin 0 -> 2722 bytes .../ServerSubscriptionHandler$1.class | Bin 0 -> 827 bytes .../handlers/ServerSubscriptionHandler.class | Bin 0 -> 2572 bytes .../vituz/status/jedis/JedisAction.class | Bin 0 -> 1113 bytes .../vituz/status/jedis/JedisChannel.class | Bin 0 -> 464 bytes .../vituz/status/jedis/JedisPublisher.class | Bin 0 -> 2818 bytes .../vituz/status/jedis/JedisQueue.class | Bin 0 -> 3261 bytes .../vituz/status/jedis/JedisSettings.class | Bin 0 -> 1185 bytes .../status/jedis/JedisSubscriber$1.class | Bin 0 -> 1906 bytes .../vituz/status/jedis/JedisSubscriber.class | Bin 0 -> 3607 bytes .../jedis/JedisSubscriptionHandler.class | Bin 0 -> 225 bytes .../vituz/status/thread/UpdateThread.class | Bin 0 -> 1395 bytes .../network/vituz/system/PunishData$1.class | Bin 0 -> 1569 bytes .../network/vituz/system/PunishData.class | Bin 0 -> 16247 bytes .../network/vituz/system/RankData$1.class | Bin 0 -> 780 bytes .../network/vituz/system/RankData.class | Bin 0 -> 12571 bytes .../handlers/GrantProcedureHandler.class | Bin 0 -> 7830 bytes .../vituz/system/handlers/RankHandler$1.class | Bin 0 -> 2673 bytes .../vituz/system/handlers/RankHandler$2.class | Bin 0 -> 2785 bytes .../vituz/system/handlers/RankHandler.class | Bin 0 -> 9703 bytes .../punishments/PunishDataHandler.class | Bin 0 -> 9003 bytes .../punishments/commands/KickCommand.class | Bin 0 -> 2404 bytes .../punishments/redis/PunishPublisher.class | Bin 0 -> 1276 bytes .../redis/PunishSubscriber$1.class | Bin 0 -> 1043 bytes .../redis/PunishSubscriber$2$1.class | Bin 0 -> 2830 bytes .../redis/PunishSubscriber$2.class | Bin 0 -> 4624 bytes .../punishments/redis/PunishSubscriber.class | Bin 0 -> 1515 bytes .../system/punishments/type/Punishment.class | Bin 0 -> 8208 bytes .../punishments/type/PunishmentQueue.class | Bin 0 -> 1889 bytes .../punishments/type/PunishmentType.class | Bin 0 -> 2847 bytes .../system/ranks/commands/GrantCommand.class | Bin 0 -> 9099 bytes .../system/ranks/commands/GrantsCommand.class | Bin 0 -> 3015 bytes .../system/ranks/commands/RankCommand$1.class | Bin 0 -> 1651 bytes .../system/ranks/commands/RankCommand.class | Bin 0 -> 12236 bytes .../profile/AddPermissionCommand.class | Bin 0 -> 3828 bytes .../profile/ListPermissionCommand.class | Bin 0 -> 4636 bytes .../profile/RemovePermissionCommand.class | Bin 0 -> 3860 bytes .../vituz/system/ranks/grant/Grant.class | Bin 0 -> 2845 bytes .../grant/procedure/GrantProcedure.class | Bin 0 -> 5188 bytes .../grant/procedure/GrantProcedureData.class | Bin 0 -> 1903 bytes .../grant/procedure/GrantProcedureStage.class | Bin 0 -> 1367 bytes .../grant/procedure/GrantRecipient.class | Bin 0 -> 733 bytes .../system/ranks/redis/RankPublisher.class | Bin 0 -> 1252 bytes .../ranks/redis/RankSubscriberAction.class | Bin 0 -> 1895 bytes .../vituz/system/ranks/type/Rank.class | Bin 0 -> 3924 bytes .../vituz/system/ranks/type/RankData.class | Bin 0 -> 1990 bytes .../vituz/utilties/ActionMessage$AMText.class | Bin 0 -> 4112 bytes .../ActionMessage$ClickableType.class | Bin 0 -> 1527 bytes .../vituz/utilties/ActionMessage.class | Bin 0 -> 2987 bytes .../network/vituz/utilties/BossBar.class | Bin 0 -> 5770 bytes .../vituz/utilties/ChallengeUtils.class | Bin 0 -> 3033 bytes .../network/vituz/utilties/Color.class | Bin 0 -> 1268 bytes .../network/vituz/utilties/DateUtil.class | Bin 0 -> 6799 bytes .../vituz/utilties/GsonFactory$1.class | Bin 0 -> 249 bytes .../GsonFactory$DateGsonAdapter.class | Bin 0 -> 2091 bytes .../utilties/GsonFactory$ExposeExlusion.class | Bin 0 -> 1706 bytes .../vituz/utilties/GsonFactory$Ignore.class | Bin 0 -> 506 bytes .../GsonFactory$ItemStackGsonAdapter$1.class | Bin 0 -> 715 bytes .../GsonFactory$ItemStackGsonAdapter.class | Bin 0 -> 6503 bytes .../GsonFactory$LocationGsonAdapter$1.class | Bin 0 -> 711 bytes .../GsonFactory$LocationGsonAdapter.class | Bin 0 -> 4458 bytes .../GsonFactory$NewItemStackAdapter.class | Bin 0 -> 4615 bytes ...sonFactory$PotionEffectGsonAdapter$1.class | Bin 0 -> 727 bytes .../GsonFactory$PotionEffectGsonAdapter.class | Bin 0 -> 3855 bytes .../network/vituz/utilties/GsonFactory.class | Bin 0 -> 7340 bytes .../network/vituz/utilties/Handler.class | Bin 0 -> 1177 bytes .../utilties/InventorySerialisation$1.class | Bin 0 -> 680 bytes .../utilties/InventorySerialisation.class | Bin 0 -> 1256 bytes .../vituz/utilties/InventoryUtils.class | Bin 0 -> 3903 bytes .../network/vituz/utilties/ItemBuilder.class | Bin 0 -> 5151 bytes .../network/vituz/utilties/ItemNames.class | Bin 0 -> 27056 bytes .../network/vituz/utilties/JavaUtils.class | Bin 0 -> 6188 bytes .../network/vituz/utilties/Msg.class | Bin 0 -> 2750 bytes .../network/vituz/utilties/NumberUtils.class | Bin 0 -> 973 bytes .../network/vituz/utilties/PacketUtils.class | Bin 0 -> 4200 bytes .../vituz/utilties/PasteUtils$Expire.class | Bin 0 -> 1987 bytes .../vituz/utilties/PasteUtils$Language.class | Bin 0 -> 19330 bytes .../utilties/PasteUtils$PasteResult.class | Bin 0 -> 1203 bytes .../utilties/PasteUtils$Visibility.class | Bin 0 -> 1600 bytes .../network/vituz/utilties/PasteUtils.class | Bin 0 -> 7130 bytes .../network/vituz/utilties/Permission.class | Bin 0 -> 1373 bytes .../vituz/utilties/PersistableLocation.class | Bin 0 -> 6003 bytes .../network/vituz/utilties/ServerUtils.class | Bin 0 -> 3582 bytes .../vituz/utilties/StringUtils$1.class | Bin 0 -> 795 bytes .../vituz/utilties/StringUtils$2.class | Bin 0 -> 795 bytes .../network/vituz/utilties/StringUtils.class | Bin 0 -> 11965 bytes .../network/vituz/utilties/WoolUtil.class | Bin 0 -> 1316 bytes .../vituz/utilties/config/ConfigFile.class | Bin 0 -> 3807 bytes .../utilties/cuboid/CoordinatePair.class | Bin 0 -> 1398 bytes .../vituz/utilties/cuboid/Cuboid$1.class | Bin 0 -> 1170 bytes .../vituz/utilties/cuboid/Cuboid.class | Bin 0 -> 16605 bytes .../utilties/cuboid/CuboidBlockIterator.class | Bin 0 -> 2703 bytes .../utilties/cuboid/CuboidDirection$1.class | Bin 0 -> 1135 bytes .../utilties/cuboid/CuboidDirection.class | Bin 0 -> 2418 bytes .../cuboid/CuboidLocationIterator.class | Bin 0 -> 2690 bytes .../vituz/utilties/cuboid/NamedCuboid.class | Bin 0 -> 3135 bytes .../vituz/utilties/file/ConfigFile.class | Bin 0 -> 3281 bytes .../vituz/utilties/file/RanksFile.class | Bin 0 -> 3985 bytes .../vituz/utilties/file/UtilitiesFile.class | Bin 0 -> 3293 bytes .../utilties/holograms/CraftHologram$1.class | Bin 0 -> 1000 bytes .../utilties/holograms/CraftHologram.class | Bin 0 -> 12891 bytes .../holograms/DefaultHologram$1.class | Bin 0 -> 799 bytes .../holograms/DefaultHologram$2.class | Bin 0 -> 783 bytes .../utilties/holograms/DefaultHologram.class | Bin 0 -> 8799 bytes .../vituz/utilties/holograms/Hologram.class | Bin 0 -> 1368 bytes .../utilties/holograms/HologramAPI.class | Bin 0 -> 8849 bytes .../utilties/holograms/HologramHandler.class | Bin 0 -> 3726 bytes .../utilties/holograms/HologramOffsets.class | Bin 0 -> 613 bytes .../entities/HologramEntityHorse.class | Bin 0 -> 1626 bytes .../entities/HologramEntityItem.class | Bin 0 -> 3502 bytes .../entities/HologramEntitySkull.class | Bin 0 -> 2102 bytes .../holograms/reflection/AccessUtil.class | Bin 0 -> 1217 bytes .../holograms/reflection/ClassBuilder.class | Bin 0 -> 11240 bytes .../holograms/reflection/MathUtil.class | Bin 0 -> 509 bytes .../holograms/reflection/NMSClass.class | Bin 0 -> 2228 bytes .../holograms/reflection/NMUClass.class | Bin 0 -> 1935 bytes .../holograms/reflection/Reflection.class | Bin 0 -> 4091 bytes .../vituz/utilties/inventory/VituzMenu.class | Bin 0 -> 3074 bytes .../utilties/inventory/VituzMenuHandler.class | Bin 0 -> 2602 bytes .../network/vituz/utilties/item/ItemDB.class | Bin 0 -> 657 bytes .../vituz/utilties/item/ItemData.class | Bin 0 -> 3955 bytes .../vituz/utilties/item/ItemHandler.class | Bin 0 -> 758 bytes .../vituz/utilties/item/ManagedFile.class | Bin 0 -> 5570 bytes .../vituz/utilties/item/SimpleItemDB$1.class | Bin 0 -> 907 bytes .../vituz/utilties/item/SimpleItemDB.class | Bin 0 -> 12512 bytes .../network/vituz/utilties/nms/HorseNMS.class | Bin 0 -> 3041 bytes .../utilties/update/MovementUpdate.class | Bin 0 -> 1601 bytes .../utilties/update/PositionUpdate.class | Bin 0 -> 689 bytes .../utilties/update/RotationUpdate.class | Bin 0 -> 689 bytes .../network/vituz/visualise/BlockFiller.class | Bin 0 -> 1911 bytes .../vituz/visualise/ProtocolLibHook$1.class | Bin 0 -> 3313 bytes .../vituz/visualise/ProtocolLibHook.class | Bin 0 -> 1503 bytes .../network/vituz/visualise/VisualBlock.class | Bin 0 -> 1097 bytes .../vituz/visualise/VisualBlockData.class | Bin 0 -> 1106 bytes .../vituz/visualise/VisualType$1$1.class | Bin 0 -> 1173 bytes .../vituz/visualise/VisualType$1.class | Bin 0 -> 854 bytes .../vituz/visualise/VisualType$2$1.class | Bin 0 -> 1175 bytes .../vituz/visualise/VisualType$2.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$3$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$3.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$4$1.class | Bin 0 -> 1174 bytes .../vituz/visualise/VisualType$4.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$5$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$5.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$6$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$6.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$7$1.class | Bin 0 -> 1174 bytes .../vituz/visualise/VisualType$7.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$8$1.class | Bin 0 -> 1180 bytes .../vituz/visualise/VisualType$8.class | Bin 0 -> 915 bytes .../network/vituz/visualise/VisualType.class | Bin 0 -> 2273 bytes .../vituz/visualise/VisualiseHandler$1.class | Bin 0 -> 1353 bytes .../vituz/visualise/VisualiseHandler.class | Bin 0 -> 10056 bytes Vituz/bin/utilities.yml | 1 + .../out/production/Vituz/META-INF/MANIFEST.MF | 3 + Vituz/out/production/Vituz/config.yml | 8 + Vituz/out/production/Vituz/crates.yml | 0 Vituz/out/production/Vituz/items.csv | 7449 +++++++++++++++++ Vituz/out/production/Vituz/plugin.yml | 253 + Vituz/out/production/Vituz/ranks.yml | 132 + .../secondlife/network/vituz/Vituz.class | Bin 0 -> 11181 bytes .../secondlife/network/vituz/VituzAPI$1.class | Bin 0 -> 808 bytes .../secondlife/network/vituz/VituzAPI.class | Bin 0 -> 8909 bytes .../network/vituz/commands/BaseCommand.class | Bin 0 -> 1054 bytes .../vituz/commands/CommandHandler.class | Bin 0 -> 11382 bytes .../arguments/ChallengeCommand$1.class | Bin 0 -> 2897 bytes .../commands/arguments/ChallengeCommand.class | Bin 0 -> 4736 bytes .../commands/arguments/ColorCommand.class | Bin 0 -> 1400 bytes .../commands/arguments/DiscordCommand.class | Bin 0 -> 1039 bytes .../commands/arguments/DonateCommand.class | Bin 0 -> 1051 bytes .../commands/arguments/FacebookCommand.class | Bin 0 -> 1060 bytes .../commands/arguments/ForumCommand.class | Bin 0 -> 1035 bytes .../commands/arguments/ListCommand$1.class | Bin 0 -> 4341 bytes .../commands/arguments/ListCommand.class | Bin 0 -> 1165 bytes .../commands/arguments/PingCommand.class | Bin 0 -> 2004 bytes .../commands/arguments/PlaytimeCommand.class | Bin 0 -> 2054 bytes .../commands/arguments/PrefixCommand.class | Bin 0 -> 1297 bytes .../commands/arguments/RulesCommand.class | Bin 0 -> 1024 bytes .../commands/arguments/SettingsCommand.class | Bin 0 -> 1032 bytes .../commands/arguments/TeamSpeakCommand.class | Bin 0 -> 1058 bytes .../arguments/console/BungeeCommand.class | Bin 0 -> 1654 bytes .../arguments/message/BroadcastCommand.class | Bin 0 -> 1580 bytes .../arguments/message/IgnoreCommand.class | Bin 0 -> 3635 bytes .../arguments/message/MessageCommand.class | Bin 0 -> 3004 bytes .../arguments/message/ReplyCommand$1.class | Bin 0 -> 3920 bytes .../arguments/message/ReplyCommand.class | Bin 0 -> 1231 bytes .../arguments/message/SocialspyCommand.class | Bin 0 -> 1979 bytes .../arguments/message/SoundsCommand.class | Bin 0 -> 1845 bytes .../arguments/message/ToggleChatCommand.class | Bin 0 -> 1876 bytes .../arguments/message/TogglePMCommand.class | Bin 0 -> 1869 bytes .../arguments/staff/ChatControlCommand.class | Bin 0 -> 3276 bytes .../arguments/staff/CrateCommand.class | Bin 0 -> 8024 bytes .../commands/arguments/staff/DayCommand.class | Bin 0 -> 1632 bytes .../commands/arguments/staff/ExpCommand.class | Bin 0 -> 3140 bytes .../arguments/staff/FeedCommand.class | Bin 0 -> 3545 bytes .../commands/arguments/staff/FlyCommand.class | Bin 0 -> 3615 bytes .../arguments/staff/FreezeCommand.class | Bin 0 -> 2219 bytes .../commands/arguments/staff/GodCommand.class | Bin 0 -> 3942 bytes .../arguments/staff/HealCommand.class | Bin 0 -> 3992 bytes .../arguments/staff/KickallCommand.class | Bin 0 -> 2623 bytes .../arguments/staff/KillCommand.class | Bin 0 -> 2563 bytes .../arguments/staff/KillallCommand.class | Bin 0 -> 3221 bytes .../commands/arguments/staff/LagCommand.class | Bin 0 -> 3437 bytes .../arguments/staff/LoreCommand.class | Bin 0 -> 2370 bytes .../arguments/staff/NightCommand.class | Bin 0 -> 1653 bytes .../arguments/staff/NotesCommand$1.class | Bin 0 -> 2020 bytes .../arguments/staff/NotesCommand.class | Bin 0 -> 4093 bytes .../staff/PlayerdistanceCommand.class | Bin 0 -> 3313 bytes .../arguments/staff/ProtocolCommand.class | Bin 0 -> 3230 bytes .../arguments/staff/RebootCommand.class | Bin 0 -> 2491 bytes .../arguments/staff/SeenCommand.class | Bin 0 -> 2239 bytes .../arguments/staff/SpawnerCommand.class | Bin 0 -> 2665 bytes .../arguments/staff/SpeedCommand.class | Bin 0 -> 2313 bytes .../arguments/staff/StaffJoinCommand.class | Bin 0 -> 1414 bytes .../arguments/staff/StatusCommand.class | Bin 0 -> 2977 bytes .../commands/arguments/staff/SunCommand.class | Bin 0 -> 1734 bytes .../arguments/staff/TasksCommand.class | Bin 0 -> 2472 bytes .../staff/ViewdistanceCommand$1.class | Bin 0 -> 1469 bytes .../arguments/staff/ViewdistanceCommand.class | Bin 0 -> 2896 bytes .../staff/gamemode/AdventureCommand.class | Bin 0 -> 3090 bytes .../staff/gamemode/CreativeCommand.class | Bin 0 -> 3083 bytes .../staff/gamemode/GamemodeCommand.class | Bin 0 -> 4922 bytes .../staff/gamemode/SurvivalCommand.class | Bin 0 -> 3083 bytes .../staff/inventory/ClearCommand.class | Bin 0 -> 3002 bytes .../staff/inventory/CraftCommand.class | Bin 0 -> 1871 bytes .../staff/inventory/EnchantCommand.class | Bin 0 -> 3172 bytes .../staff/inventory/EnderchestCommand.class | Bin 0 -> 2655 bytes .../staff/inventory/GiveCommand.class | Bin 0 -> 5362 bytes .../staff/inventory/GiveYourSelfCommand.class | Bin 0 -> 3165 bytes .../staff/inventory/InvseeCommand.class | Bin 0 -> 2104 bytes .../staff/inventory/MoreCommand.class | Bin 0 -> 1840 bytes .../staff/inventory/RenameCommand.class | Bin 0 -> 2491 bytes .../staff/inventory/RepairCommand.class | Bin 0 -> 4538 bytes .../staff/teleport/BackCommand.class | Bin 0 -> 1857 bytes .../staff/teleport/TeleportCommand.class | Bin 0 -> 1930 bytes .../staff/teleport/TeleportallCommand.class | Bin 0 -> 1886 bytes .../staff/teleport/TeleporthereCommand.class | Bin 0 -> 1971 bytes .../teleport/TeleportpositionCommand.class | Bin 0 -> 2517 bytes .../arguments/staff/teleport/TopCommand.class | Bin 0 -> 1912 bytes .../staff/teleport/WarpCommand.class | Bin 0 -> 5937 bytes .../staff/teleport/WorldCommand.class | Bin 0 -> 2192 bytes .../network/vituz/data/ChallengeData.class | Bin 0 -> 6031 bytes .../network/vituz/data/CrateData.class | Bin 0 -> 5239 bytes .../network/vituz/data/PlayerData.class | Bin 0 -> 10056 bytes .../network/vituz/data/PunishData$1.class | Bin 0 -> 1034 bytes .../network/vituz/data/PunishData.class | Bin 0 -> 15400 bytes .../network/vituz/data/RankData.class | Bin 0 -> 11224 bytes .../vituz/events/PlayerMessageEvent.class | Bin 0 -> 4485 bytes .../vituz/events/RebootStartEvent.class | Bin 0 -> 890 bytes .../vituz/events/RebootStopEvent.class | Bin 0 -> 887 bytes .../vituz/listeners/CrateListener.class | Bin 0 -> 7622 bytes .../listeners/CustomMovementListener.class | Bin 0 -> 1291 bytes .../listeners/DataChallengeListener.class | Bin 0 -> 1622 bytes .../vituz/listeners/DataPlayerListener.class | Bin 0 -> 1604 bytes .../vituz/listeners/DataPunishListener.class | Bin 0 -> 8463 bytes .../vituz/listeners/DataRankListener.class | Bin 0 -> 12455 bytes .../vituz/listeners/EssentialsListener.class | Bin 0 -> 18646 bytes .../vituz/listeners/FreezeListener.class | Bin 0 -> 7871 bytes .../vituz/listeners/GlitchListener.class | Bin 0 -> 3835 bytes .../vituz/listeners/InventoryListener.class | Bin 0 -> 7721 bytes .../vituz/listeners/SecurityListener.class | Bin 0 -> 7670 bytes .../vituz/listeners/VituzMenuListener.class | Bin 0 -> 2238 bytes .../vituz/managers/AutoRestartManager.class | Bin 0 -> 2492 bytes .../vituz/managers/ChallengesManager.class | Bin 0 -> 7295 bytes .../vituz/managers/ChatControlManager.class | Bin 0 -> 6288 bytes .../vituz/managers/ColorsManager.class | Bin 0 -> 5220 bytes .../network/vituz/managers/CrateManager.class | Bin 0 -> 6760 bytes .../vituz/managers/DatabaseManager.class | Bin 0 -> 12663 bytes .../vituz/managers/EssentialsManager.class | Bin 0 -> 6699 bytes .../vituz/managers/FreezeManager.class | Bin 0 -> 2936 bytes .../network/vituz/managers/HorseManager.class | Bin 0 -> 3207 bytes .../vituz/managers/PrefixesManager.class | Bin 0 -> 8987 bytes .../network/vituz/managers/RankManager.class | Bin 0 -> 11134 bytes .../vituz/managers/ServerColorsManager.class | Bin 0 -> 6403 bytes .../vituz/managers/SettingsManager.class | Bin 0 -> 7866 bytes .../vituz/providers/LayoutProvider.class | Bin 0 -> 245 bytes ...metagProvider$DefaultNametagProvider.class | Bin 0 -> 927 bytes .../vituz/providers/NametagProvider.class | Bin 0 -> 1303 bytes .../vituz/providers/ScoreProvider.class | Bin 0 -> 212 bytes .../providers/nametags/NametagInfo.class | Bin 0 -> 1286 bytes .../providers/nametags/NametagUpdate.class | Bin 0 -> 972 bytes .../providers/nametags/VituzNametag.class | Bin 0 -> 7812 bytes .../packets/PlayerInfoPacketMod.class | Bin 0 -> 2175 bytes .../packets/ScoreboardTeamPacketMod.class | Bin 0 -> 2910 bytes .../scoreboard/ScoreboardConfiguration.class | Bin 0 -> 1139 bytes .../providers/scoreboard/TitleGetter.class | Bin 0 -> 792 bytes .../scoreboard/VituzScoreboard.class | Bin 0 -> 12084 bytes .../vituz/providers/tab/TabLayout.class | Bin 0 -> 7457 bytes .../vituz/providers/tab/TabUtils.class | Bin 0 -> 2090 bytes .../vituz/providers/tab/VituzTab.class | Bin 0 -> 11843 bytes .../providers/threads/NametagThread.class | Bin 0 -> 2202 bytes .../providers/threads/ScoreboardThread.class | Bin 0 -> 1948 bytes .../vituz/providers/threads/TabThread.class | Bin 0 -> 1452 bytes .../vituz/punishments/Punishment.class | Bin 0 -> 8239 bytes .../vituz/punishments/PunishmentQueue.class | Bin 0 -> 1795 bytes .../vituz/punishments/PunishmentType.class | Bin 0 -> 3009 bytes .../commands/AltViewCommand$1$1.class | Bin 0 -> 2238 bytes .../commands/AltViewCommand$1.class | Bin 0 -> 4625 bytes .../punishments/commands/AltViewCommand.class | Bin 0 -> 1933 bytes .../punishments/commands/BanCommand.class | Bin 0 -> 4180 bytes .../commands/BlacklistCommand.class | Bin 0 -> 3337 bytes .../punishments/commands/CheckCommand.class | Bin 0 -> 2038 bytes .../commands/ClearPunishmentsCommand.class | Bin 0 -> 2111 bytes .../punishments/commands/IPBanCommand.class | Bin 0 -> 3306 bytes .../punishments/commands/IPCommand.class | Bin 0 -> 2029 bytes .../punishments/commands/KickCommand.class | Bin 0 -> 2595 bytes .../punishments/commands/MuteCommand.class | Bin 0 -> 3943 bytes .../commands/RequestBanCommand.class | Bin 0 -> 2129 bytes .../punishments/commands/UnbanCommand.class | Bin 0 -> 3374 bytes .../commands/UnblacklistCommand.class | Bin 0 -> 3949 bytes .../punishments/commands/UnipbanCommand.class | Bin 0 -> 3832 bytes .../punishments/commands/UnmuteCommand.class | Bin 0 -> 3552 bytes .../punishments/redis/PunishPublisher.class | Bin 0 -> 1568 bytes .../redis/PunishSubscriber$1.class | Bin 0 -> 1146 bytes .../redis/PunishSubscriber$2$1.class | Bin 0 -> 2972 bytes .../redis/PunishSubscriber$2.class | Bin 0 -> 4514 bytes .../punishments/redis/PunishSubscriber.class | Bin 0 -> 2304 bytes .../secondlife/network/vituz/ranks/Rank.class | Bin 0 -> 3768 bytes .../network/vituz/ranks/RankData.class | Bin 0 -> 1966 bytes .../vituz/ranks/commands/GrantCommand.class | Bin 0 -> 7796 bytes .../vituz/ranks/commands/GrantsCommand.class | Bin 0 -> 2369 bytes .../vituz/ranks/commands/RankCommand$1.class | Bin 0 -> 1595 bytes .../vituz/ranks/commands/RankCommand.class | Bin 0 -> 12286 bytes .../profile/AddPermissionCommand.class | Bin 0 -> 3076 bytes .../profile/ListPermissionCommand.class | Bin 0 -> 3937 bytes .../profile/RemovePermissionCommand.class | Bin 0 -> 3108 bytes .../network/vituz/ranks/grant/Grant.class | Bin 0 -> 2749 bytes .../grant/procedure/GrantProcedure.class | Bin 0 -> 5076 bytes .../grant/procedure/GrantProcedureData.class | Bin 0 -> 1825 bytes .../grant/procedure/GrantProcedureStage.class | Bin 0 -> 1325 bytes .../grant/procedure/GrantRecipient.class | Bin 0 -> 548 bytes .../vituz/ranks/redis/RankPublisher.class | Bin 0 -> 1532 bytes .../vituz/ranks/redis/RankSubscriber$1.class | Bin 0 -> 10008 bytes .../vituz/ranks/redis/RankSubscriber.class | Bin 0 -> 2622 bytes .../ranks/redis/RankSubscriberAction.class | Bin 0 -> 1853 bytes .../network/vituz/status/Server.class | Bin 0 -> 1809 bytes .../network/vituz/status/ServerData.class | Bin 0 -> 4954 bytes .../handlers/DataSubscriptionHandler$1.class | Bin 0 -> 819 bytes .../handlers/DataSubscriptionHandler.class | Bin 0 -> 2722 bytes .../ServerSubscriptionHandler$1.class | Bin 0 -> 827 bytes .../handlers/ServerSubscriptionHandler.class | Bin 0 -> 2572 bytes .../vituz/status/jedis/JedisAction.class | Bin 0 -> 1113 bytes .../vituz/status/jedis/JedisPublisher.class | Bin 0 -> 2822 bytes .../vituz/status/jedis/JedisQueue.class | Bin 0 -> 3380 bytes .../vituz/status/jedis/JedisSettings.class | Bin 0 -> 1185 bytes .../status/jedis/JedisSubscriber$1.class | Bin 0 -> 1906 bytes .../vituz/status/jedis/JedisSubscriber.class | Bin 0 -> 3719 bytes .../jedis/JedisSubscriptionHandler.class | Bin 0 -> 225 bytes .../vituz/status/thread/UpdateThread.class | Bin 0 -> 1572 bytes .../network/vituz/tasks/ChallengeTask.class | Bin 0 -> 3241 bytes .../network/vituz/tasks/FreezeTask.class | Bin 0 -> 2524 bytes .../network/vituz/tasks/RebootTask$1.class | Bin 0 -> 861 bytes .../network/vituz/tasks/RebootTask.class | Bin 0 -> 3673 bytes .../vituz/utilties/ActionMessage$AMText.class | Bin 0 -> 4112 bytes .../ActionMessage$ClickableType.class | Bin 0 -> 1527 bytes .../vituz/utilties/ActionMessage.class | Bin 0 -> 2987 bytes .../network/vituz/utilties/BossBar.class | Bin 0 -> 5770 bytes .../vituz/utilties/ChallengeUtils.class | Bin 0 -> 2813 bytes .../network/vituz/utilties/Color.class | Bin 0 -> 1753 bytes .../network/vituz/utilties/ConfigFile.class | Bin 0 -> 3214 bytes .../network/vituz/utilties/DateUtil.class | Bin 0 -> 6799 bytes .../vituz/utilties/GsonFactory$1.class | Bin 0 -> 249 bytes .../GsonFactory$DateGsonAdapter.class | Bin 0 -> 2091 bytes .../utilties/GsonFactory$ExposeExlusion.class | Bin 0 -> 1706 bytes .../vituz/utilties/GsonFactory$Ignore.class | Bin 0 -> 506 bytes .../GsonFactory$ItemStackGsonAdapter$1.class | Bin 0 -> 715 bytes .../GsonFactory$ItemStackGsonAdapter.class | Bin 0 -> 6508 bytes .../GsonFactory$LocationGsonAdapter$1.class | Bin 0 -> 711 bytes .../GsonFactory$LocationGsonAdapter.class | Bin 0 -> 4458 bytes .../GsonFactory$NewItemStackAdapter.class | Bin 0 -> 4615 bytes ...sonFactory$PotionEffectGsonAdapter$1.class | Bin 0 -> 727 bytes .../GsonFactory$PotionEffectGsonAdapter.class | Bin 0 -> 3855 bytes .../network/vituz/utilties/GsonFactory.class | Bin 0 -> 7340 bytes .../network/vituz/utilties/Manager.class | Bin 0 -> 632 bytes .../network/vituz/utilties/Msg.class | Bin 0 -> 2750 bytes .../network/vituz/utilties/NmsUtils.class | Bin 0 -> 4325 bytes .../network/vituz/utilties/NumberUtils.class | Bin 0 -> 973 bytes .../vituz/utilties/PasteUtils$Expire.class | Bin 0 -> 1987 bytes .../vituz/utilties/PasteUtils$Language.class | Bin 0 -> 19330 bytes .../utilties/PasteUtils$PasteResult.class | Bin 0 -> 1203 bytes .../utilties/PasteUtils$Visibility.class | Bin 0 -> 1600 bytes .../network/vituz/utilties/PasteUtils.class | Bin 0 -> 7130 bytes .../network/vituz/utilties/Permission.class | Bin 0 -> 1373 bytes .../network/vituz/utilties/PlayerUtils.class | Bin 0 -> 2088 bytes .../network/vituz/utilties/ServerUtils.class | Bin 0 -> 6732 bytes .../vituz/utilties/StringUtils$1.class | Bin 0 -> 795 bytes .../vituz/utilties/StringUtils$2.class | Bin 0 -> 795 bytes .../network/vituz/utilties/StringUtils.class | Bin 0 -> 11965 bytes .../vituz/utilties/Tasks$Callable.class | Bin 0 -> 242 bytes .../network/vituz/utilties/Tasks.class | Bin 0 -> 2530 bytes .../network/vituz/utilties/WoolUtil.class | Bin 0 -> 1316 bytes .../vituz/utilties/command/Command.class | Bin 0 -> 565 bytes .../vituz/utilties/command/CommandData.class | Bin 0 -> 6235 bytes .../command/VituzCommandHandler$1.class | Bin 0 -> 1928 bytes .../command/VituzCommandHandler$2.class | Bin 0 -> 1212 bytes .../command/VituzCommandHandler.class | Bin 0 -> 11997 bytes .../utilties/command/VituzCommandMap$1.class | Bin 0 -> 1189 bytes .../utilties/command/VituzCommandMap.class | Bin 0 -> 5360 bytes .../utilties/command/param/Parameter.class | Bin 0 -> 617 bytes .../command/param/ParameterData.class | Bin 0 -> 1619 bytes .../command/param/ParameterType.class | Bin 0 -> 611 bytes .../param/defaults/BooleanParameterType.class | Bin 0 -> 3785 bytes .../param/defaults/DoubleParameterType.class | Bin 0 -> 2478 bytes .../param/defaults/FloatParameterType.class | Bin 0 -> 2470 bytes .../param/defaults/IntegerParameterType.class | Bin 0 -> 2149 bytes .../defaults/OfflinePlayerParameterType.class | Bin 0 -> 2627 bytes .../param/defaults/PlayerParameterType.class | Bin 0 -> 3118 bytes .../param/defaults/WorldParameterType.class | Bin 0 -> 2848 bytes .../utilties/cuboid/CoordinatePair.class | Bin 0 -> 1398 bytes .../vituz/utilties/cuboid/Cuboid$1.class | Bin 0 -> 1170 bytes .../vituz/utilties/cuboid/Cuboid.class | Bin 0 -> 16605 bytes .../utilties/cuboid/CuboidBlockIterator.class | Bin 0 -> 2703 bytes .../utilties/cuboid/CuboidDirection$1.class | Bin 0 -> 1135 bytes .../utilties/cuboid/CuboidDirection.class | Bin 0 -> 2418 bytes .../cuboid/CuboidLocationIterator.class | Bin 0 -> 2690 bytes .../vituz/utilties/cuboid/NamedCuboid.class | Bin 0 -> 3135 bytes .../inventory/InventorySerialisation$1.class | Bin 0 -> 710 bytes .../inventory/InventorySerialisation.class | Bin 0 -> 1286 bytes .../utilties/inventory/InventoryUtils.class | Bin 0 -> 3923 bytes .../vituz/utilties/inventory/VituzMenu.class | Bin 0 -> 3074 bytes .../vituz/utilties/item/ItemBuilder.class | Bin 0 -> 5206 bytes .../network/vituz/utilties/item/ItemDB.class | Bin 0 -> 657 bytes .../vituz/utilties/item/ItemData.class | Bin 0 -> 4002 bytes .../vituz/utilties/item/ItemNames.class | Bin 0 -> 27066 bytes .../vituz/utilties/item/ManagedFile.class | Bin 0 -> 5570 bytes .../vituz/utilties/item/SimpleItemDB$1.class | Bin 0 -> 907 bytes .../vituz/utilties/item/SimpleItemDB.class | Bin 0 -> 12512 bytes .../utilties/update/MovementUpdate.class | Bin 0 -> 1601 bytes .../utilties/update/PositionUpdate.class | Bin 0 -> 689 bytes .../utilties/update/RotationUpdate.class | Bin 0 -> 689 bytes .../network/vituz/visualise/BlockFiller.class | Bin 0 -> 1911 bytes .../visualise/CustomPacketHandler$1.class | Bin 0 -> 1646 bytes .../visualise/CustomPacketHandler$2.class | Bin 0 -> 1384 bytes .../vituz/visualise/CustomPacketHandler.class | Bin 0 -> 4889 bytes .../network/vituz/visualise/VisualBlock.class | Bin 0 -> 1180 bytes .../vituz/visualise/VisualBlockData.class | Bin 0 -> 1106 bytes .../vituz/visualise/VisualType$1$1.class | Bin 0 -> 1173 bytes .../vituz/visualise/VisualType$1.class | Bin 0 -> 854 bytes .../vituz/visualise/VisualType$2$1.class | Bin 0 -> 1175 bytes .../vituz/visualise/VisualType$2.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$3$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$3.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$4$1.class | Bin 0 -> 1174 bytes .../vituz/visualise/VisualType$4.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$5$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$5.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$6$1.class | Bin 0 -> 1176 bytes .../vituz/visualise/VisualType$6.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$7$1.class | Bin 0 -> 1174 bytes .../vituz/visualise/VisualType$7.class | Bin 0 -> 915 bytes .../vituz/visualise/VisualType$8$1.class | Bin 0 -> 1180 bytes .../vituz/visualise/VisualType$8.class | Bin 0 -> 915 bytes .../network/vituz/visualise/VisualType.class | Bin 0 -> 2273 bytes .../vituz/visualise/VisualiseHandler.class | Bin 0 -> 11028 bytes Vituz/out/production/Vituz/utilities.yml | 1 + Vituz/src/META-INF/MANIFEST.MF | 3 + Vituz/src/config.yml | 8 + Vituz/src/crates.yml | 0 Vituz/src/items.csv | 7449 +++++++++++++++++ Vituz/src/plugin.yml | 253 + Vituz/src/ranks.yml | 132 + Vituz/src/secondlife/network/vituz/Vituz.java | 140 + .../secondlife/network/vituz/VituzAPI.java | 223 + .../network/vituz/commands/BaseCommand.java | 26 + .../vituz/commands/CommandHandler.java | 170 + .../commands/arguments/ChallengeCommand.java | 157 + .../commands/arguments/ColorCommand.java | 27 + .../commands/arguments/DiscordCommand.java | 22 + .../commands/arguments/DonateCommand.java | 23 + .../commands/arguments/FacebookCommand.java | 22 + .../commands/arguments/ForumCommand.java | 22 + .../vituz/commands/arguments/ListCommand.java | 86 + .../vituz/commands/arguments/PingCommand.java | 39 + .../commands/arguments/PlaytimeCommand.java | 41 + .../commands/arguments/PrefixCommand.java | 28 + .../commands/arguments/RulesCommand.java | 22 + .../commands/arguments/SettingsCommand.java | 27 + .../commands/arguments/TeamSpeakCommand.java | 23 + .../arguments/console/BungeeCommand.java | 39 + .../arguments/message/BroadcastCommand.java | 33 + .../arguments/message/IgnoreCommand.java | 80 + .../arguments/message/MessageCommand.java | 60 + .../arguments/message/ReplyCommand.java | 76 + .../arguments/message/SocialspyCommand.java | 32 + .../arguments/message/SoundsCommand.java | 30 + .../arguments/message/ToggleChatCommand.java | 30 + .../arguments/message/TogglePMCommand.java | 30 + .../arguments/staff/ChatControlCommand.java | 77 + .../arguments/staff/CrateCommand.java | 177 + .../commands/arguments/staff/DayCommand.java | 33 + .../commands/arguments/staff/ExpCommand.java | 88 + .../commands/arguments/staff/FeedCommand.java | 91 + .../commands/arguments/staff/FlyCommand.java | 100 + .../arguments/staff/FreezeCommand.java | 53 + .../commands/arguments/staff/GodCommand.java | 107 + .../commands/arguments/staff/HealCommand.java | 100 + .../arguments/staff/KickallCommand.java | 65 + .../commands/arguments/staff/KillCommand.java | 64 + .../arguments/staff/KillallCommand.java | 89 + .../commands/arguments/staff/LagCommand.java | 49 + .../commands/arguments/staff/LoreCommand.java | 55 + .../arguments/staff/NightCommand.java | 32 + .../arguments/staff/NotesCommand.java | 132 + .../staff/PlayerdistanceCommand.java | 60 + .../arguments/staff/ProtocolCommand.java | 59 + .../arguments/staff/RebootCommand.java | 58 + .../commands/arguments/staff/SeenCommand.java | 73 + .../arguments/staff/SpawnerCommand.java | 65 + .../arguments/staff/SpeedCommand.java | 68 + .../arguments/staff/StaffJoinCommand.java | 32 + .../arguments/staff/StatusCommand.java | 53 + .../commands/arguments/staff/SunCommand.java | 34 + .../arguments/staff/TasksCommand.java | 80 + .../arguments/staff/ViewdistanceCommand.java | 61 + .../staff/gamemode/AdventureCommand.java | 69 + .../staff/gamemode/CreativeCommand.java | 69 + .../staff/gamemode/GamemodeCommand.java | 135 + .../staff/gamemode/SurvivalCommand.java | 69 + .../staff/inventory/ClearCommand.java | 71 + .../staff/inventory/CraftCommand.java | 46 + .../staff/inventory/EnchantCommand.java | 75 + .../staff/inventory/EnderchestCommand.java | 53 + .../staff/inventory/GiveCommand.java | 150 + .../staff/inventory/GiveYourSelfCommand.java | 61 + .../staff/inventory/InvseeCommand.java | 39 + .../staff/inventory/MoreCommand.java | 45 + .../staff/inventory/RenameCommand.java | 52 + .../staff/inventory/RepairCommand.java | 149 + .../arguments/staff/teleport/BackCommand.java | 36 + .../staff/teleport/TeleportCommand.java | 39 + .../staff/teleport/TeleportallCommand.java | 34 + .../staff/teleport/TeleporthereCommand.java | 39 + .../teleport/TeleportpositionCommand.java | 61 + .../arguments/staff/teleport/TopCommand.java | 36 + .../arguments/staff/teleport/WarpCommand.java | 127 + .../staff/teleport/WorldCommand.java | 44 + .../network/vituz/data/ChallengeData.java | 114 + .../network/vituz/data/CrateData.java | 80 + .../network/vituz/data/PlayerData.java | 195 + .../network/vituz/data/PunishData.java | 327 + .../network/vituz/data/RankData.java | 230 + .../vituz/events/PlayerMessageEvent.java | 58 + .../vituz/events/RebootStartEvent.java | 22 + .../network/vituz/events/RebootStopEvent.java | 22 + .../vituz/listeners/CrateListener.java | 152 + .../listeners/CustomMovementListener.java | 18 + .../listeners/DataChallengeListener.java | 31 + .../vituz/listeners/DataPlayerListener.java | 31 + .../vituz/listeners/DataPunishListener.java | 185 + .../vituz/listeners/DataRankListener.java | 235 + .../vituz/listeners/EssentialsListener.java | 312 + .../vituz/listeners/FreezeListener.java | 146 + .../vituz/listeners/GlitchListener.java | 147 + .../vituz/listeners/InventoryListener.java | 255 + .../vituz/listeners/SecurityListener.java | 156 + .../vituz/listeners/VituzMenuListener.java | 43 + .../vituz/managers/AutoRestartManager.java | 51 + .../vituz/managers/ChallengesManager.java | 147 + .../vituz/managers/ChatControlManager.java | 140 + .../network/vituz/managers/ColorsManager.java | 117 + .../network/vituz/managers/CrateManager.java | 104 + .../vituz/managers/DatabaseManager.java | 230 + .../vituz/managers/EssentialsManager.java | 115 + .../network/vituz/managers/FreezeManager.java | 54 + .../network/vituz/managers/HorseManager.java | 49 + .../vituz/managers/PrefixesManager.java | 298 + .../network/vituz/managers/RankManager.java | 156 + .../vituz/managers/ServerColorsManager.java | 166 + .../vituz/managers/SettingsManager.java | 167 + .../vituz/providers/LayoutProvider.java | 9 + .../vituz/providers/NametagProvider.java | 33 + .../vituz/providers/ScoreProvider.java | 8 + .../vituz/providers/nametags/NametagInfo.java | 23 + .../providers/nametags/NametagUpdate.java | 22 + .../providers/nametags/VituzNametag.java | 122 + .../packets/PlayerInfoPacketMod.java | 19 + .../packets/ScoreboardTeamPacketMod.java | 70 + .../scoreboard/ScoreboardConfiguration.java | 15 + .../providers/scoreboard/TitleGetter.java | 15 + .../providers/scoreboard/VituzScoreboard.java | 271 + .../vituz/providers/tab/TabLayout.java | 198 + .../network/vituz/providers/tab/TabUtils.java | 37 + .../network/vituz/providers/tab/VituzTab.java | 274 + .../providers/threads/NametagThread.java | 44 + .../providers/threads/ScoreboardThread.java | 35 + .../vituz/providers/threads/TabThread.java | 34 + .../network/vituz/punishments/Punishment.java | 114 + .../vituz/punishments/PunishmentQueue.java | 33 + .../vituz/punishments/PunishmentType.java | 25 + .../punishments/commands/AltViewCommand.java | 82 + .../punishments/commands/BanCommand.java | 108 + .../commands/BlacklistCommand.java | 82 + .../punishments/commands/CheckCommand.java | 48 + .../commands/ClearPunishmentsCommand.java | 47 + .../punishments/commands/IPBanCommand.java | 82 + .../vituz/punishments/commands/IPCommand.java | 48 + .../punishments/commands/KickCommand.java | 63 + .../punishments/commands/MuteCommand.java | 98 + .../commands/RequestBanCommand.java | 44 + .../punishments/commands/UnbanCommand.java | 83 + .../commands/UnblacklistCommand.java | 92 + .../punishments/commands/UnipbanCommand.java | 89 + .../punishments/commands/UnmuteCommand.java | 84 + .../punishments/redis/PunishPublisher.java | 26 + .../punishments/redis/PunishSubscriber.java | 158 + .../secondlife/network/vituz/ranks/Rank.java | 58 + .../network/vituz/ranks/RankData.java | 41 + .../vituz/ranks/commands/GrantCommand.java | 215 + .../vituz/ranks/commands/GrantsCommand.java | 49 + .../vituz/ranks/commands/RankCommand.java | 387 + .../profile/AddPermissionCommand.java | 75 + .../profile/ListPermissionCommand.java | 92 + .../profile/RemovePermissionCommand.java | 76 + .../network/vituz/ranks/grant/Grant.java | 50 + .../ranks/grant/procedure/GrantProcedure.java | 75 + .../grant/procedure/GrantProcedureData.java | 20 + .../grant/procedure/GrantProcedureStage.java | 6 + .../ranks/grant/procedure/GrantRecipient.java | 15 + .../vituz/ranks/redis/RankPublisher.java | 24 + .../vituz/ranks/redis/RankSubscriber.java | 364 + .../ranks/redis/RankSubscriberAction.java | 10 + .../network/vituz/status/Server.java | 26 + .../network/vituz/status/ServerData.java | 57 + .../handlers/DataSubscriptionHandler.java | 39 + .../handlers/ServerSubscriptionHandler.java | 38 + .../vituz/status/jedis/JedisAction.java | 8 + .../vituz/status/jedis/JedisPublisher.java | 60 + .../vituz/status/jedis/JedisQueue.java | 16 + .../vituz/status/jedis/JedisSettings.java | 26 + .../vituz/status/jedis/JedisSubscriber.java | 60 + .../jedis/JedisSubscriptionHandler.java | 9 + .../vituz/status/thread/UpdateThread.java | 25 + .../network/vituz/tasks/ChallengeTask.java | 71 + .../network/vituz/tasks/FreezeTask.java | 36 + .../network/vituz/tasks/RebootTask.java | 78 + .../network/vituz/utilties/ActionMessage.java | 127 + .../network/vituz/utilties/BossBar.java | 101 + .../vituz/utilties/ChallengeUtils.java | 63 + .../network/vituz/utilties/Color.java | 17 + .../network/vituz/utilties/ConfigFile.java | 63 + .../network/vituz/utilties/DateUtil.java | 209 + .../network/vituz/utilties/GsonFactory.java | 474 ++ .../network/vituz/utilties/Manager.java | 16 + .../network/vituz/utilties/Msg.java | 59 + .../network/vituz/utilties/NmsUtils.java | 73 + .../network/vituz/utilties/NumberUtils.java | 21 + .../network/vituz/utilties/PasteUtils.java | 615 ++ .../network/vituz/utilties/Permission.java | 22 + .../network/vituz/utilties/PlayerUtils.java | 45 + .../network/vituz/utilties/ServerUtils.java | 169 + .../network/vituz/utilties/StringUtils.java | 345 + .../network/vituz/utilties/Tasks.java | 35 + .../network/vituz/utilties/WoolUtil.java | 20 + .../vituz/utilties/command/Command.java | 18 + .../vituz/utilties/command/CommandData.java | 140 + .../utilties/command/VituzCommandHandler.java | 310 + .../utilties/command/VituzCommandMap.java | 126 + .../utilties/command/param/Parameter.java | 20 + .../utilties/command/param/ParameterData.java | 21 + .../utilties/command/param/ParameterType.java | 15 + .../param/defaults/BooleanParameterType.java | 42 + .../param/defaults/DoubleParameterType.java | 39 + .../param/defaults/FloatParameterType.java | 39 + .../param/defaults/IntegerParameterType.java | 27 + .../defaults/OfflinePlayerParameterType.java | 36 + .../param/defaults/PlayerParameterType.java | 43 + .../param/defaults/WorldParameterType.java | 40 + .../vituz/utilties/cuboid/CoordinatePair.java | 35 + .../network/vituz/utilties/cuboid/Cuboid.java | 504 ++ .../utilties/cuboid/CuboidBlockIterator.java | 62 + .../utilties/cuboid/CuboidDirection.java | 69 + .../cuboid/CuboidLocationIterator.java | 64 + .../vituz/utilties/cuboid/NamedCuboid.java | 60 + .../inventory/InventorySerialisation.java | 18 + .../utilties/inventory/InventoryUtils.java | 154 + .../vituz/utilties/inventory/VituzMenu.java | 68 + .../vituz/utilties/item/ItemBuilder.java | 123 + .../network/vituz/utilties/item/ItemDB.java | 27 + .../network/vituz/utilties/item/ItemData.java | 94 + .../vituz/utilties/item/ItemNames.java | 638 ++ .../vituz/utilties/item/ManagedFile.java | 91 + .../vituz/utilties/item/SimpleItemDB.java | 368 + .../vituz/utilties/update/MovementUpdate.java | 24 + .../vituz/utilties/update/PositionUpdate.java | 12 + .../vituz/utilties/update/RotationUpdate.java | 12 + .../network/vituz/visualise/BlockFiller.java | 27 + .../vituz/visualise/CustomPacketHandler.java | 116 + .../network/vituz/visualise/VisualBlock.java | 14 + .../vituz/visualise/VisualBlockData.java | 35 + .../network/vituz/visualise/VisualType.java | 115 + .../vituz/visualise/VisualiseHandler.java | 138 + Vituz/src/utilities.yml | 1 + 3374 files changed, 143925 insertions(+) create mode 100644 (OLD) Paik/.classpath create mode 100644 (OLD) Paik/.project create mode 100644 (OLD) Paik/.settings/org.eclipse.jdt.core.prefs create mode 100644 (OLD) Paik/META-INF/MANIFEST.MF create mode 100644 (OLD) Paik/bin/META-INF/MANIFEST.MF create mode 100644 (OLD) Paik/bin/config.yml create mode 100644 (OLD) Paik/bin/plugin.yml create mode 100644 (OLD) Paik/src/META-INF/MANIFEST.MF create mode 100644 (OLD) Paik/src/config.yml create mode 100644 (OLD) Paik/src/plugin.yml create mode 100644 (OLD) Paik/src/secondlife/network/paik/Paik.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/AutoBlock.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/AutoClicker.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/FastBow.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/FastEat.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/Killaura.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/Reach.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/combat/Regen.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/GroundSpoof.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/Inventory.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/NoSlowdown.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/Sneak.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/Speed.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/Timer.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyA.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyB.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/Crash.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/CustomPayload.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/ImpossiblePitch.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/InvalidInteract.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/Nametags.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/PingSpoof.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/checks/other/Refill.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/KillauraCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/LogsCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/OCMCCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/PaikBanCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/PaikCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/PingCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/commands/zBaseCommand.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/AlertsHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/CheatHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/CommandHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/PacketHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/PlayerHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStats.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStatsHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/events/PlayerMoveByBlockEvent.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/fixes/BookExploitHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/handlers/fixes/FenceGlitchHandler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/CheatUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/Color.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/DirectoryUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/Handler.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/LocationUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/Message.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/PasteUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/PlayerUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/ServerUtils.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/file/ConfigFile.java create mode 100644 (OLD) Paik/src/secondlife/network/paik/utils/file/LogFile.java create mode 100644 Bungee/.classpath create mode 100644 Bungee/.project create mode 100644 Bungee/.settings/org.eclipse.jdt.core.prefs create mode 100644 Bungee/bin/META-INF/MANIFEST.MF create mode 100644 Bungee/bin/config.yml create mode 100644 Bungee/bin/plugin.yml create mode 100644 Bungee/bin/secondlife/network/bungee/Bungee$1.class create mode 100644 Bungee/bin/secondlife/network/bungee/Bungee$2.class create mode 100644 Bungee/bin/secondlife/network/bungee/Bungee$3.class create mode 100644 Bungee/bin/secondlife/network/bungee/Bungee.class create mode 100644 Bungee/bin/secondlife/network/bungee/antibot/AntiBotUtils.class create mode 100644 Bungee/bin/secondlife/network/bungee/antibot/BotAttack$1.class create mode 100644 Bungee/bin/secondlife/network/bungee/antibot/BotAttack.class create mode 100644 Bungee/bin/secondlife/network/bungee/antibot/BotBoth.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/ABNatureCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/ABVisualCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/GListCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/HubCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/JoinCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/MaintenanceCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/MotdCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/ReloadCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/ReportCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/RequestCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/SilentCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/StaffChatCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/commands/StaffListCommand.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AnnounceHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler$1.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler$2.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AutoMessageHandler$1.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/AutoMessageHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/MaintenanceHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/MotdHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$1.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$2.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/PluginMessageHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/ReportHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/RequestHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/SilentHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/handlers/StaffChatHandler.class create mode 100644 Bungee/bin/secondlife/network/bungee/utils/Color.class create mode 100644 Bungee/bin/secondlife/network/bungee/utils/Handler.class create mode 100644 Bungee/bin/secondlife/network/bungee/utils/Message.class create mode 100644 Bungee/bin/secondlife/network/bungee/utils/NumberUtils.class create mode 100644 Bungee/bin/secondlife/network/bungee/utils/StringUtils.class create mode 100644 Bungee/out/production/Bungee/config.yml create mode 100644 Bungee/out/production/Bungee/plugin.yml create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$1.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$2.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$3.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/Bungee.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/antibot/AntiBotUtils.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack$1.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotBoth.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/ABNatureCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/ABVisualCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/GListCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/HubCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/JoinCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/MaintenanceCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/MotdCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReloadCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReportCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/RequestCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/SilentCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/StaffChatCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/commands/StaffListCommand.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AnnounceHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler$1.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler$2.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AutoMessageHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/MaintenanceHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/MotdHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler$1.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler$2.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PluginMessageHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/ReportHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/RequestHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/SilentHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/handlers/StaffChatHandler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/utils/Color.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/utils/Handler.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/utils/Message.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/utils/NumberUtils.class create mode 100644 Bungee/out/production/Bungee/secondlife/network/bungee/utils/StringUtils.class create mode 100644 Bungee/out/production/BungeeCore/META-INF/MANIFEST.MF create mode 100644 Bungee/out/production/BungeeCore/config.yml create mode 100644 Bungee/out/production/BungeeCore/plugin.yml create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$1.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$2.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$3.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/AntiBotUtils.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack$1.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotBoth.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ABNatureCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ABVisualCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/GListCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/HubCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/JoinCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MaintenanceCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MotdCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReloadCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReportCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/RequestCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/SilentCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/StaffChatCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/StaffListCommand.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AnnounceHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler$1.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler$2.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AutoMessageHandler$1.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AutoMessageHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/MaintenanceHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/MotdHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler$1.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler$2.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PluginMessageHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/ReportHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/RequestHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/SilentHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/StaffChatHandler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Color.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Handler.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Message.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/NumberUtils.class create mode 100644 Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/StringUtils.class create mode 100644 Bungee/src/META-INF/MANIFEST.MF create mode 100644 Bungee/src/config.yml create mode 100644 Bungee/src/plugin.yml create mode 100644 Bungee/src/secondlife/network/bungee/Bungee.java create mode 100644 Bungee/src/secondlife/network/bungee/antibot/AntiBotUtils.java create mode 100644 Bungee/src/secondlife/network/bungee/antibot/BotAttack.java create mode 100644 Bungee/src/secondlife/network/bungee/antibot/BotBoth.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/ABNatureCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/ABVisualCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/GListCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/HubCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/JoinCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/MaintenanceCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/MotdCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/ReloadCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/ReportCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/RequestCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/SilentCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/StaffChatCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/commands/StaffListCommand.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/AnnounceHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/AntiBotHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/AutoMessageHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/MaintenanceHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/MotdHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/PlayerHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/PluginMessageHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/ReportHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/RequestHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/SilentHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/handlers/StaffChatHandler.java create mode 100644 Bungee/src/secondlife/network/bungee/utils/Color.java create mode 100644 Bungee/src/secondlife/network/bungee/utils/Handler.java create mode 100644 Bungee/src/secondlife/network/bungee/utils/Message.java create mode 100644 Bungee/src/secondlife/network/bungee/utils/NumberUtils.java create mode 100644 Bungee/src/secondlife/network/bungee/utils/StringUtils.java create mode 100644 Factions/out/production/Factions/META-INF/MANIFEST.MF create mode 100644 Factions/out/production/Factions/config.yml create mode 100644 Factions/out/production/Factions/plugin.yml create mode 100644 Factions/out/production/Factions/secondlife/network/victions/Victions.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/VictionsAPI.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/VictionsConfig.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/BalanceCommand.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/DonatorCommands.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/HomeCommand.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/KitCommand.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/LogoutCommand.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/commands/TeleportCommands.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/handler/CustomMovemomentHandler.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/kit/Kit.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/kit/PlayerKit.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/ChatListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/ChunkBusterListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/EntityLimiterListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/FactionsListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/MobStackListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener$1.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/PotionLimitListener$1.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/PotionLimitListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/SellWandListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/listeners/SpawnTagListener.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/EntityLimiterManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/FactionsManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/GlassManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/KitManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/MobStackManager$1.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/MobStackManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/PlayerManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager$PotionLimit.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/SellWandManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/managers/TeleportManager.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/player/FactionsData.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/providers/ScoreboardProvider.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/tasks/FactionsTask.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/utilities/CustomLocation.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/utilities/FactionsUtils.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/utilities/GlowEnchantment.class create mode 100644 Factions/out/production/Factions/secondlife/network/victions/utilities/Manager.class create mode 100644 Factions/src/META-INF/MANIFEST.MF create mode 100644 Factions/src/config.yml create mode 100644 Factions/src/plugin.yml create mode 100644 Factions/src/secondlife/network/victions/Victions.java create mode 100644 Factions/src/secondlife/network/victions/VictionsAPI.java create mode 100644 Factions/src/secondlife/network/victions/VictionsConfig.java create mode 100644 Factions/src/secondlife/network/victions/commands/BalanceCommand.java create mode 100644 Factions/src/secondlife/network/victions/commands/DonatorCommands.java create mode 100644 Factions/src/secondlife/network/victions/commands/HomeCommand.java create mode 100644 Factions/src/secondlife/network/victions/commands/KitCommand.java create mode 100644 Factions/src/secondlife/network/victions/commands/LogoutCommand.java create mode 100644 Factions/src/secondlife/network/victions/commands/TeleportCommands.java create mode 100644 Factions/src/secondlife/network/victions/handler/CustomMovemomentHandler.java create mode 100644 Factions/src/secondlife/network/victions/kit/Kit.java create mode 100644 Factions/src/secondlife/network/victions/kit/PlayerKit.java create mode 100644 Factions/src/secondlife/network/victions/listeners/ChatListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/ChunkBusterListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/EntityLimiterListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/FactionsListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/MobStackListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/PlayerListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/PotionLimitListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/SellWandListener.java create mode 100644 Factions/src/secondlife/network/victions/listeners/SpawnTagListener.java create mode 100644 Factions/src/secondlife/network/victions/managers/EntityLimiterManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/FactionsManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/GlassManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/KitManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/MobStackManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/PlayerManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/PotionLimitManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/SellWandManager.java create mode 100644 Factions/src/secondlife/network/victions/managers/TeleportManager.java create mode 100644 Factions/src/secondlife/network/victions/player/FactionsData.java create mode 100644 Factions/src/secondlife/network/victions/providers/ScoreboardProvider.java create mode 100644 Factions/src/secondlife/network/victions/tasks/FactionsTask.java create mode 100644 Factions/src/secondlife/network/victions/utilities/CustomLocation.java create mode 100644 Factions/src/secondlife/network/victions/utilities/FactionsUtils.java create mode 100644 Factions/src/secondlife/network/victions/utilities/GlowEnchantment.java create mode 100644 Factions/src/secondlife/network/victions/utilities/Manager.java create mode 100644 HCF/out/production/HCF/META-INF/MANIFEST.MF create mode 100644 HCF/out/production/HCF/config.yml create mode 100644 HCF/out/production/HCF/factions.yml create mode 100644 HCF/out/production/HCF/limiters.yml create mode 100644 HCF/out/production/HCF/plugin.yml create mode 100644 HCF/out/production/HCF/schedules.yml create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/HCF$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/HCF.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/HCFConfiguration.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/Archer.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/Miner.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/Rogue.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClass.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/BardData.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectData.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/BaseCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/CommandHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/BalanceCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/ChestCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/CoordsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EOTWCommand$EotwPrompt.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EOTWCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EventCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/FocusCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/HelpCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/MapKitCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/PayCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/ReclaimCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SaveDataCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SetCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SpawnCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/StatsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/TellCoordsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/ToggleLightningCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/EventManagerCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/HostCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/JoinEventCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/LeaveEventCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/SpawnsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/zSecondLifeCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/data/HCFData.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySign.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/elevators/SignElevatorHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/EventCountdownTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/EventManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/EventPlayer.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/EventState.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/KitMapEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/SpawnManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoCountdownTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$SumoFightTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$WaterCheckTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoPlayer$SumoState.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoPlayer.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/AbstractFactionManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/Faction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/FactionManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/FactionMember.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/FlatFileFactionManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/MongoFactionManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimSelection.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimZone.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionAnnouncementCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionClaimCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionInviteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionInvitesCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionSetHomeCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUnallyCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionWithdrawCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionCoLeaderCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionAcceptCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionChatCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionCreateCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionDepositCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionLeaveCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionListCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionPointsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionShowCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceKickCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionTpHereCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/FactionHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/ProtectionHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/SignSubclaimHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/ClaimableFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/games/CapturableFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/games/EventFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/EndPortalFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/RoadFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/SpawnFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/WarzoneFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/WildernessFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/CaptureZone.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/LandMap.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionChatEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangeEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangedEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent$EnterCause.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinedEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeaveEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRelationRemoveEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRemoveEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneLeaveEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Raidable.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Relation.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Role.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/GameType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/events/GameManager.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/events/eotw/EOTWHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/events/eotw/EOTWRunnable.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/events/faction/KothFaction.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/game/type/KothType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/BorderHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ChatHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$4.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$5.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CustomMovementHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DeathMessagesHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/EventSignHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/GlassHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/GlassHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/HCFDataHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KillStreakHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitMapHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitMapHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitMapHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler$3.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler$4.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler$5.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/MapKitHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/NametagsHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/PearlFixHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/RegisterHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ScoreboardLayoutHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ShopHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/TabLayoutHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/OptionType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/StaffPlayerData.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/commands/StaffModeCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/commands/VanishCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/StaffModeHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/StaffModeHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/VanishHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/VanishHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/stattrack/StatTracker.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/stattrack/StatTrackerHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/stattrack/StatTrackerType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/AppleHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler$TaggedTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler$2.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/EnderpearlHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/GameHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/GameHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/GappleHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/HomeHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/HomeHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler$LogoutTask.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/SpawnTagHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/CacheCleanerThread.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ChunkPosition.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/CustomLocation.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/GenericUtils.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/HCFUtils$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/HCFUtils.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/Handler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/JavaUtils.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/MapSorting$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/MapSorting.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PacketUtils.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PersistableLocation.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/TimeUtil.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/events/BaseEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/events/EventStartEvent.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/ConfigFile.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/LimitersFile.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/SchedulesFile.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/UUIDHandler.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/UUIDUtils$1.class create mode 100644 HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class create mode 100644 HCF/out/production/HCF/utilities.yml create mode 100644 HCF/out/production/HCFCore/META-INF/MANIFEST.MF create mode 100644 HCF/out/production/HCFCore/config.yml create mode 100644 HCF/out/production/HCFCore/limiters.yml create mode 100644 HCF/out/production/HCFCore/plugin.yml create mode 100644 HCF/out/production/HCFCore/schedules.yml create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/Configuration.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/HCF$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/HCF.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Archer.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Bard$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Bard.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Miner.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Rogue.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/ArmorClass.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/BardData.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectData.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/BaseCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/CommandHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/BalanceCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/ChestCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/CoordsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EOTWCommand$EotwPrompt.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EOTWCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EventCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/FocusCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/HelpCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/LogoutCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/MapKitCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/PayCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/ReclaimCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SaveDataCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SetCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SpawnCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/StatsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/TellCoordsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/ToggleLightningCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/zSecondLifeCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/AbstractFactionManager.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/Faction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/FactionManager.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/MongoFactionHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/MongoFactionHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/MongoFactionHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimSelection.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimZone.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionAnnouncementCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionInviteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionInvitesCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionSetHomeCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionUnallyCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionWithdrawCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionCoLeaderCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionAcceptCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionChatCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionCreateCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionDepositCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionLeaveCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionListCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionPointsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionShowCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceKickCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionTpHereCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/FactionHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/ProtectionHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/SignSubclaimHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/ClaimableFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/PlayerFaction$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/PlayerFaction$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/PlayerFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/CapturableFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/EventFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/EndPortalFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/RoadFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/SpawnFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/WarzoneFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/WildernessFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/CaptureZone.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/FactionMember.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/LandMap.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionChatEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangeEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangedEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent$EnterCause.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinedEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeaveEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRelationRemoveEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRemoveEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneLeaveEvent.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Raidable.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Relation.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Role.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/GameType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/GameManager.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/eotw/EOTWHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/eotw/EOTWRunnable.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/faction/KothFaction.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/game/type/KothType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/BorderHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ChatControlHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ChatHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$4.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$5.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DeathMessagesHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/EventSignHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/GlassHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/GlassHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/MapKitHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/NametagsHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ScoreboardLayoutHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/TabLayoutHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFData.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFDataHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySign.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/elevators/SignElevatorHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KillStreakHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$3.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$4.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$5.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/ShopHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTracker.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/AppleHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler$TaggedTask.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ClassWarmupHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ClassWarmupHandler$2.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ClassWarmupHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/EnderpearlHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/GameHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/GameHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/GappleHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/HomeHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/HomeHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler$LogoutTask.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/SpawnTagHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/StuckHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/StuckHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/OptionType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/StaffPlayerData.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/commands/StaffModeCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/commands/VanishCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/StaffModeHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/StaffModeHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/VanishHandler$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/VanishHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/CacheCleanerThread.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ChunkPosition.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/HCFUtils$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/HCFUtils.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/Handler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/JavaUtils.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/MapSorting$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/MapSorting.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/PacketUtils.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/ConfigFile.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/LimitersFile.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/SchedulesFile.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/UUIDHandler.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/UUIDUtils$1.class create mode 100644 HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class create mode 100644 HCF/out/production/HCFCore/utilities.yml create mode 100644 HCF/src/META-INF/MANIFEST.MF create mode 100644 HCF/src/config.yml create mode 100644 HCF/src/factions.yml create mode 100644 HCF/src/limiters.yml create mode 100644 HCF/src/plugin.yml create mode 100644 HCF/src/schedules.yml create mode 100644 HCF/src/secondlife/network/hcfactions/HCF.java create mode 100644 HCF/src/secondlife/network/hcfactions/HCFConfiguration.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/Archer.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/Bard.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/Miner.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/Rogue.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClass.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/bard/BardData.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectData.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/BaseCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/CommandHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/BalanceCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/ChestCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/CoordsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/EOTWCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/EventCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/FocusCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/HelpCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/LogoutCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/MapKitCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/PayCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/ReclaimCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/RegenCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/SaveDataCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/SetCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/SpawnCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/StatsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/TellCoordsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/ToggleLightningCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/event/EventManagerCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/event/HostCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/event/JoinEventCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/event/LeaveEventCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/event/SpawnsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/commands/arguments/zSecondLifeCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/data/HCFData.java create mode 100644 HCF/src/secondlife/network/hcfactions/economy/EconomySign.java create mode 100644 HCF/src/secondlife/network/hcfactions/economy/EconomySignHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/economy/EconomySignType.java create mode 100644 HCF/src/secondlife/network/hcfactions/elevators/SignElevatorHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/EventCountdownTask.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/EventManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/EventPlayer.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/EventState.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/KitMapEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/SpawnManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/sumo/SumoCountdownTask.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/sumo/SumoEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/events/sumo/SumoPlayer.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/AbstractFactionManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/Faction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/FactionManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/FactionMember.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/FlatFileFactionManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/MongoFactionManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/claim/ClaimHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/claim/ClaimSelection.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/claim/ClaimZone.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/SubCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionAnnouncementCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionClaimCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionInviteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionInvitesCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionSetHomeCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionUnallyCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/captain/FactionWithdrawCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/leader/FactionCoLeaderCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionAcceptCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionChatCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionCreateCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionDepositCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionLeaveCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionListCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionPointsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionShowCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionForceKickCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/commands/staff/FactionTpHereCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/handlers/FactionHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/handlers/ProtectionHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/handlers/SignSubclaimHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/ClaimableFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/PlayerFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/games/CapturableFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/games/EventFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/system/EndPortalFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/system/RoadFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/system/SpawnFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/system/WarzoneFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/type/system/WildernessFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/CaptureZone.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/LandMap.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionChatEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangeEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangedEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionPlayerJoinedEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeaveEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionRelationRemoveEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionRemoveEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneLeaveEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/struction/Raidable.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/struction/Relation.java create mode 100644 HCF/src/secondlife/network/hcfactions/factions/utils/struction/Role.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/GameType.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/events/GameManager.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/events/eotw/EOTWHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/events/eotw/EOTWRunnable.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/events/faction/KothFaction.java create mode 100644 HCF/src/secondlife/network/hcfactions/game/type/KothType.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/BorderHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/ChatHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/CombatLoggerHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/CustomMovementHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/DeathMessagesHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/DynamicPlayerHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/EventSignHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/GlassHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/HCFDataHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/KillStreakHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/KitMapHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/KitSignHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/MapKitHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/NametagsHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/PearlFixHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/RegisterHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/ScoreboardLayoutHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/ShopHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/TabLayoutHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/OptionType.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/StaffPlayerData.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/commands/StaffModeCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/commands/VanishCommand.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/handlers/StaffModeHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/staff/handlers/VanishHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/stattrack/StatTracker.java create mode 100644 HCF/src/secondlife/network/hcfactions/stattrack/StatTrackerHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/stattrack/StatTrackerType.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/AppleHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/ArcherHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/ClassWarmupHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/EnderpearlHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/GameHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/GappleHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/HomeHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/LogoutHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/SpawnTagHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/timers/StuckHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/ActionMessage.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/CacheCleanerThread.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/ChunkPosition.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/CustomLocation.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/GenericUtils.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/HCFUtils.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/Handler.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/JavaUtils.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/MapSorting.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/PacketUtils.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/PersistableLocation.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/TimeUtil.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/events/BaseEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/events/EventStartEvent.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/file/ConfigFile.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/file/LimitersFile.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/file/SchedulesFile.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/file/UtilitiesFile.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/redis/Redis.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/redis/UUIDHandler.java create mode 100644 HCF/src/secondlife/network/hcfactions/utilties/redis/UUIDUtils.java create mode 100644 HCF/src/utilities.yml create mode 100644 HCFactions/src/secondlife/network/hcf/HCF.java create mode 100644 HCFactions/src/secondlife/network/hcf/data/FactionsData.java create mode 100644 HCFactions/src/secondlife/network/hcf/data/HCFData.java create mode 100644 HCFactions/src/secondlife/network/hcf/utilities/Manager.java create mode 100644 Hub/.idea/artifacts/Hub_jar.xml create mode 100644 Hub/.idea/compiler.xml create mode 100644 Hub/.idea/misc.xml create mode 100644 Hub/.idea/modules.xml create mode 100644 Hub/.idea/workspace.xml create mode 100644 Hub/Hub.iml create mode 100644 Hub/out/production/Hub/META-INF/MANIFEST.MF create mode 100644 Hub/out/production/Hub/META-INF/plugin.xml create mode 100644 Hub/out/production/Hub/plugin.yml create mode 100644 Hub/out/production/Hub/secondlife/network/hub/Hub.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/commands/MultiSpawnCommand.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/commands/ProfileCommand.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/commands/QueueCommands.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/commands/SecurityCommands.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/data/QueueData.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/data/StaffData.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/handler/CustomMovementHandler.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/listeners/ChatListener.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/listeners/DataStaffListener.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/listeners/PlayerListener.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/AutoKickManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/CountManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/HubManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/MultiSpawnManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/QueueManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/SelectorManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/managers/StaffSecurityManager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/providers/NametagsProvider.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/providers/ScoreboardProvider.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/providers/TabProvider.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/HubUtils$1.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/HubUtils.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/Manager.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileStorage$PlayerData.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileStorage.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileUtils.class create mode 100644 Hub/out/production/Hub/secondlife/network/hub/utilties/profile/RemoveThread.class create mode 100644 Hub/out/production/Hub/utilities.yml create mode 100644 Hub/resources/META-INF/plugin.xml create mode 100644 Hub/src/META-INF/MANIFEST.MF create mode 100644 Hub/src/plugin.yml create mode 100644 Hub/src/secondlife/network/hub/Hub.java create mode 100644 Hub/src/secondlife/network/hub/commands/MultiSpawnCommand.java create mode 100644 Hub/src/secondlife/network/hub/commands/ProfileCommand.java create mode 100644 Hub/src/secondlife/network/hub/commands/QueueCommands.java create mode 100644 Hub/src/secondlife/network/hub/commands/SecurityCommands.java create mode 100644 Hub/src/secondlife/network/hub/data/QueueData.java create mode 100644 Hub/src/secondlife/network/hub/data/StaffData.java create mode 100644 Hub/src/secondlife/network/hub/handler/CustomMovementHandler.java create mode 100644 Hub/src/secondlife/network/hub/listeners/ChatListener.java create mode 100644 Hub/src/secondlife/network/hub/listeners/DataStaffListener.java create mode 100644 Hub/src/secondlife/network/hub/listeners/PlayerListener.java create mode 100644 Hub/src/secondlife/network/hub/managers/AutoKickManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/CountManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/HubManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/MultiSpawnManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/QueueManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/SelectorManager.java create mode 100644 Hub/src/secondlife/network/hub/managers/StaffSecurityManager.java create mode 100644 Hub/src/secondlife/network/hub/providers/NametagsProvider.java create mode 100644 Hub/src/secondlife/network/hub/providers/ScoreboardProvider.java create mode 100644 Hub/src/secondlife/network/hub/providers/TabProvider.java create mode 100644 Hub/src/secondlife/network/hub/utilties/HubUtils.java create mode 100644 Hub/src/secondlife/network/hub/utilties/Manager.java create mode 100644 Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileStorage.java create mode 100644 Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileUtils.java create mode 100644 Hub/src/secondlife/network/hub/utilties/profile/RemoveThread.java create mode 100644 Hub/src/utilities.yml create mode 100644 MeetupGame/src/config.yml create mode 100644 MeetupGame/src/kits.yml create mode 100644 MeetupGame/src/plugin.yml create mode 100644 MeetupGame/src/secondlife/network/meetupgame/MeetupGame.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/layouts/ScoreboardLayout.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/listeners/GameListener.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/listeners/PlayerListener.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/listeners/VoteListener.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/managers/GameManager.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/managers/InventoryManager.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/managers/VoteManager.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/player/PlayerData.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/Scenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/ScenarioManager.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/BowlessScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/DefaultScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/FirelessScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/NoCleanScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/RodlessScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/scenario/type/TimeBombScenario.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/state/GameState.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/state/PlayerState.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/tasks/GameTask.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/tasks/StartingTask.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/tasks/VoteTask.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/tasks/WinTask.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/utilities/Manager.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/utilities/MeetupUtils.java create mode 100644 MeetupGame/src/secondlife/network/meetupgame/utilities/database/MeetupDatabase.java create mode 100644 MeetupLobby/src/config.yml create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/MeetupLobby.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisController.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisListener.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisPublisher.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisSubscriber.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/layouts/ScoreboardLayout.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/listeners/InventoryListener.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/listeners/PlayerListener.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/managers/InventoryManager.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/managers/QueueManager.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/party/Party.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/party/PartyManager.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/party/command/PartyCommand.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/queue/QueueAction.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/tasks/CheckTask.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/utilities/Manager.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/utilities/MeetupUtils.java create mode 100644 MeetupLobby/src/secondlife/network/meetuplobby/utilities/OfflinePlayer.java create mode 100644 Overpass/.idea/artifacts/Overpass_jar.xml create mode 100644 Overpass/.idea/compiler.xml create mode 100644 Overpass/.idea/misc.xml create mode 100644 Overpass/.idea/modules.xml create mode 100644 Overpass/.idea/workspace.xml create mode 100644 Overpass/Overpass.iml create mode 100644 Overpass/out/production/Overpass/META-INF/MANIFEST.MF create mode 100644 Overpass/out/production/Overpass/config.yml create mode 100644 Overpass/out/production/Overpass/plugin.yml create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/Overpass.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/commands/OverpassCommand.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/commands/OverpassCommands$1$1.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/commands/OverpassCommands$1.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/commands/OverpassCommands.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/data/OverpassData.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/handler/CustomMovementHandler.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/listeners/OverpassDataListener$1.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/listeners/OverpassDataListener$2.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/listeners/OverpassDataListener.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/listeners/PlayerListener.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/managers/OverpassManager.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/managers/PremiumManager.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/tasks/LoginTask.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/utilties/Manager.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/utilties/OverpassUtils.class create mode 100644 Overpass/out/production/Overpass/secondlife/network/overpass/utilties/events/LoginEvent.class create mode 100644 Overpass/resources/META-INF/plugin.xml create mode 100644 Overpass/src/META-INF/MANIFEST.MF create mode 100644 Overpass/src/config.yml create mode 100644 Overpass/src/plugin.yml create mode 100644 Overpass/src/secondlife/network/overpass/Overpass.java create mode 100644 Overpass/src/secondlife/network/overpass/commands/OverpassCommand.java create mode 100644 Overpass/src/secondlife/network/overpass/commands/OverpassCommands.java create mode 100644 Overpass/src/secondlife/network/overpass/data/OverpassData.java create mode 100644 Overpass/src/secondlife/network/overpass/handler/CustomMovementHandler.java create mode 100644 Overpass/src/secondlife/network/overpass/listeners/OverpassDataListener.java create mode 100644 Overpass/src/secondlife/network/overpass/listeners/PlayerListener.java create mode 100644 Overpass/src/secondlife/network/overpass/managers/OverpassManager.java create mode 100644 Overpass/src/secondlife/network/overpass/managers/PremiumManager.java create mode 100644 Overpass/src/secondlife/network/overpass/tasks/LoginTask.java create mode 100644 Overpass/src/secondlife/network/overpass/utilties/Manager.java create mode 100644 Overpass/src/secondlife/network/overpass/utilties/OverpassUtils.java create mode 100644 Overpass/src/secondlife/network/overpass/utilties/events/LoginEvent.java create mode 100644 Paik/.idea/misc.xml create mode 100644 Paik/.idea/modules.xml create mode 100644 Paik/.idea/workspace.xml create mode 100644 Paik/out/production/LordMeme/META-INF/MANIFEST.MF create mode 100644 Paik/out/production/LordMeme/plugin.yml create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/Paik.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/PaikAPI.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/AbstractCheck.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/ICheck.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/checks/PacketCheck.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/checks/PositionCheck.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/checks/RotationCheck.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/aimassist/AimAssistA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/aimassist/AimAssistB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/aimassist/AimAssistC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/aimassist/AimAssistD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/aimassist/AimAssistE.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerE.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerF.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerG.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerH.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerI.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerJ.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerK.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/autoclicker/AutoClickerL.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsE.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsF.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsG.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsH.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsI.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsJ.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsK.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/badpackets/BadPacketsL.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/fly/FlyA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/fly/FlyB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/fly/FlyC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/fly/FlyD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryE.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryF.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/inventory/InventoryG.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraD.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraE.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraF.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraG.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraH.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraI.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraJ.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraK.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraL.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraM.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraN.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraO.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraP.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraQ.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraR.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraS.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/killaura/KillAuraT.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/phase/PhaseA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/phase/PhaseB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/range/RangeA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/scaffold/ScaffoldA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/scaffold/ScaffoldB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/scaffold/ScaffoldC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/step/StepA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/timer/TimerA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/vclip/VClipA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/vclip/VClipB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/velocity/VelocityA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/velocity/VelocityB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/velocity/VelocityC.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/wtap/WTapA.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/check/impl/wtap/WTapB.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/client/ClientManager.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/client/ClientType.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/client/EnumClientType.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/client/ModClientType.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/client/PayloadClientType.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/PaikCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/sub/LogsCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/sub/PaikBanCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/sub/PaikFunCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/sub/RangeCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/commands/sub/ToggleCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/BungeeHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/CustomMovementHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/CustomPacketHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/ModListHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/PlayerHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/data/PlayerData.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/logs/LogsHandler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/managers/AlertsManager.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/handlers/managers/PlayerDataManager.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/BlockUtil.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/CustomLocation.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/DirectoryUtils.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/Handler.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/MapUtil.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/MathUtil.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/BukkitCommand.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/BukkitCompleter.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/Command.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/CommandArgs.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/CommandFramework.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/command/Completer.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/dummy/DummyPlayer.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/dummy/DummyPlayerInteractManager.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/BaseEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/BungeeReceivedEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/ModListRetrieveEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/PlayerEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/player/PlayerAlertEvent$AlertType.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/player/PlayerAlertEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/events/player/PlayerBanEvent.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/file/ConfigFile.class create mode 100644 Paik/out/production/LordMeme/secondlife/network/paik/utilties/file/LogFile.class create mode 100644 Paik/out/production/Paik Novi/META-INF/MANIFEST.MF create mode 100644 Paik/out/production/Paik Novi/plugin.yml create mode 100644 Paik/out/production/Paik/META-INF/MANIFEST.MF create mode 100644 Paik/out/production/Paik/plugin.yml create mode 100644 Paik/out/production/Paik/secondlife/network/paik/Paik.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/PaikAPI.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/AbstractCheck.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/ICheck.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/checks/PacketCheck.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/checks/PositionCheck.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/checks/RotationCheck.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/aimassist/AimAssistA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/aimassist/AimAssistB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/aimassist/AimAssistC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/aimassist/AimAssistD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/aimassist/AimAssistE.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerE.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerF.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerG.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerH.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerI.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerJ.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerK.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/autoclicker/AutoClickerL.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsE.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsF.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsG.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsH.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsI.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsJ.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsK.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/badpackets/BadPacketsL.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/fly/FlyA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/fly/FlyB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/fly/FlyC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/fly/FlyD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryE.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryF.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/inventory/InventoryG.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraD.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraE.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraF.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraG.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraH.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraI.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraJ.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraK.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraL.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraM.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraN.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraO.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraP.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraQ.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraR.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraS.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/killaura/KillAuraT.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/phase/PhaseA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/phase/PhaseB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/range/RangeA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/scaffold/ScaffoldA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/scaffold/ScaffoldB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/scaffold/ScaffoldC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/step/StepA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/timer/TimerA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/vclip/VClipA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/vclip/VClipB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/velocity/VelocityA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/velocity/VelocityB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/velocity/VelocityC.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/wtap/WTapA.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/check/impl/wtap/WTapB.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/client/ClientManager.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/client/ClientType.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/client/EnumClientType.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/client/ModClientType.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/client/PayloadClientType.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/PaikCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/sub/LogsCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/sub/PaikBanCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/sub/PaikFunCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/sub/RangeCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/commands/sub/ToggleCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/BungeeHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/CustomMovementHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/CustomPacketHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/LogsHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/ModListHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/PlayerHandler$1.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/PlayerHandler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/data/PlayerData.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/managers/AlertsManager.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/handlers/managers/PlayerDataManager.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/BlockUtil.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/CustomLocation.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/DirectoryUtils.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/Handler.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/MapUtil.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/MathUtil.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/BukkitCommand.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/BukkitCompleter.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/Command.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/CommandArgs.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/CommandFramework.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/command/Completer.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/dummy/DummyPlayer.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/dummy/DummyPlayerInteractManager.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/BaseEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/BungeeReceivedEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/ModListRetrieveEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/PlayerEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/player/PlayerAlertEvent$AlertType.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/player/PlayerAlertEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/events/player/PlayerBanEvent.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/file/ConfigFile.class create mode 100644 Paik/out/production/Paik/secondlife/network/paik/utilties/file/LogFile.class create mode 100644 Paik/resources/META-INF/MANIFEST.MF create mode 100644 Paik/src/META-INF/MANIFEST.MF create mode 100644 Paik/src/plugin.yml create mode 100644 Paik/src/secondlife/network/paik/Paik.java create mode 100644 Paik/src/secondlife/network/paik/PaikAPI.java create mode 100644 Paik/src/secondlife/network/paik/check/AbstractCheck.java create mode 100644 Paik/src/secondlife/network/paik/check/ICheck.java create mode 100644 Paik/src/secondlife/network/paik/check/checks/PacketCheck.java create mode 100644 Paik/src/secondlife/network/paik/check/checks/PositionCheck.java create mode 100644 Paik/src/secondlife/network/paik/check/checks/RotationCheck.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/aimassist/AimAssistA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/aimassist/AimAssistB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/aimassist/AimAssistC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/aimassist/AimAssistD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/aimassist/AimAssistE.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerE.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerF.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerG.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerH.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerI.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerJ.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerK.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/autoclicker/AutoClickerL.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsE.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsF.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsG.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsH.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsI.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsJ.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsK.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/badpackets/BadPacketsL.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/fly/FlyA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/fly/FlyB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/fly/FlyC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/fly/FlyD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryE.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryF.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/inventory/InventoryG.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraD.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraE.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraF.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraG.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraH.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraI.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraJ.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraK.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraL.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraM.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraN.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraO.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraP.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraQ.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraR.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraS.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/killaura/KillAuraT.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/phase/PhaseA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/phase/PhaseB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/range/RangeA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/scaffold/ScaffoldA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/scaffold/ScaffoldB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/scaffold/ScaffoldC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/step/StepA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/timer/TimerA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/vclip/VClipA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/vclip/VClipB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/velocity/VelocityA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/velocity/VelocityB.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/velocity/VelocityC.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/wtap/WTapA.java create mode 100644 Paik/src/secondlife/network/paik/check/impl/wtap/WTapB.java create mode 100644 Paik/src/secondlife/network/paik/client/ClientManager.java create mode 100644 Paik/src/secondlife/network/paik/client/ClientType.java create mode 100644 Paik/src/secondlife/network/paik/client/EnumClientType.java create mode 100644 Paik/src/secondlife/network/paik/client/ModClientType.java create mode 100644 Paik/src/secondlife/network/paik/client/PayloadClientType.java create mode 100644 Paik/src/secondlife/network/paik/commands/PaikCommand.java create mode 100644 Paik/src/secondlife/network/paik/commands/sub/LogsCommand.java create mode 100644 Paik/src/secondlife/network/paik/commands/sub/PaikBanCommand.java create mode 100644 Paik/src/secondlife/network/paik/commands/sub/PaikFunCommand.java create mode 100644 Paik/src/secondlife/network/paik/commands/sub/RangeCommand.java create mode 100644 Paik/src/secondlife/network/paik/commands/sub/ToggleCommand.java create mode 100644 Paik/src/secondlife/network/paik/handlers/BungeeHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/CustomMovementHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/CustomPacketHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/LogsHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/ModListHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/PlayerHandler.java create mode 100644 Paik/src/secondlife/network/paik/handlers/data/PlayerData.java create mode 100644 Paik/src/secondlife/network/paik/handlers/managers/AlertsManager.java create mode 100644 Paik/src/secondlife/network/paik/handlers/managers/PlayerDataManager.java create mode 100644 Paik/src/secondlife/network/paik/utilties/BlockUtil.java create mode 100644 Paik/src/secondlife/network/paik/utilties/CustomLocation.java create mode 100644 Paik/src/secondlife/network/paik/utilties/DirectoryUtils.java create mode 100644 Paik/src/secondlife/network/paik/utilties/Handler.java create mode 100644 Paik/src/secondlife/network/paik/utilties/MapUtil.java create mode 100644 Paik/src/secondlife/network/paik/utilties/MathUtil.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/BukkitCommand.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/BukkitCompleter.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/Command.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/CommandArgs.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/CommandFramework.java create mode 100644 Paik/src/secondlife/network/paik/utilties/command/Completer.java create mode 100644 Paik/src/secondlife/network/paik/utilties/dummy/DummyPlayer.java create mode 100644 Paik/src/secondlife/network/paik/utilties/dummy/DummyPlayerInteractManager.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/BaseEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/BungeeReceivedEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/ModListRetrieveEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/PlayerEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/player/PlayerAlertEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/events/player/PlayerBanEvent.java create mode 100644 Paik/src/secondlife/network/paik/utilties/file/ConfigFile.java create mode 100644 Paik/src/secondlife/network/paik/utilties/file/LogFile.java create mode 100644 Practice/.idea/compiler.xml create mode 100644 Practice/.idea/misc.xml create mode 100644 Practice/.idea/modules.xml create mode 100644 Practice/.idea/workspace.xml create mode 100644 Practice/out/production/Practice NOVI/META-INF/MANIFEST.MF create mode 100644 Practice/out/production/Practice NOVI/arenas.yml create mode 100644 Practice/out/production/Practice NOVI/config.yml create mode 100644 Practice/out/production/Practice NOVI/ladders.yml create mode 100644 Practice/out/production/Practice NOVI/plugin.yml create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/Practice.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/arena/Arena.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/arena/StandaloneArena.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/InventoryCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/PartyCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/PremiumMatchesCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/ResetStatsCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/SaveCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/SpawnCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/StatsCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/ToggleDuelCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/ToggleSpectatorsCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/TournamentCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/duel/AcceptCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/duel/DuelCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/duel/SpectateCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/EventManagerCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/HostCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/JoinEventCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/LeaveEventCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/SpectateEventCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/event/StatusEventCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/management/ArenaCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/management/KitCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/management/RankedCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/commands/management/SpawnsCommand.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/EventCountdownTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/EventPlayer.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/EventState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/PracticeEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCCountdownTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCEvent$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCEvent$OITCGameTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCEvent$RespawnTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCEvent$SortComparator.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCPlayer$OITCState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/oitc/OITCPlayer.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourCountdownTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourEvent$ParkourGameTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourEvent$WaterCheckTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourPlayer$ParkourState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/parkour/ParkourPlayer.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoCountdownTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoEvent$SumoFightTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoEvent$WaterCheckTask.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoPlayer$SumoState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/events/sumo/SumoPlayer.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/ChatHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/CustomMovementHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/EnderpearlHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/EntityHandler$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/EntityHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/InventoryHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/MatchHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/PearlFixHandler$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/PearlFixHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/PlayerHandler$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/PlayerHandler$2.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/PlayerHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/handlers/WorldHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/inventory/InventorySnapshot$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/inventory/InventorySnapshot.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/kit/Kit.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/kit/PlayerKit.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/leaderboard/LeaderboardEntry.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/leaderboard/Leaderboards.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/ArenaManager$1$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/ArenaManager$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/ArenaManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/ChunkManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/EditorManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/EventManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$10.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$11.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$12.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$13.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$14.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$15.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$16.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$17$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$17$2.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$17$3.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$17.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$18.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$19.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$2.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$20.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$3.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$4.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$5.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$6.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$7.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$8.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager$9.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/InventoryManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/ItemManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/KitManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/MatchManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/PartyManager$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/PartyManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/QueueManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/SpawnManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/managers/TournamentManager.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/match/Match.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/match/MatchRequest.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/match/MatchState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/match/MatchTeam.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/party/Party.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/player/PlayerState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/player/PracticeData.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/providers/NametagsProvider.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/providers/ScoreboardProvider$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/providers/ScoreboardProvider.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/providers/TabProvider.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/queue/QueueEntry.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/queue/QueueType.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/ArenaCommandRunnable$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/ArenaCommandRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/BlockPlaceRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/DuplicateArenaRunnable$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/DuplicateArenaRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/ExpBarRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/ItemDespawnRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/MatchResetRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/MatchRunnable$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/MatchRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/RematchRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/SaveDataRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/runnable/TournamentRunnable.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/team/KillableTeam.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/tournament/Tournament.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/tournament/TournamentState.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/tournament/TournamentTeam.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/BlockUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/CC.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/Config.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/CustomLocation.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/EloUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/Handler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/KFactor.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/MathUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/OfflinePlayer.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/PlayerUtil$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/PlayerUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/TeamUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/TimeUtil.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/TtlHandler.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/TtlHashMap.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/event/BaseEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/event/EventStartEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/event/match/MatchEndEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/event/match/MatchEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/event/match/MatchStartEvent.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/file/ArenaFile.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/file/ConfigFile.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/file/LaddersFile.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$2.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$AbstractClickableItem.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$ClickableItem.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$EmptyClickableItem.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$Inventory2D.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI$InventoryUIHolder.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/InventoryUI.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/ItemUtil$1.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/ItemUtil$ItemEnchant.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/ItemUtil$ReloreType.class create mode 100644 Practice/out/production/Practice NOVI/secondlife/network/practice/utilties/inventory/ItemUtil.class create mode 100644 Practice/out/production/Practice/META-INF/MANIFEST.MF create mode 100644 Practice/out/production/Practice/arenas.yml create mode 100644 Practice/out/production/Practice/config.yml create mode 100644 Practice/out/production/Practice/ladders.yml create mode 100644 Practice/out/production/Practice/plugin.yml create mode 100644 Practice/out/production/Practice/secondlife/network/practice/Practice.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/arena/Arena.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/arena/StandaloneArena.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/InventoryCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/PartyCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/PremiumMatchesCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/ResetStatsCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/SaveCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/SpawnCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/StatsCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/ToggleDuelCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/ToggleSpectatorsCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/TournamentCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/duel/AcceptCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/duel/DuelCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/duel/SpectateCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/EventManagerCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/HostCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/JoinEventCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/LeaveEventCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/SpectateEventCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/event/StatusEventCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/management/ArenaCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/management/KitCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/management/RankedCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/commands/management/SpawnsCommand.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/EventCountdownTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/EventPlayer.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/EventState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/PracticeEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCCountdownTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCEvent$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCEvent$OITCGameTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCEvent$RespawnTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCEvent$SortComparator.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCPlayer$OITCState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/oitc/OITCPlayer.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourCountdownTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourEvent$ParkourGameTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourEvent$WaterCheckTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourPlayer$ParkourState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/parkour/ParkourPlayer.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoCountdownTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoEvent$SumoFightTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoEvent$WaterCheckTask.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoPlayer$SumoState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/events/sumo/SumoPlayer.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/ChatHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/CustomMovementHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/EnderpearlHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/EntityHandler$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/EntityHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/InventoryHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/MatchHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/PearlFixHandler$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/PearlFixHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/PlayerHandler$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/PlayerHandler$2.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/PlayerHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/handlers/WorldHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/inventory/InventorySnapshot$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/inventory/InventorySnapshot.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/kit/Kit.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/kit/PlayerKit.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/leaderboard/LeaderboardEntry.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/leaderboard/Leaderboards.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/ArenaManager$1$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/ArenaManager$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/ArenaManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/ChunkManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/EditorManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/EventManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$10.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$11.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$12.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$13.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$14.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$15.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$16.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$17$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$17$2.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$17$3.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$17.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$18.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$19.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$2.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$20.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$3.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$4.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$5.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$6.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$7.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$8.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager$9.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/InventoryManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/ItemManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/KitManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/MatchManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/PartyManager$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/PartyManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/QueueManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/SpawnManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/managers/TournamentManager.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/match/Match.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/match/MatchRequest.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/match/MatchState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/match/MatchTeam.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/party/Party.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/player/PlayerState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/player/PracticeData.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/providers/ScoreboardProvider$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/providers/ScoreboardProvider.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/providers/TabProvider.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/queue/QueueEntry.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/queue/QueueType.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/ArenaCommandRunnable$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/ArenaCommandRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/BlockPlaceRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/DuplicateArenaRunnable$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/DuplicateArenaRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/ExpBarRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/ItemDespawnRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/MatchResetRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/MatchRunnable$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/MatchRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/NametagRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/RematchRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/SaveDataRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/runnable/TournamentRunnable.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/team/KillableTeam.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/tournament/Tournament.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/tournament/TournamentState.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/tournament/TournamentTeam.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/BlockUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/CC.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/Config.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/CustomLocation.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/EloUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/Handler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/KFactor.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/MathUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/OfflinePlayer.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/PlayerUtil$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/PlayerUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/TeamUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/TimeUtil.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/TtlHandler.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/TtlHashMap.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/event/BaseEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/event/EventStartEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/event/match/MatchEndEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/event/match/MatchEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/event/match/MatchStartEvent.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/file/ArenaFile.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/file/ConfigFile.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/file/LaddersFile.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$2.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$AbstractClickableItem.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$ClickableItem.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$EmptyClickableItem.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$Inventory2D.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI$InventoryUIHolder.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/InventoryUI.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/ItemUtil$1.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/ItemUtil$ItemEnchant.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/ItemUtil$ReloreType.class create mode 100644 Practice/out/production/Practice/secondlife/network/practice/utilties/inventory/ItemUtil.class create mode 100644 Practice/resources/META-INF/plugin.xml create mode 100644 Practice/src/META-INF/MANIFEST.MF create mode 100644 Practice/src/arenas.yml create mode 100644 Practice/src/config.yml create mode 100644 Practice/src/ladders.yml create mode 100644 Practice/src/plugin.yml create mode 100644 Practice/src/secondlife/network/practice/Practice.java create mode 100644 Practice/src/secondlife/network/practice/arena/Arena.java create mode 100644 Practice/src/secondlife/network/practice/arena/StandaloneArena.java create mode 100644 Practice/src/secondlife/network/practice/commands/InventoryCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/PartyCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/PremiumMatchesCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/ResetStatsCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/SaveCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/SpawnCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/StatsCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/ToggleDuelCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/ToggleSpectatorsCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/TournamentCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/duel/AcceptCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/duel/DuelCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/duel/SpectateCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/EventManagerCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/HostCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/JoinEventCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/LeaveEventCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/SpectateEventCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/event/StatusEventCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/management/ArenaCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/management/KitCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/management/RankedCommand.java create mode 100644 Practice/src/secondlife/network/practice/commands/management/SpawnsCommand.java create mode 100644 Practice/src/secondlife/network/practice/events/EventCountdownTask.java create mode 100644 Practice/src/secondlife/network/practice/events/EventPlayer.java create mode 100644 Practice/src/secondlife/network/practice/events/EventState.java create mode 100644 Practice/src/secondlife/network/practice/events/PracticeEvent.java create mode 100644 Practice/src/secondlife/network/practice/events/oitc/OITCCountdownTask.java create mode 100644 Practice/src/secondlife/network/practice/events/oitc/OITCEvent.java create mode 100644 Practice/src/secondlife/network/practice/events/oitc/OITCPlayer.java create mode 100644 Practice/src/secondlife/network/practice/events/parkour/ParkourCountdownTask.java create mode 100644 Practice/src/secondlife/network/practice/events/parkour/ParkourEvent.java create mode 100644 Practice/src/secondlife/network/practice/events/parkour/ParkourPlayer.java create mode 100644 Practice/src/secondlife/network/practice/events/sumo/SumoCountdownTask.java create mode 100644 Practice/src/secondlife/network/practice/events/sumo/SumoEvent.java create mode 100644 Practice/src/secondlife/network/practice/events/sumo/SumoPlayer.java create mode 100644 Practice/src/secondlife/network/practice/handlers/ChatHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/CustomMovementHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/EnderpearlHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/EntityHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/InventoryHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/MatchHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/PearlFixHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/PlayerHandler.java create mode 100644 Practice/src/secondlife/network/practice/handlers/WorldHandler.java create mode 100644 Practice/src/secondlife/network/practice/inventory/InventorySnapshot.java create mode 100644 Practice/src/secondlife/network/practice/kit/Kit.java create mode 100644 Practice/src/secondlife/network/practice/kit/PlayerKit.java create mode 100644 Practice/src/secondlife/network/practice/leaderboard/LeaderboardEntry.java create mode 100644 Practice/src/secondlife/network/practice/leaderboard/Leaderboards.java create mode 100644 Practice/src/secondlife/network/practice/managers/ArenaManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/ChunkManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/EditorManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/EventManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/InventoryManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/ItemManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/KitManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/MatchManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/PartyManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/QueueManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/SpawnManager.java create mode 100644 Practice/src/secondlife/network/practice/managers/TournamentManager.java create mode 100644 Practice/src/secondlife/network/practice/match/Match.java create mode 100644 Practice/src/secondlife/network/practice/match/MatchRequest.java create mode 100644 Practice/src/secondlife/network/practice/match/MatchState.java create mode 100644 Practice/src/secondlife/network/practice/match/MatchTeam.java create mode 100644 Practice/src/secondlife/network/practice/party/Party.java create mode 100644 Practice/src/secondlife/network/practice/player/PlayerState.java create mode 100644 Practice/src/secondlife/network/practice/player/PracticeData.java create mode 100644 Practice/src/secondlife/network/practice/providers/ScoreboardProvider.java create mode 100644 Practice/src/secondlife/network/practice/providers/TabProvider.java create mode 100644 Practice/src/secondlife/network/practice/queue/QueueEntry.java create mode 100644 Practice/src/secondlife/network/practice/queue/QueueType.java create mode 100644 Practice/src/secondlife/network/practice/runnable/ArenaCommandRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/BlockPlaceRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/DuplicateArenaRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/ExpBarRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/ItemDespawnRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/MatchResetRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/MatchRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/NametagRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/RematchRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/SaveDataRunnable.java create mode 100644 Practice/src/secondlife/network/practice/runnable/TournamentRunnable.java create mode 100644 Practice/src/secondlife/network/practice/team/KillableTeam.java create mode 100644 Practice/src/secondlife/network/practice/tournament/Tournament.java create mode 100644 Practice/src/secondlife/network/practice/tournament/TournamentState.java create mode 100644 Practice/src/secondlife/network/practice/tournament/TournamentTeam.java create mode 100644 Practice/src/secondlife/network/practice/utilties/BlockUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/CC.java create mode 100644 Practice/src/secondlife/network/practice/utilties/Config.java create mode 100644 Practice/src/secondlife/network/practice/utilties/CustomLocation.java create mode 100644 Practice/src/secondlife/network/practice/utilties/EloUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/Handler.java create mode 100644 Practice/src/secondlife/network/practice/utilties/KFactor.java create mode 100644 Practice/src/secondlife/network/practice/utilties/MathUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/OfflinePlayer.java create mode 100644 Practice/src/secondlife/network/practice/utilties/PlayerUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/TeamUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/TimeUtil.java create mode 100644 Practice/src/secondlife/network/practice/utilties/TtlHandler.java create mode 100644 Practice/src/secondlife/network/practice/utilties/TtlHashMap.java create mode 100644 Practice/src/secondlife/network/practice/utilties/event/BaseEvent.java create mode 100644 Practice/src/secondlife/network/practice/utilties/event/EventStartEvent.java create mode 100644 Practice/src/secondlife/network/practice/utilties/event/match/MatchEndEvent.java create mode 100644 Practice/src/secondlife/network/practice/utilties/event/match/MatchEvent.java create mode 100644 Practice/src/secondlife/network/practice/utilties/event/match/MatchStartEvent.java create mode 100644 Practice/src/secondlife/network/practice/utilties/file/ArenaFile.java create mode 100644 Practice/src/secondlife/network/practice/utilties/file/ConfigFile.java create mode 100644 Practice/src/secondlife/network/practice/utilties/file/LaddersFile.java create mode 100644 Practice/src/secondlife/network/practice/utilties/inventory/InventoryUI.java create mode 100644 Practice/src/secondlife/network/practice/utilties/inventory/ItemUtil.java create mode 100644 UHC/.idea/compiler.xml create mode 100644 UHC/.idea/misc.xml create mode 100644 UHC/.idea/modules.xml create mode 100644 UHC/.idea/workspace.xml create mode 100644 UHC/UHC.iml create mode 100644 UHC/out/production/UHC/META-INF/MANIFEST.MF create mode 100644 UHC/out/production/UHC/META-INF/plugin.xml create mode 100644 UHC/out/production/UHC/config.yml create mode 100644 UHC/out/production/UHC/plugin.yml create mode 100644 UHC/out/production/UHC/utilities.yml create mode 100644 UHC/resources/META-INF/plugin.xml create mode 100644 UHC/src/META-INF/MANIFEST.MF create mode 100644 UHC/src/config.yml create mode 100644 UHC/src/plugin.yml create mode 100644 UHC/src/secondlife/network/uhc/UHC.java create mode 100644 UHC/src/secondlife/network/uhc/border/Border.java create mode 100644 UHC/src/secondlife/network/uhc/border/InvisibleFix.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/BorderData.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/Config.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/CoordXZ.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/DynMapFeatures.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/WorldFileData.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/DynmapAPI.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/DynmapCommonAPI.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/DynmapCommonAPIListener.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/DynmapWebChatEvent.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/AreaMarker.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/CircleMarker.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/GenericMarker.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/Marker.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/MarkerAPI.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/MarkerDescription.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/MarkerIcon.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/MarkerSet.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/PlayerSet.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/markers/PolyLineMarker.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/permissions/PermissionsHandler.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/renderer/CustomColorMultiplier.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/renderer/CustomRenderer.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/renderer/MapDataContext.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/renderer/RenderPatch.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/api/renderer/RenderPatchFactory.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/WBCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBBypassCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBBypasslistCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBClearCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBCmd.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBCommands.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBDebugCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBDelayCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBDenypearlCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBDynmapCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBDynmapmsgCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBFillCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBFillautosaveCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBGetmsgCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBHelpCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBKnockbackCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBListCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBPortalCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBPreventPlaceCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBPreventSpawnCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBRadiusCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBReloadCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBRemountCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBSetCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBSetcornersCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBSetmsgCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBShapeCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBTrimCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBWhooshCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBWrapCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/commands/arguments/WBWshapeCommand.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/utilties/NameFetcher.java create mode 100644 UHC/src/secondlife/network/uhc/border/worldborder/utilties/UUIDFetcher.java create mode 100644 UHC/src/secondlife/network/uhc/commands/BaseCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/CommandHandler.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/AutoStartCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/BackpackCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/BorderCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/ConfigCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/FlatCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/GameCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/HealthCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/HideLocationCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/KillCountCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/LeaderboardCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/MLGCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/MultiSpawnCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/NextGameCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/OnlineStaffCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/PartyCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/PartyListCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/ReviveCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/ScatterCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/ScenariosCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/SpectatorCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/StatsCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/TopKillsCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/UHCPracticeCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/WhitelistCommand.java create mode 100644 UHC/src/secondlife/network/uhc/commands/arguments/XRayCommand.java create mode 100644 UHC/src/secondlife/network/uhc/config/Option.java create mode 100644 UHC/src/secondlife/network/uhc/config/Options.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/DeathLookup.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/DeathLookupCommand.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/DeathLookupData.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/LastInventoryCommand.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/DeathData.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/ProfileFight.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/ProfileFightEffect.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/ProfileFightEnvironment.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/killer/ProfileFightKiller.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/killer/type/ProfileFightEnvironmentKiller.java create mode 100644 UHC/src/secondlife/network/uhc/deathlookup/data/killer/type/ProfileFightPlayerKiller.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/ChatListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/CombatLoggerListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/CustomMovementHandler.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/DeathLookupListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/DeathMessagesListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/GameListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/GameOptimizeListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/IPVPListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/InventoryListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/MobStackListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/MultiSpawnListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/OptionsListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/PlayerListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/PracticeListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/ProfileFightListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/SpectatorListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/StatsListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/VanishListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/WorldBorderListener.java create mode 100644 UHC/src/secondlife/network/uhc/listeners/XrayListener.java create mode 100644 UHC/src/secondlife/network/uhc/managers/BorderManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/CombatLoggerManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/GameManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/GlassManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/InventoryManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/MobStackManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/OptionManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/PartyManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/PlayerManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/PracticeManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/RequestManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/ScenarioManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/SpectatorManager.java create mode 100644 UHC/src/secondlife/network/uhc/managers/VanishManager.java create mode 100644 UHC/src/secondlife/network/uhc/party/Party.java create mode 100644 UHC/src/secondlife/network/uhc/party/PartyRequest.java create mode 100644 UHC/src/secondlife/network/uhc/player/UHCData.java create mode 100644 UHC/src/secondlife/network/uhc/providers/NametagsProvider.java create mode 100644 UHC/src/secondlife/network/uhc/providers/ScoreboardProvider.java create mode 100644 UHC/src/secondlife/network/uhc/providers/TabProvider.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/Scenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/ScenarioListeners.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BackPacksScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BareBonesScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BestPVEScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BloodDiamondsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BloodEnchantsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/BowlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/ColdWeaponsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/CutCleanScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/DiamondlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/DoNotDisturbScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/DoubleExpScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/DoubleOresScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/FirelessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/GoldenRetrieverScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/GoldlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/GoneFishingScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/HorselessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/InfiniteEnchanterScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/IronlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/LimitationsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/LimitedEnchantsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/LongShotsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/LuckyLeavesScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/NineSlotScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/NoCleanScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/NoEnchantsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/NoFallDamageScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/OreFrenzyScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/RiskyRetrievalScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/RodlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/SeasonsScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/SoupScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/SwitcherooScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/SwordlessScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/TimberScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/TimeBombScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/TripleExpScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/TripleOresScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/VanillaPlusScenario.java create mode 100644 UHC/src/secondlife/network/uhc/scenario/type/WebCageScenario.java create mode 100644 UHC/src/secondlife/network/uhc/state/GameState.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/AutoStartTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/BorderCheckTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/BorderTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/BorderTimeTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/GameTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/PracticeTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/UpdateInventoryTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/WorldFillTask.java create mode 100644 UHC/src/secondlife/network/uhc/tasks/WorldTrimTask.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/BaseListener.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/BossBar.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/Manager.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/ScenarioUtils.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/UHCUtils.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/WorldCreator.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/ConfigOptionChangeEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/GameStopEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/GameWinEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/GameWinTeamEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/WorldBorderFillFinishedEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/WorldBorderFillStartEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/WorldBorderTrimFinishedEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/events/WorldBorderTrimStartEvent.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/items/Items.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/items/StatsItems.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/spectator/OptionType.java create mode 100644 UHC/src/secondlife/network/uhc/utilties/spectator/SpectatorData.java create mode 100644 UHC/src/utilities.yml create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/META-INF/MANIFEST.MF create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/kits.yml create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/plugin.yml create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/MeetupGame.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/border/Border.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/border/InvisibleFix$1.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/border/InvisibleFix.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/AnnounceCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/EloCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/KitCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/LeaveCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/RerollCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/commands/StatsCommand.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/data/GameData.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/data/MeetupData.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/data/SpectatorData.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/ChatListener.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/DeathMessagesListener.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/PlayerListener$1.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/PlayerListener.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/SpectatorListener$1.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/listeners/SpectatorListener.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/BorderManager$1.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/BorderManager$2.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/BorderManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/GameManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/GlassManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/InventoryManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/KitsManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/ScenarioManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/SpectatorManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/VanishManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/managers/VoteManager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/providers/NametagsProvider.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/providers/ScoreboardProvider$1.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/providers/ScoreboardProvider.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/providers/TabProvider.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/Scenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/ScenarioListeners.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/BowlessScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/DefaultScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/FirelessScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/HorselessScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/LongShotsScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/NineSlotScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/NoCleanScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/NoFallDamageScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/RodlessScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/SoupScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/SwitcherooScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/TimeBombScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/scenario/type/WebCageScenario.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/states/GameState.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/states/PlayerState.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/BorderTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/BorderTimeTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/GameTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/StartingTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/VoteTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/tasks/WinTask.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/utilties/EloUtils.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/utilties/Manager.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/utilties/MeetupUtils.class create mode 100644 UHCMeetup-Game/out/production/UHCMeetup-Game/secondlife/network/meetupgame/utilties/OptionType.class create mode 100644 UHCMeetup-Game/src/META-INF/MANIFEST.MF create mode 100644 UHCMeetup-Game/src/kits.yml create mode 100644 UHCMeetup-Game/src/plugin.yml create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/MeetupGame.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/border/Border.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/border/InvisibleFix.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/AnnounceCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/EloCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/KitCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/LeaveCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/RerollCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/commands/StatsCommand.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/data/GameData.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/data/MeetupData.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/data/SpectatorData.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/listeners/ChatListener.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/listeners/DeathMessagesListener.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/listeners/PlayerListener.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/listeners/SpectatorListener.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/BorderManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/GameManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/GlassManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/InventoryManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/KitsManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/ScenarioManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/SpectatorManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/VanishManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/managers/VoteManager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/providers/NametagsProvider.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/providers/ScoreboardProvider.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/providers/TabProvider.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/Scenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/ScenarioListeners.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/BowlessScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/DefaultScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/FirelessScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/HorselessScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/LongShotsScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/NineSlotScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/NoCleanScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/NoFallDamageScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/RodlessScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/SoupScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/SwitcherooScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/TimeBombScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/scenario/type/WebCageScenario.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/states/GameState.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/states/PlayerState.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/BorderTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/BorderTimeTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/GameTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/StartingTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/VoteTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/tasks/WinTask.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/utilties/EloUtils.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/utilties/Manager.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/utilties/MeetupUtils.java create mode 100644 UHCMeetup-Game/src/secondlife/network/meetupgame/utilties/OptionType.java create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/META-INF/MANIFEST.MF create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/config.yml create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/plugin.yml create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/InfoPlugin.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/MeetupData.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/MeetupServer.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/handlers/DataSubscriptionHandler$1.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/handlers/DataSubscriptionHandler.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/handlers/ServerSubscriptionHandler$1.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/handlers/ServerSubscriptionHandler.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisAction.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisPublisher.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisQueue.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisSettings.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisSubscriber$1.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisSubscriber.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/jedis/JedisSubscriptionHandler.class create mode 100644 UHCMeetup-Info/out/production/UHCMeetup-Info/secondlife/network/info/thread/UpdateThread.class create mode 100644 UHCMeetup-Info/src/META-INF/MANIFEST.MF create mode 100644 UHCMeetup-Info/src/config.yml create mode 100644 UHCMeetup-Info/src/plugin.yml create mode 100644 UHCMeetup-Info/src/secondlife/network/info/InfoPlugin.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/MeetupData.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/MeetupServer.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/handlers/DataSubscriptionHandler.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/handlers/ServerSubscriptionHandler.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisAction.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisPublisher.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisQueue.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisSettings.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisSubscriber.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/jedis/JedisSubscriptionHandler.java create mode 100644 UHCMeetup-Info/src/secondlife/network/info/thread/UpdateThread.java create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/META-INF/MANIFEST.MF create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/config.yml create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/plugin.yml create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/MeetupLobby.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/commands/MeetupCommands.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/listeners/ChatListener.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/listeners/PlayerListener$1.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/listeners/PlayerListener.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/managers/InventoryManager.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/providers/NametagsProvider.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/providers/ScoreboardProvider.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/providers/TabProvider.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/utilties/Manager.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/utilties/MeetupUtils$1.class create mode 100644 UHCMeetup-Lobby/out/production/UHCMeetup-Lobby/secondlife/network/meetuplobby/utilties/MeetupUtils.class create mode 100644 UHCMeetup-Lobby/src/config.yml create mode 100644 UHCMeetup-Lobby/src/plugin.yml create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/MeetupLobby.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/commands/MeetupCommands.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/listeners/ChatListener.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/listeners/PlayerListener.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/managers/InventoryManager.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/providers/NametagsProvider.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/providers/ScoreboardProvider.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/providers/TabProvider.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/utilties/Manager.java create mode 100644 UHCMeetup-Lobby/src/secondlife/network/meetuplobby/utilties/MeetupUtils.java create mode 100644 Vituz/.classpath create mode 100644 Vituz/.idea/compiler.xml create mode 100644 Vituz/.idea/misc.xml create mode 100644 Vituz/.idea/modules.xml create mode 100644 Vituz/.idea/workspace.xml create mode 100644 Vituz/.project create mode 100644 Vituz/.settings/org.eclipse.core.resources.prefs create mode 100644 Vituz/SL - Vituz.iml create mode 100644 Vituz/bin/META-INF/MANIFEST.MF create mode 100644 Vituz/bin/config.yml create mode 100644 Vituz/bin/crates.yml create mode 100644 Vituz/bin/items.csv create mode 100644 Vituz/bin/plugin.yml create mode 100644 Vituz/bin/ranks.yml create mode 100644 Vituz/bin/secondlife/network/vituz/Vituz$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/Vituz.class create mode 100644 Vituz/bin/secondlife/network/vituz/VituzAPI.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/BaseCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/CommandHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/ColorCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/DonateCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/ListCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/ListCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/PingCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/PlaytimeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/PrefixCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/SettingsCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/TeamSpeakCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/console/BungeeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/BroadcastCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/IgnoreCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/MessageCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/SocialspyCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/SoundsCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/ToggleChatCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/message/TogglePMCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ChatControlCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/DayCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ExpCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FeedCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FlyCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FreezeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/GodCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/HealCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KickallCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillallCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/LagCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/LoreCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NightCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NotesCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NotesCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/PlayerdistanceCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ProtocolCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/RebootCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SeenCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpawnerCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpeedCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/StaffJoinCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/StatusCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SunCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/TasksCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/AdventureCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/CreativeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/GamemodeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/SurvivalCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/ClearCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/CraftCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnchantCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnderchestCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/GiveCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/GiveYourSelfCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/InvseeCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/MoreCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RenameCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RepairCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/BackCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportallCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleporthereCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportpositionCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TopCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WarpCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WorldCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/crates/Crate.class create mode 100644 Vituz/bin/secondlife/network/vituz/crates/CrateHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/crates/command/CrateCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/AutoRestartHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/AutoRestartHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/BackHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/ChatControlHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/ChatHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/ChatHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/CustomMovementHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/DatabaseHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/FreezeHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/GodHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/InvseeHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/MessageHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/WarpHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/data/ChallengeData.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/data/ChallengeDataHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/data/PlayerData.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/data/PlayerDataHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/events/PlayerMessageEvent.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/runnables/FreezeRunnable.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/settings/SettingsHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/ChallengeLeaderboardEntry.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/Challenges.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/Colors.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/Prefixes.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/ServerColors.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/type/ColorsHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/type/PrefixesHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/handlers/tags/type/ServerColorsHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/LayoutProvider.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/NametagProvider$DefaultNametagProvider.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/NametagProvider.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/ScoreProvider.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/listeners/NametagListener.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/listeners/ScoreboardListener.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/listeners/TabListener$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/listeners/TabListener.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/nametags/NametagInfo.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/nametags/NametagUpdate.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/nametags/VituzNametagHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/nametags/VituzNametagHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/packets/PlayerInfoPacketMod.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/packets/ScoreboardTeamPacketMod.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/scoreboard/ScoreboardConfiguration.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/scoreboard/TitleGetter.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/scoreboard/VituzScoreboard.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/scoreboard/VituzScoreboardHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/tab/TabLayout.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/tab/TabUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/tab/VituzTab.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/tab/VituzTabHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/threads/NametagThread.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/threads/ScoreboardThread.class create mode 100644 Vituz/bin/secondlife/network/vituz/providers/threads/TabThread.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/Server.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/ServerData.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisAction.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisChannel.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisPublisher.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisQueue.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisSettings.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisSubscriber$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisSubscriber.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/jedis/JedisSubscriptionHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/status/thread/UpdateThread.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/PunishData$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/PunishData.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/RankData$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/RankData.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/handlers/GrantProcedureHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/handlers/RankHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/handlers/RankHandler$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/handlers/RankHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/PunishDataHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/commands/KickCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/redis/PunishPublisher.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/redis/PunishSubscriber$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/redis/PunishSubscriber$2$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/redis/PunishSubscriber$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/redis/PunishSubscriber.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/type/Punishment.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/type/PunishmentQueue.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/punishments/type/PunishmentType.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/GrantCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/GrantsCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/RankCommand$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/RankCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/profile/AddPermissionCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/profile/ListPermissionCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/commands/profile/RemovePermissionCommand.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/grant/Grant.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/grant/procedure/GrantProcedure.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/grant/procedure/GrantProcedureData.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/grant/procedure/GrantProcedureStage.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/grant/procedure/GrantRecipient.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/redis/RankPublisher.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/redis/RankSubscriberAction.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/type/Rank.class create mode 100644 Vituz/bin/secondlife/network/vituz/system/ranks/type/RankData.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ActionMessage$AMText.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ActionMessage$ClickableType.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ActionMessage.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/BossBar.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ChallengeUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/Color.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/DateUtil.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$DateGsonAdapter.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$ExposeExlusion.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$Ignore.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$ItemStackGsonAdapter$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$ItemStackGsonAdapter.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$LocationGsonAdapter$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$LocationGsonAdapter.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$NewItemStackAdapter.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$PotionEffectGsonAdapter$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory$PotionEffectGsonAdapter.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/GsonFactory.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/Handler.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/InventorySerialisation$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/InventorySerialisation.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/InventoryUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ItemBuilder.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ItemNames.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/JavaUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/Msg.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/NumberUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PacketUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PasteUtils$Expire.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PasteUtils$Language.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PasteUtils$PasteResult.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PasteUtils$Visibility.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PasteUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/Permission.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/PersistableLocation.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/ServerUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/StringUtils$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/StringUtils$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/StringUtils.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/WoolUtil.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/config/ConfigFile.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/CoordinatePair.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/Cuboid$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/Cuboid.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/CuboidBlockIterator.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/CuboidDirection$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/CuboidDirection.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/CuboidLocationIterator.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/cuboid/NamedCuboid.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/file/ConfigFile.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/file/RanksFile.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/file/UtilitiesFile.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/CraftHologram$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/CraftHologram.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/DefaultHologram$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/DefaultHologram$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/DefaultHologram.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/Hologram.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/HologramAPI.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/HologramHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/HologramOffsets.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/entities/HologramEntityHorse.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/entities/HologramEntityItem.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/entities/HologramEntitySkull.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/AccessUtil.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/ClassBuilder.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/MathUtil.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/NMSClass.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/NMUClass.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/holograms/reflection/Reflection.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/inventory/VituzMenu.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/inventory/VituzMenuHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/ItemDB.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/ItemData.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/ItemHandler.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/ManagedFile.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/SimpleItemDB$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/item/SimpleItemDB.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/nms/HorseNMS.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/update/MovementUpdate.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/update/PositionUpdate.class create mode 100644 Vituz/bin/secondlife/network/vituz/utilties/update/RotationUpdate.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/BlockFiller.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/ProtocolLibHook$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/ProtocolLibHook.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualBlock.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualBlockData.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$1$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$2$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$2.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$3$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$3.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$4$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$4.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$5$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$5.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$6$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$6.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$7$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$7.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$8$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType$8.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualType.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualiseHandler$1.class create mode 100644 Vituz/bin/secondlife/network/vituz/visualise/VisualiseHandler.class create mode 100644 Vituz/bin/utilities.yml create mode 100644 Vituz/out/production/Vituz/META-INF/MANIFEST.MF create mode 100644 Vituz/out/production/Vituz/config.yml create mode 100644 Vituz/out/production/Vituz/crates.yml create mode 100644 Vituz/out/production/Vituz/items.csv create mode 100644 Vituz/out/production/Vituz/plugin.yml create mode 100644 Vituz/out/production/Vituz/ranks.yml create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/Vituz.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/VituzAPI$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/VituzAPI.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/BaseCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/CommandHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ChallengeCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ChallengeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ColorCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/DiscordCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/DonateCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/FacebookCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ForumCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ListCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/ListCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/PingCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/PlaytimeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/PrefixCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/RulesCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/SettingsCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/TeamSpeakCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/console/BungeeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/BroadcastCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/IgnoreCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/MessageCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/ReplyCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/ReplyCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/SocialspyCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/SoundsCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/ToggleChatCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/message/TogglePMCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/ChatControlCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/CrateCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/DayCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/ExpCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/FeedCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/FlyCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/FreezeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/GodCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/HealCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/KickallCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/KillCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/KillallCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/LagCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/LoreCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/NightCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/NotesCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/NotesCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/PlayerdistanceCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/ProtocolCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/RebootCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/SeenCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/SpawnerCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/SpeedCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/StaffJoinCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/StatusCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/SunCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/TasksCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/gamemode/AdventureCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/gamemode/CreativeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/gamemode/GamemodeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/gamemode/SurvivalCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/ClearCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/CraftCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/EnchantCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/EnderchestCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/GiveCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/GiveYourSelfCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/InvseeCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/MoreCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/RenameCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/inventory/RepairCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/BackCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportallCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/TeleporthereCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportpositionCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/TopCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/WarpCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/commands/arguments/staff/teleport/WorldCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/ChallengeData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/CrateData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/PlayerData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/PunishData$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/PunishData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/data/RankData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/events/PlayerMessageEvent.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/events/RebootStartEvent.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/events/RebootStopEvent.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/CrateListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/CustomMovementListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/DataChallengeListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/DataPlayerListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/DataPunishListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/DataRankListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/EssentialsListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/FreezeListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/GlitchListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/InventoryListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/SecurityListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/listeners/VituzMenuListener.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/AutoRestartManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/ChallengesManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/ChatControlManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/ColorsManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/CrateManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/DatabaseManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/EssentialsManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/FreezeManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/HorseManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/PrefixesManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/RankManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/ServerColorsManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/managers/SettingsManager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/LayoutProvider.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/NametagProvider$DefaultNametagProvider.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/NametagProvider.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/ScoreProvider.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/nametags/NametagInfo.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/nametags/NametagUpdate.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/nametags/VituzNametag.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/packets/PlayerInfoPacketMod.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/packets/ScoreboardTeamPacketMod.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/scoreboard/ScoreboardConfiguration.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/scoreboard/TitleGetter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/scoreboard/VituzScoreboard.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/tab/TabLayout.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/tab/TabUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/tab/VituzTab.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/threads/NametagThread.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/threads/ScoreboardThread.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/providers/threads/TabThread.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/Punishment.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/PunishmentQueue.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/PunishmentType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/AltViewCommand$1$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/AltViewCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/AltViewCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/BanCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/BlacklistCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/CheckCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/ClearPunishmentsCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/IPBanCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/IPCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/KickCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/MuteCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/RequestBanCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/UnbanCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/UnblacklistCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/UnipbanCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/commands/UnmuteCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/redis/PunishPublisher.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/redis/PunishSubscriber$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/redis/PunishSubscriber$2$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/redis/PunishSubscriber$2.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/punishments/redis/PunishSubscriber.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/Rank.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/RankData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/GrantCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/GrantsCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/RankCommand$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/RankCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/profile/AddPermissionCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/profile/ListPermissionCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/commands/profile/RemovePermissionCommand.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/grant/Grant.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/grant/procedure/GrantProcedure.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/grant/procedure/GrantProcedureData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/grant/procedure/GrantProcedureStage.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/grant/procedure/GrantRecipient.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/redis/RankPublisher.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/redis/RankSubscriber$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/redis/RankSubscriber.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/ranks/redis/RankSubscriberAction.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/Server.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/ServerData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/handlers/DataSubscriptionHandler$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/handlers/DataSubscriptionHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisAction.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisPublisher.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisQueue.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisSettings.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisSubscriber$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisSubscriber.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/jedis/JedisSubscriptionHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/status/thread/UpdateThread.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/tasks/ChallengeTask.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/tasks/FreezeTask.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/tasks/RebootTask$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/tasks/RebootTask.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ActionMessage$AMText.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ActionMessage$ClickableType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ActionMessage.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/BossBar.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ChallengeUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Color.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ConfigFile.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/DateUtil.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$DateGsonAdapter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$ExposeExlusion.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$Ignore.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$ItemStackGsonAdapter$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$ItemStackGsonAdapter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$LocationGsonAdapter$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$LocationGsonAdapter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$NewItemStackAdapter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$PotionEffectGsonAdapter$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory$PotionEffectGsonAdapter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/GsonFactory.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Manager.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Msg.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/NmsUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/NumberUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PasteUtils$Expire.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PasteUtils$Language.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PasteUtils$PasteResult.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PasteUtils$Visibility.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PasteUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Permission.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/PlayerUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/ServerUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/StringUtils$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/StringUtils$2.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/StringUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Tasks$Callable.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/Tasks.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/WoolUtil.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/Command.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/CommandData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/VituzCommandHandler$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/VituzCommandHandler$2.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/VituzCommandHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/VituzCommandMap$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/VituzCommandMap.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/Parameter.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/ParameterData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/ParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/BooleanParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/DoubleParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/FloatParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/IntegerParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/OfflinePlayerParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/PlayerParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/command/param/defaults/WorldParameterType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/CoordinatePair.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/Cuboid$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/Cuboid.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/CuboidBlockIterator.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/CuboidDirection$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/CuboidDirection.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/CuboidLocationIterator.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/cuboid/NamedCuboid.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/inventory/InventorySerialisation$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/inventory/InventorySerialisation.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/inventory/InventoryUtils.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/inventory/VituzMenu.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/ItemBuilder.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/ItemDB.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/ItemData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/ItemNames.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/ManagedFile.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/SimpleItemDB$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/item/SimpleItemDB.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/update/MovementUpdate.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/update/PositionUpdate.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/utilties/update/RotationUpdate.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/BlockFiller.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/CustomPacketHandler$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/CustomPacketHandler$2.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/CustomPacketHandler.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualBlock.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualBlockData.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$1$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$2$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$2.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$3$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$3.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$4$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$4.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$5$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$5.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$6$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$6.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$7$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$7.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$8$1.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType$8.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualType.class create mode 100644 Vituz/out/production/Vituz/secondlife/network/vituz/visualise/VisualiseHandler.class create mode 100644 Vituz/out/production/Vituz/utilities.yml create mode 100644 Vituz/src/META-INF/MANIFEST.MF create mode 100644 Vituz/src/config.yml create mode 100644 Vituz/src/crates.yml create mode 100644 Vituz/src/items.csv create mode 100644 Vituz/src/plugin.yml create mode 100644 Vituz/src/ranks.yml create mode 100644 Vituz/src/secondlife/network/vituz/Vituz.java create mode 100644 Vituz/src/secondlife/network/vituz/VituzAPI.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/BaseCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/CommandHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/ChallengeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/ColorCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/DiscordCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/DonateCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/FacebookCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/ForumCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/ListCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/PingCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/PlaytimeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/PrefixCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/RulesCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/SettingsCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/TeamSpeakCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/console/BungeeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/BroadcastCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/IgnoreCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/MessageCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/ReplyCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/SocialspyCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/SoundsCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/ToggleChatCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/message/TogglePMCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/ChatControlCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/CrateCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/DayCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/ExpCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/FeedCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/FlyCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/FreezeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/GodCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/HealCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/KickallCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/KillCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/KillallCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/LagCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/LoreCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/NightCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/NotesCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/PlayerdistanceCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/ProtocolCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/RebootCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/SeenCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/SpawnerCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/SpeedCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/StaffJoinCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/StatusCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/SunCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/TasksCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/gamemode/AdventureCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/gamemode/CreativeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/gamemode/GamemodeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/gamemode/SurvivalCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/ClearCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/CraftCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/EnchantCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/EnderchestCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/GiveCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/GiveYourSelfCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/InvseeCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/MoreCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/RenameCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/inventory/RepairCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/BackCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportallCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/TeleporthereCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportpositionCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/TopCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/WarpCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/commands/arguments/staff/teleport/WorldCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/data/ChallengeData.java create mode 100644 Vituz/src/secondlife/network/vituz/data/CrateData.java create mode 100644 Vituz/src/secondlife/network/vituz/data/PlayerData.java create mode 100644 Vituz/src/secondlife/network/vituz/data/PunishData.java create mode 100644 Vituz/src/secondlife/network/vituz/data/RankData.java create mode 100644 Vituz/src/secondlife/network/vituz/events/PlayerMessageEvent.java create mode 100644 Vituz/src/secondlife/network/vituz/events/RebootStartEvent.java create mode 100644 Vituz/src/secondlife/network/vituz/events/RebootStopEvent.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/CrateListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/CustomMovementListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/DataChallengeListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/DataPlayerListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/DataPunishListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/DataRankListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/EssentialsListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/FreezeListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/GlitchListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/InventoryListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/SecurityListener.java create mode 100644 Vituz/src/secondlife/network/vituz/listeners/VituzMenuListener.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/AutoRestartManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/ChallengesManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/ChatControlManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/ColorsManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/CrateManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/DatabaseManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/EssentialsManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/FreezeManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/HorseManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/PrefixesManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/RankManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/ServerColorsManager.java create mode 100644 Vituz/src/secondlife/network/vituz/managers/SettingsManager.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/LayoutProvider.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/NametagProvider.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/ScoreProvider.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/nametags/NametagInfo.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/nametags/NametagUpdate.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/nametags/VituzNametag.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/packets/PlayerInfoPacketMod.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/packets/ScoreboardTeamPacketMod.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/scoreboard/ScoreboardConfiguration.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/scoreboard/TitleGetter.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/scoreboard/VituzScoreboard.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/tab/TabLayout.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/tab/TabUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/tab/VituzTab.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/threads/NametagThread.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/threads/ScoreboardThread.java create mode 100644 Vituz/src/secondlife/network/vituz/providers/threads/TabThread.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/Punishment.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/PunishmentQueue.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/PunishmentType.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/AltViewCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/BanCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/BlacklistCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/CheckCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/ClearPunishmentsCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/IPBanCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/IPCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/KickCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/MuteCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/RequestBanCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/UnbanCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/UnblacklistCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/UnipbanCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/commands/UnmuteCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/redis/PunishPublisher.java create mode 100644 Vituz/src/secondlife/network/vituz/punishments/redis/PunishSubscriber.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/Rank.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/RankData.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/GrantCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/GrantsCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/RankCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/profile/AddPermissionCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/profile/ListPermissionCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/commands/profile/RemovePermissionCommand.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/grant/Grant.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/grant/procedure/GrantProcedure.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/grant/procedure/GrantProcedureData.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/grant/procedure/GrantProcedureStage.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/grant/procedure/GrantRecipient.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/redis/RankPublisher.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/redis/RankSubscriber.java create mode 100644 Vituz/src/secondlife/network/vituz/ranks/redis/RankSubscriberAction.java create mode 100644 Vituz/src/secondlife/network/vituz/status/Server.java create mode 100644 Vituz/src/secondlife/network/vituz/status/ServerData.java create mode 100644 Vituz/src/secondlife/network/vituz/status/handlers/DataSubscriptionHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisAction.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisPublisher.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisQueue.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisSettings.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisSubscriber.java create mode 100644 Vituz/src/secondlife/network/vituz/status/jedis/JedisSubscriptionHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/status/thread/UpdateThread.java create mode 100644 Vituz/src/secondlife/network/vituz/tasks/ChallengeTask.java create mode 100644 Vituz/src/secondlife/network/vituz/tasks/FreezeTask.java create mode 100644 Vituz/src/secondlife/network/vituz/tasks/RebootTask.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/ActionMessage.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/BossBar.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/ChallengeUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/Color.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/ConfigFile.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/DateUtil.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/GsonFactory.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/Manager.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/Msg.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/NmsUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/NumberUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/PasteUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/Permission.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/PlayerUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/ServerUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/StringUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/Tasks.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/WoolUtil.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/Command.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/CommandData.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/VituzCommandHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/VituzCommandMap.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/Parameter.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/ParameterData.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/ParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/BooleanParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/DoubleParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/FloatParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/IntegerParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/OfflinePlayerParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/PlayerParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/command/param/defaults/WorldParameterType.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/CoordinatePair.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/Cuboid.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/CuboidBlockIterator.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/CuboidDirection.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/CuboidLocationIterator.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/cuboid/NamedCuboid.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/inventory/InventorySerialisation.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/inventory/InventoryUtils.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/inventory/VituzMenu.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/ItemBuilder.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/ItemDB.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/ItemData.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/ItemNames.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/ManagedFile.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/item/SimpleItemDB.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/update/MovementUpdate.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/update/PositionUpdate.java create mode 100644 Vituz/src/secondlife/network/vituz/utilties/update/RotationUpdate.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/BlockFiller.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/CustomPacketHandler.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/VisualBlock.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/VisualBlockData.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/VisualType.java create mode 100644 Vituz/src/secondlife/network/vituz/visualise/VisualiseHandler.java create mode 100644 Vituz/src/utilities.yml diff --git a/(OLD) Paik/.classpath b/(OLD) Paik/.classpath new file mode 100644 index 0000000..fe9dbcb --- /dev/null +++ b/(OLD) Paik/.classpath @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/(OLD) Paik/.project b/(OLD) Paik/.project new file mode 100644 index 0000000..cfac424 --- /dev/null +++ b/(OLD) Paik/.project @@ -0,0 +1,17 @@ + + + Paik + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/(OLD) Paik/.settings/org.eclipse.jdt.core.prefs b/(OLD) Paik/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..3a21537 --- /dev/null +++ b/(OLD) Paik/.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/(OLD) Paik/META-INF/MANIFEST.MF b/(OLD) Paik/META-INF/MANIFEST.MF new file mode 100644 index 0000000..a93d75a --- /dev/null +++ b/(OLD) Paik/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Paik + diff --git a/(OLD) Paik/bin/META-INF/MANIFEST.MF b/(OLD) Paik/bin/META-INF/MANIFEST.MF new file mode 100644 index 0000000..6f64277 --- /dev/null +++ b/(OLD) Paik/bin/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: secondlife.network.paik.Paik + diff --git a/(OLD) Paik/bin/config.yml b/(OLD) Paik/bin/config.yml new file mode 100644 index 0000000..ea84a0b --- /dev/null +++ b/(OLD) Paik/bin/config.yml @@ -0,0 +1,39 @@ +enabled: true +test-mode: false +autobans: true +checks: + reach: true + autoclicker: true + fastbow: true + killaura: + dead: true + bot: true + packet: true + angle: true + wall: true + regen: true + flyA: true + flyB: true + fasteat: true + groundspoof: true + inventory: + move: true + killaura: true + autopotion: true + noslowdown: + shooting: true + eating: true + sneak: true + speed: true + timer: + standing: true + moving: true + looking: true + crash: true + custompayload: true + pingspoof: true + impossiblepitch: true + autoblock: true + refill: true + morepackets: true + invalidinteract: true \ No newline at end of file diff --git a/(OLD) Paik/bin/plugin.yml b/(OLD) Paik/bin/plugin.yml new file mode 100644 index 0000000..30b939e --- /dev/null +++ b/(OLD) Paik/bin/plugin.yml @@ -0,0 +1,26 @@ +name: Paik +main: secondlife.network.paik.Paik +author: ItsNature +version: 1.0 +depend: [ProtocolLib] + +commands: + autobans: + description: Autobans command + aliases: [enableautobans, disableautobans] + killaura: + description: Killaura command + aliases: [ff, forcefield, ka] + ocmc: + description: OCMC command + logs: + description: Logs command + aliases: [log, aclogs, anticheatlogs] + paik: + description: Paik command + aliases: [ac, anticheat] + paikban: + description: Paik ban command + aliases: [pban, acban, anticheatban] + ping: + description: Ping command \ No newline at end of file diff --git a/(OLD) Paik/src/META-INF/MANIFEST.MF b/(OLD) Paik/src/META-INF/MANIFEST.MF new file mode 100644 index 0000000..6f64277 --- /dev/null +++ b/(OLD) Paik/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: secondlife.network.paik.Paik + diff --git a/(OLD) Paik/src/config.yml b/(OLD) Paik/src/config.yml new file mode 100644 index 0000000..ea84a0b --- /dev/null +++ b/(OLD) Paik/src/config.yml @@ -0,0 +1,39 @@ +enabled: true +test-mode: false +autobans: true +checks: + reach: true + autoclicker: true + fastbow: true + killaura: + dead: true + bot: true + packet: true + angle: true + wall: true + regen: true + flyA: true + flyB: true + fasteat: true + groundspoof: true + inventory: + move: true + killaura: true + autopotion: true + noslowdown: + shooting: true + eating: true + sneak: true + speed: true + timer: + standing: true + moving: true + looking: true + crash: true + custompayload: true + pingspoof: true + impossiblepitch: true + autoblock: true + refill: true + morepackets: true + invalidinteract: true \ No newline at end of file diff --git a/(OLD) Paik/src/plugin.yml b/(OLD) Paik/src/plugin.yml new file mode 100644 index 0000000..30b939e --- /dev/null +++ b/(OLD) Paik/src/plugin.yml @@ -0,0 +1,26 @@ +name: Paik +main: secondlife.network.paik.Paik +author: ItsNature +version: 1.0 +depend: [ProtocolLib] + +commands: + autobans: + description: Autobans command + aliases: [enableautobans, disableautobans] + killaura: + description: Killaura command + aliases: [ff, forcefield, ka] + ocmc: + description: OCMC command + logs: + description: Logs command + aliases: [log, aclogs, anticheatlogs] + paik: + description: Paik command + aliases: [ac, anticheat] + paikban: + description: Paik ban command + aliases: [pban, acban, anticheatban] + ping: + description: Ping command \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/Paik.java b/(OLD) Paik/src/secondlife/network/paik/Paik.java new file mode 100644 index 0000000..8981b88 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/Paik.java @@ -0,0 +1,71 @@ +package secondlife.network.paik; + +import com.comphenix.protocol.ProtocolLibrary; +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.plugin.java.JavaPlugin; +import secondlife.network.paik.checks.combat.AutoClicker; +import secondlife.network.paik.checks.combat.Killaura; +import secondlife.network.paik.checks.movement.Speed; +import secondlife.network.paik.checks.movement.Timer; +import secondlife.network.paik.checks.movement.fly.FlyA; +import secondlife.network.paik.handlers.*; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.fixes.BookExploitHandler; +import secondlife.network.paik.handlers.fixes.FenceGlitchHandler; +import secondlife.network.paik.utils.DirectoryUtils; +import secondlife.network.paik.utils.PasteUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Paik extends JavaPlugin { + + @Getter private static Paik instance; + + @Override + public void onEnable() { + instance = this; + + this.registerOther(); + this.registerHandlers(); + this.registerChecks(); + } + + @Override + public void onDisable() { + CheatHandler.clear(); + } + + private void registerOther() { + + new ConfigFile(this); + + Bukkit.getMessenger().registerOutgoingPluginChannel(this, "AutoBan"); + Bukkit.getMessenger().registerOutgoingPluginChannel(this, "Alerts"); + + DirectoryUtils.registerDirectory(); + + PasteUtils.setDeveloperKey("8f3898360d2fe368a723d12839fa8374"); + } + + private void registerChecks() { + new AutoClicker(this); + new Killaura(this); + new FlyA(this); + new Speed(this); + new Timer(this); + } + + private void registerHandlers() { + new PlayerStatsHandler(this); + + new BookExploitHandler(this); + new FenceGlitchHandler(this); + + new AlertsHandler(this); + new CheatHandler(this); + new CommandHandler(this); + new PlayerHandler(this); + + ProtocolLibrary.getProtocolManager().addPacketListener(new PacketHandler(this)); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoBlock.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoBlock.java new file mode 100644 index 0000000..8bfd0f0 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoBlock.java @@ -0,0 +1,78 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class AutoBlock { + + public static void handleAutoBlockPlace(Player player, PlayerStats stats) { + if(stats.getAutoblock() > 0) { + stats.setAutoblock(stats.getAutoblock() - 1); + //Message.sendMessage("§cverbose -1 (BLOCK PLACE)"); + } + } + + public static void handleAutoBlockDig(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.autoblock")) { + if (ServerUtils.isServerLagging()) return; + + if(stats.getAutoblock() > 15) { + stats.setAutoblock(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoBlock (Damage)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(System.currentTimeMillis() - stats.getLastUseEntityPacket() < 250) { + ItemStack item = player.getItemInHand(); + + if(item == null) return; + + if(item.getType() == Material.DIAMOND_SWORD + || item.getType() == Material.GOLD_SWORD + || item.getType() == Material.IRON_SWORD + || item.getType() == Material.STONE_SWORD + || item.getType() == Material.WOOD_SWORD) { + stats.setAutoblock(stats.getAutoblock() + 1); + //Message.sendMessage("§averbose +1"); + } + } else { + if(stats.getAutoblock() > 0) { + stats.setAutoblock(stats.getAutoblock() - 1); + //Message.sendMessage("§cverbose -1 (USE ENTITY)"); + } + } + } + } + + public static void handleAutoBlock(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.autoblock")) { + if (ServerUtils.isServerLagging()) return; + + ItemStack item = player.getItemInHand(); + + if(item == null) return; + + if(item.getType() == Material.DIAMOND_SWORD + || item.getType() == Material.GOLD_SWORD + || item.getType() == Material.IRON_SWORD + || item.getType() == Material.STONE_SWORD + || item.getType() == Material.WOOD_SWORD) { + + if (player.isBlocking() && player.isSprinting()) { + if(stats.getAutoblock2() > 50) { + stats.setAutoblock2(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoBlock (Walk)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + } else { + stats.setAutoblock2(0); + } + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoClicker.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoClicker.java new file mode 100644 index 0000000..2540673 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/AutoClicker.java @@ -0,0 +1,158 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.block.Action; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.io.IOException; +import java.text.DecimalFormat; +import java.util.ArrayList; + +public class AutoClicker extends Handler { + + public static ArrayList butterfly; + + public AutoClicker(Paik plugin) { + super(plugin); + + butterfly = new ArrayList(); + + butterfly.add("ghostclienterr"); + + this.getClicks(); + } + + public static void handleAutoClickInteract(Player player, PlayerStats stats, Action action) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.autoclicker")) { + if(ServerUtils.isServerLagging() || action != Action.LEFT_CLICK_AIR) return; + + handleAutoClick(player, stats); + handleConstantCPS(player, stats); + handleDoubleClick(player, stats); + } + } + + public void getClicks() { + new BukkitRunnable() { + public void run() { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if (ServerUtils.isServerLagging()) return; + + for(Player player : Bukkit.getOnlinePlayers()) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats != null) { + int cps = stats.getLeftClickCPS(); + + if (cps >= 50 && ConfigFile.configuration.getBoolean("autobans")) { + try { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker &c[&4" + cps + " &cCPS]", player.getPing(), Bukkit.spigot().getTPS()[0])); + CheatHandler.log(player, "WAS AUTOBANNED FOR HAVING MORE THAN 50 CPS [" + cps + " CPS] ", "AutoClicker", LocationUtils.getLocation(player), player.getPing(), new DecimalFormat("##.##").format(Bukkit.spigot().getTPS()[0])); + } catch (IOException e) { + e.printStackTrace(); + } + CheatHandler.handleBan(player); + } else if (cps >= 30) { + stats.setAutoclickerVL(stats.getAutoclickerVL() + 1); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker &c[&4" + cps + " &cCPS]", player.getPing(), Bukkit.spigot().getTPS()[0])); + } else if (cps >= 27 && butterfly.contains(player.getUniqueId())) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker &c[&4" + cps + " &cCPS]", player.getPing(), Bukkit.spigot().getTPS()[0])); + } else if (cps >= 20) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker &c[&4" + cps + " &cCPS]", player.getPing(), Bukkit.spigot().getTPS()[0])); + } else if (cps >= 10 && cps < 30) { + stats.setConstantCPS(stats.getConstantCPS() + 1); + + ItemStack item = player.getItemInHand(); + + if(item != null && stats.getLastUseEntityPacket() < 2500) { + if(item.getType() == Material.POTION || item.getType() == Material.ENDER_PEARL || item.getType() == Material.COOKED_BEEF || item.getType() == Material.BAKED_POTATO) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker (Item Swing)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + } + } else { + if(stats.getAutoclickerVL() > 0) { + stats.setAutoclickerVL(stats.getAutoclickerVL() - 1); + } + stats.setConstantCPS(0); + } + + stats.setLeftClickCPS(0); + } + } + } + }.runTaskTimer(this.getInstance(), 20L, 20L); + } + + public static void handleDoubleClick(Player player, PlayerStats stats) { + if(stats.getDoubleclick() > 25) { + stats.setDoubleclick(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "DoubleClick", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(stats.getClick1() != 0) { + stats.setClick2(System.currentTimeMillis()); + //Message.sendMessage("set click 2 " + time); + } + + if(stats.getClick1() == 0) { + stats.setClick1(System.currentTimeMillis()); + //Message.sendMessage("set click 1 " + time); + } + + if(stats.getClick1() == 0 || stats.getClick2() == 0) return; + + long difference = (stats.getClick2() - stats.getClick1()); + + if(difference <= 5) { + if(!butterfly.contains(player.getUniqueId()) && player.getPing() < 200) { + stats.setDoubleclick(stats.getDoubleclick() + 1); + } + } else { + stats.setDoubleclick(0); + } + + stats.setClick1(0); + stats.setClick2(0); + } + + public static void handleConstantCPS(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("autobans") && stats.getAutoclickerVL() > 10) { + try { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker (Constant - 30+)", player.getPing(), Bukkit.spigot().getTPS()[0])); + CheatHandler.log(player, "WAS AUTOBANNED FOR CONSTANT 30+ CPS", "AutoClicker", LocationUtils.getLocation(player), player.getPing(), new DecimalFormat("##.##").format(Bukkit.spigot().getTPS()[0])); + } catch (IOException e) { + e.printStackTrace(); + } + CheatHandler.handleBan(player); + return; + } + + if(stats.getConstantCPS() > 25) { + stats.setConstantCPS(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoClicker (Constant - 10-30)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + } + + public static void handleAutoClick(Player player, PlayerStats stats) { + if(player.getPing() > 350 + || !player.getLocation().getChunk().isLoaded() + || player.isDead() + || System.currentTimeMillis() - stats.getJoined() < 1000 + || System.currentTimeMillis() - stats.getLastBlockBreak() < 500) + return; + + stats.setLeftClickCPS(stats.getLeftClickCPS() + 1); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastBow.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastBow.java new file mode 100644 index 0000000..ebfbfab --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastBow.java @@ -0,0 +1,52 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class FastBow { + + public static void handleFastBowInteract(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.fastbow")) { + if(ServerUtils.isServerLagging() + || player.getItemInHand() == null + || player.getItemInHand().getType() != Material.BOW + || player.getAllowFlight() + || player.isDead()) return; + + stats.setPull(System.currentTimeMillis()); + } + } + + public static void handleFastBowShoot(Player player, PlayerStats stats, double power) { + if(ServerUtils.isServerLagging() || player.getPing() > 200) return; + + if(stats.getBowVL() > 7) { + stats.setBowVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "FastBow", player.getPing(), Bukkit.spigot().getTPS()[0])); + + if(!ConfigFile.configuration.getBoolean("autobans") || player.hasPermission("secondlife.staff")) return; + + CheatHandler.handleBan(player); + } + + Long time = System.currentTimeMillis() - stats.getPull(); + Long timeLimit = 300L; + + if(power > 2.5 && time < timeLimit) { + stats.setBowVL(stats.getBowVL() + 1); + } else { + if(stats.getBowVL() > 0) { + stats.setBowVL(stats.getBowVL() - 1); + } + } + + stats.setPull(0); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastEat.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastEat.java new file mode 100644 index 0000000..083f4c5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/FastEat.java @@ -0,0 +1,45 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class FastEat { + + public static void handleFastEat(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.fasteat")) { + if(ServerUtils.isServerLagging() + || player.isDead() + || player.getVehicle() != null + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE + || player.getPing() > 350) + return;; + + if(stats.getFastEatVL() > 4) { + stats.setFastEatVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "FastEat", player.getPing(), Bukkit.spigot().getTPS()[0])); + + if(!ConfigFile.configuration.getBoolean("autobans") || player.hasPermission("secondlife.staff")) return; + + CheatHandler.handleBan(player); + } + + if(System.currentTimeMillis() - stats.getLastEat() < 1000) { + stats.setFastEatVL(stats.getFastEatVL() + 1); + } else { + if(stats.getFastEatVL() > 0) { + stats.setFastEatVL(stats.getFastEatVL() - 1); + } + } + + stats.setLastEat(System.currentTimeMillis()); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/Killaura.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Killaura.java new file mode 100644 index 0000000..92a99b3 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Killaura.java @@ -0,0 +1,195 @@ +package secondlife.network.paik.checks.combat; + +import net.minecraft.server.v1_7_R4.*; +import net.minecraft.util.com.mojang.authlib.GameProfile; +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.craftbukkit.v1_7_R4.CraftServer; +import org.bukkit.craftbukkit.v1_7_R4.CraftWorld; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.util.UUID; + +public class Killaura extends Handler { + + public static EntityPlayer npc; + + public Killaura(Paik plugin) { + super(plugin); + + npc = new EntityPlayer(((CraftServer) Bukkit.getServer()).getServer(), ((CraftWorld) Bukkit.getWorld("world")).getHandle(), + new GameProfile(UUID.randomUUID(), UUID.randomUUID().toString().substring(0, 14).replace("-", "")), + new PlayerInteractManager(((CraftWorld) Bukkit.getWorld("world")).getHandle())); + npc.viewDistance = 1; + npc.setSprinting(true); + npc.onGround = true; + npc.ping = CheatUtils.random(30, 100); + npc.expLevel = CheatUtils.random(3, 100); + } + + public static void handleKillaura(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled") || ServerUtils.isServerLagging()) return; + + if(ConfigFile.configuration.getBoolean("checks.killaura.packet")) { + handleKillauraPacket(player, stats); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.dead")) { + handleKillauraDead(player, stats); + } + + if(ConfigFile.configuration.getBoolean("checks.inventory.killaura")) { + handleKillauraInventory(player, stats); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.bot")) { + handleTeleportBot(player, stats); + } + } + + public static void handleKillauraBotCheck(Player player, int entityID) { + if(entityID == npc.getBukkitEntity().getEntityId()) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "KillAura (Bot)", player.getPing(), Bukkit.spigot().getTPS()[0])); + + if(ConfigFile.configuration.getBoolean("autobans") || !player.hasPermission("secondlife.staff")) return; + + CheatHandler.handleBan(player); + } + } + + public static void handleTeleportBot(Player player, PlayerStats stats) { + if(Bukkit.getOnlinePlayers().size() > 100 || player.getPing() > 300 || player.isDead()) return; + + stats.setHits(stats.getHits() + 1); + + if(stats.getHits() > 20) { + stats.setHits(0); + teleportBot(player); + } + } + + public static void handleKillauraPacket(Player player, PlayerStats stats) { + if(player.getPing() > 300) return; + + if(stats.getLastArmPacket() == 0 || stats.getLastUseEntityPacket() == 0) return; + + if(stats.getNoSwingDamageVL() > 3) { + stats.setNoSwingDamageVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "KillAura (Swing)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(stats.getLastUseEntityPacket() - stats.getLastArmPacket() > 500) { + stats.setNoSwingDamageVL(stats.getNoSwingDamageVL() + 1); + } else { + stats.setNoSwingDamageVL(0); + } + } + + public static void handleKillauraDead(Player player, PlayerStats stats) { + if(stats.getHitsWhileDead() > 3) { + stats.setHitsWhileDead(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "KillAura (Dead)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.isDead()) { + stats.setHitsWhileDead(stats.getHitsWhileDead() + 1); + } else { + stats.setHitsWhileDead(0); + } + } + + public static void handleKillauraInventory(Player player, PlayerStats stats) { + if(player.getGameMode() != GameMode.SURVIVAL || System.currentTimeMillis() - stats.getJoined() < 1500) return; + + if(stats.getHitsWhileInventoryOpen() > 3) { + stats.setHitsWhileInventoryOpen(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Inventory Killaura", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(!stats.isInventoryOpen()) return; + + stats.setHitsWhileInventoryOpen(stats.getHitsWhileInventoryOpen() + 1); + } + + public static void handleKillauraAngle(Player player, PlayerStats stats, float yaw, float pitch) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.killaura.angle")) { + if(stats.getAngle() > 20) { + stats.setAngle(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Killaura (Angle)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + float diff = Math.abs((stats.getLastYaw() - yaw) + (stats.getLastPitch() - pitch)); + + if(diff < 35) { + if(stats.getAngle() > 0) { + stats.setAngle(stats.getAngle() - 1); + //Message.sendMessage(Color.translate("&cVerbose -1")); + } + } else if(diff >= 35 && diff < 500 && System.currentTimeMillis() - stats.getJoined() > 1500 && System.currentTimeMillis() - stats.getLastUseEntityPacket() < 1000) { + //Message.sendMessage(Color.translate("&aVerbose +1")); + stats.setAngle(stats.getAngle() + 1); + } + + stats.setLastYaw(yaw); + stats.setLastPitch(pitch); + } + } + + public static void handleKillauraWall(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.killaura.wall")) { + if(stats.getSwingAngle() > 7) { + stats.setSwingAngle(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Killaura (Wall)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(stats.getLastEntity() == null || player.hasLineOfSight(stats.getLastEntity())) return; + + Block block = player.getTargetBlock(null, 4); + + if(block == null || block.getType() == Material.AIR || !block.getType().isSolid()) return; + + if(System.currentTimeMillis() - stats.getLastBlockDigPacket() > 1000) { + if(System.currentTimeMillis() - stats.getLastUseEntityPacket() < 100) { + stats.setSwingAngle(stats.getSwingAngle() + 1); + //Message.sendMessage(Color.translate("&aVerbose +1")); + } + } else { + stats.setSwingAngle(0); + //Message.sendMessage(Color.translate("&cVerbose 0")); + } + } + } + + public static void teleportBot(Player player) { + if(player.getLocation().getPitch() < -20.0) return; + + npc.setInvisible(false); + PlayerConnection connection = ((CraftPlayer) player).getHandle().playerConnection; + Location loc = player.getLocation(); + npc.setLocation(loc.getX(), loc.getY() + 4.5, loc.getZ(), loc.getPitch(), loc.getYaw()); + connection.sendPacket(new PacketPlayOutPlayerInfo().addPlayer(npc)); + connection.sendPacket(new PacketPlayOutNamedEntitySpawn((EntityHuman) npc)); + + new BukkitRunnable() { + public void run() { + npc.setInvisible(true); + connection.sendPacket(new PacketPlayOutPlayerInfo().removePlayer(npc)); + connection.sendPacket(new PacketPlayOutEntityDestroy(npc.getBukkitEntity().getEntityId())); + } + }.runTaskLater(Paik.getInstance(), 2L); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/Reach.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Reach.java new file mode 100644 index 0000000..d3357f5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Reach.java @@ -0,0 +1,77 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Reach { + + public static void handleReachCheck(Player player, PlayerStats stats, int entityID) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.reach")) return; + + if(ServerUtils.isServerLagging()) return; + + if(player.isDead() + || player.getVehicle() != null + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE + || player.getPing() > 300) + return; + + Entity hit = null; + + if(player.getWorld().getEntities().size() > 0) { + for(Entity entity : player.getWorld().getEntities()) { + if(entity.getEntityId() == entityID) { + hit = entity; + } + } + } + + if(hit == null) return; + if(!(hit instanceof Player)) return; + + Player target = (Player) hit; + + if(target.isDead() + || target.getVehicle() != null + || target.getAllowFlight() + || target.getGameMode() == GameMode.CREATIVE + || target.getPing() > 300) + return; + + if(CheatUtils.direction(player) == CheatUtils.direction(target)) return; + + if(stats.getReachVL() > 9) { + stats.setReachVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Reach", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + double reach = CheatUtils.getHorizontalDistance(player.getLocation(), target.getLocation()) - CheatUtils.getYDifference(player.getLocation(), target.getLocation()); + double maxReach = 3.4; + double playerPing = player.getPing(); + double entityPing = target.getPing(); + double deltaXZ = stats.getDelta(); + double entityDeltaXZ = target.getVelocity().length() > 0 ? target.getVelocity().length() : 0; + + maxReach += (playerPing + entityPing) * 0.004; + maxReach += (deltaXZ + entityDeltaXZ) * 0.9; + maxReach += Math.abs(player.getEyeLocation().getYaw() - target.getLocation().getYaw()) * 0.004; + + if(reach > maxReach) { + stats.setReachVL(stats.getReachVL() + 1); + } else { + if(stats.getReachVL() > 0) { + stats.setReachVL(stats.getReachVL() - 1); + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/combat/Regen.java b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Regen.java new file mode 100644 index 0000000..ceccd08 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/combat/Regen.java @@ -0,0 +1,40 @@ +package secondlife.network.paik.checks.combat; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Regen { + + public static void handleRegen(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.regen")) { + if(ServerUtils.isServerLagging()) return; + + if(player.getPing() > 250 + || player.hasPotionEffect(PotionEffectType.REGENERATION) + || player.hasPotionEffect(PotionEffectType.HEAL)) + return; + + long now = System.currentTimeMillis(); + + if(stats.getRegenVL() > 2) { + stats.setRegenVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Regen (Normal)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if (now - stats.getLastRegen() < 1000L) { + stats.setRegenVL(stats.getRegenVL() + 1); + } else { + stats.setLastRegen(now); + if(stats.getRegenVL() > 0) { + stats.setRegenVL(stats.getRegenVL() - 1); + } + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/GroundSpoof.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/GroundSpoof.java new file mode 100644 index 0000000..7e08f1c --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/GroundSpoof.java @@ -0,0 +1,47 @@ +package secondlife.network.paik.checks.movement; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class GroundSpoof { + + public static void handleGroundSpoof(Player player, PlayerStats stats, PlayerMoveByBlockEvent event) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.groundspoof")) { + if(ServerUtils.isServerLagging()) return; + + if(player.getGameMode() == GameMode.CREATIVE + || player.getAllowFlight() + || player.getVehicle() != null + || player.getPing() > 200 + || !player.isOnGround() + || !CheatUtils.isInAir(player) + || CheatUtils.blocksNear(player)) + return; + + Location a = player.getLocation().subtract(0.0D, 1.0D, 0.0D); + + if(CheatUtils.blocksNear(a) || CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(stats.getNofallVL() > 10) { + stats.setNofallVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "GroundSpoof", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.getFallDistance() == 0.0 && event.getFrom().getY() > event.getTo().getY()) { + stats.setNofallVL(stats.getNofallVL() + 1); + } else { + stats.setNofallVL(0); + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/Inventory.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Inventory.java new file mode 100644 index 0000000..65195b5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Inventory.java @@ -0,0 +1,84 @@ +package secondlife.network.paik.checks.movement; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Inventory { + + public static void handleInventoryClose(Player player, PlayerStats stats) { + stats.setInventoryOpen(false); + stats.setMovesWhileInventoryClosed(0); + stats.setHitsWhileInventoryOpen(0); + + new BukkitRunnable() { + public void run() { + if(stats.isInventoryOpen()) { + stats.setInventoryOpen(false); + stats.setMovesWhileInventoryClosed(0); + stats.setHitsWhileInventoryOpen(0); + } + } + }.runTaskLaterAsynchronously(Paik.getInstance(), 2L); + } + + public static void handleInventoryMove(Player player, PlayerStats stats, PlayerMoveByBlockEvent event) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.inventory.move")) { + if(player.getPing() > 250 + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(System.currentTimeMillis() - stats.getJoined() < 1500) return; + + if(stats.getMovesWhileInventoryClosed() > 10) { + stats.setMovesWhileInventoryClosed(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Inventory Move", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(!stats.isInventoryOpen()) return; + + Location from = event.getFrom().clone(); + Location to = event.getTo().clone(); + + from.setY(0.0D); + to.setY(0.0D); + + Double distance = Double.valueOf(from.distance(to)); + + if(distance.doubleValue() > 0.25) { + stats.setMovesWhileInventoryClosed(stats.getMovesWhileInventoryClosed() + 1); + } + } + } + + public static void handleAutoPotion(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.inventory.autopotion")) { + if(ServerUtils.isServerLagging()) return; + + if(player.getGameMode() != GameMode.SURVIVAL) return; + + if(stats.getPotionsSplashedWhileInventoryOpen() > 1) { + stats.setPotionsSplashedWhileInventoryOpen(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "AutoPotion", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(!stats.isInventoryOpen()) return; + + stats.setPotionsSplashedWhileInventoryOpen(stats.getPotionsSplashedWhileInventoryOpen() + 1); + } + } +} + \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/NoSlowdown.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/NoSlowdown.java new file mode 100644 index 0000000..0a1d5c4 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/NoSlowdown.java @@ -0,0 +1,59 @@ +package secondlife.network.paik.checks.movement; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class NoSlowdown { + + public static void handleNoSlowdownEating(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.noslowdown.eating")) { + if(ServerUtils.isServerLagging() + || player.isDead() + || player.getVehicle() != null + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE + || player.getPing() > 350) + return; + + if(stats.getNoslowFoodVl() > 2) { + stats.setNoslowFoodVl(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "NoSlowdown (Eating)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.isSprinting()) { + stats.setNoslowFoodVl(stats.getNoslowFoodVl() + 1); + } else { + stats.setNoslowFoodVl(0); + } + } + } + + public static void handleNoSlowdownShooting(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.noslowdown.shooting")) { + if(ServerUtils.isServerLagging() + || player.isDead() + || player.getVehicle() != null + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE + || player.getPing() > 350) + return; + + if(stats.getNoslowBowVl() > 2) { + stats.setNoslowBowVl(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "NoSlowdown (Shooting)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.isSprinting()) { + stats.setNoslowBowVl(stats.getNoslowBowVl() + 1); + } else { + stats.setNoslowBowVl(0); + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/Sneak.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Sneak.java new file mode 100644 index 0000000..cd7f09c --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Sneak.java @@ -0,0 +1,50 @@ +package secondlife.network.paik.checks.movement; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Sneak { + + public static void handleSneak(Player player, PlayerStats stats) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.sneak")) { + if(ServerUtils.isServerLagging() + || player.isDead() + || System.currentTimeMillis() - stats.getLastBlockPlace() < 1000 + || System.currentTimeMillis() - stats.getJoined() < 1500) + return; + + if(stats.getSneakVL() > 50) { + stats.setSneakVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Sneak", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.isSneaking()) { + if(stats.getSneak1() != 0) { + stats.setSneak2(System.currentTimeMillis()); + } + + if(stats.getSneak1() == 0) { + stats.setSneak1(System.currentTimeMillis()); + } + + if(stats.getSneak1() == 0 || stats.getSneak2() == 0) return; + + long diff = (stats.getSneak2() - stats.getSneak1()); + + if(diff < 150) { + stats.setSneakVL(stats.getSneakVL() + 1); + } else { + stats.setSneakVL(0); + } + + stats.setSneak1(0); + stats.setSneak2(0); + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/Speed.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Speed.java new file mode 100644 index 0000000..089f3bd --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Speed.java @@ -0,0 +1,513 @@ +package secondlife.network.paik.checks.movement; + +import net.minecraft.server.v1_7_R4.EntityPlayer; +import net.minecraft.server.v1_7_R4.MobEffectList; +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.text.DecimalFormat; +import java.util.ArrayList; + +public class Speed extends Handler { + + public static ArrayList speeds; + public static ArrayList speeds1; + public static ArrayList speeds2; + public static ArrayList speeds3; + public static ArrayList speeds4; + public static ArrayList speeds5; + + public Speed(Paik plugin) { + super(plugin); + + speeds = new ArrayList(); + speeds1 = new ArrayList(); + speeds2 = new ArrayList(); + speeds3 = new ArrayList(); + speeds4 = new ArrayList(); + speeds5 = new ArrayList(); + + // ARTIX - MINEMEN + speeds.add(0.5274); + speeds1.add(0.5529); + speeds2.add(0.5783); + speeds3.add(0.6038); + speeds4.add(0.6293); + speeds5.add(0.6548); + + // ARTIX - SLOWHOP + speeds.add(0.2870); + speeds1.add(0.3444); + } + + public static void handleSpeed(Player player, PlayerStats stats, PlayerMoveByBlockEvent event) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.speed")) { + if(ServerUtils.isServerLagging()) { + if(!CheatHandler.ignore.isEmpty()) { + CheatHandler.ignore.clear(); + } + if(!CheatHandler.ignoreJump.isEmpty()) { + CheatHandler.ignoreJump.clear(); + } + return; + } + + if(player.getWalkSpeed() != 0.2F + || player.getGameMode() == GameMode.CREATIVE + || player.getAllowFlight() + || player.getVehicle() != null + || CheatUtils.isUnderBlock(player) + || CheatUtils.isInLiquid(player) + || CheatUtils.isOnHalfBlocks(player) + || !CheatUtils.isOnSolidBlock(player) + || !CheatUtils.isOnSolidBlocks(player) + || CheatUtils.isOnSnow(player) + || CheatUtils.isInAir(player)) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(CheatUtils.isOnIce(player)) { + CheatHandler.ignore.put(player.getUniqueId(), System.currentTimeMillis() + 1000); + return; + } + + for(PotionEffect potionEffect : player.getActivePotionEffects()) { + if((potionEffect.getType().equals(PotionEffectType.SPEED)) && (potionEffect.getAmplifier() >= 5)) return; + } + + Location from = event.getFrom().clone(); + Location to = event.getTo().clone(); + + if(to.getX() == from.getX() || to.getZ() == from.getZ()) return; + + from.setY(0); + to.setY(0); + + Double distance = Double.valueOf(from.distance(to)); + + if(stats.getSpeedFast() > 1) { + stats.setSpeedFast(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Fast)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + + if(distance > 4.25) { + stats.setSpeedFast(stats.getSpeedFast() + 1); + return; + } + + if(player.getPing() > 200) { + removeJumpOne(player); + removeOne(player); + return; + } + + DecimalFormat dc = new DecimalFormat("#.####"); + + /*if(player.isOnGround()) { + Message.sendMessage("�c" + player.getName() + " GROUND " + String.valueOf(dc.format(distance))); + } else { + Message.sendMessage("�a" + player.getName() + " AIR " + String.valueOf(dc.format(distance))); + }*/ + + if(stats.getSpeedJumpVL() > 20) { + stats.setSpeedJumpVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Ground)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + + if(stats.getSpeedVL() > 10) { + stats.setSpeedVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Hop / Air)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + + if(stats.getSpeedOtherVL() > 10) { + stats.setSpeedOtherVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Hop / Air)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + + if(stats.getSpeedSlowhopVL() > 10) { + stats.setSpeedSlowhopVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Slow / Packet)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + + /*if(stats.getSpritingandblockingVL() > 5) { + stats.setSpritingandblockingVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (AutoBlock)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + }*/ + + if(player.isSprinting()) { + if(player.getFoodLevel() <= 5) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Fake Sprint)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + } + /*if(player.isBlocking()) { + stats.setSpritingandblockingVL(stats.getSpritingandblockingVL() + 1); + return; + } else { + if(stats.getSpritingandblockingVL() > 0) { + stats.setSpritingandblockingVL(stats.getSpritingandblockingVL() - 1); + } + }*/ + } + + /*if(stats.getSpeedSneak() > 10) { + stats.setSpeedSneak(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Speed (Sneak)", player.getPing(), Bukkit.spigot().getTPS()[0])); + return; + }*/ + + if(player.isOnGround() && from.getY() == to.getY()) { + if((!CheatHandler.ignoreJump.containsKey(player.getUniqueId())) || (CheatHandler.ignoreJump.containsKey(player.getUniqueId()) && System.currentTimeMillis() > CheatHandler.ignoreJump.get(player.getUniqueId()))) { + if(isGroundSpeeding(player, distance)) { + stats.setSpeedJumpVL(stats.getSpeedJumpVL() + 1); + return; + } + } + } + + /*if(player.isSneaking()) { + if(this.isSneakSpeeding(player, distance)) { + stats.setSpeedSneak(stats.getSpeedSneak() + 1); + return; + } + } else { + stats.setSpeedSneak(0); + }*/ + + if(!player.isOnGround() && isAirSpeeding(player, distance)) { + stats.setSpeedVL(stats.getSpeedVL() + 1); + return; + } + + if(player.isOnGround() && isOtherSpeeding(player, distance)) { + stats.setSpeedOtherVL(stats.getSpeedOtherVL() + 1); + return; + } + + if(isBypassingSpeeding(player, distance) || isSlowHopSpeeding(player, distance)) { + stats.setSpeedSlowhopVL(stats.getSpeedSlowhopVL() + 1); + return; + } + } + } + + public static void removeOne(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats.getSpeedVL() > 0) { + stats.setSpeedVL(stats.getSpeedVL() - 1); + } + + if(stats.getSpeedOtherVL() > 0) { + stats.setSpeedOtherVL(stats.getSpeedOtherVL() - 1); + } + + if(stats.getSpeedSlowhopVL() > 0) { + stats.setSpeedSlowhopVL(stats.getSpeedSlowhopVL() - 1); + } + + /*if(stats.getSpeedSneak() > 0) { + stats.setSpeedSneak(stats.getSpeedSneak() - 1); + }*/ + } + + public static void removeJumpOne(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setSpeedJumpVL(0); + } + + public static boolean isGroundSpeeding(Player player, double distance) { + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + double limit = 10; + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + limit = 0.3467; + break; + case 1: + limit = 0.4029; + break; + case 2: + limit = 0.4590; + break; + case 3: + limit = 0.5151; + break; + case 4: + limit = 0.5712; + break; + } + } else { + limit = 0.2906; + } + + if(distance > limit) { + return true; + } + + return false; + } + + public static boolean isBypassingSpeeding(Player player, double distance) { + double limit = 10; + double limit2 = 10; + + DecimalFormat dc = new DecimalFormat("#.####"); + + Double moved = Double.valueOf(dc.format(distance).replaceAll(",", ".")); + + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + if(speeds1.contains(moved)) { + limit = (speeds1.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds1.get((int) moved.doubleValue()) + 0.0001); + } + break; + case 1: + if(speeds2.contains(moved)) { + limit = (speeds2.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds2.get((int) moved.doubleValue()) + 0.0001); + } + break; + case 2: + if(speeds3.contains(moved)) { + limit = (speeds3.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds3.get((int) moved.doubleValue()) + 0.0001); + } + break; + case 3: + if(speeds4.contains(moved)) { + limit = (speeds4.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds4.get((int) moved.doubleValue()) + 0.0001); + } + break; + case 4: + if(speeds5.contains(moved)) { + limit = (speeds5.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds5.get((int) moved.doubleValue()) + 0.0001); + } + break; + } + } else { + if(speeds.contains(moved)) { + limit = (speeds.get((int) moved.doubleValue()) - 0.0001); + limit2 = (speeds.get((int) moved.doubleValue()) + 0.0001); + } + } + + if((distance > limit) && (distance < limit2)) { + return true; + } + + return false; + } + + /*public boolean isSneakSpeeding(Player player, double distance) { + double limit = 10; + + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + limit = 0.0877; + break; + case 1: + limit = 0.1007; + break; + case 2: + limit = 0.1036; + break; + case 3: + limit = 0.1266; + break; + case 4: + limit = 0.1395; + break; + } + } else { + limit = 0.0748; + } + + if(distance > limit) { + return true; + } + + return false; + }*/ + + + public static boolean isAirSpeeding(Player player, double distance) { + double limit = 10; + + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + limit = 0.3869; + break; + case 1: + limit = 0.4042; + break; + case 2: + limit = 0.4215; + break; + case 3: + limit = 0.4387; + break; + case 4: + limit = 0.4513; + break; + } + } else { + limit = 0.3696; + } + + if(distance > limit) { + return true; + } + + return false; + } + + public static boolean isOtherSpeeding(Player player, double distance) { + double limit = 10; + + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + limit = 0.6538; + break; + case 1: + limit = 0.6854; + break; + case 2: + limit = 0.7170; + break; + case 3: + limit = 0.7485; + break; + case 4: + limit = 0.7801; + break; + } + } else { + limit = 0.6222; + } + + if(distance > limit) { + return true; + } + + return false; + } + + public static boolean isSlowHopSpeeding(Player player, double distance) { + double limit = 10; + double limit2 = 10; + + EntityPlayer mcPlayer = ((CraftPlayer) player).getHandle(); + boolean hasSpeed = mcPlayer.hasEffect(MobEffectList.FASTER_MOVEMENT); + + if(hasSpeed) { + //Message.sendMessage(String.valueOf(player.getName() + " " + mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier())); + switch(mcPlayer.getEffect(MobEffectList.FASTER_MOVEMENT).getAmplifier()) { + case 0: + limit = 0.3443; + limit2 = 0.3445; + break; + } + } else { + limit = 0.2869; + limit2 = 0.2871; + } + + if((distance > limit) && (distance < limit2)) { + return true; + } + + return false; + } + + /*public boolean isMinemenSpeeding(Player player, double distance) { + double limit = 10; + double limit2 = 10; + + if(player.hasPotionEffect(PotionEffectType.SPEED)) { + for(PotionEffect potionEffect : player.getActivePotionEffects()) { + switch(potionEffect.getAmplifier()) { + case 0: + limit = 0.5528; + limit2 = 0.5530; + break; + case 1: + limit = 0.5782; + limit2 = 0.5784; + break; + case 2: + limit = 0.6037; + limit2 = 0.6039; + break; + case 3: + limit = 0.6292; + limit2 = 0.6294; + break; + case 4: + limit = 0.6547; + limit2 = 0.6549; + break; + } + } + } else { + limit = 0.5273; + limit2 = 0.5275; + } + + if((distance > limit) && (distance < limit2)) { + return true; + } + + return false; + }*/ +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/Timer.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Timer.java new file mode 100644 index 0000000..902fde7 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/Timer.java @@ -0,0 +1,176 @@ +package secondlife.network.paik.checks.movement; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Timer extends Handler { + + public Timer(Paik plugin) { + super(plugin); + + this.getPackets(); + } + + public static void handleTimerFlying(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.timer.standing")) return; + + if(ServerUtils.isServerLagging()) return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(player.getPing() > 175 + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE) + return; + + if(System.currentTimeMillis() - stats.getJoined() < 1500) return; + + stats.setFlyingPackets(stats.getFlyingPackets() + 1); + } + + public static void handleTimerPosition(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.timer.moving")) return; + + if(ServerUtils.isServerLagging()) return; + + if(player.getPing() > 250 + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(System.currentTimeMillis() - stats.getJoined() < 1500) return; + + stats.setPositionPackets(stats.getPositionPackets() + 1); + } + + public static void handleTimerPositionLook(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.timer.looking")) return; + + if(ServerUtils.isServerLagging()) return; + + if(player.getPing() > 250 + || player.getAllowFlight() + || player.getGameMode() == GameMode.CREATIVE) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + if(System.currentTimeMillis() - stats.getJoined() < 1500) return; + + stats.setPositionLookPackets(stats.getPositionLookPackets() + 1); + } + + public void getPackets() { + new BukkitRunnable() { + public void run() { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if (ServerUtils.isServerLagging()) return; + + for (Player player : Bukkit.getOnlinePlayers()) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if (stats != null) { + // FLYING PACKET + if(ConfigFile.configuration.getBoolean("checks.timer.standing")) { + int packets = stats.getFlyingPackets(); + + if(stats.getTimerAVL() > 20) { + stats.setTimerAVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Timer (Standing)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(packets > 23) { + stats.setTimerAVL(stats.getTimerAVL() + 6); + //Message.sendMessage(Color.translate("&aVerbose: +6")); + } else if(packets > 19 && packets <= 23) { + stats.setTimerAVL(stats.getTimerAVL() + 3); + //Message.sendMessage(Color.translate("&aVerbose: +3")); + } else if(packets <= 19){ + if(stats.getTimerAVL() > 0) { + stats.setTimerAVL(stats.getTimerAVL() - 1); + //Message.sendMessage(Color.translate("&cVerbose: -1")); + } + } + + stats.setFlyingPackets(0); + } + + // POSITION PACKET + if(ConfigFile.configuration.getBoolean("checks.timer.moving")) { + int packets = stats.getPositionPackets(); + + if(stats.getTimerBVL() > 20) { + stats.setTimerBVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Timer (Moving)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(packets > 24) { + stats.setTimerBVL(stats.getTimerBVL() + 6); + //Message.sendMessage(Color.translate("&aVerbose: +6")); + } else if(packets > 21 && packets <= 24) { + stats.setTimerBVL(stats.getTimerBVL() + 3); + //Message.sendMessage(Color.translate("&aVerbose: +3")); + } else if(packets <= 21){ + if(stats.getTimerBVL() > 0) { + stats.setTimerBVL(stats.getTimerBVL() - 1); + //Message.sendMessage(Color.translate("&cVerbose: -1")); + } + } + + stats.setPositionPackets(0); + } + + // POSITION LOOK & LOOK PACKET + if(ConfigFile.configuration.getBoolean("checks.timer.looking")) { + int packets = stats.getPositionLookPackets(); + + if(stats.getTimerCVL() > 20) { + stats.setTimerCVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Timer (Moving & Looking)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(packets > 24) { + stats.setTimerCVL(stats.getTimerCVL() + 6); + //Message.sendMessage(Color.translate("&aVerbose: +6")); + } else if(packets > 21 && packets <= 24) { + stats.setTimerCVL(stats.getTimerCVL() + 3); + //Message.sendMessage(Color.translate("&aVerbose: +3")); + } else if(packets <= 21){ + if(stats.getTimerCVL() > 0) { + stats.setTimerCVL(stats.getTimerCVL() - 1); + //Message.sendMessage(Color.translate("&cVerbose: -1")); + } + } + + stats.setPositionLookPackets(0); + } + + if(ConfigFile.configuration.getBoolean("checks.morepackets")) { + if(stats.getMorePackets() > 50 && System.currentTimeMillis() - stats.getJoined() > 1500) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "MorePackets (Position)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + stats.setMorePackets(0); + } + } + } + } + }.runTaskTimer(this.getInstance(), 20L, 20L); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyA.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyA.java new file mode 100644 index 0000000..d62736e --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyA.java @@ -0,0 +1,135 @@ +package secondlife.network.paik.checks.movement.fly; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.util.AbstractMap; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +public class FlyA extends Handler { + + public static Map> upTicks; + public static Map onGround; + + public FlyA(Paik plugin) { + super(plugin); + + upTicks = new HashMap>(); + onGround = new HashMap(); + } + + public static void handleFly(Player player, PlayerStats stats, PlayerMoveByBlockEvent event) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.flyA")) { + if(ServerUtils.isServerLagging()) { + if(!CheatHandler.ignore.isEmpty()) { + CheatHandler.ignore.clear(); + } + if(!upTicks.isEmpty()) { + upTicks.clear(); + } + if(!onGround.isEmpty()) { + onGround.clear(); + } + return; + } + + if(player.getPing() > 200 + || player.getAllowFlight() + || player.getVehicle() != null + || player.isOnGround()) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + Location from = event.getFrom().clone(); + Location to = event.getTo().clone(); + + from.setX(0.0D); + from.setZ(0.0D); + to.setX(0.0D); + to.setZ(0.0D); + + long timeMillis = System.currentTimeMillis(); + double blocks = 0.0D; + + if (upTicks.containsKey(player.getUniqueId())) { + timeMillis = upTicks.get(player.getUniqueId()).getKey().longValue(); + blocks = upTicks.get(player.getUniqueId()).getValue().doubleValue(); + } + + long timeDifference = System.currentTimeMillis() - timeMillis; + double distance = from.toVector().subtract(to.toVector()).length(); + + if (distance > 0.0D) { + blocks += distance; + } + + if (CheatUtils.blocksNear(player)) { + blocks = 0.0D; + } + + Location a = player.getLocation().subtract(0.0D, 1.0D, 0.0D); + + if (CheatUtils.blocksNear(a)) { + blocks = 0.0D; + } + + double trigger = 0.5D; + + if (player.hasPotionEffect(PotionEffectType.JUMP)) { + for (PotionEffect effect : player.getActivePotionEffects()) { + if (effect.getType().equals(PotionEffectType.JUMP)) { + int level = effect.getAmplifier() + 1; + trigger += Math.pow(level + 4.2D, 2.0D) / 16.0D; + break; + } + } + } + + if (blocks > trigger) { + if (timeDifference > 125L) { + addOne(player); + + if(stats.getFlyAVL() > 3) { + stats.setFlyAVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Fly A", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + timeMillis = System.currentTimeMillis(); + } + } else { + timeMillis = System.currentTimeMillis(); + } + upTicks.put(player.getUniqueId(), new AbstractMap.SimpleEntry(Long.valueOf(timeMillis), Double.valueOf(blocks))); + } + } + + public static void addOne(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setFlyAVL(stats.getFlyAVL() + 1); + } + + public static void removeOne(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats.getFlyAVL() > 0) { + stats.setFlyAVL(stats.getFlyAVL() - 1); + } + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyB.java b/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyB.java new file mode 100644 index 0000000..24afc7c --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/movement/fly/FlyB.java @@ -0,0 +1,61 @@ +package secondlife.network.paik.checks.movement.fly; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.CheatUtils; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class FlyB { + + public static void handleFly(Player player, PlayerStats stats, PlayerMoveByBlockEvent event) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.flyB")) { + if(ServerUtils.isServerLagging()) { + if(!CheatHandler.ignore.isEmpty()) { + CheatHandler.ignore.clear(); + } + return; + } + + if(player.getAllowFlight() + || player.getVehicle() != null + || !CheatUtils.isInAir(player) + || CheatUtils.blocksNear(player)) + return; + + if(CheatHandler.ignore.containsKey(player.getUniqueId()) && System.currentTimeMillis() < CheatHandler.ignore.get(player.getUniqueId())) return; + + Location from = event.getFrom().clone(); + Location to = event.getTo().clone(); + + if(from.getY() == to.getY() && from.getX() != to.getX() && from.getZ() != to.getZ()) { + + if(player.getPing() > 250) { + stats.setFlyBVL(stats.getFlyBVL() + 1); + } else { + stats.setFlyBVL(stats.getFlyBVL() + 3); + } + + if(stats.getFlyBVL() > 15) { + stats.setFlyBVL(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Fly B", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + } + } + } + + public static void removeOne(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats.getFlyBVL() > 0) { + stats.setFlyBVL(stats.getFlyBVL() - 1); + } + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/Crash.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/Crash.java new file mode 100644 index 0000000..fd50dd5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/Crash.java @@ -0,0 +1,48 @@ +package secondlife.network.paik.checks.other; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Crash { + + public static void handleBlockPlaceCrash(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.crash")) return; + + if(stats.getBoxer2() > 500) { + stats.setBoxer2(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Crash (Place)", player.getPing(), Bukkit.spigot().getTPS()[0])); + CheatHandler.handleBan(player); + } + + if(System.currentTimeMillis() - stats.getLastBlockPacket() > 100) { + stats.setBoxer2(0); + } + + stats.setBoxer2(stats.getBoxer2() + 1); + stats.setLastBlockPacket(System.currentTimeMillis()); + } + + public static void handleAnimationCrash(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.crash")) return; + + if(stats.getBoxer1() > 500) { + stats.setBoxer1(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Crash (Animation)", player.getPing(), Bukkit.spigot().getTPS()[0])); + CheatHandler.handleBan(player); + } + + if(System.currentTimeMillis() - stats.getLastArmPacket() > 50) { + stats.setBoxer1(0); + } + + stats.setBoxer1(stats.getBoxer1() + 1); + stats.setLastArmPacket(System.currentTimeMillis()); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/CustomPayload.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/CustomPayload.java new file mode 100644 index 0000000..66e5462 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/CustomPayload.java @@ -0,0 +1,56 @@ +package secondlife.network.paik.checks.other; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.io.IOException; + +public class CustomPayload { + + public static void handleCustomPayload(Player player, PlayerStats stats, String message) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.custompayload")) return; + + if(message.equalsIgnoreCase("LOLIMAHCKER") + || message.equalsIgnoreCase("mincraftpvphcker") + || message.equalsIgnoreCase("cock") + || message.equalsIgnoreCase("0SO1Lk2KASxzsd") + || message.equalsIgnoreCase("MCnetHandler") + || message.equalsIgnoreCase("customGuiOpenBspkrs") + || message.equalsIgnoreCase("n") // "PRIVATE" client lmao + || message.equalsIgnoreCase("lmaohax") + || message.equalsIgnoreCase("0SSxzsd")) { + + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "CrackedClient", player.getPing(), Bukkit.spigot().getTPS()[0])); + CheatHandler.handleBan(player); + return; + } + + if(message.equalsIgnoreCase("OCMC")) { + stats.setOcmc(true); + } + + if(message.startsWith("MC|") + || message.equals("REGISTER") + || message.equals("WECUI") + || message.equals("skinport") + || message.equals("WDL|INIT") + || message.equals("MorePlayerModels") + || message.equals("advancedcapes") + || message.equals("PERMISSIONSREPL") + || message.equals("world_info") + || message.equals("OCMC")) + return; + + try { + CheatHandler.logPayload(player, String.valueOf(message)); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/ImpossiblePitch.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/ImpossiblePitch.java new file mode 100644 index 0000000..3ef5767 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/ImpossiblePitch.java @@ -0,0 +1,25 @@ +package secondlife.network.paik.checks.other; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class ImpossiblePitch { + + public static void handleImpossiblePitch(Player player, PlayerStats stats, float pitch) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.impossiblepitch")) { + if(Math.abs(pitch) > 90.1 && System.currentTimeMillis() - stats.getJoined() > 1500 && !ServerUtils.isServerLagging()) { + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "ImpossiblePitch", player.getPing(), Bukkit.spigot().getTPS()[0])); + + if(!ConfigFile.configuration.getBoolean("autobans") || player.hasPermission("secondlife.staff")) return; + + CheatHandler.handleBan(player); + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/InvalidInteract.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/InvalidInteract.java new file mode 100644 index 0000000..2a9c20d --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/InvalidInteract.java @@ -0,0 +1,35 @@ +package secondlife.network.paik.checks.other; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.entity.Player; +import org.bukkit.event.block.Action; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class InvalidInteract { + + public static void handleInvalidInteract(Player player, PlayerStats stats, Action action) { + if(ConfigFile.configuration.getBoolean("enabled") && ConfigFile.configuration.getBoolean("checks.invalidinteract")) { + if (ServerUtils.isServerLagging()) return; + + if (stats.getInvalidInteract() > 50) { + stats.setInvalidInteract(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "InvalidInteract", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if (action == Action.LEFT_CLICK_BLOCK || action == Action.RIGHT_CLICK_BLOCK) { + Block block = player.getTargetBlock(null, 6); + if (System.currentTimeMillis() - stats.getJoined() > 1500 && block != null && block.getType() == Material.AIR) { + stats.setInvalidInteract(stats.getInvalidInteract() + 1); + } else { + stats.setInvalidInteract(0); + } + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/Nametags.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/Nametags.java new file mode 100644 index 0000000..708fa5f --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/Nametags.java @@ -0,0 +1,36 @@ +package secondlife.network.paik.checks.other; + +import com.comphenix.protocol.events.PacketContainer; +import com.comphenix.protocol.events.PacketEvent; +import com.comphenix.protocol.wrappers.WrappedDataWatcher; +import org.bukkit.entity.Entity; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; +import secondlife.network.paik.utils.CheatUtils; + +public class Nametags { + + public static void handleHealthRandomizer(Player player, PacketEvent event) { + PacketContainer packet = event.getPacket(); + Entity entity = packet.getEntityModifier(event).read(0); + + if(entity instanceof LivingEntity + && entity.getType() == EntityType.PLAYER + && packet.getWatchableCollectionModifier().read(0) != null + && entity.getUniqueId() != player.getUniqueId()) { + packet = packet.deepClone(); + event.setPacket(packet); + + WrappedDataWatcher watcher = new WrappedDataWatcher(packet.getWatchableCollectionModifier().read(0)); + + if(watcher != null && watcher.getObject(6) != null && watcher.getFloat(6) != 0.0F) { + float hp = CheatUtils.random(1, 10); + + watcher.setObject(6, hp); + } + + packet.getWatchableCollectionModifier().write(0, watcher.getWatchableObjects()); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/PingSpoof.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/PingSpoof.java new file mode 100644 index 0000000..7d155d4 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/PingSpoof.java @@ -0,0 +1,40 @@ +package secondlife.network.paik.checks.other; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class PingSpoof { + + public static void handlePingSpoof(Player player, PlayerStats stats) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.pingspoof")) return; + + if (ServerUtils.isServerLagging()) return; + + int ping = player.getPing(); + + int diff = Math.abs(ping - stats.getLastPing()); + + if(player.getPing() > 200 && stats.getPingSpoof() > 10) { + stats.setPingSpoof(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "PingSpoof", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(player.getPing() > 200 && diff > 0 && diff < 11) { + stats.setPingSpoof(stats.getPingSpoof() + 1); + } else if(player.getPing() > 200 && diff == 0) { + stats.setPingSpoof(stats.getPingSpoof() + 2); + } else { + if(stats.getPingSpoof() > 1) { + stats.setPingSpoof(stats.getPingSpoof() - 2); + } + } + + stats.setLastPing(ping); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/checks/other/Refill.java b/(OLD) Paik/src/secondlife/network/paik/checks/other/Refill.java new file mode 100644 index 0000000..badd0bc --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/checks/other/Refill.java @@ -0,0 +1,74 @@ +package secondlife.network.paik.checks.other; + +import com.comphenix.protocol.events.PacketEvent; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.utils.LocationUtils; +import secondlife.network.paik.utils.ServerUtils; +import secondlife.network.paik.utils.file.ConfigFile; + +public class Refill { + + public static void handleRefill(Player player, PlayerStats stats, PacketEvent event) { + if(!ConfigFile.configuration.getBoolean("enabled")) return; + if(!ConfigFile.configuration.getBoolean("checks.refill")) return; + + if (ServerUtils.isServerLagging()) return; + + int slot = event.getPacket().getIntegers().read(1); + + if(slot >= 36) return; + + ItemStack item = event.getPacket().getItemModifier().read(0); + + if(item == null) return; + + if(item.getType() == Material.POTION || item.getType() == Material.MUSHROOM_SOUP) { + long delay = System.currentTimeMillis() - stats.getLastClick(); + + if(stats.getRefill() > 5) { + stats.setRefill(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Refill (Delay)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + if(stats.getRefillOther() > 15) { + stats.setRefillOther(0); + Bukkit.getPluginManager().callEvent(new PlayerCheatEvent(player, LocationUtils.getLocation(player), "Refill (Random)", player.getPing(), Bukkit.spigot().getTPS()[0])); + } + + int slotDiff = Math.abs(slot - stats.getLastSlot()); + + if(delay > 0 && delay <= 200) { + if(slotDiff < 3) { + stats.setRefill(stats.getRefill() + 1); + //Message.sendMessage(Color.translate("&aVerbose +1")); + } else { + stats.setRefillOther(stats.getRefillOther() + 1); + //Message.sendMessage(Color.translate("&aVerbose +1")); + + if(stats.getRefill() > 0) { + stats.setRefill(stats.getRefill() - 1); + //Message.sendMessage(Color.translate("&aVerbose -1")); + } + } + } else { + stats.setRefill(0); + + if(stats.getRefillOther() > 1) { + stats.setRefillOther(stats.getRefillOther() - 2); + //Message.sendMessage(Color.translate("&cVerbose - 2")); + } + //Message.sendMessage(Color.translate("&cVerbose 0")); + } + + //Message.sendMessage(String.valueOf(delay)); + + stats.setLastSlot(slot); + stats.setLastClick(System.currentTimeMillis()); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/KillauraCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/KillauraCommand.java new file mode 100644 index 0000000..99eeef4 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/KillauraCommand.java @@ -0,0 +1,42 @@ +package secondlife.network.paik.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.checks.combat.Killaura; +import secondlife.network.paik.utils.Color; + +public class KillauraCommand extends zBaseCommand { + + public KillauraCommand(Paik plugin) { + super(plugin); + + this.command = "killaura"; + this.permission = "secondlife.op"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /killaura ")); + return; + } + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + sender.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + if(PaikCommand.disabled.contains("KillAura_Bot")) { + sender.sendMessage(Color.translate("&cKillaura Bot check is currently disabled, therefore you can't use this command!")); + return; + } + + Killaura.teleportBot(target); + sender.sendMessage(Color.translate("&eSucessfully teleported Killaura Bot to &6" + target.getName())); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/LogsCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/LogsCommand.java new file mode 100644 index 0000000..58a5e2e --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/LogsCommand.java @@ -0,0 +1,91 @@ +package secondlife.network.paik.commands; + +import java.io.File; +import java.io.IOException; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Color; +import secondlife.network.paik.utils.Message; +import secondlife.network.paik.utils.PasteUtils; +import net.minecraft.util.org.apache.commons.io.FileUtils; + +public class LogsCommand extends zBaseCommand { + + public LogsCommand(Paik plugin) { + super(plugin); + + this.command = "logs"; + this.permission = "secondlife.staff"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(sender instanceof Player) { + Player player = (Player) sender; + + if(player.getName().equalsIgnoreCase("Pof") + || player.getName().equalsIgnoreCase("Crystaled") + || player.getName().equalsIgnoreCase("relaxkid") + || player.getName().equalsIgnoreCase("HiMyNameIsTechy") + || player.getName().equalsIgnoreCase("R4pexay") + || player.isOp()) { + + if(args.length == 0) { + player.sendMessage(Color.translate("&cUsage: /logs ")); + return; + } + + if(args.length == 1) { + + File log = new File(new File(this.getInstance().getDataFolder(), "logs"), args[0] + ".txt"); + + if(!log.exists()) { + player.sendMessage(Color.translate("&cThat player has no logs!")); + return; + } + + try { + + String content = FileUtils.readFileToString(log); + + player.sendMessage(Color.translate("&cLogs of player &4" + args[0] + " &cpasted at &4" + new PasteUtils(content, args[0], PasteUtils.Visibility.UNLISTED, PasteUtils.Expire.TEN_MINUTES, PasteUtils.Language.TEXT).upload())); + } catch (IOException e) { + e.printStackTrace(); + } + } + } else { + player.sendMessage(Message.COMMANDS_NO_PERMISSION_MESSAGE.toString()); + } + return; + } + + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /logs ")); + return; + } + + if(args.length == 1) { + + File log = new File(new File(this.getInstance().getDataFolder(), "logs"), args[0] + ".txt"); + + if(!log.exists()) { + sender.sendMessage(Color.translate("&cThat player has no logs!")); + return; + } + + try { + + String content = FileUtils.readFileToString(log); + + sender.sendMessage(Color.translate("&cLogs of player &4" + args[0] + " &cpasted at &4" + new PasteUtils(content, args[0], PasteUtils.Visibility.UNLISTED, PasteUtils.Expire.TEN_MINUTES, PasteUtils.Language.TEXT).upload())); + } catch (IOException e) { + e.printStackTrace(); + } + } + + return; + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/OCMCCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/OCMCCommand.java new file mode 100644 index 0000000..519003d --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/OCMCCommand.java @@ -0,0 +1,43 @@ +package secondlife.network.paik.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.utils.Color; + +public class OCMCCommand extends zBaseCommand { + + public OCMCCommand(Paik plugin) { + super(plugin); + + this.command = "ocmc"; + this.permission = "secondlife.staff"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /ocmc ")); + return; + } + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + sender.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + PlayerStats stats = PlayerStatsHandler.getStats(target); + + if(stats.isOcmc()) { + sender.sendMessage(Color.translate("&6" + target.getName() + " &eis &ausing &eOCMC!")); + } else { + sender.sendMessage(Color.translate("&6" + target.getName() + " &eis &cnot using &eOCMC!")); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/PaikBanCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/PaikBanCommand.java new file mode 100644 index 0000000..241c4c2 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/PaikBanCommand.java @@ -0,0 +1,77 @@ +package secondlife.network.paik.commands; + +import java.io.IOException; +import java.text.DecimalFormat; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.handlers.CheatHandler; +import secondlife.network.paik.utils.Color; +import secondlife.network.paik.utils.LocationUtils; + +public class PaikBanCommand extends zBaseCommand { + + public PaikBanCommand(Paik plugin) { + super(plugin); + + this.command = "paikban"; + this.permission = "secondlife.op"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /paikban ")); + return; + } + + if(sender instanceof Player) { + + Player player = (Player) sender; + + if(args.length == 1) { + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + player.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + if(target.hasPermission("secondlife.staff") && !player.hasPermission("secondlife.op")) { + player.sendMessage(Color.translate("&cYou cannot ban that player!")); + return; + } + + try { + CheatHandler.log(target, "", "BANNED WITH /PAIKBAN COMMAND BY " + player.getName(), LocationUtils.getLocation(target), target.getPing(), new DecimalFormat("##.##").format(Bukkit.spigot().getTPS()[0])); + } catch (IOException e) { + e.printStackTrace(); + } + CheatHandler.handleBan(target); + } + return; + + } + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + sender.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + try { + CheatHandler.log(target, "", "BANNED WITH /PAIKBAN COMMAND BY " + sender.getName(), LocationUtils.getLocation(target), target.getPing(), new DecimalFormat("##.##").format(Bukkit.spigot().getTPS()[0])); + } catch (IOException e) { + e.printStackTrace(); + } + CheatHandler.handleBan(target); + + return; + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/PaikCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/PaikCommand.java new file mode 100644 index 0000000..d743f6b --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/PaikCommand.java @@ -0,0 +1,320 @@ +package secondlife.network.paik.commands; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Color; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.util.ArrayList; + +public class PaikCommand extends zBaseCommand { + + public static ArrayList enabled; + public static ArrayList disabled; + + public PaikCommand(Paik plugin) { + super(plugin); + + enabled = new ArrayList(); + disabled = new ArrayList(); + + this.command = "paik"; + this.permission = "secondlife.op"; + this.forPlayerUseOnly = true; + } + + @Override + public void execute(CommandSender sender, String[] args) { + Player player = (Player) sender; + + if(args.length == 0) { + player.sendMessage(Color.translate("&cUsage: /paik ")); + return; + } + + this.getEnabledChecks(); + + if(args[0].equalsIgnoreCase("list")) { + player.sendMessage(Color.translate("&eChecks&7: &breach, autoclicker, " + + "killaura.dead, killaura.bot, killaura.packet, killaura.angle, killaura.wall" + + "fastbow, crash, custompayload, pingspoof, " + + "regen, flyA, flyB, fasteat, " + + "groundspoof, inventory.move, inventory.killaura, " + + "inventory.autopotion, noslowdown.shooting, noslowdown.eating, " + + "speed, timer.standing, timer.moving, " + + "timer.looking, crash, sneak, " + + "impossiblepitch, autoblock, refill, " + + "invalidinteract, morepackets")); + player.sendMessage(Color.translate("")); + player.sendMessage(Color.translate("")); + player.sendMessage(Color.translate("")); + player.sendMessage(Color.translate("&aEnabled&7:&e " + enabled.toString().replace("[", "").replace("]", "").replace(",", "&7,&e"))); + player.sendMessage(Color.translate("")); + player.sendMessage(Color.translate("&cDisabled&7:&e " + disabled.toString().replace("[", "").replace("]", "").replace(",", "&7,&e"))); + } + + if(args[0].equalsIgnoreCase("enable")) { + if(args.length == 1) { + player.sendMessage(Color.translate("Usage: /paik enable ")); + return; + } + + String check = args[1]; + + if(ConfigFile.configuration.getBoolean("checks." + check)) { + player.sendMessage(Color.translate("&cThat check is already enabled!")); + return; + } + + ConfigFile.configuration.set("checks." + check, true); + ConfigFile.save(); + } + + if(args[0].equalsIgnoreCase("disable")) { + if(args.length == 1) { + player.sendMessage(Color.translate("Usage: /paik disable ")); + return; + } + + String check = args[1]; + + if(!ConfigFile.configuration.getBoolean("checks." + check)) { + player.sendMessage(Color.translate("&cThat check is already disabled!")); + return; + } + + ConfigFile.configuration.set("checks." + check, false); + ConfigFile.save(); + } + + if(args[0].equalsIgnoreCase("autobans")) { + + if(ConfigFile.configuration.getBoolean("autobans")) { + ConfigFile.configuration.set("autobans", false); + player.sendMessage(Color.translate("&cYou have sucessfully &4disabled &cautobans!")); + } else { + ConfigFile.configuration.set("autobans", true); + player.sendMessage(Color.translate("&cYou have sucessfully &aenabled &cautobans!")); + } + + ConfigFile.save(); + } + + if(args[0].equalsIgnoreCase("anticheat")) { + + if(ConfigFile.configuration.getBoolean("enabled")) { + ConfigFile.configuration.set("enabled", false); + player.sendMessage(Color.translate("&cAntiCheat has been &4disabled")); + } else { + ConfigFile.configuration.set("enabled", true); + player.sendMessage(Color.translate("&cAntiCheat has been &aenabled")); + } + + ConfigFile.save(); + } + } + + public void getEnabledChecks() { + enabled.clear(); + disabled.clear(); + + if(ConfigFile.configuration.getBoolean("checks.reach")) { + enabled.add("Reach"); + } else { + disabled.add("Reach"); + } + + if(ConfigFile.configuration.getBoolean("checks.autoclicker")) { + enabled.add("AutoClicker"); + } else { + disabled.add("AutoClicker"); + } + + if(ConfigFile.configuration.getBoolean("checks.fastbow")) { + enabled.add("FastBow"); + } else { + disabled.add("FastBow"); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.dead")) { + enabled.add("KillAura_Dead"); + } else { + disabled.add("KillAura_Dead"); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.bot")) { + enabled.add("KillAura_Bot"); + } else { + disabled.add("KillAura_Bot"); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.packet")) { + enabled.add("KillAura_Packet"); + } else { + disabled.add("KillAura_Packet"); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.angle")) { + enabled.add("KillAura_Angle"); + } else { + disabled.add("KillAura_Angle"); + } + + if(ConfigFile.configuration.getBoolean("checks.killaura.wall")) { + enabled.add("KillAura_Wall"); + } else { + disabled.add("KillAura_Wall"); + } + + if(ConfigFile.configuration.getBoolean("checks.regen")) { + enabled.add("Regen"); + } else { + disabled.add("Regen"); + } + + if(ConfigFile.configuration.getBoolean("checks.flyA")) { + enabled.add("FlyA"); + } else { + disabled.add("FlyA"); + } + + if(ConfigFile.configuration.getBoolean("checks.pingspoof")) { + enabled.add("PingSpoof"); + } else { + disabled.add("PingSpoof"); + } + + if(ConfigFile.configuration.getBoolean("checks.flyB")) { + enabled.add("FlyB"); + } else { + disabled.add("FlyB"); + } + + if(ConfigFile.configuration.getBoolean("checks.fasteat")) { + enabled.add("FastEat"); + } else { + disabled.add("FastEat"); + } + + if(ConfigFile.configuration.getBoolean("checks.groundspoof")) { + enabled.add("GroundSpoof"); + } else { + disabled.add("GroundSpoof"); + } + + if(ConfigFile.configuration.getBoolean("checks.inventory.move")) { + enabled.add("Inventory_Move"); + } else { + disabled.add("Inventory_Move"); + } + + if(ConfigFile.configuration.getBoolean("checks.inventory.killaura")) { + enabled.add("Inventory_Killaura"); + } else { + disabled.add("Inventory_Killaura"); + } + + if(ConfigFile.configuration.getBoolean("checks.inventory.autopotion")) { + enabled.add("Inventory_AutoPotion"); + } else { + disabled.add("Inventory_AutoPotion"); + } + + if(ConfigFile.configuration.getBoolean("checks.noslowdown.shooting")) { + enabled.add("NoSlowdown_Shooting"); + } else { + disabled.add("NoSlowdown_Shooting"); + } + + if(ConfigFile.configuration.getBoolean("checks.noslowdown.eating")) { + enabled.add("NoSlowdown_Eating"); + } else { + disabled.add("NoSlowdown_Eating"); + } + + if(ConfigFile.configuration.getBoolean("checks.sneak")) { + enabled.add("Sneak"); + } else { + disabled.add("Sneak"); + } + + if(ConfigFile.configuration.getBoolean("checks.speed")) { + enabled.add("Speed"); + } else { + disabled.add("Speed"); + } + + if(ConfigFile.configuration.getBoolean("checks.timer.standing")) { + enabled.add("Timer_Standing"); + } else { + disabled.add("Timer_Standing"); + } + + if(ConfigFile.configuration.getBoolean("checks.timer.moving")) { + enabled.add("Timer_Moving"); + } else { + disabled.add("Timer_Moving"); + } + + if(ConfigFile.configuration.getBoolean("checks.timer.looking")) { + enabled.add("Timer_Looking"); + } else { + disabled.add("Timer_Looking"); + } + + if(ConfigFile.configuration.getBoolean("checks.crash")) { + enabled.add("Crash"); + } else { + disabled.add("Crash"); + } + + if(ConfigFile.configuration.getBoolean("checks.custompayload")) { + enabled.add("CustomPayload"); + } else { + disabled.add("CustomPayload"); + } + + if(ConfigFile.configuration.getBoolean("checks.autoblock")) { + enabled.add("AutoBlock"); + } else { + disabled.add("AutoBlock"); + } + + if(ConfigFile.configuration.getBoolean("checks.refill")) { + enabled.add("Refill"); + } else { + disabled.add("Refill"); + } + + if(ConfigFile.configuration.getBoolean("checks.impossiblepitch")) { + enabled.add("ImpossiblePitch"); + } else { + disabled.add("ImpossiblePitch"); + } + + if(ConfigFile.configuration.getBoolean("checks.morepackets")) { + enabled.add("MorePackets"); + } else { + disabled.add("MorePackets"); + } + + if(ConfigFile.configuration.getBoolean("checks.invalidinteract")) { + enabled.add("InvalidInteract"); + } else { + disabled.add("InvalidInteract"); + } + + /*if(ConfigFile.configuration.getBoolean("checks.aimassist")) { + enabled.add("AimAssist"); + } else { + disabled.add("AimAssist"); + } + + if(ConfigFile.configuration.getBoolean("checks.velocity")) { + enabled.add("Velocity"); + } else { + disabled.add("Velocity"); + }*/ + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/PingCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/PingCommand.java new file mode 100644 index 0000000..f1282b8 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/PingCommand.java @@ -0,0 +1,54 @@ +package secondlife.network.paik.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Color; + +public class PingCommand extends zBaseCommand { + + public PingCommand(Paik plugin) { + super(plugin); + + this.command = "ping"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(sender instanceof Player) { + Player player = (Player) sender; + + if(args.length == 0) { + player.sendMessage(Color.translate("&eYour ping: &6" + player.getPing())); + return; + } + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + player.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + player.sendMessage(Color.translate("&6" + target.getName() + "'s &eping: &6" + target.getPing())); + return; + } + + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /ping ")); + return; + } + + Player target = Bukkit.getPlayer(args[0]); + + if(target == null) { + sender.sendMessage(Color.translate("&cThat player isn't online!")); + return; + } + + sender.sendMessage(Color.translate("&6" + target.getName() + "'s &eping: &6" + target.getPing())); + return; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/commands/zBaseCommand.java b/(OLD) Paik/src/secondlife/network/paik/commands/zBaseCommand.java new file mode 100644 index 0000000..52c4fa5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/commands/zBaseCommand.java @@ -0,0 +1,26 @@ +package secondlife.network.paik.commands; + +import org.bukkit.command.CommandSender; + +import lombok.Getter; +import secondlife.network.paik.Paik; + +public abstract class zBaseCommand { + + @Getter public Paik instance; + public boolean forPlayerUseOnly; + + public String command; + public String permission; + + public zBaseCommand(Paik plugin) { + this.instance = plugin; + + this.command = ""; + this.permission = ""; + + this.forPlayerUseOnly = false; + } + + public abstract void execute(CommandSender sender, String[] args); +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/AlertsHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/AlertsHandler.java new file mode 100644 index 0000000..c085c84 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/AlertsHandler.java @@ -0,0 +1,31 @@ +package secondlife.network.paik.handlers; + +import java.util.AbstractMap; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Handler; + +public class AlertsHandler extends Handler implements Listener { + + public static HashMap> delays; + + public AlertsHandler(Paik plugin) { + super(plugin); + + delays = new HashMap>(); + } + + public static void applyCooldown(Player player, String check) { + delays.put(player.getUniqueId(), new AbstractMap.SimpleEntry(System.currentTimeMillis() + 1000, check)); + } + + public static boolean isActive(Player player, String check) { + return delays.containsKey(player.getUniqueId()) && System.currentTimeMillis() < delays.get(player.getUniqueId()).getKey().longValue() && check == delays.get(player.getUniqueId()).getValue(); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/CheatHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/CheatHandler.java new file mode 100644 index 0000000..2cbe046 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/CheatHandler.java @@ -0,0 +1,428 @@ +package secondlife.network.paik.handlers; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.Statistic; +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.BlockBreakEvent; +import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.player.*; +import org.bukkit.event.secondlife.PlayerCheatEvent; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.paik.Paik; +import secondlife.network.paik.checks.movement.Speed; +import secondlife.network.paik.checks.movement.fly.FlyA; +import secondlife.network.paik.checks.movement.fly.FlyB; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.*; +import secondlife.network.paik.utils.file.ConfigFile; + +import java.io.*; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.UUID; + +public class CheatHandler extends Handler implements Listener { + + public static HashMap ignore; + public static HashMap ignoreJump; + public static File logsDirecotry; + public static DecimalFormat dc; + public static SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy - HH:mm:ss"); + public static Date date = new Date(); + + // TEST KURAC 123 + + public CheatHandler(Paik plugin) { + super(plugin); + + ignore = new HashMap(); + ignoreJump = new HashMap(); + logsDirecotry = new File(this.getInstance().getDataFolder(), "logs"); + dc = new DecimalFormat("##.##"); + + refresh(); + + Bukkit.getPluginManager().registerEvents(this, plugin); + } + + @EventHandler + public void onPlayerCheat(PlayerCheatEvent event) { + if (!ConfigFile.configuration.getBoolean("enabled")) return; + + if (ConfigFile.configuration.getBoolean("test-mode")) { + Message.sendMessage(Color.translate("&c" + event.getPlayer().getName() + "&4 " + event.getCheck())); + event.setCancelled(true); + } + + if (event.isCancelled()) return; + + Player player = event.getPlayer(); + + if (AlertsHandler.isActive(player, event.getCheck())) return; + + AlertsHandler.applyCooldown(player, event.getCheck()); + + if ( event.getCheck().equalsIgnoreCase("PingSpoof") + || event.getCheck().equalsIgnoreCase("AutoPotion") + || event.getCheck().equalsIgnoreCase("DoubleClick") + || event.getCheck().toLowerCase().startsWith("autoblock") + || event.getCheck().toLowerCase().startsWith("timer") + || event.getCheck().toLowerCase().startsWith("refill") + || event.getCheck().toLowerCase().startsWith("inventory")) { + handleAlertNoVL(player, event.getCheck() + " (Experimental)", event.getLocation(), event.getPing(), event.getTps()); + return; + } + + try { + log(player, "", event.getCheck(), event.getLocation(), event.getPing(), dc.format(event.getTps())); + } catch (IOException e) { + e.printStackTrace(); + } + + if (event.getCheck().equalsIgnoreCase("VClip") + || event.getCheck().equalsIgnoreCase("Phase") + || event.getCheck().equalsIgnoreCase("CrackedClient") + || event.getCheck().equalsIgnoreCase("ImpossiblePitch") + || event.getCheck().toLowerCase().startsWith("autoclicker")) { + handleAlertNoVL(player, event.getCheck(), event.getLocation(), event.getPing(), event.getTps()); + return; + } + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setVl(stats.getVl() + 1); + + handleAlert(player, event.getCheck(), event.getLocation(), stats.getVl(), event.getPing(), event.getTps()); + + if (!ConfigFile.configuration.getBoolean("autobans") || player.hasPermission("secondlife.staff")) return; + + if (event.getCheck().equalsIgnoreCase("Killaura (Invalid Swing)")) { + handleBan(player); + return; + } + + if (stats.getVl() > 4) { + try { + log(player, event.getCheck(), "WAS AUTOBANNED FOR", LocationUtils.getLocation(player), player.getPing(), new DecimalFormat("##.##").format(Bukkit.spigot().getTPS()[0])); + } catch (IOException e) { + e.printStackTrace(); + } + + if (player.getName().equalsIgnoreCase("Zidovcina")) return; + + handleBan(player); + } + } + + public static void handleBan(Player player) { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if (stats.isBanned()) return; + + ByteArrayOutputStream b = new ByteArrayOutputStream(); + DataOutputStream out = new DataOutputStream(b); + try { + out.writeUTF("BanChannel"); + out.writeUTF(player.getName()); + } catch (IOException e) { + e.printStackTrace(); + } + player.sendPluginMessage(Paik.getInstance(), "AutoBan", b.toByteArray()); + + Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "banip " + player.getName() + "[Paik] Unfair Advantage -s"); + + stats.setBanned(true); + } + + public static void handleAlert(Player player, String check, String location, int vl, int ping, double tps) { + ByteArrayOutputStream b = new ByteArrayOutputStream(); + DataOutputStream out = new DataOutputStream(b); + try { + out.writeUTF("AlertsChannel"); + out.writeUTF(player.getName()); + out.writeUTF(check); + out.writeUTF(location); + out.writeInt(vl); + out.writeInt(ping); + out.writeDouble(tps); + } catch (IOException e) { + e.printStackTrace(); + } + player.sendPluginMessage(Paik.getInstance(), "Alerts", b.toByteArray()); + } + + public static void handleAlertNoVL(Player player, String check, String location, int ping, double tps) { + ByteArrayOutputStream b = new ByteArrayOutputStream(); + DataOutputStream out = new DataOutputStream(b); + try { + out.writeUTF("AlertsNoVLChannel"); + out.writeUTF(player.getName()); + out.writeUTF(check); + out.writeUTF(location); + out.writeInt(ping); + out.writeDouble(tps); + } catch (IOException e) { + e.printStackTrace(); + } + player.sendPluginMessage(Paik.getInstance(), "Alerts", b.toByteArray()); + } + + @EventHandler + public void onPlayerMove(PlayerMoveEvent event) { + Player player = event.getPlayer(); + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if (stats == null) return; + + Location from = event.getFrom(); + Location to = event.getTo(); + + double horizontal = Math.sqrt(Math.pow(to.getX() - from.getX(), 2.0D) + Math.pow(to.getZ() - from.getZ(), 2.0D)); + + stats.setDelta(horizontal); + + if (from.getBlockX() == to.getBlockX() && from.getBlockY() == to.getBlockY() && from.getBlockZ() == to.getBlockZ()) return; + + Bukkit.getPluginManager().callEvent(new PlayerMoveByBlockEvent(player, to, from)); + } + + @EventHandler(priority = EventPriority.LOWEST) + public void onPlayerQuit(PlayerQuitEvent event) { + Player player = event.getPlayer(); + + if (AlertsHandler.delays.containsKey(player.getUniqueId())) { + AlertsHandler.delays.remove(player.getUniqueId()); + } + + if (FlyA.onGround.containsKey(player.getUniqueId())) { + FlyA.onGround.remove(player.getUniqueId()); + } + + if (FlyA.upTicks.containsKey(player.getUniqueId())) { + FlyA.upTicks.remove(player.getUniqueId()); + } + + if (ignoreJump.containsKey(player.getUniqueId())) { + ignoreJump.remove(player.getUniqueId()); + } + + if (ignore.containsKey(player.getUniqueId())) { + ignore.remove(player.getUniqueId()); + } + + // lOGGING + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats != null && !stats.getLogs().isEmpty()) { + File log = new File(logsDirecotry, player.getName() + ".txt"); + + if(!log.exists()) { + try { + log.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + try { + FileWriter fw = new FileWriter(log, false); + BufferedWriter bw = new BufferedWriter(fw); + + for(String string : stats.getLogs()) { + bw.write(string); + bw.newLine(); + } + + bw.close(); + fw.close(); + stats.getLogs().clear(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + PlayerStats stats = PlayerStatsHandler.getStats(event.getPlayer()); + + stats.setLastBlockBreak(System.currentTimeMillis()); + } + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + this.clearList(); + + Player player = event.getPlayer(); + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setJoined(System.currentTimeMillis()); + + this.ignore(player); + } + + @EventHandler + public void onPlayerTeleport(PlayerTeleportEvent event) { + this.clearList(); + this.ignore(event.getPlayer()); + } + + @EventHandler + public void onPlayerWorldChanged(PlayerChangedWorldEvent event) { + this.clearList(); + + Player player = event.getPlayer(); + + this.ignore(player); + + player.setSneaking(false); + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + this.clearList(); + + Player player = event.getPlayer(); + + this.ignore(player); + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setLastBlockPlace(System.currentTimeMillis()); + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onEntityDamageByEntityEvent(EntityDamageByEntityEvent event) { + this.clearList(); + + if (event.isCancelled()) return; + + if (!(event.getEntity() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + + this.ignore(player); + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + this.clearList(); + + if (event.isCancelled()) return; + + if (!(event.getEntity() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + + this.ignore(player); + } + + @EventHandler + public void onPlayerToggleFlight(PlayerToggleFlightEvent event) { + this.clearList(); + this.ignore(event.getPlayer()); + } + + @EventHandler + public void onPlayerStatisticIncreamentEvent(PlayerStatisticIncrementEvent event) { + this.clearList(); + + if (event.getStatistic() != Statistic.JUMP) return; + + Player player = event.getPlayer(); + + Speed.removeJumpOne(player); + ignoreJump.put(player.getUniqueId(), System.currentTimeMillis() + 1000); + } + + public void clearList() { + if (ServerUtils.isServerLagging()) { + if (!ignore.isEmpty()) { + ignore.clear(); + } + if (!ignoreJump.isEmpty()) { + ignoreJump.clear(); + } + return; + } + } + + public void ignore(Player player) { + Speed.removeOne(player); + FlyA.removeOne(player); + FlyB.removeOne(player); + ignore.put(player.getUniqueId(), System.currentTimeMillis() + 3000); + } + + public static void log(Player player, String message, String check, String location, int ping, String tps) throws IOException { + PlayerStats stats = PlayerStatsHandler.getStats(player); + + if(stats == null) return; + + String line = sdf.format(date) + " " + player.getName() + " " + check.toUpperCase() + " " + message + " LOCATION: " + location + " PING: " + ping + " TPS: " + tps; + + stats.getLogs().add(line); + } + + public static void logPayload(Player player, String message) throws IOException { + File log = new File(Paik.getInstance().getDataFolder(), "payload.txt"); + + if (!log.exists()) { + try { + log.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + BufferedWriter bw = new BufferedWriter(new FileWriter(log, true)); + try { + bw.write(sdf.format(date) + " " + player.getName() + ": " + message); + bw.newLine(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + bw.flush(); + bw.close(); + } + } + + public static void clear() { + AlertsHandler.delays.clear(); + + CommandHandler.commands.clear(); + + FlyA.onGround.clear(); + FlyA.upTicks.clear(); + ignoreJump.clear(); + ignore.clear(); + } + + public static void clearNormal() { + AlertsHandler.delays.clear(); + + FlyA.onGround.clear(); + FlyA.upTicks.clear(); + } + + public static void refresh() { + new BukkitRunnable() { + public void run() { + clearNormal(); + } + }.runTaskTimerAsynchronously(Paik.getInstance(), 3600L, 3600L); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/CommandHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/CommandHandler.java new file mode 100644 index 0000000..52e0ed8 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/CommandHandler.java @@ -0,0 +1,60 @@ +package secondlife.network.paik.handlers; + +import java.util.ArrayList; +import java.util.List; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.ConsoleCommandSender; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.commands.KillauraCommand; +import secondlife.network.paik.commands.LogsCommand; +import secondlife.network.paik.commands.OCMCCommand; +import secondlife.network.paik.commands.PaikBanCommand; +import secondlife.network.paik.commands.PaikCommand; +import secondlife.network.paik.commands.PingCommand; +import secondlife.network.paik.commands.zBaseCommand; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.Message; + +public class CommandHandler extends Handler implements CommandExecutor { + + public static List commands; + + public CommandHandler(Paik plugin) { + super(plugin); + + commands = new ArrayList(); + + commands.add(new KillauraCommand(plugin)); + commands.add(new LogsCommand(plugin)); + commands.add(new OCMCCommand(plugin)); + commands.add(new PaikBanCommand(plugin)); + commands.add(new PaikCommand(plugin)); + commands.add(new PingCommand(plugin)); + + for (zBaseCommand command : commands) { + this.getInstance().getCommand(command.command).setExecutor(this); + } + } + + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + for (zBaseCommand command : commands) { + if (cmd.getName().equalsIgnoreCase(command.command)) { + if (((sender instanceof ConsoleCommandSender)) && (command.forPlayerUseOnly)) { + sender.sendMessage(Message.COMMANDS_FOR_PLAYER_USE_ONLY.toString()); + return true; + } + if ((!sender.hasPermission(command.permission)) && (!command.permission.equals(""))) { + sender.sendMessage(Message.COMMANDS_NO_PERMISSION_MESSAGE.toString()); + return true; + } + command.execute(sender, args); + return true; + } + } + return true; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/PacketHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/PacketHandler.java new file mode 100644 index 0000000..b235d52 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/PacketHandler.java @@ -0,0 +1,217 @@ +package secondlife.network.paik.handlers; + +import com.comphenix.protocol.PacketType; +import com.comphenix.protocol.events.ListenerPriority; +import com.comphenix.protocol.events.PacketAdapter; +import com.comphenix.protocol.events.PacketEvent; +import com.comphenix.protocol.wrappers.EnumWrappers; +import com.comphenix.protocol.wrappers.EnumWrappers.EntityUseAction; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import secondlife.network.paik.Paik; +import secondlife.network.paik.checks.combat.AutoBlock; +import secondlife.network.paik.checks.combat.Killaura; +import secondlife.network.paik.checks.combat.Reach; +import secondlife.network.paik.checks.movement.Inventory; +import secondlife.network.paik.checks.movement.Sneak; +import secondlife.network.paik.checks.movement.Timer; +import secondlife.network.paik.checks.other.*; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; + +public class PacketHandler extends PacketAdapter { + + public PacketHandler(Paik plugin) { + super(plugin, ListenerPriority.HIGH, new PacketType[] { + PacketType.Play.Client.USE_ENTITY, PacketType.Play.Client.KEEP_ALIVE, PacketType.Play.Client.CLOSE_WINDOW, + PacketType.Play.Client.CUSTOM_PAYLOAD, PacketType.Play.Client.BLOCK_PLACE, PacketType.Play.Client.BLOCK_DIG, + PacketType.Play.Client.LOOK, PacketType.Play.Client.POSITION_LOOK, PacketType.Play.Client.ARM_ANIMATION, + PacketType.Play.Client.POSITION, PacketType.Play.Client.FLYING, PacketType.Play.Client.WINDOW_CLICK, + PacketType.Play.Client.ENTITY_ACTION, + + PacketType.Play.Server.ENTITY_METADATA }); + } + + public void onPacketReceiving(PacketEvent event) { + Player player = event.getPlayer(); + if(player == null) return; + + PlayerStats stats = PlayerStatsHandler.getStats(player); + if(stats == null) return; + + PacketType PACKET_TYPE = event.getPacketType(); + + if(PACKET_TYPE == PacketType.Play.Client.ENTITY_ACTION) { + this.handleEntityActionPacket(player, stats, event); + } + + if(PACKET_TYPE == PacketType.Play.Client.USE_ENTITY) { + this.handleUseEntityPacket(player, stats, event); + } + + if(PACKET_TYPE == PacketType.Play.Client.KEEP_ALIVE) { + this.handleKeepAlivePacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.CLOSE_WINDOW) { + this.handleWindowClosePacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.CUSTOM_PAYLOAD) { + this.handleCustomPayloadPacket(player, stats, event); + } + + if(PACKET_TYPE == PacketType.Play.Client.BLOCK_PLACE) { + this.handleBlockPlacePacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.BLOCK_DIG) { + this.handleBlockDigPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.LOOK) { + this.handleLookAndPositionLookPacket(player, stats, event); + this.handlePositionLookPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.POSITION_LOOK) { + this.handleLookAndPositionLookPacket(player, stats, event); + this.handlePositionLookPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.POSITION) { + this.handlePositionPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.FLYING) { + this.handleFlyingPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.ARM_ANIMATION) { + this.handleArmAnimationPacket(player, stats); + } + + if(PACKET_TYPE == PacketType.Play.Client.WINDOW_CLICK) { + this.handleWindowClickPacket(player, stats, event); + } + } + + public void onPacketSending(PacketEvent event) { + Player player = event.getPlayer(); + if(player == null) return; + + PlayerStats stats = PlayerStatsHandler.getStats(player); + if(stats == null) return; + + PacketType PACKET_TYPE = event.getPacketType(); + + if(PACKET_TYPE == PacketType.Play.Server.ENTITY_METADATA) { + this.handleEntityMetadataPacket(player, event); + } + } + + public void handleWindowClosePacket(Player player, PlayerStats stats) { + Inventory.handleInventoryClose(player, stats); + } + + public void handleUseEntityPacket(Player player, PlayerStats stats, PacketEvent event) { + EnumWrappers.EntityUseAction type; + try { + type = event.getPacket().getEntityUseActions().read(0); + } catch (Exception ex) { + return; + } + + if(type != EntityUseAction.ATTACK) return; + + int entityID = event.getPacket().getIntegers().read(0); + + stats.setLastUseEntityPacket(System.currentTimeMillis()); + + Reach.handleReachCheck(player, stats, entityID); + Killaura.handleKillauraBotCheck(player, entityID); + + Entity hit = null; + + if(player.getWorld().getEntities().size() > 0) { + for(Entity entity : player.getWorld().getEntities()) { + if(entity.getEntityId() == entityID) { + hit = entity; + } + } + } + + if(hit == null) return; + + stats.setLastEntity(hit); + } + + public void handleKeepAlivePacket(Player player, PlayerStats stats) { + PingSpoof.handlePingSpoof(player, stats); + } + + public void handleCustomPayloadPacket(Player player, PlayerStats stats, PacketEvent event) { + String message = event.getPacket().getStrings().read(0); + + CustomPayload.handleCustomPayload(player, stats, message); + } + + public void handleBlockPlacePacket(Player player, PlayerStats stats) { + stats.setLastBlockPlacePacket(System.currentTimeMillis()); + stats.setAutoblock2(stats.getAutoblock2() + 1); + + AutoBlock.handleAutoBlockPlace(player, stats); + Crash.handleBlockPlaceCrash(player, stats); + } + + public void handleBlockDigPacket(Player player, PlayerStats stats) { + stats.setLastBlockDigPacket(System.currentTimeMillis()); + stats.setAutoblock2(stats.getAutoblock2() + 1); + + AutoBlock.handleAutoBlockDig(player, stats); + AutoBlock.handleAutoBlock(player, stats); + } + + public void handleLookAndPositionLookPacket(Player player, PlayerStats stats, PacketEvent event) { + float yaw = event.getPacket().getFloat().read(0); + float pitch = event.getPacket().getFloat().read(1); + + ImpossiblePitch.handleImpossiblePitch(player, stats, pitch); + Killaura.handleKillauraAngle(player, stats, yaw, pitch); + } + + public void handlePositionLookPacket(Player player, PlayerStats stats) { + Timer.handleTimerPositionLook(player, stats); + } + + public void handlePositionPacket(Player player, PlayerStats stats) { + stats.setMorePackets(stats.getMorePackets() + 1); + + Timer.handleTimerPosition(player, stats); + } + + public void handleFlyingPacket(Player player, PlayerStats stats) { + Timer.handleTimerFlying(player, stats); + } + + public void handleArmAnimationPacket(Player player, PlayerStats stats) { + Crash.handleAnimationCrash(player, stats); + Killaura.handleKillauraWall(player, stats); + } + + public void handleWindowClickPacket(Player player, PlayerStats stats, PacketEvent event) { + Refill.handleRefill(player, stats, event); + } + + public void handleEntityActionPacket(Player player, PlayerStats stats, PacketEvent event) { + int actionId = event.getPacket().getIntegers().read(1); + + if(actionId == 1 || actionId == 2) { + Sneak.handleSneak(player, stats); + } + } + + public void handleEntityMetadataPacket(Player player, PacketEvent event) { + Nametags.handleHealthRandomizer(player, event); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/PlayerHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/PlayerHandler.java new file mode 100644 index 0000000..cd97a44 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/PlayerHandler.java @@ -0,0 +1,180 @@ +package secondlife.network.paik.handlers; + +import org.bukkit.Achievement; +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Arrow; +import org.bukkit.entity.EntityType; +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.*; +import org.bukkit.event.inventory.InventoryOpenEvent; +import org.bukkit.event.player.*; +import secondlife.network.paik.Paik; +import secondlife.network.paik.checks.combat.*; +import secondlife.network.paik.checks.movement.GroundSpoof; +import secondlife.network.paik.checks.movement.Inventory; +import secondlife.network.paik.checks.movement.NoSlowdown; +import secondlife.network.paik.checks.movement.Speed; +import secondlife.network.paik.checks.movement.fly.FlyA; +import secondlife.network.paik.checks.movement.fly.FlyB; +import secondlife.network.paik.checks.other.InvalidInteract; +import secondlife.network.paik.handlers.data.PlayerStats; +import secondlife.network.paik.handlers.data.PlayerStatsHandler; +import secondlife.network.paik.handlers.events.PlayerMoveByBlockEvent; +import secondlife.network.paik.utils.Handler; +import secondlife.network.paik.utils.ServerUtils; + +public class PlayerHandler extends Handler implements Listener { + + public PlayerHandler(Paik plugin) { + super(plugin); + + Bukkit.getPluginManager().registerEvents(this, plugin); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + Action action = event.getAction(); + + AutoClicker.handleAutoClickInteract(player, stats, action); + FastBow.handleFastBowInteract(player, stats); + InvalidInteract.handleInvalidInteract(player, stats, action); + } + + @EventHandler + public void onEntityShootBow(EntityShootBowEvent event) { + if(event.isCancelled()) return; + if(!(event.getEntity() instanceof Player)) return; + + Arrow arrow = (Arrow) event.getProjectile(); + Player player = (Player) arrow.getShooter(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + double power = arrow.getVelocity().length(); + + FastBow.handleFastBowShoot(player, stats, power); + NoSlowdown.handleNoSlowdownShooting(player, stats); + } + @EventHandler + public void onPlayerItemConsume(PlayerItemConsumeEvent event) { + if(event.isCancelled()) return; + + Player player = event.getPlayer(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + FastEat.handleFastEat(player, stats); + NoSlowdown.handleNoSlowdownEating(player, stats); + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(!(event.getDamager() instanceof Player)) return; + + Player player = (Player) event.getDamager(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + Killaura.handleKillaura(player, stats); + } + + @EventHandler + public void onEntityRegainHealth(EntityRegainHealthEvent event) { + if(event.isCancelled() + || event.getEntityType() != EntityType.PLAYER + || event.getRegainReason() != EntityRegainHealthEvent.RegainReason.SATIATED) + return; + + Player player = (Player) event.getEntity(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + Regen.handleRegen(player, stats); + } + + @EventHandler + public void onPlayerMoveByBlockEvent(PlayerMoveByBlockEvent event) { + Player player = event.getPlayer(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + FlyA.handleFly(player, stats, event); + FlyB.handleFly(player, stats, event); + GroundSpoof.handleGroundSpoof(player, stats, event); + Inventory.handleInventoryMove(player, stats, event); + Speed.handleSpeed(player, stats, event); + } + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + + if(!player.hasAchievement(Achievement.OPEN_INVENTORY)) return; + + player.removeAchievement(Achievement.OPEN_INVENTORY); + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + PlayerStats stats = PlayerStatsHandler.getStats(event.getEntity()); + + stats.setInventoryOpen(false); + } + + @EventHandler + public void onPlayerAchievementAwarded(PlayerAchievementAwardedEvent event) { + if(event.getAchievement() != Achievement.OPEN_INVENTORY) return; + + event.setCancelled(true); + + Player player = event.getPlayer(); + + if(ServerUtils.isServerLagging() + || player.getGameMode() == GameMode.CREATIVE + || player.getAllowFlight()) + return; + + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setInventoryOpen(true); + + Killaura.teleportBot(player); + } + + @EventHandler + public void onInventoryOpen(InventoryOpenEvent event) { + Player player = (Player) event.getPlayer(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + stats.setInventoryOpen(true); + } + + @EventHandler + public void onPlayerWorldChange(PlayerChangedWorldEvent event) { + PlayerStats stats = PlayerStatsHandler.getStats(event.getPlayer()); + + stats.setInventoryOpen(false); + } + + @EventHandler + public void onPlayerTeleport(PlayerTeleportEvent event) { + if(event.getCause() == PlayerTeleportEvent.TeleportCause.ENDER_PEARL) return; + + PlayerStats stats = PlayerStatsHandler.getStats(event.getPlayer()); + + stats.setInventoryOpen(false); + } + + @EventHandler + public void onPotionSplash(PotionSplashEvent event) { + if(event.isCancelled()) return; + if(!(event.getEntity() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + PlayerStats stats = PlayerStatsHandler.getStats(player); + + Inventory.handleAutoPotion(player, stats); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStats.java b/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStats.java new file mode 100644 index 0000000..cbb0293 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStats.java @@ -0,0 +1,119 @@ +package secondlife.network.paik.handlers.data; + +import java.util.ArrayList; +import java.util.UUID; + +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class PlayerStats { + + private UUID uuid; + + private ArrayList logs = new ArrayList(); + + private Entity lastEntity; + + private int leftClickCPS = 0; + private int autoclickerVL = 0; + private int constantCPS = 0; + private int doubleclick = 0; + + private long click1 = 0; + private long click2 = 0; + + private int regenVL = 0; + + private long bowVL = 0; + private long pull; + + private int swingAngle = 0; + private int botHits = 0; + private int hits = 0; + private long lastUseEntityPacket; + private int hitsInvalidPacket = 0; + private int hitsWhileDead = 0; + private int noSwingDamageVL = 0; + + private int reachVL; + private double delta; + + private long lastRegen; + + private int flyAVL = 0; + private int flyBVL = 0; + + private int fastEatVL = 0; + private long lastEat; + + private boolean inventoryOpen = false; + private int movesWhileInventoryClosed = 0; + private int hitsWhileInventoryOpen = 0; + private int potionsSplashedWhileInventoryOpen = 0; + + private int nofallVL = 0; + + private int noslowFoodVl = 0; + private int noslowBowVl = 0; + + private long sneak1; + private long sneak2; + private int sneakVL = 0; + + private int speedVL = 0; + private int speedJumpVL = 0; + private int speedOtherVL = 0; + private int speedSlowhopVL = 0; + private int speedFast = 0; + + private int morePackets = 0; + private int flyingPackets = 0; + private int positionPackets = 0; + private int positionLookPackets = 0; + private int timerAVL = 0; + private int timerBVL = 0; + private int timerCVL = 0; + + private int boxer1 = 0; + private int boxer2 = 0; + + private int lastPing; + private int pingSpoof = 0; + + private long lastClick; + private int refill; + private int refillOther; + private int lastSlot; + + private int autoblock = 0; + private int autoblock2 = 0; + + private float lastYaw; + private float lastPitch; + private int angle; + + private int invalidInteract = 0; + + private long joined; + private long lastBlockPlace; + private long lastBlockBreak; + private long lastBlockPlacePacket; + private long lastArmPacket = 0; + private long lastBlockPacket = 0; + private long lastBlockDigPacket = 0; + + private int vl = 0; + + private boolean ocmc = false; + private boolean banned = false; + + + public PlayerStats(Player player) { + this.uuid = player.getUniqueId(); + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStatsHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStatsHandler.java new file mode 100644 index 0000000..87ee9e3 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/data/PlayerStatsHandler.java @@ -0,0 +1,57 @@ +package secondlife.network.paik.handlers.data; + +import java.util.HashMap; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerQuitEvent; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Handler; + +public class PlayerStatsHandler extends Handler implements Listener { + + public static HashMap statsMap; + + public PlayerStatsHandler(Paik plugin) { + super(plugin); + + statsMap = new HashMap(); + + for(Player player : Bukkit.getOnlinePlayers()) { + addStats(player); + } + + Bukkit.getPluginManager().registerEvents(this, plugin); + } + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + + addStats(player); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + Player player = event.getPlayer(); + + destroyStats(player); + } + + public static void addStats(Player player) { + statsMap.put(player.getUniqueId(), new PlayerStats(player)); + } + + public static void destroyStats(Player player) { + statsMap.remove(player.getUniqueId()); + } + + public static PlayerStats getStats(Player player) { + return statsMap.get(player.getUniqueId()); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/events/PlayerMoveByBlockEvent.java b/(OLD) Paik/src/secondlife/network/paik/handlers/events/PlayerMoveByBlockEvent.java new file mode 100644 index 0000000..3b8cf4e --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/events/PlayerMoveByBlockEvent.java @@ -0,0 +1,36 @@ +package secondlife.network.paik.handlers.events; + +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.Event; +import org.bukkit.event.HandlerList; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class PlayerMoveByBlockEvent extends Event { + + private Player player; + private Location to; + private Location from; + + private boolean cancelled; + + public PlayerMoveByBlockEvent(Player player, Location to, Location from) { + this.player = player; + this.to = to; + this.from = from; + } + + private static final HandlerList handlers = new HandlerList(); + + public HandlerList getHandlers() { + return handlers; + } + + public static HandlerList getHandlerList() { + return handlers; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/BookExploitHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/BookExploitHandler.java new file mode 100644 index 0000000..608db3f --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/BookExploitHandler.java @@ -0,0 +1,52 @@ +package secondlife.network.paik.handlers.fixes; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerEditBookEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Handler; + +public class BookExploitHandler extends Handler implements Listener { + + public BookExploitHandler(Paik plugin) { + super(plugin); + + Bukkit.getPluginManager().registerEvents(this, plugin); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + ItemStack item = player.getItemInHand(); + + if(item == null) return; + if((item.getType() != Material.BOOK_AND_QUILL) && (item.getType() != Material.WRITTEN_BOOK)) return; + + if(item.getEnchantments().size() > 0) { + for(Enchantment enchant : item.getEnchantments().keySet()) { + item.removeEnchantment(enchant); + } + + event.setCancelled(true); + player.getInventory().removeItem(new ItemStack[] { item }); + } + } + + @EventHandler + public void onPlayerEditBook(PlayerEditBookEvent event) { + if (event.getNewBookMeta().getEnchants().size() > 0) { + event.setCancelled(true); + + Player player = event.getPlayer(); + + player.getInventory().remove(Material.BOOK_AND_QUILL); + } + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/FenceGlitchHandler.java b/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/FenceGlitchHandler.java new file mode 100644 index 0000000..b86a2f0 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/handlers/fixes/FenceGlitchHandler.java @@ -0,0 +1,63 @@ +package secondlife.network.paik.handlers.fixes; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; + +import secondlife.network.paik.Paik; +import secondlife.network.paik.utils.Handler; + +public class FenceGlitchHandler extends Handler implements Listener { + + public static Material[] materials; + + public FenceGlitchHandler(Paik plugin) { + super(plugin); + + materials = new Material[] { + Material.POTION, + Material.GOLDEN_APPLE, + Material.DIAMOND_SWORD, + Material.GOLD_SWORD, + Material.IRON_SWORD, + Material.STONE_SWORD, + Material.WOOD_SWORD, + Material.COOKED_BEEF, + Material.RAW_BEEF, + Material.COOKED_CHICKEN, + Material.RAW_CHICKEN, + Material.BAKED_POTATO, + Material.GOLDEN_CARROT, + Material.PORK, + Material.GRILLED_PORK, + Material.PUMPKIN_PIE, + Material.BOW }; + + Bukkit.getPluginManager().registerEvents(this, plugin); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + if(event.isCancelled()) return; + + Player player = event.getPlayer(); + ItemStack item = player.getItemInHand(); + + if(item == null) return; + + Block block = event.getClickedBlock(); + + if(block.getType() == Material.FENCE || block.getType() == Material.NETHER_FENCE || block.getType() == Material.CAULDRON) { + for(Material material : materials) { + if(item.getType() == material) { + event.setCancelled(true); + } + } + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/CheatUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/CheatUtils.java new file mode 100644 index 0000000..e61ccc5 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/CheatUtils.java @@ -0,0 +1,260 @@ +package secondlife.network.paik.utils; + +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.block.BlockFace; +import org.bukkit.entity.Player; + +import java.util.ArrayList; +import java.util.Random; + +public class CheatUtils { + + public static int random(int min, int max) { + Random rand = new Random(); + int randomNum = rand.nextInt(max - min + 1) + min; + return randomNum; + } + + public static boolean isOnIce(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() - 1.0); + + if(location.getBlock().getType() == Material.ICE && location.subtract(0, 1, 0).getBlock().getType() == Material.ICE) { + return true; + } + + if(location.getBlock().getType() == Material.PACKED_ICE && location.subtract(0, 1, 0).getBlock().getType() == Material.PACKED_ICE) { + return true; + } + + return false; + } + + public static boolean isOnSolidBlock(Player player) { + + Location location = player.getLocation(); + + if(location.getBlock().getType().isSolid()) { + return true; + } + + location.setY(location.getY() - 1.0); + + if(location.getBlock().getType().isSolid()) { + return true; + } + return false; + } + + public static boolean isOnSnow(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() - 0.1); + + if(location.getBlock().getType() == Material.SNOW) { + return true; + } + return false; + } + + public static boolean isInAir(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() - 1); + + if(location.getBlock().getType() == Material.AIR && location.subtract(0, 1, 0).getBlock().getType() == Material.AIR) { + return true; + } + return false; + } + + public static boolean isOnHalfBlocks(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() - 0.5); + + if(location.getBlock().getType() == Material.STEP + || location.getBlock().getType() == Material.WOOD_STEP + || location.getBlock().getType() == Material.TRAP_DOOR + || location.getBlock().getType() == Material.DAYLIGHT_DETECTOR + || location.getBlock().getType() == Material.SNOW) { + return true; + } + return false; + } + + public static 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; + } + } + + public static boolean isInLiquid(Player player) { + + Location location = player.getLocation(); + + if(location.getBlock().getType() == Material.WATER + || location.getBlock().getType() == Material.STATIONARY_WATER + || location.getBlock().getType() == Material.LAVA + || location.getBlock().getType() == Material.STATIONARY_LAVA) { + return true; + } + return false; + } + + public static boolean isOnSolidBlocks(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() - 1); + + if(location.getBlock().getType() == Material.ACACIA_STAIRS || location.getBlock().getType() == Material.BIRCH_WOOD_STAIRS + || location.getBlock().getType() == Material.BRICK_STAIRS || location.getBlock().getType() == Material.COBBLESTONE_STAIRS + || location.getBlock().getType() == Material.DARK_OAK_STAIRS || location.getBlock().getType() == Material.JUNGLE_WOOD_STAIRS + || location.getBlock().getType() == Material.NETHER_BRICK_STAIRS || location.getBlock().getType() == Material.QUARTZ_STAIRS + || location.getBlock().getType() == Material.SANDSTONE_STAIRS || location.getBlock().getType() == Material.SMOOTH_STAIRS + || location.getBlock().getType() == Material.SPRUCE_WOOD_STAIRS || location.getBlock().getType() == Material.WOOD_STAIRS + || location.getBlock().getType() == Material.CHEST || location.getBlock().getType() == Material.TRAPPED_CHEST + || location.getBlock().getType() == Material.FENCE || location.getBlock().getType() == Material.IRON_FENCE + || location.getBlock().getType() == Material.NETHER_FENCE || location.getBlock().getType() == Material.FENCE_GATE + || location.getBlock().getType() == Material.SIGN_POST || location.getBlock().getType() == Material.WALL_SIGN + || location.getBlock().getType() == Material.COBBLE_WALL || location.getBlock().getType() == Material.ENCHANTMENT_TABLE + || location.getBlock().getType() == Material.ENDER_PORTAL_FRAME || location.getBlock().getType() == Material.ENDER_CHEST + || location.getBlock().getType() == Material.BREWING_STAND || location.getBlock().getType() == Material.CAULDRON + || location.getBlock().getType() == Material.HOPPER || location.getBlock().getType() == Material.ANVIL + || location.getBlock().getType() == Material.BED_BLOCK || location.getBlock().getType() == Material.SOUL_SAND + || location.getBlock().getType() == Material.STAINED_GLASS_PANE || location.getBlock().getType() == Material.THIN_GLASS + || location.getBlock().getType() == Material.CACTUS || location.getBlock().getType() == Material.DRAGON_EGG + || location.getBlock().getType() == Material.WEB) { + return false; + } + return true; + } + + public static boolean isUnderBlock(Player player) { + + Location location = player.getLocation(); + location.setY(location.getY() + 2.0); + + if (location.getBlock().getType() != Material.AIR) { + return true; + } + return false; + } + + public static boolean blocksNear(Player player) { + return blocksNear(player.getLocation()); + } + + public static boolean blocksNear(Location location) { + + boolean nearBlocks = false; + + for (Block block : getSurrounding(location.getBlock(), true)) { + if (block.getType() != Material.AIR) { + nearBlocks = true; + break; + } + } + + for (Block block : getSurrounding(location.getBlock(), false)) { + if (block.getType() != Material.AIR) { + nearBlocks = true; + break; + } + } + + location.setY(location.getY() - 0.5D); + + if (location.getBlock().getType() != Material.AIR) { + nearBlocks = true; + } + + if (isBlock(location.getBlock().getRelative(BlockFace.DOWN), new Material[] { Material.FENCE, Material.FENCE_GATE, Material.COBBLE_WALL, Material.LADDER })) { + nearBlocks = true; + } + + return nearBlocks; + } + + public static ArrayList getSurrounding(Block block, boolean diagonals) { + ArrayList blocks = new ArrayList(); + if (diagonals) { + for (int x = -1; x <= 1; x++) { + for (int y = -1; y <= 1; y++) { + for (int z = -1; z <= 1; z++) { + if ((x != 0) || (y != 0) || (z != 0)) { + blocks.add(block.getRelative(x, y, z)); + } + } + } + } + } else { + blocks.add(block.getRelative(BlockFace.UP)); + blocks.add(block.getRelative(BlockFace.DOWN)); + blocks.add(block.getRelative(BlockFace.NORTH)); + blocks.add(block.getRelative(BlockFace.SOUTH)); + blocks.add(block.getRelative(BlockFace.EAST)); + blocks.add(block.getRelative(BlockFace.WEST)); + } + return blocks; + } + + public static ArrayList getSurroundingXZ(Block block) { + ArrayList blocks = new ArrayList(); + blocks.add(block.getRelative(BlockFace.NORTH)); + blocks.add(block.getRelative(BlockFace.NORTH_EAST)); + blocks.add(block.getRelative(BlockFace.NORTH_WEST)); + blocks.add(block.getRelative(BlockFace.SOUTH)); + blocks.add(block.getRelative(BlockFace.SOUTH_EAST)); + blocks.add(block.getRelative(BlockFace.SOUTH_WEST)); + blocks.add(block.getRelative(BlockFace.EAST)); + blocks.add(block.getRelative(BlockFace.WEST)); + return blocks; + } + + public static boolean isBlock(Block block, Material[] materials) { + Material type = block.getType(); + for (Material m : materials) { + if (m == type) { + return true; + } + } + return false; + } + + public static double getHorizontalDistance(Location to, Location from) { + double x = Math.abs(Math.abs(to.getX()) - Math.abs(from.getX())); + double z = Math.abs(Math.abs(to.getZ()) - Math.abs(from.getZ())); + + return Math.sqrt(x * x + z * z); + } + + public static double getYDifference(Location to, Location from) { + return Math.abs(to.getY() - from.getY()); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/Color.java b/(OLD) Paik/src/secondlife/network/paik/utils/Color.java new file mode 100644 index 0000000..c16360a --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/Color.java @@ -0,0 +1,10 @@ +package secondlife.network.paik.utils; + +import org.bukkit.ChatColor; + +public class Color { + + public static String translate(String text) { + return ChatColor.translateAlternateColorCodes('&', text); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/DirectoryUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/DirectoryUtils.java new file mode 100644 index 0000000..659e213 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/DirectoryUtils.java @@ -0,0 +1,19 @@ +package secondlife.network.paik.utils; + +import java.io.File; + +import secondlife.network.paik.Paik; + +public class DirectoryUtils { + + public static void registerDirectory() { + if(!Paik.getInstance().getDataFolder().exists()) { + Paik.getInstance().getDataFolder().mkdir(); + } + + File logs = new File(Paik.getInstance().getDataFolder(), "logs"); + if(!logs.exists()) { + logs.mkdir(); + } + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/Handler.java b/(OLD) Paik/src/secondlife/network/paik/utils/Handler.java new file mode 100644 index 0000000..d9f7e03 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/Handler.java @@ -0,0 +1,13 @@ +package secondlife.network.paik.utils; + +import lombok.Getter; +import secondlife.network.paik.Paik; + +public class Handler { + + @Getter private Paik instance; + + public Handler(Paik instance) { + this.instance = instance; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/LocationUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/LocationUtils.java new file mode 100644 index 0000000..d3fe5e3 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/LocationUtils.java @@ -0,0 +1,10 @@ +package secondlife.network.paik.utils; + +import org.bukkit.entity.Player; + +public class LocationUtils { + + public static String getLocation(Player player) { + return player.getWorld().getName() + ", " + player.getLocation().getBlockX() + ", " + player.getLocation().getBlockY() + ", " + player.getLocation().getBlockZ(); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/Message.java b/(OLD) Paik/src/secondlife/network/paik/utils/Message.java new file mode 100644 index 0000000..63ed349 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/Message.java @@ -0,0 +1,25 @@ +package secondlife.network.paik.utils; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; + +@SuppressWarnings("deprecation") +public class Message { + + public static String COMMANDS_FOR_PLAYER_USE_ONLY = Color.translate("&cSorry. For Player use only!"); + public static String COMMANDS_NO_PERMISSION_MESSAGE = Color.translate("&cNo Permission!"); + + public static void sendMessage(String message) { + for(Player online : Bukkit.getOnlinePlayers()) { + online.sendMessage(message); + } + } + + public static void sendMessage(String message, String permission) { + for(Player online : Bukkit.getOnlinePlayers()) { + if(online.hasPermission(permission)) { + online.sendMessage(message); + } + } + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/PasteUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/PasteUtils.java new file mode 100644 index 0000000..0c0823b --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/PasteUtils.java @@ -0,0 +1,582 @@ +package secondlife.network.paik.utils; + +import java.io.BufferedReader; +import java.io.DataOutputStream; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; +import java.util.HashMap; +import java.util.Map; + +public class PasteUtils { + + private final static String POST_URL = "http://pastebin.com/api/api_post.php"; + private final static String USER_AGENT = "Mozilla/5.0"; + private static String developer_key = "Set your key there!"; + + private String code = ""; + private String fileName = ""; + private Expire expire; + private Visibility visibility; + private Language language; + + /** + * Create new paste + * + * @param code + * Text inside the paste + * @param fileName + * Paste text + * @param visibility + * Paste visibility + * @param expire + * Paste expire time + * @param language + * Paste language + */ + public PasteUtils(String code, String fileName, Visibility visibility, Expire expire, Language language) { + this.code = code; + this.fileName = fileName; + this.visibility = visibility; + this.expire = expire; + this.language = language; + } + + /** + * Upload the paste with all info into pastebin.com + * + * @return {@link PasteResult} + * @throws IOException + * @see {@link PasteResult} + */ + public PasteResult upload() throws IOException { + String response = ""; + URL url = new URL(POST_URL); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + + conn.setRequestMethod("POST"); + conn.setRequestProperty("User-Agent", USER_AGENT); + conn.setRequestProperty("Accept-Language", "en-US,en;q=0.5"); + + conn.setDoOutput(true); + DataOutputStream wr = new DataOutputStream(conn.getOutputStream()); + wr.writeBytes(getURLParameters()); + wr.flush(); + wr.close(); + + BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream())); + String line; + while ((line = in.readLine()) != null) { + response += line; + } + in.close(); + if (response.contains("pastebin.com")) { + return new PasteResult("", response, true); + } + return new PasteResult(response, "", false); + } + + /** + * Get final url parameters + * + *
+ * + * POST URL: + * http://pastebin.com/api/api_post.php?{@link Paste#getURLParameters()} + * + * @return + */ + public String getURLParameters() { + String param = "api_option=paste" + "&api_dev_key=" + developer_key + "" + "&api_paste_private=" + visibility.id + + "" + "&api_paste_name=" + fileName + "" + "&api_paste_format=" + language.apiName + "" + + "&api_paste_code=" + code; + + if (expire != Expire.NEVER) { + param += "&api_expire_date=" + expire.apiName; + } + + return param; + } + + /** + * Set paste format + * + * @return + */ + public Language getLanguage() { + return language; + } + + /** + * Set paste format + * + * @param language + */ + public void setLanguage(Language language) { + this.language = language; + } + + /** + * Set visibility + * + * @return + */ + public Visibility getVisibility() { + return visibility; + } + + /** + * Set visibility + * + * @param visibility + */ + public void setVisibility(Visibility visibility) { + this.visibility = visibility; + } + + /** + * Get expire time + * + * @return + */ + public Expire getExpire() { + return expire; + } + + /** + * Set expire time + * + * @param expire + */ + public void setExpire(Expire expire) { + this.expire = expire; + } + + /** + * Get the paste name + * + * @return + */ + public String getFileName() { + return fileName; + } + + /** + * Set the paste name + * + * @param fileName + */ + public void setFileName(String fileName) { + this.fileName = fileName; + } + + /** + * Get the paste + * + * @return + */ + public String getCode() { + return code; + } + + /** + * Set the text in your paste + * + *
+ * + * Use: \n for line break + * + * @param code + */ + public void setCode(String code) { + this.code = code; + } + + /** + * Set the text in your paste + * + * @param code + * File to paste + * @throws IOException + */ + public void setCode(File code) throws IOException { + BufferedReader reader = new BufferedReader(new FileReader(code)); + String ln; + while ((ln = reader.readLine()) != null) { + this.code += ln + "\n"; + } + reader.close(); + } + + /** + * Set your static developer key + * + * @param developerKey + * Developer key generated there: http://pastebin.com/api (You + * have to login and then copy the text on "Your Unique Developer + * API Key") + */ + public static void setDeveloperKey(String developerKey) { + developer_key = developerKey; + } + + /** + * Paste Language + * + * @author rodel77 + */ + public enum Language { + CS("4cs"), ACME("6502acme"), KICKASS("6502kickass"), TASM("6502tasm"), ABAP("abap"), ACTIONSCRIPT( + "actionscript"), ACTIONSCRIPT3("actionscript3"), ADA("ada"), AIMMS("aimms"), ALGOL68("algol68"), APACHE( + "apache"), APPLESCRIPT("applescript"), APT_SOURCES("apt_sources"), ARM("arm"), ASM("asm"), ASP( + "asp"), ASYMPTOTE("asymptote"), AUTOCONF("autoconf"), AUTOHOTKEY("autohotkey"), AUTOIT( + "autoit"), AVISYNTH("avisynth"), AWK("awk"), BASCOMAVR("bascomavr"), BASH( + "bash"), BASIC4GL("basic4gl"), DOS("dos"), BIBTEX("bibtex"), BLITZBASIC( + "blitzbasic"), B3D("b3d"), BMX("bmx"), BNF("bnf"), BOO( + "boo"), BF("bf"), C("c"), C_WINAPI("c_winapi"), C_MAC( + "c_mac"), CIL("cil"), CSHARP("csharp"), CPP( + "cpp"), CPPWINAPI("cpp-winapi"), CPPQT( + "cpp-qt"), C_LOADRUNNER( + "c_loadrunner"), CADDCL( + "caddcl"), CADLISP( + "cadlisp"), CEYLON( + "ceylon"), CFDG( + "cfdg"), CHAISCRIPT( + "chaiscript"), CHAPEL( + "chapel"), CLOJURE( + "clojure"), KLONEC( + "klonec"), KLONECPP( + "klonecpp"), CMAKE( + "cmake"), COBOL( + "cobol"), COFFEESCRIPT( + "coffeescript"), CFM( + "cfm"), CSS( + "css"), CUESHEET( + "cuesheet"), D( + "d"), DART( + "dart"), DCL( + "dcl"), DCPU16( + "dcpu16"), DCS( + "dcs"), DELPHI( + "delphi"), OXYGENE( + "oxygene"), DIFF( + "diff"), DIV( + "div"), DOT( + "dot"), E( + "e"), EZT( + "ezt"), ECMASCRIPT( + "ecmascript"), EIFFEL( + "eiffel"), EMAIL( + "email"), EPC( + "epc"), ERLANG( + "erlang"), EUPHORIA( + "euphoria"), FSHARP( + "fsharp"), FALCON( + "falcon"), FILEMAKER( + "filemaker"), FO( + "fo"), F1( + "f1"), FORTRAN( + "fortran"), FREEBASIC( + "freebasic"), FREESWITCH( + "freeswitch"), GAMBAS( + "gambas"), GML( + "gml"), GDB( + "gdb"), GENERO( + "genero"), GENIE( + "genie"), GETTEXT( + "gettext"), GO( + "go"), GROOVY( + "groovy"), GWBASIC( + "gwbasic"), HASKELL( + "haskell"), HAXE( + "haxe"), HICEST( + "hicest"), HQ9PLUS( + "hq9plus"), HTML4STRICT( + "html4strict"), HTML5( + "html5"), ICON( + "icon"), IDL( + "idl"), INI( + "ini"), INNO( + "inno"), INTERCAL( + "intercal"), IO( + "io"), ISPFPANEL( + "ispfpanel"), J( + "j"), JAVA( + "java"), JAVA5( + "java5"), JAVASCRIPT( + "javascript"), JCL( + "jcl"), JQUERY( + "jquery"), JSON( + "json"), JULIA( + "julia"), KIXTART( + "kixtart"), KOTLIN( + "kotlin"), LATEX( + "latex"), LDIF( + "ldif"), LB( + "lb"), LSL2( + "lsl2"), LISP( + "lisp"), LLVM( + "llvm"), LOCOBASIC( + "locobasic"), LOGTALK( + "logtalk"), LOLCODE( + "lolcode"), LOTUSFORMULAS( + "lotusformulas"), LOTUSSCRIPT( + "lotusscript"), LSCRIPT( + "lscript"), LUA( + "lua"), M68K( + "m68k"), MAGIKSF( + "magiksf"), MAKE( + "make"), MAPBASIC( + "mapbasic"), MARKDOWN( + "markdown"), MATLAB( + "matlab"), MIRC( + "mirc"), MMIX( + "mmix"), MODULA2( + "modula2"), MODULA3( + "modula3"), EVPAC( + "68000devpac"), MPASM( + "mpasm"), MXML( + "mxml"), MYSQL( + "mysql"), NAGIOS( + "nagios"), NETREXX( + "netrexx"), NEWLISP( + "newlisp"), NGINX( + "nginx"), NIMROD( + "nimrod"), TEXT( + "text"), NSIS( + "nsis"), OBERON2( + "oberon2"), OBJECK( + "objeck"), OBJC( + "objc"), OCAMLBRIEF( + "ocaml-brief"), OCAML( + "ocaml"), OCTAVE( + "octave"), OOREXX( + "oorexx"), PF( + "pf"), GLSL( + "glsl"), OOBAS( + "oobas"), ORACLE11( + "oracle11"), ORACLE8( + "oracle8"), OZ( + "oz"), PARASAIL( + "parasail"), PARIGP( + "parigp"), PASCAL( + "pascal"), PAWN( + "pawn"), PCRE( + "pcre"), PER( + "per"), PERL( + "perl"), PERL6( + "perl6"), PHP( + "php"), PHPBRIEF( + "php-brief"), PIC16( + "pic16"), PIKE( + "pike"), PIXELBENDER( + "pixelbender"), PLI( + "pli"), PLSQL( + "plsql"), POSTGRESQL( + "postgresql"), POSTSCRIPT( + "postscript"), POVRAY( + "povray"), POWERSHELL( + "powershell"), POWERBUILDER( + "powerbuilder"), PROFTPD( + "proftpd"), PROGRESS( + "progress"), PROLOG( + "prolog"), PROPERTIES( + "properties"), PROVIDEX( + "providex"), PUPPET( + "puppet"), PUREBASIC( + "purebasic"), PYCON( + "pycon"), PYTHON( + "python"), PYS60( + "pys60"), Q( + "q"), QBASIC( + "qbasic"), QML( + "qml"), RSPLUS( + "rsplus"), RACKET( + "racket"), RAILS( + "rails"), RBS( + "rbs"), REBOL( + "rebol"), REG( + "reg"), REXX( + "rexx"), ROBOTS( + "robots"), RPMSPEC( + "rpmspec"), RUBY( + "ruby"), GNUPLOT( + "gnuplot"), RUST( + "rust"), SAS( + "sas"), SCALA( + "scala"), SCHEME( + "scheme"), SCILAB( + "scilab"), SCL( + "scl"), SDLBASIC( + "sdlbasic"), SMALLTALK( + "smalltalk"), SMARTY( + "smarty"), SPARK( + "spark"), SPARQL( + "sparql"), SQF( + "sqf"), SQL( + "sql"), STANDARDML( + "standardml"), STONESCRIPT( + "stonescript"), SCLANG( + "sclang"), SWIFT( + "swift"), SYSTEMVERILOG( + "systemverilog"), TSQL( + "tsql"), TCL( + "tcl"), TERATERM( + "teraterm"), THINBASIC( + "thinbasic"), TYPOSCRIPT( + "typoscript"), UNICON( + "unicon"), USCRIPT( + "uscript"), UPC( + "upc"), URBI( + "urbi"), VALA( + "vala"), VBNET( + "vbnet"), VBSCRIPT( + "vbscript"), VEDIT( + "vedit"), VERILOG( + "verilog"), VHDL( + "vhdl"), VIM( + "vim"), VISUALPROLOG( + "visualprolog"), VB( + "vb"), VISUALFOXPRO( + "visualfoxpro"), WHITESPACE( + "whitespace"), WHOIS( + "whois"), WINBATCH( + "winbatch"), XBASIC( + "xbasic"), XML( + "xml"), XORG_CONF( + "xorg_conf"), XPP( + "xpp"), YAML( + "yaml"), Z80( + "z80"), ZXBASIC( + "zxbasic"); + + private String apiName; + + private Language(String apiName) { + this.apiName = apiName; + } + + public String getAPIName() { + return apiName; + } + } + + /** + * Paste Visibility + * + * @author rodel77 + */ + public enum Visibility { + PUBLIC(0), UNLISTED(1), PRIVATE(2); + + private int id; + + private Visibility(int id) { + this.id = id; + } + + public int getID() { + return id; + } + } + + /** + * Paste expire + * + * @author rodel77 + */ + public enum Expire { + NEVER("N"), TEN_MINUTES("10M"), ONE_HOUR("1H"), ONE_DAY("1D"), ONE_WEEK("1W"), TWO_WEEKS("2W"), ONE_MONTH("1M"); + + private String apiName; + + private Expire(String apiName) { + this.apiName = apiName; + } + + public String getAPIName() { + return apiName; + } + } + + /** + * Paste Result + * + * @author rodel77 + */ + public class PasteResult { + private String errorMessage = ""; + private String pasteURL = ""; + private boolean valid = false; + + /** + * Create PasteResult (Only for internal API) + * + * @param errorMessage + * @param pasteURL + * @param valid + */ + public PasteResult(String errorMessage, String pasteURL, boolean valid) { + this.errorMessage = errorMessage; + this.pasteURL = pasteURL; + this.valid = valid; + } + + /** + * Get error message
+ * Note: First check {@link PasteResult#isValid()} + * + * @return + */ + public String getErrorMessage() { + return errorMessage; + } + + /** + * Get paste URL
+ * Note: First check {@link PasteResult#isValid()} + * + * @return + */ + public String getPasteURL() { + return pasteURL; + } + + /** + * Check if valid + * + * @return + */ + public boolean isValid() { + return valid; + } + + /** + * If valid return paste url otherwise error message + * + * @return + */ + @Override + public String toString() { + if (valid) { + return pasteURL; + } else { + return errorMessage; + } + } + } + + @Override + public String toString() { + Map vals = new HashMap<>(); + vals.put("code", code); + vals.put("name", fileName); + vals.put("expire", expire.name()); + vals.put("visibility", visibility.name()); + vals.put("language", language.name()); + return "Pastebin" + vals.toString(); + } +} \ No newline at end of file diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/PlayerUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/PlayerUtils.java new file mode 100644 index 0000000..7f95d69 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/PlayerUtils.java @@ -0,0 +1,13 @@ +package secondlife.network.paik.utils; + +import org.bukkit.entity.Player; + +public class PlayerUtils { + + public static boolean isPlayerBypassing(Player player) { + if(player.hasPermission("secondlife.staff")) { + return true; + } + return false; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/ServerUtils.java b/(OLD) Paik/src/secondlife/network/paik/utils/ServerUtils.java new file mode 100644 index 0000000..bf234fa --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/ServerUtils.java @@ -0,0 +1,10 @@ +package secondlife.network.paik.utils; + +import org.bukkit.Bukkit; + +public class ServerUtils { + + public static boolean isServerLagging() { + return Bukkit.spigot().getTPS()[0] < 18.5; + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/file/ConfigFile.java b/(OLD) Paik/src/secondlife/network/paik/utils/file/ConfigFile.java new file mode 100644 index 0000000..880d1f7 --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/file/ConfigFile.java @@ -0,0 +1,92 @@ +package secondlife.network.paik.utils.file; + +import lombok.Getter; +import secondlife.network.paik.Paik; +import org.bukkit.ChatColor; +import org.bukkit.configuration.file.YamlConfiguration; +import secondlife.network.paik.utils.Handler; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +@Getter +public class ConfigFile extends Handler { + + public static File file; + public static YamlConfiguration configuration; + + public ConfigFile(Paik plugin) { + super(plugin); + + file = new File(plugin.getDataFolder(), "config.yml"); + + if(!file.exists()) { + plugin.saveResource("config.yml", false); + } + + configuration = YamlConfiguration.loadConfiguration(file); + } + + public static void load() { + file = new File(Paik.getInstance().getDataFolder(), "config.yml"); + + if(!file.exists()) { + Paik.getInstance().saveResource("config.yml", false); + } + + configuration = YamlConfiguration.loadConfiguration(file); + } + + public static void save() { + try { + configuration.save(file); + } catch(IOException e) { + e.printStackTrace(); + } + + } + + public static double getDouble(String path) { + if(configuration.contains(path)) { + return configuration.getDouble(path); + } + + return 0.0; + } + + public static int getInt(String path) { + if (configuration.contains(path)) { + return configuration.getInt(path); + } + return 0; + } + + public static boolean getBoolean(String path) { + return configuration.contains(path) && configuration.getBoolean(path); + } + + public static String getString(String path) { + if(configuration.contains(path)) { + return ChatColor.translateAlternateColorCodes('&', configuration.getString(path)); + } + + return "String at path: " + path + " not found!"; + } + + public static List getStringList(String path) { + if(configuration.contains(path)) { + ArrayList strings = new ArrayList(); + + for(String string : configuration.getStringList(path)) { + strings.add(ChatColor.translateAlternateColorCodes('&', string)); + } + + return strings; + } + + return Arrays.asList("String List at path: " + path + " not found!"); + } +} diff --git a/(OLD) Paik/src/secondlife/network/paik/utils/file/LogFile.java b/(OLD) Paik/src/secondlife/network/paik/utils/file/LogFile.java new file mode 100644 index 0000000..1da5cff --- /dev/null +++ b/(OLD) Paik/src/secondlife/network/paik/utils/file/LogFile.java @@ -0,0 +1,89 @@ +package secondlife.network.paik.utils.file; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import org.bukkit.plugin.java.JavaPlugin; + +import secondlife.network.paik.Paik; + +public class LogFile { + + private File file; + private String name; + private List lines = new ArrayList(); + + public LogFile(JavaPlugin plugin, String path, String name) { + this.file = new File(Paik.getInstance().getDataFolder() + path, name + ".txt"); + try { + this.file.createNewFile(); + } catch (IOException e) { + } + this.name = name; + + readTxtFile(); + } + + public void clear() { + this.lines.clear(); + } + + public void addLine(String line) { + this.lines.add(line); + } + + public void write() { + try { + FileWriter fw = new FileWriter(this.file, false); + BufferedWriter bw = new BufferedWriter(fw); + for (String line : this.lines) { + bw.write(line); + bw.newLine(); + } + bw.close(); + fw.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public void readTxtFile() { + this.lines.clear(); + try { + FileReader fr = new FileReader(this.file); + BufferedReader br = new BufferedReader(fr); + String line; + while ((line = br.readLine()) != null) { + this.lines.add(line); + } + br.close(); + fr.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public String getName() { + return this.name; + } + + public String getText() { + String text = ""; + for (int i = 0; i < this.lines.size(); i++) { + String line = (String) this.lines.get(i); + + text = text + line + (this.lines.size() - 1 == i ? "" : "\n"); + } + return text; + } + + public List getLines() { + return this.lines; + } +} \ No newline at end of file diff --git a/Bungee/.classpath b/Bungee/.classpath new file mode 100644 index 0000000..5980f19 --- /dev/null +++ b/Bungee/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Bungee/.project b/Bungee/.project new file mode 100644 index 0000000..5b1701b --- /dev/null +++ b/Bungee/.project @@ -0,0 +1,17 @@ + + + SL - Bungee + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Bungee/.settings/org.eclipse.jdt.core.prefs b/Bungee/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..3a21537 --- /dev/null +++ b/Bungee/.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/Bungee/bin/META-INF/MANIFEST.MF b/Bungee/bin/META-INF/MANIFEST.MF new file mode 100644 index 0000000..4be0ab2 --- /dev/null +++ b/Bungee/bin/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Bungee + diff --git a/Bungee/bin/config.yml b/Bungee/bin/config.yml new file mode 100644 index 0000000..63596f1 --- /dev/null +++ b/Bungee/bin/config.yml @@ -0,0 +1,13 @@ +whitelisted: false + +server_motd: "&5&lSecondLife Network" + +auto_message: + active_messages: + - msg1 + - msg2 + messages: + msg1: + message: "If you find a hacker kill him idiot!" + msg2: + message: "If you are staff kill your self because this is bullshit server!" \ No newline at end of file diff --git a/Bungee/bin/plugin.yml b/Bungee/bin/plugin.yml new file mode 100644 index 0000000..36c54a4 --- /dev/null +++ b/Bungee/bin/plugin.yml @@ -0,0 +1,4 @@ +name: Bungee +version: 1.0 +author: SecondLife Development Team +main: secondlife.network.bungee.Bungee \ No newline at end of file diff --git a/Bungee/bin/secondlife/network/bungee/Bungee$1.class b/Bungee/bin/secondlife/network/bungee/Bungee$1.class new file mode 100644 index 0000000000000000000000000000000000000000..33015e7cf5adc8f08b3529709aa6a18f68c563de GIT binary patch literal 793 zcmah{+iuf95IviuF>%~Bv?=#XC@v%^!c^i7R75L~kOD}6`o4CSWLvXF_8P}Y@g`S}aLUEFG+i3>hFTx{VIF8jEGt8UlxaLvP} zhwB1OJJm&aM__YQs3bGvRKHe{QTBb7A4PF#CQ3znmAgmueQmVe71-)8h7S$|8vEH; z39OE^QP0XZvC3b`IAvySlqE7fkhym8JlSx~2n0`zQTcuDfSc%h7z7x) zlWp`lphfcucLX|4Bub^3M9+W_JDFA~Jzik}8?+WtJlt{2wlj)p2Gc z0=cFFp0rjbN37ZyRnn!^Y4kA9<%f|jEGM=8kF>y2rAPmkvnkNy*)}U_^9w3^KtdaoXz3q;>vy>UrPUR;M{WpXd z6CeBm{wTv~y9rNboAlnfH|L&n@16Pk@An@7?+|)$u;8PEMGw#L+{KcMWfv;~_v}a& z;TwVVej!t%2buaJBQ5Qv$_XJ*UPKR%u2{;F4AO+_7O3TmX zMI!UlILVml^-UUQXK}8oc#?FgW(0ymtz~|Y#YG_*hEt`&9ro7FOHI33$@(Xz%v1SM zRZ=re`>)6Gx0tPb&}n80rH7xS9hrfP)c|Yg1#odcfQO!o7Xj9>!JSN7Nw_1>t$3p> z*2Cy18OzjixVzMGsdY2)+B7l&uaLIh`wtt~@U1I`TR?%Kzmi9@5!UJ>}5nr=W1oP-k vxZcuN6`l4C+IKX5UHYA^{HUpd1~j2+;~`60c!bCF4uzg#t`^{Xq33rCIgXt2 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/Bungee$3.class b/Bungee/bin/secondlife/network/bungee/Bungee$3.class new file mode 100644 index 0000000000000000000000000000000000000000..881cb3c8f6ed173c0b61aad5abfc74ced84dfde0 GIT binary patch literal 890 zcmah{-A)rh7(LT2UD_^EYK#9+v1lpCLhw#QA_QYi!9)nRWV#)@1Iz4Yc2<1>FHJQ1 z4ql@%8ZUeRpTwsye!Hz9UYKsO-|YEv=6q+)&d=Z9e*n0L^&)KCC}9$FMa-j7!c8pL zxRrvYjYS)`ZQNlf7+=QCHHL+5EWA+l1NmIIN|=|SK5=`A8VKQTWy^hHKafhAO@_tR zc>2;IgS8#@1;cb#DzTTG_Jls*y?{E^Zs_sgkZYOZQPWDzFgP8hgx(H#91DWYv7?$B zDD8)d_QWHZPA?Bnw0g{6aB{b!ydaFF8te+=hkY9@ z2TQ0sD531YLET2%!7^5C+;y-Dmtij5>IPg5+>SCr>m)Lwzw^oyk&&Ttu!a>1bzG*+ z4Tj3O)YIOv@C>DM-g=fOHH@q=PK==#3zI}!q462k|4;Wh{b!+L_n|V9*pG*pl8+77 zq;O>9DaFJ(|F}Ewwcve*i8v4DvCV_;p$(MW1oO{o5&pr2?GdEBE z_tD1zEK|#L9Kih*=*K&B4)2uVT{_;4_Xzf08Q!Pin2sQhYj{A1F7W+241pieF;3uv zIwlBwNJmKE2X$O3@IyMP1U{@|vcMBMrU*Q#qXx%y4B*2ud_=>bj#}KW;}lM7ctpo6 z+^^wL9diVp(J@cpM|IQ-d`!mzfsgBG5O`KcSm4KWEEf229ZLm%LdSA}pVYC!-Q=f4 z-KS-{Pss2Y89pn+=VW+NhR@6J1sT4m<4br-$2xpjhOcONI*4Zk{i^uoYl3}U!#8w% z6W`MDZG1<=cXf2&dm6s4qZ2>S@T`s>;zu(4SVaCru%Bx9Sr9+hu>-#d;+G=pS7O(% zHT*`$9vrX0Z}Gb^_&xrh;W-_qOZlUQKk10#xXk=Hh`$8!*C75D#NUJXM-cxE;$K1h zJBa^i_^*a@3dTm;wo6PB%=4__Vr%v&x zomMIlOQ&N=JI_*;%w~F%G`llpC1Tlx&o!35>527bQ)Y$?3Uk}&qi`a+ce&>zcR{$d za2+>azA9$NGOHCz>*}{F1X`0(dV73Z%(gnRiEb;k)$ERw5^76E%=mUQ6_d|7Vj$BO zlVeKSYi)N~MbcgqOS`xpr~6%f3MDaGHPLl{EE(Qt_h&Oa0n1F#2t@@2bDP&5j#&M& z5zYmAVxoVX&&so~NFUpkF(doi&3?xgCxD*T6d2D8Wd%KL9<)5=M#?I*r6Lly%v4J< zL)$CTRwmm|yiZ|Fua(*8N8IeX`eI@(xGECQxlr#)W>XPM45TnO1{)>d47?P#8b~8! z;8nzwQYD%yHB>;A8F-7#-HTflmW&+Z4817BCmr^Jbc0KvXjQJTyco`GCfRPK(`K)g zV=j)b-Hh28%a(iS^DQn$pPh-(u|7{@5j^e5Ow?ysR0Kn3+&p5Xe3lhOv1EH=_Ha)W zqil=SpG@U9RE!h0SO>CJI?q##nl1*Aoo88E#GZH=dU}`*JT6UX29Bzrp(>OJo0A!urhp$s*)Smy1qbk>aLm=(e!8|`ac-xgzTcGW2~6v43}+wHF( zCFFe#1)=NnjS_}=K8B&sFv^kn3|n#u#&MlOaV!!{zLrsfsX&VpOg>LBYTRJ*Sw;ya zUyUD3&!4N{L=9wd&`{&lcms!s;jj!xWVlI&7s_z63@?)5797;n1VddS`7xv_4Rxui zWJll>Y*q|6tLknUYdn&OOXizss46wdP?J@)!enQu&9zc8Sn2wYY<8-MrluHbs;Xgm zFw`_jw3YcbU~6A0c}NPDp{A=D-jtN6d>JxSt#H+iP*ZoA2?l;a{ngY=LtUn3NrInk z;Kg`}q2{Q$3RCiWw`7?f6P91<6l%6PMYJ}Ptd-(b>uxny(q*^vhOCi_Hf)WmlN(>J z=CfZK`8K(QY4&1GEilwV)u5?HLxt6%Vwjc~YO!i4X5~^tEm2F^N(}48*e-Y_jNJ!M zm5mk4wjXL5yP+i8Cr-Nk5?cUikXTU*IwEr9S|Ekmi)~e5=J1m<`(xq$xYU7grvnNP zKHr|-OlJTe*I)Pn5VMwwQsUKOt$usUwX2L9kZi^9+Q&YI4Zm1Axz2?+i zyxov>GcL53&Q$X7kuEEBP;8t<8!xhmW>4VG+`YG(HhTgxE*ybzh^KO^DdD{PaGqCv z$>UR2FOxlcXfNGws=J_#LsT`5wj?L1NqmwQ-Xo*qnA7UPjD?jPu0}?TyPb z$xc(kzsid|Kf?)~$KWP2pDKxx)&?TXe+ujKkya?zRp#?Jl6DUx<`ZaB{U&Za5>KYt z*p4-$(XMQNe~PW7#aNzPxEVj2y2sMbuUKsJ*{E+#nesJm;qbV0libj+B@E_+G3T~P zN1p%GT&T(UlGt>9ppPby&bmDB4{=nH0>~JUoUE|o{II={#wPzXT`i2f`GwZ!zI?i? zoS+%%xuCo8!#qKQXji1qie}mWv#}cCj;6gO;jLzRzt2F+r#bmbqB~4eBiU4n-DP+y zi_bQG^)I}+7T2DUmQvP&;pZn;egxIb^xllZE6(@ZdD$Z8G{+q*k4`mg z+O+8+Mx7r5Lv8Y05f#613tHFO*3BJjxZPkXYd5El*b#-E|JS_dryVo-a&myrSYuEj zUk8a*NSow9Hc1X-pX5NcN)BYV8 z`KO>x5GlcJ9LpWzMBGl?a2Md^jyXIjkGW(!0y3xWoj-sQ3MidFh`?#e8bmq&v@;0q zBDrG68R&wHAz}zJmdH3k#uJ$!$R$KVf>aW@RFH{8ssx!tWU?UDM5YKbl}L>s({`N3 z^g+y+e+IR?PGROCF7pYqNSIwnm_x$cLc%-}>Iw<j0GetEF?6L&{#+ald!0e zu$Y7;g@mOfEGr}|C*kr!!U__ua0w@IWvoOaCSegDDHoHvguhGCgk@O67shs6j_rJ5+>0yFhbtM9 zE7_EfGWMK4Am9`GCELr@WV|ZlolWvbxE6BRRXt7bRym?m&dx zJ>-v3LN8Ca4=1qC@$NGEu#s|J&GRqe$^bd;Aoh@t(Z4z0*Wzy6iPzElucz*97#ljr z_z7sZOT*n7-k{-)P#pAi9M<#i9E~g=GVL!ZJx3)a?i|pf;Z1?-WuWjkdk4&1R_+8t zo#W4w*fz|i+mG?J@(gzD3hi8Q3cJppaKdRaruuHG;`RWW@A(HvP4XSTpRP(dTd$(* z8fIhJu!Lb4JEs2&KOSIQ(#V6fjPr$agR4=&h?|3bCBj7p*e@B{xHqC>G_z$ z$3hw<`F#_wyVzaBK;J!x7cf)qk<596uAju-M{r{hJBDAYTd4N7f@@XdUrWA3=Hy0m za+l=gnj*Kmf^s9S-27BjrmRQMQ(CBP9K#eWCsXO$#XQk`v00MSSb?K>YffX0vkxYM zlPGzZe5#;OO`bto}_YeMz_ znnTF}w1^j6nR8ilfoev@6jsZrOqMnL-_JBsrt^0O|B+M6IGD*}ejC@7;O&eRaBV5C MlKW%k;2szL4?7Q#YybcN literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/antibot/AntiBotUtils.class b/Bungee/bin/secondlife/network/bungee/antibot/AntiBotUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..b87c343e53bfd03e012340694c3e3802f8a6d10d GIT binary patch literal 1346 zcmb7E*-{fh6g`~)Ly`%b5Wx)*L6*pXEG{6jiJ$?gLV57T>Lg8Q7<#Cg2H{im2Yl8C zB|ca_TYiycskakCpa@l(s`PSmmvhfOo$tTDd<8Iqzyg;9o@38|!>WC-{4t}#^2dRf6xpOQ)}?{24s z|AMDovNWZ<40qSKFU|ePSfw{)z%ZB!M8;EDSFQ_33H`?Nx198@$_e3crDfXF&NS^a zo_?vN8;mo=0->@?A_#bnlDG7vHu)ZRT&{A?s`jPIjTTG9Uj~=Jp zkq(tqBBQ0JoE6{Omm<63@&n;hdTYCsy6J3YhWM)HnXM(hQ|QCO7(;Z`+x0VIUYceb zPof<#&}=lI(ZXFD_i*3F1B_dku<;O+6m8=Xrff`Oh9UVsNC`=qxdCs-#w_M6Jhm~9 zCl(fLEaIt!XEst;vT+fu#6>ycU$|yyC{z19y-9@8Fbk$#nuW8dh0nF;GqhJiZiqct z75<(ek62FVMMX1F86v5(r?=u*PK3}Tq7+jc3kju_LdvCQJ=ZPHkNlb|*%@l(F}}p9 z;1X^#>gH2jJ*tO}Rrl7B%}#n#C?PTniR-U#9nohdT$6$sRI7FctT}1m_ z1uoZAy1UX_I{OIFfjavCFrN?zFdAuXqMJiIqrJNCGuVg1&lhN|DHvUGrYwR9cmc9!CFc-)#ecik+JO~qRBjBA&QMB z`wn5}5f9=0pC6`n7^Zdt)wIUYPL;p8USt3O literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/antibot/BotAttack$1.class b/Bungee/bin/secondlife/network/bungee/antibot/BotAttack$1.class new file mode 100644 index 0000000000000000000000000000000000000000..44163a1111cbb9591edf9cd919ddfb1e7e0e9b0b GIT binary patch literal 1277 zcmb7DTTc@~6#k|yEL|6h2q<0~cfy31M@o+_JCi6<;kY#hrr%a$Iz!t6nhVQyqD(r*{})1;0WB5+zrP z&BkF_1lzpq(aAu`ceuC116SMa!sV$Ib=`Yv*v+2==`xUNda^XsnM+YqYiR}4I|Foeezu3^x^RSalz z)W8!9Pw|XlRQuT;mwR?mDiH*Yni7@OkB+D**OwL+uxR1A7B8@5;H8CStXL>u$-*m* zFx^2%l6i*y%ZP8v`@&IF&?4Jlhi&US#yFp^r|-7Q_>Y^i{Xuu#-h{3qgeH4wbQ z&{g+@s8NekVW&;*IHFDymZKTVbv7#LA~mJ$pV$6I%b-*{9J-Kf`oGeqzE>%dau0>y zpb9b~(T+PyGw5*X2(R@DFh=h&0V)F`{r!3b0NQCD=xIji8^SRCy-r#IQN(CZWU{AV znXywuGT#tA2`}Ct*-aOL+ZZ7^96Bd(lWe^bAtX`39gMaC&j?V5*c?QxiSA>>N|~=< zP4s-igw{&gY!mU=yC%%mkN6i{`F#HC7{l6*Het1Q^Z5J+sgWjnPeK;mh{GU!%_{?w z?ujX_AC_E4)K*k9Jyr0TAvlyZ`_I literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/antibot/BotAttack.class b/Bungee/bin/secondlife/network/bungee/antibot/BotAttack.class new file mode 100644 index 0000000000000000000000000000000000000000..f1f57f5611b5ccee47e5129eb205000fedefb730 GIT binary patch literal 2544 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 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/ABNatureCommand.class b/Bungee/bin/secondlife/network/bungee/commands/ABNatureCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a77192531fabfb061b95e5f67ee2a02917399def GIT binary patch literal 2292 zcmbVOTT>iG6#ja5VTWbHWe7L3n1Lk7eG?!gTqIm_0bNMK0*Wyqv$M@IVVGIxVoVkK z;J=6umZcAtzF3$l5|fe#AFc9TAN(O&mgVW4U5M;brYxwQ?sNJ2e0@%z-k<+|z7Jp+ zISCgfj6`us!sQq`Fe+gzhH*?(<4sITxDrDcQ&pJ8jD%SUS0(gGxE8~8+>kIQ6!THM z6+;8wmXH+R1u-m&;iiOJ!s51sCGky3SeCFNVO6Z&iQ?TT))*=$49oB)8NyxNs|=A@ zJHr`jlZM3?{p~b&mbJ7=5+!Ntnz^buhFBMb5pUCQ8HSTC*KI3f8XG)eaqpq+Y$ejZ zmE}C4+uPfkm2nf(GmDz%JA5_}j59>}M_l(k0w3*4l3QXsvwpGYr{#=9!8FCK40p!w zBp+xWY6(-bvWb-E7*=*%L|kcdE9-4Cuz6azd0U1vuK-AFH785)H9IFa%+eQQC> z70AX?w(sctx*?9^Wo|UIc>%)T?uyYJ`M=3Cbw6u&fc#mPIQ(tkl zEFV)71sHY0&1u^^0mGdQ-!vcX@Qhs$&}=e_J2KwK-6-zKSjT>FT)b(6?r!qwqV+NNGCvhiRw$I5a+@pz7AxuzzrRcDzEyGwUuXfGH3ziuBxwYXXf zlqITAhQ@Nx6lNX&z}HN7K5N-@)iw7xQ!4lK$1~cbj$v}gP24iIN8FhUmUP9*t^Tl> z<}HtBIgyrfn&Wa>9upXKhFIFP^{u3+D{2#3E=Oz_`peNMIiW(iQp<{W&6ghFp<43n zpfgc}=qfcNfQoz=qW1;&4DIySLC*mY0<|rirSTlCrVynWp!6tA2}OQHcrC0%QcqE_ zo44(xF-AT>HR>Vb4VuY;2fENrD~2BQ252Fl9+C)&?)B||hT2}G@)@E(Knh{EFFdGJ z?IHFUJ>R4HF&e{9P~EG@MT4)QMDmgoMTzjJ$$O;w_9I^ixZ0v_w=XjI40V%jb#-4s zYKwj;wDkwtwkJ?}U!Y;_DNZVlduVFgL-QV5iUtC@^?yUZ_FvGaiag^1&v>uWR@^$^ zNs`x#5)sVlqK6uIs3jgGIq(pf2}5M&TRMACUMirVjvnKBG$D>=%5)3qTj}vXh07$F zg^ES0fMwFGQ}*wZHcR<)D1#pp#wX~squ7U23Qk9H2K_O-h5-dYf&Rb@I>o)gqIqnTTSFwwn>xNS*F+1<+182ugufnXssv<2x=F{A$_ym5UJ40@I zDSz$gq8}@pdd)P;?L2qWS2EYx6w@tc7xk>~nszZQB9_R1)3T4wO&h%In~qH{G<$)o zgsyeqQ}WC$QaYUtUXsw7^_g+wA}a^EQ{^Q@vrfe|_>d_Iv~fj(eIiQC}9Dy!ykcZ$0j-Q0?8Q@UC*pAG7qp*m~B)jDfQUPIKp8PDgX zgp7iUA|_>+Dz4)OmBHnf!}2ODlqjM)S$$4fg)NjFNn_a2%G@oPo=3&&li{c+a%>e};GT^8D!#-66<^_jghaA1Kovdf_}V1%v>fNQ=2u*s=d~mo z8BP`w#CF|=s>dvsv;52|tFTijNa$UekZ3$g%I1bhLmzdWX_MziEjGic5?_lL_SErL z#bAsK4Fy5$ts6B6V#(}qosIR54h7IC=(1HQn)c$*NI2QOY$|F4vs%-j*Tq!rTRW_Z zZ(1HbV>zyb7T;yIXE8Cw$p#PhtbUO=Y!vQ?S1|T8&dJ6XJ}r49KtOA=?x!_ zEAwc1i1VpRN{^{F1LFG*eb)&?)bloW)7gn8Y@~BDc3}(Yx6=2lZ8(Y@M8{6@ z(8#BYyb{P_4&O-#%W@>Uy5Nc;P3$Pl%+qN{KA5<8k^#Fh;Yc5Zm$qph|oaH$2t>NWgLsd5?!r{ NWRxt9lRku3{{yEfy0HKN literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/GListCommand.class b/Bungee/bin/secondlife/network/bungee/commands/GListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1d91687d5cac804b3546c2a4c108aa62d4c17bb5 GIT binary patch literal 2285 zcmb7FT~ixX7=8{3*=@2ESiW0mLuu1cps|&rKt%;xjD`;l#im&6AsoWOvKw|c6zWH- z{)%>V#=Bnkh87(=j+fqf;h(9F`kqY!q=Xrpi<5KCJkRrfpZ)!xpPmC4#CIy*Q1PaM zVHG1PMpax@@s^6QFnaK|ig&^Y;9V8tVNBq?2(ICJ7?XHkF3AW!z=si}FcrZxX5=!f z;3EYehtZ0(iaGgzBZ3yptN29z-<0r-yuKxu1r?u4soM%ZQ*ehNbk(p7Z;T-j@117| zPS{I=p+03;V!E)tD4aRIXwr?Iva{Tr=Z+!IrOTkVVz>;KQm)9_){0EUK_V`5Nqd6RDo zhfLPw@|32%W5_j&M8!3I2@PjKdI4^l8Wxdd=!#`;xI8CDq6r@nwVm>gKnj*L2rMhe zX;^`wU{%8!h`bIOBKD|Ta@afW0D@ZEwi$v|Nu{S<>l=_g0;^0~8w0FmZ}}8h}Qk>{o)Oi~w~N z7c|YA+$;zJw^x8EN2bVnhHVk2d7ra?Pork+)wZ>QT&_7$l@;zzi!B;gdLF4bLCZfh zm+}64G_$x$wg?^K`8?&0Vc>t&qcj`R423<-*C|bv%B7dCn3vh|!w__hdjutqk_?^k zWGPDr-o|}p)w7Et49CgHj6XyZcER${jWhJgk-r*xi)cP+jnQci3hjW{1)b?N>Msan z0(vl=3F@`!OsyVDXF|G?&M3N?eu`sHeExY_!=wXfq*I5uzw=eliwksO=tF{5OPuHHIZWqUE@Z=flchInlMuuJJ4ATR=C1c^i6eFVve>y zf55&pS+?;I!+WZ)=+5Ik;*su94g-*R9z#8?jR--fwF#YQMi<&Jj&^LJgWlB>_#P+m z15V*LMDYi@nSve`##z=!)seLsr2LO#2m`o?Afc|6c2tv6z2q)|*JLNq?h-CjbzdiD c2b8YA(V$@P1ybF`-Cwx*!f&E01gOE#e=|ExX#fBK literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/HubCommand.class b/Bungee/bin/secondlife/network/bungee/commands/HubCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..131583ac9a2b968ab9823d457362fe45087d59fd GIT binary patch literal 1859 zcmb7F*>V#{6g@4;8Z84dBLjvkjB#uv8+q6a!E)G~I5?4)L||e_71bKG<$+O;nT4QF zN&bSD1g8ordChY^hoW*@OM>lDD$zsN^zD03pL6?k>yLN8z5#Fr-)AtJ!Fdgp4CZn; z4oky@3@+wy377MfFrP;nSM#`rPxH8rg$$}WB(a#mXKH0Wha0%5hFfZSTf-d^pRhGeO{$&gy|nu4KFbEH^{+702~;|-T0M$NOiyUBe=&HKSrxZ?y2RxJ>=C!4Ob zEi5U*A3Xo5)re$E2+Q``Z7!REbvJ4(^}eeNns_1XC?wqLr5aUO?dIe8K?&b=tbS@; z$foeCk7`f&b8fj@wyb*SJF-<(WYa-+nPKujV30QMw}@>q292NCUHGS2b4od#&Q8=|0K@3PPB4tPUZc^`aRQ$+oR90~F!pq;({@jY83n@hq}!R$ z@P&?Le5v8Cjum{R<7?D3tm;_9x`quM-{4zfL>zV0agT&g+gn~_a$lI-^#yNs%>Is| zX@;H|?g*3k6Y_l>n|Pq(J8bEAh(`>S|79J9vvK-%-KgcrfoT{PN{0<|I1=Ln<*KRS zjH1wS1KP&*$SB#+=Q41)a`AM`hULRMGEBtL-)DA)yt4JG2m;zRt7 zTq+Oq-oUlJRPx?b9E0}^GQiXbU)l9v(GNL$82bK1dH@K0jkihP7;!)7X`(qQo<-aZ zR$9{Y#S#yOb>bnznK(u2mUaeO@?9-K$fZp|KQR3fuiyzCNM@Xz4|5S>Yu<#8pmmN3mSa^#*D#?MCvt?TS+5T{{8pdyJF zCsG%POqJ*?;tV}FCcQ5cU8+}lbox|@7_FOK`st=Ha3&}3-ZVLDZ zIKJzP9cBC%`hvw7JNo2|f0EO2JaKoOAQnKfgW)Fab-(J2ECD zOv-pSii@}^;XN7GqL@N9hG|@nA%Yt*ypNkP+`?@cxhO*TK*onca$Uw986QP4gITfM zmGQBV=Vi=^|MN0F5qb*}K9%qpLuA^tOz#FmD3M%d25!d&~&>v{>YFOff0#Jq>0RYI?Rz=_C4nsQ77lpUD z;hDCTS#azflb05JeL``%;OWNZoWA7~NmnePzz{9iHOJt0OhI`2F~ZU!djhjT95R4} zuhT(70YN2b+WuGv;)w@<>7f@R#3a9_a+Ruw$J=Muh9@DPs( ztb#8=h(a^9qJkm}hAVMnk*YyEyl{=SCDRqfQqoLITdx)S7|zFyC08%=DJ>&%(WYJh zZm9eU&E^EAqTFK_FHRx%4$8^0u1*S+SQuW;{*uW;kjkvL5*EB=7d{*9wMB6sKbxkxxg97qd zL6xfG|8)mZ8FYPHm0H=f8hybq5Tw*p@eEUm=H6*O38-(;U;`&ZuX$$0B{&tE8lcs4 zbjz*iqM_pf0h7%U8Tx`Uc%=auVxnE=xGRc=p)1HW!EB`=Q15bvWFq-r-B?$pHav;L zM%y-gO5|V6k2iX68a2XdUau1FPQvth$5Qxq{#8w{xU*%;c6d&APs(tW;c^gHVyf&m zFvfh0uBTfD`RPA_g<~dS3?1=S&n_Fp?@4Snagb8g#+GE^pK<#c zIz~d{`{|z98BZF_r;yaAtd-_T8BPQ_^ zuKG+(5E~|)#W9F5McO;$OzaX!`aJHDuVG@i8{d$(6d_Cdm?9l7kdTn+eF1u2MtlB- LO!{LaYr*)x!CiI+ literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/MaintenanceCommand.class b/Bungee/bin/secondlife/network/bungee/commands/MaintenanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3c29451f6c00b4ae5a435bc02cbe01d7048789cc GIT binary patch literal 1695 zcmb7E+g95~6y0MPBxEHJkwAJE0gSm6rAcTSpfrW%LTf@>2f9cey2kQYD3NEVF3^Ym zNc#hQP97-jTFD3W3-UExJ+e*h#HOp&!>pO3ea_kE%s%tyUw^y=a0A~Nm@!b&F>7GX zz`ThuEExFE#3I}RuHqvD*Gy=*K1Apx10S2XiBC-2!m>%0m26ox@Tq|{1E1-*t>bfs z!PP(p$r^)Jn%!l{Z>XAJ7%m4=JV+Z=5k2J9kSumtc|6?ZQIMV6#(c6L#0)pfvGA0v zg+X1oQY1$zdg@kF=?md{s?p%G7Q0(Kkcp67dSatxTVc?}kHSk6ihrwACQr9f`+n)v zl^+Cd8(I;vCZd(c}WykFb?yM^Lld9L(bZl7o0(W%WwQvvj8FETm*u9d)oNf5@ACR7o_P!e$& zhdk3~u}{L;-i!^%DsQ4}%&FF=Wc-NH*1t(|ykcX+*CN+$e9(A{&jUczF zH~Y{pJZUNx3BydE7IZatyZS_UNpsc=B+2%0{KV$MaEc;yk1m}-2 ze1ehV3~G0v^BHus33ZxK?RDtIQ)os}Lq>5C1zJZjfQz(_5v6g=QKeVu?;4TbB(gh1 q_c2ke<4Us(r$x1029btCy~;Y`6JnBzo}&E#w9&a4GEdVXhvMIW>c?OJ literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/MotdCommand.class b/Bungee/bin/secondlife/network/bungee/commands/MotdCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..20e88b96b32decdc9ac34d6a87f751149c75e6c2 GIT binary patch literal 1698 zcma)6T~icC6g|z3%rJ}s1Be=tYM~IM`wGsW_r-7 zRNnF{@|YK&lLs`h!VkzV$#0-4AGddxg0N%hR&7uBo!jT0bNcrD`Ooh=0A}%xfhhyi zI!Xp+Obo*{aLL3+xZH~?nALIBL=Ud1;bQ}z^k5G22Fhx^VB%9OniRRNh8qSx)3Kyu znW1|j6ro&XC=@5w8MNg%;0%40Q1G>^zR8pO-eyD*yAu0ewC*LLTDOCmd=jP%mntdu zV-ZB*W9|wrpU25FcQX?;&RsvQ*F6!W?rJQ9<<_Fipz{~p&m;lQ6)UvGtp|^;?(Oj! zq1#TaauM*P{B7l_x8=E!Cu(k0CZVX66luMOt;W$2L7#sH=D0TCWtD??=Zc!&{()8l+2 z&YUOS7I(5n;7J}hO;$3VcNk{&)xA$AFr3dj{6>`3Lb2Ba4D-c~V=Z?^at=y0$=KT| zWipIXDig&CLyt^6kw&D5VLYecL}x{Yb9wat*Sk$$MX-h*WyQr{fr<+V4_HY|WIqvLylMFhrk7_3Hvt4Nv0< zTHSz7Gr*p-ncb!RfxxmLKQ4QtaoKVzgcJ*-{cMz3wr@bE{Cz5MsD zUvbnvR@z42Hu_&o*Sd!s!_S?Ud8(yTRUf-9y4D5jId6&NHALo^;Ih9@vaZ?4dD zj@aHLu6J-2b@D?gnWfA#lyw#kG;M1& literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/ReloadCommand.class b/Bungee/bin/secondlife/network/bungee/commands/ReloadCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b1df7aa99c5066c0fbf058d4d0554f63b16514a5 GIT binary patch literal 1149 zcma)5T~8BH5Iwgo-K8v07V#5x%a<)^7ZFsz_#g?1rutwFvGKuNb}!4-?cHWS(7)x2 zqKWReVIOYp%+5J8XJ+p2KRB98UmgfsiTG0xezf-!akH@6uy@mV-Y zOw^n87J=-p`+nmD#e353hqi@sMY#R0^?@I8+vm!&+i@tBx1H8oj0KG6&>6{|#1vI(=v&$wk3+10Ec8X@H-6@$P?aqi=)(7$4I#jG4->^qDC25b{q#5Br;o+50@ aXyvFrBjIrs*Rm`ou2bH$`dNxA;O1Y#JTF)P literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/ReportCommand.class b/Bungee/bin/secondlife/network/bungee/commands/ReportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d13051df761e232a4045dbd6fc6b81dac3a9f136 GIT binary patch literal 4051 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 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/SilentCommand.class b/Bungee/bin/secondlife/network/bungee/commands/SilentCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9c25bc7264c8b4697be27956f37f2a944a7e7db3 GIT binary patch literal 1658 zcma)6ZFdtz6n-X&*)-V}NGT$|khU}?4b4`xA_M^`BGvQ-Lh)2TcqY3;II(<+=0R{qvune*^FV?iWxmVBSKbfQv;; zVZlPvf>Xd^5%1wr5f1 zeVrj&t3PDOEeD=pIMJ3$ti}DV2p{mSPo8o+aJm1Ghtk+1XHIX+h~ZK@5^kV8Up^9! z68gI!eByLt)f2*TgMObYFLFB47fLS=%@%_tc7+>jN`0l)rXZ*9eY3P5#Rt+EK|4Zu zB5Zx#e$02c<8#$>Iy#i9*E0R)qvSEe>?`CTdOYk=!;>l5DA&N}PesVkOwC0Mm2kBT zl(P{AyHa=?37)u&cQkjOtnxuJ7rGXPVkd}0SKJ}iG`u6^n}&&LJ(&naznES#7%-gt zFH^!klD-z9jWhU!;bPjjUe+E%H5I1InE!?uP zjN7L2rxxzm_zZU~tk|gIa~ofvZDG~M8rE%WV4dMYwYwF>m2JKwDpl8$k&%m6sdk5K zD}B<}w2gZPJ9`+*g-U}mEWQ}etBH$YCXMmHk9$(>%ZlM@?YN|lds38QbT{|%reZDq zh|2f@Noh=nTtz-NIX`H4vp!sCLNSm+Id6ul3^b%zB zTb?hoawhjHvRm15uJatPJxj1}&{?DyU>v6~fphfF9!B6zyhRqn+jwV`?Jwl$3+Tol z$p3&djbC7Gl?y*%>^X{iC}r@h@jLQsKf+$v!#KkpCNlUQbB7!!GWc>Ki95L;cZ%W; zA<74c$-@Y$n}zAOi4vWY#OyTLQ`GZWoTqbgQT8!p&i#$c7ODh#mmC??{srX_w(I}^ literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/commands/StaffChatCommand.class b/Bungee/bin/secondlife/network/bungee/commands/StaffChatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f1b21ea6c9c42b8e1e7d23fe77eb7ab98f4dfa80 GIT binary patch literal 1686 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 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/AnnounceHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/AnnounceHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1ffcea61368f52863f2342ce2b028f79d2adb4ba GIT binary patch literal 2875 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 DKR*fx literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler$2.class b/Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..96911e1d6d8e3cc67df209127fc07443621d5ec1 GIT binary patch literal 1495 zcmbVMSyR(c6#i~o8XCeP6kJi%s%dEns~dxE2syMHA9>B&Da;t0IGL z1z8meaw>XYG@uuK0qIvUfI$UA3a%@-!H`(vc1o-X=`&;sQuxMd>B*2$tjV$v2CrI1 z_|cemJip+SEjbbB4l~64ishwx83qcTFdbR4t!Kg@2hSaM<(GYhlU%r-F(!R$-0`P& z_`rO`l9oTp@KpZ~`=bL*FEPaOPDwB{7c42}YO6)zF7l#HlGcJ_a(jupR>1EHV?kmJ z+O(9y&D-4b1hGTMN15uUJfm(+64e77j6!x5miZbtY%a^jwDg7R)~dcJO{|-u>RXN^ zlg0&~n=7-t8Ums|GN=nq%{9fO6`*eWvzR@BL&|PKnzrLvvOFvNic?Z>Q^PIX*3gPJ z4J|mKA&E`}!x~0#hvEFcfoK>FwC`%ThcN}?8uGZWVFHs19%z`tG`0TNolo^MwCo3d zSX>q+OjzL|R&c83gF0fuwsXLcb*1>1zl5%M%}^vpLhf36{xjB9i%x=tih`l4zV1 zfmb+1v?DZb#%Y`-j*LQ=v|u=g&RvHuNhb)AOCq+7_(#+iy0=iD`Gm+85?`P)yhZCC z+rY35Z6gd4M}lt7D1xwOC@}Dv=sS|Wfl5|Qc#kYT>_Jfx!+Bf?ZF9Szy2z>?(P;%2 bW1Zyd67dmSMvBfDuHY(p26>}(r<0zaDDH?) literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/AntiBotHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..efcb5746f5f295c176c0a3f011d50abfe8b1c2e9 GIT binary patch literal 6372 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 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/AutoMessageHandler$1.class b/Bungee/bin/secondlife/network/bungee/handlers/AutoMessageHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a5e3d29362936bfb4c874c4640cf7cfd4fc88a82 GIT binary patch literal 1271 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 SjSOC(RY0d+FR$%I^!^9A^KYjB literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/MotdHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/MotdHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..61ee8a3e3f1b5c776d3b753dea40572eebdb883e GIT binary patch literal 1984 zcma)7TXWM!7(JUf$WfHw7y?Z%A>@W*ClP6(H&Y66piu18#5BEenT@kJTa=Y6tb~0ZL$Ql!F~UaKJ$!`vHuJ9RN+d{q;{p$N({)K#e( z46C^^p>PlOo?JbG!JE<*heBz$8u-6FH+HwoGy*mf?J(s3zZ2GS3tem+c+xxrx9{8msGx1~9%Oc&K_rXB}boUu@Hu!&m^ZsQ9JcO2Zsmlp0h zD5JtK7Dfa=F*q!2Irs`y3-=vtqh{fOgRfB~n7=CTHwI=~*m3X;zP0e3gYWT!gNJy; zur^p^NkU+_G}xh~r5Cy#%nb8M#~rK4HL?&&1Pm9FtRgwY$3;LJLf=)P=BiFy&F7Z; z7&kiVa-q}BkWV!dY=tY{Fo{+MICd)Pv8D*Qq`H!9DOn&I22UjR7}dRGvG@2F6LEA* zjtGicVRkU*amO)?(^c_QHd;ZXONOPs;IV;Q>b4`C3ny_V*)fa~p>cmu>|B4-EcY)B z;4p5F-iD74d0T`{>M1(pxdCU@)4_{_S&5Zc@;#ppepClsg&xT&okH~b2-V;WZ3@Zo4&J3b6Z&`ZOVPOgCq}ZT+OS?z)IuBS%F)70 zjBc%F?d(_^&eqCm8{>tQHYQB!VM+wdz@qmw911&$_vkl+CCt+2^dfyo=b}>bagzT^ rS&ys?)>&MjXNcx!$$pMv&PS1%g9Z9CM%6CTv$TOrG~{S$2+RKhfBrBp literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$1.class b/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..6aa3ea7b48d7c518a92689baaf6ad063f16b258f GIT binary patch literal 1688 zcmb_d?QR=I6g?BCS$ngk!3}MJLf36R?38AclJJ$1(ri;|>e!(U;X^_&UQg|9)-%@b zY#~4RhXk*{V^BmIK;i*-1D*v5amO}TRa{CWEP3Y6-FxnwGxyH!Z-4&$D}WVzl*4Hh zZA_z-!yFcDT*fPAxME?^#so@PcxGNQkC%;gHH%lxyfTSZyq3l5Hr~LSS-fRq4c9EZ zZDHNQb%qJu4wIQBhO3oC1WGoe@SgCb&|j!{&ugTzC4|@JqP zLCck6Z#}b2+%s`1X)GEVC+nIAdt1Ca*vPJ{G!DeAut()F)rkDVJ^5Kb-1Cl+vbVe z5YpwTRvoTGI>l(;oeP>_Vos8X)*bBN0}?$f_@e4s*fq&Mq)r(6|63!>EEB__vRdQ5 z2sD*&=(?Lq*{|!;ag#ITVvz`4@A3}yOVXRzCkz*;Nxe?-5ly^gKJ62!r*G2rm zoatms=(0>SmjQLurDCb_6bN;NO&DLvM48IZJ^|vZPKWM5T}Y~(xdy!3C7a<&u`(3h zukc#wh-*-E0$Pno1$%;!tjut}SpK)*tXBP$4AVsH$VLo>QTiSuONWvW(=CxCyhRG1 z8%3Bd#O#yHlZl@$n;A`RoC54`Cl*GVhRifRjJrnKAr-L75+5 z(?63xb%?3_vxmqVB^ekc7m=m$b5g|V`_RBP0;FhS9|B+D9=<`lr_$;3AE>-Ym=j=s c(Blj)(P9iUn5B7~z9;i|nJk+Cr)j3&UoVooBme*a literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$2.class b/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..3cafb154ca8c93bc00881a0456629d3e35a011ba GIT binary patch literal 741 zcmb7CO;6iE5Ph4Nx^dkS0;Q#2d?*K?5=H?|ATFq=mC_Hj6$fq`XGjdox?S5KeilMi zr5^YJ{HUtWP9)T0EbYwBXy(1Q?kwsRb|4ZBHS^-K=!?-;;@*$KU3Tv!Hp%xDc2*~EUprFp z4${6TOm`D2pNjLIxbM1Wm}zy>Seqm5k}@7Ay;7_~_`zCn2S#U^Fx;M)y4|7nx+^U0 zYAGZ5mKH9S!=$4A@0A;;`a)CTI~$ucOYGpI0ZmkOw_ppGfm<3{i&LN%M^ zGq@`?o(2MDAMv)&xXc9WZ+}6p|3>Y)stIY?MSG6NwDY4XJVBEY>nk*pUhL1h7j0 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/PlayerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..92feec460f6d78400f248adae1e8b8256ed4e9a3 GIT binary patch literal 7365 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 l$9$IOyj1`I literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/PluginMessageHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/PluginMessageHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..ab32d594f8fe64e54cb0a546738b4a5cdd0e4a4c GIT binary patch literal 9452 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 literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/ReportHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/ReportHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..154a5c807172505139fed919ed641f7b25384648 GIT binary patch literal 1891 zcmbVMTT|Oc7(MF?!nS}wLfX(9F(t7{YB@A%)0&bCX$nRJ5(BxsbQXIt8)V7Vg@pgn zm(KLPFU>>SnFiXKCeQs*oqj7RwnKgmzJ@@+ZBdPO*U=r2d-eabaZvDXS%VmbgL50Ep9gr z)3KYCdD=fPCvEA^GfWpuPt+Z|VaaV_*usC}xVy$yU^j&@ZiYjpxXF-Oa2mulVoF=w z30hmiUFTaCMaE30&aF-EN;QvzDStb`VrW6gD*O3_%e_`Yz% zTuFg?XDGehUWP&G-5}IG)s?p;enjGHKCkamhvPDyYzluxT9%Aj z)o~9shT+ho9h>P`$FhbE9hAEF2#V_{TeVlU`a@4I2TYeXar3RggLh<#3$Z(=tquM^v zx2Q1nz;%V~ugjK*dd)yqrk-hg+zQ0%Hp9t6H3sXHmkvs@9grKY7JAP2>egd&b?=Ff zBfZ<>5DBJSd@gNoS?n{6_W>%BDU*~I!?}K||7E6|$)Y=EQz<`Ui52ee5LSynrTP}C z)nXNA>Eav%Wk>&v@*9n()wPLtFhK8QLwZh7WS(LP8V6=BJO}$F{N_D+X2a+x(uDIq z%}+;P;RAd~Gx{DMVKPKNi+qeVO{4l{ensLCNd^VS(1jbvAOU4Cg^%Mci=iA~g0{>Y zBE@ik^eGJR0}LJ_lf?bkC7mJZ6QLwMq?^Dr&M8uyM* z)BE1ki?%Zr+8OoQALaO--8Bgc&S++`XU}`~eV*t2Ixk=S_YA-#{E)>Ej0^@bnZpH4 zCjlh?dvB+CxhD=p9Z0-lHV7RdVbh>N1x;lTm9PKS`Hw@FU z8|4}D@0pgi^k*2x3#KP(j$OCphA?d5KXTkHV?D4NLKwHgrCeNNNXXh?b&D)Rrc>kA8h54I$HtVuDM|Om_h4^w;uNlD+>gSYi}p%e%L*FOX2`$CJ(k9x z)uk6HNfwmQKHh3sJ8zOl*(sP5mC>yKeECgSyd@0^*%mclI<~RwI*+BOFI#*^xM8rQ zK)o}RKFpV)S9&)Ibz7C?Ly3PP@l~JKwy4B$9*;JJzbGwBMm6$GvEhFNa)pFV*Q~hY z*{Tz`HE~C(@*Ulu{*r1m9iQTaj$;_sa9hWB$ZNQx<9p0$nAcIkf({dlI__dg$1?8e zxQ{ABf7qq%M$@r^1r4h@*6@H~u+zhH+}ore6;GbRIlKW6X%dFBhx@20@r<~g7{(5& ze$-)xDLr4s59=L<9Mx;pmNdWfbsCLA@$Ffp@$Mw4xA)wFGH1!8G~>Qt!2VD0?Us3cnf^~1G7*N88zKcv3y9{SkQ z?H-#*Fva3?X?qJ|hhg{tpdz(plEPv*bI|F#%yccl7Lp?B&-dXA7~hHMF1dnV331^X-f<|I9{p>+^x!ugE$ z$D^DXm1lmm>A%fud1 z47*4lLl56Y?;bKqJa}8u36ee%O438R5sc%EBE?x0V$=pw;n`Fhbr0DDenXznyKK1x zUO@jBeZT$=E%gUd$v+7x87fw30)?xBkC>)nrXpF=NKD>Pxt+kdm~<;9o$MkANk_X3 zZAKCzGP~%1l6lgm>?dl3wacSKDe6#9c2Ot6N|eX*?X-`Dr2%sPW8lZ9IPwn?oy13B M^pnP~2s?q&YxG{n!2kdN literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/SilentHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/SilentHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..f166393c9220ddf1e227c4bb0972e688a6710fb3 GIT binary patch literal 699 zcmah{TT2^36#izD?&jt#-rL%GLA-%eM4u7@Y7vFSmsG*0GD*fby3We%uHw&dQ| z{Znx%coM6C`znen4EefhYY`_#GR*$tuKtA&4)%UlYLwtsl~!?$VSdq%WHZ#QKpji2 zWqcKyGu}vaTS~r_s>;$KLv}lC5&3|xwA@e58`As|jesm=KWvKNP#9%#*O-k@RK&3M zAMO)DHKmDoJsoSe18r*;LDE**4)S4V47qAE=#G+Ew2c<(VPcwchghk(H{`2!ZzYt_ z$1wc5!%btvwOyojjg^o?p5aID+V6MHu+Tfj-YVkV85!ni&-}dgd*fx%;zIGx*y%;3 zmIgC)e-{iMy}WITbb4vyoYmii_9NnEg@Y#O<*K#*>TbiCY}L@!LASh literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/handlers/StaffChatHandler.class b/Bungee/bin/secondlife/network/bungee/handlers/StaffChatHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..b622adf0b6b5d30c5fccc2bcea1ebb2a41f04c7a GIT binary patch literal 3522 zcmb7G`&SfY7=Aw7WtQDhalN9YD1wWitEpK)mVy@&kVG*xvjK)>aGAlGS=8=Vv#ji1 zT6QqP&;vt0dW*0RNd$3LS zw>LJ_uAxC;onad88iDdylcRT9W>?ba*5jt`9g3y>S72qViN(bGy7sP0SEKbCaeY8H-S}Ab^-}7U z8T1qcmS3~Am$l47U};X{;nWPvjJMj>K|}BI(_p<5i9zSSX06|Yk4zIN*_tw4qfc)) z9D}&7HBHOaTpAPBh2#ADWqD;}p=g;BR)N@+u#hU5`U@>H$qus^N4E!LF^k3plQ^=N zZX*$I^OPFRZi`iv=hXC5%S2J|pn``4LUo;tSghhGo>B0uisx`l#q&6(-~|;g;w6FV zT&&2~8Wk_&6$P)Vcnzs7sPhy6hOC3pL6>s6BinsBOf_GKChxb{l ziVtu~#fLbp;3E|uW3j+Y?+7O~lNh?TVJ6n4jAWN?%L*Gw>55gmJp@W6aC=HCR_|8v z2|guwDn65G1Ssrcn<`ee7dEig4RD%RSzc1X?(ffbp& z#~%5-$C6CQZzX4u6Cb9YKv^!3{WI-NEZvmMD$k`gj#vaEQ$wSx+nQ_9cwR1Jd9Dum zoD_&8bhpuDTg*-psw`HSlb%^7q;N59TD{rRteILuW?7xbaJZaN+Vl|1l~*oZ2D9}9 z+o9XCDLy2dbDz{v_O&_d7*4T)l{T|H|NKWd#y|G=VCwZtJVkE+3cWWh5tl+NVPQa$E{r!TY$$8m3jV?l@$m zz_c{1S<{0V6nnsC$v9C-e%p0+7;euPaQ&I%fjhBBb6Rz~&u|R_4ktrk_TDTN>@KlG(3c5ibSDB>m%GD*Yfq*nhoA@yAymMNGnyqRD!>jIZvtez zC{qOHGF~a;%ttxOyqKlFw~?3?xCu8iVvssDsAaS|+Jzu4qg=r)Si@Z*f4`Nhz-?IT z=Oqr)Pa$QOm{<4*M2_P(`Sv{`&CF1h8BP>vp=?rg@*s+j6O626z3fj_N2d%SDhoO4 zfi`sr(*$Y)C4nJK7ZmT8Z!-kwwkB8-98qsSi5QdIBz+F$aZzql(Q?u;DUd3O4=)_fHfQ{K1s6`xC+@G}1`&ri^`(f02t=NL0$t Wp-_^8=blg5P+%ILw{tDP=Klbx`N*K`V;L(RRz0jS%$+Es>?uRKTI(=mnqf~e6kE#3 zi+B{s=t=~dka8>R3f&Qra{dI&*nt`|?6=0U8=9V0HO@_UH5o9P$M_dL&*`={NB#4iC*T>(A#GT^Jfw0LihV36oXWGihkhUb^ z7U_0VZO-!kLnd~Srq6LF1?Je3^~mFNGrF_&7qI6foFnVP1R_tiFnRl!CofO_0wJ#W fFlh#OrAqx3sV9O`n3m^$m3vr3k>a$3Bx~slx_*X> literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/utils/Handler.class b/Bungee/bin/secondlife/network/bungee/utils/Handler.class new file mode 100644 index 0000000000000000000000000000000000000000..888238a6ded123f5b5abc5be37c03a1ff5504c8c GIT binary patch literal 812 zcma)4$xhrr6s-0v&KR?qum=cBlwl%ah`51}010sz0ZI^ekEb&V#FaI zkdKNeFCgW>a(P=TaOENLS0`M;KkYomBUvbocVKMfA4PD%lZu*L)tndL~fa54%!exUIB2O22kw zbn0~iPMmh=d%>9(sjM%D)#O~o0;^AGr-=$;_t2wJ8PQSA52P0fRGQi68aTcy93S*W~+4r(fV)=;}<&vgN#GOf>o7O1H+8KM1f{E!j8OLl|Kxl za7xX!{DfzHRQjm)QOh(%uIW$>L{>0HXRpZ{=gAnW!jH==h^V!G!}!Ufuu{*51Gxpe M0F)L41v1pc9e=LBmjD0& literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/utils/Message.class b/Bungee/bin/secondlife/network/bungee/utils/Message.class new file mode 100644 index 0000000000000000000000000000000000000000..77a16eeb30ed4a7c9125ff54787fecca86c2f468 GIT binary patch literal 1333 zcmb7@OHUI~6vzL!EgfiwSA~lB0F_4zEu$i!f~b&~khDmGVZp{s+iMw^&XAd@;>NFG z`~{EDlj=xmNXIaR={PiG)REONqrnh}E?JHhEDMBF=`DfCs#}r*y*bN~>(xp@dXLS5 zO-mx@7EOE0^em+}jFDi+@&(d4Ulv`bWLr+KnZs#BKIs0Nnp8+qybW?3!@ z#C_?M8mhoxDz|GsGY#8x%Eo5kSx$LTVMJZWCV{|Aj`562>B-zlKy%+Rn9PyIz;Yd9 z!*dTTS=zA87t&*Vtx`{=h);zU=-v#>;$Gg|uT`Mon!scmhSN_KRcv2+70dUTm&&GF z^@{SLrMjaxDw9~zMIu@}ckolk5G~Cs(jC(o; zFsS1`9uWN>`!3Me?8T$PE_=uR)J$qV##$gfGjKhD;Xjd9YGYh=y%J|vmcg3i2c}bG z&6iT?Q^RR`a}+VU*XP0=8KQSH;i_xf^#Rgvpq*Wy)A~h~{O$1xt(x|Z>95NJR>Sq( z=K4A{W#GiWwpaCn={^3pb`eW8p)2rA$G6RZRZg_ojz%S|OUun7%0|n6v|a6Oew%TA zsp=O7AEAe5FExX=;N3Cx9^x&95c+sVYsM)0DeH9yByfgWm)Zkb)Z>@*4)e|)BJ>X7 zBSZvp(?{qKc#UBSQGrj;@|meabRMBAgf~CFswClBk^~~PfFp<@O}-3Msf0;}RkkF~ zQet=v;T-Q_{^JOJgRbHHF yIvA#x;rmIIz$}x@vt&g!O7aovicA&0&>&ONMKW@cY1I*~Gfo^6iW^HCEBXm78$O8u literal 0 HcmV?d00001 diff --git a/Bungee/bin/secondlife/network/bungee/utils/NumberUtils.class b/Bungee/bin/secondlife/network/bungee/utils/NumberUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..5ce4b53847b24fbdbb5890c809f82fed05a63325 GIT binary patch literal 667 zcmb7B$xg#C5PeP;H=%{Hm3_Oh2y)>D;(|aR1vr#N;^wBNxCEz49N>?*aNz{vzz6VA zh)Iel5^x}qXLB(7px!Dj-UbEaeZ_XQ%k(QSd~W4CMw^b}0Tcv`nhhPSDe zEOOEXSJ$j<%`@e9lNt5*&6>cSLe0=!r)-%OLv;-QmFpdPFQ!T}MXdXfm=3MPJho*R*Po z>!98{teily=+-^mSTe zDSUx173`$&6~1PWBa?T_Gm=PwCeR<8c?-Y5O2N3Idl} zenY4Wb<+ycGr8~k)!K}zYE?6Dy9cayUUzM^UNgL!TJ_utBdn=5J5l$vim#?nf}TPd zh77Wj!XEbJ&XnXJg+nQ@FeH#U#n;Mg3bquD|BqHZleG{%%iIb`HXPGtaoN_aI?KT! zTIKY#RF*AQ^VyRxrF@-r$mW*Y`#F%a=$+w62uz>TT`$^NH!R-yGm*)yw%cybL#I}) z8cvyGdXDLK{WJ9;rnv8(1f9*jtw@b?M}fCU(xpe9Wm~WVPR_EC+WLjZ2bzHXBart{ zrX>m+YgTgOv{;r`lR!+j+#1)ODsL9HAZKOM({uwjaE+I$e4-F?7)WpMOXVuK#>N^D zKXKE6o1~oqGmcx_r$Pk`V}xG`+{U})$irotjBvd+c7%@ayGrSZvzU%Xe?e?Fa_bnK z#bYRI6F*WTwAvkLccBXxc+>U-)`vn1$YGRvUC3YzZZhYV^O z^T8Sk(tMk4fdK|Oi1%;>9|aoMsdJNBLwLkAFER153^Gv@{EgkErl2IsKjjD95hgxl eqQKKYKO%o&TEV@4WDOPiBbkvkpQW?|bN>RcZ@_l| literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/config.yml b/Bungee/out/production/Bungee/config.yml new file mode 100644 index 0000000..63596f1 --- /dev/null +++ b/Bungee/out/production/Bungee/config.yml @@ -0,0 +1,13 @@ +whitelisted: false + +server_motd: "&5&lSecondLife Network" + +auto_message: + active_messages: + - msg1 + - msg2 + messages: + msg1: + message: "If you find a hacker kill him idiot!" + msg2: + message: "If you are staff kill your self because this is bullshit server!" \ No newline at end of file diff --git a/Bungee/out/production/Bungee/plugin.yml b/Bungee/out/production/Bungee/plugin.yml new file mode 100644 index 0000000..36c54a4 --- /dev/null +++ b/Bungee/out/production/Bungee/plugin.yml @@ -0,0 +1,4 @@ +name: Bungee +version: 1.0 +author: SecondLife Development Team +main: secondlife.network.bungee.Bungee \ No newline at end of file diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$1.class b/Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$1.class new file mode 100644 index 0000000000000000000000000000000000000000..33015e7cf5adc8f08b3529709aa6a18f68c563de GIT binary patch literal 793 zcmah{+iuf95IviuF>%~Bv?=#XC@v%^!c^i7R75L~kOD}6`o4CSWLvXF_8P}Y@g`S}aLUEFG+i3>hFTx{VIF8jEGt8UlxaLvP} zhwB1OJJm&aM__YQs3bGvRKHe{QTBb7A4PF#CQ3znmAgmueQmVe71-)8h7S$|8vEH; z39OE^QP0XZvC3b`IAvySlqE7fkhym8JlSx~2n0`zQTcuDfSc%h7z7x) zlWp`lphfcucLX|4Bub^3M9+W_JDFA~Jzik}8?+WtJlt{2wlj)p2Gc z0=cFFp0rjbN37ZyRnn!^Y4kA9<%f|jEGM=8kF>y2rAPmkvnkNy*)}U_^9w3^KtdaoXz3q;>vy>UrPUR;M{WpXd z6CeBm{wTv~y9rNboAlnfH|L&n@16Pk@An@7?+|)$u;8PEMGw#L+{KcMWfv;~_v}a& z;TwVVej!t%2buaJBQ5Qv$_XJ*UPKR%u2{;F4AO+_7O3TmX zMI!UlILVml^-UUQXK}8oc#?FgW(0ymtz~|Y#YG_*hEt`&9ro7FOHI33$@(Xz%v1SM zRZ=re`>)6Gx0tPb&}n80rH7xS9hrfP)c|Yg1#odcfQO!o7Xj9>!JSN7Nw_1>t$3p> z*2Cy18OzjixVzMGsdY2)+B7l&uaLIh`wtt~@U1I`TR?%Kzmi9@5!UJ>}5nr=W1oP-k vxZcuN6`l4C+IKX5UHYA^{HUpd1~j2+;~`60c!bCF4uzg#t`^{Xq33rCIgXt2 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$3.class b/Bungee/out/production/Bungee/secondlife/network/bungee/Bungee$3.class new file mode 100644 index 0000000000000000000000000000000000000000..881cb3c8f6ed173c0b61aad5abfc74ced84dfde0 GIT binary patch literal 890 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/AntiBotUtils.class b/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/AntiBotUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..b87c343e53bfd03e012340694c3e3802f8a6d10d GIT binary patch literal 1346 zcmb7E*-{fh6g`~)Ly`%b5Wx)*L6*pXEG{6jiJ$?gLV57T>Lg8Q7<#Cg2H{im2Yl8C zB|ca_TYiycskakCpa@l(s`PSmmvhfOo$tTDd<8Iqzyg;9o@38|!>WC-{4t}#^2dRf6xpOQ)}?{24s z|AMDovNWZ<40qSKFU|ePSfw{)z%ZB!M8;EDSFQ_33H`?Nx198@$_e3crDfXF&NS^a zo_?vN8;mo=0->@?A_#bnlDG7vHu)ZRT&{A?s`jPIjTTG9Uj~=Jp zkq(tqBBQ0JoE6{Omm<63@&n;hdTYCsy6J3YhWM)HnXM(hQ|QCO7(;Z`+x0VIUYceb zPof<#&}=lI(ZXFD_i*3F1B_dku<;O+6m8=Xrff`Oh9UVsNC`=qxdCs-#w_M6Jhm~9 zCl(fLEaIt!XEst;vT+fu#6>ycU$|yyC{z19y-9@8Fbk$#nuW8dh0nF;GqhJiZiqct z75<(ek62FVMMX1F86v5(r?=u*PK3}Tq7+jc3kju_LdvCQJ=ZPHkNlb|*%@l(F}}p9 z;1X^#>gH2jJ*tO}Rrl7B%}#n#C?PTniR-U#9nohdT$6$sRI7FctT}1m_ z1uoZAy1UX_I{OIFfjavCFrN?zFdAuXqMJiIqrJNCGuVg1&lhN|DHvUGrYwR9cmc9!CFc-)#ecik+JO~qRBjBA&QMB z`wn5}5f9=0pC6`n7^Zdt)wIUYPL;p8USt3O literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack$1.class b/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack$1.class new file mode 100644 index 0000000000000000000000000000000000000000..44163a1111cbb9591edf9cd919ddfb1e7e0e9b0b GIT binary patch literal 1277 zcmb7DTTc@~6#k|yEL|6h2q<0~cfy31M@o+_JCi6<;kY#hrr%a$Iz!t6nhVQyqD(r*{})1;0WB5+zrP z&BkF_1lzpq(aAu`ceuC116SMa!sV$Ib=`Yv*v+2==`xUNda^XsnM+YqYiR}4I|Foeezu3^x^RSalz z)W8!9Pw|XlRQuT;mwR?mDiH*Yni7@OkB+D**OwL+uxR1A7B8@5;H8CStXL>u$-*m* zFx^2%l6i*y%ZP8v`@&IF&?4Jlhi&US#yFp^r|-7Q_>Y^i{Xuu#-h{3qgeH4wbQ z&{g+@s8NekVW&;*IHFDymZKTVbv7#LA~mJ$pV$6I%b-*{9J-Kf`oGeqzE>%dau0>y zpb9b~(T+PyGw5*X2(R@DFh=h&0V)F`{r!3b0NQCD=xIji8^SRCy-r#IQN(CZWU{AV znXywuGT#tA2`}Ct*-aOL+ZZ7^96Bd(lWe^bAtX`39gMaC&j?V5*c?QxiSA>>N|~=< zP4s-igw{&gY!mU=yC%%mkN6i{`F#HC7{l6*Het1Q^Z5J+sgWjnPeK;mh{GU!%_{?w z?ujX_AC_E4)K*k9Jyr0TAvlyZ`_I literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack.class b/Bungee/out/production/Bungee/secondlife/network/bungee/antibot/BotAttack.class new file mode 100644 index 0000000000000000000000000000000000000000..f1f57f5611b5ccee47e5129eb205000fedefb730 GIT binary patch literal 2544 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ABNatureCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ABNatureCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a77192531fabfb061b95e5f67ee2a02917399def GIT binary patch literal 2292 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/GListCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/GListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1d91687d5cac804b3546c2a4c108aa62d4c17bb5 GIT binary patch literal 2285 zcmb7FT~ixX7=8{3*=@2ESiW0mLuu1cps|&rKt%;xjD`;l#im&6AsoWOvKw|c6zWH- z{)%>V#=Bnkh87(=j+fqf;h(9F`kqY!q=Xrpi<5KCJkRrfpZ)!xpPmC4#CIy*Q1PaM zVHG1PMpax@@s^6QFnaK|ig&^Y;9V8tVNBq?2(ICJ7?XHkF3AW!z=si}FcrZxX5=!f z;3EYehtZ0(iaGgzBZ3yptN29z-<0r-yuKxu1r?u4soM%ZQ*ehNbk(p7Z;T-j@117| zPS{I=p+03;V!E)tD4aRIXwr?Iva{Tr=Z+!IrOTkVVz>;KQm)9_){0EUK_V`5Nqd6RDo zhfLPw@|32%W5_j&M8!3I2@PjKdI4^l8Wxdd=!#`;xI8CDq6r@nwVm>gKnj*L2rMhe zX;^`wU{%8!h`bIOBKD|Ta@afW0D@ZEwi$v|Nu{S<>l=_g0;^0~8w0FmZ}}8h}Qk>{o)Oi~w~N z7c|YA+$;zJw^x8EN2bVnhHVk2d7ra?Pork+)wZ>QT&_7$l@;zzi!B;gdLF4bLCZfh zm+}64G_$x$wg?^K`8?&0Vc>t&qcj`R423<-*C|bv%B7dCn3vh|!w__hdjutqk_?^k zWGPDr-o|}p)w7Et49CgHj6XyZcER${jWhJgk-r*xi)cP+jnQci3hjW{1)b?N>Msan z0(vl=3F@`!OsyVDXF|G?&M3N?eu`sHeExY_!=wXfq*I5uzw=eliwksO=tF{5OPuHHIZWqUE@Z=flchInlMuuJJ4ATR=C1c^i6eFVve>y zf55&pS+?;I!+WZ)=+5Ik;*su94g-*R9z#8?jR--fwF#YQMi<&Jj&^LJgWlB>_#P+m z15V*LMDYi@nSve`##z=!)seLsr2LO#2m`o?Afc|6c2tv6z2q)|*JLNq?h-CjbzdiD c2b8YA(V$@P1ybF`-Cwx*!f&E01gOE#e=|ExX#fBK literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/HubCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/HubCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..131583ac9a2b968ab9823d457362fe45087d59fd GIT binary patch literal 1859 zcmb7F*>V#{6g@4;8Z84dBLjvkjB#uv8+q6a!E)G~I5?4)L||e_71bKG<$+O;nT4QF zN&bSD1g8ordChY^hoW*@OM>lDD$zsN^zD03pL6?k>yLN8z5#Fr-)AtJ!Fdgp4CZn; z4oky@3@+wy377MfFrP;nSM#`rPxH8rg$$}WB(a#mXKH0Wha0%5hFfZSTf-d^pRhGeO{$&gy|nu4KFbEH^{+702~;|-T0M$NOiyUBe=&HKSrxZ?y2RxJ>=C!4Ob zEi5U*A3Xo5)re$E2+Q``Z7!REbvJ4(^}eeNns_1XC?wqLr5aUO?dIe8K?&b=tbS@; z$foeCk7`f&b8fj@wyb*SJF-<(WYa-+nPKujV30QMw}@>q292NCUHGS2b4od#&Q8=|0K@3PPB4tPUZc^`aRQ$+oR90~F!pq;({@jY83n@hq}!R$ z@P&?Le5v8Cjum{R<7?D3tm;_9x`quM-{4zfL>zV0agT&g+gn~_a$lI-^#yNs%>Is| zX@;H|?g*3k6Y_l>n|Pq(J8bEAh(`>S|79J9vvK-%-KgcrfoT{PN{0<|I1=Ln<*KRS zjH1wS1KP&*$SB#+=Q41)a`AM`hULRMGEBtL-)DA)yt4JG2m;zRt7 zTq+Oq-oUlJRPx?b9E0}^GQiXbU)l9v(GNL$82bK1dH@K0jkihP7;!)7X`(qQo<-aZ zR$9{Y#S#yOb>bnznK(u2mUaeO@?9-K$fZp|KQR3fuiyzCNM@Xz4|5S>Yu<#8pmmN3mSa^#*D#?MCvt?TS+5T{{8pdyJF zCsG%POqJ*?;tV}FCcQ5cU8+}lbox|@7_FOK`suok0XK)WPB(j*Ja$1@lhPpm=Vie z86OLILB_23KPTf8p*Jt#Qwg6j#HLKk^lmUjQt2gzXx=VyhL(b9@j1V`%AEy$wL&Lq z!8Y{DlJ1z|`|vR8t(z{xNWtZXZIvqK8qZqX+qRv}?5b~-InNq)wW?bsH+$DMt$ghx z#~|??ZulNKzLqMGNw!*gG*P$Fx6JIJYLQzd?&Ka6HuT4OwxV0*Y|(Q}tDF;PW1jAm zxyR5S>Vq(?nPkA7$K08*)@%wKa|4eIy`d(rh9y2I0A<(~0)TvNRrFo%Fbs$KqVN_s zJkz$a^Nzh^^3r^uPbf|oJ>A%x)wcp7>53&38RA9TcMN{V6oj`PBWze?Phd8PLk5uW zbvj5Wz$mzc1%{z8Mo)r6cbhb7$TZ*Onr&5fdn7C>Si(IC_Z2K-MZp7nF5wFW5Ale= zD);7sF!}+AK=;~!Ysbxhj+LRmI z4VB+wqd9>oX`W3U10Kb8aXLTCx#w?bHAA;YOC6nMMu%Q1WX6Vvhtm>D3OLpjl(Eim zQ3TPwLu0LEbJyzkG`?fHUXKD(q!jnpjcO1hqhJG@3^$U-vh8bzZUx-D5s$WQdh42K zi#ieHw}L9w$p7mRA~ft0w<>NNZIlARmbkWwykbvpNhzvbp8NAYl3<=S+v)mP>!_X1tnqW55D5&*1LpqiIub!-_ zQZt^!VZC|lJ|*%mrpOz;Hw+wMHK$hzcROKvy>BUeEC0&ZEAC9$vK^k+-IFq0VYnQ| zm6$ENb&QDsqwDFGL4JBqVBwgF7)D3D)w0Wl@p}@R4f!TKyI^l~rEQ2(&1DV{XE;DYED8aX{@Jc{tdvwAa*f?uaU*KWbqwF@jd-8 z`4JQN30DKA#)%D+&XVXylp^gNawc{uqyrxJ$k!k-+=*|2f9cey2kQYD3NEVF3^Ym zNc#hQP97-jTFD3W3-UExJ+e*h#HOp&!>pO3ea_kE%s%tyUw^y=a0A~Nm@!b&F>7GX zz`ThuEExFE#3I}RuHqvD*Gy=*K1Apx10S2XiBC-2!m>%0m26ox@Tq|{1E1-*t>bfs z!PP(p$r^)Jn%!l{Z>XAJ7%m4=JV+Z=5k2J9kSumtc|6?ZQIMV6#(c6L#0)pfvGA0v zg+X1oQY1$zdg@kF=?md{s?p%G7Q0(Kkcp67dSatxTVc?}kHSk6ihrwACQr9f`+n)v zl^+Cd8(I;vCZd(c}WykFb?yM^Lld9L(bZl7o0(W%WwQvvj8FETm*u9d)oNf5@ACR7o_P!e$& zhdk3~u}{L;-i!^%DsQ4}%&FF=Wc-NH*1t(|ykcX+*CN+$e9(A{&jUczF zH~Y{pJZUNx3BydE7IZatyZS_UNpsc=B+2%0{KV$MaEc;yk1m}-2 ze1ehV3~G0v^BHus33ZxK?RDtIQ)os}Lq>5C1zJZjfQz(_5v6g=QKeVu?;4TbB(gh1 q_c2ke<4Us(r$x1029btCy~;Y`6JnBzo}&E#w9&a4GEdVXhvMIW>c?OJ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/MotdCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/MotdCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..20e88b96b32decdc9ac34d6a87f751149c75e6c2 GIT binary patch literal 1698 zcma)6T~icC6g|z3%rJ}s1Be=tYM~IM`wGsW_r-7 zRNnF{@|YK&lLs`h!VkzV$#0-4AGddxg0N%hR&7uBo!jT0bNcrD`Ooh=0A}%xfhhyi zI!Xp+Obo*{aLL3+xZH~?nALIBL=Ud1;bQ}z^k5G22Fhx^VB%9OniRRNh8qSx)3Kyu znW1|j6ro&XC=@5w8MNg%;0%40Q1G>^zR8pO-eyD*yAu0ewC*LLTDOCmd=jP%mntdu zV-ZB*W9|wrpU25FcQX?;&RsvQ*F6!W?rJQ9<<_Fipz{~p&m;lQ6)UvGtp|^;?(Oj! zq1#TaauM*P{B7l_x8=E!Cu(k0CZVX66luMOt;W$2L7#sH=D0TCWtD??=Zc!&{()8l+2 z&YUOS7I(5n;7J}hO;$3VcNk{&)xA$AFr3dj{6>`3Lb2Ba4D-c~V=Z?^at=y0$=KT| zWipIXDig&CLyt^6kw&D5VLYecL}x{Yb9wat*Sk$$MX-h*WyQr{fr<+V4_HY|WIqvLylMFhrk7_3Hvt4Nv0< zTHSz7Gr*p-ncb!RfxxmLKQ4QtaoKVzgcJ*-{cMz3wr@bE{Cz5MsD zUvbnvR@z42Hu_&o*Sd!s!_S?Ud8(yTRUf-9y4D5jId6&NHALo^;Ih9@vaZ?4dD zj@aHLu6J-2b@D?gnWfA#lyw#kG;M1& literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReloadCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReloadCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b1df7aa99c5066c0fbf058d4d0554f63b16514a5 GIT binary patch literal 1149 zcma)5T~8BH5Iwgo-K8v07V#5x%a<)^7ZFsz_#g?1rutwFvGKuNb}!4-?cHWS(7)x2 zqKWReVIOYp%+5J8XJ+p2KRB98UmgfsiTG0xezf-!akH@6uy@mV-Y zOw^n87J=-p`+nmD#e353hqi@sMY#R0^?@I8+vm!&+i@tBx1H8oj0KG6&>6{|#1vI(=v&$wk3+10Ec8X@H-6@$P?aqi=)(7$4I#jG4->^qDC25b{q#5Br;o+50@ aXyvFrBjIrs*Rm`ou2bH$`dNxA;O1Y#JTF)P literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReportCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/ReportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..13f19f511ecbb660a2b29dd2ea999ba592fa1bb0 GIT binary patch literal 4051 zcmbVPZFm${6@G8B$xJpwfel~FN0}5@lICMuN{bChTS6(J2_PX$@hbMKvV z&w0-|?>YD8(tn=02w*+_s$##2dlei|@t!zt!F>wetK$AR-Up)*gUB?Z9@$2i$TeaJ z!z!#eYH?7-A^9bv!j5AEjsiE1CXA{$EdP3P(~l!SK8`UQk$Xqu7{~kN@PLX3ReV6o zd{D)QRD4+KqVA8x@liY^hhvTS7(U*JPvDbs_>_uIOPS9!;IsIgoE>k(=kWy-SSl8>D8Q00$R?bX2W^lyy4y6b4&X8%QGw#TU;bi^v9&^<7 zg6?R!Q9v<|nwfk+)wj0v@=$std;iVFQ^u&3E{OJN7^e%#foBPLgs8z7{6>F$KK>@qRb&Wz20>n9z!Zbjs*bpBH9H00Q%_ z4mdv#(}?M5*nqDKv{%d8Y>_5|Qkf{|dfqp6=4-rJ!Q&dffp02!OvATuO2fDD9R=Uj z@B~iN0}bE98B%k5eo({r@ua}&R3^f$TfUyPd`ZSEmFbd+dX&LVf$LJ40hy96Jso+Z zZ;C>;S>NQDhVMF?6+ETkY5YK7@zstNk|y1Jhd^5@v)|3@8N*o{gwR7%1zzhp*V7Hh z4TeomPuUuNh#zS>V}&J%T1Z zq9Pd?GPybYTrym6W1JcEO*_}D;pcdc+}8ybr3@)IY>b(DB*u`WG6K4uGFW@MVcWVN z7`a?z;s`fPFEF!=|ML>hFEsoTFDUqxhF{}Faz?{%@LLU+@H^6=RNI}Q5)Hq{lL}ta z@G@S}@GAbG;Ex*qgx3VFNv%H+<>x*PJ4qaY z1;li9^-^G-c{p#_e$SBOdSTXx*Ua(S`kx`}V40R;*6TV$jOdtQ z=gnO?UN|i~%0ntYGoWp6MaAe!9+0#YSjwh2Vo0n-sC(T$%i(3ukE_eQ4%L_2D_rdi za^OaDftA$?O~!S+NTbG(M(j>bhDlj93sK9C&?QOj=sptIQjV$kx_B$HS7w%1F!O4U zce}2gb&ojzM`BoSORsiyOZbZFc0Kat+A4mPzSE`nv`dWhl45CuZHukKjvhdiTTp6e zrG3fk>E5=e;&8F&@u)Iv_&d#`+Fg*-DX!>C=bkBx^G;EQb-Q zXbA<((x=A29bk!iQRAqn(xTL?Rf=ZZ%>NSPPYvHtd_Zu#m8;vKa0Vo;h`{ z*Ct~9=TUbyl+F4n!+oi;AQ5UN17f)eHQfXhP(#E2M&f%V8syKb+^=W|3 z+>@5B6ObaSIFv!0#OevGnL>)8P?HSOT7eUIRL)ui7_6>_WJ98L3fI?g|ABL8OEyfQ zT}H2?1}9-98;X(Wl!ofVU``+{ZQa0uu`XD?QGPE0k$}s9l=R#r<&+7mFZ+7>N=`DN z7Lo}MV>QRc;yB_Dr$P47;Me^_kYJY{?dX-#yjavSOJMcQT;Gg_^8Fz|RxJzuqcCiONB8wg3 zDcmhCVV8IbdqPI$$hyB1%k7j`DS3=%yU~E-;x=sMtPW2L9d{B}J$3&BcVRnyAWsV% zma`u0ki6#XZuFAzOT+~Fc(xX6#2M`5*%)@w`>oKL-axy8-3s2-)Oi`pIK7N(xtjk5 n<|^1D{)J_iag&1nf8)dzs;X14SHXaSebFgu5x9qA4c`4<$xnKC literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/RequestCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/RequestCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9d3a88e1eb060cfff1933d6a299588ba1d154a03 GIT binary patch literal 4674 zcmbVQ349dQ8UMdcvNP-s1~vo|0%SO{By5r;;VJ<|2q3{EAWOi26eg2NcF63^Ix`!N zw%S@-d)Q*Nt&-mMprq5YZPFSGOB``&l{ z|KEGN5C7-h^8i-kIT3LYx`3l1hC~_kFpL@NCH;8znh?}{Z zH;H&N|2!q)77=d|ajS^iM7&kR+eExw#O)&P5OG?>h=_NHc&CVWiFmh&_lS6}i1&%O zQ^fm4d?0`i;zRs#CWsH?BSCx=ALEaY&%h^e7kBiNL3|2lMcmB?_lWp3H~Se8qkK$J zof9#}og5c%uYmg){2O&scQ0cosc+cFP}*+wYYgR`x~X-i5`CJzSLrioCe&%Eim^|z zbw18amb!7>VOZ7aXsTuQ8~T72H8uB`We-LBQs$thMO7=2P|SWOx<|VpN*zG|_)}O?I1-)T0^Em}d5C_J)Ie1ZzuQnwkXrI1p*fB+NL#B5Ol(Q%1~*Rn9nTGh zrA75m_LcIe*n^ariXvWp+pC6D5ok+hNwGaOeL7~mrb zSK>TFW3duVmsY|{SWRbGPC1%P#W}H9z~>}fzykt4FX2HvB;gDAqJS?+_%gmiVMurw zj}Q=dr1~U$6<=eh3#*wZWZjYbb%$fGpR~ywc(UUqrkP=3Snc5@Y?Gsz_~ebYrZ|?_ z+}wPbfUisV2ENHKZ)(7q`tlGv86sh|*GkE%VlH<*w>>Kv1j_@KEi0zw#x+|G8xp>S zZ%gHrp!>*v!lJKCG*)T;m174(zvFOj-TMC z^zP~jD%g^obqY+Axq!@9WZjgBMjQ&HWI#6+gOZdSrXnq#yoKfpclez+k!5INbe{e` z%O+&YPF%Omp~7utN;1h|RB9`nqEyb!d_v|!UX0c{2GLP9lRARM;gWeJ(60`w**tod z)Rb*&rYq+}&7qKq3*<0;lAiTpHRip_iml0Hi5I_7_8d$5aV$0R8l7IMu`Xr)3iMDr<9jQFnjf-ZKPEN6ETMn7853B9`O?EXU!7Y%y zVi?vjLLild&&q=eH4h%K(&HqLYL02ijxL{6Tw6J*TXND$SgNec9+%{!#DhL%SSLAG zGl>pAlkju=Lc){yrGQ^acnZHJ9!vNQekD2^WC=D z(=6dHoGsCbccauM5+iMH?E(q@TJ5C7+?GSk?>T z$)Ecb6nB?y76YXWLQq*wfRol|<6G%WaxM%Zy{(@tG9JZp}{UjzjlkuY5hknoRj75huHATH;_aI_PT_ z|MSsJldf0v?4r>&`W`};Pt02pVj*AI{V3@z36;irOG9O`bMT+_HgwZ7KpTNsn2Xui zMQ>7i8+PL=8ZqoaEUmJ%8>JA*&J&RbAdH|q5)#KSV;lh=&PFak=x!QEkYOAW9U!IE zrQ?`Msk&qo<)=~J6q@A;&nDr<^COtu6bfZ0&iHO>8biftM4IlyoZfS&49y+IJesQ- zL-iQu(_j=edGV`hX+cJ`t*m6NztZ1${!Ua?mo--UTS+>!kRJPQ^s_TBJe7515jiq~ zPA-Z7h^+qO}oJU%0>%iS5A>_$;!4C%C5?;tu9DaMErc!~$7UZ%s?|ak8e2Ft z@<{VgHi~v$^{wfpZ47+0ogNcllh<$sE%4mzn6P^01%q><1e_C(VGTVii9&M`!aP)9 zKB`cIIxM8$ITm3PYH>N15XqJjJL+%%VcdWQ`ekATPN9+fZKB@|8gUm^(if~2JdIX7 zhgJAH*03t9WlOP+EyH@YmGZHRQn4GCvLh7v5H>Lbo7v6S!fr=9y93+U7`C$qaRqw_ z9qdW$WY6GA_AI)HwB5cScKIY+apLq3cbF4IN*!ppwGoMzEK?VJ&Gf~ z$Dw-s-a{O|6$`KzJ@Av{b=Zgf6zM774qT01lyQb<*w5b%;2`e^^mYvnQLm`-UBF9e zM+xeD_uw#&P*+eWTPsmn@jMy@^a)Ty&CjD;KtKB@Y8FN!k(x+tur^pz^KZ-(p#2NC O{ljZl1GLYF!T$n_lq+Wd literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/SilentCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/SilentCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2400bbbe48b309f0d7e78b1e4c2d8bedbe7e59f1 GIT binary patch literal 1658 zcma)6ZFdtz6n-X&*)-V}NGT$|khU}?4b4`xA_M^`AjR|rLh)2Tc&58UII(<+=0R{p;UfUjX<7_Y0^OFl(Vv!1*F3 zFlV7@!6{(Ah>vig2n!#V2)HnUPjRt?JU%Po5-yvgRlpVFSun=u1zfdo&BAqt{1vIB zzRHlT)gLnC76VT(9BWG@R^r~K2p{lGpFHJu;Bx;V52dk(&Ya$o5yORcB-}uGzI-Gc zCG-zL_{7F7|ZZp-wWkCMj>({GT2=<%>i4UeZ}qg;KTKNTTEGc^}6RKnFV zP|jKy>`39QC3xa8+R@y7vdsI*Tw=CSY@g?q9Sh7*aT^nDaZDHBQ3RZ2bVU^)rRcr)tWs7f%O4VJIk&%m6sfq#H zN{{r_v~ka1rw?NJEtLjkn14B*Hxn1bR2t*HA9tnNlNH0|+EGaz^`t1p=x*lKO~qRJ z5tZ=+lG2C{xr%&lbY4vClK=a9fkv89^^E6r4=_SbM zw>(>BMUg$a55TQOe+1;}7Ileuh1_i&2JMjAig6W)3)xW$^V}5_fzr?gYgh zK$Q0p;|CE`Hw)8m6D2ywiP=fAC#dJsI7{a|b$pF_zDFJ3M+Kaw5@9OgG&|^f$cY$G lL?z*=2{lC%IE!^m;~dqPq3k2bocRYAEmR5gAvrRr{ReZ_Prm=;l9`?iCo%=TTx%avI*FV4g0pNXnX<^R7MH4j(bqk(_ zcZxWPcTK!!;Zl)2=1cehmrJnlp@l2@eR&*L(a>MlO85xZwfNY=4gJ1p;S&=JCKeeA z*QAo^b%tDZW{n}g5CwwaXj3Y&((iRde4lqh(m2h?=iwTUr9ST}^XaBc80MRa@FNw3 zazl7Zq)(#wk=N;~t`MFd^?FT=XPZtK727@WKh2Kvp`;}^w;=Eq)?ffv1 zZ%J?0wIx&_;>Op_hx{@3Law@$Etaa=&?Og=%*-(T3ONWNkGoX!#E5K^Yb)eWMa)ni znTtRw;iocE-fA3eOA)MQ{)DAW`20u9d@E}WO@^V^iu$oHZcE+26EEYhYcLGsiSCO} zePKAZ*T#CLCe_Q38H~hd7)u5r2KQ~8!Yzi2qZ)Wv!8Ff`Kd9a9C&GvHSp(n$oy^g#xu_*PZR&0g+u2e%xF-lXLXMZ9l+?+i4WgPOX;(E$hz+-u4trEMs6McP*K`@UETh-=kd zoS93zy|hR!M>1yr7sOx@SyL_*E$0h(?sXp0&NXJJ&O$7D(PILf<3WHayiR{X{TN`h z1aFXhlTLSG(id=g)?toO_#L_RoRe>@=bf?E`j}H_{Q~n@7Bxw-NYQ|eNtAIq`^sW* z25-@c;cd8syo^>4dD3mqJ%{xpj?OvbzoNKp3VBTO;P6v<0*VcaTU7j0^L$Ve&TOT OnyA)vgJ(!(VD?|pc(wrm literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/commands/StaffListCommand.class b/Bungee/out/production/Bungee/secondlife/network/bungee/commands/StaffListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..bf117598d0b8875a12233cbcefcedecd7681d072 GIT binary patch literal 3179 zcma)8TUQfT6#h;Un2-!bf{2L4pb~CEyn%8lty-;A1PX|vRT;u0j80}SGePM6UVE|k zn^b#mX&<^=x-^>Fx_qe*eX9?B=|8cq+I=PoBr>?VX00>l?6dbidw=^od*+XSf4L4| zGk$Voj~m?r_PWvIK@)ll(1<<(Pk11ppDzZy7{op|hCJAh1AH;e_YU&mkOxoVFdvS1 zaTFt7NEqcqNWhpErP#*@*^4kDUesWm8z};gc~F6VzBtZjsvA+RNZS?AxL9{%!i^K$ zbIc0^rhvE`lWv^!zzNNbDXuy#;3)x5Gvt}NDX9#si{^$Yg~JRb-N&R!DHt~uHMm)cuZz!U8vEK5~-3F2@aSsMT@jAlys7x{0>D^%uWVpZQT%qYll8Y z9*epaP40~nRvUyUE9S@Gi zwTLVSLwYnSX=4UOLD_UGhPfjpp|b^fN)E+Mog?A zv@io6a=xyq6fHxOtq%%JlS8JWYr(#lKBdTGeX2A~?#R-RW0P`>p=L45utM-zN?lr5 zPnqyo7}nUDFUcsv(Uc>7mPN7A>8zSDsTO!`ZX#wwuco*+cP9omt8Xw?8 zhIMu|UaUSMKElTWJ`wRLJ`-^UGa^36S%$KEliMCwRH})HbNE8Um-veAk6*;s+~OO2 z%TN&r4UWq(*{>LWP4`x^cS{nU<5S2b44e~qfx6UBvB;`T=$gpX?aR2+(Fs!zVWc!vns`C1q~gV&&Lu~#+>DZ($1of)MgD8|m{ggI^XJqjr=q{Ty`^??2DdU- z!(}7idJCM0Q&IT5ELw`My?`_Hn!Ul5!dDe#CJ#hId6U;EUT zzHputB%n?{DXDRplvmbvrJ0n~=`%s1ihg;T=-I?_)lP>o+)uoj%vV739@BFC)MH8ie61a9>8j1$VOLWJUP3_v z56r+*Z_SFXVo3tUN%$Cg8j~nt^iBASCQBJ^ptQ|Z?&2<&IY|6#xhsh>hMTxp?z)Me zxrekUiRBDQlrto-;tYmtx2~ara$RY=m%xKJ;7p*>w~7Yt)z5uZCQy~Y>ix55wlzz; zoY%L^(?<2fmyquoA(&_H)^Kx5{0s+X%^WZdzO|XT1w?fc0iH-U8Y3ArYT8_xATo(= zYe+}nt4)V(?Ns{eXqls2KbIjzmpOCx?zuS!4JnKK1lDC~a8@|MSrJA#jb-p+IkBRg zW-IBbBzE}GK;uTNML()>1OY_pXZjRs@i*#OA=a@n1lbB~U~93F1+j^(M+keJUZA#bh1D3h{d$c#HN1yj!rxb7ism9d>dyayOm}ipKZqu&PbX)ik-y!T@+t6 o#IhB4;1%%L9h?=gd&6xM+=ip{4k}3Y4@PNGNoHN7?7-vy0fHG(0RR91 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AnnounceHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AnnounceHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2ed615f16c0099a1bc5327e5587387ea0da0aaf5 GIT binary patch literal 2863 zcmb7G+jA3D82_E5={DP?^a{vD0xcoEz*a7bwjfZ&QWB`P6hRSBH>b(MW;gDoQ1AEq z_~Z*SzWX8%=uAmv#_`!d%JDn9+jiSYVa!Z6Ip6ud-|xF8|NQ&sUjR z^6`p_S8*YW{dlb%lenm23YRjZNw3Q}6&)x_c}YGl%f}T3(^CApiZ?K$lHsg^t17xN z*M@8I^GzwduHpvXlE=4I+{8QWxP^D+1#iQ=0z<_<%qb`<5DFF;vWDYWW#_K#F>Ej1 z=8IepeACiPygo*^GiJr+e&7m*;~Q_sqoc*`iaz7Jrd=6JNQw@f&k#cExM`dI8HPiJ zq9+W;E?ee;&~4%0b=*7pd|+3E(9ee-V}o-HEfY?e*tQoo_dE>eU|0d5e{jL(fbRFOF7 zo{I2Gre&E?LcO9`@VBs@BKjx+3=@SSrCqO;Z=GDtJFlBM)x;L$fn)2_u5-^6;3Lqmh`So@VM)XL_<*5fJ>Rk+HGBw9!ABZC#wQw1;(3Oh z>nc%@=L6F!3s>@wG7RU9>rRj}xP92q1)j*se#;q7twv3hTX5VQw;jJK++3c#`xKvP zIE5D#e6HaOe5v6pe68Rc4d3EB1>bA<0mn2vhhq!}@Hs2^bH z3Y`n*aguvg>HvmgTTjteoz8H0Ya@y7>G4c3^fzmfXiW5?>G{HzoxH!9mh7ITnYh>6 zsYfr`p3iCE2(>WSv|AD;G>)BQGaXK3iQBv)iAJ_Cj6K?*O$dc%el^o2GFMb&Jnni_ zmzodA2K%w5al|UCP~jrmwqCrja2dlAoI>hMbleg-P@_5Sa3l%7x^EHzZ67e;O$qfM)!@{M+5tUeJ-`$&DL0i_ph zya9Cu?P*+F_eKqw_n;ShLr=62st?EMKNoSyEgu8kL`!&Akbo=DQn-(O1RNc=rSLa8 zma+ZkU!b)7ik9?mWS>sBw?Bbji1A+_oeWa>vof!=`C}>`Q{@v>dp7Y9v&c5k`5^mX zjVMZOKQyY&098e%HVP=8AWVY|5Zy}{i|KwMI$5;S!wq!Z$KcRobYFjjp6=dd^pR`_ z<*k98bXdl&2A)~L?i3!<#h#(=y=&(+FLqPrLEK7M&Jil5PIVc@I6c>keVWdvNsnkl o-xy>v$hRYC!%@%2_X6 z8FPv?Sr)?KRo_VtoyADFVcC~6`l>ddDt??f!!YW`!V6_7@IMm{>3<$Z*LKt^oc2W& zJCjoRQ=z)Jz1HdzzVy{Oh8x-cq5n9deRd9tCAZ38Oot_+>WJ%0u~1ttifEY^gM_@$ z`Z z-Zj!cyrd`dyqb7N8DnCO!CDGyktb$-jiURX{GZkdL1<^B7lbh-#Jo_Iuw>#L8!qN; zJd5XS^x|n7&uDQBeKw9`z{G-$OITz$(MYL+R3eIMRV7L@*F8~Heke`6YvVGOOf1`2 z!76!V<2}4@;{&WQ3^vc0#{k;+5FeTN*v2QgV&YR997P)*N|bud?KH`}%m_ng!}m+Y ztHPti?`mvau1Q%BeX?0oe&7@cB3EI=F!IE&q)>!%r+OHMvIj0Qoe+DRU9Loe6YADD z5P~Y#$j<2-x#k}2A(IlO!eH_wX((Br+Af#`-DDK;FI+#?W!>EXy}M1_#NQ>LH=Em| zx(xLgq3c06(}Dd1 zT@7l~MV-ZD7|*SupIUzpC?YUAJ9W_kG*aCqBb8n`m73yu4AgD^ z3Ii!RTj@diJ`UZ1;r<9~3+?XU1K13=F-nue48Ndbekhf{NAJFe)E181Mla0_V+);n zypN+>=(>C7uSa`Ui8E=m(Jw^=0C`v>zalrkrr8a0>>K(@ev1iwhgp1&3%H3n{D5WL z+J%t8i#UaB0%oNSCP!9|qP1X>#XpcXF*x=+T}WYw4q7mb(=-}zaE6pYucC~nk)FQ+ DKR*fx literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler$2.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..96911e1d6d8e3cc67df209127fc07443621d5ec1 GIT binary patch literal 1495 zcmbVMSyR(c6#i~o8XCeP6kJi%s%dEns~dxE2syMHA9>B&Da;t0IGL z1z8meaw>XYG@uuK0qIvUfI$UA3a%@-!H`(vc1o-X=`&;sQuxMd>B*2$tjV$v2CrI1 z_|cemJip+SEjbbB4l~64ishwx83qcTFdbR4t!Kg@2hSaM<(GYhlU%r-F(!R$-0`P& z_`rO`l9oTp@KpZ~`=bL*FEPaOPDwB{7c42}YO6)zF7l#HlGcJ_a(jupR>1EHV?kmJ z+O(9y&D-4b1hGTMN15uUJfm(+64e77j6!x5miZbtY%a^jwDg7R)~dcJO{|-u>RXN^ zlg0&~n=7-t8Ums|GN=nq%{9fO6`*eWvzR@BL&|PKnzrLvvOFvNic?Z>Q^PIX*3gPJ z4J|mKA&E`}!x~0#hvEFcfoK>FwC`%ThcN}?8uGZWVFHs19%z`tG`0TNolo^MwCo3d zSX>q+OjzL|R&c83gF0fuwsXLcb*1>1zl5%M%}^vpLhf36{xjB9i%x=tih`l4zV1 zfmb+1v?DZb#%Y`-j*LQ=v|u=g&RvHuNhb)AOCq+7_(#+iy0=iD`Gm+85?`P)yhZCC z+rY35Z6gd4M}lt7D1xwOC@}Dv=sS|Wfl5|Qc#kYT>_Jfx!+Bf?ZF9Szy2z>?(P;%2 bW1Zyd67dmSMvBfDuHY(p26>}(r<0zaDDH?) literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AntiBotHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..efcb5746f5f295c176c0a3f011d50abfe8b1c2e9 GIT binary patch literal 6372 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AutoMessageHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/AutoMessageHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..441316c5a61e14ed6a3ee4b56c2fde05d0f130f6 GIT binary patch literal 3670 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 SjSOC(RY0d+FR$%I^!^9A^KYjB literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/MotdHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/MotdHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..61ee8a3e3f1b5c776d3b753dea40572eebdb883e GIT binary patch literal 1984 zcma)7TXWM!7(JUf$WfHw7y?Z%A>@W*ClP6(H&Y66piu18#5BEenT@kJTa=Y6tb~0ZL$Ql!F~UaKJ$!`vHuJ9RN+d{q;{p$N({)K#e( z46C^^p>PlOo?JbG!JE<*heBz$8u-6FH+HwoGy*mf?J(s3zZ2GS3tem+c+xxrx9{8msGx1~9%Oc&K_rXB}boUu@Hu!&m^ZsQ9JcO2Zsmlp0h zD5JtK7Dfa=F*q!2Irs`y3-=vtqh{fOgRfB~n7=CTHwI=~*m3X;zP0e3gYWT!gNJy; zur^p^NkU+_G}xh~r5Cy#%nb8M#~rK4HL?&&1Pm9FtRgwY$3;LJLf=)P=BiFy&F7Z; z7&kiVa-q}BkWV!dY=tY{Fo{+MICd)Pv8D*Qq`H!9DOn&I22UjR7}dRGvG@2F6LEA* zjtGicVRkU*amO)?(^c_QHd;ZXONOPs;IV;Q>b4`C3ny_V*)fa~p>cmu>|B4-EcY)B z;4p5F-iD74d0T`{>M1(pxdCU@)4_{_S&5Zc@;#ppepClsg&xT&okH~b2-V;WZ3@Zo4&J3b6Z&`ZOVPOgCq}ZT+OS?z)IuBS%F)70 zjBc%F?d(_^&eqCm8{>tQHYQB!VM+wdz@qmw911&$_vkl+CCt+2^dfyo=b}>bagzT^ rS&ys?)>&MjXNcx!$$pMv&PS1%g9Z9CM%6CTv$TOrG~{S$2+RKhfBrBp literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler$1.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..9092c9a6e7b10c63a8f9d5918b8510a1b884eae5 GIT binary patch literal 1688 zcmb_d?QR=I6g?BCS$ngk!3}MJLf36R?38AclJJ!hXtpUeb?i`w@bL$Y*He3w^^CPU zTgVUoA;Bx~7!;AFAn^da0ndVjxMLfvDlR1wmOOLk?mc(TnR{pVw?BXW6~GEU&EYJH zHl|U^VGav6uHrQ_T(hufV*;ftJTotu$IHgLp2h2CUYW!y-pJxj8*kz5EZ(uPh8q^% zwXkmCJ%$P04wIQBhU=9?1WGoe@V@Y*&|j)}-)p3@C4|@JqP zLCcjBZ#}b2+%s`1X)GEVr|X&r`&+y_*vPJ{G!De=ut((y)r))l0Vl?rGKf?X%GQ?9 zZPm2!zJr@6I5>y%4lWpL1HOe@4mNSy!3Vg*aNdBuh|88&*D--N(lBa@m^2j%1$U!T z^Y3onavhZMp@X}q7;B4R%Jpm2>ZZR_u2t(Ug*vFBW?|dGN4UqZFc;jEI^0m&ZS%x! z2kfACF^L`)d{K2R?3!esP$vxi|E&>bmWkm|S*@`r z0!<|xy6&Y?_UpQI(&P-eSR_K%ySzjFlJq9_Im0DtQm@neV)gGX<=xQRj@4HObrC-> zXFAyux-1jTWk4NurC6#w143P46UJ9EQKs^ zE4)@Z<{A{8fL0??!M-3QD>Gaymj5j{t5rWG!!!{)wh=>Nl)fj((xD{8bW0=&Z;`?m zMiHh9G5ho~r84blTP zHD#_Ky*S6{e*rI&_a(B{X>C0A!quO^79L^jhhEIfG)_TF|d56qHoPLbw#_<0IWqyQB z|4jbO5vKCbA0cm)WMGtBMwUiFitf|*p@nUn^oC5oU c9%pcc7Gs#fEY0KeJ(TgRhbg)4q?_A>N=B!pD;kjq>&u?>NUv$Jp*D zG)t1mXgi3GduI~o9Kb{BdtvQpDjSo6^Jz{p$qx!+E){&KfcgsRlyW_81b-q_vspfa zyHew6AYgWew_V0%CRqP?1+{*S+TW@sq-7Va!&BPDQ59yd^E15An#bS^xk5 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PlayerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..143c2a43a57ef183669619343035577420c27145 GIT binary patch literal 7517 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 VO0SxPAA`+jf=~ya>R)U4_&*s1=nwz^ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PluginMessageHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/PluginMessageHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..3f861836a0485a7bb8217acf430807d137f0a357 GIT binary patch literal 9454 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/ReportHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/ReportHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..154a5c807172505139fed919ed641f7b25384648 GIT binary patch literal 1891 zcmbVMTT|Oc7(MF?!nS}wLfX(9F(t7{YB@A%)0&bCX$nRJ5(BxsbQXIt8)V7Vg@pgn zm(KLPFU>>SnFiXKCeQs*oqj7RwnKgmzJ@@+ZBdPO*U=r2d-eabaZvDXS%VmbgL50Ep9gr z)3KYCdD=fPCvEA^GfWpuPt+Z|VaaV_*usC}xVy$yU^j&@ZiYjpxXF-Oa2mulVoF=w z30hmiUFTaCMaE30&aF-EN;QvzDStb`VrW6gD*O3_%e_`Yz% zTuFg?XDGehUWP&G-5}IG)s?p;enjGHKCkamhvPDyYzluxT9%Aj z)o~9shT+ho9h>P`$FhbE9hAEF2#V_{TeVlU`a@4I2TYeXar3RggLh<#3$Z(=tquM^v zx2Q1nz;%V~ugjK*dd)yqrk-hg+zQ0%Hp9t6H3sXHmkvs@9grKY7JAP2>egd&b?=Ff zBfZ<>5DBJSd@gNoS?n{6_W>%BDU*~I!?}K||7E6|$)Y=EQz<`Ui52ee5LSynrTP}C z)nXNA>Eav%Wk>&v@*9n()wPLtFhK8QLwZh7WS(LP8V6=BJO}$F{N_D+X2a+x(uDIq z%}+;P;RAd~Gx{DMVKPKNi+qeVO{4l{ensLCNd^VS(1jbvAOU4Cg^%Mci=iA~g0{>Y zBE@ik^eGJR0}LJ_lf?bkC7mJZ6QLwMq?^Dr&M8uyM* z)BE1ki?%Zr+8OoQALaO--8Bgc&S++`XU}`~eV*t2Ixk=S_YA-#{E)>Ej0^@bnZpH4 zCjlh?dvB+CxhD=p9Z0-lHV7RdVbh>N1x;lTm9PKS`Hw@FU z8|4}D@0pgi^k*2x3#KP(j$OCphA?d5KXTkHV?D4NLKwHgrCeNNNXXh?b&D)Rrc>kA8h54I$HtVuDM|Om_h4^w;uNlD+>gSYi}p%e%L*FOX2`$CJ(k9x z)uk6HNfwmQKHh3sJ8zOl*(sP5mC>yKeECgSyd@0^*%mclI<~RwI*+BOFI#*^xM8rQ zK)o}RKFpV)S9&)Ibz7C?Ly3PP@l~JKwy4B$9*;JJzbGwBMm6$GvEhFNa)pFV*Q~hY z*{Tz`HE~C(@*Ulu{*r1m9iQTaj$;_sa9hWB$ZNQx<9p0$nAcIkf({dlI__dg$1?8e zxQ{ABf7qq%M$@r^1r4h@*6@H~u+zhH+}ore6;GbRIlKW6X%dFBhx@20@r<~g7{(5& ze$-)xDLr4s59=L<9Mx;pmNdWfbsCLA@$Ffp@$Mw4xA)wFGH1!8G~>Qt!2VD0?Us3cnf^~1G7*N88zKcv3y9{SkQ z?H-#*Fva3?X?qJ|hhg{tpdz(plEPv*bI|F#%yccl7Lp?B&-dXA7~hHMF1dnV331^X-f<|I9{p>+^x!ugE$ z$D^DXm1lmm>A%fud1 z47*4lLl56Y?;bKqJa}8u36ee%O438R5sc%EBE?x0V$=pw;n`Fhbr0DDenXznyKK1x zUO@jBeZT$=E%gUd$v+7x87fw30)?xBkC>)nrXpF=NKD>Pxt+kdm~<;9o$MkANk_X3 zZAKCzGP~%1l6lgm>?dl3wacSKDe6#9c2Ot6N|eX*?X-`Dr2%sPW8lZ9IPwn?oy13B M^pnP~2s?q&YxG{n!2kdN literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/SilentHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/SilentHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..f166393c9220ddf1e227c4bb0972e688a6710fb3 GIT binary patch literal 699 zcmah{TT2^36#izD?&jt#-rL%GLA-%eM4u7@Y7vFSmsG*0GD*fby3We%uHw&dQ| z{Znx%coM6C`znen4EefhYY`_#GR*$tuKtA&4)%UlYLwtsl~!?$VSdq%WHZ#QKpji2 zWqcKyGu}vaTS~r_s>;$KLv}lC5&3|xwA@e58`As|jesm=KWvKNP#9%#*O-k@RK&3M zAMO)DHKmDoJsoSe18r*;LDE**4)S4V47qAE=#G+Ew2c<(VPcwchghk(H{`2!ZzYt_ z$1wc5!%btvwOyojjg^o?p5aID+V6MHu+Tfj-YVkV85!ni&-}dgd*fx%;zIGx*y%;3 zmIgC)e-{iMy}WITbb4vyoYmii_9NnEg@Y#O<*K#*>TbiCY}L@!LASh literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/StaffChatHandler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/handlers/StaffChatHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..b622adf0b6b5d30c5fccc2bcea1ebb2a41f04c7a GIT binary patch literal 3522 zcmb7G`&SfY7=Aw7WtQDhalN9YD1wWitEpK)mVy@&kVG*xvjK)>aGAlGS=8=Vv#ji1 zT6QqP&;vt0dW*0RNd$3LS zw>LJ_uAxC;onad88iDdylcRT9W>?ba*5jt`9g3y>S72qViN(bGy7sP0SEKbCaeY8H-S}Ab^-}7U z8T1qcmS3~Am$l47U};X{;nWPvjJMj>K|}BI(_p<5i9zSSX06|Yk4zIN*_tw4qfc)) z9D}&7HBHOaTpAPBh2#ADWqD;}p=g;BR)N@+u#hU5`U@>H$qus^N4E!LF^k3plQ^=N zZX*$I^OPFRZi`iv=hXC5%S2J|pn``4LUo;tSghhGo>B0uisx`l#q&6(-~|;g;w6FV zT&&2~8Wk_&6$P)Vcnzs7sPhy6hOC3pL6>s6BinsBOf_GKChxb{l ziVtu~#fLbp;3E|uW3j+Y?+7O~lNh?TVJ6n4jAWN?%L*Gw>55gmJp@W6aC=HCR_|8v z2|guwDn65G1Ssrcn<`ee7dEig4RD%RSzc1X?(ffbp& z#~%5-$C6CQZzX4u6Cb9YKv^!3{WI-NEZvmMD$k`gj#vaEQ$wSx+nQ_9cwR1Jd9Dum zoD_&8bhpuDTg*-psw`HSlb%^7q;N59TD{rRteILuW?7xbaJZaN+Vl|1l~*oZ2D9}9 z+o9XCDLy2dbDz{v_O&_d7*4T)l{T|H|NKWd#y|G=VCwZtJVkE+3cWWh5tl+NVPQa$E{r!TY$$8m3jV?l@$m zz_c{1S<{0V6nnsC$v9C-e%p0+7;euPaQ&I%fjhBBb6Rz~&u|R_4ktrk_TDTN>@KlG(3c5ibSDB>m%GD*Yfq*nhoA@yAymMNGnyqRD!>jIZvtez zC{qOHGF~a;%ttxOyqKlFw~?3?xCu8iVvssDsAaS|+Jzu4qg=r)Si@Z*f4`Nhz-?IT z=Oqr)Pa$QOm{<4*M2_P(`Sv{`&CF1h8BP>vp=?rg@*s+j6O626z3fj_N2d%SDhoO4 zfi`sr(*$Y)C4nJK7ZmT8Z!-kwwkB8-98qsSi5QdIBz+F$aZzql(Q?u;DUd3O4=)_fHfQ{K1s6`xC+@G}1`&ri^`(f02t=NL0$t Wp-_^8=blg5P+%ILw{tDP=Klbx`N*K`V;L(RRz0jS%$+Es>?uRKTI(=mnqf~e6kE#3 zi+B{s=t=~dka8>R3f&Qra{dI&*nt`|?6=0U8=9V0HO@_UH5o9P$M_dL&*`={NB#4iC*T>(A#GT^Jfw0LihV36oXWGihkhUb^ z7U_0VZO-!kLnd~Srq6LF1?Je3^~mFNGrF_&7qI6foFnVP1R_tiFnRl!CofO_0wJ#W fFlh#OrAqx3sV9O`n3m^$m3vr3k>a$3Bx~slx_*X> literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/utils/Handler.class b/Bungee/out/production/Bungee/secondlife/network/bungee/utils/Handler.class new file mode 100644 index 0000000000000000000000000000000000000000..888238a6ded123f5b5abc5be37c03a1ff5504c8c GIT binary patch literal 812 zcma)4$xhrr6s-0v&KR?qum=cBlwl%ah`51}010sz0ZI^ekEb&V#FaI zkdKNeFCgW>a(P=TaOENLS0`M;KkYomBUvbocVKMfA4PD%lZu*L)tndL~fa54%!exUIB2O22kw zbn0~iPMmh=d%>9(sjM%D)#O~o0;^AGr-=$;_t2wJ8PQSA52P0fRGQi68aTcy93S*W~+4r(fV)=;}<&vgN#GOf>o7O1H+8KM1f{E!j8OLl|Kxl za7xX!{DfzHRQjm)QOh(%uIW$>L{>0HXRpZ{=gAnW!jH==h^V!G!}!Ufuu{*51Gxpe M0F)L41v1pc9e=LBmjD0& literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/utils/Message.class b/Bungee/out/production/Bungee/secondlife/network/bungee/utils/Message.class new file mode 100644 index 0000000000000000000000000000000000000000..77a16eeb30ed4a7c9125ff54787fecca86c2f468 GIT binary patch literal 1333 zcmb7@OHUI~6vzL!EgfiwSA~lB0F_4zEu$i!f~b&~khDmGVZp{s+iMw^&XAd@;>NFG z`~{EDlj=xmNXIaR={PiG)REONqrnh}E?JHhEDMBF=`DfCs#}r*y*bN~>(xp@dXLS5 zO-mx@7EOE0^em+}jFDi+@&(d4Ulv`bWLr+KnZs#BKIs0Nnp8+qybW?3!@ z#C_?M8mhoxDz|GsGY#8x%Eo5kSx$LTVMJZWCV{|Aj`562>B-zlKy%+Rn9PyIz;Yd9 z!*dTTS=zA87t&*Vtx`{=h);zU=-v#>;$Gg|uT`Mon!scmhSN_KRcv2+70dUTm&&GF z^@{SLrMjaxDw9~zMIu@}ckolk5G~Cs(jC(o; zFsS1`9uWN>`!3Me?8T$PE_=uR)J$qV##$gfGjKhD;Xjd9YGYh=y%J|vmcg3i2c}bG z&6iT?Q^RR`a}+VU*XP0=8KQSH;i_xf^#Rgvpq*Wy)A~h~{O$1xt(x|Z>95NJR>Sq( z=K4A{W#GiWwpaCn={^3pb`eW8p)2rA$G6RZRZg_ojz%S|OUun7%0|n6v|a6Oew%TA zsp=O7AEAe5FExX=;N3Cx9^x&95c+sVYsM)0DeH9yByfgWm)Zkb)Z>@*4)e|)BJ>X7 zBSZvp(?{qKc#UBSQGrj;@|meabRMBAgf~CFswClBk^~~PfFp<@O}-3Msf0;}RkkF~ zQet=v;T-Q_{^JOJgRbHHF yIvA#x;rmIIz$}x@vt&g!O7aovicA&0&>&ONMKW@cY1I*~Gfo^6iW^HCEBXm78$O8u literal 0 HcmV?d00001 diff --git a/Bungee/out/production/Bungee/secondlife/network/bungee/utils/NumberUtils.class b/Bungee/out/production/Bungee/secondlife/network/bungee/utils/NumberUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..5ce4b53847b24fbdbb5890c809f82fed05a63325 GIT binary patch literal 667 zcmb7B$xg#C5PeP;H=%{Hm3_Oh2y)>D;(|aR1vr#N;^wBNxCEz49N>?*aNz{vzz6VA zh)Iel5^x}qXLB(7px!Dj-UbEaeZ_XQ%k(QSd~W4CMw^b}0Tcv`nhhPSDe zEOOEXSJ$j<%`@e9lNt5*&6>cSLe0=!r)-%OLv;-QmFpdPFQ!T}MXdXfm=3MPJho*R*Po z>!98{teily=+-^mSTe zDSUx173`$&6~1PWBa?T_Gm=PwCeR<8c?-Y5O2N3Idl} zenY4Wb<+ycGr8~k)!K}zYE?6Dy9cayUUzM^UNgL!TJ_utBdn=5J5l$vim#?nf}TPd zh77Wj!XEbJ&XnXJg+nQ@FeH#U#n;Mg3bquD|BqHZleG{%%iIb`HXPGtaoN_aI?KT! zTIKY#RF*AQ^VyRxrF@-r$mW*Y`#F%a=$+w62uz>TT`$^NH!R-yGm*)yw%cybL#I}) z8cvyGdXDLK{WJ9;rnv8(1f9*jtw@b?M}fCU(xpe9Wm~WVPR_EC+WLjZ2bzHXBart{ zrX>m+YgTgOv{;r`lR!+j+#1)ODsL9HAZKOM({uwjaE+I$e4-F?7)WpMOXVuK#>N^D zKXKE6o1~oqGmcx_r$Pk`V}xG`+{U})$irotjBvd+c7%@ayGrSZvzU%Xe?e?Fa_bnK z#bYRI6F*WTwAvkLccBXxc+>U-)`vn1$YGRvUC3YzZZhYV^O z^T8Sk(tMk4fdK|Oi1%;>9|aoMsdJNBLwLkAFER153^Gv@{EgkErl2IsKjjD95hgxl eqQKKYKO%o&TEV@4WDOPiBbkvkpQW?|bN>RcZ@_l| literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/META-INF/MANIFEST.MF b/Bungee/out/production/BungeeCore/META-INF/MANIFEST.MF new file mode 100644 index 0000000..4be0ab2 --- /dev/null +++ b/Bungee/out/production/BungeeCore/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Bungee + diff --git a/Bungee/out/production/BungeeCore/config.yml b/Bungee/out/production/BungeeCore/config.yml new file mode 100644 index 0000000..63596f1 --- /dev/null +++ b/Bungee/out/production/BungeeCore/config.yml @@ -0,0 +1,13 @@ +whitelisted: false + +server_motd: "&5&lSecondLife Network" + +auto_message: + active_messages: + - msg1 + - msg2 + messages: + msg1: + message: "If you find a hacker kill him idiot!" + msg2: + message: "If you are staff kill your self because this is bullshit server!" \ No newline at end of file diff --git a/Bungee/out/production/BungeeCore/plugin.yml b/Bungee/out/production/BungeeCore/plugin.yml new file mode 100644 index 0000000..36c54a4 --- /dev/null +++ b/Bungee/out/production/BungeeCore/plugin.yml @@ -0,0 +1,4 @@ +name: Bungee +version: 1.0 +author: SecondLife Development Team +main: secondlife.network.bungee.Bungee \ No newline at end of file diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$1.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$1.class new file mode 100644 index 0000000000000000000000000000000000000000..33015e7cf5adc8f08b3529709aa6a18f68c563de GIT binary patch literal 793 zcmah{+iuf95IviuF>%~Bv?=#XC@v%^!c^i7R75L~kOD}6`o4CSWLvXF_8P}Y@g`S}aLUEFG+i3>hFTx{VIF8jEGt8UlxaLvP} zhwB1OJJm&aM__YQs3bGvRKHe{QTBb7A4PF#CQ3znmAgmueQmVe71-)8h7S$|8vEH; z39OE^QP0XZvC3b`IAvySlqE7fkhym8JlSx~2n0`zQTcuDfSc%h7z7x) zlWp`lphfcucLX|4Bub^3M9+W_JDFA~Jzik}8?+WtJlt{2wlj)p2Gc z0=cFFp0rjbN37ZyRnn!^Y4kA9<%f|jEGM=8kF>y2rAPmkvnkNy*)}U_^9w3^KtdaoXz3q;>vy>UrPUR;M{WpXd z6CeBm{wTv~y9rNboAlnfH|L&n@16Pk@An@7?+|)$u;8PEMGw#L+{KcMWfv;~_v}a& z;TwVVej!t%2buaJBQ5Qv$_XJ*UPKR%u2{;F4AO+_7O3TmX zMI!UlILVml^-UUQXK}8oc#?FgW(0ymtz~|Y#YG_*hEt`&9ro7FOHI33$@(Xz%v1SM zRZ=re`>)6Gx0tPb&}n80rH7xS9hrfP)c|Yg1#odcfQO!o7Xj9>!JSN7Nw_1>t$3p> z*2Cy18OzjixVzMGsdY2)+B7l&uaLIh`wtt~@U1I`TR?%Kzmi9@5!UJ>}5nr=W1oP-k vxZcuN6`l4C+IKX5UHYA^{HUpd1~j2+;~`60c!bCF4uzg#t`^{Xq33rCIgXt2 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$3.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/Bungee$3.class new file mode 100644 index 0000000000000000000000000000000000000000..881cb3c8f6ed173c0b61aad5abfc74ced84dfde0 GIT binary patch literal 890 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 MlKW%k;2szL4?7Q#YybcN literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/AntiBotUtils.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/AntiBotUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..b87c343e53bfd03e012340694c3e3802f8a6d10d GIT binary patch literal 1346 zcmb7E*-{fh6g`~)Ly`%b5Wx)*L6*pXEG{6jiJ$?gLV57T>Lg8Q7<#Cg2H{im2Yl8C zB|ca_TYiycskakCpa@l(s`PSmmvhfOo$tTDd<8Iqzyg;9o@38|!>WC-{4t}#^2dRf6xpOQ)}?{24s z|AMDovNWZ<40qSKFU|ePSfw{)z%ZB!M8;EDSFQ_33H`?Nx198@$_e3crDfXF&NS^a zo_?vN8;mo=0->@?A_#bnlDG7vHu)ZRT&{A?s`jPIjTTG9Uj~=Jp zkq(tqBBQ0JoE6{Omm<63@&n;hdTYCsy6J3YhWM)HnXM(hQ|QCO7(;Z`+x0VIUYceb zPof<#&}=lI(ZXFD_i*3F1B_dku<;O+6m8=Xrff`Oh9UVsNC`=qxdCs-#w_M6Jhm~9 zCl(fLEaIt!XEst;vT+fu#6>ycU$|yyC{z19y-9@8Fbk$#nuW8dh0nF;GqhJiZiqct z75<(ek62FVMMX1F86v5(r?=u*PK3}Tq7+jc3kju_LdvCQJ=ZPHkNlb|*%@l(F}}p9 z;1X^#>gH2jJ*tO}Rrl7B%}#n#C?PTniR-U#9nohdT$6$sRI7FctT}1m_ z1uoZAy1UX_I{OIFfjavCFrN?zFdAuXqMJiIqrJNCGuVg1&lhN|DHvUGrYwR9cmc9!CFc-)#ecik+JO~qRBjBA&QMB z`wn5}5f9=0pC6`n7^Zdt)wIUYPL;p8USt3O literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack$1.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack$1.class new file mode 100644 index 0000000000000000000000000000000000000000..44163a1111cbb9591edf9cd919ddfb1e7e0e9b0b GIT binary patch literal 1277 zcmb7DTTc@~6#k|yEL|6h2q<0~cfy31M@o+_JCi6<;kY#hrr%a$Iz!t6nhVQyqD(r*{})1;0WB5+zrP z&BkF_1lzpq(aAu`ceuC116SMa!sV$Ib=`Yv*v+2==`xUNda^XsnM+YqYiR}4I|Foeezu3^x^RSalz z)W8!9Pw|XlRQuT;mwR?mDiH*Yni7@OkB+D**OwL+uxR1A7B8@5;H8CStXL>u$-*m* zFx^2%l6i*y%ZP8v`@&IF&?4Jlhi&US#yFp^r|-7Q_>Y^i{Xuu#-h{3qgeH4wbQ z&{g+@s8NekVW&;*IHFDymZKTVbv7#LA~mJ$pV$6I%b-*{9J-Kf`oGeqzE>%dau0>y zpb9b~(T+PyGw5*X2(R@DFh=h&0V)F`{r!3b0NQCD=xIji8^SRCy-r#IQN(CZWU{AV znXywuGT#tA2`}Ct*-aOL+ZZ7^96Bd(lWe^bAtX`39gMaC&j?V5*c?QxiSA>>N|~=< zP4s-igw{&gY!mU=yC%%mkN6i{`F#HC7{l6*Het1Q^Z5J+sgWjnPeK;mh{GU!%_{?w z?ujX_AC_E4)K*k9Jyr0TAvlyZ`_I literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/antibot/BotAttack.class new file mode 100644 index 0000000000000000000000000000000000000000..f1f57f5611b5ccee47e5129eb205000fedefb730 GIT binary patch literal 2544 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ABNatureCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ABNatureCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a77192531fabfb061b95e5f67ee2a02917399def GIT binary patch literal 2292 zcmbVOTT>iG6#ja5VTWbHWe7L3n1Lk7eG?!gTqIm_0bNMK0*Wyqv$M@IVVGIxVoVkK z;J=6umZcAtzF3$l5|fe#AFc9TAN(O&mgVW4U5M;brYxwQ?sNJ2e0@%z-k<+|z7Jp+ zISCgfj6`us!sQq`Fe+gzhH*?(<4sITxDrDcQ&pJ8jD%SUS0(gGxE8~8+>kIQ6!THM z6+;8wmXH+R1u-m&;iiOJ!s51sCGky3SeCFNVO6Z&iQ?TT))*=$49oB)8NyxNs|=A@ zJHr`jlZM3?{p~b&mbJ7=5+!Ntnz^buhFBMb5pUCQ8HSTC*KI3f8XG)eaqpq+Y$ejZ zmE}C4+uPfkm2nf(GmDz%JA5_}j59>}M_l(k0w3*4l3QXsvwpGYr{#=9!8FCK40p!w zBp+xWY6(-bvWb-E7*=*%L|kcdE9-4Cuz6azd0U1vuK-AFH785)H9IFa%+eQQC> z70AX?w(sctx*?9^Wo|UIc>%)T?uyYJ`M=3Cbw6u&fc#mPIQ(tkl zEFV)71sHY0&1u^^0mGdQ-!vcX@Qhs$&}=e_J2KwK-6-zKSjT>FT)b(6?r!qwqV+NNGCvhiRw$I5a+@pz7AxuzzrRcDzEyGwUuXfGH3ziuBxwYXXf zlqITAhQ@Nx6lNX&z}HN7K5N-@)iw7xQ!4lK$1~cbj$v}gP24iIN8FhUmUP9*t^Tl> z<}HtBIgyrfn&Wa>9upXKhFIFP^{u3+D{2#3E=Oz_`peNMIiW(iQp<{W&6ghFp<43n zpfgc}=qfcNfQoz=qW1;&4DIySLC*mY0<|rirSTlCrVynWp!6tA2}OQHcrC0%QcqE_ zo44(xF-AT>HR>Vb4VuY;2fENrD~2BQ252Fl9+C)&?)B||hT2}G@)@E(Knh{EFFdGJ z?IHFUJ>R4HF&e{9P~EG@MT4)QMDmgoMTzjJ$$O;w_9I^ixZ0v_w=XjI40V%jb#-4s zYKwj;wDkwtwkJ?}U!Y;_DNZVlduVFgL-QV5iUtC@^?yUZ_FvGaiag^1&v>uWR@^$^ zNs`x#5)sVlqK6uIs3jgGIq(pf2}5M&TRMACUMirVjvnKBG$D>=%5)3qTj}vXh07$F zg^ES0fMwFGQ}*wZHcR<)D1#pp#wX~58f973`cr}2)4Gf|wyIVp^2IIm$eiZI@7!3B&(@g6S9-6a+8NAUqtEx3%d z+>OiKgo+QN*nulj$VkIU4IfEisufr9v0SccxUS)bhEG&{Dixn;xT)cD6--4|LGx+h zh~SKZaBts~g2$RYg*P%ICRN4(RZcy(xm3#oW!IRU9h` zvu2v%PL6xY8>tyK$4r|!1v3+P!YL%B#|q(hu6uN0-r}V|xDMUW>{p-)4sPLm3Z8id z3TJzRn-sKV0%px#W~EB(#JqxN#w~jm9}|+G9UB51klqrEIf2N!!CWPHlIv6rxFrRh z8-vnu7?z5h4vsuMk6URsR^nb!_&!B7prW8-8bZemW)+-`^GQlV%;(-5_hPj3%8o1zRKj6h~BFW>n%jiBEc@;$+4qO!_9k&qI;lWkVyD>YI z?YthNzPUHIs%kc%;~s|c^wP5qvH#FNwn4@UCWVAFT1Qv5FIi>P8Km zSTj3TuY#>M3^~xq>5^S82xqlb6rAc^*9)~a*{o?$;j)*y8{P0y7g7OJ@Dpq0NWItK z!oKSY4!=6Yav*GNZy`>Nc(NUs7A5=!~q{l4E zV3RG1A|MAZQHBChHBp<-F>1B`38kwO0nunnr;}ZUjs?GPCRH9na2C|0iYj z(oihAb97yp<#Oo8LHfs*pAe|B5vTPHl9Gtf4ruE)6eAS=9pR^lELO~VX^oOO&;cEt z=%bxpHAX)YBvE1DX!RiF7qX0y?nS}~t)MA{N9afx&Cj5&Knr2<$n!_omM~gY6_2re zBz(+>E~E7!2A7~OqiqT8v>F}H(7A+d%P^i``(tS7qs!RY`~h<=Ms zaLDowv3Z}E{0Sz0#vp#hTX;&ZTYq90f8zxHp;s%(em^msq2B=6g(cUuJjmUfgp-MU ffn$UY5gKSm%Wk8fVkpu&&^8#Q=fk88;qCtbDD10T literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/GListCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/GListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1d91687d5cac804b3546c2a4c108aa62d4c17bb5 GIT binary patch literal 2285 zcmb7FT~ixX7=8{3*=@2ESiW0mLuu1cps|&rKt%;xjD`;l#im&6AsoWOvKw|c6zWH- z{)%>V#=Bnkh87(=j+fqf;h(9F`kqY!q=Xrpi<5KCJkRrfpZ)!xpPmC4#CIy*Q1PaM zVHG1PMpax@@s^6QFnaK|ig&^Y;9V8tVNBq?2(ICJ7?XHkF3AW!z=si}FcrZxX5=!f z;3EYehtZ0(iaGgzBZ3yptN29z-<0r-yuKxu1r?u4soM%ZQ*ehNbk(p7Z;T-j@117| zPS{I=p+03;V!E)tD4aRIXwr?Iva{Tr=Z+!IrOTkVVz>;KQm)9_){0EUK_V`5Nqd6RDo zhfLPw@|32%W5_j&M8!3I2@PjKdI4^l8Wxdd=!#`;xI8CDq6r@nwVm>gKnj*L2rMhe zX;^`wU{%8!h`bIOBKD|Ta@afW0D@ZEwi$v|Nu{S<>l=_g0;^0~8w0FmZ}}8h}Qk>{o)Oi~w~N z7c|YA+$;zJw^x8EN2bVnhHVk2d7ra?Pork+)wZ>QT&_7$l@;zzi!B;gdLF4bLCZfh zm+}64G_$x$wg?^K`8?&0Vc>t&qcj`R423<-*C|bv%B7dCn3vh|!w__hdjutqk_?^k zWGPDr-o|}p)w7Et49CgHj6XyZcER${jWhJgk-r*xi)cP+jnQci3hjW{1)b?N>Msan z0(vl=3F@`!OsyVDXF|G?&M3N?eu`sHeExY_!=wXfq*I5uzw=eliwksO=tF{5OPuHHIZWqUE@Z=flchInlMuuJJ4ATR=C1c^i6eFVve>y zf55&pS+?;I!+WZ)=+5Ik;*su94g-*R9z#8?jR--fwF#YQMi<&Jj&^LJgWlB>_#P+m z15V*LMDYi@nSve`##z=!)seLsr2LO#2m`o?Afc|6c2tv6z2q)|*JLNq?h-CjbzdiD c2b8YA(V$@P1ybF`-Cwx*!f&E01gOE#e=|ExX#fBK literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/HubCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/HubCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..131583ac9a2b968ab9823d457362fe45087d59fd GIT binary patch literal 1859 zcmb7F*>V#{6g@4;8Z84dBLjvkjB#uv8+q6a!E)G~I5?4)L||e_71bKG<$+O;nT4QF zN&bSD1g8ordChY^hoW*@OM>lDD$zsN^zD03pL6?k>yLN8z5#Fr-)AtJ!Fdgp4CZn; z4oky@3@+wy377MfFrP;nSM#`rPxH8rg$$}WB(a#mXKH0Wha0%5hFfZSTf-d^pRhGeO{$&gy|nu4KFbEH^{+702~;|-T0M$NOiyUBe=&HKSrxZ?y2RxJ>=C!4Ob zEi5U*A3Xo5)re$E2+Q``Z7!REbvJ4(^}eeNns_1XC?wqLr5aUO?dIe8K?&b=tbS@; z$foeCk7`f&b8fj@wyb*SJF-<(WYa-+nPKujV30QMw}@>q292NCUHGS2b4od#&Q8=|0K@3PPB4tPUZc^`aRQ$+oR90~F!pq;({@jY83n@hq}!R$ z@P&?Le5v8Cjum{R<7?D3tm;_9x`quM-{4zfL>zV0agT&g+gn~_a$lI-^#yNs%>Is| zX@;H|?g*3k6Y_l>n|Pq(J8bEAh(`>S|79J9vvK-%-KgcrfoT{PN{0<|I1=Ln<*KRS zjH1wS1KP&*$SB#+=Q41)a`AM`hULRMGEBtL-)DA)yt4JG2m;zRt7 zTq+Oq-oUlJRPx?b9E0}^GQiXbU)l9v(GNL$82bK1dH@K0jkihP7;!)7X`(qQo<-aZ zR$9{Y#S#yOb>bnznK(u2mUaeO@?9-K$fZp|KQR3fuiyzCNM@Xz4|5S>Yu<#8pmmN3mSa^#*D#?MCvt?TS+5T{{8pdyJF zCsG%POqJ*?;tV}FCcQ5cU8+}lbox|@7_FOK`st=Ha3&}3-ZVLDZ zIKJzP9cBC%`hvw7JNo2|f0EO2JaKoOAQnKfgW)Fab-(J2ECD zOv-pSii@}^;XN7GqL@N9hG|@nA%Yt*ypNkP+`?@cxhO*TK*onca$Uw986QP4gITfM zmGQBV=Vi=^|MN0F5qb*}K9%qpLuA^tOz#FmD3M%d25!d&~&>v{>YFOff0#Jq>0RYI?Rz=_C4nsQ77lpUD z;hDCTS#azflb05JeL``%;OWNZoWA7~NmnePzz{9iHOJt0OhI`2F~ZU!djhjT95R4} zuhT(70YN2b+WuGv;)w@<>7f@R#3a9_a+Ruw$J=Muh9@DPs( ztb#8=h(a^9qJkm}hAVMnk*YyEyl{=SCDRqfQqoLITdx)S7|zFyC08%=DJ>&%(WYJh zZm9eU&E^EAqTFK_FHRx%4$8^0u1*S+SQuW;{*uW;kjkvL5*EB=7d{*9wMB6sKbxkxxg97qd zL6xfG|8)mZ8FYPHm0H=f8hybq5Tw*p@eEUm=H6*O38-(;U;`&ZuX$$0B{&tE8lcs4 zbjz*iqM_pf0h7%U8Tx`Uc%=auVxnE=xGRc=p)1HW!EB`=Q15bvWFq-r-B?$pHav;L zM%y-gO5|V6k2iX68a2XdUau1FPQvth$5Qxq{#8w{xU*%;c6d&APs(tW;c^gHVyf&m zFvfh0uBTfD`RPA_g<~dS3?1=S&n_Fp?@4Snagb8g#+GE^pK<#c zIz~d{`{|z98BZF_r;yaAtd-_T8BPQ_^ zuKG+(5E~|)#W9F5McO;$OzaX!`aJHDuVG@i8{d$(6d_Cdm?9l7kdTn+eF1u2MtlB- LO!{LaYr*)x!CiI+ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MaintenanceCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MaintenanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3c29451f6c00b4ae5a435bc02cbe01d7048789cc GIT binary patch literal 1695 zcmb7E+g95~6y0MPBxEHJkwAJE0gSm6rAcTSpfrW%LTf@>2f9cey2kQYD3NEVF3^Ym zNc#hQP97-jTFD3W3-UExJ+e*h#HOp&!>pO3ea_kE%s%tyUw^y=a0A~Nm@!b&F>7GX zz`ThuEExFE#3I}RuHqvD*Gy=*K1Apx10S2XiBC-2!m>%0m26ox@Tq|{1E1-*t>bfs z!PP(p$r^)Jn%!l{Z>XAJ7%m4=JV+Z=5k2J9kSumtc|6?ZQIMV6#(c6L#0)pfvGA0v zg+X1oQY1$zdg@kF=?md{s?p%G7Q0(Kkcp67dSatxTVc?}kHSk6ihrwACQr9f`+n)v zl^+Cd8(I;vCZd(c}WykFb?yM^Lld9L(bZl7o0(W%WwQvvj8FETm*u9d)oNf5@ACR7o_P!e$& zhdk3~u}{L;-i!^%DsQ4}%&FF=Wc-NH*1t(|ykcX+*CN+$e9(A{&jUczF zH~Y{pJZUNx3BydE7IZatyZS_UNpsc=B+2%0{KV$MaEc;yk1m}-2 ze1ehV3~G0v^BHus33ZxK?RDtIQ)os}Lq>5C1zJZjfQz(_5v6g=QKeVu?;4TbB(gh1 q_c2ke<4Us(r$x1029btCy~;Y`6JnBzo}&E#w9&a4GEdVXhvMIW>c?OJ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MotdCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/MotdCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..20e88b96b32decdc9ac34d6a87f751149c75e6c2 GIT binary patch literal 1698 zcma)6T~icC6g|z3%rJ}s1Be=tYM~IM`wGsW_r-7 zRNnF{@|YK&lLs`h!VkzV$#0-4AGddxg0N%hR&7uBo!jT0bNcrD`Ooh=0A}%xfhhyi zI!Xp+Obo*{aLL3+xZH~?nALIBL=Ud1;bQ}z^k5G22Fhx^VB%9OniRRNh8qSx)3Kyu znW1|j6ro&XC=@5w8MNg%;0%40Q1G>^zR8pO-eyD*yAu0ewC*LLTDOCmd=jP%mntdu zV-ZB*W9|wrpU25FcQX?;&RsvQ*F6!W?rJQ9<<_Fipz{~p&m;lQ6)UvGtp|^;?(Oj! zq1#TaauM*P{B7l_x8=E!Cu(k0CZVX66luMOt;W$2L7#sH=D0TCWtD??=Zc!&{()8l+2 z&YUOS7I(5n;7J}hO;$3VcNk{&)xA$AFr3dj{6>`3Lb2Ba4D-c~V=Z?^at=y0$=KT| zWipIXDig&CLyt^6kw&D5VLYecL}x{Yb9wat*Sk$$MX-h*WyQr{fr<+V4_HY|WIqvLylMFhrk7_3Hvt4Nv0< zTHSz7Gr*p-ncb!RfxxmLKQ4QtaoKVzgcJ*-{cMz3wr@bE{Cz5MsD zUvbnvR@z42Hu_&o*Sd!s!_S?Ud8(yTRUf-9y4D5jId6&NHALo^;Ih9@vaZ?4dD zj@aHLu6J-2b@D?gnWfA#lyw#kG;M1& literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReloadCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReloadCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b1df7aa99c5066c0fbf058d4d0554f63b16514a5 GIT binary patch literal 1149 zcma)5T~8BH5Iwgo-K8v07V#5x%a<)^7ZFsz_#g?1rutwFvGKuNb}!4-?cHWS(7)x2 zqKWReVIOYp%+5J8XJ+p2KRB98UmgfsiTG0xezf-!akH@6uy@mV-Y zOw^n87J=-p`+nmD#e353hqi@sMY#R0^?@I8+vm!&+i@tBx1H8oj0KG6&>6{|#1vI(=v&$wk3+10Ec8X@H-6@$P?aqi=)(7$4I#jG4->^qDC25b{q#5Br;o+50@ aXyvFrBjIrs*Rm`ou2bH$`dNxA;O1Y#JTF)P literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReportCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/ReportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..13f19f511ecbb660a2b29dd2ea999ba592fa1bb0 GIT binary patch literal 4051 zcmbVPZFm${6@G8B$xJpwfel~FN0}5@lICMuN{bChTS6(J2_PX$@hbMKvV z&w0-|?>YD8(tn=02w*+_s$##2dlei|@t!zt!F>wetK$AR-Up)*gUB?Z9@$2i$TeaJ z!z!#eYH?7-A^9bv!j5AEjsiE1CXA{$EdP3P(~l!SK8`UQk$Xqu7{~kN@PLX3ReV6o zd{D)QRD4+KqVA8x@liY^hhvTS7(U*JPvDbs_>_uIOPS9!;IsIgoE>k(=kWy-SSl8>D8Q00$R?bX2W^lyy4y6b4&X8%QGw#TU;bi^v9&^<7 zg6?R!Q9v<|nwfk+)wj0v@=$std;iVFQ^u&3E{OJN7^e%#foBPLgs8z7{6>F$KK>@qRb&Wz20>n9z!Zbjs*bpBH9H00Q%_ z4mdv#(}?M5*nqDKv{%d8Y>_5|Qkf{|dfqp6=4-rJ!Q&dffp02!OvATuO2fDD9R=Uj z@B~iN0}bE98B%k5eo({r@ua}&R3^f$TfUyPd`ZSEmFbd+dX&LVf$LJ40hy96Jso+Z zZ;C>;S>NQDhVMF?6+ETkY5YK7@zstNk|y1Jhd^5@v)|3@8N*o{gwR7%1zzhp*V7Hh z4TeomPuUuNh#zS>V}&J%T1Z zq9Pd?GPybYTrym6W1JcEO*_}D;pcdc+}8ybr3@)IY>b(DB*u`WG6K4uGFW@MVcWVN z7`a?z;s`fPFEF!=|ML>hFEsoTFDUqxhF{}Faz?{%@LLU+@H^6=RNI}Q5)Hq{lL}ta z@G@S}@GAbG;Ex*qgx3VFNv%H+<>x*PJ4qaY z1;li9^-^G-c{p#_e$SBOdSTXx*Ua(S`kx`}V40R;*6TV$jOdtQ z=gnO?UN|i~%0ntYGoWp6MaAe!9+0#YSjwh2Vo0n-sC(T$%i(3ukE_eQ4%L_2D_rdi za^OaDftA$?O~!S+NTbG(M(j>bhDlj93sK9C&?QOj=sptIQjV$kx_B$HS7w%1F!O4U zce}2gb&ojzM`BoSORsiyOZbZFc0Kat+A4mPzSE`nv`dWhl45CuZHukKjvhdiTTp6e zrG3fk>E5=e;&8F&@u)Iv_&d#`+Fg*-DX!>C=bkBx^G;EQb-Q zXbA<((x=A29bk!iQRAqn(xTL?Rf=ZZ%>NSPPYvHtd_Zu#m8;vKa0Vo;h`{ z*Ct~9=TUbyl+F4n!+oi;AQ5UN17f)eHQfXhP(#E2M&f%V8syKb+^=W|3 z+>@5B6ObaSIFv!0#OevGnL>)8P?HSOT7eUIRL)ui7_6>_WJ98L3fI?g|ABL8OEyfQ zT}H2?1}9-98;X(Wl!ofVU``+{ZQa0uu`XD?QGPE0k$}s9l=R#r<&+7mFZ+7>N=`DN z7Lo}MV>QRc;yB_Dr$P47;Me^_kYJY{?dX-#yjavSOJMcQT;Gg_^8Fz|RxJzuqcCiONB8wg3 zDcmhCVV8IbdqPI$$hyB1%k7j`DS3=%yU~E-;x=sMtPW2L9d{B}J$3&BcVRnyAWsV% zma`u0ki6#XZuFAzOT+~Fc(xX6#2M`5*%)@w`>oKL-axy8-3s2-)Oi`pIK7N(xtjk5 n<|^1D{)J_iag&1nf8)dzs;X14SHXaSebFgu5x9qA4c`4<$xnKC literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/RequestCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/RequestCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..21c9438e524fa7973445379afc22ebe70c047b8d GIT binary patch literal 4645 zcmbVQd3+sJ75?r^@@A4uNqI@zq@i@WJrc4!y4w`H1=^;j3k{)$Qp;pANv4_1gqeBi zqJSbIxD~;zbw{+~UWCwqt)QY5_XXS)+`wI2{!l^u?!5Q1y%+RHe!t9{d+)jDeCM3+ zoO|DU^gs8X0k8u9P|>HNUxBUSfQo@Kw82p@sKPCShoN#@1HT*!f^vjNmtzaIJ#t%20*tRlHh$zD7>oP=?py#xlGPH_5rz%ek9X+@j(QQpX!r zyh(n(S;bpa9940vinpq`O~vgh-lpR1D&C>uohsg?;+Tr#D&DQ)Ju2R-;(aRKui^tL zKB(f3GJFVk%EyPx@e!OT$47COe0;1FAIB#o%1@T#Q~0!s&&a_^6?aRspH*>>9Mh$H zRg6f4_bE7~U{oM}vF+O7I)S3P`YQyATfH7jprYM&tsUvXZp**i=yo`hX!lIRxx(;m zInGWNhy8XSu)IC6Owa9c>|QJ7TH!&@A4qkl-9F1oncm=_;r0Zn-PSc}D+pUNLNVXGDF*QQ@ecckZtwsa*V@NOB{n%5Ey;jT9apDQ`&ZYt32aWwosMy9d=YU&z_Y)4A{Vape|prBHM?zQQyC577DUXM6tbcBXEu-zDnQa}nT zxSxzv@PI&BhnMzEYqKpARyjG~%`$p)*3YCt00J|oMwE#9EoaCZ5-1HqqqkR%G;G7? z1R4vaXu7bHFG({KVLcsKI+JsFfr8T-&fxP39@OvzK$HGCOgp&J?=!C4Y< zYr0#*qxh=8lBAjSLbn6G#||X-dZ~HH`K>O z^zOrYkH@;zQ)6>d{fH6z#u3}ohrB`0)NMVgApHQ@-)#)rlnX7FMeuVCPvA)n zzrZgQ{7S>G@f%jJhNtkfhTr0M3VyHQ5BQ^oKjF^`{v!GE42yNV$2LcrHT+f9NJVnl z-fWTV)03j%uWZGLp`J7g#!OWj^75tFUYNa z-VhwiAG;)M&5YS=>|i5L?P022TKJMM-3hd|o+jh$8VtTbQ=zEm`7?gnSJLn8w&U0t z@&xTxZ}=i0Y!f(VJZSBn%U-Sw8&2BV*~=5UZrj9|%4J5h;eYWpbNT6%+!dJ1Q)$qU zSaVP>_qN+EuT@-JJkje&{X~1&OB90~dYO0LE@YcM-0FEwk9W|05gwDt<)PQkcIju> zpfW+BVY`G=I}uK6zu|YtyNGLAQLg4rEu~G-1+tX~7IjAKW&5JE!1)F0V_cdsETeel z_Cd4NIp#)Ph1Kq4E`pS+8t*pa^OALAt!MV6&AFDutxCTU?63}z6}&i;YQ=6em|P}1 zyARM7r7xO3sbk#l;Hl<@W7Lla(U>Kc;c0}v-43KW8IDfZX7t(^oWvxIotFZ?GWYagPaB{n*EgUSsR(`XRe=*)Kd8y*FoufZzGxg3n3c3ixT zOXp=pTS|&n#b?DE&)k9Pnv%v@@nw`w%;RIvjd5|}`KNL~&X+*M{+bf18o~U8K7s|u zFn?^kFd7r+qMV_VV{21o7r%h)lIip&^Yvbk(^HqfRzF40g*n-VeAz~>9Y^ID-lm*v zbG~e9itI%>*`@iij3r~lm@Lm7>kt* z!v+RmBfY*1>%>)9FZN-hxE7nl&1e<3;8JlHHj8_(Mcj)v@ffy=C-_C_No*I-V25}X zJH>OjEH(qXW7X)0)nHF-F}h+~aAm9udt(-^ik-l|*u%Iw_6W?Vpm(!qZ^L=SeL3Qk zybhhXf}S3Yt-&6=93`@(v*j+|y67D{2jBMMDmI7e*h%c;jv_3H-HBIVKik07j8+O& ymCvD3fuW!~(fk}L6qw>)sBLLzsBM^EKEJ%S_F2qP(DQHH{?DjAS=<&w?|%U$&m~;| literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/SilentCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/SilentCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9c25bc7264c8b4697be27956f37f2a944a7e7db3 GIT binary patch literal 1658 zcma)6ZFdtz6n-X&*)-V}NGT$|khU}?4b4`xA_M^`BGvQ-Lh)2TcqY3;II(<+=0R{qvune*^FV?iWxmVBSKbfQv;; zVZlPvf>Xd^5%1wr5f1 zeVrj&t3PDOEeD=pIMJ3$ti}DV2p{mSPo8o+aJm1Ghtk+1XHIX+h~ZK@5^kV8Up^9! z68gI!eByLt)f2*TgMObYFLFB47fLS=%@%_tc7+>jN`0l)rXZ*9eY3P5#Rt+EK|4Zu zB5Zx#e$02c<8#$>Iy#i9*E0R)qvSEe>?`CTdOYk=!;>l5DA&N}PesVkOwC0Mm2kBT zl(P{AyHa=?37)u&cQkjOtnxuJ7rGXPVkd}0SKJ}iG`u6^n}&&LJ(&naznES#7%-gt zFH^!klD-z9jWhU!;bPjjUe+E%H5I1InE!?uP zjN7L2rxxzm_zZU~tk|gIa~ofvZDG~M8rE%WV4dMYwYwF>m2JKwDpl8$k&%m6sdk5K zD}B<}w2gZPJ9`+*g-U}mEWQ}etBH$YCXMmHk9$(>%ZlM@?YN|lds38QbT{|%reZDq zh|2f@Noh=nTtz-NIX`H4vp!sCLNSm+Id6ul3^b%zB zTb?hoawhjHvRm15uJatPJxj1}&{?DyU>v6~fphfF9!B6zyhRqn+jwV`?Jwl$3+Tol z$p3&djbC7Gl?y*%>^X{iC}r@h@jLQsKf+$v!#KkpCNlUQbB7!!GWc>Ki95L;cZ%W; zA<74c$-@Y$n}zAOi4vWY#OyTLQ`GZWoTqbgQT8!p&i#$c7ODh#mmC??{srX_w(I}^ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/StaffChatCommand.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/commands/StaffChatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f1b21ea6c9c42b8e1e7d23fe77eb7ab98f4dfa80 GIT binary patch literal 1686 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AnnounceHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AnnounceHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1ffcea61368f52863f2342ce2b028f79d2adb4ba GIT binary patch literal 2875 zcmb7GS##4?6#lLqN3kM85)vp&ih*F94Y9Vg2^2_6A=r>MArx9lZ{!6fV=Pe z^r zquE@t#1=CXenu^ykqmtpQf@>;z zG1r0X^8JPs-cWH9Z_49aDsJKJPTa;j@`86@UV))v0CNh;3WS0MhOFT@R@u2{dkkBP zclaXL1K+gt60eWb?TlHmxgWTK;rRO7iRfr?yQ0tdu4z}s6Oy7s=QHG?eZsU&{|v*y zLeUe3W0x&+LFl&d?>X*WeLk=&Lg?qi*Z9yJL))ZNCbX?Z(-v2P+PrXQ`MgDv-lAi0 zYmU37JjcQ|ziJZm6HoD7<%B6*Pd{hdPGB42VkD5{>Q+!OZHE0%v5&biC}q=&sH6*$ z=@wqETaC#$e+>PFL;~WJNWFGXxQoJ-5rp|ori`J(^v)T+xkwSVba0b^W_)hkrHaHs zZ>tEuWLlOPCDbd51%DIkDT0p@z%W@TQrh)e`S!_`yz{!LQ%!6^3>;gZcAfjCC{J6w zA>3p+lhM?}TZY5`&l^QLVOVi9s54IB8sdT}3){D$Fo$K9G~{teK}ACqriMGXtH9Dw zgRNmd4k&Om)Nw??yBb`08hivA7I9C*eKa(@hxZw}*77YIQo{%E6nv=RBYdpkB%Wi~ zv8ECQc|I_$vT!B-5r&bxal;962DcCSxxf=S*>5?+snw{7atn@|3k>0T3xQ=d$Y0c@ zg)O^! zZ!0a?NsXDf?>nhqFWH{YY52%%VW?&2Bur>DyUAucoX!%rc|`(^ZekcSTBl7O3axmx z(j_ogRAfBvT2z-?56e3H@s@GKDl4wSrM6|Qcwyl(h9x+K)Sc+Q1`()HosGbCh3(Ip zH4zOt1MM3cWMz?Cfw)Rbds|^@D6vbzWlLK1fY!jNgPR@-1LmI?Y-%d2^Eax_K;dze>Jp{60gbFf}CuY^Q}P>@v+p z()r5nNd&xZQmND<|JBlw!8O_547+G-Yg}&7l?6KMluSGD1zip%p~J)`ql&rEF7ut} zGp#Rb%S0KYuR{91`!7zDj^$7bWPO+0p2dC2&$^_>SS_88w(9N87C9BxqqLT2#n2#O zAN?4}fzg}5oPK{1mfZNU!&_(z?+Vi4GPD#P zV1OJ)$1N%Rg{~!R{pn{YZNH!`{VUn06ZCQk|ApB9^Q4nODt}hymA(aHC>}%Q6HvQ1 z;1IINHqres`*0N~O6?#ts>>kNM5Z=iX6FcazglC%Axr|*YJfe%;!@YY}&#NqUQRYFVRH&GvRLC(Z;ZgdZ zpxUez`!t%@%2_X6 z8FPv?Sr)?KRo_VtoyADFVcC~6`l>ddDt??f!!YW`!V6_7@IMm{>3<$Z*LKt^oc2W& zJCjoRQ=z)Jz1HdzzVy{Oh8x-cq5n9deRd9tCAZ38Oot_+>WJ%0u~1ttifEY^gM_@$ z`Z z-Zj!cyrd`dyqb7N8DnCO!CDGyktb$-jiURX{GZkdL1<^B7lbh-#Jo_Iuw>#L8!qN; zJd5XS^x|n7&uDQBeKw9`z{G-$OITz$(MYL+R3eIMRV7L@*F8~Heke`6YvVGOOf1`2 z!76!V<2}4@;{&WQ3^vc0#{k;+5FeTN*v2QgV&YR997P)*N|bud?KH`}%m_ng!}m+Y ztHPti?`mvau1Q%BeX?0oe&7@cB3EI=F!IE&q)>!%r+OHMvIj0Qoe+DRU9Loe6YADD z5P~Y#$j<2-x#k}2A(IlO!eH_wX((Br+Af#`-DDK;FI+#?W!>EXy}M1_#NQ>LH=Em| zx(xLgq3c06(}Dd1 zT@7l~MV-ZD7|*SupIUzpC?YUAJ9W_kG*aCqBb8n`m73yu4AgD^ z3Ii!RTj@diJ`UZ1;r<9~3+?XU1K13=F-nue48Ndbekhf{NAJFe)E181Mla0_V+);n zypN+>=(>C7uSa`Ui8E=m(Jw^=0C`v>zalrkrr8a0>>K(@ev1iwhgp1&3%H3n{D5WL z+J%t8i#UaB0%oNSCP!9|qP1X>#XpcXF*x=+T}WYw4q7mb(=-}zaE6pYucC~nk)FQ+ DKR*fx literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler$2.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..96911e1d6d8e3cc67df209127fc07443621d5ec1 GIT binary patch literal 1495 zcmbVMSyR(c6#i~o8XCeP6kJi%s%dEns~dxE2syMHA9>B&Da;t0IGL z1z8meaw>XYG@uuK0qIvUfI$UA3a%@-!H`(vc1o-X=`&;sQuxMd>B*2$tjV$v2CrI1 z_|cemJip+SEjbbB4l~64ishwx83qcTFdbR4t!Kg@2hSaM<(GYhlU%r-F(!R$-0`P& z_`rO`l9oTp@KpZ~`=bL*FEPaOPDwB{7c42}YO6)zF7l#HlGcJ_a(jupR>1EHV?kmJ z+O(9y&D-4b1hGTMN15uUJfm(+64e77j6!x5miZbtY%a^jwDg7R)~dcJO{|-u>RXN^ zlg0&~n=7-t8Ums|GN=nq%{9fO6`*eWvzR@BL&|PKnzrLvvOFvNic?Z>Q^PIX*3gPJ z4J|mKA&E`}!x~0#hvEFcfoK>FwC`%ThcN}?8uGZWVFHs19%z`tG`0TNolo^MwCo3d zSX>q+OjzL|R&c83gF0fuwsXLcb*1>1zl5%M%}^vpLhf36{xjB9i%x=tih`l4zV1 zfmb+1v?DZb#%Y`-j*LQ=v|u=g&RvHuNhb)AOCq+7_(#+iy0=iD`Gm+85?`P)yhZCC z+rY35Z6gd4M}lt7D1xwOC@}Dv=sS|Wfl5|Qc#kYT>_Jfx!+Bf?ZF9Szy2z>?(P;%2 bW1Zyd67dmSMvBfDuHY(p26>}(r<0zaDDH?) literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AntiBotHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..efcb5746f5f295c176c0a3f011d50abfe8b1c2e9 GIT binary patch literal 6372 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AutoMessageHandler$1.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/AutoMessageHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a5e3d29362936bfb4c874c4640cf7cfd4fc88a82 GIT binary patch literal 1271 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 SjSOC(RY0d+FR$%I^!^9A^KYjB literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/MotdHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/MotdHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..61ee8a3e3f1b5c776d3b753dea40572eebdb883e GIT binary patch literal 1984 zcma)7TXWM!7(JUf$WfHw7y?Z%A>@W*ClP6(H&Y66piu18#5BEenT@kJTa=Y6tb~0ZL$Ql!F~UaKJ$!`vHuJ9RN+d{q;{p$N({)K#e( z46C^^p>PlOo?JbG!JE<*heBz$8u-6FH+HwoGy*mf?J(s3zZ2GS3tem+c+xxrx9{8msGx1~9%Oc&K_rXB}boUu@Hu!&m^ZsQ9JcO2Zsmlp0h zD5JtK7Dfa=F*q!2Irs`y3-=vtqh{fOgRfB~n7=CTHwI=~*m3X;zP0e3gYWT!gNJy; zur^p^NkU+_G}xh~r5Cy#%nb8M#~rK4HL?&&1Pm9FtRgwY$3;LJLf=)P=BiFy&F7Z; z7&kiVa-q}BkWV!dY=tY{Fo{+MICd)Pv8D*Qq`H!9DOn&I22UjR7}dRGvG@2F6LEA* zjtGicVRkU*amO)?(^c_QHd;ZXONOPs;IV;Q>b4`C3ny_V*)fa~p>cmu>|B4-EcY)B z;4p5F-iD74d0T`{>M1(pxdCU@)4_{_S&5Zc@;#ppepClsg&xT&okH~b2-V;WZ3@Zo4&J3b6Z&`ZOVPOgCq}ZT+OS?z)IuBS%F)70 zjBc%F?d(_^&eqCm8{>tQHYQB!VM+wdz@qmw911&$_vkl+CCt+2^dfyo=b}>bagzT^ rS&ys?)>&MjXNcx!$$pMv&PS1%g9Z9CM%6CTv$TOrG~{S$2+RKhfBrBp literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler$1.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..9092c9a6e7b10c63a8f9d5918b8510a1b884eae5 GIT binary patch literal 1688 zcmb_d?QR=I6g?BCS$ngk!3}MJLf36R?38AclJJ!hXtpUeb?i`w@bL$Y*He3w^^CPU zTgVUoA;Bx~7!;AFAn^da0ndVjxMLfvDlR1wmOOLk?mc(TnR{pVw?BXW6~GEU&EYJH zHl|U^VGav6uHrQ_T(hufV*;ftJTotu$IHgLp2h2CUYW!y-pJxj8*kz5EZ(uPh8q^% zwXkmCJ%$P04wIQBhU=9?1WGoe@V@Y*&|j)}-)p3@C4|@JqP zLCcjBZ#}b2+%s`1X)GEVr|X&r`&+y_*vPJ{G!De=ut((y)r))l0Vl?rGKf?X%GQ?9 zZPm2!zJr@6I5>y%4lWpL1HOe@4mNSy!3Vg*aNdBuh|88&*D--N(lBa@m^2j%1$U!T z^Y3onavhZMp@X}q7;B4R%Jpm2>ZZR_u2t(Ug*vFBW?|dGN4UqZFc;jEI^0m&ZS%x! z2kfACF^L`)d{K2R?3!esP$vxi|E&>bmWkm|S*@`r z0!<|xy6&Y?_UpQI(&P-eSR_K%ySzjFlJq9_Im0DtQm@neV)gGX<=xQRj@4HObrC-> zXFAyux-1jTWk4NurC6#w143P46UJ9EQKs^ zE4)@Z<{A{8fL0??!M-3QD>Gaymj5j{t5rWG!!!{)wh=>Nl)fj((xD{8bW0=&Z;`?m zMiHh9G5ho~r84blTP zHD#_Ky*S6{e*rI&_a(B{X>C0A!quO^79L^jhhEIfG)_TF|d56qHoPLbw#_<0IWqyQB z|4jbO5vKCbA0cm)WMGtBMwUiFitf|*p@nUn^oC5oU c9%pcc7Gs#fEY0KeJ(TgRhbg)4q?_A>N=B!pD;kjq>&u?>NUv$Jp*D zG)t1mXgi3GduI~o9Kb{BdtvQpDjSo6^Jz{p$qx!+E){&KfcgsRlyW_81b-q_vspfa zyHew6AYgWew_V0%CRqP?1+{*S+TW@sq-7Va!&BPDQ59yd^E15An#bS^xk5 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PlayerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..4a2ede5b6453ca5e9b60f85ca5eaba1dc4234e42 GIT binary patch literal 7383 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 CBEsJQ literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PluginMessageHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/PluginMessageHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..ab32d594f8fe64e54cb0a546738b4a5cdd0e4a4c GIT binary patch literal 9452 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 literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/ReportHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/ReportHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..154a5c807172505139fed919ed641f7b25384648 GIT binary patch literal 1891 zcmbVMTT|Oc7(MF?!nS}wLfX(9F(t7{YB@A%)0&bCX$nRJ5(BxsbQXIt8)V7Vg@pgn zm(KLPFU>>SnFiXKCeQs*oqj7RwnKgmzJ@@+ZBdPO*U=r2d-eabaZvDXS%VmbgL50Ep9gr z)3KYCdD=fPCvEA^GfWpuPt+Z|VaaV_*usC}xVy$yU^j&@ZiYjpxXF-Oa2mulVoF=w z30hmiUFTaCMaE30&aF-EN;QvzDStb`VrW6gD*O3_%e_`Yz% zTuFg?XDGehUWP&G-5}IG)s?p;enjGHKCkamhvPDyYzluxT9%Aj z)o~9shT+ho9h>P`$FhbE9hAEF2#V_{TeVlU`a@4I2TYeXar3RggLh<#3$Z(=tquM^v zx2Q1nz;%V~ugjK*dd)yqrk-hg+zQ0%Hp9t6H3sXHmkvs@9grKY7JAP2>egd&b?=Ff zBfZ<>5DBJSd@gNoS?n{6_W>%BDU*~I!?}K||7E6|$)Y=EQz<`Ui52ee5LSynrTP}C z)nXNA>Eav%Wk>&v@*9n()wPLtFhK8QLwZh7WS(LP8V6=BJO}$F{N_D+X2a+x(uDIq z%}+;P;RAd~Gx{DMVKPKNi+qeVO{4l{ensLCNd^VS(1jbvAOU4Cg^%Mci=iA~g0{>Y zBE@ik^eGJR0}LJ_lf?bkC7mJZ6QLwMq?^Dr&M8uyM* z)BE1ki?%Zr+8OoQALaO--8Bgc&S++`XU}`~eV*t2Ixk=S_YA-#{E)>Ej0^@bnZpH4 zCjlh?dvB+CxhD=p9Z0-lHV7RdVbh>N1x;lTm9PKS`Hw@FU z8|4}D@0pgi^k*2x3#KP(j$OCphA?d5KXTkHV?D4NLKwHgrCeNNNXXh?b&D)Rrc>kA8h54I$HtVuDM|Om_h4^w;uNlD+>gSYi}p%e%L*FOX2`$CJ(k9x z)uk6HNfwmQKHh3sJ8zOl*(sP5mC>yKeECgSyd@0^*%mclI<~RwI*+BOFI#*^xM8rQ zK)o}RKFpV)S9&)Ibz7C?Ly3PP@l~JKwy4B$9*;JJzbGwBMm6$GvEhFNa)pFV*Q~hY z*{Tz`HE~C(@*Ulu{*r1m9iQTaj$;_sa9hWB$ZNQx<9p0$nAcIkf({dlI__dg$1?8e zxQ{ABf7qq%M$@r^1r4h@*6@H~u+zhH+}ore6;GbRIlKW6X%dFBhx@20@r<~g7{(5& ze$-)xDLr4s59=L<9Mx;pmNdWfbsCLA@$Ffp@$Mw4xA)wFGH1!8G~>Qt!2VD0?Us3cnf^~1G7*N88zKcv3y9{SkQ z?H-#*Fva3?X?qJ|hhg{tpdz(plEPv*bI|F#%yccl7Lp?B&-dXA7~hHMF1dnV331^X-f<|I9{p>+^x!ugE$ z$D^DXm1lmm>A%fud1 z47*4lLl56Y?;bKqJa}8u36ee%O438R5sc%EBE?x0V$=pw;n`Fhbr0DDenXznyKK1x zUO@jBeZT$=E%gUd$v+7x87fw30)?xBkC>)nrXpF=NKD>Pxt+kdm~<;9o$MkANk_X3 zZAKCzGP~%1l6lgm>?dl3wacSKDe6#9c2Ot6N|eX*?X-`Dr2%sPW8lZ9IPwn?oy13B M^pnP~2s?q&YxG{n!2kdN literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/SilentHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/SilentHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..f166393c9220ddf1e227c4bb0972e688a6710fb3 GIT binary patch literal 699 zcmah{TT2^36#izD?&jt#-rL%GLA-%eM4u7@Y7vFSmsG*0GD*fby3We%uHw&dQ| z{Znx%coM6C`znen4EefhYY`_#GR*$tuKtA&4)%UlYLwtsl~!?$VSdq%WHZ#QKpji2 zWqcKyGu}vaTS~r_s>;$KLv}lC5&3|xwA@e58`As|jesm=KWvKNP#9%#*O-k@RK&3M zAMO)DHKmDoJsoSe18r*;LDE**4)S4V47qAE=#G+Ew2c<(VPcwchghk(H{`2!ZzYt_ z$1wc5!%btvwOyojjg^o?p5aID+V6MHu+Tfj-YVkV85!ni&-}dgd*fx%;zIGx*y%;3 zmIgC)e-{iMy}WITbb4vyoYmii_9NnEg@Y#O<*K#*>TbiCY}L@!LASh literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/StaffChatHandler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/handlers/StaffChatHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..b622adf0b6b5d30c5fccc2bcea1ebb2a41f04c7a GIT binary patch literal 3522 zcmb7G`&SfY7=Aw7WtQDhalN9YD1wWitEpK)mVy@&kVG*xvjK)>aGAlGS=8=Vv#ji1 zT6QqP&;vt0dW*0RNd$3LS zw>LJ_uAxC;onad88iDdylcRT9W>?ba*5jt`9g3y>S72qViN(bGy7sP0SEKbCaeY8H-S}Ab^-}7U z8T1qcmS3~Am$l47U};X{;nWPvjJMj>K|}BI(_p<5i9zSSX06|Yk4zIN*_tw4qfc)) z9D}&7HBHOaTpAPBh2#ADWqD;}p=g;BR)N@+u#hU5`U@>H$qus^N4E!LF^k3plQ^=N zZX*$I^OPFRZi`iv=hXC5%S2J|pn``4LUo;tSghhGo>B0uisx`l#q&6(-~|;g;w6FV zT&&2~8Wk_&6$P)Vcnzs7sPhy6hOC3pL6>s6BinsBOf_GKChxb{l ziVtu~#fLbp;3E|uW3j+Y?+7O~lNh?TVJ6n4jAWN?%L*Gw>55gmJp@W6aC=HCR_|8v z2|guwDn65G1Ssrcn<`ee7dEig4RD%RSzc1X?(ffbp& z#~%5-$C6CQZzX4u6Cb9YKv^!3{WI-NEZvmMD$k`gj#vaEQ$wSx+nQ_9cwR1Jd9Dum zoD_&8bhpuDTg*-psw`HSlb%^7q;N59TD{rRteILuW?7xbaJZaN+Vl|1l~*oZ2D9}9 z+o9XCDLy2dbDz{v_O&_d7*4T)l{T|H|NKWd#y|G=VCwZtJVkE+3cWWh5tl+NVPQa$E{r!TY$$8m3jV?l@$m zz_c{1S<{0V6nnsC$v9C-e%p0+7;euPaQ&I%fjhBBb6Rz~&u|R_4ktrk_TDTN>@KlG(3c5ibSDB>m%GD*Yfq*nhoA@yAymMNGnyqRD!>jIZvtez zC{qOHGF~a;%ttxOyqKlFw~?3?xCu8iVvssDsAaS|+Jzu4qg=r)Si@Z*f4`Nhz-?IT z=Oqr)Pa$QOm{<4*M2_P(`Sv{`&CF1h8BP>vp=?rg@*s+j6O626z3fj_N2d%SDhoO4 zfi`sr(*$Y)C4nJK7ZmT8Z!-kwwkB8-98qsSi5QdIBz+F$aZzql(Q?u;DUd3O4=)_fHfQ{K1s6`xC+@G}1`&ri^`(f02t=NL0$t Wp-_^8=blg5P+%ILw{tDP=Klbx`N*K`V;L(RRz0jS%$+Es>?uRKTI(=mnqf~e6kE#3 zi+B{s=t=~dka8>R3f&Qra{dI&*nt`|?6=0U8=9V0HO@_UH5o9P$M_dL&*`={NB#4iC*T>(A#GT^Jfw0LihV36oXWGihkhUb^ z7U_0VZO-!kLnd~Srq6LF1?Je3^~mFNGrF_&7qI6foFnVP1R_tiFnRl!CofO_0wJ#W fFlh#OrAqx3sV9O`n3m^$m3vr3k>a$3Bx~slx_*X> literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Handler.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Handler.class new file mode 100644 index 0000000000000000000000000000000000000000..888238a6ded123f5b5abc5be37c03a1ff5504c8c GIT binary patch literal 812 zcma)4$xhrr6s-0v&KR?qum=cBlwl%ah`51}010sz0ZI^ekEb&V#FaI zkdKNeFCgW>a(P=TaOENLS0`M;KkYomBUvbocVKMfA4PD%lZu*L)tndL~fa54%!exUIB2O22kw zbn0~iPMmh=d%>9(sjM%D)#O~o0;^AGr-=$;_t2wJ8PQSA52P0fRGQi68aTcy93S*W~+4r(fV)=;}<&vgN#GOf>o7O1H+8KM1f{E!j8OLl|Kxl za7xX!{DfzHRQjm)QOh(%uIW$>L{>0HXRpZ{=gAnW!jH==h^V!G!}!Ufuu{*51Gxpe M0F)L41v1pc9e=LBmjD0& literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Message.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/Message.class new file mode 100644 index 0000000000000000000000000000000000000000..77a16eeb30ed4a7c9125ff54787fecca86c2f468 GIT binary patch literal 1333 zcmb7@OHUI~6vzL!EgfiwSA~lB0F_4zEu$i!f~b&~khDmGVZp{s+iMw^&XAd@;>NFG z`~{EDlj=xmNXIaR={PiG)REONqrnh}E?JHhEDMBF=`DfCs#}r*y*bN~>(xp@dXLS5 zO-mx@7EOE0^em+}jFDi+@&(d4Ulv`bWLr+KnZs#BKIs0Nnp8+qybW?3!@ z#C_?M8mhoxDz|GsGY#8x%Eo5kSx$LTVMJZWCV{|Aj`562>B-zlKy%+Rn9PyIz;Yd9 z!*dTTS=zA87t&*Vtx`{=h);zU=-v#>;$Gg|uT`Mon!scmhSN_KRcv2+70dUTm&&GF z^@{SLrMjaxDw9~zMIu@}ckolk5G~Cs(jC(o; zFsS1`9uWN>`!3Me?8T$PE_=uR)J$qV##$gfGjKhD;Xjd9YGYh=y%J|vmcg3i2c}bG z&6iT?Q^RR`a}+VU*XP0=8KQSH;i_xf^#Rgvpq*Wy)A~h~{O$1xt(x|Z>95NJR>Sq( z=K4A{W#GiWwpaCn={^3pb`eW8p)2rA$G6RZRZg_ojz%S|OUun7%0|n6v|a6Oew%TA zsp=O7AEAe5FExX=;N3Cx9^x&95c+sVYsM)0DeH9yByfgWm)Zkb)Z>@*4)e|)BJ>X7 zBSZvp(?{qKc#UBSQGrj;@|meabRMBAgf~CFswClBk^~~PfFp<@O}-3Msf0;}RkkF~ zQet=v;T-Q_{^JOJgRbHHF yIvA#x;rmIIz$}x@vt&g!O7aovicA&0&>&ONMKW@cY1I*~Gfo^6iW^HCEBXm78$O8u literal 0 HcmV?d00001 diff --git a/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/NumberUtils.class b/Bungee/out/production/BungeeCore/secondlife/network/bungee/utils/NumberUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..5ce4b53847b24fbdbb5890c809f82fed05a63325 GIT binary patch literal 667 zcmb7B$xg#C5PeP;H=%{Hm3_Oh2y)>D;(|aR1vr#N;^wBNxCEz49N>?*aNz{vzz6VA zh)Iel5^x}qXLB(7px!Dj-UbEaeZ_XQ%k(QSd~W4CMw^b}0Tcv`nhhPSDe zEOOEXSJ$j<%`@e9lNt5*&6>cSLe0=!r)-%OLv;-QmFpdPFQ!T}MXdXfm=3MPJho*R*Po z>!98{teily=+-^mSTe zDSUx173`$&6~1PWBa?T_Gm=PwCeR<8c?-Y5O2N3Idl} zenY4Wb<+ycGr8~k)!K}zYE?6Dy9cayUUzM^UNgL!TJ_utBdn=5J5l$vim#?nf}TPd zh77Wj!XEbJ&XnXJg+nQ@FeH#U#n;Mg3bquD|BqHZleG{%%iIb`HXPGtaoN_aI?KT! zTIKY#RF*AQ^VyRxrF@-r$mW*Y`#F%a=$+w62uz>TT`$^NH!R-yGm*)yw%cybL#I}) z8cvyGdXDLK{WJ9;rnv8(1f9*jtw@b?M}fCU(xpe9Wm~WVPR_EC+WLjZ2bzHXBart{ zrX>m+YgTgOv{;r`lR!+j+#1)ODsL9HAZKOM({uwjaE+I$e4-F?7)WpMOXVuK#>N^D zKXKE6o1~oqGmcx_r$Pk`V}xG`+{U})$irotjBvd+c7%@ayGrSZvzU%Xe?e?Fa_bnK z#bYRI6F*WTwAvkLccBXxc+>U-)`vn1$YGRvUC3YzZZhYV^O z^T8Sk(tMk4fdK|Oi1%;>9|aoMsdJNBLwLkAFER153^Gv@{EgkErl2IsKjjD95hgxl eqQKKYKO%o&TEV@4WDOPiBbkvkpQW?|bN>RcZ@_l| literal 0 HcmV?d00001 diff --git a/Bungee/src/META-INF/MANIFEST.MF b/Bungee/src/META-INF/MANIFEST.MF new file mode 100644 index 0000000..4be0ab2 --- /dev/null +++ b/Bungee/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Bungee + diff --git a/Bungee/src/config.yml b/Bungee/src/config.yml new file mode 100644 index 0000000..63596f1 --- /dev/null +++ b/Bungee/src/config.yml @@ -0,0 +1,13 @@ +whitelisted: false + +server_motd: "&5&lSecondLife Network" + +auto_message: + active_messages: + - msg1 + - msg2 + messages: + msg1: + message: "If you find a hacker kill him idiot!" + msg2: + message: "If you are staff kill your self because this is bullshit server!" \ No newline at end of file diff --git a/Bungee/src/plugin.yml b/Bungee/src/plugin.yml new file mode 100644 index 0000000..36c54a4 --- /dev/null +++ b/Bungee/src/plugin.yml @@ -0,0 +1,4 @@ +name: Bungee +version: 1.0 +author: SecondLife Development Team +main: secondlife.network.bungee.Bungee \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/Bungee.java b/Bungee/src/secondlife/network/bungee/Bungee.java new file mode 100644 index 0000000..410a4cf --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/Bungee.java @@ -0,0 +1,151 @@ +package secondlife.network.bungee; + +import lombok.Getter; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.plugin.Plugin; +import net.md_5.bungee.config.Configuration; +import net.md_5.bungee.config.ConfigurationProvider; +import net.md_5.bungee.config.YamlConfiguration; +import secondlife.network.bungee.antibot.BotBoth; +import secondlife.network.bungee.commands.*; +import secondlife.network.bungee.handlers.*; +import secondlife.network.bungee.utils.Handler; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.CopyOption; +import java.nio.file.Files; +import java.util.concurrent.TimeUnit; + +public class Bungee extends Plugin { + + @Getter public static Bungee instance; + + public static String incomingBungeeBroadcastChannel = "BungeeBroadcast"; + public static String incomingAnnounceChannel = "Announce"; + public static String incomingFilterChannel = "Filter"; + public static String incomingCommandChannel = "Command"; + public static String incomingBanChannel = "AutoBan"; + public static String incomingAlertsChannel = "Alerts"; + public static String incomingAuthChannel = "Auth"; + public static String incomingPermissionsChannel = "Permissions"; + public static String outgoingPremiumChannel = "Premium"; + + public static Configuration configuration; + + @Override + public void onEnable() { + instance = this; + + loadConfig(); + + BotBoth.load(this.getDataFolder()); + + setupBoth(); + clearBots(); + + new AnnounceHandler(this); + new AutoMessageHandler(this); + new MaintenanceHandler(this); + new AntiBotHandler(this); + new MotdHandler(this); + new PlayerHandler(this); + new PluginMessageHandler(this); + new ReportHandler(this); + new RequestHandler(this); + new SilentHandler(this); + new StaffChatHandler(this); + + ProxyServer.getInstance().getPluginManager().registerCommand(this, new ABNatureCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new ABVisualCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new GListCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new HubCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new JoinCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new MaintenanceCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new MotdCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new ReloadCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new ReportCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new RequestCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new SilentCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new StaffChatCommand()); + ProxyServer.getInstance().getPluginManager().registerCommand(this, new StaffListCommand()); + + ProxyServer.getInstance().registerChannel(incomingBungeeBroadcastChannel); + ProxyServer.getInstance().registerChannel(incomingAnnounceChannel); + ProxyServer.getInstance().registerChannel(incomingFilterChannel); + ProxyServer.getInstance().registerChannel(incomingCommandChannel); + ProxyServer.getInstance().registerChannel(incomingBanChannel); + ProxyServer.getInstance().registerChannel(incomingAlertsChannel); + ProxyServer.getInstance().registerChannel(incomingAuthChannel); + ProxyServer.getInstance().registerChannel(incomingPermissionsChannel); + ProxyServer.getInstance().registerChannel(outgoingPremiumChannel); + } + + @Override + public void onDisable() { + Handler.clear(); + } + + private void loadConfig() { + if(!this.getDataFolder().exists()) this.getDataFolder().mkdir(); + + File file = new File(this.getDataFolder(), "config.yml"); + + if(!file.exists()) { + try(InputStream in = this.getResourceAsStream("config.yml")) { + Files.copy(in, file.toPath(), new CopyOption[0]); + } catch(IOException e) { + e.printStackTrace(); + } + } try { + configuration = ConfigurationProvider.getProvider(YamlConfiguration.class).load(new File(this.getDataFolder(), "config.yml")); + } catch(IOException e) { + e.printStackTrace(); + } + } + + public void saveConfig() { + try { + ConfigurationProvider.getProvider(YamlConfiguration.class).save(configuration, new File(this.getDataFolder(), "config.yml")); + } catch(IOException e) { + throw new RuntimeException("Unable to save configuration", e); + } + } + + public void reloadConfig() { + try { + configuration = ConfigurationProvider.getProvider(YamlConfiguration.class).load(new File(this.getDataFolder(), "config.yml")); + } catch(IOException e) { + throw new RuntimeException("Unable to load configuration", e); + } + } + + + public void clearBots() { + this.getProxy().getScheduler().schedule(this, new Runnable() { + public void run() { + BotBoth.attacks.clear(); + BotBoth.pings.clear(); + } + }, 1L, 1L, TimeUnit.MINUTES); + } + + public void setupBoth() { + this.getProxy().getScheduler().schedule(this, new Runnable() { + public void run() { + BotBoth.joins = 0; + } + }, 0L, 1L, TimeUnit.SECONDS); + + this.getProxy().getScheduler().runAsync(this, new Runnable() { + public void run() { + try { + Thread.sleep(AntiBotHandler.startup_time * 1000); + } catch (InterruptedException e) {} + + AntiBotHandler.startup_multiplier = 1; + } + }); + } +} diff --git a/Bungee/src/secondlife/network/bungee/antibot/AntiBotUtils.java b/Bungee/src/secondlife/network/bungee/antibot/AntiBotUtils.java new file mode 100644 index 0000000..c9694f3 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/antibot/AntiBotUtils.java @@ -0,0 +1,17 @@ +package secondlife.network.bungee.antibot; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import secondlife.network.bungee.handlers.AntiBotHandler; +import secondlife.network.bungee.utils.Color; + +public class AntiBotUtils { + + public static void sendMessage(String message) { + for(ProxiedPlayer staff : ProxyServer.getInstance().getPlayers()) { + if(staff.hasPermission("secondlife.op") && !AntiBotHandler.ignore.contains(staff)) { + staff.sendMessage(Color.translate(message)); + } + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/antibot/BotAttack.java b/Bungee/src/secondlife/network/bungee/antibot/BotAttack.java new file mode 100644 index 0000000..00ff847 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/antibot/BotAttack.java @@ -0,0 +1,98 @@ +package secondlife.network.bungee.antibot; + +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +public class BotAttack { + + private boolean pinging; + private boolean nevv; + private String nicktype; + private int length; + private int bots; + private int legit; + private long name; + + public BotAttack(long name, boolean pinging, boolean nevv, String nicktype, int length) { + this.length = 0; + this.bots = 0; + this.legit = 0; + this.pinging = pinging; + this.nevv = nevv; + this.nicktype = nicktype; + this.name = name; + this.length = length; + + ExecutorService exe = Executors.newCachedThreadPool(); + + exe.submit(new Runnable() { + public void run() { + while(true) { + try { + Thread.sleep(1000L); + } catch (InterruptedException e) {} + + if(BotAttack.this.bots == 0) { + BotAttack this$0 = BotAttack.this; + BotAttack.access1(this$0, this$0.legit + 1); + + if(BotAttack.this.legit > BotBoth.timeout) break; + + continue; + } else { + BotAttack.access2(BotAttack.this, 0); + BotAttack.access1(BotAttack.this, 0); + } + } + + BotBoth.cancelAttack(name); + } + }); + } + + private String getNickType(String name) { + if(name.length() == this.length) return "length"; + + if(BotBoth.nicks.contains(name)) { + return "nicks"; + } + + return "null"; + } + + public long getName() { + return this.name; + } + + public boolean handleLogin(boolean b, String name, String IP) { + if(this.pinging) { + if(this.nevv == BotBoth.isNew(name) && this.nicktype.equals(this.getNickType(name))) { + if(b) { + BotBoth.log(name, IP); + + ++this.bots; + } + + return true; + } + } else if(this.pinging == BotBoth.pingedServer(IP) && this.nevv == BotBoth.isNew(name) && this.nicktype.equals(this.getNickType(name))) { + if(b) { + BotBoth.log(name, IP); + + ++this.bots; + } + + return true; + } + + return false; + } + + public static void access1(BotAttack attack, int legit) { + attack.legit = legit; + } + + public static void access2(BotAttack attack, int bots) { + attack.bots = bots; + } +} diff --git a/Bungee/src/secondlife/network/bungee/antibot/BotBoth.java b/Bungee/src/secondlife/network/bungee/antibot/BotBoth.java new file mode 100644 index 0000000..c312ad9 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/antibot/BotBoth.java @@ -0,0 +1,253 @@ +package secondlife.network.bungee.antibot; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.FileWriter; +import java.net.URL; +import java.nio.channels.Channels; +import java.nio.channels.ReadableByteChannel; +import java.time.LocalDate; +import java.time.LocalTime; +import java.util.ArrayList; +import java.util.List; + +public class BotBoth { + + public static ArrayList starts = new ArrayList(); + public static ArrayList ends = new ArrayList(); + public static ArrayList nicks = new ArrayList(); + public static ArrayList pings = new ArrayList(); + public static ArrayList players = new ArrayList(); + public static ArrayList attacks = new ArrayList(); + + public static File f; + public static File Log; + public static File nickfile; + public static int joins; + public static int timeout; + + public static boolean isFakeNickname(String name) { + if(starts(name) != null) { + name = name.substring(starts(name).length()); + + if(starts(name) != null) { + name = name.substring(starts(name).length()); + + for(String s : BotBoth.ends) { + if(name.equals(s)) return true; + } + } + } + + return false; + } + + private static String starts(String what) { + for(String s : BotBoth.starts) { + if(what.startsWith(s)) return s; + } + + return null; + } + + public static String getTime() { + LocalTime lt = LocalTime.now(); + String h; + + if(lt.getHour() < 10) { + h = "0" + lt.getHour(); + } else { + h = new StringBuilder(String.valueOf(lt.getHour())).toString(); + } + + String m; + + if(lt.getMinute() < 10) { + m = "0" + lt.getMinute(); + } else { + m = new StringBuilder(String.valueOf(lt.getMinute())).toString(); + } + + String s; + + if(lt.getSecond() < 10) { + s = "0" + lt.getSecond(); + } else { + s = new StringBuilder(String.valueOf(lt.getSecond())).toString(); + } + + String t = String.valueOf(String.valueOf(h)) + ":" + m + ":" + s; + + return t; + } + + public static void log(String name, String IP) { + try { + BufferedWriter buf = new BufferedWriter(new FileWriter(BotBoth.Log, true)); + LocalDate date = LocalDate.now(); + + buf.write(String.valueOf(String.valueOf(date.getDayOfMonth())) + "." + date.getMonth() + "." + date.getYear() + " " + getTime() + " - " + name + " - " + IP); + buf.write(System.getProperty("line.separator")); + buf.close(); + } catch (Exception e) {} + } + + public static void load(File file) { + file.mkdirs(); + + BotBoth.f = new File(file, "players.yml"); + BotBoth.Log = new File(file, "Connections.log"); + BotBoth.nickfile = new File(file, "nicks.txt"); + + if(!BotBoth.Log.exists()) { + try { + BotBoth.Log.createNewFile(); + } catch (Exception e) {} + } + + if(!BotBoth.f.exists()) { + try { + BotBoth.f.createNewFile(); + } catch (Exception e) {} + } try { + URL website = new URL("http://craftplex.eu/download/nicks.txt"); + ReadableByteChannel rbc = Channels.newChannel(website.openStream()); + FileOutputStream fos = new FileOutputStream("plugins/AntiBot/nicks.txt"); + fos.getChannel().transferFrom(rbc, 0L, Long.MAX_VALUE); + fos.close(); + rbc.close(); + } catch (Exception ex3) {} + + try { + BufferedReader br = new BufferedReader(new FileReader(BotBoth.nickfile)); + + while(true) { + String line = br.readLine(); + + if(line == null || line.isEmpty()) break; + + BotBoth.nicks.add(line); + } + + br.close(); + } catch (Exception e) {} + + try { + BufferedReader br = new BufferedReader(new FileReader(BotBoth.f)); + + while(true) { + String line = br.readLine(); + + if(line == null || line.isEmpty()) break; + + BotBoth.players.add(line); + } + + br.close(); + } catch (Exception ex5) {} + + BotBoth.nickfile.delete(); + + BotBoth.starts.add("_Itz"); + BotBoth.starts.add("Actor"); + BotBoth.starts.add("Beach"); + BotBoth.starts.add("Build"); + BotBoth.starts.add("Craft"); + BotBoth.starts.add("Crazy"); + BotBoth.starts.add("Elder"); + BotBoth.starts.add("Games"); + BotBoth.starts.add("Hello"); + BotBoth.starts.add("Hyder"); + BotBoth.starts.add("Hydra"); + BotBoth.starts.add("Hydro"); + BotBoth.starts.add("Hyper"); + BotBoth.starts.add("Kills"); + BotBoth.starts.add("Nitro"); + BotBoth.starts.add("Plays"); + BotBoth.starts.add("Slime"); + BotBoth.starts.add("Super"); + BotBoth.starts.add("Tower"); + BotBoth.starts.add("Worms"); + + BotBoth.ends.add("11"); + BotBoth.ends.add("50"); + BotBoth.ends.add("69"); + BotBoth.ends.add("99"); + BotBoth.ends.add("HD"); + BotBoth.ends.add("LP"); + BotBoth.ends.add("XD"); + BotBoth.ends.add("YT"); + } + + public static int getLength(List list) { + for(int i = 1; i < 17; ++i) { + int num = 0; + + for(String s : list) { + if(s.length() == i) ++num; + } + + if(num > 2) return i; + } + + return 0; + } + + public static String getNickType(List list) { + int nicks = 0; + + for(String s : list) { + if(getNickType(s).equals("nicks")) { + ++nicks; + } + } + + if(nicks > 2) { + return "nicks"; + } + + return "null"; + } + + public static String getNickType(String name) { + if(BotBoth.nicks.contains(name)) { + return "nicks"; + } + + return "null"; + } + + public static void addPlayer(String p) { + if(!BotBoth.players.contains(p)) { + try { + BufferedWriter buf = new BufferedWriter(new FileWriter(BotBoth.f, true)); + + buf.write(p); + buf.write(System.getProperty("line.separator")); + + buf.close(); + } catch (Exception e) {} + + BotBoth.players.add(p); + } + } + + public static boolean isNew(String p) { + return BotBoth.players.contains(p); + } + + public static boolean pingedServer(String ip) { + return BotBoth.pings.contains(ip); + } + + public static void cancelAttack(long name) { + for(BotAttack a : BotBoth.attacks) { + if(a.getName() == name) BotBoth.attacks.remove(a); + } + + if(BotBoth.attacks.isEmpty()) BotBoth.pings.clear(); + } +} diff --git a/Bungee/src/secondlife/network/bungee/commands/ABNatureCommand.java b/Bungee/src/secondlife/network/bungee/commands/ABNatureCommand.java new file mode 100644 index 0000000..a56044a --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/ABNatureCommand.java @@ -0,0 +1,86 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.handlers.PlayerHandler; +import secondlife.network.bungee.utils.Color; + +public class ABNatureCommand extends Command { + + public ABNatureCommand() { + super("antibotnature", "secondlife.op", "ab"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /antibot ")); + return; + } + + if(args[0].equalsIgnoreCase("spam")) { + if(PlayerHandler.spam) { + PlayerHandler.spam = false; + sender.sendMessage(Color.translate("&cAntiBot spam disabled!")); + } else { + PlayerHandler.spam = true; + sender.sendMessage(Color.translate("&cAntiBot spam enabled!")); + } + } + + if(args[0].equalsIgnoreCase("length")) { + if(args.length == 1) { + sender.sendMessage(Color.translate("&cUsage: /antibot length ")); + return; + } + + int length = Integer.parseInt(args[1]); + + if(length > 16 || length < 4) { + sender.sendMessage(Color.translate("&cMust be between 3-16")); + return; + } + + PlayerHandler.blockLengh = length; + sender.sendMessage(Color.translate("&cSucessfully set lenght to " + length)); + } + + if(args[0].equalsIgnoreCase("lengthedo")) { + if(args.length == 1) { + sender.sendMessage(Color.translate("&cUsage: /antibot length ")); + return; + } + + int length = Integer.parseInt(args[1]); + + if(length > 16 || length < 4) { + sender.sendMessage(Color.translate("&cMust be between 3-16")); + return; + } + + PlayerHandler.block = length; + sender.sendMessage(Color.translate("&cSucessfully set lenght to " + length)); + } + + if(args[0].equalsIgnoreCase("fully")) { + if(PlayerHandler.enabled) { + PlayerHandler.enabled = false; + sender.sendMessage(Color.translate("&cAntiBot fully disabled!")); + } else { + PlayerHandler.enabled = true; + sender.sendMessage(Color.translate("&cAntiBot fully enabled!")); + } + } + + if(args[0].equalsIgnoreCase("edo")) { + if(PlayerHandler.edo) { + PlayerHandler.edo = false; + sender.sendMessage(Color.translate("&cAntiBot fully disabled!")); + } else { + PlayerHandler.edo = true; + sender.sendMessage(Color.translate("&cAntiBot fully enabled!")); + } + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/commands/ABVisualCommand.java b/Bungee/src/secondlife/network/bungee/commands/ABVisualCommand.java new file mode 100644 index 0000000..2c68956 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/ABVisualCommand.java @@ -0,0 +1,61 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import net.md_5.bungee.config.ConfigurationProvider; +import net.md_5.bungee.config.YamlConfiguration; +import secondlife.network.bungee.antibot.BotBoth; +import secondlife.network.bungee.handlers.AntiBotHandler; +import secondlife.network.bungee.utils.Color; + +public class ABVisualCommand extends Command { + + public ABVisualCommand() { + super("antibotvisual", "secondlife.op"); + } + + public void execute(CommandSender sender, String[] args) { + if(!sender.hasPermission("secondlife.op")) { + sender.sendMessage(Color.translate("&cNo permission.")); + return; + } + + if(args.length == 0) { + sender.sendMessage(Color.translate("&eThis server is running &dSecondLife Network &eantibot system!")); + } else { + if(args[0].equalsIgnoreCase("reload")) { + + BotBoth.attacks.clear(); + BotBoth.pings.clear(); + + try { + AntiBotHandler.config = ConfigurationProvider.getProvider(YamlConfiguration.class).load(AntiBotHandler.f); + } catch (Exception e) { + e.printStackTrace(); + } + + AntiBotHandler.limit = 3; + BotBoth.timeout = 7; + } else if(args[0].equalsIgnoreCase("on")) { + + if(AntiBotHandler.ignore.contains(sender)) { + AntiBotHandler.ignore.remove(sender); + + sender.sendMessage(Color.translate("&fAntiBot has been turned &aON&f!")); + } else { + sender.sendMessage(Color.translate("&fAntiBot is already turned &aON&f!")); + } + } else if(args[0].equalsIgnoreCase("off")) { + + if(!AntiBotHandler.ignore.contains(sender)) { + AntiBotHandler.ignore.add((ProxiedPlayer) sender); + + sender.sendMessage(Color.translate("&fAntiBot has been turned &cOFF&f!")); + } else { + sender.sendMessage(Color.translate("&fAntiBot is already turned &cOFF&f!")); + } + } + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/commands/GListCommand.java b/Bungee/src/secondlife/network/bungee/commands/GListCommand.java new file mode 100644 index 0000000..e85f00a --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/GListCommand.java @@ -0,0 +1,38 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.utils.Color; + +public class GListCommand extends Command { + + public GListCommand() { + super("glist", "", "gplayers", "gp", "players", "sllist", "slglist"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 1) { + if(!args[0].equalsIgnoreCase("all")) { + sender.sendMessage(Color.translate("&cUsage: /glist or /glist all")); + return; + } + + for(ServerInfo server : ProxyServer.getInstance().getServers().values()) { + sender.sendMessage(Color.translate("&9[&b" + server.getName() + "&9] &6- &c" + server.getPlayers().size())); + } + sender.sendMessage(Color.translate("&aTotal online &6- &c" + ProxyServer.getInstance().getOnlineCount())); + return; + } + + for(ServerInfo server : ProxyServer.getInstance().getServers().values()) { + + if(server.getPlayers().size() != 0) { + sender.sendMessage(Color.translate("&9[&b" + server.getName() + "&9] &6- &c" + server.getPlayers().size())); + } + } + sender.sendMessage(Color.translate("&aTotal online &6- &c" + ProxyServer.getInstance().getOnlineCount())); + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/HubCommand.java b/Bungee/src/secondlife/network/bungee/commands/HubCommand.java new file mode 100644 index 0000000..268bbc5 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/HubCommand.java @@ -0,0 +1,34 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.chat.TextComponent; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.utils.Color; + +public class HubCommand extends Command { + + public HubCommand() { + super("hub", "", "lobby" ); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(Color.translate("&cPlayer use only!")); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + + if(player.getServer().getInfo().getName().equalsIgnoreCase("Hub")) { + player.sendMessage(Color.translate("&cYou are already connected to the hub!")); + return; + } + + ServerInfo target = ProxyServer.getInstance().getServerInfo("Hub"); + player.connect(target); + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/JoinCommand.java b/Bungee/src/secondlife/network/bungee/commands/JoinCommand.java new file mode 100644 index 0000000..74681b1 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/JoinCommand.java @@ -0,0 +1,56 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.chat.TextComponent; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.utils.Color; + +public class JoinCommand extends Command { + + public JoinCommand() { + super("join", "", "play" ); + } + + @Override + public void execute(CommandSender sender, String[] args) { + + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(Color.translate("&cPlayer use only!")); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + + if(player.getServer().getInfo().getName().equalsIgnoreCase("Hub")) { + player.sendMessage(Color.translate("&cThis command is disabled in hub!")); + return; + } + + if(args.length == 0) { + player.sendMessage(Color.translate("&cUsage: /join ")); + player.sendMessage(Color.translate("&cThis command is used to connect to UHCMeetup servers! (UHCMeetup-1, UHCMeetup-2...)")); + return; + } + + if(args.length == 1) { + + ServerInfo target = ProxyServer.getInstance().getServerInfo(args[0]); + + if(target == null) { + player.sendMessage(Color.translate("&cThat server doesn't exist!")); + return; + } + + if(!args[0].toLowerCase().contains("uhcmeetup-")) { + player.sendMessage(Color.translate("&cYou can only connect to UHCMeetup servers with this command!")); + return; + } + + player.connect(target); + return; + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/MaintenanceCommand.java b/Bungee/src/secondlife/network/bungee/commands/MaintenanceCommand.java new file mode 100644 index 0000000..34fcd55 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/MaintenanceCommand.java @@ -0,0 +1,35 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; + +/** + * Created by Marko on 09.04.2018. + */ +public class MaintenanceCommand extends Command { + + public MaintenanceCommand() { + super("maintenance", "secondlife.op", "globalwl", "globalwhitelist"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /maintenance ")); + } else { + if(args[0].equalsIgnoreCase("on")) { + Bungee.configuration.set("whitelisted", true); + Bungee.getInstance().saveConfig(); + + sender.sendMessage(Color.translate("&aYou have enabled maintenance mode!")); + } else if(args[0].equalsIgnoreCase("off")) { + Bungee.configuration.set("whitelisted", false); + Bungee.getInstance().saveConfig(); + + sender.sendMessage(Color.translate("&cYou have disabled maintenance mode!")); + } + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/commands/MotdCommand.java b/Bungee/src/secondlife/network/bungee/commands/MotdCommand.java new file mode 100644 index 0000000..fb9e6ca --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/MotdCommand.java @@ -0,0 +1,34 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; + +/** + * Created by Marko on 09.04.2018. + */ +public class MotdCommand extends Command { + + public MotdCommand() { + super("motd", "secondlife.op", "setmotd"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 0) { + sender.sendMessage(Color.translate("&cUsage: /motd - {nl} new line")); + } else { + StringBuilder message = new StringBuilder(); + + for(int i = 0; i < args.length; i++) { + message.append(args[i]).append(" "); + } + + Bungee.configuration.set("server_motd", message.toString()); + Bungee.getInstance().saveConfig(); + + sender.sendMessage(Color.translate("&eYou have updated motd to: " + Color.translate(message.toString()))); + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/commands/ReloadCommand.java b/Bungee/src/secondlife/network/bungee/commands/ReloadCommand.java new file mode 100644 index 0000000..d11d6b3 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/ReloadCommand.java @@ -0,0 +1,23 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; + +/** + * Created by Marko on 09.04.2018. + */ +public class ReloadCommand extends Command { + + public ReloadCommand() { + super("configreload", "secondlife.op", "cr", "creload", "configr"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + Bungee.getInstance().reloadConfig(); + + sender.sendMessage(Color.translate("&aYou have reloaded the configuration file!")); + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/ReportCommand.java b/Bungee/src/secondlife/network/bungee/commands/ReportCommand.java new file mode 100644 index 0000000..7dfe0c4 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/ReportCommand.java @@ -0,0 +1,83 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.BungeeCord; +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.handlers.ReportHandler; +import secondlife.network.bungee.handlers.RequestHandler; +import secondlife.network.bungee.handlers.SilentHandler; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.StringUtils; + +public class ReportCommand extends Command { + + public ReportCommand() { + super("report", "", "hacker"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(Color.translate("&cPlayer use only!")); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + ServerInfo server = player.getServer().getInfo(); + + if(server.getName().equalsIgnoreCase("Hub")) { + player.sendMessage(Color.translate("&cReport is disabled on this server.")); + return; + } + + if(args.length < 2) { + player.sendMessage(Color.translate("&cUsage: /report ")); + } else { + if(ReportHandler.isActive(player)) { + player.sendMessage(Color.translate("&cYou can't use this command for another &l" + StringUtils.formatMilisecondsToMinutes(ReportHandler.getMillisecondsLeft(player)))); + } else { + + ProxiedPlayer target = ProxyServer.getInstance().getPlayer(args[0]); + + if(target == null) { + sender.sendMessage(Color.translate("&cThat player is not online!")); + return; + } + + ServerInfo serverTarget = target.getServer().getInfo(); + + if(serverTarget == null) { + sender.sendMessage(Color.translate("&cThat player is not online!")); + return; + } + + if(target == player) { + player.sendMessage(Color.translate("&cYou can't report yourself!")); + return; + } + + ReportHandler.applyCooldown(player); + StringBuilder message = new StringBuilder(); + + for(int i = 1; i < args.length; i++) { + message.append(args[i]).append(" "); + } + + player.sendMessage(Color.translate("&aYou have reported &c" + target.getName() + " &aand all staff is now alerted!")); + + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + if(online.hasPermission("secondlife.staff")) { + if(!SilentHandler.silent.contains(online.getUniqueId())) { + online.sendMessage(Color.translate("&4[Report] &7[" + serverTarget.getName().toUpperCase() + "] &c" + player.getName() + " &7reported player named &c&l" + target.getName() + "&7!")); + online.sendMessage(Color.translate("&4Reason: &7" + message)); + //online.sendMessage(Color.translate("&8(&9Report&8) &8(&9" + serverTarget.getName().toUpperCase() + "&8) &9" + player.getName() + " &bhas reported &c" + target.getName() + " &bfor&7: &f" + message)); + } + } + } + } + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/RequestCommand.java b/Bungee/src/secondlife/network/bungee/commands/RequestCommand.java new file mode 100644 index 0000000..1e37b1c --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/RequestCommand.java @@ -0,0 +1,100 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.BungeeCord; +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.handlers.RequestHandler; +import secondlife.network.bungee.handlers.SilentHandler; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.StringUtils; + +public class RequestCommand extends Command { + + public RequestCommand() { + super("request", "", "helpop", "staffhelp"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(Color.translate("&cPlayer use only!")); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + ServerInfo server = player.getServer().getInfo(); + + if(server.getName().equalsIgnoreCase("Hub")) { + player.sendMessage(Color.translate("&cRequest is disabled on this server.")); + return; + } + + if(args.length == 0) { + player.sendMessage(Color.translate("&cUsage: /request ")); + } else { + if(RequestHandler.isActive(player)) { + player.sendMessage(Color.translate("&cYou can't use this command for another &l" + StringUtils.formatMilisecondsToMinutes(RequestHandler.getMillisecondsLeft(player)))); + } else { + + RequestHandler.applyCooldown(player); + StringBuilder message = new StringBuilder(); + + for(int i = 0; i < args.length; i++) { + message.append(args[i]).append(" "); + } + + if(server.getName().equalsIgnoreCase("UHC-1") || server.getName().equalsIgnoreCase("UHC-2")) { + if(message.toString().toLowerCase().contains("heal") && message.toString().toLowerCase().contains("time")) { + player.sendMessage(Color.translate("&cYou can see heal time in /config")); + return; + } + if(message.toString().toLowerCase().contains("heal") && message.toString().toLowerCase().contains("final")) { + player.sendMessage(Color.translate("&cYou can see heal time in /config")); + return; + } + if(message.toString().toLowerCase().contains("pvp") && message.toString().toLowerCase().contains("time")) { + player.sendMessage(Color.translate("&cYou can see pvp time in /config")); + return; + } + if(message.toString().toLowerCase().contains("shrink")) { + player.sendMessage(Color.translate("&cYou can see border shirnk time in /config")); + return; + } + if(message.toString().toLowerCase().contains("apple") && message.toString().toLowerCase().contains("rate")) { + player.sendMessage(Color.translate("&cApple rate is 2%")); + return; + } + if(message.toString().toLowerCase().contains("scenario") || message.toString().toLowerCase().contains("scenarios")) { + player.sendMessage(Color.translate("&ccYou can see current scenarios by doing /scenarios")); + return; + } + if(message.toString().toLowerCase().contains("shear") || message.toString().toLowerCase().contains("shears")) { + player.sendMessage(Color.translate("&cShears are enabled, apple rate while using shears is 1%")); + return; + } + if(message.toString().toLowerCase().contains("nether")) { + player.sendMessage(Color.translate("&cYou can check if nether is enabled in /config")); + return; + } + if(message.toString().toLowerCase().contains("cross")) { + player.sendMessage(Color.translate("&cCross teaming is allowed in team games")); + return; + } + } + + player.sendMessage(Color.translate("&aUspjesno si zatrazio pomoc i staff je obavijesten!")); + + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + if(!SilentHandler.silent.contains(online.getUniqueId())) { + if(online.hasPermission("secondlife.staff")) { + online.sendMessage(Color.translate("&2[Request] &7[" + player.getServer().getInfo().getName().toUpperCase() + "] &a" + player.getName() + " &7requested staff help:")); + online.sendMessage(Color.translate("&2Reason: &7" + message)); + } + } + } + } + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/SilentCommand.java b/Bungee/src/secondlife/network/bungee/commands/SilentCommand.java new file mode 100644 index 0000000..1227bdd --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/SilentCommand.java @@ -0,0 +1,35 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.chat.TextComponent; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.handlers.SilentHandler; +import secondlife.network.bungee.utils.Color; + +public class SilentCommand extends Command { + + public SilentCommand() { + super("silent", "secondlife.op", "filter"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(new TextComponent(Color.translate("&cPlayer use only!"))); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + + if(SilentHandler.silent.contains(player.getUniqueId())) { + SilentHandler.silent.remove(player.getUniqueId()); + player.sendMessage(new TextComponent(Color.translate("&eYou have &cCisabled &esilent mode."))); + return; + } + + SilentHandler.silent.add(player.getUniqueId()); + player.sendMessage(new TextComponent(Color.translate("&eYou have &aEnabled &esilent mode."))); + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/StaffChatCommand.java b/Bungee/src/secondlife/network/bungee/commands/StaffChatCommand.java new file mode 100644 index 0000000..4110748 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/StaffChatCommand.java @@ -0,0 +1,43 @@ +package secondlife.network.bungee.commands; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.handlers.StaffChatHandler; +import secondlife.network.bungee.utils.Color; + +public class StaffChatCommand extends Command { + + public StaffChatCommand() { + super("staffchat", "secondlife.staff", "sc", "schat", "ac"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + + if(!(sender instanceof ProxiedPlayer)) { + sender.sendMessage(Color.translate("&cPlayer use only!")); + return; + } + + ProxiedPlayer player = (ProxiedPlayer) sender; + + if(!player.hasPermission("secondlife.staff")) { + player.sendMessage(Color.translate("&cNo Permission")); + return; + } + + /*if(player.getServer().getInfo().getName().equalsIgnoreCase("Hub")) { + player.sendMessage(Color.translate("&cStaff Chat is disabled on this server.")); + return; + }*/ + + if(StaffChatHandler.staff.contains(player.getUniqueId())) { + StaffChatHandler.staff.remove(player.getUniqueId()); + player.sendMessage(Color.translate("&eStaff Chat has been &cDisabled&e.")); + } else { + StaffChatHandler.staff.add(player.getUniqueId()); + player.sendMessage(Color.translate("&eStaff Chat has been &aEnabled&e.")); + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/commands/StaffListCommand.java b/Bungee/src/secondlife/network/bungee/commands/StaffListCommand.java new file mode 100644 index 0000000..ccb5d44 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/commands/StaffListCommand.java @@ -0,0 +1,65 @@ +package secondlife.network.bungee.commands; + +import java.util.HashMap; + +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; +import secondlife.network.bungee.utils.Color; + +public class StaffListCommand extends Command { + + private int total = 0; + private HashMap staff = new HashMap<>(); + + public StaffListCommand() { + super("stafflist", "secondlife.staff", "staffl"); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(!sender.hasPermission("secondlife.staff")) { + sender.sendMessage(Color.translate("&cNo Permission")); + return; + } + + if(args.length == 0) { + + total = 0; + + if(!staff.isEmpty()) { + staff.clear(); + } + + for(ProxiedPlayer online : ProxyServer.getInstance().getPlayers()) { + if(online.hasPermission("secondlife.staff")) { + if(online.getServer() != null && online != null) { + if(staff.containsKey(online.getServer().getInfo().getName())) { + staff.put(online.getServer().getInfo().getName(), staff.get(online.getServer().getInfo().getName()) + " " + online.getName()); + } else { + staff.put(online.getServer().getInfo().getName(), online.getName() + " "); + } + total++; + } + } + } + + if(staff.isEmpty()) { + sender.sendMessage(Color.translate("&cThere is no staff online!")); + return; + } + + sender.sendMessage(Color.translate("&aStaff Online&7:")); + + for(ServerInfo server : ProxyServer.getInstance().getServers().values()) { + if(this.staff.containsKey(server.getName())) { + sender.sendMessage(Color.translate("&9[&b" + server.getName() + "&9] &6- &c" + staff.get(server.getName().toString()))); + } + } + + sender.sendMessage(Color.translate("&aTotal Staff&7: &c" + total)); + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/handlers/AnnounceHandler.java b/Bungee/src/secondlife/network/bungee/handlers/AnnounceHandler.java new file mode 100644 index 0000000..7536848 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/AnnounceHandler.java @@ -0,0 +1,50 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Listener; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; +import secondlife.network.bungee.utils.StringUtils; + +import java.util.HashMap; +import java.util.Map; + +public class AnnounceHandler extends Handler implements Listener { + + public static Map cooldowns = new HashMap<>(); + + public AnnounceHandler(Bungee plugin) { + super(plugin); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + public static void disable() { cooldowns.clear(); } + + public static void applyCooldown(String server) { + cooldowns.put(server, System.currentTimeMillis() + (20 * 1000)); + } + + public static boolean isActive(String server) { + return cooldowns.containsKey(server) && System.currentTimeMillis() < cooldowns.get(server); + } + + public static long getMillisecondsLeft(String server) { + if(cooldowns.containsKey(server)) { + return Math.max(cooldowns.get(server) - System.currentTimeMillis(), 0L); + } + return 0L; + } + + public static void handle(ProxiedPlayer player, String server) { + if(isActive(server)) { + player.sendMessage(Color.translate("&cYou can't use this command for another &l" + StringUtils.formatMilisecondsToMinutes(getMillisecondsLeft(server)))); + return; + } + + applyCooldown(server); + player.sendMessage(Color.translate("&eYou have announced this meetup!")); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/AntiBotHandler.java b/Bungee/src/secondlife/network/bungee/handlers/AntiBotHandler.java new file mode 100644 index 0000000..578df73 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/AntiBotHandler.java @@ -0,0 +1,160 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.event.PostLoginEvent; +import net.md_5.bungee.api.event.PreLoginEvent; +import net.md_5.bungee.api.event.ProxyPingEvent; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.config.Configuration; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.antibot.AntiBotUtils; +import secondlife.network.bungee.antibot.BotAttack; +import secondlife.network.bungee.antibot.BotBoth; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class AntiBotHandler extends Handler implements Listener { + + public static String[] st; + public static int i; + public static File f; + public static Configuration config; + public static int limit; + public static int startup_multiplier; + public static int startup_time; + public static List ignore = new ArrayList<>(); + public static String declining; + public static String accepting; + + public AntiBotHandler(Bungee plugin) { + super(plugin); + + i = 0; + limit = 3; + BotBoth.timeout = 7; + startup_multiplier = 10; + startup_time = 30; + declining = Color.translate("&4[AB-VISUAL_] &cDeclining connection of &f%PLAYER%"); + accepting = Color.translate("&2[AB-VISUAL_] &aAccepting connection of &f%PLAYER%"); + + st = new String[limit + 2]; + + ProxyServer.getInstance().getPluginManager().registerListener(this.getPlugin(), this); + } + + @EventHandler + public void onProxyPing(ProxyPingEvent event) { + String ip = event.getConnection().getAddress().getAddress().getHostAddress(); + + if(!BotBoth.pings.contains(ip)) BotBoth.pings.add(ip); + } + + @EventHandler(priority = -64) + public void onPreLogin(PreLoginEvent event) { + if(BotBoth.joins > limit * startup_multiplier) { + int ping = 0; + int nevv = 0; + int length = 0; + + boolean pinging = false; + boolean nevv2 = false; + + List list = new ArrayList<>(); + String[] st; + + for(int x = (st = AntiBotHandler.st).length, i = 0; i < x; ++i) { + String s = st[i]; + + if(s != null) { + if(Boolean.parseBoolean(s.split(" ")[0])) ++ping; + if(Boolean.parseBoolean(s.split(" ")[1])) ++nevv; + + + list.add(s.split(" ")[2]); + } + } + + String type = BotBoth.getNickType(list); + + if(type.equals("null")) { + length = BotBoth.getLength(list); + + if(length != 0) type = "length"; + } + + if(ping > limit) pinging = true; + if(nevv > limit) nevv2 = true; + + BotBoth.attacks.add(new BotAttack(System.currentTimeMillis(), pinging, nevv2, type, length)); + BotBoth.joins = 0; + } + + String name = event.getConnection().getName(); + String ip = event.getConnection().getAddress().getAddress().getHostAddress(); + + for(BotAttack a : BotBoth.attacks) { + if(!event.isCancelled() && a.handleLogin(true, name, ip)) { + AntiBotUtils.sendMessage(declining.replace("%PLAYER%", name)); + + event.setCancelled(true); + return; + } + } + + ++BotBoth.joins; + ++i; + + if(i > limit + 1) i = 0; + + String s2 = String.valueOf(String.valueOf(BotBoth.pingedServer(ip))) + " " + BotBoth.isNew(name) + " " + name; + st[i] = s2; + + if(BotBoth.isFakeNickname(name)) { + event.setCancelled(true); + return; + } + + event.registerIntent(this.getPlugin()); + + this.getPlugin().getProxy().getScheduler().runAsync(this.getPlugin(), new Runnable() { + public void run() { + try { + Thread.sleep(1000L); + } catch (InterruptedException e) {} + + for(BotAttack a : BotBoth.attacks) { + if(a.handleLogin(false, name, ip)) { + event.setCancelled(true); + event.completeIntent(Bungee.getInstance()); + return; + } + } + + event.completeIntent(Bungee.getInstance()); + } + }); + + if(!BotBoth.attacks.isEmpty()) AntiBotUtils.sendMessage(accepting.replace("%PLAYER%", name)); + } + + @EventHandler + public void onPostLogin(PostLoginEvent event) { + this.getPlugin().getProxy().getScheduler().runAsync(this.getPlugin(), new Runnable() { + public void run() { + try { + Thread.sleep(30000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + if(event.getPlayer().isConnected()) BotBoth.addPlayer(event.getPlayer().getName()); + } + }); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/AutoMessageHandler.java b/Bungee/src/secondlife/network/bungee/handlers/AutoMessageHandler.java new file mode 100644 index 0000000..cfdb0ba --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/AutoMessageHandler.java @@ -0,0 +1,46 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.plugin.Listener; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; +import secondlife.network.bungee.utils.Message; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import java.util.concurrent.TimeUnit; + +/** + * Created by Marko on 09.04.2018. + */ +public class AutoMessageHandler extends Handler implements Listener { + + public static ArrayList msglist = new ArrayList<>(); + public static Random random = new Random(); + + public AutoMessageHandler(Bungee plugin) { + super(plugin); + + setup(); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + public void setup() { + List messages = Bungee.configuration.getStringList("auto_message.active_messages"); + + for(String msg : messages) { + String message = Bungee.configuration.getString("auto_message.messages." + msg + ".message"); + + msglist.add(Color.translate("&8[&5&l" + '✇' + "&8] &d" + message)); + } + + ProxyServer.getInstance().getScheduler().schedule(Bungee.getInstance(), () -> { + Message.sendMessage(""); + Message.sendMessage(Color.translate(msglist.get(Math.abs(random.nextInt() % msglist.size())))); + Message.sendMessage(""); + },2, 2, TimeUnit.MINUTES); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/MaintenanceHandler.java b/Bungee/src/secondlife/network/bungee/handlers/MaintenanceHandler.java new file mode 100644 index 0000000..870c1f3 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/MaintenanceHandler.java @@ -0,0 +1,48 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.ServerPing; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.event.PreLoginEvent; +import net.md_5.bungee.api.event.ProxyPingEvent; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; + +/** + * Created by Marko on 09.04.2018. + */ +public class MaintenanceHandler extends Handler implements Listener { + + public MaintenanceHandler(Bungee plugin) { + super(plugin); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + @EventHandler + public void onProxyPing(ProxyPingEvent event) { + if(!Bungee.configuration.getBoolean("whitelisted")) return; + + ServerPing response = event.getResponse(); + ServerPing.Protocol protocol = new ServerPing.Protocol("Maintenance", response.getVersion().getProtocol() - 1); + + response.setVersion(protocol); + event.setResponse(response); + } + + @EventHandler + public void onPreLogin(PreLoginEvent event) { + if(!Bungee.configuration.getBoolean("whitelisted")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(event.getConnection().getUniqueId()); + + if(player == null) return; + if(player.hasPermission("secondlife.op")) return; + + event.setCancelReason(Color.translate("&cThe network is currently undergoing maintenance, check back soon!")); + event.setCancelled(true); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/MotdHandler.java b/Bungee/src/secondlife/network/bungee/handlers/MotdHandler.java new file mode 100644 index 0000000..b1ce8a9 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/MotdHandler.java @@ -0,0 +1,35 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.ServerPing; +import net.md_5.bungee.api.event.ProxyPingEvent; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; + +/** + * Created by Marko on 09.04.2018. + */ +public class MotdHandler extends Handler implements Listener { + + public MotdHandler(Bungee plugin) { + super(plugin); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + @EventHandler(priority = 64) + public void onServerListPing(ProxyPingEvent event) { + if(Bungee.configuration.getString("server_motd") == null) return; + + ServerPing ping = event.getResponse(); + + String motd = Color.translate(Bungee.configuration.getString("server_motd")); + motd = motd.replace("{nl}", "\n"); + + ping.setDescription(motd); + event.setResponse(ping); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/PlayerHandler.java b/Bungee/src/secondlife/network/bungee/handlers/PlayerHandler.java new file mode 100644 index 0000000..4aa70c4 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/PlayerHandler.java @@ -0,0 +1,179 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.event.*; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; +import secondlife.network.bungee.utils.Message; +import secondlife.network.bungee.utils.StringUtils; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +public class PlayerHandler extends Handler implements Listener { + + public static int blockLengh = 16; + public static int block = 16; + public static boolean enabled = false; + public static List bots = new ArrayList<>(); + public static boolean spam = false; + public static int blocked = 0; + public static boolean edo = false; + public static List bridge = new ArrayList<>(); + + public PlayerHandler(Bungee plugin) { + super(plugin); + + this.resetSpam(); + this.resetFully(); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + @EventHandler(priority=-64) + public void onLog(PreLoginEvent event) { + String name = event.getConnection().getName(); + + if(edo && name.length() >= blockLengh) { + event.setCancelled(true); + blocked++; + return; + } + + if(name.length() == blockLengh) { + if(enabled || spam) { + event.setCancelled(true); + blocked++; + return; + } + + if(!bots.contains(name)) { + bots.add(name); + } + + if(bots.size() > 100) { + spam = true; + Message.sendMessage(Color.translate("&cAntiBot has ben automatically &aenabled"), "secondlife.op"); + bots.clear(); + } + } + } + + @EventHandler(priority=64) + public void onPreLogin(PreLoginEvent event) { + if(event.isCancelled()) return; + + String name = event.getConnection().getName(); + + if(StringUtils.isPremium(name)) { + event.getConnection().setOnlineMode(true); + } + + PluginMessageHandler.sendPremiumInfo(event.getConnection().getName(), event.getConnection().isOnlineMode() ? true : false); + } + + @EventHandler + public void onPostLogin(PostLoginEvent event) { + if(bridge.contains(event.getPlayer().getUniqueId())) bridge.remove(event.getPlayer().getUniqueId()); + + // TODO remove + //bridge.add(event.getPlayer().getUniqueId()); + } + + @EventHandler(priority=64) + public void onServerConnect(ServerConnectEvent event) { + if(event.isCancelled()) return; + + PluginMessageHandler.sendPremiumInfo(event.getPlayer().getName(), event.getPlayer().getPendingConnection().isOnlineMode() ? true : false); + } + + public void resetSpam() { + ProxyServer.getInstance().getScheduler().schedule(Bungee.getInstance(), new Runnable() { + @Override + public void run() { + if(spam) { + ProxyServer.getInstance().getConsole().sendMessage("!!! BLOCKED " + blocked + " CONNECTIONS !!!"); + ProxyServer.getInstance().getConsole().sendMessage("!!! BLOCKED " + blocked + " CONNECTIONS !!!"); + ProxyServer.getInstance().getConsole().sendMessage("!!! BLOCKED " + blocked + " CONNECTIONS !!!"); + blocked = 0; + spam = false; + Message.sendMessage(Color.translate("&cAntiBot has ben automatically &cdisabled"), "secondlife.op"); + } + } + }, 1, 1, TimeUnit.MINUTES); + } + + public void resetFully() { + ProxyServer.getInstance().getScheduler().schedule(Bungee.getInstance(), new Runnable() { + @Override + public void run() { + enabled = false; + } + }, 5, 5, TimeUnit.MINUTES); + } + + @EventHandler + public void onPlayerJoin(ServerSwitchEvent event) { + ProxiedPlayer player = event.getPlayer(); + + if(!player.hasPermission("secondlife.staff")) return; + + ServerInfo server = player.getServer().getInfo(); + + if(server.getName().equalsIgnoreCase("UHC-1") || server.getName().equalsIgnoreCase("UHC-2")) { + player.connect(server); + } + + Message.sendMessage("&9[Staff] &f" + player.getName() + " &bhas joined &f" + server.getName() + "&b.", "secondlife.staff"); + } + + @EventHandler + public void onPlayerDisconnect(PlayerDisconnectEvent event) { + ProxiedPlayer player = event.getPlayer(); + + if(!player.hasPermission("secondlife.staff")) return; + + Message.sendMessage("&9[Staff] &f" + player.getName() + " &bhas left the server.", "secondlife.staff"); + } + + @EventHandler + public void onChat(ChatEvent event) { + if(!(event.getSender() instanceof ProxiedPlayer)) return; + + ProxiedPlayer player = (ProxiedPlayer) event.getSender(); + ServerInfo server = player.getServer().getInfo(); + + String message = event.getMessage().toLowerCase(); + + if(!bridge.contains(player.getUniqueId()) && message.startsWith("/")) { + if(message.startsWith("/l ") + || message.startsWith("/login") + || message.startsWith("/reg ") + || message.startsWith("/register") + || message.startsWith("/auth") + || message.startsWith("/securityregister") + || message.startsWith("/code")) return; + player.sendMessage(Color.translate("&dPlease authenticate before using commands!")); + event.setCancelled(true); + } + + if(server.getName().equalsIgnoreCase("Hub")) { + if(event.getMessage().equalsIgnoreCase("/HCF") + || event.getMessage().equalsIgnoreCase("/Factions") + || event.getMessage().equalsIgnoreCase("/UHC") + || event.getMessage().equalsIgnoreCase("/Minigames") + || event.getMessage().equalsIgnoreCase("/Practice") + || event.getMessage().equalsIgnoreCase("/KitMap")) { + event.setCancelled(true); + player.sendMessage(Color.translate("&cPlease connect to that server trough hub! To go to the hub use /hub or /lobby")); + } + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/handlers/PluginMessageHandler.java b/Bungee/src/secondlife/network/bungee/handlers/PluginMessageHandler.java new file mode 100644 index 0000000..fd53008 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/PluginMessageHandler.java @@ -0,0 +1,209 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.BungeeCord; +import net.md_5.bungee.api.ProxyServer; +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 net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.event.PluginMessageEvent; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; +import secondlife.network.bungee.utils.Message; + +import java.io.*; +import java.text.DecimalFormat; + +public class PluginMessageHandler extends Handler implements Listener { + + public PluginMessageHandler(Bungee plugin) { + super(plugin); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + @EventHandler + public void onPluginMessage(PluginMessageEvent event) { + if(event.isCancelled()) return; + + try { + if(event.getTag().equalsIgnoreCase(Bungee.incomingAnnounceChannel)) { + event.setCancelled(true); + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + if(!channel.equals("Meetup")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + String server = in.readUTF(); + + broadcast(player, server); + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingBungeeBroadcastChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + String message = in.readUTF(); + + switch(channel) { + case "BroadcastChannel": + Message.sendMessage(Color.translate(message)); + break; + case "BroadcastPChannel": + String permission = in.readUTF(); + + Message.sendMessage(Color.translate(message), permission); + break; + } + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingFilterChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(!channel.equals("Filtered")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + String server = in.readUTF(); + String message = in.readUTF(); + + broadcastFilter(player, server, message); + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingCommandChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(!channel.equals("BungeeCommands")) return; + + String command = in.readUTF(); + + ProxyServer.getInstance().getPluginManager().dispatchCommand(ProxyServer.getInstance().getConsole(), command); + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingAlertsChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(channel.equals("AlertsChannel")) { + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + + String check = in.readUTF(); + String location = in.readUTF(); + int ping = in.readInt(); + double tps = in.readDouble(); + + alert(player, check, location, ping, tps); + } + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingBanChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(!channel.equals("BanChannel")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + + ban(player); + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingPermissionsChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(!channel.equals("PermissionsChannel")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + String permission = in.readUTF(); + + player.setPermission(permission, true); + } + + if(event.getTag().equalsIgnoreCase(Bungee.incomingAuthChannel)) { + DataInputStream in = new DataInputStream(new ByteArrayInputStream(event.getData())); + + String channel = in.readUTF(); + + if(!channel.equals("AuthChannel")) return; + + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(in.readUTF()); + + PlayerHandler.bridge.add(player.getUniqueId()); + } + } catch (IOException ex) { + ex.printStackTrace(); + } + } + + public static void broadcast(ProxiedPlayer player, String server) { + AnnounceHandler.handle(player, server); + + TextComponent clicktoconnect = new TextComponent(Color.translate("&8[&4Alert&8] &d" + player.getDisplayName() + "&7: &b" + server + " &bis starting soon! &bClick here to join &f" + server)); + + clicktoconnect.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/play " + server)); + clicktoconnect.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("Click here to join " + server).create())); + + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + if(!online.getServer().getInfo().getName().equalsIgnoreCase("Hub")) { + online.sendMessage(clicktoconnect); + } + } + } + + public static void broadcastFilter(ProxiedPlayer player, String server, String message) { + TextComponent clicktoconnect = new TextComponent(Color.translate("&8(&6Filtered&8) (&6" + server + "&8) &6" + player.getName() + "&7: &f" + message)); + + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + if(online.hasPermission("secondlife.staff")) { + if(!SilentHandler.silent.contains(online.getUniqueId())) { + online.sendMessage(clicktoconnect); + } + } + } + } + + public void alert(ProxiedPlayer player, String check, String location, int ping, double tps) { + TextComponent a = new TextComponent(Color.translate("&8[&4!&8] &8(&c" + player.getServer().getInfo().getName().toUpperCase() + "&8) &4" + player.getName() + " &cfailed &4" + check.toUpperCase())); + a.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder(Color.translate("&c Player: &4" + player.getName() + "\n &cCheck: &4" + check + "\n &cLocation: &4" + location + "\n &cPing: &4" + ping + "\n &cTPS: &4" + new DecimalFormat("##.##").format(tps))).create())); + + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + if(online.hasPermission("secondlife.staff")) { + if(!SilentHandler.silent.contains(online.getUniqueId())) { + online.sendMessage(a); + } + } + } + } + + public void ban(ProxiedPlayer player) { + Message.sendMessage(Color.translate("&c&m----------------------------------------")); + Message.sendMessage(Color.translate("&ePaik detected &c" + player.getName() + " &echeating!")); + Message.sendMessage(Color.translate("&c&m----------------------------------------")); + } + + public static void sendPremiumInfo(String name, boolean isPremium) { + ByteArrayOutputStream stream = new ByteArrayOutputStream(); + DataOutputStream out = new DataOutputStream(stream); + + try { + out.writeUTF("Auth"); + out.writeUTF(name); + out.writeBoolean(isPremium); + + ProxyServer.getInstance().getServerInfo("Hub").sendData(Bungee.outgoingPremiumChannel, stream.toByteArray()); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/ReportHandler.java b/Bungee/src/secondlife/network/bungee/handlers/ReportHandler.java new file mode 100644 index 0000000..841418d --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/ReportHandler.java @@ -0,0 +1,38 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Listener; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Handler; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +public class ReportHandler extends Handler implements Listener { + + public static Map reportCooldowns = new HashMap<>(); + + public ReportHandler(Bungee plugin) { + super(plugin); + } + + public static void disable() { + reportCooldowns.clear(); + } + + public static void applyCooldown(ProxiedPlayer player) { + reportCooldowns.put(player.getUniqueId(), System.currentTimeMillis() + (180 * 1000)); + } + + public static boolean isActive(ProxiedPlayer player) { + return reportCooldowns.containsKey(player.getUniqueId()) && System.currentTimeMillis() < reportCooldowns.get(player.getUniqueId()); + } + + public static long getMillisecondsLeft(ProxiedPlayer player) { + if(reportCooldowns.containsKey(player.getUniqueId())) { + return Math.max(reportCooldowns.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + return 0L; + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/handlers/RequestHandler.java b/Bungee/src/secondlife/network/bungee/handlers/RequestHandler.java new file mode 100644 index 0000000..46b3519 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/RequestHandler.java @@ -0,0 +1,38 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Listener; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Handler; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +public class RequestHandler extends Handler implements Listener { + + public static Map requestCooldowns = new HashMap<>(); + + public RequestHandler(Bungee plugin) { + super(plugin); + } + + public static void disable() { + requestCooldowns.clear(); + } + + public static void applyCooldown(ProxiedPlayer player) { + requestCooldowns.put(player.getUniqueId(), System.currentTimeMillis() + (180 * 1000)); + } + + public static boolean isActive(ProxiedPlayer player) { + return requestCooldowns.containsKey(player.getUniqueId()) && System.currentTimeMillis() < requestCooldowns.get(player.getUniqueId()); + } + + public static long getMillisecondsLeft(ProxiedPlayer player) { + if(requestCooldowns.containsKey(player.getUniqueId())) { + return Math.max(requestCooldowns.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + return 0L; + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/handlers/SilentHandler.java b/Bungee/src/secondlife/network/bungee/handlers/SilentHandler.java new file mode 100644 index 0000000..703b5c3 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/SilentHandler.java @@ -0,0 +1,18 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.plugin.Listener; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Handler; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +public class SilentHandler extends Handler implements Listener { + + public static List silent = new ArrayList<>(); + + public SilentHandler(Bungee plugin) { + super(plugin); + } +} diff --git a/Bungee/src/secondlife/network/bungee/handlers/StaffChatHandler.java b/Bungee/src/secondlife/network/bungee/handlers/StaffChatHandler.java new file mode 100644 index 0000000..6c85d68 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/handlers/StaffChatHandler.java @@ -0,0 +1,62 @@ +package secondlife.network.bungee.handlers; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.config.ServerInfo; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.event.ChatEvent; +import net.md_5.bungee.api.event.PlayerDisconnectEvent; +import net.md_5.bungee.api.plugin.Listener; +import net.md_5.bungee.event.EventHandler; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.utils.Color; +import secondlife.network.bungee.utils.Handler; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +public class StaffChatHandler extends Handler implements Listener { + + public static List staff = new ArrayList<>(); + + public StaffChatHandler(Bungee plugin) { + super(plugin); + + ProxyServer.getInstance().getPluginManager().registerListener(plugin, this); + } + + @EventHandler + public void onPlayerDisconnect(PlayerDisconnectEvent event) { + ProxiedPlayer player = event.getPlayer(); + + if(staff.contains(player.getUniqueId())) { + staff.remove(player.getUniqueId()); + } + } + + @EventHandler + public void onChat(ChatEvent event) { + if(event.getSender() instanceof ProxiedPlayer) { + ProxiedPlayer player = (ProxiedPlayer) event.getSender(); + ServerInfo server = player.getServer().getInfo(); + + if(event.getMessage().startsWith("/")) return; + + if(staff.contains(player.getUniqueId())) { + if(player.hasPermission("secondlife.staff")) { + for(ProxiedPlayer online : ProxyServer.getInstance().getPlayers()) { + if(online.hasPermission("secondlife.staff")) { + if(!SilentHandler.silent.contains(online.getUniqueId())) { + online.sendMessage(Color.translate("&5[Staff Chat] &7[" + server.getName() + "] &d" + player.getName() + "&7: &f" + event.getMessage())); + //online.sendMessage(Color.translate("&8(&dStaff Chat&8) &8(&d" + server.getName() + "&8) &d" + player.getName() + "&7: &f" + event.getMessage())); + event.setCancelled(true); + } + } + } + } else { + staff.remove(player.getUniqueId()); + } + } + } + } +} \ No newline at end of file diff --git a/Bungee/src/secondlife/network/bungee/utils/Color.java b/Bungee/src/secondlife/network/bungee/utils/Color.java new file mode 100644 index 0000000..a287701 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/utils/Color.java @@ -0,0 +1,10 @@ +package secondlife.network.bungee.utils; + +import net.md_5.bungee.api.ChatColor; + +public class Color { + + public static String translate(String text) { + return ChatColor.translateAlternateColorCodes('&', text); + } +} diff --git a/Bungee/src/secondlife/network/bungee/utils/Handler.java b/Bungee/src/secondlife/network/bungee/utils/Handler.java new file mode 100644 index 0000000..f748870 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/utils/Handler.java @@ -0,0 +1,22 @@ +package secondlife.network.bungee.utils; + +import lombok.Getter; +import secondlife.network.bungee.Bungee; +import secondlife.network.bungee.handlers.AnnounceHandler; +import secondlife.network.bungee.handlers.ReportHandler; +import secondlife.network.bungee.handlers.RequestHandler; + +public class Handler { + + @Getter private Bungee plugin; + + public Handler(Bungee plugin) { + this.plugin = plugin; + } + + public static void clear() { + AnnounceHandler.disable(); + RequestHandler.disable(); + ReportHandler.disable(); + } +} diff --git a/Bungee/src/secondlife/network/bungee/utils/Message.java b/Bungee/src/secondlife/network/bungee/utils/Message.java new file mode 100644 index 0000000..11e64be --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/utils/Message.java @@ -0,0 +1,22 @@ +package secondlife.network.bungee.utils; + +import net.md_5.bungee.BungeeCord; +import net.md_5.bungee.api.connection.ProxiedPlayer; + +public class Message { + + public static void sendMessage(String message) { + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + online.sendMessage(Color.translate(message)); + } + } + + public static void sendMessage(String message, String permission) { + for(ProxiedPlayer online : BungeeCord.getInstance().getPlayers()) { + + if(online.hasPermission(permission)) { + online.sendMessage(Color.translate(message)); + } + } + } +} diff --git a/Bungee/src/secondlife/network/bungee/utils/NumberUtils.java b/Bungee/src/secondlife/network/bungee/utils/NumberUtils.java new file mode 100644 index 0000000..49139f2 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/utils/NumberUtils.java @@ -0,0 +1,13 @@ +package secondlife.network.bungee.utils; + +public class NumberUtils { + + public static boolean isInteger(String value) { + try { + Integer.parseInt(value); + } catch (NumberFormatException e) { + return false; + } + return true; + } +} diff --git a/Bungee/src/secondlife/network/bungee/utils/StringUtils.java b/Bungee/src/secondlife/network/bungee/utils/StringUtils.java new file mode 100644 index 0000000..62c8446 --- /dev/null +++ b/Bungee/src/secondlife/network/bungee/utils/StringUtils.java @@ -0,0 +1,39 @@ +package secondlife.network.bungee.utils; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.URL; + +public class StringUtils { + + public static String formatMilisecondsToSeconds(Long time) { + float seconds = (time + 0.0f) / 1000.0f; + + String string = String.format("%1$.1f", seconds); + + return string; + } + + public static String formatMilisecondsToMinutes(Long cooldown) { + return String.format("%02d:%02d", (cooldown / 1000L / 60L), (cooldown / 1000L % 60L)); + } + + public static boolean isPremium(String name) { + try { + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new URL("https://api.mojang.com/users/profiles/minecraft/" + name).openStream())); + + if(bufferedReader.readLine() != null) { + bufferedReader.close(); + return true; + } + + bufferedReader.close(); + } catch (IOException e) { + e.printStackTrace(); + } + + return false; + } +} + diff --git a/Factions/out/production/Factions/META-INF/MANIFEST.MF b/Factions/out/production/Factions/META-INF/MANIFEST.MF new file mode 100644 index 0000000..c88faf9 --- /dev/null +++ b/Factions/out/production/Factions/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Victions + diff --git a/Factions/out/production/Factions/config.yml b/Factions/out/production/Factions/config.yml new file mode 100644 index 0000000..e940a7a --- /dev/null +++ b/Factions/out/production/Factions/config.yml @@ -0,0 +1,124 @@ +tntExplosion: true +tnTExplosionDamage: true +creeperExplosion: true +creeperExplosionDamage: true +waterSponge: true +lavaSponge: true +potion-limiter: + SPEED: + level: -1 + extended: true + SLOW: + level: -1 + extended: false + FAST_DIGGING: + level: -1 + extended: true + SLOW_DIGGING: + level: -1 + extended: true + INCREASE_DAMAGE: + level: -1 + extended: true + HEAL: + level: -1 + extended: true + HARM: + level: -1 + extended: true + JUMP: + level: -1 + extended: true + CONFUSION: + level: -1 + extended: true + REGENERATION: + level: -1 + extended: true + DAMAGE_RESISTANCE: + level: -1 + extended: true + FIRE_RESISTANCE: + level: -1 + extended: true + WATER_BREATHING: + level: -1 + extended: true + INVISIBILITY: + level: -1 + extended: true + BLINDNESS: + level: -1 + extended: true + NIGHT_VISION: + level: -1 + extended: true + HUNGER: + level: -1 + extended: true + WEAKNESS: + level: -1 + extended: true + POISON: + level: -1 + extended: true + WITHER: + level: -1 + extended: true + HEALTH_BOOST: + level: -1 + extended: true + ABSORPTION: + level: -1 + extended: true + SATURATION: + level: -1 + extended: true +entity-limit: + BAT: true + BLAZE: true + CAVE_SPIDER: true + CHICKEN: true + COW: true + CREEPER: true + ENDER_DRAGON: false + ENDERMAN: false + GHAST: false + GIANT: false + HORSE: false + IRON_GOLEM: true + MAGMA_CUBE: true + MUSHROOM_COW: true + PIG: true + PIG_ZOMBIE: true + SHEEP: false + SKELETON: true + SLIME: false + SNOWMAN: false + SPIDER: true + SQUID: false + VILLAGER: false + WITCH: false + WITHER: false + WOLF: false + ZOMBIE: true +prices: + blazerod: 24 + grilledpork: 4 + arrow: 4 + redrose: 1 + ironingot: 8 + cookedbeef: 4 + leather: 4 + goldingot: 19 + tnt: 16 + netherstalk: 8 + sugarcane: 3 + pumpkin: 8 + melon: 8 + cactus: 4 + rottenflesh: 4 + bone: 4 + sulphur: 6 + string: 4 + spidereye: 4 \ No newline at end of file diff --git a/Factions/out/production/Factions/plugin.yml b/Factions/out/production/Factions/plugin.yml new file mode 100644 index 0000000..56a806c --- /dev/null +++ b/Factions/out/production/Factions/plugin.yml @@ -0,0 +1,6 @@ +name: Victions +main: secondlife.network.victions.Victions +version: 1.0-SNAPSHOT +description: SL Factions Core. +depend: [Vituz] +author: SecondLife Development Team \ No newline at end of file diff --git a/Factions/out/production/Factions/secondlife/network/victions/Victions.class b/Factions/out/production/Factions/secondlife/network/victions/Victions.class new file mode 100644 index 0000000000000000000000000000000000000000..82dd8f56ffd53633bea2047052cdcbe84579255b GIT binary patch literal 7277 zcmb7J2Ur}(8GVC*Mav>ifVyl|TYzOwvSrCKZU`Y88zf?|6ghFCcWVPOEqy-rq*$Khlhk;$v+P_>`1%du8YtAON|N*m*Ys)lC$(W%aeJcvJ zyGE{gP^qG8Sk@suJ5gk-QN_`6oTTy$%gEVIwB|KZjg{j_rDk+9+izzl&9p#Iyn0^# zcrx#qmS-AnG8nthv-D1O|Q8e0SQVtfQT4y!F`EhNvrDw(`^vwk`ESlWr zZ47#yLpSNudeYLf>14l*6}{3W2wH#Xm+Op4%OLf%aUf?ny7adLx1@}mtWe#Cl%*d( zPE(&p#-#|OMb7sh3cf~XG-~Ialp$RczZXJqj}%11qj95#0qhgl8XLH)tQc7t<>?%I zj%6&#@^uY|aRVKd^n5|*qi}bvfv2D*i!H< z4d2Fhc#szY9%U4<3@6#2cRf2ZY)=~*JHtHV>Y!i4ckw+9!`QFk`%;tx7}4+pDbMbO zXcu&NQu!ZhxC&Pb?5K&Qpja61Gz{Vzf$cS6OC6eqYcV8{tO*!-uv*2ea8v>p)HG3< zN7C>JTqm%rHsn0lqhS6<)$lX?Twrsg zMo*a9_7qavo|K*8Ihk-3{6fPo@hgFI78-69BC&#BYxoU*tKfGUevdy0tg@YSay&mp zOG+BkJif_-4^i+(4S&L)88i0Sw&!||o*Op2qxOW`+K9g-@YmJ`{4IgMYxoELso-B4 z{*C`6@ZVMi|4ZOjjjl#$qE0MQM7<^&M57`UO*DzcicmGt%x_p9IjF$@d1ko-Dj#B5 zMq0P}QYpiAi$02OM-wg5u1c1y`fWg9Ly5{cE1x#ANnea>=%YsbHg6V@U<>(28Ayg6 zmaezNb&h(DnN9nScuTZp)y3@_8DtiB)V8Mt&Q4kR@nnXn9Q{nv&6#Q2qhrsHkNQ>m z!@>QdV}1Mk2e@oQ3lEloQJz z1Gzw##mZBa=%C3@k#Mvd*YL_X1+J;G992mpzA`3%y{gMsyeNc@f_Gug&>wh>FhB{c zuxx!I>~!}zc4mZkKi-V#=HpIvU>j8q^Z8ZRswm5-;Y=IO^}NIIq_i{T@pBTx9n2Qz z-Fs&926iPU;EjmR!4K)&xDMZXEBbjz=)(*>Bd~^tBpMR*CTW@cNOU5y{R87Sk(7p2 zkd}fMuqA1gDwc>==EJ3FRRHbnx`B@wA`zdBF@>r343`sZFNKD=T8W60`K+&7a>Owv z%oI;L4b9>e4xsK4zsJszT>pv zk#_SL!=WZWY)VDPm@)?I|NUXwOGidfB^9Aa$A z=lBLSnB`?Xv`K-7N>60S7li-7f4G|iV2nQqw%WIkGT_*;oKZTw_K(4o3uD8xTsm#P zZds#z@smbvx_z!|ru}yf>FX4+hFR0RC5uy$k$2&7*uXc{y?o8opvwCVYjrY7_e&<+ ze#!jVFL@*IOWp_kl1ZyyGW+yPW|Dr%tk5rc)A38*a9FnUrIgnw{yv7SBul}vq5CAn zJ^rxA^0(3NT#h5GYrz2MzE}d|MerSH@V^ao--o*H(^z!4yRH5t8fMTKwiLhBG>66H zSNYe>KkYPH4xhx5L-(TfG!m>Xokd$Tc{kSp=t4ctLmRg8Ex8Aqu#L~g+u3sgW!`~Z zxQOeuvqZpwqJXKQfPEBCYS-F*0`0TtV6ki#%cH55@R=OA1PXew1ecc3wT5(c@-9dc zxmc$ulBCN}yA_A2$;uh5Vtuu&ubIJG*3XjlvuCi5_4Ts8VFvB2Zpe3_M#2W`as@Z!N~}a5-_-YTRr)FRUY?Wz?*2Y1 za1|`Jj!?{C<1$4>c$Ezmxq_!lD$+8CZFAV(-FCqoE{rA$R^?irf+3O&myop-$#^*q z$qsT2C0S>8+m1P0bU$`7Gu(A}78f5nh27wL{UvqiKE)Mg_0l>%>dV6|PnpURJj7dg zfjPojAaG}KBhxq<&Ji8c6IgXOhXw?}FRpP7L_mO7QwvunR8++*JwQ5DU&@ItIM861*`M zd^2u|0VgZLn_|Joa6AUwSP4ES7X0{Fa8oVd#drdq7|y(wrTkZaFX|*#_{TdqohuV{ zGP;H%Z=b!db>ELG7U3>54R4*ro_lco{Fb&^4mB{LEWf=r`L1vGuW)d mGsSY2DzDicVwG6N!ScTom-EX9IpzU;2p{%qAIB%~$^QdB1SkXm literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/VictionsAPI.class b/Factions/out/production/Factions/secondlife/network/victions/VictionsAPI.class new file mode 100644 index 0000000000000000000000000000000000000000..a93f86dcee3c5da519f73312bced8ed31caaabb5 GIT binary patch literal 6698 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 ABLDyZ literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/VictionsConfig.class b/Factions/out/production/Factions/secondlife/network/victions/VictionsConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..f8f8f70644dac53d587e61f22483099ae0b0f468 GIT binary patch literal 1374 zcma)5T~pIQ6g^w|k)~;jE#KldYFm+@qN1(%fimMv)dvt~cne{vi($hgTX1~y|M;TL zpyPu-z#rv!H%$>rnIRA7?zwwzHs{{WpTEC;1DL~86D8cp;tZxW+|)3m!PYRV;g*Tp zxT9gtK-t7y+%qt2V8pPpjdcAYLsH-r>wfnlIhU1dlv`WqxEHihJ`+uQ3r zSaH@p%9NVE>v*e9AT*DYN%dZY4Aae!yT07;#3r{TS9^Z&!QK_FA_t+p8ZQ=oxhYz8 zhJpxJj(DV_$>oqvANN@j;o>o;W5<(SuXz!^JM7jHVe^n*qv3k7V{_SW2QFU{+F$wT zXU=R8g<%aN8b&pYX&A>)1`jMeMBPFIk1|-W@EA`RYNu}qO;Vp_dyZ_` zZ`QZCs~DzEQ_qlVarIJ$%8@Qvs8p(_8U&3XPlc}>Av-f+m_4afwLjTyB|If~Xm`}Q zU-XLUzMpu4o-Q4o_{{e`?$D(kt~CF9URHsSt$KA0m*__+(I1tDshdtKQ};cJ)cPn= z_oGMyh$78^q5-C7ML0>!rpPF!YCpif(jtL#gy|@0;5@CZjsO>Mkyw_FzDyZiJQ?i( z$!|z}A;0e#%U*vPi9~ z95n7TbxJ>Pf5O;Dwq))j_Z^9tSrHqESw3RPm=z+HidivY>6i^hETad}Y32ltLeI8< V9JSj*4SCEHTSAc(RoY9S_7A<6Ba8q5 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/BalanceCommand.class b/Factions/out/production/Factions/secondlife/network/victions/commands/BalanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fb70036f7d35e0eb27f829e48ebda30bcd501950 GIT binary patch literal 2427 zcmbVOZBr9h7(F+MWC;ss6ciin`a%prSgBfV@uh;=(gw6*X{mkjl3c?|vYXl6;Lxd` zI@90L5B&pvL2YOH1Nu|?BRV~IHzcM6#x^tA``owZo^zgaH~I7L-~Iq_2~RUPikk!Y z2)8nr!+aXIGf3g4fjhdrs|P>U(I*BLbo*%rpP{5TEE-rca4!k*^DhSO>y@7ycwk`J zz{51YNMl8y@0#N};SGUgVS?S%yjM{I!zIU6OU?S4@*m2z8b`7vuPkdT(sy*fHJA$5 zoj~AnDNtq4t<;<+%63)w%=0(wO{W|>o*UR@uU?mKC9vmYO}b?@ANOYk2G==WQ>}4< z6NQrJSM9at#)cEx$_<@x%f4TeTgso+;QAU-EO319b)-;{p%j?e7gU_dzAIypx4DIY z#vU|zXkD#1fkT$JT-OU_#6sX=?|fnN2fG_7Pxj%8@jo^s6cqFj@y$6oMg})7_-*OP`QJ<#(~0{SWLKI)mNLL)}uErNF^1 zQp+07)&Iq4A)+Mf9?Kyh7HE~_P?k3qWuxW1fgPHGKE>SWRh>=Z&|+KBgjU0f2ZtKU zuRB3NPcB6sAMBWR+G_}8mc6E5R(Bn3_rr5tW}SX2H>HVV7)#?z6JKF9jjv5S!Z!j( z^_)#>SMBA{ciie+)2UUIFEEl^tGPMKJTBan-Zx7OvR(rUC} zypb&QG$I;*H&WMo7SCPm==9c?n_lRsa&PUaDzi$*_PX4x7`?j`dFV)CqSV?-X|DoapWN)=R5LN}}kKjfQerh^d|l|Bbt41a8b|Fzq)$VSu?vZBkbulJyf6Esm#dU zYjkCjkpWJ_V4R~7PEhretj#I*&QSevzESh|5$7U3iZST69?x5PkO=<}U1lwFkdZP; wydPy3*+`-sMaXlSrA!6565wip4+4CM*??kewZ?QQ-%zU^UgGF=&Lwc;A7N);g8%>k literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/DonatorCommands.class b/Factions/out/production/Factions/secondlife/network/victions/commands/DonatorCommands.class new file mode 100644 index 0000000000000000000000000000000000000000..7df26b3f8c7bcf5a019d4edbb1a88490381918ec GIT binary patch literal 3715 zcmbtXYg-dX6n-~E0?8r@ieeQ}D@MF*y%epXc)_CBh$u)e_O^s2ENphuolPwEes6zH z+vlOSANm9Oqx$rn-66?_1nJWc%*;7E=e+NnbLLF=`=3Am0&p2Wr_qo1y3vRC)A#@% zrtuL>IV?)Ckj4@$DK5*QD2Ej}*j-pnV+~FQCAd=K$)PNbK2E_;L1^eKJC&mCY8c52 ztKhjyj=gLdt`$7>{57L$7XsUJg|VO(Ia-X{t{qHh=*XU4(2$(;mMjgudE2#SDy2os zpEnmBYWnhC!E_c(-o*9+Eb^_ZHhN5gJs${y$HA@!xb+1aUPRKQ}>X1;R;EvTuySr@pC0hsv zdM1qJzIrCkH(2kD&OT!oR|3h?W7aaRl&VTfxK;X(R2ow5rha#1IX^Q$>6^=ehOWR3 z3emE^0j#d=i!AP%e$^6z<*#_m==E5rn~pqZxl0Ur`yhwO5aBKj#~b&x_QaC}reCy3 zS6_+o=xLzrmFX;=yjjy{=t(-3#oT|$Vp)1HYJQl_q|BxU7079Kxe~?y;r|Lre$}j+ zhGV)#V=nM*w-{DzGFUH%_h-vjCeE%w?}<`0WrkOD%30TtUXFxiDI}M}sgt^JvA-c| zjr&wt&3dxj=K`~^#X7Li#eNEl$yiBi-0UXe=5BpOHbW~7H;i-;K zFr;H$4$tsu3ZLotTnb;{l8!I&x{j};IE5h%*^$CyVHT}x!$$lZ!{brsn;0IKXP-#n zYaQR<+Z4Xj@jZUfk;kl#$8z`)KWVsJPv_PLK;6+TJ(&Tim+6DWRja@ly}X^L&8LKx zyxdWzzHhob0>eC(J>B}As&|O*g4`%nhgWvIpcl7;Y;C1szv_!#u^4+(4m9dx{kD&k z)r}K1(pPs%y2+BXw~cv?c9UJL4~5;FU7c4kVtj`M9q-wyk;@PDuBCR*hv!z#!v=Dy zWfWsC-K6JuOjLK^o33!ofR#OxZPCcKsx%BYywok5K0A+mA?{m3mNXO8$}{^!hH02~ z*^t}6MU-ZlC=v|qSLV31>HsO-TZ zuB8Dt;3XX9+>Ij`;x1|Y8fW<}^D7b?=osBVvhE_yk07?ht-HzKD2Ay&#=pZfKF(by zo**fBg>X_}MBo&%0;dTyx((2-W}t%v8r%`k8G*9`=LF7g0vT<9I(ed0GtdzN4YdL4 zub)U0ct!fZz=K@GC3J)lyUkgKMOP6!vw^N=faA#ELRS7{?NF~;C&VesNm zS0vO`CIr|m{cE_!znnmh@Z)%0!9PHfE1+i+{_F<2oAFN(CmZ4qN1JQ-Jqn)=FoEl2 zC({^ba-+^Smjm%PLAYQ##9-pKBBIK|-i1>JYdkFez|bl6ZqCd@#te zb**NaQ7#bWVjGlrt=-c%N)oQhJ<9q|A06~eXf_%yOa`m@-K}N Bd2av! literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/HomeCommand.class b/Factions/out/production/Factions/secondlife/network/victions/commands/HomeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3e78259d9bc8a4030702868b35e46b8d5cd75589 GIT binary patch literal 5538 zcmbVQ340UQ6+I&xB+G*_sv+zZU}PhM#g;Tdl*MLkWH6YeB%$qCda?(PW*p7PL}{Du z`@T1{rCXY$d+A~@X_M|tO82JikIC1s=go}dkv&q9;!mS_%f0WMbML$FiRb@&`&j^c z@t-&ba4Cid;&>1bb>cGKARljx<4w@yW4sf26rvDubl{R~6ce;GI#Gft`>YtI6HwsD zv5GXAiQ%doc|<;{F+7?;1Wp2NaN>9?9+Qu^#qjnR-XU$?8N<6`cy|o%kt@G9j`!jH zvi}1yd{8z%Bz=BZ`ua!=AC2K-QG7g#PbgTrUpIBeZ zT$Img;|6;YIV-Oj7qqf2+kR)eGpXAOcIRx7x6Fc}7e&St&Q+^Cm6_4=j&7NDCU2EW znpv>*mCeH$=Ye1O7$1mV!(R85iMmg^fvPr$|zUc_9O?zqwJ; zQLW6mjwm;1n++!xs_nG&kg5BT>PU^r)T1&c9GMrC))tPZdbc-nL>OGz8;lp+hBqE% z!+Tp}Xr=Lj*1OQ4caMUn`xocEmIWLas zvU+sOCHx&VC^JmOcI;5FK9zSj|Gs2K1~0i^X7qvNewhsiqWF}GPvbLDd{)Kh@Oc%F z;~KMH#TW2J6<@;jD88)XEBGpbFHBn>oQkjE>s)`xvK-qfYtth#p$hi$rFfzn-{9Ai z-O}?@csh!2s`wVZt>QblreI4-T(T<3f@StO$w_TSBsH^|lql^avocu~&R{pbOAp`c z#`mR%A4u~XDt_n!O66%@b`7{sOS+TP?PSVO@gw|LK7OJglFHM3mY#2VHy3C=0Dn zt=m6~=c4$zieKQDDt?7uGf@K0TymZx6~DoADt?RKsrbEQ)t)MDPfFliV`r<>4lDY^ zG9RVW<5xtU#WT~&OGr6X&=+daP-liM!(ut^V8Bh=&>Uu9YH|K%w=K?G1*@B#K?*u; zVHQS&?HyMu!#pzaqZ7jMifK=O=n5U2FjV!X91U~Qa=V9U!ulDbPnj`1rdHHem4zY0 zQ-j0HT;XdSjH9hTN>O;`pX9kZC913q3oY4|jpGk^p5-El(u*8xR2*sik>*-HFQ#dJ zZ*W%Q@#pK{0w`8Yw}kS9HSJ1?hkFA)7fG~em5*xqNd-yYX%kafX=0A$t;XC4LhykG zg4_W8j)MDx(>)(ejxoRJOB78j_G4k*nq^b#b;5!is^O3xP;qmpR)Hx}E!EGIoUBPQ zdehU)Y6Uw&&@WEkTFqza?myXlSf<9G)=pI(65JVqc+>`%e|tk~%1Z>D zx20m)Dh;{!)tWN}BMtYjT0e`;|FZ_MwM|zRZm#B;9VSAzV=ctEf>AfBvS18bmQk>- zn!Lp~;BLHrhsx&O$qivnIFnKQMa5t7PZj5JLB%epK9zd)WUPe!6IVFF*G^2*t)e`p(vU-=uXL=bTE< zVTpoUjQPMUqH~BTxQ@&-=(uzf@e!}Dlay`~D6dJ&B1mtaMOO{aQ|L-3me*PmU7O2r zGh%#SMLAaUxdt1tj{LUZAbK%`tr$U{i#o~q8!6v@yw>G&%Euqa5gg!b1&8RT1CbXo z6vg3q2(cj!4|95(E7~~PU1ICHlWI*=xVZpmOpP{b~G?f_x#Ai%rpkbw0*5czf# z#|R`&p(Uh92!?$)PMBRXA_`9MbJ7$1b#+`fd|YQ5ak+vMVB!h%r+w8EubM@V?3=~P z#45fA^uAFib60?jr}uMcX0euv9-yWNsoyA028f-h6FXBUcHAd+i1slkFXAAz z4xxE}6Pmd?%~tZS4j}gSfhYe65uc{~uMePnDfw4WV?VbeHb!im3WL@y9gi|%axdOt zte5cn@{aT@*34qVq0Sh~^v#o%tS@VsrhV5DPbc~rhKuRM zHh!^A_gtI@n_#BM!WG2^o&rhM-%T#iRh|d8+HwM`gv>9m#xkqqcD%^$2)E)t_$|+} jzu^V^oen10PSfoq=jgbCDfjJRlwtdCZ?3<+1@`{{tsIeh literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/KitCommand.class b/Factions/out/production/Factions/secondlife/network/victions/commands/KitCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5db1fe60941bea820423d5429d20cfb209b4ad38 GIT binary patch literal 7956 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 FzYC#-EI0rF literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/LogoutCommand.class b/Factions/out/production/Factions/secondlife/network/victions/commands/LogoutCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..00d5392911fae3b1194f7bb94179e2359eac0983 GIT binary patch literal 1328 zcmb7E+fEZf82+X}x3mkzau87JB2wC-T}~cB6GXWxNW_q+SJUlShHiJ7-6^ELfsf#0 zaHHUb58yKyMZG?K^-KJWV2n=@f2bCW$+k4VPR3b4lb; z2;pLg%qMWyz&!&chWMKFq<+TGlP~Ns^lqrCU`UsxC$?LSityj?ic3hQtQ_v{abJe= z8Q81$Wx%jf4uqq;sw+PT+Y|ao`E~nHI$A0(upQNCaIYHJWmQuxy%CA44CX$;u83fU zseD=aHM`QP*QK_Fr=@P&J1%bve>J2QZ+5;JCNI~c1gczfhQ%u>MV{*u#giumr8!FR4Q3HvEvFJ2CzI0@yiB+!KewnO{HWQ$rs8O!FIJz=~FlR zN#S`rQhAyGSEJCqeP=`4g%0@~ltDDD>!fx_v9FxjcMNk~Q~qm2Hk7M;qN{!G1uoa* zHP@AHmmE`p@TyxP2zZUmM!T8O#Tn+!rrVB)Zz$zf)scs3gujaLiGi*n25225$)=sr z-dFqzcHB8m(;Dx9DGbrK87bfzG9>k57$f8)H2y?;jCQ+tiWtKQddl;~FX;V@bTQL+ zg7_(n7>+|MQOxw817y;JFiaK(t!d&GI?rH=oM$nH8C*vRZvvHy{ fK~e(jC$a`6af75mLT}PL^&TuBKMc1Bjlud2uTp1O literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/commands/TeleportCommands.class b/Factions/out/production/Factions/secondlife/network/victions/commands/TeleportCommands.class new file mode 100644 index 0000000000000000000000000000000000000000..b9ee3793a7d90e8ae17c518d889e8911279ef0a8 GIT binary patch literal 7961 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 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/kit/Kit.class b/Factions/out/production/Factions/secondlife/network/victions/kit/Kit.class new file mode 100644 index 0000000000000000000000000000000000000000..82f691b942a6661f1682f5ff55812777da3cb4a7 GIT binary patch literal 3214 zcmb7F3sVzU6#i}uNq|LYAoxHr3dIoAt*vcZwGRcYRD2W^75Z9|E3SlHy1R+R{-Vxw zI_*qRX{Y@G{ZXBMXE%fxS4k(6``UZH`<;8fbM8O?{_!_}bNI0rbGXrsgSgp?TevNw zFJ&|@9~RQM(}OhbX0RyzJ^6e;g9kEM>cKL;l5Jm0^Gy%F#dp$JvTH?}vNV+*9Kzi+ zbQ%xSSXD?m*1A^6&ONs3mRYr&RdXTmY-ja?LZ<9Gfp!94;rQ~L>#dqAwY4=nFm0#K zW!Kv@X9K;y5Lo3kZtt?Zb=M=LO*@7B-WF-?SSwXsQBX^?ujs0^$?>d0pS7`3-Mr)8 z=87if(LyU454VF&Gx~U8a*=0FyA`_8KW97oW^H{%dv^p`9COQ7b@Wl1j%(`6;Y}fHkarC+!(6Q7;gT>+3lOTnP6<7*q-v}BZnOCjo zkQtirfb^;kZiaCfDon;jqL&+{o52_>Om+~C3~eq&5fS{^FeoR8zh@x3ZU4$nVD=Rz z85+TwiK4>=#;4bBB{W{xlaB-`L!%u=97c@BUW#m-vc$B9`xCC70CE0mPNiHO#UwkR+L)DOH` znTd4Ub2qdX*xHvos$10>rJIX!BD{+Qx8{}gRa^9(p+wI}?xyj`fQ`onj^Jn-YX&ah zqJdEyHBgn&I+&CP+SB}U&8}9oXJAG?4^QX^ZY}@Fs_VR`%i6B%N`9hZz{Q4v!x*7f z^Ann>amK*+IGYA7eFO$-m^JW@tkexW!4C#D@zlUE_7uiC$Vi2O zT`z8}Jl5qv;b05$OXWeq5cTg=EQP}BQXncP&7F+Icnj#RGTZi%&W^5kQ?$Rf!E&IR zU<%9|Q7G%0c3ALE#|8Hl(Kez(Dw)8I>axPg*gFbpPt96jS4BjWR#hr-ci>TIRT5E{ z=;%P6#ME{wH?;3tt28rX4{Majm}o{3nV=m2;+@PIMHrA7;Ahk);QU2JQQpE zK0b&!d9d9$7i(O?hcU)OKezcj9Bcd$&c_(%+Kmsy8nfOujL-9W6LP)9sVyXS;~HIe zUuZoX?P$g?6>3tV^l>~+vQr$)7FrI@B1xG2YzNVYA>=rgB)b;DH-l6P3y36ADGZkcxg>9Fn2aTP?n0!Jym{yf zzY6UXu5v74`JDf2%Sib+?Bj@!Q6I;A9QXM?if6M8&z9K>_{i%$+r74keSZu4{uYUi YG}(_d*b5gaZ4EApTsZrJs|j5H4_MQ!FaQ7m literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/kit/PlayerKit.class b/Factions/out/production/Factions/secondlife/network/victions/kit/PlayerKit.class new file mode 100644 index 0000000000000000000000000000000000000000..422d0b8e0947d179654a9ae2079ceb87c576762c GIT binary patch literal 2707 zcma)7T~iZR7=BK&$%bSJ5ClvFM4%YL$5x?K#9|SvO$DSvX_bDsN!GZq*-dvhQS7b$ zjNW+Dn_jdtB}zNvWiR?8`a3$)8Qb^l1_-zVnM}@m&U@aE=lweS*W2IU0GP%PEjWvh zqgcQVzAVOY6Q9Iz3%8^A6j{D}#zpQ#v4rI)R&bZ!u5!80Mcj*`6>AZ!bNU4r+=$>y ze)uYi`*^^`HaYw2D3Vwc@r{UY83aQqsSJswEv2f+x?&XNHOJD7;v7RrGYaZc29{-r zPn@QQ>}F+r@JuCyrOR?md4L@W{bA( zm|>vNus<}xd8|`D5?wPZR$jfO@s5cfRB@7bxP*S3 z7xA5hhqxp`K~6+oLIJ9XM-o23jEJIy$Iv8fVOv59=S1idN-#v263Up8@I7WESfDQI zIX*TwDwI?S~ld=C;(l!_a^7fHJgD!z`3c$~f(*?E8Bmo#h2S+n|4>$r&WKU+Xi^ zkfyF~5I!6^FYnp?*MaIY+>9KFofP^;eL%f2$xOt_ zr%q8Vd4jfls6$v&F3YWT=L~k7!ATgc^d+1@_Z_ ze~;}!VBlJN2nFCBUn5+DNX$qLEj2{<5Oc32`o#Q!*88szPqfw0P7)nN5(!#r=zNVc zd*}+_R{|2mFs&IxX-%Ssg6SpL!?b4T{60ayPT(I9_=m)Oj`!#XdPIUG+ldieM2OBW zkj5xczRO^Yf*q%Q9KpAUiI`xl{~wZLn1ozU1gDH-LLB`sv^aa_6ESDD`Ry63ADWPs3yGh@48Jo}A7 z$6f7iPvRh-VYi)lu0F&SKRX@G+TrcU?aYGX;Azx}^6I5Buh7FWMKZm+=*~wz4<&7a_cbCFMPbma?<azsxZa>XY?*=OI=*gOejps-`FeA|5wzt_jS9+Lr^z36%mcPD zDm?k9U{g(->-Fi~*}*|8(8aKD0(~fa*Ds*mE8iNW%_W{Nts#p?1((cVcLFOI)g$>- zSQN@ruyF>_f;tqa8R7dzUkJm1F>L6z;q>XLz_Xk_$}Ns8Bpp%kT?tohz6#ULWDKWA zZ;oD@qhm@qJ;EbBh!FFRPL{){)=&7JHRh?OSkP&Iiw+MQZui#Y;ui`-Z`OSu73fmSvVIS&Zb})I{CyTDKX3l(*2_Dt9g3CyfuQeY*mYC*? zAWuiErb{-C)pKGNWRK}-iz_XohE~T9q;*Vd>X@H{nwF78CLU`&@LapyaM(A9$&UG$ z*&QTR)FEebQskD4DxHUq&B*fGWxg{W7Zo4_7g)mA4+t+~`92#q!<;(U)Y5X~z~0XG z)>Nu>e+OGszv1VTEUTH_0BRYw^$Tlic5Rs>C4px+zHI~qwt6mUvlTENK6~a=TFhw# z!y0D@_6QD*Fqv9;VfjrQM#EIKYMw?Y9Vj-2hNwe9!+)|V*B}_ArBvE(*&KG^DD>Mz zFRN)@b^EAgVZ5SByOn|Bq}8aUQ)CRzY^P7b@|t~JbCyOta3?FYj2_ve&8}B{rUcz5_4z>K6#x#1ZNAO&^QlSer{rosVy;fP)TA4zGPSibCA9Y#iA zE&ryj1XGp&c!k_KoVeEVq;pre7i~BVe0Xx|3Ao7Aeog@ zC?X~BTirMc#t=Kny|A52tfMYAj-oRt9)~)P_!yE6r%*D1L;)vBW%$@oQF;d21j-6< za*}Y-`{>Fe?1=6g#<6$|+as>CSaSF@$}1|yv2^OWGIj>bcu}#O%Q#kCAeaJH(yFQn zT%urStSUBvOBK$wwessS1>a%S&Z4TK4Gr~GMW?YkwCVGI&Y!^=Ni45p;dPRx(%r%k zqE1xudpY7*i85570+(V1|4?6wN={YRs%O=80aC5-Rug$oc0Vu;Sq~FRQRN!Z9BV8dSEWvi{Kn&NA zrwYaKzp!1!P8E%R;84k*NT|5>cbae=pJjA+aW9a=ncp%IzNU~E_jKI^)=F^J<&ft2 zas?9HbzJJF06vj>pOY+#!8H8|N{(P##2qxWgof6lF?4xDqo3=@#ecLwaD{VCiVQrf}leB62`gi(En|^m@7iN|2Pk-*6`#9&GbH4Msy!qc7 zuL9VQf5ov4<8d6viF$P7WE}TnLJpI1I2FeOn5xHVJSb-m$>B@_@5k9XJRHXd@WD79 zfi6j>DaC| zRhp#8akpuk-jG0TZ{L(aWYozT0*zy)Z5%JmO&j@B`n1KJ<}oLuTT^=8l5E2QpuIwn?U~-9MkRPgtsT4&^7A6g8EJ5~{4+@BMd2vRd!M|Z#pZC#J@Nos75J*lGsLGr%Wx6Jj z9=2`A(|xxIYzd19pz)zNs?*cH+AWqoH=WhH!1bR z6a&V}`fgu!#%Z}na}=L@*rPp*{9WYlf!6g-+ z#HUnjN3Vh>ReTzsQSn)PPQ~Z(1>&IMi};d)FROS8Us3T@dHgjzt>76IU&pfocl2a^ z5nVw%DY&fS3cjJ>n<~DAZ>#tYzN_GSDz4)DbahYWA*ax#=M8(i*JavWde=GKPlnyZ zUBwUZLlw{Ac?CaG@nif%!B18E3@@noIbKlk3l+b_HG!rP$MIY*ug{Mg-mH^#8)LZM zg#JbaFRFM6FDqD5@d}o?Uz8g+RQw9dDt?XMD0o%HZ}B@7zn2#M0e=)YSS?Ab<_&d` zXlj;j&uAy6&l?$fBY8{Wl+%n337>^yU0`$QXpImT=&q(_xt0hdW(+TFyPj^#Jnrr7 zt6CPye2k}_kODzehr-h@3x1SSg6WRR+bzprY_ei8i|Q#g$XbC-lo`G&Y$xS3NCla> zXEN#d2IU2Ho*RMv;q?b4C8D6%1 zO*eami(0`mEzdMq!5zzC<*a84*setY=)B%r?^^TvP{0NvSqhCu3%bP)(h|NT2{g?ZTKW>txD5J7LNp}E^tp}o2UqnzOjrmr_JfEYc3d>ynfEp zN+rV8N*744xrUt`H(Xbrq3soFmvEE{O2kK2dKx3Gz0#qf@aCNxLrx5x2-NW!zsLnH z3z7M|WNo^6kBy5=>@-Xc+AkM`ab1XP#BZztG?STGBU@nS2+}n~<(5yhfPRHC6~~|O zTAWX!*C`}l;9DctTQ$+E*0EHTwiJph_C#C0J7{wE?P$q*SGHi-U9>ZY4B6MSr*tnTLtsy}F1i*gi$+W<{{8M1tE%>Zu4?Api zI^4mEapM zBEhGix{QV;+#xr2M3&IFa~Vx<@YB4G2Sqg3K;E`~Fp`WEu|c4S7DnEMf#}M5qrZ+V zqqYAf)b_VTTVlz`4YUCpkSwAjiqq1lTHmN4G;*Fq9Xil}PBddPf!ab)x-f*T7$s=O z2-^dMZHl{RX`n^U$7%Mnq>w-y4U8=TL9?+BcM*^VJ~Q{@-2|l>PhtQEDDy1di}&Cl zLA1y_h!mo{s}px~7ULPvgjn5w(5hfa!97qmwBmi-jq$!=9@faj;as{aL*59#ttC@C zHto8BO+bASoh2i~p3|_A0;IzI0o#hgt-d1C^R2!j($B5Fnzc=FnWTY0(N4ZPo@LvI zI@_C?9=VFM9Rrb;NQXZ^Ryz=FiLS#tS8;G>5t{`DW64-2@u#P@L@=l%l_I(XuH()n zY`ubpqzr>1-c^H3QStmcuU(38eDP8($E&L@+KmKd?qU4xr3L%wp1bIX{e*J>_j0_S zd#8E!FljQ>Us^apJ^L8phjE0^9Y8xN57JFZy6mVAdIL@(%~^!*(dpt8okPofBsk$r zxgUDW61vxGr4Tr literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/EntityLimiterListener.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/EntityLimiterListener.class new file mode 100644 index 0000000000000000000000000000000000000000..181ddc48323dd4cc33f4a1e19b263255e79d2be4 GIT binary patch literal 1557 zcma)6*-{fh6g?dxBa=Y|cf|$QB&g%QMR5UKgH{QZ2i`iNjV(hDHPgZ3C;R~a!Yak( z!SdOUvOGNrZo%Ng^z`(-_ndogpSj<@fBpjCBBp(8!4V%vaclsCIPP{Qe4IqlM+xNu z#&D{D(>UXn(8F0DKF&GYc@GynT=Z~BpnoZ9HMJ2qQB74NHuI5wu0o^it2kK*mvzJH z*rZ{tv#BuRhBn%c3-lFBHG%v@Jg)?{R<%)2T8nj+%*uMili_OIkWo!0+I@Ep^Y(>K z1#b2vi*#z0QArw38LRC|RWE9*l4|FeISj_8ZJJqTV-MdHGWOBK;k@SC`A(MK zp>GxWRcsntMgJ#w0-vxshd0Q-UDq~{!&msLC^(NX1_qA54~~DB%wX0d+>MiGf~PKz iU2U#T9%RLS`Uo7LEsxyDC=PPh&yz!Z^X9nbF!}?unXmi+ literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/FactionsListener.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/FactionsListener.class new file mode 100644 index 0000000000000000000000000000000000000000..d30fd4356624aac0073f05e96db77880806e7b0d GIT binary patch literal 15442 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 Qm~Zm8_}g~xhy0`e2VU)*S^xk5 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/MobStackListener.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/MobStackListener.class new file mode 100644 index 0000000000000000000000000000000000000000..ea910fdf5d388d1162b8039db6b06c42de117fab GIT binary patch literal 1500 zcmbVM+foxj5IsW(OOizp1w|18f+pNn5D^TbF$AS*BNkw)eB3N!G9=7W$tD(`;D_)5 z@_?5IAARtnEPHl?BqpL|ZB@@q&*?sAx@Y$Lk1t;VEMg;!2u8z*Vl0Aj+zw#^lgiu) z<1S*##6y_EbQm+3)i9^Q&~T5TYgI_$t}z5+@hn4U%Gu)#y{3@-W%VG(%ez*tM4o=r zv8__pDhsu)J3HNis4y&>6>d9nuO!}bLvr_>Q!W}cVY|YS6{937E|0gMJ*TKN-7Z{m4VxRZ4!qv!WuX5J@Q=*YXa^Fxr~fQ~JW9+VC<- z2=6%6vduSyD(S%Q^_bhYYL<>3T+%SFV*&RyEb4fGB@GXCEMrB-Bdlmh=vc*L9cy@^ z;i--!o@q$wSVx*+>HnI+(5L8)k|p!TR&Jl$F2hhuGtPR)5Np}gUFw)1R(`MtUD)due6R$Y=~seFXd9ZTFGw@|+P|rn&9|(2py$qB>xJlBnSK z2+#*COrN6T8)nsznfZ(W!wEW%F?==;9;5FQx=x|ZoS^#@A;lDcVj4t{Y%erg>BKid tJoCh$n4^TzF-e$f#7I1K4Qh5BL!{*fc>`ecxJeTwdYDFrTVy*h@)LB0r9%J! literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener$1.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..8e05bc74e2851b3abf626ff81db4767aa46da653 GIT binary patch literal 673 zcmbVKU279T6g`uy*<`!5Yin&_3&A8Ujns!e$Ygd*rWt2sb~nLa z&ouB<*pT6A9Es8eqLN06kJS5VxE&aLol$V6LMcwq?JR>-%Hn3c_EE-4^H`% z)8VNR+UClPda@YX%*UpWTOqb^J46$$5O;7lM2ve38xDaG9h73cucXdW=d5FR zluKbvrqvsn7+K7$nrT(r6|<+`kd+S@xP-M>H{Gc2V2=jqYw!}QrvmtplEDBrqFnQDAAu1>T? zNpVErrD+4tZxYM-iA{{qiD_yF(4N7`=TD%Nm`po;`; m%n37GrnpA7MCPOR%0~o(T$z`bu|nP>B5;E&AX0-oqUJAElco9q literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/PlayerListener.class new file mode 100644 index 0000000000000000000000000000000000000000..363c188a256e10447c7b9193f01a4e856c16019a GIT binary patch literal 8795 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 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/PotionLimitListener$1.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/PotionLimitListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..5356ce9751cfb30ae0aea9994647540c9c61c370 GIT binary patch literal 3254 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 CE;2;` literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/listeners/SpawnTagListener.class b/Factions/out/production/Factions/secondlife/network/victions/listeners/SpawnTagListener.class new file mode 100644 index 0000000000000000000000000000000000000000..79742f6e7666c8338b0548f639599fe0dad7690d GIT binary patch literal 5445 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 QUO-n&4(LAetib;N0rJ`cH2?qr literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/EntityLimiterManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/EntityLimiterManager.class new file mode 100644 index 0000000000000000000000000000000000000000..2f85f58c200702c8cf3859efbb993cd74409d300 GIT binary patch literal 2826 zcmbVOZC4vr5PohF*b){9DYRBAFO}91po${r8a;XN-bLTCb>zLY^0lUC2T(7QgK7eVLhOW}cbZKmUID2Y>}UO(KnV6x>Q8hIjig zjD;jU-jiRqlXxF@F5qqwA0XF{MSPehp?p79u$sg@d@A?WlDLo0`tbk-1?vhn7*ZA8 z;Uz;T1!6?XX^*F0A@v~}LfG4vJnn#oB5zd)z)(Rq#fH}`342Q-XGj;UGB>ult;=<|nQ-emIg{(EzsXHr6SfmV zF6d3&74~|tD{;0Aucn&}H@d1hhRM)h=j4ni3fF5f#4{4OLM}>w7_?}#$nC0L^K359 zw0v|`3*N&$RhT|+8Q2cV7A?;%i+j4{!A<|0k&zXgbFgy(_Sr+$*o>_khC>O7Z30|vur z6xn8Jmr9r@FFSPe)M2C^dU?4lS}w!S-5X)o#OKcGf7F4hXZpQKrpxh~!lq;mw9AA1 zBk!x0y~@jVhKbNee>QZA%4T;p655WsC0%>m@Wf`7;Z`(WM4D6L|+gamz4)2HVZ+IfgL?E<6OnFFxw?}$AQgJ*#q?a>WjQi&oqgF zgnLL?iiAf<_zi!@7sge*Nh?w#=Y(&RhDK=ONoZm+`x|1xEL_kUhNZkacBBmxoQv(Fy8r~uk)U|P)e30H~{u<~ZQ;A<_BL<1Sm$pI3 zC1Tb8?g`ZdLAjBNNp{kSRPqxU@1ghj>K@d87KNX7A}jW!6* zI0;Q)kWh^gE@^5ZP;(rd@enbo#x$}7u7}{wV3rIHQoiPJlfoP)FC_4J*z`^ks1{uO SK+u+GE#ZGecRt1^SpEm4N+3r7 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/FactionsManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/FactionsManager.class new file mode 100644 index 0000000000000000000000000000000000000000..992dd512d33270aae30ee2d0d3968682c68cbbc0 GIT binary patch literal 3102 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 O9mhwU*2i!sKK_4YDoJ?& literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/MobStackManager$1.class b/Factions/out/production/Factions/secondlife/network/victions/managers/MobStackManager$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d84de3f4a045a3e33d6af816c5cd34f31c05750c GIT binary patch literal 2235 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 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/PlayerManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/PlayerManager.class new file mode 100644 index 0000000000000000000000000000000000000000..8c2f12e3cb057cfcdc0433595ee0323a4a424cd8 GIT binary patch literal 12253 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

Yw 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 GZ~YfH3Q|!3 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..62a2d28ade167b16e5d6dd1f9a6577d1dfe8e1e4 GIT binary patch literal 3010 zcma)8TUXRp6#fnjWEg_tctfo^pvB=b#tYuSS`|f56zYhrm)3?5hCn94B!gn_SKHe5 ztq<)(S6zLu4}H+~Xq;RYT$I&C-PROBGL0^K;lX09%pdY7eq2Np{1~6EI*KjtDYy#&nl)!nsE@$45 zpBEHdOkgE0Nx{o;yqUmTxFWZ{9fz)9I1VF@kvPmaM&rmS7*k*gR3Ee)D>x+3obLBc z!*xb%Yt+;nGq~n@6WW+DsvCjjI=I zc$Sk3eHPrly0~PyTHnC&>xMZgX`zBDOWG&Ucqs~RIaBn)^`48y_93gbSmphLk9ri?(1 zG-=4!b98az0)`f1$t<@b`sEwJkafsX3FS#nY!6(PB7DX|HZ=4F$5roaW-%cz~Qg2D~05Lk9#nZ7n? zdU?zDS@JBZfx#<-$IqVb%Vzrq⁡dBa8K;u2(F-A>SNu>}dhPGOJ&#mRVw6E$B9b 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 h0pe-i93c7#&Zb+JJ&4&7PUNnVigZ@BUo zxOU+PE*#hX3;%}Ws5far1{mt*HTUM;bIv>WHs61L`3m4Jo+Y7Uv;$+ENMSsQ8<^Pm7$&kMUzn~_wq->aj! z9p6|jt`w#=84^XeEEq17q$AdY`j+rs@-3S(-6hxL_9pja7&ns%Rh2%&QVVd?t=G9z z_6_b?L0veC_=LSvY@`dMbH@%W=`f77Kni6tXkt&8fg)A&*^=v7##T_PNo6#7j3)4g zaLU3fye@6?U2fRiv5XDnNymzA8n63Sc&$?}Nsb?NGK{uHC(GzoWJ1pwJPhd##m(9p z--#U4aEBqe;Rc>5R%B>v=9m%rP>PN;x(KvN2I(~UK@InG%;CO@H zosSvzDJguTLMG8Tor<&?ex)s;8bd5eUonhlPY-aak&4K}D%zN?e{vdq9r8$3fA)C8 zq1tfGs@z`}d&CmYPQ9X;I8o4hSRZZFi>+;8h7^-$TxnOT;H`0Vo1$xnHgqbFJHE}s z1*Sjd$pIFca*i)7!}V5s&X5Y%c1`#`w+OlKEaXj$&<8}PZwe3tttYzZyg<<^#WDKT zbJL%}a^0~{h<}W#GIVw!PG=fzRGUHu7b)s*)T0|c6j3L7(MM>E-dt*;zN4BpdYA8x z?IUr3Hiq??1GF=|#}GYe4BybPkeD7!?4$Dl$rwKT`4RHQi3Nn6ptBdlgq$PX84N_+ tIm!={k^u}x75O6-d0fU7Vkb@v;VSW8qvsT2zmU=}{F4kIGbt6r$X~BjZFK+u literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..6becd107eb37324cc5d0217dbf42840f1644d2ed GIT binary patch literal 2709 zcmbtW`%@D~9RDmtE(xb%6t&jcSTTmEImOyqqZC0Xv_UCBEVb4ymnAuKxl8Z%Kv$(JJ>&Gem~mqF~sXw;XXH zsLl#+iqF~vN#tFV+tb{$)VTqSC=(gJ9#wYea< zSsCZGhS+$)4LnnfSPjKme3iY<=Q-&=?3lLeTTW?Q$g*41VCpDB=s1M5j)O?)=tZB7 z1L)B(r=x_j2200vRCL&=GVD^E44XS8qaZ!vG#FTRQAPbgN~COxP>Fy^3R5Ij|DPsRkRsWElE`sk{7w;#)x%8 z6v>$IG|lZmXt<$c5jQowr{jHmpe*`O$4B^>;aJL?af4);&x_=&5KhwPbHZLs+N8B8 zDy5U|TvC=r(ih&m@b>HY1PdBI)$tiV*YJgoFY%RzuXTKbZyC0&IAhF_q9i;W-{E@= zKj`=oKk4{cVGV37&wGwDbgc-wID1`~k}_`vG#NNfJstZuCW=85H-s5T%Is6=){x~z1?72H3kynXr^vA7 z!o{iKYlG(sg=^<0FO7$_x6)=pBqEHdCe)xfvdV;q+*?J~$wo$$+8w-BBfA)mrq{7+ z4XBa$By(?itoJe3QR&v5!?1%4UgI)`L+gZX-jcyhBaoIYE#Z^nZI_BHCOz)>Hdhf! z{Vz31zfPab8W+CLOGMVa9vPXxe;p-S+VSYnNIiUGjxV`m5~qV?%@c`8eoL7Qx-K;Y z3Vmd1^3pKF_7-LA?~hlp_;mvkio~yT;3{QGeJznj~T8 z2pPpImRYF}D^k2A3kSn-MqQmUxL}q=F|bwFORr90zjb9EB^*CW5xnzZV(8I!wE9IxF1n%;7s=nIm`5mbr`eOxM0Ui2N3!AE9qNB+Ft8 z3>>BN&hXrgERNBM$kpH@mJG+y*I@ks9kc^}&HRqYE#zrwQ~zabVz`YCU0;T_2?}%{ z(V4r5CE`oyRM<<<6Pszjge~{5bs1f4$jlHtQdC+gio~}2NX*>B_S@KT7v0O)*&cFA z>}6$NJCuEW(8I5W6WB-Z#Irbw0a}Og z0=?~C!~{;Gj2sQrvow(Uaf@!1AN0C~4L_V9$R@A{gx*fX%GW1}0T3Y;r^t26k&I## G{{96pJplXw literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/LogoutCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6aebb6374762d03e3032682cb1ee63c5094c5b63 GIT binary patch literal 3091 zcmbtW`BM}}6#kmSVQ0rE2zZrdf{4o!81JZSjDjL4hq7L1Ow!CY%gF2unFC!DlW6Yy z{3U;esS+WnO6BMLO{r8~&kVR5(9JPh^e}yV?|rY|`?`Ps^XFdy9K;VQUciwi98E#T zG1=r498aSWFRM6#S7dXt38z%_V?cJFR&fS{vNSw z5fe?wtMqY6#bsPk3Hz#oYbv&4vXP9-r!|f1xS`@z+>|R`Q}DWiHyE^G#}VFu&3#|^ z4C{_tjuo6>=*o=v!gQU2ZA}Zq5y5TOn>A+4X>JCV>-fgdz+kTX3PZzyTM!HzMl45+ zg{3LsUE)(V^|Xw*CbzF}&ywFsXG1V!k(rYWUq><{u2(ds!r56XFcM2f0-P64L3p_vBe(cGH*D?{ zjeOu)PBG%T&X0x}I%-2uWXO5qx@irt$bDWG9>cauC}L^_W#fV^$H?pT`GA|VqkJw3 zALR>!ns-Cb6oXb0? z+|f|RT?KDxcw1uct;7y}5rZc?A&vNaTHJLVp_?|hN% z_)5Xo8ot4|8otB#3@82{IK%#b2++@ck)$i-b>g(Fw^cdIuyNY;;%vI?i*d&;GqCHl zswjdnUZQGf&2+D|F8gd>3OwLa0Z!AKAw_8YGwe{MIHn-{V-)ZI21Su+Cal3&fJeDQ{u1Y- zH33&7yLu_%r3p`}v{ZD4&4g4T5z7NK@6fY7eu{yZdt&qyZRgo4|!<;@vU2q~+HOLc1a%OgfSe`RKpQ_K0zu)Ah<#>ex`TGx$Q+MKIQ-PIgB zD>y#YdxovcWBIaUPKY@QBkkoS?$fDtpel^EVIP$`iJ9n;om`e7E z2n{=dh)PzO=XNN@ry1Ha!JlWvYJ(UQ_B)V$q^e3M>&=m=t z)b6IQi}YPb@8)dJW3X&X-6Paz8y=zIVKlXi+7>iWyNRxxZAhaX8?hOCsHZ(%hzz>v ziy)9i55Y3Lh~5~UsYpeuAN2f&#Ho&t@QRTqFs(GVsmx@TYkaT$!zaqY)iFb`x162 zWNzmIp1&&j)I;()jP=xRCq6sSik*0#emXkv5{0Fo0y9ADMv2um;x$QJZlVwOX+(0) z#%xwNKcF##xPq=Ad$Erq(ujN5j{{`uAoZ%K{{y;$Lmh22c9?qV$WBKzLfJ)cdj0|> C1(kgO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/MapKitCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/MapKitCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b66f60e847269be47eaf21c649b6c06c05b9116e GIT binary patch literal 1717 zcma)6T~`}b6x}xo3`vF((hsm&TZ_dc1V$0Hnu4`yk+k`0(*Wv&Ye+8PmSl#`OsM!z z?2~Ukw`)~bd|>(PFX)fya=9l-F;Q0I%bk19J!hYNzUI%rem@4Vf^Q;-BQb$w7}H4k z$AX4*7>ihnVhqLvK8)ZaEQj$iR(#DTVSI|u{M&Wk>U010MHCs_(6FjuOy3mjY9HWyxZ@wIiK}=1!BE zc;2p=%}vu$zT8)ayglU#+#CU3vs*3Gs=J2iG}1+k426=|QvIP?o^l z2rQqdfF^&CwYEoI*Asc$X&5{0{e9&b{YXY1xFW5(bTZ%NADM@y(KM}wQSlsQHM+Tu zyWMAjtD_-U8IotNXHNm^(l?K!BXDsLikT|!$S61cH?p3rcxG*%sdvlA<_bhAcH61R zb=9r$P*s+E(mKxK9PwM`0rS)GC2s2Y3bzDi2htu2q#>*0Hty(H$JgX7>&nxxp(BU8 z8t&=H`xpfjHI#Ieec?VH=&0bKjw&`aZ0Xp>U4gYX&&;T{3M~ImfLo?3`z>Q{`?&th z{ikmNv0dBgRkZ5LlGQvC5Z?-{ygAe!=dUT9*Mqmw69vL7EC(@X9SU3-?47a>SykIP zGWgcJ`5m+mq;;YYSRb0c(|nR6KsS|qLg3iHGiA@^HD?H`S{r<$IUu2GgwOSvvroZL(0@5^@{6mpeHu2iJFXS##$Lt$R83Bz0)9j4$m zh*vBP;Ya=TDoEEg8{E@V(fPxf^v9DM*&BTpqL-_mfst3P$J#_2(yLnPaa-o<9EwD8 zz@%Eu-KNQzZuw4}1cGM0j`#Qvjq~3M1i;P3IiBY!-KQMjcRIE38$>D|c!6Ll^a7!0 zUDFFZ;|TGb;vaPyQA#no&roxr=ZIOnMTro&h_?wV@D48Z;a}3m_ugLk17pSX@l(VW zpJTiOEr6|GkWC+le#UA#xE!DO72%(-%-2W<(Ey%el6Sp>$pD@`$CS5kC44pyRo_p-E|MnateHJs-bw&i$QxcK`VI=SKiu z#CK7&VnoL17VO0dvAiPTq>NKhoW@uU!Z;Jfs~DFt5yd2?gk(C3vp5&U49?4#jbaY3 z$#`7|FG#o;MFTF$ctbqj6w6yOE{o?CVZmk0*FeLxjFb@SGSV_KGO{uZ2@4Vy86ty* zWw=8OiMDY^*K8|g8fiUg>F!lKznIKwX|B13Z8^!)qbCR2=NLkxc1mZc9XBj}(#y^3 z`SX0{5p0hoR+#Aa38M9nH*j`@KPa1;E z+S2j&h|^K94+)0qC0?}xV7I^1p{i%w)BGP+G>IFBaxZzk#JqXJ9t;Yd$>XQ zD|jCtNVuusL)>DhPiSM-GB=Hs8gwW*

~_j~VJpIv==4!6!oA^mGr5c!o*cAqxML znmb6#w#<;%L7prD`ObFqBE(AcUb=<)<9a!nIN5b~F}q2Mcg%}|v{N%)3v)P$bp zj;PEP)@mXpAigEiTN8Q@1L;NmehkOcG)H%wv}aOS-zAYEOLA%@E`0lejc@IS7mK0y z8NEliqZcm?L&wHWJ$uKBdR@WA%(rJ_CF2m7hm}~2+Y^P(CDBDS%BaFtj ziU%Re87TxN!xhV^kaF3JqMUykO9wW#Ugho#O_^CDl7?uFn=efByrWac5bqUpD3Mwk zak62#bKLZ(w(7R_F&b&26i$O(3q(XIu5a2#YYZV;>*)I;h8p@Zs6!*#NwPg~LjH^EX{BN@O~ zb)XtDz>akOituFDqwsCicE=(QAU%X!g}YtVy$`UZKNJsj-w~SVs;1jl)qGExbU%c` z@Bmx;!(Ab=f380gkNhsoYgf(VkrmYaAY}C=S$G98UvV4l-M^sW!hJNxwyj`$TxeF% z6x%_Y6~s#}q19MYJnWnK0I3x;$ECRR1n`R3hn_(0B$UpF*u_A9V$X{Jl+FvWmbK`s zDX79Ch$I|#uR82m>mWF&hTvcU&9v?y4w{LBopkoQ(1aHH?Itq!-~iEkkVqXQ>r=$Y z6mfB$*tkqwTp>*sz4Z1x1Q$ne6Gw3eefSXr_zB1G8;0;FhFJ*5*>z!m9;W!zX`jKvYf(ScnST8P=s3)rw_z@GCnQiSs9;^@mU$q$#`CHdqMd9TqW7QDC6@1yo4_ZpfAe! zl8i6Q_==3L%J`a$mxcD%Wqd=%H)Wiaan6rd{CJh2V!LkWb{j*ezT4t4(}*Ya5gs+T z{gjy=i;l)dw3w}%h85l0xu>;Zh{4-w#yP{>Zr$L$nekzs-meWONfPWfV_I@ZOY7o0 zC-mB*y2a2w19;3FAJ>ey71h#-%s4k}D>}eqNlhQ`bXQu5YATsY=mx{e8NdWn20uT= zV;P%>ZK>}z(~0PCW^7Eiqd8a69Pl7F;ym4Yr2B+6p+%FLk%$i3Y28RTo2{^k5VskY z6haU`-Ofh)lUkNc8GLqJvo(hB48(+%h~qB$6&tb~-wZ1X!AtX_xDykKWOWIqPHY4h z(sG$p4cc04tVc^Z$3The$F~>)gJvcj<9l>*T-C(^UMu#mUtc8V-(^@_5YM7uDEJ=UBwq?H;QI=GfQt-`q1YiaqsBC2jjhH_Rb+&!8)}xw zsIg2sO$e%GYc^l&#}5_!2yZEP8$VWX2^amitl$dXVvzS{<7qR&4L^RO;2m65Fo|ml zuHy#7gCQ<_jA|2H9p>Cn6Z!;=&Fj{!TczM#++rYCH9g&Bh2KKobA_b&CoOBWu0xF$ypv@W@r9=>1@h2>4KIy zjV-RPon@n$1DM&B?{RJjM@vf|`+9ODLfBT;lVd-#pBfjxD0S-?8r+O_vQ0~-xfai= z8H*Alci?V{k83H?^;q0i@C$KuekpSHS2)km6p9_Nv;^O#=5s_PHFbN+sVHsgb~~Nn zr$@A;#oPS&wSwQ^eFeY8@92VyB`Uump379#9HDJeEYuJeN$RA(K(kFXqzP@xKdMm< z8pE={$_FCE%Y~wj;Np5*lmSPnRJeBB z{}IX+$MWw4L-Q;VIy8&t-Ty}yerC@KS*G3Lf)-rZ#A zIQYp7U52iNVWxQ}~F0(yrZnWLR60b%9Y)b3n8er+oB{j3lXhWN4X1XLe5zT1EQJ8{FT%XHNlH z)KQDxMol~*fr&nb#&-HTO5YOwE^chP2G$squENuJ1>URhHPTRV*|F%LaUpy(&Zn^& zb5MgI7GM!cJDoKL1G})Bz6cF_@CbQe*o!XLlP?G__2cjyYl}N();oy@&aq2*`P|^VNz6Zs-L+n^6rAt>|cL)Wkmf=PJfMrJT*F_dY^G27$-sbCAx6K!EChO0_ zd%4z^PnvBNVPA8w*+GofR*2J%pLc*>Y4gJ&IfKfE!MOu9oVO&H6R}sZc()>Ht<6mgT zf3bnd*u);dX0{$JtOHwEKenlnDhaX(m!BI|HMh@Ls%XkGM*|-csAgaX9%aAqI49MgntH) zVjq0uVGP~qK?T{2x-znQ%$13qQ?GEg|bC4GBKa00s!fgC$ALRI;m6Q_FfjF3Ri)0qgP^n4L2DmkgETGK>PS|QlY;~!;qm_g(q6Y2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..9e89068fe3f0354013e7830a1c721ec076915351 GIT binary patch literal 970 zcmb_bTTc^F5dKatyKP;hAZo=6C@XE%xY1~Q@D?mf)7Tc%0zU9`x_f93Y|om#z(4S> z_^c+z7{d?nM;T`qXnpbplby>qJGact`Stt9F@Ps{P{LJIiYVY(k+j7GUe|FW0XGwN zOUIIq+YBAEeYr_{D`JU^6b*b&jlcXiy+v0}i) zT>~XtFtCcMfg0)zi%E#(aW%BMem{0b8&Y_#9Rz-0;9lZ(A616e(|K5@^RTA#u$+_n zp~Zt?JQgYnt-t#+A2Ap$r9{y1co+(rO?g^(bFeR*h~eeAYB0R{cl_DTtaNAAWM?Ox zp6yIK|wxpQW$Jd`Z6SH{^1gpOAZ-LXBX4 z3Uz{73O`eL5exKs@~B{i4l0i-9^)y=EM_UOmZo1tne+_NTuRz|9rNf+7&%``9Tsqz RWDZw|FB6q0yg(A=!XH+d1x5e> literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/RegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..de92e3f659c6fd89eb930939932b59d80b95aa93 GIT binary patch literal 3930 zcma)9`F9&v75>JNJ+eGW9652~EM%MrRkDfI7FwFPO|j*eIM`0&C210%j7QJX)T0@7 zW|Tx>Zy_yZDf?FTvXnxB7^0?d4u``poWozhPw*Q*kUxRt@Vyzudt@J-d7634_wN1f zefQq?*Z=+gj{x3T<*XXygz{t;Dhbx z$I}UX2u2)p379CT5D9c*K8~XNFUe_E0?%L}4qNt=<8b5(SAJCF@U!yGi^Fe6fNC69 z<^Q!ft|ur%Esh%6nmCSj=3@q32bEos8gV_rTVtKb96zm+g95Gof&k1kF zn6ufF9CuB_zF>Hk{BCr{f|A8;p4d(5Y^7jG zQ!AX?Q3$*#@od%dM1egc3KG+9)icGYC7pEFO1B!2R@ZP00}5J0vNU`eH#NL~7ZvPV z;Wn!brQ$OhUczTJd=8&i@dXVpP9};(MfZt!EBbEt@_o#r{6MdkvoD zuYhzN38v3`LfjDgyzA+P;|3++>1kWT5AZ_`Kf34Q}$hrOg37{^NT)yp(9F^V#9AKw&kiPF_eiT6lzrS7wk98r#lqXwjci>uPvs<76LQpM zR4U|B!Lco^Yvc@4a4;lyWtI-(v+K-QW!i))FycKZO=(mNM$@ohlI34m8wH${8>z~O z?mDBcS2lu%D|GQR^XuN&MUp}X*_%0Y`SONp!~-`fv=r>7dDrPqb|~p|tvu(F*@Kz< z`Z>!=b#v;7FoKdl%Yw?DGOR*Wl2RQO00%Q8%~lU=V6bIZkacg~b>^*NLu~~;EHTC$ z(-X2#9cHC0gmbS1*~76=`8EBWD>SSzZj~8i8aY)mf3H;Pp(e7T840`yQ4TVul`9Gk zacm+=gBvQ_&aI_G>*dE?lNhuG5{EyTlkC%*{6o6sYKWyHq2BY5Q%wDAYr?f(;6C-0!G z4)xeuh_~QGtS9ytZ0}!0`&&q~;8stpj*b(pi_m&n>)1Z`Er<=#mh-W3fBf!;fS)n>zNcpSn*@7PCNAC2vW30 z8so_DVwlBKyb3;tci?$ij)#=o#R&}31g-cd9>)`; zs0)AN{3mIyEdGr5V2ESG#OOxre{n=bUd70NkX3Q2qwn9mh$^yRiVOvxtE8c*#@qYr zNQ)u15AZoqJRVy_<|WeN?u#wFtP5$A$TN0?c6k)-wD)d`B?ayaz2)eVz(;YKBJuFj feq%VpmAgsH`>1@3?-L=`B$WpeoYl{NbjJS=;Z}^d=n;}fI+2!nRQ2SH- z7kW-9)pPm-JjY+;IUb)0iKY;UUuO2+nfu)5zRcY}{{HP1fR7QRa2m4-I7v+4gCsu0 zW%Kn>if30WTus5kwFIu4{YDBmF=v)rgZKou2XO~?&B3P$u?gjHwD-IQ*u13z*W=NIO(4+Q$= zgR&ABDrjFV*J~RpT$dXjHR(d&O7DRTwUL|3zIaPV0=X{WZcwX9zZ^L-tki4Dk0Ylf zcho%@%lZAIIda|h>J{w^yxRrMP!+J$kIJpbWOhAM2*Qf9QLk2Y>@37qQ=#T+pVMm^dARNzD@mTt8ux0@+Sm4bTc zss(M5ICdcHS;NZ48N4Zwh?tTxQ(|KoD;8F5e1R1kYep#9SjU$F;|IgY)wRa}4F;<> zI4!3=`e1yMHXh$yzieaQFBQ>)r$cm;Wb3PDZL(V0Jt$30%q?W|uvrYSxpyuXfpa;UtBCcmCl_>XcADy}I0%9iJ^Blc1zoPFs z`hRI$ev4}weO!moj}Z(~N@EmnQ*&zH6z^b?5<%$Z9DzCB@m|xxpS0@d+2+MpKf~R_ zK<;-~k6s{=PVOSLhrwOgFL6TPCEgI&#ZY>f`dy6dA-#vuhpii90xiRn4a0#cwTn~f z@z-t}&b=_4&tQP-IDJnbN$DEH&5^YtSHpdVF(o-L-^Vm9$nW1MHgO&qvNyUc@AcpU QzxyHnqA^Deg&th`2ZVYu1ONa4 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SetCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SetCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..eb2317dbe18c9f71f0b207e1aa50fd5d394c2ac2 GIT binary patch literal 2963 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c9e3de52d19e5880fd8d52e19b1b684e9214680d GIT binary patch literal 4483 zcmbtY>wgqi8Ga_W*=&Z}at#!n6bPGyWVzWELMbGGgoY$#2{8p~C%b1iLuO~=%xu!F zmukJ%yH-?cz0|6xtrw_-q$pOcR_p!prJw!mKj07j`J9>EWR@<3-_LwFGkf;D?|I(a z^S+zc|NHWF0K4&zD3{>~`Wvwer{prC;vG$>$7mD}0cCZPVMYpf%p_3PMU-W=14z;Z5hAiNts+W28JYZ@Y=3y+^v+ zPARDC&8G=zS-)wEfkJLfI46xUi#xIYe9Ev+8ICDGmp1FXag$znU=ii1d@g6$X*Xdw z*+P!U-9&QIn6`U^eF=2ZDr8Mt!KOu2Nt_B)@t8;zJi@v!9(GFUB6{4vFe&UbJ#jkZ zouub5RKBSV9^nX2!TPX@O1~1B>nl-kclcEGi|9V8q(fF#xzaaM21`M`E3H?sI;>Lq zSH^+_Gp*PLk)Y;t>Fte zui=aMl7e-&N*@hh#swA6X!r`A)$mn(O+kBWYBXQaQ-;0O)6;ofMp`#*y~sQDQfBL} zXLzDZ#n&}_1J7yrCZ1REEe+qscNDB0$valM)5q1teB--sw~C7zzKiEnd{4vo@q&sM zHT*yVT)vQ_T~wXPX!s$1q~XW7q~fxMm+%t>UGu=~yr=sb_33f?Ktj_EN9g{I`bi_3 z73mfgS2Wy%do|49s)7xHv^-{5jxf^2Kn0V6cFby+!^8F#RIO-AS#Ybo z-n>JG;JS*RYj_2}Q1MF*zrw2;evRL#cum7^@jC@elS2nb2K2t9J}}(hPrR>d_&uIi zu&XuIY6Z5?^}eyf(rThru8z11kI=u&XDHI?-Fr=R?zvxu2eA~4Fo-6&mF@@R`LapelGr%xN! z1d~rVqNNmAI>VB+LXd{1Z{N0^`djaecop3Le??Tm&O4OvVUS8JL^=o+Ub)OkVkKiG zx858llECsz-U--!*cF4eRaBrnOes>l7J;gxZ zfl~VlrAv3)B6J+qCVAO(4^NRn6_B9_c54+ZQ>IsV-0zW|DO^&ul_w=OdX8bc7NhDn zt2g^w`x@sFHY@h6al;)FPR?{)HnLkpglQ2e^9*}ZMgN{hA(LnK z?QwW!PB^7Of?R);1BNA=Ys7R9a;TYNMr^E5UfJ2@4SGdn{E?w@bl`x;hO*tATDa} zv)Lr=6b;=%<%f3HHj0NC(3tXJa{2hG*jw1>2V6Yxl8ZZG8;e0?m}BW>VOcVHLz+M!}kR zUzl~ub2YhbvOtF8d^m%0mHN1f7D#8%7ln14%sO;L4~mb*kjeP5g4)8}37eW2%w#x&GUM*8 zaCr6DhP+Wm!dhuCCMQYTWVWhML$2{@tTeIE2@x+Js6h*V1McRJJen>?J3jB@ryA@* zE#Eoya^1(Bhqzb6=Zf}@t5DiwHCIsEUUvm`m;B@RbB&>n>stQIY(^8-V>vcpKX=vy zf_MN2_=zfT5It0@pcjV%^)&|&MFUYB?sx_D1D$hdP%sO129XO`)){M@MRX2LHMn#c zT5QP-md;|?-nz?JegRfzY{eX6HIOHp>*lbs1|t{opUzpV;#Nm&wJ*HJ7hc;rgLVFH zbH(l~*3V+YHQY7YP8~FHW8*5kWez$AS+vaHZfbmC;iB`~u0Ml#bKPrLdl{Qzn`f}4 zGuAo}G6Z94TkXzSY~5Sm>A%D;ptiZbjIz1@8rnv$qCM6zgKdG;e3=2U2ljT94|H+A zx!(5+-(rc-FYav7OBy_GV49O;}!e+b`TeuTPC)yeJ4u)qNj-iXu zP2dc+<1BZx%m)W=gUd{qW*(g9^I06{9Rqj~gSdntPWBJsRh;1TJrv9^|=N zbSmr6&ztLbGq4fS8!{e)H_)bHD7HEtZ@PgM-1s+!qlggFi6EP3tV~s)=^A#>y*ppR fTA8LCS-CdI+o-JuNj__ElD2~Br|^Fs{@?!q`T#Wi literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/StatsCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/StatsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..078437f1431e0957f18d8445350215f6b365fd59 GIT binary patch literal 3466 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 MrKai7$eY5sk1GkuaR2}S literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/EventManagerCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/EventManagerCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..55922592279f65f9ffd37e815bf85bc2ebe58db3 GIT binary patch literal 4064 zcmb7HS#%p$8UC)e8Oh@%%F?JwS~+frm)MgyiIZ9;Z6Z6h5_!RrBb>H`u{@S1mS$Yd zC>u+m6lmEAYXX!KAchbqHHlKUG_-7ivX+*mJaBl07oIs3%715MN3z{GIrf?R-~aym zcCTLg-?LW%?7&||yd!`Jjs);dD1LNeR75&J>zDvF00HBEWH7-YO~g^YPV!Hd)8qu` zei)dlLM{()rC3~EA%J5zF5*N0n{ZOZDZaidfOq3Pe!LeCbLf2mydRH<_<)E< zIr4)X`5_S>7V(&X$GP&4i1;X9KgN$fF5(k>{iKLbac#8!G~b`D!e{VVZrSHVe4b;z zAmWPwl6Z!bofYvVZq1iPd_}+$0=~-No5~h4n$FM=H`TPEk7c!SRn}GOxRIZfC(`3e z+R_Z&lzXH5BShY%>6*2N!QI$&h`|#z##DydxTdT9h1{r`Pb#BX!UW?+TFD+#@*3Zl zkREG7Ga2H`Xi6KooT87JvXajfa;k2bvU-dbxrcxI6kW-v`KUugCJE{ZHC?bs>4C<$ zk_Hl1pOb5@kZw$JBfzepET8$XP|t$O$X2>6ys=i&0I7No-CvP13}$atR8G zglP+8*ton>2CtIU6!JZ|SQ$l;9Hlc#g>q8OGu&P-kzCfSlk%W_#xvj~gu!nIrC-UB ziC!CKXkR9@Hkm0O)F_Nob~s65b;458lZ3F-MAb|sC*VoDLcS)TmwJF9kT44Qw7Os8 z*f1} z*B;LQT?yaAQxd+*?>7@C(lJOWeb-%Fc&PnpX6*n$6l| zKGKyOPEgDj##X{hxIi^-^L2(L{EEl+*W5r~uVGpo^&9+_p~|Vda9ka?sN|fT$&Y`B z-wSwI!XNMokLs%oOqTFRyh38Bpe#y{gg@~>U&fyq#OT04yn7(kFX1nEjbVdh@?3@% z*?!>0)96-a1T|DymKTf#hOIZ&WEW0F%P@rBT%I##7*;nf?sPse>u;=$rYr?LqgpYY z(oLyk*womxOjkRjxyDqjZq-cZwJAQa$+4wOC?72gLP4WoRheT^s^qAVHE1BYhkCjh z)|B(kpV}j7YKpp!p|xD&!01smZAF?E#i7*L#8^RJ8pk)H7cIk~B10mN87}&PNrKinC6AsGwxcSVlMUs)G_qt33c1w%?MoHWRrj-;`B$d`fzR)ZSP! z)_)&`X_;0jkJFsKIx;wF6m*MU6-mXMWQg37;T6o}z^1WBl zJPln>V~h_D!M-?nAG+;c^NsYx;{z$WQBu9JWDgOL8&0k{#HTpJdh(;Jr7LbYGBiMh zrIAj$iPr8Y-X1bN2Z*4$0ztNz+9}F9J^o@`cx-VGUTR;R8*FP)`r&2tCi~&BPxL1i1*Nw*YOIGZ425<-!<^kcLjW?K{Zxl75%kgHTDr!azrDF zZrU;QV85f*{UmYu$(F4xFQWD=yq=3KFQB&56Y|WUZWb$CIE(s_r&52=(LaloE_g1s zUiF?sUC7gX39IH%?)FY^tEauwM@UZ*t3$pb)?8aG>9z_<<;0yrh+JPA3>9(v8FYk% zBG%1d{du%-aD!OH9ShC6vrO1DJL2$%ZT|KWfBkuE=HSMKybTq+4G!;JHt(y#^Vl@v zo)5uWcnUTX{R|ojqf?!?ITK-pBy6;v(PAO^Qgqnfj{%%YXii;E{RG2*S1-d4dU z&tfYl-4<*oJZIic8=KEp$+x3|Z(R{POA0#0kS8S0qQix0^f=z_vb}391)U0O_rjpu z?Qq*kokmSXim8s=;C1&1!t@PM6|JM+WE-#^cVIW}q;lU#h24OIxC?#Qj3G24g=UPS zg?P5$QOG!rZMcATdXsLahu04L6Fc!Qbg&xiV(YM*MQ}G$(8ZlLDbcN9#LWTgYF+i{#{fJS zVt>ORoqCaCui0f*@Sb@T~HMc%-J5Cyzl sz=(}MOhgU=ox&r45Qmw7``;i7-<;5UoshWygF;7u?0$fByYS%u0WZ31KmY&$ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/HostCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/HostCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..af8a1b75b7f90b9c1e069256200363976c204100 GIT binary patch literal 4501 zcmbVQ`*##q9sk^9v$NR@B!ocO($WnNNdn10T2K=nO%^DDJRlEfsjtcIkPMlf+0M)c zqP4A7Tc1^FwNk6nYON1!EiKEVir@=Hto8jm{uTb@DaYgI&ThzV5)RH-+DH_mFe5k;!B`X)(h=D5?L?4?;sLnw+>5}EB8%}# z9L2E+CgkP^tMDN_ScMPcp;}t`u_}BVk4dV>BltuVpTwsk_;eJX!Dl7)6AC`3;PV3E zjFlZRZGlzYo{@Cylw}?^G~4ixI_{V@nmnv0ebcc$ZFgc>o`!D69nprfV`HYT71*@`<$z(Q47a`eh(4}smTr$| z1HNn8BklLk+-f{T550gvVCDQm1uAsQ)ag_0Oks=;9pKsGSu_QK*Cz~D;MQV2bkp=F zw0)L5qmz|^=e>HGZdL?qf!2BA7m#_{UeoWFME=zPb?P)f)shHN1VrGNOXEM+cm&n>2Qr5*#%}iENR1VW>uF zl!{h7so*IUU&NPGY`{i=g_1U|+ws8u78Ot9%L2Dd&t_-Vw3uco;Z6l7R6K*PsCX7% z6{s8X^bw;iu1OW~ErFbE^6YCWzK)YBo|6)n6(Oi32}Ji)VYKAUd>-GRWxY;3W4LM4 z^H?CX?3;K}#S5V9Z{bA+-&XM*d{-bgII8=3^W!PU@a(nxI%ax)i@=(Waox0JiR1~q zw)j9c?W~XYbqyxg$M@;(7~{sAsQ4aE3Pk#M?&$A3u(MyqDQQFfAS38;bj#+z{>)g2S*Lph?7>2CmqL1IY;f5cmR@kQkSNAzV0&Meq0u7 zJnhH=q?F?-UcqSvuc~+rXV@-o2%1vLEXi&$UT}sX$>FSmb1Kf`f`Zpo{1884`a2!R z_k35+^ceoAlk%#=xLAW9^L42PJt{8aCklS5;%E4|ieKOgVOo>|C!^q(Dt;yXzfHz= ztrxc)noNi2ev+%SlMRf%s^ZtUrs6kvL!fg?#%%rVX1WfGwFoBD8Vwzrj!JD2OB!bO64`6(=N85OEKoIK_+2(rXeU``YZ@Bosn~o|U+5YB4#P{jW=8gUT0NTy z#cgVu>+COeMS)2$DGA4N*xbqqSb?R*yf;qC71lEuwp)SbVvT*nN0`R;#u;%aR5=+- z=nD;fF8YY?jW>Ew7{Z5dl)p+MvrM(asc4$uqThzM4<&S{4|(%k-X0D zd|Pn}m>4DPrW^`FThLQA)Z5Y9+c(skkQm)KPpK4#c~Ym0av+gTEt-T?);BGUH!5vf z5X570gK!_$t*k-fWhKO{6^npp>5->yif3wHjwQZp=nUxc64v~#9BFvi9>s6*<}|!c z7Ska)d;X3$t#5d~K)giE;jA6#*Y>$a%1km1v?PDY2G*CTVX}04qDS|WqwGora0O(u zh>-(;EUj)cZBlKhp-c9%2H7q2jGi1df_Y62n89q8*8Nc}KS>TTjto`A^zz>f@f5te zY~KiqDw5G%&*0}Yw;2&R_EWl#a@vj9-u$j9ml~6R^iFffW@NTr_ z)t3DWAw;HwGa;flbY!)^li@CHCt|Oo)X8!u6Cf=|nija5sle zG0)`zE{7V5MH!<`U+C?R{h&pT)8?a5ZqC@nfQyfG>c-SGbxJNvQF7X8Rh^Mhv zyozpd27TfZ`o$akpMk_=e;#)QOcH@;#}7aX0;_7MIb1PGWVxco+$u zR#5*H?7&Whsre!7!ae+N#cs;2M^)u@XbQS&ucJ!Ap0}{OspUEog1y&i4hREnCW$+Rn>7ZEC-3Sc-m?+A>}7g7y+$%jB)1e;@+$h67{F(14S^kK> U;!lkG!~B+PkC5gg_$VIzFA%;B7XSbN literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/JoinEventCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/JoinEventCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d4cbcd0ab4d40eb8a66210e19bcd8cd6dbeed200 GIT binary patch literal 4081 zcmbVP`FGUT75<(rTjQ}D;|bfOKx9(DHo*cCXt629D;O`K*oKgFlgH0v;jv^Sjlp!K zOSGT2E=lP;u9PJiit(0`*RP5V8~*v#0*COvbGq$l0wd-uEdzB{kI z`Ql9g599S19*JW=PRH>coT-9^!5D_(ybtR*8;6c_Rd^KV)zf1!Jg)BVRhRcEnfL4X zfYSM3HELnUF@lu3jH;!q#u(CZjKhiHLL3vw#4s6$3s3o)isK@D^*V?nL{=@QW4IK@ zWz1CJ3O*FWht=XE%GgJ%@iBZnhO6rS3HADuF?>pW`E(3VsP$)J_^gi4>G-@ri?kewWn{*XPA;hRLCm$EZwZQoJr!b>e2cLIT)bv&iK$w}KC4J_MFXD6i_29})W z%{t{dZkKxM$V(89E-%YeHl)W>4Sk-UwnnlO6HaIqY*+=!LFtZ4zqRjzJ#AYV+f7@8 zq3^iq*2h=AYJ5zfB628ja2=?TSYY)!VZS{UK~pgbB5wja*GEKGcE+(8mBdOUj4wmL zZ}+YOGosF(k-orv#eNtbC!DcPXVfCa%}B!Zd^4m? z*H&aU8~7T&F0f@e7wuUmLz0xehjo0zz&G(N1K-AX1U3%`c3QTW){xCxCa5AdI7}h`HWdpC^Pdff=;4cdJ4h7rxrDWk*avY8C6{2i~cR61-|Au1GP z-cO+nmERd=z#@1v2<=cd3!J#^b+w*TP+z|jum*~#Usn9w-11x#*uS>tC~->)o3+re zvP4xAtY6y{8>c{ZT82F?x9z4_Rl6D**J&*IZhKE4!%i8bd}m5EVWM6QLUHvk+dAui zV^Lr_m~|aq#$(SYKhxF8!YbBX`l@=EJvGHHCa|yA<0B&%WGZZJToH#t?NYHszR+aX zl8=R6UW!N=mE}ayVvIqE>R-Ufsy@&!19f9iRij;69bTJ;aULld=?B&snP#C$|789J ztrl@Zt1au2b0<>-TSr^n`6IL6c8QXqKC-UCr9-w*q&8v zPdj1uij@tWOz6mf=YEvsRiSUYL59tSeY7}}@0gi{UP~lhYRp(-@X)#p7Wzf88Z8}I z1!&PowTe=acXfhuL=hM$A*JM8V=3O1i_!t5I`sOyOVaPK1IDF6Wt2T-r^aP8HmPAR z8j&XLaNNpIb;FD+35hvDe!YyF#b}b7Dh988CQoGdsuBM`0LN&Q688|@_?=Hl*mFX`|!1)P`QL7{5sIRH)v^a55K-KlI>s-uAHH#%m zB!-83Iw?|9qC*u<=b`PmL9d+QWEePC7!Ho%J>-Sf`kYCJ6$P^VrXhS z5!k*~4xL3k|CsFOpBzF_6C9t)_{>3!*F#)6DCZMkH6_Filr_zx`~_%DiHaO5&o#XS z{rnBYuA?f4c%nK7BZrzC?m72dWau!jn^D2*MpU8>HC%1P7Bpik-odv<-Zb8cBV4fo zqc!igY=UlMe3jn&3TkIjq0Q}m8MQ6izMI-LY)EQN&tt;^>dK(a%_EV+y-95W8wD1y zsf^Rs=ERm9w$7q1sU?#0xGxedpQDzR!`qU)Y`X6L;HtPp&=Lb^*K-Cf23c7^FZD>W9- zz`>DD8lS{o?x<-2d&@A3`_1ID$@b99^OvJ>mpTi4=N;#6Xk|XGr-~&ap=+uPgEkiJ_j3(L3{y zPsh>5992*4=pgD^@hCdc1q~^op&KWda1(d~Cn;Bn9`0rbs;l0>Rvo9B634}xXcszq Ub@VkHIP!1AcG7M?rOGhyKXIL|3jhEB literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/LeaveEventCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/event/LeaveEventCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f8efa9be1e64c409600a7665246b308aa1afbcfc GIT binary patch literal 2476 zcmb7GZBr9h6n-vA*brBvAOcz?YEcN0^`+WsEVZIkF@Ok)ptQY&OIQiJ%GZjqEt3!?v|sLS?mg!`&vVYXC;RU2pMM4L5!@uMrf?M3 zQpn?a2m0`75~C?TKQnM61p}XV;3mfO+pQ#S>*u&$zR)&z4BXX@6Diz7LGMf^F|`kA zOeb+)Z_Xs~Aca}X8F*;mkwE)qxl*znfzt(F6tY$(&hI+1wm4J{Fg9XWBm z+65_0zkH!Qfur>}RA>h;tovnsrbXILC|f{~+y2==7S|``W|&r%Tp(56PL06vhD0>R z(nU*z*%Y|AM;$^l-@0c9#0v5A2IdJi>sGv?8n<n1MZl0e_wn(|b}_MNlrR;NU2nJ_Gg zmGL+a^`> zd4cn-ahmHZ&^_4P!n$WpwhqPNAh55bg1e3%NT* zWW5`O`rENXC-2AMx-5*XNsfoI%R3c&aQl|-(A`e;ER&m?yyXJt>Jg`xpQ&PyA8N`& z)PQtsu#e_QEBj>N)~v{sS=rgyjF@B+!Y1Y{WfsHBHYpu;HDz4hGm}vz>)jaiLhG9C z;#7yOXAj$7V5-$L*`vY{MEwL|o9NLxseFBB1v+eh8)~`*)c;2sTEt2I10Lo7DkrlZ zJ$#GtodbkxKY!WbZ@|iSinnOX{)pHQh-W(!RkY7%e}S>^7Rm3>QAMhAUlnE*`>QxG z|Aww@$Z$P^1lKg$VPZcH;V^+l&_!TyM{u=p3a9xL_z(jT>|ca!=ibcl??}HyBK~^# zH>9t{v)?0L#lb!n9v;L;N*^#zJBz z_(=ftKz~7`seOQ|v($Zwr_&^)369oCL{O1bt^{ YahWo-ybiRzN6x^NEERpsjW&Gp4|9b!C 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/data/HCFData.class b/HCF/out/production/HCF/secondlife/network/hcfactions/data/HCFData.class new file mode 100644 index 0000000000000000000000000000000000000000..e87056f22a9dd9108d40be787649732f227323a7 GIT binary patch literal 8063 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySign.class b/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySign.class new file mode 100644 index 0000000000000000000000000000000000000000..40abb190010321d6a52b2176a5e340695a125cd3 GIT binary patch literal 3968 zcmbVP>r-538UMX|dk@P=LLelNlt9zga?Lj64rvw0l57JkWw)tG+R(#t0w*kcwr9_h zP_^|^wce`MdWlx6)f%f+X)TwSnNIbKGk$Q!nSS$=pPcDm;D?U!_nuwIfo^ol2j0tb zf1l^~JbU=-fByImfJ3+uMJL9q(2gh7VyI<8Eg7{;R>Q<4iK%L6n2y52Wwp#yBa2yy zTohYiYsjnpDG8?v1-MacM^VF^#1(bF8bv*dYMEEd(;7ad$e-5m8MQy7;aRnRR>S8s zd|p}lf?A%7lK4f5FKPI)hUXROD^YwEUz7NHl%ah?;st?F!J5hm>>9G2sn|quX2x=3 z6InYm6HAfNO96L2Zwee8Dwr8NH<`6AnX#PdUa_5-*mUNSk#Q|MSBNR5Jv$$Zmv*I` zrXmegS*|&oa*fQ4K#Sjvm76njuI9V7S6-Jyvhqri|-(yHK!Hq+U$}=2e0Eq07dc5z896saX7K z#>}gFGLUeVkL5G!F8Bmeu4Cn<$kk^J*W|0SBgU+khucQhWWru~1RDHFE|skG2s$aa zv?I`T2NA-?RT$dh;b+*$dnuOqro^|{R1yOc-xJFJ8!wgYwg$`B8>wh`nSDWfHvM^kpu$(Vzd0#}W%m-egt z>NtY$=;*?J9Wgwh;{dvK9K<0VhjEBm(eV<#%aT^?WgXwc_n9soKfpB|Kg5qDUe@tr z{DiJHmQTkk_$kXgYCEoxZ5eb}W*tAns{(s{)+;9zhpTE>?ZLnvRa^%FwUyx{hDtoIv%6=}wzY%VUP)>i7*_ z<7gPQ2@+e!8{Tcea2%Vw->REv;orE9-{JQ<7VxHyx9|r-`u1zr5KluFEagsm$;iK;ZC44xt3@V;44! zZDNy?PhqnhL-Trc`=Vd%QYEZLB&SAwYg@&+5t%cxMJ3Rq1UB_5j)Q6ymHLG-uQI2# z49u&j!clChR!Q5N$7#YppjKrWPQ$vvzs67% zsUA*_q|&q$KXr;f7n4QDn6R>zJI~)}^|%T-{Xbnsf8hz$aP0Syc=|MLrx@cI`Wj89 z`_jqrL^?jq+d$vgSTbF{Nyp4*4fW%E(w~QcX~Rh|S7t6__WJU(j_xnP+RsI`Yd@OL zn@%aYJ64P8)oD#gdiY6R5@_>#UCsU-(itts+Lz4=9IK${3v|uY?IE$|efw=%BIlY@ zCVy|Vyx|l~Uhe>i1n%a?Rwus|!>CoWo2ObezP+6j+}kU4BMWnbAweUO%I`%-E+~li5;x z_Y(Fk;hq)TTV}}~$w0&1wI8d!e+jKCXgeaWL-uH-M*LJwQLDtlO|+luYz#FTvpD$yYJaBmj-#R1$$j;ipBxR>i)%zG27yO-5%#%?053HykddyphQ z#q&9|;v(AcBoSy5dp2wP46FM*za3s-ZC~f-!wT#9XMREaotXOvQTIN2L;w%cd#{i< zA*#?X8W3j`1EL8hMKcm&KZY31!{Q*$h{H&VL5z8*dXH#3hCTQ=eenMjMyn7M!OLqW zBDYNY+uG@0t0(#`bLlyNPoR%@Y9LLaPttpdrqO>;ee*zL1SMJ(>UdWD6~J!MiGB=F zrb)DUXb$o9|HMhei6VtuFDky|{<7u6{FlqKr%;SRoMLvR=)-9wi1CMcOQGf#8(EV$ zBQYc~EHNUHlo%Ckn$~|K9QgoE5|6YrG&G!-82bQ0iPR&dlUUtvp$37H4H^|lLr14&kCHyW2C4V;a3iBRNh)q`I7|4hm}JcmA6$? fK936(l*4aq2)m}D^5YeiBO8^sS5$t&b8+#%D{;r9 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a43da17029d64eda52630e54bfec5923bc7b9eef GIT binary patch literal 1877 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 aB6#Xns+#U;vU~6haR~l}jBw+y|NR-3R#$8Q literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignType.class b/HCF/out/production/HCF/secondlife/network/hcfactions/economy/EconomySignType.class new file mode 100644 index 0000000000000000000000000000000000000000..926e0d86731ceb3a80847a38d978855dd8784683 GIT binary patch literal 1620 zcmbVMT~pIg5IvWMriAcSz622v5n7N&w0sB^fm*N-;i16T@xcitEx|Nl+7#tqDa-&P zqrCD~S-E+_GJ-f}%U*CQJh+@3~0u%{PF)5-)#4`yUc+Quoh$#so zrURJac2*+fivZ^MW?n)JF9Yc0&M4CPv+ z@KM>%WVMWA*j7>DK|6n}Bs`lka@N-Ip+3(bq!OyiAP(;=soRMZ!|eN-x%@|(S<;IP zbD?nUEJEDg(-~S+!_qfO`CYxRrR|#J5ncMtEW>(8J7k8J6KJFm&BfM>4!asyh1y>CnK1)|^s-n0z4~Xw2!3 ztG@o(A@)$%<1aaesi;QLp^l8)a>i~Ku|U8;EMt}nNmd{dRw*B=Q4CHirR-86qpuiT z^Nt%66XCkcxW^~BN5&GC8K!EQJsJIo%XoxghVGl)TrL^ro?hVLQHG{Od~;*-Z90-l zu5LtRyhcLCL#!~=f7nXA+mf-06%lV_B(Wx=6J0X8(Z$ew&C69Ge8#jbeyu+myA!mz zd!T2y^i!4njGJ1qIA0;`-$AQprE`Am@KCq*7$zzS?!bGl^6ltgbsgmc)LF;&-WjI< zFD@S($Iy#PmfEGnZ7XZ!yv{Z8Npt@ie6ARV|6SVk^es-(hoytQSH8s_t|LH}qy$=f zdDAIUj|TMOJ{bCFH$;{{(h1lZ>aO7XLOX^BwEEqcNcesXl<`s2xn3zKj9sAq3IfO1 zRpAH8BYP<7@{k*+F(DMsI0+y90C8-*?;QTGZn!etAbGswA|CV7G2&uIi86$6nI>5- zWZ)8F`W%5^!x^NpGc=M3%CwxJ=>p9+tCMj}KTt(Kh5*LFlkh6nNJsueE+M3YExvQK vo}$g&1O<1~UjLm!z7w>i(!vSaQ>S43GM;u4l?PX8k>0!uJi!F{>Ja%2MjMT| literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/elevators/SignElevatorHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/elevators/SignElevatorHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1bd6ee788edd80693e823b2d0f2ffa2ab9c83e16 GIT binary patch literal 5944 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

I_p&N0+J2R5KLj6vESy%498OPVxCsJSCa5`>o`< zc-+op@<$BW-BdG0Yg^jxO~mO!mV;*$LS3YZ z>-8m)S*d$gmkfD9i9dmhbhK8hB`S83V~KV)mWJs|$eIF5-X@4`SiDQ8OfM2`cSuP( zn`v1?L8j0z{^6Ona+15o$DH~AT~;ERe)CJZxT-Ia>fM+~OGKs>;oYi>aw|!+kpkNB zUYf~W$0LP&y(Nvn*8`yVrH>=-9G}+&Z}$q##V#ZqjN+ zD<8$8*EKTTz9ZD|~rF-cvb`xnsZr$U@mUf-nN7z}X(>Y+L z+bv1Kuzf|2^-V{A%1PU9S4o22Yp7+WTCUDF@hYjnUXH5`waQehSrXu-c$tZpfL}7s zE`%zP8g};Eu})n?vyQXmgO8IQA%eleo1uuZqSJBq=STo%M=C{R^4Ume;9-9-J$-IP zxY^?OBsHj*ZHG`B)uVh1wiOgcqE&}6C3+|7AHcxO>k&SR z26-F9)Btu%s{zx-Fg*xqN6w7Q7{kntbm?1hS`dE8Wq2#&JkpD18kiw zt#bmnomK_0mCs$6%I7Rv+JHJt`2VI}7A>M) zODKa_@FYTN!4sUPup7^I zwyi?1dZETL&DG!`pf2p8UJ79!p5v{vk8^^Qu5Y;m(NVOtEE>h4mQgGgceyI%TQZnR z1|4HEmBKV|+*AtY)z{-PJXbGYkLS^8VgL(&KABj!hs%hbM%6|2O9;B_5GuDU9>uw0 zV#}g2EMt6c*J2^mAjX#bE~S`6Z8iabP75$sLj+JmwY40H(9^RCLLfysx0e6n=+#y= z=D{^Gf_(%RVB7^}0R5bAYPd2sz?MXYK6{#~gN%%Ugn`Q?Nc+pYU6tf4-hTKLleSQc z_%2MJEpHj)|1>Z%D+9Qheg0_d^0_OVM-+xbCrOTkJw%Gxb%m#UA2mz-7Zk@o$^i-ssk<8Fr;C6p+a; zLNENEro18}pG1b6MB$Je)Sk+AdRUUEjyrDEC{}ZWuO7vkiK_iYx15PjZ!HSI#ul&|vD!YK)eMW{Cr5-LSPq)-9Lg_E;!TbHd}?RtawS0GU# zao`8=qY%$d4^hjZa9GcHcIM4{woSZ|_=>;Aa0h#GD-aI1ma0@bqA6M^>N zKu%>+I-MoM;mhZb1!`)lj1zb?C{$|AB-6VpG0J_i`Nw2G-Ib}+))YxdE0R~*ZOfxA zU&G?Yo^r#0-0AktVpliqL_Wy^7HBUFdauBiahc3rjp>-V$0tTkC&= z_(CVb1)lW~T*5{A@hkx?w0RR)Ce+#D=yY-X*WwjiVhi7So3=vR>VHS2fA1KgfBzWK sSBB;}Gy}}~EcJu~i-IUmycJ|cxJ-YUysq%O`T3?^8f$< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/EventState.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/EventState.class new file mode 100644 index 0000000000000000000000000000000000000000..2b1297b8745dd2311cd55289e8ea32208078df78 GIT binary patch literal 1162 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

Z$?Sqh#Qgs^5jC(5~hIhYFqe>~*5zuaSmOE7NcI zZ+OZd?rx_x{wuLZ^Y}c4G?o5}aY;*mLlAk1{!TC3y?@hxkhEkBU(@ih2|eDx8+n7% MGgOaWVvAn>KRB%l`2YX_ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/SpawnManager.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/SpawnManager.class new file mode 100644 index 0000000000000000000000000000000000000000..ee94dc068184b4cb6679b8477189cbde09241728 GIT binary patch literal 3440 zcmbVOX;<4u6umMA*+Q5lglx@5XxNgd*_wbUZAy}cVn`d4q)As{gi$aOm1L51`yc#* ze(E`GPn)If>FMYGivEtCZg)nKZH$soK6u{TnR!q5y?O7AfB)yFUjdxMR~lZzjD`a! zWHF1m3=V3zj(5cHu7-WMk>y@7gQG&uXV5R?%?u6;c`Jh>Lf#f9-xE4_G+Mc<;(ZOh zm}$oc_^=%x;bSp;qQVp_3o1$~78U4zb=57nB{Q&HN5O@HZBxE+`OP5Q>k4=Hl9+q zE8%3|-mrqI$GG-wj?%-mI8xJ1Y7;LA*|TnUlI{*{u_e8!m`>R!2A=Jd^OJcMODY)H zY|$<|CfPA4ZnNJzXVDz6iICG~4$Pyn6%;q6_1Mtx4qa!3MAo9*?ucNV-dcoZhSz{d z@=m{*#`w?7&;QWqSjgBwyrGnGXS57E?R#81;uP@xQO6*j||Ezljxw?bGH}e$qP=;{la(;aiQ(%hUfv=NxL!``tws=vl6 z8NSOJ6^SbgSHbb5Gh2&`A@rrje8ZD5lc>8*|F=9NU2)f&cVlw=z|O2i?V{0fzBnum z1%nBs8~hE^BQM`3(bL(O?b_Y;v6*bWbGArz+4SeE2Q<%TjS)^e67dGu{Moy#v;+K80JI_{N{_RYs5vQFc2cq$rDQ=;=Aei|=J+yEo>HOAjy#6KU+Oz~ z^te3O!m$r&>_G;5F-W9`hcSdGV~2v_-Ww!_h>1M_M{)7bpw}2zf`q@EG_S4Tnww7~@!6oj_k&2+$7t)9* zrZIz2oFK`Q+{-}u3v((?5gRq?8xi&Ci2BG6$UH&!BlM6kffj>y0zC#D1i2V=5_E;& z33k0xxUbsi!aLFXdrTp@*Pc%^~#bdB_th;)kkr|FQms$VEuDbM|k-aC)6 zdv^3G`V`Eae2P5^HgJ%Wy$XKAzVY;leQC0Jiv20v{`%iPPJBzfvpk*M6& ztlX2Rd?`^`YgXQssQhN4vfixRo2Wd6%Td6_86i<*Z6l+sr+S)&5$llJVg9$(uC7h? z1rg{g$#!zvwIlk9uyZxpj;z(j8+;ZY(U*jsx03B>+vOwrny_;%*^a(lJEAWNJJT`) G-~JE2CI_zo literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoCountdownTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoCountdownTask.class new file mode 100644 index 0000000000000000000000000000000000000000..b123712cd96d2d486d7a57d603c1f1c1ea11992d GIT binary patch literal 2124 zcmbVNT~`}L7=9)R*=4i97Wq(HYuZ{3w6G;YQK2m~1xpD~8;a8UHA#kK$ui5?-OyA2 zfWN~lZ@kfqwAG_Oz#rxDo!w9p&1pHknRhou z?}^;zL1TfTFA9bse>$Abm>C9xy4Q58%Tf|*g(6Mm)+Qd&e&`&Chca~BQpo*~fvqv< z6)xM$WKL-f(5lj)60|eYJz3xc<1&x}6~ricO}`>m9aV&}|3yE&&yTo?aolA%qvp2D zWzAlbp{NPp#2W5tST|9`hK5ZOTexrH3p~(JGO>+^8g@*4iLV&OPpnI!@5tKirsGx> z#yD~sc1=9OV-sKF8-}Z!UYHe>aIKy_boo=^2h-W8iP<_2vSlG;mNKO@Tv1gv-}B8QPl>N-9u%E`C~-OWxWi_vye}$r4dSiHLa7nP;0Z=- zsMFO7xg!Z|G}i-yn5EZ580E?^o11tOW?ws1Jv(j#v6Ypl4_59_fs4IP2{O$O4~48UO!cZnM{&An zO@>|i@!@gtqf7K(eLeKzEsFFwwGKr>%mft3h6n;)qolezbBs@JK>zMD7{4LY zf;l|U!e9$SEm*PBGqD(M;jR7_Moy|cOcevUKSypa(KtiZRn?9I$hQMvn4rA`CjSLk CfiDjL literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$SumoFightTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$SumoFightTask.class new file mode 100644 index 0000000000000000000000000000000000000000..c5e62afa529b20d153a476e80ea927e09e864aae GIT binary patch literal 5498 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 JyYOz@{y$Nn@Z|si literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$WaterCheckTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent$WaterCheckTask.class new file mode 100644 index 0000000000000000000000000000000000000000..15f886dca0b8aa6fecbcc6cb826d7e44e385161f GIT binary patch literal 2943 zcmbtWYgZFT7=9*T)+D0@EQsKRN>mK$+KSdTmI??$8_<%dwHNJVGmtgQZrt5qvG@D+ zU-a1TdRlt$Lr*{TLr?!ke@1)y&ThaBsHfsNIg^?9^2~dm{qx`ZzX2G+4+(TaPvSV9 zOW}E(P`jZHV!f0?4rh|+!pn*_tl^a;5;&W{2u4#F!?`5JF_FM|Or|h}SJm=b0(nfU zWkxAoNZ}%0*D$N0z!3Kn!?DYjIVW{n`nMdns#lCTVfdzFd%9edw(sd) zeZkQSw2Z5Bj-kb^+q4cGzRb`%=9DEvTi&$gOnspw-J&R2MCr&ohOjOR*Hq^Qu~l8o zu>Fegr8`!UMztusDg&RgZ6a90^Ca=lZN{)nGbq`)t>6ozIxT9A+v8_U+w_MSP7iG6 zf}HY~TVkP978weG3gMoCyyMR6rFyk$`Z|Tj^q2IDmROQ*ARey;dxoAz%TW+5IZtkP zM`cQuV^sA~wUR5X6)DOZiVVquQ+EwHVX7c+UrWoe8)8v#>_oSQOB|PRMZ+5$SMest zTX>rxJ?c2V=ewddE&Ym9_S)ijCyi@u8m^~tkmFql4J8f(WsZLIa7fHC3_V$mguZjk z!_;ttqY6vI0*4JpLyhAmTn!$Fk2<--v4~q7?_o*9ZI1Wx0mp}G`3N6t_(U0XjbZf3 zObE(!T{STDNAlzu64r3XD!?QS zmCvc;g<;5=&tPn-@YlsM7jR>To@IGzJ`@S1U9Ow z21~4kjA7<+-Sz)kI4FiNd}P^H0;i$iQ-~9)bsGCo%FL7HH$=>=VG#E4(;<*?6I16W zi&Hb_8O}bvIo**;ZkkIBDT;!c&T7gt>?G$Sva1a8XvagyVGM(@L_@7vHPSGo-4oG{ za3+L7(T`oa$gn$l?>Z3zP-f0bi_BakjZ;mvuwJ^!g$R>iG=eEE)d*spr_<^YGKICy z(^WFVmMbI0@mcDvsGX~9(n=SKBgLr;Gb6KCuQx8Po=)EsoOW!Iz#V+-rvC1 z@CC=0_=e*E4l?WyM1$To?M0_5^?dLQ(I^+{xpv$oir2z}lZNl8?emUPt=Aa-iVlYc zK==ww3VQyfmkA|vkr`6(UDKYAQkoQ1L^sC_uYA02W5Pro9ut;TFnyWR@IAwU4FP$W zKMZ>xFNbGoKz7kr7E7nq+ey0?FziAPt-W+I5ThNC$^HzsjMxfVXh{Ev*1I90HG3ah zfEC1JxEpBirnLjD1erpbakR5G^s`>y1E{W0ssTmvf%z;QQw7t&`kQ3P5V*?L!DVdy1Kq3J-;r2G@*Yxm z$d|ztaE4`Un?7<6+gH#Q!_1KtG9UNQeg}tE_Z@f8d-MUlZFS%A6VhQkb`aDv(NOG# zMmD!&AL~FL>qM4yVTkQSnRVkP>j`|xhE}fm;^Ghn$cHQ@ahTQ^eIE~FkajIW(6*ta z?;nh5I6^;8#G^roj-ikKd+6Lr-@N+>V1z!DD`$7%D}0NuDXS-muX1pTWM05&y!ao_ C89=T8 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..0543ca94c8d52aa4610154c9fcf5d76dba2af61d GIT binary patch literal 11951 zcmb_i31AfE^?z@V%(9srghQi%0VCuh3uqJ*L?8qRZUQEOi1%bOBuh5CagSiM+WPls z)!tgQwH_6fdR0heAyCg+wANaC*xJipwzaKoZEFwl;QxCwv%9moNNB~(e)G-uz3Y4L z_ulu-yzs&PCy3}2KJ1}aywp!WROm-ua?-0)C_z6~=qFyvF>ijV(9gUyg?=tiUi0Ge z3oreWe&wZK({H@=I{j9m-+8H!elG*waD%M;=asHM$nZZF;r6W}VtPxVzst0L$mQ)R zbb$UT1OAmu7tz1v@*joX@zNoBSE2X3G*1M0pFWV*VGk32nbE@zFD_0GyK-p-yQSNS zS)2ozSph}%$YqKQ^?Ep0ZdAGCDV*=68ZMB5ggbj+am15*Ui-dU&3PPxNr9hfh*?zLy$#K}z}QxD(}TxC|EJaxYhK zrCh3n!9r-x)$-IQG#BOaVtO~1m+;BCdTj%InG!30);PR%5T@=dbGY<5A?KYu^uM1F&sumNQ=ev7*k$rqBpW8*wr03A1i$! zZ9tFWNr8Wx*01>z@nFc;r1jM?O=%5wg|&Dhsx!4`KV4?K-L$E3b)7$^2O{ClP;jg6 z3+wUik!X*vJFry?#DkG=%%}J3;dsm!19P89u+iXJw;WtNTSb~+xQl6;jp{lr*4?Vd zF<`;SUW4b?3{K2r^oapV)qitG82t7sqNI(m1)}leVw>n+%?jV+{ z=4eC#Z*P|#H?0pMQ_IS2#x+-c%kaMc;aV4hd6tox>cDP7zGK)jYcjN%3WBYD+V-$m z%5XJUElUA^FeXlP)`-q!M_?;~5D)4xUwtALkMyP(7>=ey!mV*F8pl#b!s{c!Fw+TH z47Mi1hUfe0;r)qTJqi&-(@cns7_rPBiFWxq5=t<?V-xVLHsqsdfS77 zPE5y*tvm#b#JgqClvp2_Xz>WzdFi&m4~$|ntpP|(N?$P0qjxS&x0W#FT79dvxW;tq z5o|UFYNg36G0C{%2GY*8>ktcc>z#>^9`&sDA_PAc zwM7eeMtaRPXPO0f8Pg-6({?RrqNZJS%iCRvM6i=-W;T8d^rbLlp3Pb^WkiSzFbh(w z8i2rYUEzx*9l+^~Tc(z>qcUA-nnayF7A&dVG2z9u;=iTM)cHS`Z&VZI!bCu=3IR$4FrUXxaIKX$|I22qJ+rW_leX?@SA6y&aueX=Y(d5fcOdwXG&8orP-U z=K=uwj6wkMYl&u|Tq&Y(R&Ib#tYJf1*c0F zF>RZexMv09h*QIoM@kiA;DixGt&v1Dpsxu^KF=5THz-yMC_-52Q0ZFkKq|}R25}wm z#sj)erOW8@5l>MWsdOcM7+GayiqtLXn!?qo#yR+YQBTj8L}+qg&JkjlM` zEt-3L{^iEmc< zb9{@!x2k*_OiG`pFR1)^#^rYYqRMyhoeJNj^4fO zo&05mA5i&0en{nq`A#Gpq=%?vr4mD&l3pzy=&mk7vM+57^+( zD*uK5%5?HkSd?kegl5^05Y=@iVj8j2G^?@Y6QYw&Pi6wh6a&D4;o-(Kqs%N)?3JUy ze$52al}+k8nKuPlZ(}IYCB^zlN6e_}>erwInmfK;7-Uv%#ulVW3u|3cr`8;ix)rSU zY2dbad~TymvbZBKQkwy$(~rn~46K9%Gct=?A3<_8ckfbdBc?-oJQ5avXDYR?&4!L` z7&ux%w{(I_m39mx(2dnnqX}aZ-xkE?iRsL&TAU2l zOw1Z@o$A>2HM=t7-D_JK8k&)5;ZAWqX zWIfTMBY5Z3IfVfRK2*DXcu3-<80Sp;>dp!=!048F4;k9tY-SFbW+Y9!#g9nW^PBJUx}3!~u|I zoApaE8u0{HuCQ^F?Jntf^2WL&+f#}bKq_O2CJ*oSX%J#!@NS=E;X~@w0|ptn#WWA? za(eUu!y2zn)?*BQb@qkJ_Tq7#jPFAF=tsU2+kB-ng3Y1TRA`uoyU0N{ZyOc$B@C2U zcVg>S*?mp3!=Q2GAkXJ#+zAKRfkZS4{e5lSQC;g4_Y9e*G9Y9xrv1 zhT(cHz&CJZwOtGgjVEMDW2G#60N^*aG;CbiV&n=BEMpza)K7N(O@f(PEL|(L>d}75 z9^!H~Lz~@D%${{pV{NeszeFzR*Fp(-?Qm?C$uhMC=uFQnK&Bs4V{t4&FZM@SQ_WsE z^v6RZslF{G&ry1nKtWuWM11klk+9oswDi9*s&@u)GOa^Vb4zJJQ=9C&RN|^_#vDhk8uLN#ySdzh|XSd z3RH!oD48BMo{q<7CR*xSE)$VASUK^CS)R@r&1KRfA&3$%t6S`V?7|GEnbJ19-0~nJ zSkbl$j3yMj!|=@JHe!#XBLY11W#K~kBXjH z(IX6j$pacr`9nC2Yw$NVH8!toYgi3{9N#8#LgzzaVV>OOcLn=(f25;h013Mn%jj-t zXl-b-O6AlsI#b#BBDbbSil1TgAg_ETxi)4hv{#TViEvn6y@6)wIJQXhhS1i&#gCXr zK;xX;HZObMVyjfsd?v7!K_wK`MR#Q^9F>d7GfA z3UXwZ!v9kF-+V}=@5&j+H|27WaH{ey(>x<=4U)ldf22qE`Hh2UocU?;iZ~JleB}0K z?i79>zU7ZZdJ+JP7wyPq5ipMn*Wth{q{m9lk##nyTFtk@ww|nsZFm=AA3pJiCd={X z+Fi(^T(5;ft*BJtNfSGCv1NOOKfsa22pf)O0;W0RkE6Nxe4`(qcetoXPL}bF$A@s| zpeyk42M(0e_aDJ?91I)JaA=F)LOjEPG_D`TT>umqzvUH0yq6pm2gtc)FS+)R8_gUv zl|AG^bIO*Az2x0Pxw{QgAH#Jf$)^l+@wv)zG?ixI-)t(w7bDlBS2c;!4Rj;!m_AOQ zfN;XlhdW{Du6T^xyU=iu5X&(-=i4T`t;wcdpTzS|(Wh}8P9%3Yk;+ksu$oVJPB}>*@G4Zxh z$s9Y9%&Kw7IOMz;#KiguOhp3VXjU-hyFWg59+plr( z&cg?>aGoSpV~B4z7HyGVE=`pONvV1caUjcxbskB3v9MWU(o53GDKeEwI^`*Y82Ru898 zou*JC6kym|rC1R{ibY6C5qhc8Y*m>LGS)Fn(g2efmOrUzjos`;YjKy-c0tj)wB-&^ zI8^??R_}W!KrE7sn*8x%<1TyTVoA5^IW_lKp@&esTFT;qh!QJ14 zFTMp&e4FlK7v0U%=^n139b8NI@+!KI*V9gJq6c_8J;+zmLwq$o%s0{_d=ov&x6p3B zg9iCtdW>JEB!58r94;Dic(!&JGSwh)@p$`VYqn?LvnKpI9C0B5vLyAU| zwBrpp8=#x-t+0@=sp=qkvH03^;Z#3wr!L=R_k`2nlmHE zy@QsImTv5+OrScQ%LJy4Y?gy;_Dm`bA)7%w=&B}Z(-7e_M%t()!bH<4GDMfSsXYU! z{RlIn)%f&y4IZxr_^hXLz*05&X$3Xo3)>CULT4i~TIgbGqfXjH-PBIK0JJEb3-CP; zKzcr)<|57`jb~E_FQHDZ!vb!jt=xxpKLz;;+QwH=4_`we-T{D?fNmiV#^e~Vr~m?2 z8nBpy`5O#abW=4a=vxM~t>6H?2)IKv1(-EUO=&%EfZ-IroxY864kO?%B=37P9iT?j z-luB}aNBhlaN$UFTYQVOz2#3i1OZ{Iq-Vym#l!= z4Ed!#nkQHSm%#?|0M%?UTgczBA&NVJ9yNx|?e(u&$eBgayp%>LsZEVsR*nBX`aY;T z=m&JEaDo1XD5=z6s#_GyR4BYPJ4mw)j*& Ujh9LvFXJ7e|`M{Ad7qg67H$Ej|CYi84pwpVUdd^1;Z)@ zmw3iQ1*2SN6^wDctYDn$M=~BW$ghj#YI$RwAz?J@z7d+C&7hS%&kj~yv(c~{424R= zwtR2Tb@pxDv%~j(@K!&x_Dw5ve6OL~$F>(X^ad5sd6g~K{9p$&=LK_AeQUe4RooUx z%368-MH^HtRmv~R8^vnrIdPfUDOO&U42I&H-Vx)+rrYG~SJRpQP)=I)_h>SM700tT zn)O{fsG7Sjd1QgJxzA8dSB}hMQ+G}8KsUm`@eXpC-Wy3)e9Lrq%)sG*9aPCP>ja+s z6OkdFcRVLtVHo=hp>k%2K?)BYnoPoQ4m>k#22?4U<^d&dxt+_~U8PH2v!3s@lNDM6 z)$p5vWv@AWa)TGUvcLzY;VR$bl!hmGD&rZ$N^g6oVG217w=tt(7$X`+xftVO93u<^ z7r%>l$Plw!-y>!t=}cGmo4ZH06%zaGztCY=?*0wpQRTX-pD)T~GP%McJ<=h1>9InJ zvj<31142^|LQ@;S&;%bGWlBh30@uJWN!BgW{HQIk&xo8M`jIS#>m=hMHct6dxY5ba zA|kwMQkwgM*cl|AAGwr2O&+bCg`0%H<1}899B~m*`T%)ue)1IYPa@n6H%*@Qbs2X! zb=(y>vrv%6Y=_7@YJ{KaH%PUl96g0{f`l+sNf>>?&|<>q7sfzb7=!Y6x)g2EZr7w1 w`ixqvg?^(JZ_&D)fN@Uk5vW8OG`KA7LbSspgE{g=Fpn#wRmzm0BUwoO2Eox*cK`qY literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoPlayer.class b/HCF/out/production/HCF/secondlife/network/hcfactions/events/sumo/SumoPlayer.class new file mode 100644 index 0000000000000000000000000000000000000000..dd677ce4f9f6607598104477a7e822d5e38838f0 GIT binary patch literal 1694 zcmbu9YflqF6o%i~UbdH&0wRicq-rV1A|Xb_5aebWD=}%o&)e;^9lPwByQp}=$OqSgK`#W%*ke6HVZ7*atzy;cpl?YT`yw7BW=@V)1E&5qr&>`-`aVDba* zhJhIn$dt6#j`e~2#UtUKqF26l%xBZvFux|)z76rWM? z!fi7=8ftZ7q@M{_gsTi&rRrPjz%rvyIOgtdWpiaPPs0@v3KA&YtB9Iqpp+!;YXLCZk9+8Aea1K;>0+V_5q4Y^Xp14|}_| zQ5pp@UcbB9pf2dMh^<=nARB=LvNaNqzBdCu1(-3i0II6t2>W4A*eIx585zYxFH$ zo;yKKD@9%rC*z1CVp`?SDB=cg_TwavGyFS8dY7DAly&U*L_VoOIkI+=GmSevj;Y2# zs{93sk7Q7TELfaQLD@1WgaUfD7-mrHBTk+ckM@l literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class new file mode 100644 index 0000000000000000000000000000000000000000..f2519096effef1374b7144e1b9cfbe8c6309a647 GIT binary patch literal 2324 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/Faction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/Faction.class new file mode 100644 index 0000000000000000000000000000000000000000..f509f3b19beff693e91ccaf8741c1af8b62b4a20 GIT binary patch literal 9975 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 SUm~A@Me^32{fyQV`20VnXOP(d literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/FactionMember.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/FactionMember.class new file mode 100644 index 0000000000000000000000000000000000000000..078faaf6d0ea0ddc0e10c3be9905f40d0b9c23c2 GIT binary patch literal 3937 zcmb_fTUQfT6#h;Um@o{W(ITSMOGQIar=?yfK|~N08zhQgwbvm`!bq5jGZQWLe!sW& zzS@Vr_N5PPS4C~t>hih2sjI8|%uJFq6p=-JIdg9N+uz>j?C&Ih{qy^u01n_=8QXEb z5tEo|z&2dq%~QO&7{|^=T*A{5o{{k^o|Eu=9J^$^0IdNsre)+XBSDX2cLQ3Gmr#(A zzGIs1;i|gn8t#Ic zEouw8onEUCk?~qFJf2-s6!5S$LjkvB3{yW-o}bq3^V&2|K_X-2wBnRz8+;s0#@t!M zVK}r}wn>dN91T z-yaq=v!G76wqX|1!p!*eWj*Jn2MDlX!YG)UTec|)y-S#^5`^<@aCAyt(YQ`9>yuq! zGUVp)(z#V)Ge`y9J)_MN?#2p+7!^a4mCqOHJpFsNB-!KQ8u4hFaJAeV<P=L5iuKz}TZF63aDsL{kRs*@;uoCZ z=-MHJN^W$-KsJc?!P6mr)XlUf6v@ftg9wB}O9btQGPq{UYOTu?R@u(!Ck(H?L$$e| zmz9Df79?C(@Dffc*oj9J>_Vr4-Pj}HWd*O`Rgz+_0)-nV;WY)X;|+$P|9^ZE-c;}w z-d6AqIwicT;63g%y+&jnyMp(zhhbAqIY{j0^qEtdGfVeg!3XG9@F6}@@G<%&e4^k} zd`6X^;08Wd@C9$ue9xB{k?@s*A$-jT-!L3lC9hDjLpk)7hhb2tCVI&7MxktL{OwXJ zLgJ5x#kGk*V|>YO6Cgrm?o~0}CUHaPEeaLv42eQ5SCk<#r;1|O9o&BJ>;uINgiV~H zf~cAEB4Lp8wl(joF2gPnCXixLAA|S3XXVs#DRB+mQL`jpRHOV^XHbafXg+J}4#meM zMbP-+qUJcF=vRH`ta-IyS%spmQg@zmKCL;rI$q-W*NUW)_1Vdx%;+$~w)^a5h*&o5 z9~&7P8aYS5VO*;cceGR{N|h%?%$PuOrL@LOPxaRe$2{cyu%HV?aW6UYz5mrJQL#h2 zDZ-Xn&G8`p;!$$Jd)$4* z>u~~6&;4UG!`=T#c6{xu?>IB~4jzi)0&%BtY!R)M@j4pUEn-tJ{+UokmPy1Z zEp5a*N&I>#nKhPu0n0cs3bXWQYApMRC229WJjEsY@)UP+YPZprp+nxx@I4gjv@?9? zb+#~m7OX}{_KbRn&;fx&XO%<;j$nYGj}mkfqJN`Z!eD$*!ZDg0!f@dIbl^Q9c;Cu! z8y!E9VZ=Kj-&HTU>JwZgs;=a~75#(3NPyczUw%GuANOHS+()bT<_A0^{|w^+5@{Vy z2KH)TU&rm28n+6@byee27+uCVw$ymjvc{+JHO^oxFz%xu`C-p%i+XUi^D6K<7BBU{L2;MBWT6Se7Fv9oO9lxP5cY# C=hjL9 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/FlatFileFactionManager.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/FlatFileFactionManager.class new file mode 100644 index 0000000000000000000000000000000000000000..1b517574548488c1f522a31b9d5122280ec8560c GIT binary patch literal 3399 zcmbVPX;)lT7Tvd~;#I1i7%G6lpa}^OAcTrhBOx&niI{;xTTJZ4@ly4wc%gWO@4X@t zryiVoaO^SZ)^4>mZEFwq(u#CeyW%I;(qG^gzxoUMLp$&L2C878L}9JVedpeL&OT?K zd(P#9FaPr{fUEFk0$VY@3VpaWiNiROz-{=U8ji+sEP>l`hlV>7h~us#?#4YyNKB|9 zt0AYsNT30EwOmlMNi~>iIIdwTL8V0v(@C`89t~CkYmtwmr0mRSxHo||lrsb_9yKjvtUNto*tg1wA|rBz7ZG;!R>x;&K(aE!@m&!Os;ao0Aj0=H<4 zk_w1G_h`v3q$kQ#Q>L3{KG#%Pr?b|N9W-&cV ziP|A^IU^^qZ3XYDf${^yqxB^ZJ}1;ckct}*xTk;IQ0iM2b2B#+^0TI9tAet-cMrD@ z)kvve_jd)QbX+v<%Is7|&Ul%i;itR|8XjR%Yj~6x9XT7a?9-DNFO}`Aq1YE#w|pY> zE5~&7Bdy~xJg(sh9Y4c>hM(*B1%9dHNjxPG52K{vX&uktS*G`eai!xq{EGN={2IR@ zS{=W|?{w_M@5$QIY!J9)sp$H$SLO7t~6i(~-1OBLn=XJb*(*ph9e#=7S=@Fk_ z9e=`~1sbY^DwdevRl$DgOp+vK*DcI=9WUY~fjt*!#$_s`ojJ!frqk;9g4vgqme}}= zJi%1o`#rRIM+0>Ni7q*$GJHeVb{&6FfkWR zgp$qsP!)P?H3ZJ9TEkni_|{UOu2A)ew*kXKGvLcFe>WP@_0X*mp^KyxkFp!=y{)UkswMD*S7fSoI|nQ_=~k`7~#F&u}@ zdWrTh6nr^^8Grcjfqh;+chpcsd|5xj$YePc4#279W ziwkYIHE?_Bih35*IVux3*9InlUc+k`D)kIf{R{1UUv1@M5U2xdJJKAt@oNtv`~~WJ zx15D|ld}k};F$2Fjff$I?fh=>ci~DtC)H0quEq}P5V!^dzOG1ty6XY4v-d4T=20i` z4x$yrQuP&Rqg&oX{1kFq&Lf`btE*tuJQ4z9Tj!A!Y(V=t(FM-qqQR(t>>L`7p2fv| z6|AnHadm$MsaC3MtY8iG4aQny@1f}w^xoFkc{EkfeCDgS&tMnrw4B0Kw9}I5o5v+J zHrD$#2BWRf@MttV`tdoerMcFO0-w5c9_u1FjmExnXruVDd0ZaBZQk1YnzapFYxmb^ ztJa?#p+8N7(O!kSIq)a7kv=HFCjL!z_zt~;&NE-VufiYo!k&P4H#k4-01lc2~O^(#9uqW*+H&tNAgSbX*i@|R72)79Q;2b zkuQ+aFvjn8etnKj8g5$mIqE6+l;{L*4wH`m#KiawbcVTh4qZpd)8=_}3!Fty1-<@K g1zW25-N0N`*}smCb0GIK71Sjxv z1WAlW@ElSRjA2|36A`?E$uQCp?8B=O+`?1@8BBLz2D5VQwGPZ-z5@$bl*5vO+Y;e* z1$QEd;%*pk$mg5V>@E5Bb{Ox-C*iycUD{^D$SKGx;0$de!W8aJhW^Bq!*iCIH^eg6 zOzu9g>{V?gx2)$}VVRCLnVJ|LSYl{RS$T5oni3|T_KI04J=3=B{MUfUYMC9p+v#7Y@X8195)P} zZ=vF344t+wTaZ1&rCqBRxcDk5LHZ2mcdJv)ongPt4NK1l3uC&gGqfaR{dIb!yzcVg z3qyN#o-_>lHt*`W)r?;9t53l)rReD8nsF5-GH-cyj!y_#v`3m0+_`&tSyyoqaRmhx zD-bF!;j)5zDpp~rD8f`=sVLz-od?eoc@;Js1+EGYWd#pZJj5dfk5#;f_od+n3O-cv z1RqgQDn7<1Dn7+$4Cl5#bb*BRN>uS8E;AgK5o(5R7PNWS7G`186GoofGU#gz2mAS~ z%}aC=%|hI@;!=XRiqG+diZAh%eEXUq60f26DELOjxA;!Qb?M*Tug`nA9Cw^$&oCbO z{`ok=^<4(rL{o+vyL3)w9oMD?5NvSJ1gO3EIm_dzrCo08u4OY!>=JZ`Q%zzNc#V#^ln(0 z$=;(thX<;S(y>g9uDvq3``6qkEf8046Ru5pQtKgZ?(!Lv_H#V34PH~(Z0>l5tBv^> zbN+;g_t$dwD}A23wAQ(<6)lidqJ97lZ7{DL4DwM{bZ44BBx`D$cd1R8{$!)HffRJX z>ZKAl^9*O3Xcz2WgPcLTA(~c4Jf`f4Bh3&?q_?x}+p+*)U)_s6=)x(QAF5j6 zH2P>p_UOm+gu#%&0DY5KNqS1G_Q9bFLKU=ZhC6^T4mQBG*WubRh#>+yL+(*}o+Y4j z92(B!!d+aX6}nJplr#%y@o8dfXsuvR1#MA<2*VY$uOadb9UaYy_v- zjXGtFc2OoNBkK#uhv~fop}*0tVB{|xBla8h7@m-+%s>4LqIaI+K=fb*-F`fW7%Dg% tJwo#ej;`U@UicLs`l%&W5!u$5Rw2RkUa=lakEHzQ1 z4~A#|DC6vLIVy=p;4U{iyEpfl*_qk<`Rn@+0IOKdBZpZVdCcW8gVGotVcx=H3uT+$ zELf;ms4|R(JvAsTG1OWE>1w~@sRPM<8NSoO8{Tsdgc~aD4|uA$o=|<>FtRDgUIsP7 ztSMiGb%uKR5}bv7hHOK3B*S=1`SMlNZ_D7dXnV9W+0w4?_C=t~JXy?|@EM#f-OSvk-Ss3VwXc2d3b!YD z!^jrxN(O6ZonLBCb=sA^tE0e`o63}FVz@IFO~6#l4d36Km8TNF?!czwh79H3a zGa7fWgk=lQ9IRlPn(_R-n5LQG>Yr6}a1GZl#7z3Tw9GK~ADLyCIxSFIPlo5`-%a8< z?t_1S-E3^u%()pU8#xi5&NLU>;)tO%RB$@sZWIL44|yY1$%?8tdz!VsS&^5n4C!~0 zqyGxPibYdE(njcUPypqgv^p|$19qkQ8LaXZnU6HfV4UPA*#H|TlDu(Zg$Yd2jO=3? zBMT}Ry)&$J8V#%P2_w~S$YyYiD<5cK7}p%a6;fP*9NZ+>Ewawic)Pex;OPXsl7RD- t>M=&Yz&Z;(iP4GU%_q}CcJF-e+D-{oke>o;+3ewY9N literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..87d47ef504eb14fa4559ed8234c8d12877c4f674 GIT binary patch literal 12019 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 N!{3>g@I4n+{y#-<=>h-% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimSelection.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimSelection.class new file mode 100644 index 0000000000000000000000000000000000000000..ceb05fb2f5e830fbb2b4f30f6fd4c0f7010cee5f GIT binary patch literal 3011 zcmbtW?^7F96g^8q7QzyK1SqXlYSA_crAw=#h5oWsEEozkK!sX$vsqwa$uh~N4*iGt zqBA-pw%Qp#)*1gO$Mas6%?4H)$1m??-`;!fdH0@sH-G*8`yT*4gp))cK1*U2pLe1c z55zJjmU*#!p(3AziiIQ|VzCQLc$CDKD5zLYLc>ZDt9UF7zf!TLVqL`(1@T(VE-C2E zZyV1Hz2@1DzOpiRe_BEN_in}EtNy%O+0=`*ogLfLAB!`->~)N)x3X6>k1M#?XvCNrd=j%SjWz;(r(5rSqggccG-GZ+bvp^ zWuxfugj`I+Sv4xQc=iwD-j;}eD_^xtw_I}U4NEUu9_jDsTjqvgis)56_+dJRy{pfN zwO~1xd`)s4o0hj!u}y}#lW7&p+uyVFCCAveDzo)K)9cwe1>Jk$GX>NC15kllwV31b zCX>8Q?1E>QI}661e}C0;uu57mbEQdo`P5=%jBr6;);}Xea?EYTD3{z_G4d3QN9!=GlAzE6?M92# zPYwwMos^O+B_~&3lTs;Wc2{?UDGxXjtM+r2pV#1YX*F=DX&>;Oj#Xg_I6%#s!@=zj zyUEC*ahf=$=j4og8tE7%gQLEW%w*)DNN=dNh5f2$?J`qltx~bd-m<;xe|PXMKWKg6 zrvdF~6WZsOvQ5Ze?v$9^*$HxIGjLDQ{yg61`VOBS(Y}p)U+x8z+)K0_B95OOY*&r%gB&UR(ixz zu_uB?4r5%!EiIWJV6>Tra)9(JXlr8)9^F6DJRJIB=&qwd=uuq3IKf504lv-NimQCq zG2w@tBZ^3Dx5#EYGn+a@Pa~-*d6!G%b(w!pGNB;dL6B}-W4gsnu1CWr{snf7uvZ8> z{s!0&__wN_pg9=^7^o*GC5rMIYWx84*zsaaNK}m;wD-x1JWzuDcLm#zFv(TqUFR;$ zM3G}6vu&ZG_JwfTeH;ZJIZFs&=2Yk)QJ)!Fx^!hS1 zP!E+>@nZ(RG$7X5HJvPAuF8;I3+j?#%vD-GPY!A_+!ZySzD&4Ox?dHcGV9*QtSOkm z+0AX2)qCF5pL zw@`90hq8lFTyQV~+rfD_4#qHLVcx+47A-6};4lLlXkNt?hS|TU6M0QpPiT<*Y09OY zMC)!B9}RR4kuK0(LT>6d@Q@supuDo)<=wu%zr zt4Q){YVCFospq-vmpj|;Is-p#vS&xq9Pj`0QFLgJ{tUwnNrVzHo!#j#ukTWJ3G55q z;G3o$M9j*6X83BZ?-uBmq)Qkzx5QxuGxXmWrk_bBpEvvgNE3xpO{AioA$rG<2g5j7 z8??@nE|lkw!O9EA7%DFwBUAp2?8nr5f@F@ofp@q_@=}UWK!Ggt6bxBupW!m5dZ?>} zX(GnUM}&8T%qN`7enD>U52T&Kyr)Dyq_9pmpa+}56$&51G_I1);u@}Fk}R9NEYkG+ E1i3wY6aWAK literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..2e86c3947180a16c167e51f9091cfa76632b51de GIT binary patch literal 796 zcmbtSU2oGc6g_U!rY#xk24iI~Hnt4f7a}3v_!3kttD3ITI&BYo7>?_;ZZjJtY4?+O z1|)ad$Y4ZMh83yX=m9tf`^AZQYrtwxiCn$m{PHfQ!@;eftf`@wpE(6(hRve zJK}n{OA*TG-h|IN$+xr!O|0~&CzG)m+Ss&l+rbvL9h6aV;9|$Y9o%JDOH;g%>yfu- z1~V~kD;W-3QDhWpZw!sW%pmmgAteye?O z()2sc?#Xk%-|RAM{4>cm(NJj~W>%B;OZ%M{yT7SaH|ckk=(n+IEwv#<#4o|2b%EFf zc|t(_1K7o<$~)xVrX&9zmeqd^tDDgx(LzSwAV)e^v5Ep}*d{{@q;Q!OikZ$!EE3L9 iR4E)-M>dwwODDRwoSj{ve89pA&9^8jlxfq7YUwMB+s6X{ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..e84cbe238e5a64efdf1630359ab75758b9b7361c GIT binary patch literal 12383 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a6213e39d79d499be034e607a47bfc0ddbe42e71 GIT binary patch literal 1171 zcma)4%Wl&^6g}g(agsVs>OOcDD5b@5p=QAX(FzGgia?5Jr9c+2nmChm8fRSj0ra0( zfJB6Z1RuahA+D29O0Zfs_c3$Nxo7U3A3wi-2k;ONN+@Ehhyv~!uv1?vz)AgfYVH}h zZ(xU^AXOA|Pkt2cHT4DL%FiHKq8P4kGq z<*v_F-)+UARDHTH9gA=%qlh33R#ru|7la2sKM~=pNbD>Bgn_+g$nQxd<0lMT_J0Ve zwHfq!&?ViKrc~lZGVF-(CGYrjVl@Mg`)wY|G@l;o@u4Kudl!(OKGzF|L$11!+e$k1 zNleenANxsP($fs_UU*4N-5%M^And!HWH6AiJB7JZNK2@$2zN6^mA+uUFXHE?3)r-4 z7l@mzphT#rzqhbr*D}Z%%2af4W);gsp0O@VMvZ^gk+W;GkWwp1LQgbgI?~FYDeR;) zCM>unN||12Y(deOjIzsAN3^&?Vwlbdd5v;Lm21=1E_oUa=A6&aK2k7gk?I41 zR>_)^f+-!t4cw%YRQFl1J_{~qf^T6x1Du})FJyvmVe3+44$pqgSS8e_Rnk@Ng literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..3f82649b9cb1e3f7f663cf5f144ff530b8e67ae0 GIT binary patch literal 10449 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 L{_EU;g5Uf<;$q*< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..06e5086c3cb8df72f4d8f492d40f3ad796e37ca0 GIT binary patch literal 5908 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 Y7{E~^|H8P2iyF*<)9TD6vL^8EKiHrKTmS$7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..50d2c5a4d3046524aa803ddeb28fa0273e83ad9c GIT binary patch literal 3960 zcmb7H+jkSk8UKwfX=QmaM1VnozygVoZHyAPfgl?S*f^Nj5{bE)w599S*jl{WRkS06 zq4zdT()&Fny(dj+(<^CF;`THLP9JhkUi#KQCM8Y3*U%6xA5|a8|*&C{A>s7w6@2LBUiE7xA=QKHiB>;FBG=gim!M0$pyW<KFnmN~=IHWyc%@?5%L z%;<(N9otQx93CC)ImZwhcJiEI{kUoKY^6BO%V+dyi%#O>j-gxU^s*`U!C^=gOqU_s zM0j0`;S`Iyop;lQUJ|-#r$>GL!ChIc!Lm5TI6BJ$m1ai;m5u6I~B4!|vujp}-S*3gyN% zyyL|~U*Khi`ezYpWv?z|2 z#l3_jZQYFtNkIsb^7NV*#(ve3<*Sble8*>wS$x}g9PqnGwD_)sBr{E}6xPs>u zyuc8fbSh`i2~RB5NXbgR+B-;y6{K~`h1OGmx7yIkyI=t^=w z{L)d$JQY*&pq5JJRr~>el(_yx#g{zTlTqn@m}AkH3;b&x>~aQsvya>_t$7h zZu&A!AVeo?W7H`Zbs>0O!p1K8BIu)!1)vQ~UhlN-r`-jF=>*u?+xG@oZ|EOrn`)1@ zPu@nTH*_1}TOLQ6);L16ZYKII^t_eU1Rkc7Zl52IV1RZc2_KPWu1q))uHrt)u!uOr4fOW^9UG_K zz^3@-D!LQlzACoRLwqYORV3={zL^t!i@2ZB#4?fy-^I2Y7)pfiU|SX2-^L?}P$K;5 zGJy{?2;8wkU|sLd1~N_V$T+%=tJodi)5s;?JV-5DNhphWNZLOjpOOrBus0K}%S=fr z(JFcx*>Ar8jtpT4GK6Jpr}Y5};ZE$pZaj!R=%IB04^hxk$WW4;qU6X?dR(CNn4+NS z^wy%cMGB_CAza5Gp2ZN2F^6dqIf{Sb82*jpxQAi9hsW6f#@LfM#h$?vOkl!Gkr~8r z5bgAPjC7wOEr&=~gy=MqHiW25jamZH(_tK;#F1woBMof`vl3}JP7-#o^Q32l@Ce2N zdDrnSPGFQiYab_cDslQJC+TF2PDasr58D)+qDlCPd+4S$@*d$=Fuw79qKPP&P>@xS hBN}?C;4}!%K?P6#2dD4hu!5)FCCeEmNm?7u{0|0jfIa{K literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionInviteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionInviteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d16a317e066f65c1120a667dd20e05ff27fc1d95 GIT binary patch literal 5532 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 R^{pjQM`8dj(&Z2y{vU((Q%C>+ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..49e37e396ec2700587f2e43aa6e117b505f20d89 GIT binary patch literal 3940 zcmbVP-G3BU8GcUKWG0(Qp<4nhk~)DB@bq%sKNu z@B5thIq#YM%YT0N9)SHQ#?gV4hG8AYYq1xPDKnyBRL58xCoo=z8k~&dahy`-bREv% ziCR2~PsVW;pNhlAgpRa&$Y_vpBrvHXtFBWz9Cdw4K}^Sy!%Qt)c*^9J`Lx3E)kL5S zUpb3VN1+b0nAR~D$2rU^^R$jP6X&*^wpJ)GC@oQBT})EsnNC+rqzZW#<@ z+H*5GXHr_O4Cg$5+L}sF+Ud~o+`u~0+uzkXE)eVWGE!jUpySF^VP-=5WA;RjBZ)yT zZRf^q-%-!y!B{xu1OkI=fG(UyA z^Lbf@DLbnr3z?A&Rhd@N6VL;hn;h{}86R11m_q2}0xJmpLP;T(a%Z4;6et2SJU2(3 zjFn^8kA`-7ddSX~)WN-?;S1bB8oo%sQLo^qWxu16*t)vx_p7uG+z(4&(@F|l@M$W< zz?X2)z?bnAfo-=GdfCznB%9MG0y`@^O>5Fre&)ewt-CdR)xh(3!NAw>qK2;<_y)dd z;9Gb}!?z852jA83vVm7{h?yIB6|ZTyVBmGUCUBrReab7CY1?(ZFoKOx19NVQtju{5 zG|N>ooxt>MC!@AXlYuwzJ(6C@>QKSSQIU%D_XRpi_#Yr-JQ=uqLUYQVm8NaZNVOMD z*Pf9XvpHwr2lyeEr8(V1{2$?>fj4nc!;cO81edtt1}>w|z)zL=nKEzTkb$4$7Y2Tb zw*^`vI&;#OB{D>v^t~A~oRUi_8~6>b7`Tcn0#(f!R>5qRQ+8lZ zNa-%ZD6f5r^E(E9i;K!xt-&?CC~)-7O=wBu>*x~#o&PJ?Xknt<3s}x|ID|{oq6(huz$~fH*C%rvm(}6BeGf6kzDcfGsWOvBA`azU>A% zTlGG6_>}_dYF#}fP^UWGkPOro5ooC7#&h7I3Q62@TuiZx=cFH4BQom*q4bYL0|Exy z(106+wwsp3?`&yZqvPBTip}P3VwGFPknJ*Gaz3yo;F5}#yAtogJCnMNBMZemqC%A+ z1x_wIYL;~%F8ey;tQHrOwC?P@qyZj&CsdDSZ%qxK?eFOw8yHUU!3jpnorhbmrImtO zW20o*Q!F`44uK`TaLzhBJa%%ao;6OOo+&mi!ceITaUWMw&3aicmZgM6!c3BatFiNW z3X_enBKAscmzyWu_0WsXae>X$#>yA@hQ`cOBq^}}&TG3$0A;!gAUg3LUBCJ&?S7R^ zZ_n|uo&i=$?;RdI+|ze>gya`*jDgg6&)`7c*%8hO+!cE43p`>Y^$F}?{M(&;1UGy+ z4iCM+QYTqxX9H_owKi2A zK9v~cJUg?FIaXIG|9{;aImG*o1E##czKA7+sF>MDS zny{Du64b8>LVdf?euPhtqnabYwzl?nA=+YpK-H-Yi4CLI5NnHFL-m!C#{;wp#7edr zn|a@Wt=NKn9N7~2j5qJG=(ARZ#Rz{l`#6s78IMyUnF`Sw4eCbjpy>Nl~mBcWY~ zegm~txN;rwBI-JBz^FoJEE&6r`i`rpk0z6`BJR3?hU?h)x^mmJ;esOyeP zrSOf5;Y;}HZ7r#B_VTh>j%>di`SGgKUg>vlr=ET7qf0+ zs_i$hQzh4s*tIPj zfSt74S(hECLnEtrFDu%F-PnaT+{bF}W<6VQ2(1|6NQ&wirD~p}YR(hkInKVsI={s# zUuB)&K^NY~Be;of{1uPlZ}j{-dhrkR;h*>f{*3`qkE0@iW8wgYL^o2R7mtZ&iKJ6^ZjWfKIB1nj!K*YOGp3L;P;$zgwJPgpX5?qoM;nj8x5B{>5m0{G0kd{)EH4 z(-`x4^wUFUe2_=&0=8;6vVa{L29gWdr{U-V9?)=X0gbdAI?4Gih8?6s6^8x`NEd*g literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2c4d53f7be03b4c4f7db7170175af4cae23778bf GIT binary patch literal 3363 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..788fc3c90225149ed66241f8932ab2978c7521d0 GIT binary patch literal 4518 zcmb7I`F9&v75<(rd1QIAR7sq;iQ91&MUG=DO+psiX>q*}Ig*`Nc3h_v^E?{M(~M@+ znUNExKv_#EYoRO+P$0DITbxF5S`y0EjkQ48q5KSg0y!M+8!1Au72DY7jONX|_rCAm z`@Q?_%q#zS_9}qA_(u>2a6-bp0lYbY`)aWtZxNSq32zO62QdM)4iZv9XqXh2bRDLk z*W!Mh6ca`e8JIy>$kyTk*kZy7q6%&;a+sEIDu{ZV4q!(7o)MP^19+SGeY=o&M*t56 z@lL!efOps8J$P>&-iL<+c)zgmNB|!Y%RL&v2Lt$!Sn9(;d;}jA5I-iCe=LBHi@_%X zcsz(t;!^>9T8Mq77Ej=;pL`U5tAaH8tc1@=_&meLzOL@!*x)zvN2i5~9m>u5gC;On+h8pEo%ZfXO$%!FnS^9h5VgyNRUjpN+b z#kly;=T7Mk!;vM7msU}&Oop2&C#v$S%XKr_S6F|Tr@ISN0(92MrFD~G%MxYA+ zQnNKvrNN4%%hi(!p7qj2dq={Pw5b>ZovKk}Ms-B^A52;~Th;n>k?Q&dS!om8l5q$` zrPcF!#!&6@G&xSI5(XJxz!4c=#FrR0l;z`w2+$&7b;RLmtzC&uDx|M;3gtT`oRjfo zJSF34d_}@nWqb`^m+=jJQ^L1od>h}9@Ld_-L#K@Mm?ei~T);CDF3QN`l7u-Km+`EO z=Y+)faYe#a89%`D4D06uzdNTJ#0lZoD8sg}TJ&2HNE{`Tb6jPLPiqQy6+`1R3L7$h zh#!f|j~P}fVO5>tHgQ<9ohBJS!K{p*inSv1jj7x;EmxV)6vHypnyt7~+$4JvUXbx3 zUSepTuae<2ie(xzLWvt$lFwx{TUVPTye#7tbV~S{jGqf#U+>`XsEl8T`&D5zW=?ZM zPkDY2tY6|+BobD`25n=)%ne)PsToB(tvjy3{cF4`;WsjVi&teFM7xaN;WdWsVRd+l zxTNTg!j&Qel|q)4ltu(rtVu5>9q9BNXj43eNsE+btej$MT1s&(E^s3dm{-RG}h_INBhkn(F)sihBj))4H2G6V180;p&=0Ma{6N z#MHVrHywkE>PIDhKEXSh7d~RB6SXd(Ib!!QtgEC(6=7cm5M}2Du`y*3>!U+jnpmXS zhYJrFc*T6)D z0fNx6ObC_K=>&`ScJ=fQF&tWM2rAhj7;ipuyM(7a%hf5(JN!gT@4X7Rq!H~YGO5q9Gu$mEVGSKVG`c=FYS}4*us+g%;>1Ey z5M;@@URU;4h(UR;TQSrf%>=X2@0;M(%;;VCVJsIK(AF*2#O|#?t-Akgnp|*TN-!L^)4FS2S3RGjXPQ{f$i{LLDg7w zs5&|33;B{4;osrAh??^xP=zH=>K4)EA84ZgkU#%%KOpv;;#R z-c(qs>Jii+0I&yJo`*EB^Q!+GR<(u#bEv(HU=_~Kp)L=(^)gmeq21Tudl4&IXR)#{ z+2EszRgBu&)p^`9i_p{F?3%*tPT%f!e}g}dwX;}v4%=IwL;ct#tPgF-qk$gfacgKJ z-R7~Wv|LfV@u@QL+dT2c%Hngl{j5N&luWeDqUka=SK%xg8vLOxd2D?`NNg)f6ntv% zUq-kJFCbh3ww+cI2pU3>`M7*}G|yp&Hj5U%zlPl2$!LK?^)d@ z^bo~i?7}hJfgu`=Vjq2L*iSG22koFSGFpE8Fu{V!>7eIM!@uGPFZ6ajM3z_)Z0jz^e!D6_F?yE5NUy&0r Ap#T5? literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUnallyCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUnallyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..28e5a37207e0dc3ab43a838de735ca24fd722ff4 GIT binary patch literal 5528 zcmb_g33wD|8Gip{lbLLWLQ;-y3$m25oM9<)CLDzT5=}NVA<)p4bh0~1rfg=nGqXTy z>xs8k#S>~hkb<{@vJkM8diBs+tG3=&>wTZqT9NwxvzyIsvXFfqec+kR{Qv*G-}`<4 zcl`f6a^dt@0850=kLz%&f?X=&D*CIi7M6S@6eO!~8*CMhA1+eWP_SFY9zXVCKt67- z#!GQW74F2#J`cZ~A$%SvO##?Zg zinq$&w@IY8E7&h(-XTZcDIf2u#=G$z`FO7sIUpYgt8q8pr{Eqx=1Ro(%ij<9spf+! zJ|tHhQt@Fqcv!)`ek{fjKaS!f)%YkrCSO0U;u9)9sp3;AKCR+2QskJ5<0?L@;ByL2 z2vn{zEz?~i5Sr8M7}10ki<>=0*fQKb342$#FWRF=T{B@h;mwVk8s=^j@HHl4hQRn{ z(=sBd{%*tGs&~gZQrnz}>hW#5ZOZrTpwI0y9f8Og;5jYPM1Q|-#hh?dPrABkg*RpN zcUXEnKG2w%Z6NPtJk@Jj0yD=zmb3*FW3LfSxn#LwPIJQU4R@z@?K0hPR$Vv?+-_Jg z!)~~-`Br_m9**l)Z@AsHO{>?lypj}5gVs#W%%@y4PRV%O@LWVS;~hh{qkTp!%UWR3 z81!<6XC(+yVeB?6S71x2qLPOb_N1I4f3+ELUG7_((Vy6DY?O$E9_Q+Iui@s{HI%Bt z9Y`ACEpdIou!o6OI-a`(t{&T^j2o(^?=COmTyHxiw!oG7P$X@-16jS2elnkdfNE#0 z6j)cPB^hTquATBWEj;8X!e3V49dDltBAPzPMs<7909aKjha%owBh71f_2{k^J?Uv- zO=6W$kXCR~!6^lUOmYE#dm?2=jZLOZxj=R^3bJFN3|8YU2A>zWA}==zyszLs4QFw`Krj?t=jB0Aw~b&lW!qdB9|*=wN9KKOp@MT7 z9>5ngd=Xy~m==n5IC`&99}M>dGrEJTm`Qh7dcUzo!Iw3B1rKU?2oEcGM8j9{H3g4q z_&Ofb@C`h!;hXrDf^Tbh0#7RVj)w2zdm6rv$LJdkKfp}_HJ+JXK5o{XzIMZv_Ww|z zoQgF32tU^F6n;WaYWOLh7MK-^cG8c*o=kNK#uCa{3=KcS&o%r4 zzZ6(`>FSsTa>AqcR>QBPDZj>VH2fC7<3?)uJ)YL^2mDdPpYUf5f5BfB{7u8(@r=Nf zk$bj2WyV>SI1@4oSeuSy9g1oA2mYzySv=012!@P3rrQ^k@Bg9)LI&-4PEJKiG@-acV-x;$u(@M?s$1Z3BtntpvR%fx`QCD$>C)Fd#w2;tqPo4P$LZFkvUWlNQ$ zs#u&Xhi#07j;E86S`5(#BP$L=qnH@aFw2UN$UExv@dOe#Y=_OE*L3Km z&6xoKjoq`!a$Mbt8pN-kGk1(AyBHM9ea&zuZqY6BrOhkH1k4qh?2cwdiMRC9MqNaZ zTTUJYtzBSy!6B)j5zy@=>KR=LNiuwC;am(bqB`WUhE*fd+O=t2zbQ3bhWiMZ{%TbU2}6Mi~JmUW0+vv zmeS)+Q?HeeZ3inLXQ3^<`wY z!F1#iKaN&) zRp5YBI4!3zP$|b>P=@VCu{fihqJx-D{SCp>M$%yhnM${30G6Tc20y9yKYZyth z7+G@|L38<>$7dauBaBs8#7MiA5w-+7uoO`&Lkufnq8>J9@5E~C!y4ShKtI4xKgjSt zObtgVb&^qeKO^!X#^l3j#*=8pGuR>mxL&lNO+?Tkc4C|8!wn*dPH`AJ#J#v#Jb|6e zjjpnC+~P%fk_`9pyInI{_~G#+rXxZmg|dgR1=pjBSH^0zp&hD>^Pz0uUt7_^ERbW{ zu${S5A)dz#=tMb|i$`fsJH26wyKy6Kq9<&zpNZLmO6;U>WNu}&c2R3)u8VWGaBdC8 zoyQafdd+!ERnR@{0+uR>Dv0s_bI{IXh62O;Lsigo9xJ(M$$4y3(EBWP2=o!94Ca3U DKp&M_ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f805178d7f99218c9ef6eb9c0f96c470748d9d96 GIT binary patch literal 3518 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�b6HM)4^g!9Nklzj20b#iQ&X zp~*_mLVjj8B8DL-vYIP3r(Z`2i&bRDaGV&?#B@ANxQ*D$wh{ISv1b_n!AYDV|1aQQ zWakkC@eG!IyiZZWX|k%~4B3i6xrv<$9=(a(3KBO#Z_BZp=wub?cxxM3o1lFSIQu_S CDUJ*P literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionCoLeaderCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionCoLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5ec6c7518ea2a0e8c67492abfc2363bfdbbdcf60 GIT binary patch literal 3361 zcmbtWSyL2O6#gy@)5Fk4#RYL~6c7;X#3-`3fCv#Y!x*-RCX$}!GSkv@kKH{eCT8FF zn5}$DRjTrmRHaH&q9zq9Z>i)p5AnyCRL<=lCM=^&Dm7Ji`Yz`?=X~d$bI;5DqftDK z)8!b$8L@UYif8bwn4XK$Fdo5k;=rjWO2kAHlcWSaiY=IkfQ$dh2vXudE$|Ep=Os)r zgbx{(;T>V9Z-}{Ex2*}&nB=O(y^FRprKa^sP4^7ja@7+(eVvV?451!-f-|g+85SSN zPA9oDtR+oasf^jWW{zr(A?CToke4=GhQtcsc`dpL(FzkYBD=DWq4{%pPB<6;udM`JR3W&&1kBr zSt)hMa||oxyB>D^ZHApILl9A#lOosG6#(-m}RZp2>kE~vm@xO8; zFm$fqYo11LHp6o;IblMJy4;+Ma}hFz)?%S@@_`(oL!msJ7i8Qi7f zX4;hU<(@;=!PG<*q;kJB;GK=jml!HU&5LtaWCFv6LSpnNv=%U8!P}9hl5TRxRR?*> za6Rsv2o|UWQ2zH@uBTZ#C;X0v#uaMHgP^FKtR<{@?lp_-C7;_@1kB&R#iE2K5#E3{ zO=hhplx1`=9C*0b4?w0!5^xa7oKAWm3lX~l6?y#SmzAtnA8uU!a?txYBFZz>*nz}& zUw6-Ne_}wq<^>!sC&TBf^~wKZ@jTalam!I1yeUVE4_KjuA*^t$xBGbSAlXYncq?E<;PfNG%O-uHF-Y5zh{q9x540 z$JQov&Gk@2P3tb|XF)wCy#lDCv7Tn9QAR7krlvi&z?wooqhzeKvUKPsLQSEYD7)@U z?5432AsW}w`3>~F5moeSpp}h*JQ~qNGeW{1G!r^mj=g~v_8UqOp}l*1enEJk`EJ?Q zSlv=7-A3dN%1dzlHllN=Xt@KK;SN@npd(Zr`W35MZs3vNM0F_Gox|#mvg)!qtmz0> zhi_o*H~y*0`BTlIed37JLLaxW?ixbZt0g*p1MBCo;hIppF|StaRL$dV@;9p&Z2B^r zt3y9w%h)Y!t=u+;?Y;>8SMH!;4hkKgLycgm6oREB`48&T%dia<*iP*1Af9#-H?>fS z^)_O?ow(|wl{oPn~brK!;3Z3{ChwvSa;s* lAZx?-Q6=H@AM5F(dMl~ureh^I_7BEJ-gf{1 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..db8bfbeb638a5623931ce533a52880eafd47a7cc GIT binary patch literal 3535 zcmb7HTT>KA6#g2Pon;xL;*C|&@dARVlNcomh^`9+bO8mto0!?%1_p*1GSjPKZsul8 zjJaRT-I!=z@*-8Pnv_=FtjbG%K_24ouu?g_7X(>hQ(JX*yHB65Pk-mqy?_4u+g$)# za5ac^XjAZP0PUryMu!x86zmNk8bl|$%FvB{LF`A56uo8W!+}y9#Gx|yaX5%0I2yz; z952OlcwQ<_1n`0!7y-oOcU+2uT*DRg2NA+RDF$H%Nes#1u+$M!2vz_iL0WAGQ3NM| zQ91dd+{0DiDG&_)Cet=WGedPv)Z=l-PFQ9?*KICNIqtAN81FaY!gOp;Z;!M!)*fW= zMVtg@m>V^1-jy7QaktNiSu|4~b>fC~&~QyT&QAKopy@Gm&H_HMOWYY5G36!6O-EBe^|lB?nBKVa+VS(rX5VpXTwTASbugL>+fPk0pnPO`&IZ)3d<6 z+@?Jnk41-!lZI{?_JH0iT+<#%AKdSy)eNg=haj2^cYqGQAP-pDePfKf3`-|Naa)*T zOy6fo9eF)xH2o_}0Yl>~XPqEXjE(XvOxBptR6!nb(aB}V80rfJ%OYg#2*>9-GTJ)| zwNDDu@^nwQ$#f#=J!CEq*DH+paHlbvP82E-1xW=b6`W!S_Bu&7&f846Q7G%cloZ$` zBc!4RwG8tfjTZ5nNau@+)2LT5hBFKmlfpiQXoh9g@dKVQz#BBZU&~l(O&RW+6}+V4 zWxS%`RTZz{tb*57yn#1WyoI+FoKx`*&MSCV#e2A*;(c7CbEx zGOWu3f6^4mGr9y6CikeLSq@cssi5reEJLhO=ILSyapDF$s)spRdD3}vzxc5+Xa z4a1^*$aGcI=kasWjWS4$-r}yO_wWJJ6WndjOi-_)M%7_^!m#6<@EdAsXX!SNgQ7+= zpRjV_F>LaeXxTn1;6#E>H6^^QGau?Ph7?QkBNNLkB*UR8m(i52M3E_QpXq5!PUl?eWEQK>Fen3l2`e(Orf--19TZ96pw{OU!Db}v>?`-YdE$5X;cwb+* zgIEYeNRwHtcsUPt&Gt^3NPxT!$QM*`jg&iQ4$ zk!%-9DvS!^cT)A|RPr_AH%3RP=ovOn4sCaAh{r{qK9ap<$Z*Q~+MUU%s^zH_|Z<%}zkX%or!ziH{pkjU9O|bR8 zJ19C*TwdIJ1HSdX8z{M+wx}an4j;({w0;r&UW_I5*+4UkGxpesO*A4T=y;OQ8J@!C z%r5LN6hk51{klKk@7i#;sX>EBgh@K485GT;XE4Yk<^4s*n!Jv##MyzD;ifnj0=I;--sL+?vI0+;MRi zYYs{d?lHJ0A}GBN#84WB)n;hAydC%Z%5tf#vO~U~uGJaxwx^=f7DKBUNk7z`Kpjc0 zrTq|^KJWQQ!nZ2a5&zrq!@)r4PQ(K#I@0jHk;jgT+BDr5ttQA%lvegBL%%#-=>Mlv zIb_H+!j5E^Zz?TY@t`fuYtas9W}zASA~+OACFAjAE=ixkd#<%KjX*?^q~ZQl4_vAd z8(9-;YRkzH-GeYTzT8vEu~z@d-{!G65tPNQ_Jc4|y8A-fUf6MP-@^lxJT!9p^kW_JvEmM-CNSVPR!Q_6+!%ZP-&MZCx<3$ilWGqx(=&x{en zriv`pd}V^JbN7yt>Pp)Z14?SCJPw~cGQ(n;#(7A(Q$`NL6N)O9C-QvRK9;_%SKiV) z;Lxi8WD12u8~|BTN-{(L94>)0MZE@%vt;M1>!)DVjZH7nrG-{gb5v^MeX>}8oS%;3x{ zgtlsZf2r@bYGQ4TTKld|Y&N8^vHHbxJo?d3elY)sM~}~)8TKr&Ww&w;cW3T>?(_0{ zUgxj>efJK4BlvSO4&l)#G<;IQSQPchC>U?TIk`U}mq`Vmied_n$>s4Dd>T)*pc&^S z?S&?MCJK(M+|iqngNR}p`DV<(h~gq^#vlVyRhXBg==R(kw{os#3Z4^= zHXMjQZMa$59t=*U-t%T5ZxA5+t8kWT6M*89&tU2t?UY{=l*73#U#(T8NPtGFK@QSl%iA~Y*RzdZT|L#uyO7T@IcTo5)YzKKB< z-@>yDJIcJj3U3A9R`DHtSH<`6eFZ;I@k9Jb#dCOG#gFk5hHc&YlwF8%N5pI^rrWlk zlAQ{Es^T)PsQ4LPQ1EjVFXAPFR>d!HRlzS+{0h%1__d0cah2hrfQ!zpgI+AuFSbNT z#6oOii!+2s%!|Mv(Q1K?-Qt?~7#ISv><);dUNpVau z*sXV)Dt?Ez6Gx^R5H2+s(;^j=N4=MGabH-x;MMO)goZMA*q?jA<2=C~Mzx zV(>MghIo#i$((2^ePMWDaC{`4lHGfqGDKmxV_^mILz!$nw6PfCK4@FhM!w*1IX6(N zqdrSbr)m!7$qAZRAm6&0u)RfXC_O$|it|RpmG6Wg`D;|jv4i1kMFcliuoMkpYz4f? z&qw~BdqMn+*|LQ_QhTaMXSkZ{IR$^X(j)^?AyK0Wm97)e$)SPMLt_jNS1AD{2rBU* zHPn&R#6WW7^o6l>a)|iy`FRRJhW?6huML~9`4FF2S*s1}^y)#2lFPG$5GKcF9h>KL z?s_z;IAYFT5TT10&ec4ZgjW*fV^u}je&Qaj0CP!DxAi{jGbc~_f|87)f% zy%9)`FiGE_PBHA+s6bJ6ZVt%P)NmblSeAl_;if4o>UoZ!ovqoxni}3J^Vd{MQl_(l z*=41Ia+slo@@%ECFdV2F+rgZzIt6Q-yR%8EaAf1jRj33bJI$qXa!;J?Dff}9&xl-s zdYpF3pUfqb1Ul*KO{1?Pni%B}NWTxrZzcNbtEXq02x* zn~2;1>y5mJhN=3t#>@>Uy|mMG&1Z0w)@^hN*gTqpmE;-=;=? cv)z}i1_T)Oy6iZg2i*GjApigX literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a41f1de8a49e26c40180d60ff931f15f73157602 GIT binary patch literal 3231 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionDepositCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionDepositCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4fad1528941c96f4099f09d6968f3ba85d03e07b GIT binary patch literal 3948 zcmb_fS$7;q75+*ZO^-(HSRUDy$5E2@HqmCcNt^^r#*QRgv5XcYc|i#wuIVX_+Un_6 zdXcRV2qY{CBoNjRa9GR|cCf)?IU$B~;GCS3XMO^2`~(7rTiq?qC>m?@z)N@6t-9a6 z_1&ea-}~=dw*ef&U(z^$F$Lo(Or&tS8T;`u`IuBNmBtyIm5*~RIFFB~FrCKZc%lWL zz?04RB%W%4f(vPIeb z$aRi-!f@<@WzGoQ7XBs2ozrKH8E*KdV|)6^q2d0na}0?gryv+MkD9g^4@!CAp5b|m zB$-ji;MO_rnsOWq6aK8}F^ty%U$J61r4qLbo?a3XS|5(g9~bkEXZl0YY(M!uZv{ou zX4q2)S-Q=jh|9tVeDdcUYBTJvZ-Hp!Zjp#-t6?kL9bXhK!_I0bVf&`PsGqjv z92wj+AAZFYG4$7=VufUXabCnQu`;103f$)my>&q3Dwzw%=`DSj^0_fL#^=L$Q~oRX zyn-(%_##7k$_ZRU44X1LcGisK0ZFt99S0d&KS(--tq{eXffZDI3CC2th?f|4RE2OA zD+<1>;wyMr#Vh!#g0HD~6<=r2a>iMY7e$|@&uB5Gb|ebtv)r~WD)^a-pW{u2EjeSvUf`Bl z(4x}VrQ#R3O1sY)17Y%LrNHyGywJjYHW$P$hV~C`d@wLA%0tP^FKIewOgn*Q3sKOx zuUUcy zjz6mS6K+VDvWlBnQgBPfTXgzo|PY5=Z1m#8C{%aDG+CURCb> z^>(~sXKiT7$@^Q)MKjRnoLU~n;7@@Or`>LgorWf0e`;^}}}-bm4QTroriafj_vL8PVSsGCsB z?d%#MZ>gyUVq%72d*?{CyOrbj;08%LMJGE zYE?zCJS8tPtC*X}UlfL4gMbQiGCjw_J0ip6|D!|1{U*XBhYoF!$yIt$T}?Xj#&c}r z?Q=~u2!LGZ-=GV%)Tw6?Ljx3H^D=$sU56J8x;bDM{iqzE-x$!Z2elR)r00id^dy={ z0^HNxa}%t)=^ZpoH)a~ArW2XO)D1LsCvG5lEmV7eo*5*?RbzR+anPA zOL~Y#1c!(52$`UpHx5Up8g`Jb0y5I`S1994NR`pN{}$2>=u7n8Zn}!iJ(-pzsJF1G z0oSsLcd@DGI_`>wv~V-S5?cG3dJ_+1wv>^19j)1>GTN4~wJ-T5?k4#XwoUgX-<3$) zD@e&Q+TW0}9Tk~W%*u(Yc%bxaN1`(Bs{#n;LWn{c zS~ihQl(8!uUnpaDHW7nf$DT6wma#9J*k4AjjQh*zBroPEn}OQ-}=;vQ0sDC?=OE z9?w%mUO*q+jr;L89Kqjd^*=Cxe`1hzVJM8_BvSMf+eoYWk(9AojwpQ{!AB^PQg)Oy z8_>k|;Zf3WL>p_zAR#13{x2NI3G(v--iuL&$@2~*|AT!B9#e4guJ^H9!N~h)S8%HB O--N;NQCic0(fm~9n~UC)QaS-r*Ol>jTCH} zxM|`RL){*n%fy@X_$ymSV|z54PGw>r>nQMTSIuRlRVY-#kU8lv6rOs4R5E$SkZm-N z7>t(o1;bibD$$>XBM}YxD4>%{S9?4-;*m`8x5L#z!o4YREim=MP#Wl2J0m_@U-#+c`6(wl5-tRor!n4B#)i%j<@U~c0!R}&H24O z`w@fHQA$LufXA_j8OlHC4@PIgqi@&wZ+s^1Gi;Jl&QdAo4@#~4q+5Q@gIU_wPNR9! z{afY}26MRQzI6L97`FZysv}=29xNt-MkC*MDfy7@|0_p%n`W>;Gs()eRIAh@yaJ2% zRYGUTk_R+CfL(kly+h`0`efh3Fb-bB*k8ar!Q2AAL5AvFMHM;JuuIbCsKO`>t6x+@z(GF literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..506e25c67edcbf90e2297662700e731c6e53724d GIT binary patch literal 4270 zcmbVQ>r)%o75`ljtPo2~upKPwBx^?&FT*;CpWxaiG8keWNrdg#q)jf;MXXuvD!VI) zT({{nO&@8SzMVePHci{O54$nNooSkW%1poXdprHqna=coU^+c_wFpU;4b+U6-Fxr( zoyYIobI;|k|NY~801o0-1f6(N!PziQHX)92`It~J8OBrub$BX_rz3a<$!0WSI)ZaJ zAI60Uo|V5ZMsNu;^6{LU{zx-Eiszf~0(b={c`QmLOA206P*8A%K^?O!;UrA%y252>JZ@NqcY-0_HSUU( zZKX|PPUx2KmTYH1pHI#4lxNtMtB)o|2D{HQgc5dIFl-w)EHRnS&I)Im&zdySHg2c5 zd7e9l{0;^~-n>C-&Tar+(vq^XS#G6WJu4)%K2lUaYG*~FI5kK{=gfS@uoxcM09M+} zpoo`5D({hrN4v&tC!^2i7Zwap4|M4Pa8g)l;SA1amnDq2TxNqRiBFu`+v4$v;3R8{aX1y>m& zNjvYP#E2m?rah1;W4B)hUqugk8Ct7}Q1NjLsQ3h4X4q9mWJRzT>RsWf_#{3>5b@MG zmuJL)rq5~8X$7BF@fmzp#pm#fg3qgX68A(C#NmV8>Z`N1u|EQ zo5>tsvb1TQiKjHr$O=a@Tur9tqUcxfMTVFU;P^VqR+x_9>B9QTFRA!4UQ_WEd{xEQ z@VbJptM~@Kso+~GzK!pw_%2>&=nT*T9<;PATxr=nUlbZIDj_FH^)(f5;Cm{*j~}S` zA%4Vg;@;ahfOK^~F)}Y%8jYsa(=BT8wy> z7c|QbVlEX}B3sZ>CO5Kfzjn?Q6nvu2_426&ioG!>8PT{SG|%C=oJdm)uB!Mk-c<1u z{8Yuy@Rov~t9To~RPZYm@8CMasd9QfVTzpXc$#My>0OJm%#StR$&|P`JukFjD;-af zlHaKK9d4+&iQhAfZPM|Ls~N+YqFxPllbZ)Nr9sxo68hnLi_90TaP?h0xny{$d1^0WWKFEt%f&9(j+u@P zTZ@KcTUpv*40SWqsD;Tif3BEOW%m1{q@%TZjNv{Ks(@;)_|hr^affOG-CYe@X_{g? zX~W{C@6?!rcWKv@N%*I%UhMdS-fcQKwEUwww)U0ad09MLs=k%P)WpQlWI!bJhm5*-CA-^K_ZozQuq3c#B-NZn5Ehd{sdhVyMXVE|-z^C>|qp zhR5mN=WD6EO0r>q9qoM|jg$M|Yj_hK`$LblDa#07!?wP*rWHhPqqz<@`c|O&LoMY) z_xVHHN<%AXUB>-=x6#IM8{6wJ5Q>IAKuh0E>?qvSU+BKsOiQ%eyU35r4-Evwk8;B;HtD)uNC-oA&29($n0y oih3$@6bTvkF^Uo>YwPKc0rammOwq{U7pJ21SAbvRx2K~21M@`m_y7O^ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionLeaveCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionLeaveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d6c55b6fdedd8bda45c806b882ef3a2a591405bb GIT binary patch literal 3418 zcmbVP`&Sc36#fPR3t<%nQLsK1wHTnVwMDDoqlh5b0G0@fw%W}yNftJ{={`X0yS1%- z*q7}O{RjHHo@3PZw5PxIoc>Ea?dhG}ki#P;v~V(;otgX1{k}VQ?&QyZe*O(WAAX49 z00tzSti!2#wBxjB&PaGUib0$e%}@i*VYnV6INyL;jEZI~iVJupia5sWF@ecCT#VvX zOo{G99WFIs8lw_sqG-Y8dR)P5l$xvJ^_mzX`xd-bhu6jPy0E$t#T(E>la!!Km}96t zX;_ALnxP{Wce!p`bEc8vs>Qt}+gVUEdP>th!?s*?bZBItbA}-@WY2Mi#<*ee2|t_U z&Lu5rQcqLd)-`iRa}4ob=!|$7!)1t9057hh+u5vU&ADop3utvDTt3dVMLrac4UpG4 z(@z@~!@&x;!f6JH-{iXQk&nk?aob6&Nq=F%@YKR$Y5_RGtvT)tT#L_Zi<)X`R$5JX zj$x$(-nDKp%y6JG1gWGsY2w{n0xWP}TjmbK?$uD-@(gcTy=aOt@_I`y_*PJWVW0xn zqK4jbju&7G#sV$jY5KyrmJ0$ydrt!C5lz^>qw^6%1hBP)*u6pv83%EQVcU9L7-~!r z7#S%Xk&#A*KvwCyhLHqA#yl2en8-@7WZ1|_cvFT0SB3{)#v+!;Eg3hlEa8@nxA3-v zcVxVa_ZadW`mF6Mx@H~rlzHFvlwfhCz*{j=$}){FX_lvW_PRmM6&(~_B}Y$}D?%hi zO(}DRo1_h=*iML!JZP|god zoEIPQA3WOI+aK(Osk~G?F?U`(<|X)hF$9= zKkFMNu@DjYM8c;s?%*>SpW_P|U*fK4zM>c?9Xt~-UWX~;Yb?q52EK%EWqgNwGQP(> zh709$zd+Yr$(VBK$+Hfg+ZlT)5+ra`f#yxW$toiLH6T|Q}<%M9!) z!?E(<8QKUYcU*Ofrw!NR&S==dAg8%EX1Shb>6|j9Kh{|x8J`A4nYf*>3Yj*pSz1~g z1Scv27DKSsl<W&!sg`%r_YBiBcu-}g z={tomIx%@;WN_%x*yMz$E$b73FdM{)JkDL0G-POrZJZ)J5V28AB}cudh7k(srT4Q?@ve&uo5I2mxKy^&CGa*Qx*@7X~)zLMd~q zQ}N-!bHh^%r#34=DI9X+a0xdS4bQ)&3WFfHgInr>QDREH;q z$7dM^|F`M|C{kYb?4gY233Yvvx0QC(Dk3XG;<{0*<#Loy3_Yu5pG?kk-J|4RABjRC zBEvQFS1wFt=GS?4IE$j4bZl)-*IbXTW+ikB_ejpM7Y!E@mB@9Q{oV{&(hl!)KCx5+SUCC ztSj;>s%ER3suK?p>54o=&HcclgW4uUg0==b=z9xxVJ8k#&(6>uF?7-!A)yQ1gwF6B zdcsv$j8>_kvAf;Bqjuskq&(_+o}j)8{gJlFAK23K0MRFCsKWiW2o1<|6~dN0wmv}P zPiX9E+V&XRi{m}vjOsj^enek)Q*$u5qY7=2U(ho92s%&7x$nU`-sARl1m}M4&oR|HAqsOC4vc}c%A6oCSrHc zOE(cUkf1LlSCrr`jj2SP2;+GiA%SXW{tI}K)@#Ns`nhzJ#5_jhji~+`2PC{C;rRZ) MXd$YT)J?kl3xOsPUjP6A literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..bb155180e1f5fdf4260adddc5782ad76f47df71d GIT binary patch literal 1281 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fa4a67b44b1fbc880443cead1be944884a42590a GIT binary patch literal 2688 zcmb_eTT>KA7(LAnJIgRCtOBA&H)?RXPJ%`aYZ3!W&@7j@f`YmA&Nj=y?965^AVyPp zOjRD@YkbXv&!$Smq+JKv?}&%b|t0^k(B)o=(y zDsm~DYr;XiFNY6QeAtX6&TIGx!%fgIqT+&vix}1LF~(F}(y$AcQ}{$a^C^tW=Y)ny zOiAFU5_m;J0arClV)>5TyM!( zFz2}$Sgzw6Vxkd*nB_42wzBs0J zL6y5?WG~Q@P`ezlQdn?T$ZJxZfz8oeA>if`ebypMNvYy9N<;>&;D(+lMlBiq_HBV0 zkUHvk1BV$}UeuH!QQ=h`pQB&L7dXkVzb-OcoYCwu`;P9{OJgN}Y5XF?;Hw=71IrF9;Tuzw-y)c%Pol3A zl}qzeo}h{i7)I;aP!xSX7e|kJiBWdlvMp+D#dVA#sbNf3W$)xRmDZ6RwoqZa-b83q znr#(nvbZSBfGi}kvi&A`wMxB&YM`Fk^G>ym+eTs&JQcXnE`}2^!bIh>smX|IyVPTv z0*^bs&1Ltb8{);X$;C#qSvI?I;rqNyu(miDIigv9ttx7bhJ2$|b1H^cT;@xbzLBSU zq6TgXtCWnQ_CCI)#cydOxws^HdDqCzNlGVUD8*x_=Z_I1Tejv_(-z!|ddRTtnoE>e zxBow8`IqDpWo^kaNs8xjkwO`y3xz*Z*Ix-PFWId(9|OfL_%|dTr|}4VT}LC$0Q-A-AA$8KzoTI`kxmpILg`T+qVYiuk)bgSg~nFezn9+kp#yDX z6=;v}IErKRMV4?JZ;^FMG@OV|VFkjfw05`mDUuWYkD)TGBQ>P-JyCu}^Dk%`YP^qJ zTI*8=*U`KN{VBBBp~gROqW?GSntg=b={;*`p=BD=tu(A5y^g()v9AFSI+ZoF-Gi#! zhmts*Y)k%x-Tj@7$~xNbq2mF)vUPM^>rL;kK{^}Isk9~6a6o#OK!(O4?544kygP^% zQm38NIZP{q9sXXjyR+F$+jN_h-VJRCNlIA?w1uSBrlF;gBn{cLP*7pAnWWQfX5!3j zdU&CN_pS9pIn{cALXos-1;Jay`@Y3nyl+JTzc({`C7Wz1f9&j=cYN=Azx&NYPn@_P zz=fhFhK)!m7>q)XVknB?Dr~@B`7jjhi(v$5`53K+39A~l7>je^cs2IpKpX-ukgXTS zQGxLouER^@>q`~9EQTnqmoPWP@N&FDK3-XcSK-ywcnw|~#p_~tJ>F1_H{wn5@n!{Y zQSjCn>Ty`X+hSOS!%@6l{=Y*$-WkQaVpxeAqjxztKM+SH?x@C{_=tj!D!5Bve(%oCp8n)D9Xq>w+xy!4clHS^?AoV|Yl)0& zq!S(1=$K|}u4T6gR3(jJQ*$%6E|4raX;YV@rz~?YZ4BuNQ+M}U_DEuHYDi1DhGja5 zT*Ey$rYCyS+Ckmk?hm$Y<_?ifhH1E)1sa>mAnoYb-qyTZAk<+ElFqy?!_<2+qXW9# zuMMQx6YsK8T6(u;8}dEq47qy^N1(e5c#dYu8XeWlK_@Y)OXx(vwbwFC*P(3Wprk#P z&I}u-!0Ixay(N#6V_b#BdYAZc^wHIH{Y1y4`lQFX^;q4kwbX zZJ5LU!A<>uE6`SE$J|j$NL*l!FZ*uYakOFb*-!>e+JtN9PNLmYXt0h)5(a;rl!W7v z7FbpOU{s!F4^tfrN*s}cgPN-e)D#$6m*KeFY+3y5=}1>1wHwZf(rN zS8zA!q_xq3L9HQBVZ-?Xo6FhiY&vMZih?^Z9e16;=qcj{X4%$UMt!pp5jgKuS7*1I z&iXuo3!XY_iXgfvl@46LvPt@NENNxzl)l}NzPvctvB>Yvl~GE?COm^YyogocBGM;4 zCl#o4tue+fKK&jQN71X|9(;_JmydMqwyhnM2BzR%6%#n7;y5N1oKSHRA6Ic7?&m&R zEz5OWTN~@v-M!YJGcSTq)ZhXBJy?V1s`w;6rQp*lK7-HJ;B)N$d=0Kv@dZ4j;){5g z9bc-!l?uMB;w$*7im&180=0P-9acK6d%h)4_6-#m;bH~fRPil*Tg7+qT?OA$@qPS2 z!4FmZ2tQ`%Yh2%$4g^%+Z;dJViHe`%5t^%tpW){!et};KTzuM*S>VFi*Orb7@&MNg zoH123TQf$QaZRA2aifY~;n(u<8~S^5edC~t-{Mg!uW@6m_x3x<|Mz%Q#UJoz1%FZT zH~gLEk{GIY_FDVv75qcRKk+YtC5?JV+DMJmj~n{_`oPlbtsxKQ-}sNfqJmJXo37y= z3^I_4$MD}8{BK?uEj4&t#S?f^5m1E?6#|#de)wP~CmX$I%@qQzPZceh83^)$z}&o{ zNK0iV(b9(I=!~H?LzeC5(_N0f(@Y;^SfO8Sn0>pwOfzZSb`pL1FadRYhu^`&59@BH z>A0Gi(&>S%P32gs4ap2K=lUWm;9CNu@Hj;ngl9dK_rom9>0Od`L?En< zjY$hyS(^9u-~hy}9Mu?HS;pignPZllHZw7~A3bepesw@RP={qxQDN6g>XhP&A~sVe zl8ln_qbE~YA)#qA13q552xP$=Q@EtS8e}r6%k#^RkXgvFY!YiOT&IdW-Dk3 zrP%s79gZ%wVA?7oju!R&6`(p(k~Thd<9{zWQ9q` zkX2i*2rRPb07gt_ogRNadL#-t9NkPSe!wj61DNt2>&uwAd~->eif{&oMUW)gc3MQUlAPn{u7|j7oLO7oaJd5WlvqtO zlCs6~46r$Ms5F8d7M@x0-TEwCo68j-$oh(8pU8#(ev6~I95AKI&BjC)8jMK{ki6D7>C*LlN@? z&YC8WQs-gDoqZn8Z zJ(cmw}^$Fa<7R&EH@g=%8A;m*3y+DR-IxD}Bj zxOr_|Xc8+V%F5R8N!0H-hBI3uiz6qoip|yWh6$Wi7YbcFfyVgRY%dN^po#zS=HR7; zBNJFNfpd;xZFbeU1v9&X0=97V z4odt6e$u>@tuSX@hfX|;dPw1JTt-A{Q>@5pjje9_(sZ7vQRcVBN*_l&AA9oy4a^M%~>7K4&^YMf!LXxhBwH+Q+aVeDGu zNfe!`VQm?%Deb_ih=%DgJnRGB%~ExmO~bBvdXr0Nz0gTtX*dV@&Q^{{w=BPI+6<{a zu#z)_%75ThUl7H`bkT9^`mVpfZwfugr3b(jZr8Y*`=WAz6Fv1Ps^ulOUN5w@$*H>p_QMq-7b0-0iX%sR*OGzizbJs;juq z5Un`ATjd2)Ud?!L@|cWsvPuo-aGoJ{x?)Q2k>U*DgNCEw0a6-1Lte#-hR;#Z@C8;G zE*;a7+rkuw`lB{46>A#4#6uND4eKbWC~J6xuQWVHMZ*R*HEc=ueGO0WHN)E3t=AQ^ ze|In}{a37tzZ-M_!`#0N?kcYumT7pLZYs9txSjGhJzlo0Lk9Mg;nvxR4Qh6ayPp1- z*G*4wceUeS(CS>Q*`6@$DyJ)4N>BG`xpzTP>%|ExpuBF_MxDD1xBCKiWj`58csI{3 z>K%ck5%K6~6hJaOIq^uIXro-eio1ElVT%X77XTAU{cMuHFfC#7_F&tj|8#}XQhBHF zAiuFzF3E9r`l%qytH)Zt=lEb4mXG;5_dJrB;X?YKFmj4U-`)trO0PqGZo6Ci+kz(u zGw;~KppkCZPw8C#KRJ5p8xN$~DU~;N3gykx3N>wu2Buiy#6b!=dE#<=3P!^fAJQ8v zLGL#p1R8lbPwNG;zQq7}fXg$PU%+Mten)6KoCsI8m4s4xj)58FIR>A#!!FXAfI{mS z1;sH=*82oCPM(V$5L`l%EP}%X-lG(ZPF(J!Vkv|v4)9rN_T|8jNc{@+1tOV0Fm!}y z2un&*d5wFSpD}y{Ere&C{aIz<2qSX)m^~UoNuG{pUt@$K#ySy6SIzA42+X;Kgxe literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..267433b19cd16d1d752e2c575436875f881c8800 GIT binary patch literal 2399 zcmb7GZBr9h6n-uQHzbQdKmm((>kB4O*iv6A#HtuUumLPl6l|rJ%_Xea>}Ga1(Da}9 z13LX|XSC3ncG|D~75yQdPS4$}X@ZfolbO4-=iKw0=bZc8v-#uipMM2#6{Q%4FsWcF z3cVYr@rhif6?_`Q6W*nd6mh{|?;|}J!aTl2=?!_>V zg(&XJ=c0lo1rHcb+%#>|zr`??%zDCb?7U^}2;CO`zT+14U1NtEzUkPWzL;4^r`8!F z87D6odb6f2Rw|`!;XdNq7FiNm$KcjFcTM>o8YBL$=`m#6fY-AaPN~H0yr-9hgw_{o z>2rR?C}wKDG_fvQm4azATxf$UNi!(oTVYgu;&>yOb=-o!T`3k#Uk{V%A#hIEdEus? zWnb_;u3OwL=sDjt?LtuZ2`_LnoNo_7UE*$m>Kt(B;WKs`vt9DzaE6kcM_N z5m2zAVigZne2Fy`IXqJESj9S?Fx);~DfPqjt7V~kRnHeCJy+)YcF34vdd%2xDw@G< z+wrxECp4)OEj$p7``Q=}BD68Xu((;8Qt(v81~wHuQ}GqPR`DEL3cgXnkyjv8?4ZDK zr4Fn)wpD!>ddGE2luT&Oo^VOyR-T}DRhW3ea4Cp(wLor~Zfx3qpIQU-?e2 z_@?EX!lQ{~InD0R>2CbnDq4t_59JNl)vSs0UbP5coS|QV< zk5Yr5$Q!~i*xcQ~N|p3AqzZSQq@a0w&vYHTL<5C#HNB}zwk_O@#l1kUS_|BZ4FQy6 z^k|MoKh4sW)wSihEW^3R;}6I*ZX}@T7Hx0%z6H14qlr%wvabKA>CFX~p5biM`8UnV zbc*g+4=4$v6J2(4%6?J2s*0t}B&`~)^0`2`&t zor%ueYedE)uhI1?i1>ik1R}Kd(f$Pe1_*5sqhvW2ifmh`0mCinfAJPB4bSD0F9$?@l z`X>^DZ%scynLNNLNwyP`>=fbwl`blBlq{ENO%kygqIQpn&Eq0{kS<}9JkOB|3K_3a ztQWF{3$%+#+O%_wO6UsqCn-mYtZ_vCLQ=u_=wK%~C&<)+k73X=Mqzj9&(QXrk$(VW C^0^HF literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0fa3bb6dbc3b79e8f2ad18cb944d970b6938341e GIT binary patch literal 4448 zcmb_f`+F2;6@Dk#WM(%*flUJ}jqL&@_b^JYBovzFBGFBP3DAbBIN1!FA+s~-%xoak zd$sj`!7H_1+ltm&1!W<{V!gFmtJYip0DthWQ1Ja`XOrC|B>RKUlV>vfedjxu_dVx) zXI{JZ;#B~5;-4{Sc(06O3f>pRF6iPhAtN2bBnodnF`UAjg3~cn;ZYgyk6{x&P={K4P-yy)5c_ZpAHhe(smBz2Ossrd z#^W*Eh9?w!Lj3<^jLJWy;M2n9XB2!^EPhVG=M{WG!50;r5er`uD!we^D>A++p?0rn zoBlotO)V+UNIUkVWga&)+wf01?zA?QKCY*I)3H76K<_|z>k$c&UT4yfus&tl#&9k> zVYr9%35zT7l#|x2Bf4vf-{E4!pE5lO!)qvCu#$GNS>2xWw5%aiYXb%IhwZebo7vvN zZa4j&v2q#Hmat|mW4+_ zKs`P^S|fr*Y=l`YFn-jr4S|9eI4og%sg;$3B6GT%q1W{*gcks+&l#?St);3A+c*6= z?Vu(0XmH(3@D{Qnp}SJw{ka(N!YM7L77mwLXD{SCi+x-3*VNor6kqM zsFd*?72n18R6LDmWIU_l`#2}#2P%Gu=VUyk;zxL%KCAdKUZCSDeuAIMIIrRYex~B* zcuvJd?f!6StF_2bIAZBZq8bk9h#r;!VvZX|mqv+Q=B@9Mte?o#m@{wQJdQYatDnHIZ%aN%_c zRZaJ(_!IuD;xBkZ{M@bLui~vf*Q%L-P)&5M*T_Dw=s zlCH&8$*xeLjU{y`Az7ks#h%Eb(JhlnLW(vVcicjoJM0-Fwlzn}j;?8Zig%S|xSlp@ zWSCfnd!Vo&LCqNcpzZm(oi?RwjtB9a(>lx9e_pGUKf%WpE)OS~f zh?XBDM)aeAQMe=F!LsYLtjBb(74d?D%QK5kYO6ab`h{;A!CZ2f@1!s`JaTNHr}xm{ z$gr43mew_O)`|Oa$nZR3$g8mQYH-x}Gusvf$b4h|pbNe%WL8y!jY7a;5n zr=*RHak1XV3|}B%di~iMpG8*P(#kSxULlHE)6bpO7Id zXsdK~W8xZ*`R*&S4oE{ZZNtS<$~zN zcsEj(K?_n97sryeM)gW?rI|KUzAS}DCQfhy?G|`8ECRmRU@0H%?DMez%UK_X-@yyf2o}6N7JeN(r5%?i8o)W&DPhGf@y# z+QV`%Pw_q}rdT=cqRxi(EG;&+3@%TMMO}*T6f9EhgzM;&Y2EX&jh}TIzxcq9GD*x` zeD3D2hfu>6U`t#3B}i?Nmrylc9j_j{h)7%HB5KYDC+^@gj);(>{8ql-g3V~;_apdm z7o5jkxSPL(#67rI3<=nSu7Z`SfAegNlS51U%cvc`3^@;_a~{zubVU-8SFx`B0%G&1 ztHSw2q%#k-t0qyC$GQu+>Dgd&eQ`674PCW~+Iei0a2D&^zu# z&3QDO#l|bxG@huvgw0*@IqajoExfywg7t(lj|9y}6VX?&K2e*9&SPs8o-9|Hh+f7m zU2-Clkm*%pu=|z;g9&*axAIz55|JyoZTu3F@ojl*4?NFf2Vdj2^U*$!of5>aCO#UJ zJeuPz!5jTm;;rXU6K@mS?R@0Xkw>RMJpzHcO{9S&QQwYw+)i|NlFKIkYDF8`iFyb2 zp%eSb=>Qo$$WsrKmv6Ejr;KedN}^}(Ve$*7(Ia3F~~VDg*P!I zHDfqn^fXj{!dIi4XJwwggXi~wpWL*+pE{y~$s*r;>%jx$S*-O^a}{c&9q6Yw)u@*m zXy*W9X~Q*IdI#eez`yWLYObXZZfN68jM9f8+87R^tq$#v(0)OFWITco literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..109ddf0f492f8c81fc54610549ad787ab5600630 GIT binary patch literal 3803 zcma)9`BM~E5dI!4JIgWz#d9_4sBr}Z#yhwe5=D(9fW-9(5|3f#EsV_0;LePSxf9K4 z4s*wxmHY#mDnVk!GCw4#%0H4+#XrGHrQhtb!a8C3>ko6wivKzXr!JAmKR)$K#lX z6EU0=zo%l*#P6UG(qk~<;K)cAs=+W!v7C-0fe{H-94nBGqYk#fa$*>b;|y{!xDq@G zK0|b;X`5aLL$aaU<+@`VmYLzI&AoF@ZbTi{Gn($1j_s=ZJNLCW9$|=dItFK`>o#rP z>t_df?vOTU(VO~iN7t+)TFw;Dg_jX;*mN0s%YYZH=uS4P*@mmSo|eg|`|{R1EzQhk zoLpyqx1IbRwfrH|W>{MWS-8z0@$+2wJ@T@xq1(v~se}H=i0P>Xb7}!N&259{+6TH% zYiBjp((EBM?d42+D2P1j2HOm4%0m!OT5gCUUl0NoxUY@z9K*8dP~7%RZ%pm8#2$HF z>k$U`3M4RWEE8*y#exPw)KMBOW3OR)eFegryD4bZ9ckNfMh!MOZBFrVbfz=`RJ+{b zK?yKynoYGR=c?%`71E!li`IA^LB{iVLB@+>c?mBw zES*-uGm3^xCiTOvHpEkkno*{Jl%2MgS zGCsr=86V+ehIL83-|>~K?|RCxc9tu}QdK-hF&srSnpVn!j8E_>gBlXYY?VRDlkpio zm+^&IlK7Hgdk97t7Xi)pD@15tmGKq6mhla~C0~+U_#U|J`nv9NH{)Al`Seie!gYnZ zjX`nel%zrBB;z|=VW>>Rg&9Lu#&JO~Ix8!9s&%Xq}^S@w7M1z1o(*R9qI%x#~eaWV#;D?a#kpkZHhl*)(l!ofCelp|MQ0{T~#uHUIvw>d|cSmtx*g z7O>c83nf!fCA@7R%!Zx6nTnLP`+hL&31h5GjHND-FO?1A@)OlYM=2c)EupBT87(wF zQjd8~{wBe&kQgZyBngp-Vo#%UMpCmJhN5JCtQYi)gO{Oa#yw}okZ7M3IqaAbd>y&h zLwCijpY3x@+oM)b9!{G>;`S$Qic_-M`DwC5SD0w%OTn{I?l$^BhQcyha{6c91caHG zW*EUdVmLl$izVH@eR>d-F>!q@xlcAym#Fne4LbORQf1gOXL|*e;0h{H7J6x1Vl{m_ ztfTJ>paRrPu%6ZideTuvZ-7-z8z#V-BEO)bzp}nEeFKrEpHOuJ(Wb}^NY?|!Mp_q> zLVjI}dircgU>R0oIhumE0Tec%nVtv~Eodb})TgmAZ;<_s2;#JNcf%dTdYf-o{eZfb z`s$mAPoky**Ka}|M{RRt^CTXsKq``m{EE7(Sl@CB^ZF++zrKDP3uv3x`h~QNW6@0A z#i^=9)gJ2CKZE}{*W(2mP^3_qd+*YG$du?xSW6aQdO zkcCX1-(nW-62@j?pE$=B!m6MQ{)KIXSV?w&Bh)s^$pEfk2U4`>;XGN`i6~h)MRqzM wk*zMW^aOoxUZb5|*o|tk2+Dor9+pVha}Vtj_TIx%3HyTeNwT<~Br4GL9{`Gf^#A|> literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..d4e979a35350909e5d7c52ca70dbd02b94dc28e0 GIT binary patch literal 4064 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..dcce9773ce5a1d87ac2e1965d07cf6d0f0c3eeba GIT binary patch literal 3578 zcmbVP*>@9F82{Zg?WE}d5|&a$n1Y0~DIGyUZ4rUcO0g}qVX+{~?c_EcI+=;H6zT>p z;J)v;f+*@6oI|C0U2zn#fS&O^TSBpo{FQ3v1c15r|iapp{hsQ8bi+$K1MF@{8I1t5L9E{+Q{5>oe z9>JjeHKbT30wHyVBFIXO;Rwtqj$kAT3pu&ib#Rc6;E4#_2s{OT6f1C0?gkNzDmWTN zTv|A$U@VFz9F#al6i?zQDfDy%&qVO7g5wHKFw|@`ZPVYx5KnY_!f@=2Wey457XDGk z9npu4A#V7lV|)7cRA+nB9)@tr$q0sd-KH&igWRBSckw}sc4FO*!L2>qHRXG0GwctW z9z*{u;AJa@lgn{C8^;f-b2uDB_qf z0-u=PpXhentUefwjF`S&GO3q<)56XOw|#&25kAUwi`!W}?YpL(EqGt!6^LfSFbllkO@vLam^dYShOxq~^+oa&6ic@$=!OJRM!K(^hQ}H@FRlI>W z8S1A}+8US^Wl1uAi(ysVD7mIdG*8O~p05q_QK4~PvjnHNxTWH4yd#%)8Rlwn!x-i+ zm6ve6MiuYjeH9;|lOZt`%;2`|_}ZY*EXU3YSM!ItUBLSgA5nrjcJA7%;$!(dFK%?% zloT^lAkwPf6BVcNk%CWEe1^|ee1R_&e5K+H&Qe&fnTlJ~KtzgL6zR;ECXSh&?=@16 z(|LZBYW$%acW1eQ{IR^yi;2<;s-?)N_!{RJYCG&qpX2(R?4@o2vaDW$CI9;!o?+N@ z3t&>Sgrnda72o2liu3r6p*b!FoS>M(V!33rqElMQ(?WnVTAWN*#RUbb?|%~b-xG$R z?Pejg(w5=}M=& zcJ@*a=PM3Z&yJOHEQh8_t?zQ%vuJJ>hWpeGYHyl8;25-u7M^h~GStZl*dsjI&J2qZ z(_!Q-(K-Xq$(KpWv4_lT;BtAr(C{ebwU-*W$Fx)B=A=Ps2|Mc#Q=$`1H0fw112sIK zCn5}MW@0dnRB2$)KwX;Xn(q3wbotbmiKHATDj>_^m-vc;*vUsi}LoO+`Yr_`s}yrR;lGZ~T%f;jOIKf>uHT4OzT2YTa0@8TZSdrKs$?zFt`u*(;ETe0kn}3hIVW$ z8Vemq6>0!>D)}oSy)9R&&thIOR(l!I3Dkvfp(VVoEqoE`hU$j!IOZ&(^LX-S%pLd< z^J2G+WB#J*al~Q^=xH1a%W4;~sH}0WLSylDHIn4j1nNU{mp3$oV@t--@QI{ydl|DK zd>MC~p1gM%OUH3%LwEwqLinx1&~h>)8PAVtQ>YPmV*#9yrSi{MLC&m9PT;O8>^+Z8 z5?D1^AWj0S%L1!NATe2>i3FO<0^ti+X^kU!87&i76GAy?ttDnjNlu?aj7w{=`z$&<`zSv%&w%JRdli%NhHui|9bSI1!=V60CXIuf;vHE^g5N%hlFy5s^BbT z{0GYSCCd0X9-(Rx!v4i!Xn;oW4+mnPY>u6K4 zLax>kJB0^nkIAYb#LZM?)$BRK+)CV+vLi?lb{LIJpaY%c!NY`6kLcg1SFrsbY*5I~ S+QtRzG)*H6?4aWi9{CTVCk+Dt literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9497428f3eb9235893bd6b122f3ba1f8aa9db50c GIT binary patch literal 3062 zcmbtW`*Raj6#j0TbklSz5azMZg%7D1}MJY zqK^Cz&iDt=83O3Y_?t8SO^oBYn{B3#(A4plyZ7F+=ey^8=W*}f|NQn8z-jyx#8FI0 zxDdb_t?0#MD=y-am`#b{vV=$g(?LWLYeN8U25|*5Vwi2iTZp$Jfn*RV%mr~3^Q}l@ zLF_Gx*^=0MTf#d*bmCe7*TwgSfO$87_r&6Tp}H*L0|_ca%LUEQoJoehfw;}HrjgUN zJXZ|v+%~OMWhI+evyNsOwsIvBn;2YT@I}lVXV@3l44y0(Gu&EGGdk^r;$~LWmsCp= zYj4x%tY|jF)dt|TQ?h2Us2Vw2u^ly^S7O!EW2Tkm)4XUpJW~B(f=n;z<$`7~9B%+F zEN77T9iA;aWaznpxM>xXOnG%xa}@7H#RE=rBgd_Y8}Xa!EmhG~qoAZ6OEU_t^DVY3 zW_Y%JwvW#1}E#Z!gH5AA(8F%p!c_-szd?Mjf8K2>E8D9uX zz7(^s@HIo%b~i4UHJwsPc=-)OQ(sQTxA;!R_qfL}9PZ;QsvXX7Zd5JImvwzDtlG9# zFnEq8VKrQI<8(~M54b1eN0Z#Ku7mrR&N9P&d*el=laL5dKCb={fpP62s zPsO8zn}{YZ3tY+GaP?B72h6Ufy0?4tfOz1vsHGAWAj3%Am~5|Mug!b3C)Fa+eu!w_ z{vZ7iaLnpkf?}VsOf{EPZ3oBb&3BX@hCmbO>Y_D0FKCs8pLT$wLnj`A4f*~+)3xSM zbNV5CL+kKAM9YxxA*2Vc;&B=~NdY)WV+TUC>OmJlcjFaT=0f3B^wEky(T@Q-h+z;z z)dSfqn$beC`zQWHAUXWh{|okwgjydX_ylcDc<>l<1?|JWQ%~?h6UKc#zQ52uvW|UK zagUEg73?4P_xQI8{1qHnN9b4g?}Ogo{&gIxprgn4J36mDLRYA}f}W8lILttk(2F!w zaHN8lgoDix4$hKWz!7q=7j5K1C$ZHfGpvoUh#60M>bK@y|%);)>qI7Mu} zP7jGOy7bTDXPk3MnXI~7Bjr9$kR}rpkoG9C@28tr!E1DWKfOFo5{{41Q-pPzWM}Bl c4)~s-OTySQ^h!AU4BZmW9U_qPBqWyp1ubogmH+?% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f30950c2576b7c409970e3ba99466b0e5bb771b3 GIT binary patch literal 3503 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c4d46844c4f245c4efaa9f628d7b7cfc7e6c3491 GIT binary patch literal 3495 zcmbtX+fx%)82=pz*#JvLluN8))QX7WwpOVI6fr=>h6D-NdTHsBoP?ESm+o#r>|J}Y zH*4?q-ulo!>x@y`sndr}o#|u$mOj)O?DRX?kU@xqPG>S_&pF@ue&78&Cx86&(=7nI zaJd3oa7aR*4~NUqgeS@oM!%Rv#1NG*;KPv$3?fzuABHM0jH6SUHa4LRqTz5y|@nvvCYMHQp{2k#wy^4=EEuR9j}BA?!$x+hFF_|ZPJJ5#FzFh zA8ZMZgfxS0~kizn5%qnU=S918WeZ#~N337HAb zup+D(Jd&Om<<^ios?$zQ*o>?CQPtAKI=AU@#x$GZND=V7l(;!Dp&AKWu^ly;RC-<->lj@UtI;9y5n~H!7%^4(qn#a=)DY~aQY+5O0G(A49IZ95Vk^_!$ zgQT>d2%l1?R7F>floE3+%}8a9_u5%9!^Ywe;d?zB3_>*Zgd3QM zI+0C+MSi102A`gPs4C{D@$r6jGMgk+3=*a!OjEruRK(0Q1-n-hDb<*hyEy(kgcupk z*ve47P$WZTQe=#)q>R&OlQ1LW3_4{zFNPQJB16NxEV#$-41uQju&t(eFrXv@^RNOP zZanr&cuB^~ctysmI4j|tjMwnGj5qM6g!3}q!rKzwk?}4%$u=49;Q|>b<9%F|@PUjE z@sW&=g(jciQ%V%WG`Nhzm;EyPC6zpa20^X`Z- zYTY`wY-NzAG~40UA$Nm8PI0Htpr&rbIpGJJw-#wV_k*J5vy!mpBB2_jFWJ1eC}2Jx z?`0*t-AfyFA4Y22q({g!9F?w6BjtuH2hI>J_^ zvbQTVLC%#e{`I4WA-W`^&|owG)33$Tz)Ks(xNd~>Fg^* z5dehMzO<=%KNVu9%PHK`)!j45uy48kE`&pB$bFHcUE#j&k-=!V$90{1jfpozu>{U5 zS;$fDWx1L_7F8#CGSoFN)YV6QL82b+`t(4t=UHA{L0iPbt+ZK;UUhPkDxIOVVDJ~J zle==r8G(7XWx+QSgU>PDw-Whk)H2mXT(uo+pcn5JdKLpEVB*H6v4vJ~l+g~bzGd5W zuollRC^=SIQyRMlPs>%5U4ys9a}Cm!EaNsB>xcnZMPn^$Xyr#e8qt95Sy~nft=K^; z0)>KyNf5&$*y##ncTtLRqTSi{D}0gdx5_SKMQcs@4OHAjWeKj_fSf_qcF)e6c%TG9 zkKc0}RjpUC!X^7XM9QE#SmrOgmr$0$%B!gPA$xk&-02Kf2fcppZTMB`V1QUWyCGMo}b}Ab{%VK9?W3vwwqYTK$DtA8vH&nTTep$F%vv=JZ~WxUkc&MQF0rwmR#A0N^({m0_4n16sOJP&L-@p zSsO*^0Ihn+sS$E(lw5h7oEgWXNDy@#d*~gt7w6E9^XR}ubm9`a@Ebz-8{OHkoOB(Y z56d0m-9_P`AdrkUihmjY!efL~N)rDhv>-er^(J9<5N#Y6u#aY5@nXY%l0a`QOwox> t`rp(=IL(k|Q7_@(EE*+*X3-#_d-W`;>C-Kt=Pqh#q#sG`rSm0t{9nZ-0!#n^ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..18d5a38eea1d1d9eaf75ba527caf5d457b474d06 GIT binary patch literal 3069 zcmbtW`%@EF6#gzGEQF;h%F9{_+VT?EYLyBof{|2cNKyi{YFm1f+=P|QZo0csvF~?n zJN19)O#c9xF={(?`derEH#wc2n=Ba~kDlx3z3 zJtH(zxVJ5POx+$WCTvFJJJZaEQYs5-%W0~8! zTzi{7cU5;77HWW3PDxq095>UB=D0kQ(Zc1^!}EpMj@-43@2-# zOVb$?aYv*IE?IiMKVsQgEm>Gw(_PIwQuBZl!b}T$;zr~qzr{6!n^`U4+Pax7dEela z#0)2DLl9To&XV_stALfv=j*~|IJy-|n6B=wYjH!$$m*7SY332ZFj2$T3X|@7UU)E` zvPAR5^FjuWVRXM}9zE|~Lb-ig7-{LzJ-{T&`aIjabawnJ+!YrGZDHz6jkUNf^ zHAR{xK^{!;yvud7N5v1gr{YIg4Dr27)eEw-ncB6hiDCS|LM94HuVNU+_Nlx(CmGJ} zQ+HbiQZ;i!=Z>K28ma+*mZ`!+UJHW!=fr{a&2xp2A92u`s}Xr26k^TG|Nsi zFC3Y~3~klas2h(~F=9*8UZq}Y2;0#XL{@iPVP7q8P=RHIJ8M#xHB*A{$NL9rw1VeB z5nG1{Yco9DBzwu{v6_IDEZwe3c<1(Z>N$$kNXd?nWy*4)eq9ck2hI?y#$XMfD<|zv zTryMJ+ssP#(e<-LnMkR6C_Einq^w(s#uit?v8Cu0N)9r5vmMX<9~(DmEVXtrPa)t1 zOSa)l`;Ub*TDA+jP`dUt2|!pAd%IfUshT?7bn`RwmuD6jF7B7_YB*$uIvZV{j?7+J zS%^hu$ivWdd~te~idb+~M)QJy2- zj}Y%W|DzuoU90?}px`HMi>FiEanVChzixUT0(D^WUZn8^ty1vQ4$wV#>JiwW?+?^n zt8cAOJcMs>1OA6-81y}a@}Q)6lE!vY01ngGhE`g2p@X11@p4I4g2F54r4@mq5B+oy z!vF@$2eLWTqk&}iPyLC;=+IODFE}vV+VmKKCupw2gU3*dXc_XId4d<}Fz)N}{e_m{ z4IC(oyL==n;^4Ty%fDUVFXGS!T7ND5ec1ckzkwq~v~~G@NBgx$=xFUMqHFjGjxx}s z^+g(rI99|<(!qL22j|Ew;21f09L?lHJF(S4l0I^4h#Wgdvr%$qidHiiMie9T}?!ktUNAkoE|%@29(0!>e?DAH6QL&4}X99QuAGju9Ae}q8BNJuRG3*7sT0ssI2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..9379a2345d64401b3bf57a2efb63c142b7b52993 GIT binary patch literal 3856 zcmbVPS$7;q8ND?csmC)dFN&848`72?Gm4{`1QLO*ELbDSRx*~177H6A)0!zsZMC{5 z-91tic1XZ1Ng!Z|*$In*us9-&tpqs9D~~*I4!?k3zympexz#-*jTT!@bdIX3tG=yn z-S4ZKzy9yFzW{gue@-HUK@F#ph+%LGK8ztX8ctwD^`mO$v}(o@_(%e0)bMNqA5Gv~ z0v}6YTuGfz;^Qz?GohM75=BVWOr|h}=@cwnNMQ!HYGyS!Nw_GfwI`DB;47m+lFj)9 z${OYpm`|Y%PbRRS%s-{XKd}X$#HW}X0p?TNwW}GuH$D<h z6=aFhob-G%!X;Pt#c@D|uJ-%|bI#1#rZbft4m``5qEU@{YE>Zf_N)n{%tAqyf_|q| zrh4IRMzcPc_L~O~ZCiy~gGY-xJ3m@!5cN|JitRMHI#Dh0MFlf-S(@@5U!GX!FeE3hT>B%Otfj&I=- zx2@ybxTNDdcu~h?d{@KwbbKE_(D6h3NW+hH`~)v)_^FPc;pc=%$1iY2$1m|KGVj(o zUW>SvRvLb-<7NCt$8YgF4HtF%9#?g|qJlQ+w`fe8bCUa$j#0Gy2_~p4Qe;)qgn65- z=IF4bh{tMTOe_$FMO+eqg7FVJUd10ZRCHX!bsbB}*Zn!uDM;IvMFK93lIIqr?;Gx9 z%^Ne!FzX=CkP$jw!|MV)qmIYIHsx4PQQeb%iPcPI3=(}4BSxX-mFE5=aP~IAdj};- z;OzwIaR(mj!M$OO~u1ZZb+*u zU}v3hZrTiTuB}`)o$1Zz2gd|<*XR4PfXZ*PRN}!4bfoJNd~o7|ENoOXtNBR9Rr1w} zy1vM+$Ttl2_K;lNgL!t1$A@}*2Luv<8>w;!>Gj%llM39tJI`y$^jSa>)22Ti-FDn} zKf{+#luetdx@)8G&kA(jnjzE73!67bc1TWHK9A}|G{Jho3#Z@Vl}4J=^HGNP&P;I= zJ7}v~`c9gTIi=F<$fgF@rhZkG_8z=-BsWncm@9D*vO8;thdd=?Y@Rt8NC!Jt_`5Ps z_^o9!?_Q-`BRN$y9??K}r}Bh&0C6Y$Sbe-zei4~E-gbv~IrE88G7EgymbIF6nBM9n ztLeQY-vDmYzlY}%a_NUsgCzF^c6 zJi1fk$HOGhs6JrMl3e@Jx%K2sVNm9=lDJ-bQhT zfet?I)n5Yy-wOA!y`NtXvyZWFyyqIkD;&h|KDO$q4fG(6Uc8^9-H{M~Bz%Bh6vqc~ zgsRMIbX85gKpCYq{yJi3uAyNO@d_GSnkvv1k>GF|=^=`-iGG3py7v1H{AkR?spK>x_3)aL3Cu z!9TSt#@_rU`@;}_`zQN-9V)1um$9p%GkyizI#e|LY>Icrcf}*czejp(fxY}!5xsgH zyDHedggt^+{hfrUv9)mtt%5I`18Vdxfj6-CXj3HD%6{Jx-raz)D>wdexPtc_ZCpn1 zt_qA0f)Kg=9JV&TiMGpVtBSN72OHmo_BM&JyXFUVs;(x9a}{DsxrQ8 zx?Q1uPo%Jf!!bTs)<~!`Yav()_GJlfupy*K1}TmQ_#5vOF7l_?WeoAjHiDNhihp4Y z|HfId2j|3IjEf_bQZ#yi#JPwa_z;eviIQXJMvikll-kj86dj$K>mmJO=%eN-B>#)F zhT~#uYTtjbL&J%;(0&8Q(WIeY!(&`hs~R2$oBRzP#rl;PS19!sTK3cKN!pEZ2c7Jb Ml<&Y7@F0@^2evj>n*aa+ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..17187b01f9fda92e9dbf5e73d8eb5e369df4b62e GIT binary patch literal 3766 zcmb_f`BM{j6#sk)upwD0M5^_w@xnmBtyXOd)T$8_8xl$Y3q5d?da@{?wWNO`T5PcM})_!N^Q!XTH1p-S^)2z0W)M?|*;03Sc*W_92YJ z5{`J$@5NCs?ruOkq74{8OgzOU4EoT3dn63`;KyO{lJH_!+(*PRDwbnnxmPfZc`@$8 zeYoF`2k@X56F$`7xCFHUNu(sC1ts@m9VUIqU`i~SA15%~03BKJWJoZ5*n*rF4~e_w zgAGSK<$ajJNeK^2IK{AHh-b|ien8g;Ei;>Q803D#;8sLeZJXN+(xjSlOp8c&L`^HB zB=ghLnxmvlV}@I{>S(56E0K9`eMS0ihWZ}O(42h?t)ZyRi6gCRlUy;lbJDb?m8p~v z?eZUq^mVt5GSo)QG$*B^n!#iFY?52UYEq}2K-5gB`lxDY;=Qz4>r82+VYG_yxl>YR zHme$GTd^H=a#9hB(&ztm?Xa>WUDsqL=gb#n1r}7TzczdWEAonnW#=R%F zk>*zSebE!@jH>9Wkx>$kr5PF5ZvQNtuCcAgj2(FbC zbSSx*&|tWwirI5;mhdAz8WWD1njTPdu45#eX7DAJ|*NXWPaI~kf5 zqC&Q%xy}Ww@}xWI3?9WWWjuptWju%HWxRkFWxOPo9Z(p8t*H@P&G4?EG8rry9_&$d z{n66V`y{+9;}yIr;f##4c#R~|XBn^K9K-f9lV_c8*rv|QqEEsbGTsy*Z7t(iBEV$4 zg|}tAgLfsoC*ys5Amc-PB;jKjpWssopUL=K;Qj@^WLUk>g$MJRP9ZNK{)!^Bl_&D4 z6qS_8ynZTJawks*OBM!O(=xusHxxWFzQuPkzQ=bGevt7aequQK|9Oa^Yq`P_`D6)5 zs)E^5? z;6jKg^?bQ`92?3iP_d3FgKjx<%glS++Av5_6y0wT9%u6YE(Nz{mYgh3kd^entb9= zOWPS5U$%%wA;N7(y{Rdavah;VBc^Uz3=NK@8n&*AszxnwkvH2GZ&7I|OV!!rp4U^T zB#JgLz->`M7;da2nR;sz`9jt0{)}N-JVFt<1nD@#w(2Gg*cl4GSbQQ9k0s*KUWVqR zNcj1a07Lv5;WbMsTG@3vfr6_!$*DQd@`}J?XupnA1Z8&{*|xWWZSy9PDQYr04K~UU zont%PI#S%AK9u23zd@q|#WP{o6>6)}D3=l?tRPvX0x_T((blOtm# zf-qhzq z*@P%I)1Q<0<{pea*h_Du0&c_Yq!#4^x{B(tUGSimzMbv3TK5H3gaa*?aN}jHs=@h= z+FgOw1>E#L+QNTg%?D@<|AMu}Z{a_%F4o!pD^_+Eu>LYO)Zp0pOSrj!jl^~t!5YLm z|8hAt6*-C@JHwZ;*+cVAFnk4D#x7!OU|RvLBxF0?3JB5Zm(V8c^FY|whh|z^QIGBP z6heT&-hd8lMJHW5=-NqiyKs=!2-!JA7LJmA6J+6W+=(3a;SBb>cV7 z<~d}}66HQZMC{!~)HNih2M0*1hok~B>H_Op{=s?)hdStMFYVQkZk=@Z5ucxepaZ`D E0A1&Ry8r+H literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6db71258b5319c80837b9535370eda38c172e8a1 GIT binary patch literal 4082 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 W>wPpFT*YAtpV&h&hG|~|M*a^s06LWb literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..20aa7e87ccb55e299574c1d3d206a92cab28854c GIT binary patch literal 3535 zcmbVP?N=OE8UI}vc7|nQ!jeEhOeRUY*$`mTXi5VyHi52z@>Uj7Np054?A>L`?94hd zOG537t+w^GYE9MFT5ElY`mH%9l%X0B-ZE7E?Wv4K)+meo_p`_dG7Cd z<)8og%ZC8IfIr8P!nleF4U-zCG)y<+I38=p3^MZ9tX$?)T-NY-9ACkF3*xvE#}oLf zh9{eG6!-D*4NnuWdkRSOt3Rskj-9qB0ny~~&MNxwrM>jmVlr(%j4j+Mr zFpe^oHC)qhJ&qMTt>POho?(ccvt2tp&yY-w2g35)oMY#O>5A~0=P#LyR-Rj-?YV(@ zX*fM};xdCW?BxW*-f`O%ljY)q@MrmgLz2X}XL08;_ig!I6)NGP9WXq$19(k~`x<@_gP*SF~qDI5ImkBMQPDt{fO5(@RddV7m;*b^w=_GpORau*xAB`cP`z^9$xe zd1=WG&8kMT3Y-ycPWVGlj6cPfx#@7XU}i$!b_>ztV?ngdaCBz~qKf+kdVE_Qu*iJA zB7BCfjZnf3?Qq4McH|yet-0b_^lk<=Mvtfx#c*neN7opwQb<^PN)c*Rz%aC1h;XGO zswRDc)?V_(vh9_F$h;X*v#p<(eYh;PsR6j z`~W{>XiZw9?lO1moKZ=Xeig6k_z}n#9h+Zrv1~gOc=Dk?X6Q{?^IqAoxa)eMw85zA z3=B#HBT{Sd1#ejxNk_*|@S2XF;zfqWq}8wE23}Y3GaWz2FLbji|j<@BZ zv)gC-x+-(4-x*R#YnD>lkb8!gU$@K1c_J{RvE@KW8;|JtHQv$j8@$VKASuYP8%(E* z$sEOnj^E;S3I!u6^1fG$gum1Ad;Ea`hL4GZ-7Cj*GqV@c z>Fo6QTqZmH$jroOCNnxUDJ%2lXrl;>mp0tom-qZi&6x|tlW`Y?Of6qU|`cyEUd{V~p`qiMj(rU%iKHd4DzG z$rEj#My1A^BTy~$DvgKKrs~r7;P$Urq(15hKQL!R!45*TzTN`C9eXZ|3UJ0Cz)Yz3PbpxjB-nEB1 z(t_{toW%p8Kbpa6i8-)~d1*^{)3}5qG~%Xc8U`Aum{SL*^(1{2(L@s9M9<0h!FpnU zL&JPyqA@eCB$Uj2Q=%zz8?l~SP;W!)QEsF8y$GV0)^@rI9H6y>CftKKhE7t^g}!Jn z0!2Se`XYFo!ULp|;WR#9QQdGKRGPDayC*+Fe6sh$*t^)1kA5cZmpjUa9a6T2q@=SElFq9{BXEf5G|)o+ zYR6HM+>gWLxg-($0Fii_P7V>lSBcmxNjxGmr2lZ9#Th(@hww7a(f~4u*YHJ}HNJ#* z@Gx%TBJN-~a?1=f(s8%umb-NK47o$f9>f4eLKFT?IA_VG!}u2=4M8C-ui_jb#t1Wq z^MtDs@{@!;M0gkI_B_-(=umO-4!V@yJ2<3bxb0(%LsK!L;t>^T+EhrY;>!veBGILf VNpt-Jjg{{nUU_`>p zeoO|?f@Ba=m=5AB&I$91@S73lyo3t@gmKZ2SHKoxqHd77nOM}t!l1rnT|3N8y@UB%ixV!DbCOo*G-5VTjiVUe2OfOG~Pmauml^(`jY6kbNpU!fhTa%ncIitdYy; zCc}XmaRq1wiC^Yg&LxaTJL8s}QRZ@si@K{6lPSf(Np7aNJ$NC$pf0P5p_&;b>Ds!P z$=B_(OoK{h*ijjRo38GzC=-UdLav0&$p>NBU%9G!BH~iDGsMo;Dk<|til79)$PUB7 z8s(O0Eb>Nx8k4T7Esm+#{DzRgByb67hCtHF*%}|##omRh5#29%kg*>J7@9Y7LipV5 zJnf2%3=T<{m!V@p#-cC=mKe5IFujf@hFwu@+EFunAflurg)ouhMesusOc@rkGTwkK z!I9x2Cu13xBwUuUf-4fcyn}a%IT`QaeHkC%Lm408V;P^|Q-=19{G80`2B}HV_Ze{! zM}AC8tx*nhM)&G??PThW3Ttn8n$>a z;0=3!M`O<|G_9eTro-Of(DEIcdP1SROJVFjT2`@j4Xt!)>%;YH*v9ZJBI2oyff5b) z!oI#Wv@@(>y9eif`sdHSUl5+TgB_urtJoFxu3|U+hW3zI#ojU;LRtq=_enI9-AQ%t zMvy9Qqw3m;$PS{hmsT7m298j@Lsao7)q4j0blobrii5b0L--L-=Q$dJkH)v4kLG=X zhca6?X!Sv2NsK*39v;f|J$dyLf(~4x58cD?QVw7{>K~w8!m|&sN5avq53ohTvA-xj K)lc&t4E_sqDK0et literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/FactionHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/FactionHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..bb7ea6c9e5139c2c062d99b467081224a61d6eca GIT binary patch literal 10026 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 ND=_j)7%!n;{u%NKY@YxC literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d4617db4fbdb995d7be80dd61c333e1010226421 GIT binary patch literal 1940 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 Qa8Mj^9QfY~_VT{}0}e_3jsO4v literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/ClaimableFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/ClaimableFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..3f0b52fc632e43687844b269db48bdc80194c5c6 GIT binary patch literal 8158 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 Z^;GpoI97)rWl(8A2>*3{9>?x({Td{72wngH literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2253c1c751c12a2602611e6bb56890a4c544354f GIT binary patch literal 1322 zcmbtUO>fgc5Ph4tF-aX73N7V3K!AJzrh*G<2}FfTm0Um+Rf5~b*{0iWypg@3${&IY z7Z4PQ1LDk&LW~`&DpVCwYs=o5@zdLxH?#ir`}+?74{#@s9LfdQxSEHBYc{SIC{nR; z!^TY;w-|C}Q%0403=3W)d>wR@+z@Uc%#IGX-A#Xk`$p;@a`y}~>pYaPp9ZZseFkSG2t>G~ zcoYe8A00i1$~;vw!TWtRWOzDuF#{u2GU%=fv#C2ast#(XJIJHp zU=j@nw=v7`c+3esOgjgsafT*+Oqzp(UYTbo{i`)Y`F~0>JUsHA4Ee4wEv2OBFw9kJ zqfW*(x=UIq>UKP54B2XOd|ICO24yLB8P6=2hQtS=$)3x%bLN~c=bZWV`^O=GCvXdx!L>Z{n9Y-S-M||bZW?gQ zsM|)(S-4|io}upa_GRP^TYT3Eg{S?2lAFTuMYOMj9cSomaxaqF51msdj-(2mFbd-2 z#OZ1!7{)dl47nGclD>>yF{Dc6b%u0R59n~BDSgq7-}gnZ#``9GvZ+0;)_EWeKK?o0 zi@3K#R1!?2845ie2cD?Q;wtWMxozExy3zWSh0hO0CQA@;?(&e3`o zXx&+H#*El_$YC58$xaaZfE0N^{X5v<&%#%XeKB9^8`9~{C#2sdFiS8qf)>H-2<8Y{ z3H*#S)tkaJGW2xjX|pm|z!IL4eTE8F$fi)FdRbGIeZ(d5$4Dkgt|Ir&!ezA1D!MV1 VL|vf>P=#sIcS#DABTp8^+#i&>{#^h7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/PlayerFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..c4f1c86d45e18b5cd1022a772592c39634c249a6 GIT binary patch literal 28475 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/games/EventFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/games/EventFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..8509a12128b6c8e4a67c6d2dec126d5d34ad73f5 GIT binary patch literal 3683 zcmc&$SyvNh7=8v~65=R}idvTsuaa6o%PtN()_j}*xdAG^m|NQYMfPVZCK?mXyyo`ic zO^M->*iMIWIf5%lhAlGzrad-O#4Wg_KsDQB!%Iw8hP|nx9pRy4bsi0c&0_NjMWPX=&5QDy}B(oLhJR2SC01x?AS1+AouRv&6Y7F3-dIo<1XJ5$^+rN_EmJ~v*&eSI9d@=}4|+~6 zrS52HYiN|*nv#0fP_1&21PAMotW${y&E~9Tjp?O@yn1iScGg(;di}oY=N=D0H|P>V zZg?adeo=iAHYF`Jouf-#9}RTJ&0y z`3fYo(ih3JS=3UdTFf}^*xK!@I9$@KSYFi&5@vlJwy0a>Wkn=_r86!tvONtw zAB+f1(0L@`h@S_aX+T0_K{r^CUP~eaMd>hkn5Az^*hs$P4EhYSQG!CI&#pL8W6J6S zYH8;Cn7SZxaLzO|)@<9Vx9rT1>m`d~Q%@WYKgUqDw1t|I;;~_;ek5s@i)rnGE?P*d zx8@ItvXik7oid6jiB(h#eKIVJupwxswG={G#v+y^Y_IPN=gNAX$t0f8KMh^|GVWnn z#yc1Z;awT;;eA$KHg7JKEHV}%13c(Rm}SFKg~tP3C%f{TIy$;E8Ru~!gb!pk>=79s z;v*R!uM`z=FK9* zY!y|blvgd{>ROjUTI%&t@A-(;l$1y?2T5HNCsfkjOi(0{4)NE%{WXRk1i89ZR zgD7xs)jy?M(uax_IjPNo4zgE z51pIMH6E>!^kptUgw;&Oj**1*n@ZP~a*fHS1u?LX|HC@?j}T~r#NzMd_zHL9Xy6an z80}qw6b)3+@GG|sc$MR3G;-XA4cLwdc3?ku?T$FQaDY2LL^pb`ujKw(9@g+=%4@{5O^DHyb=3!AMtj2 zum-DIgE$0*nhpzWoT-5)N4Pr5bpwuZ)sN#Gg_XZtE6dReHnasR2>pmXj}gAHf~K}e zg)ZYcrwZiXu;~|DYO^iXxhmDXCe_xmCc1jv>bY)n)>|srx+X{z4zqT00(r>vdKdkC zlwP?^>}wHOuCiRl08Ws@AYTOd;So{k$4Qsf?=Gv{f5FOiO&yJ6q|r~fCrD$EG=@Ah za#b2RoZ?L_jbV(qG=3%x5y1bE#%a07$c2wn}(BDt2DeZ7{zH9{7=j~5zoOW zgRt#j1?|^*E7(5O_Xs;4RIrnqmrezC1|DIT*hU{?_l;=Z&cF)xPP#?;S z&iDiTQI2PmSW|FDo$+ON&t<>!?Kxla?fd7i0Pf&vKdxpmf_xUkn9-*~2D4f8;o1PM zV@{t;9lOzwn_1k#ZSA?Em%ACvXK*ir1%~vZbfj8hNaklY8B!&;E*M5C(h=+JW=(i6 zdCewIuHstU-sGOtcH~T{9qBWaE55K?r*6w_VLC#+b-g`v$J*wWlCI;M-Gkb13De*A zm1vq}r@rBOircGUT9InxE4%y+H`_|u<}=Z)rlk5r*+zLWCTVy4#z&7@9VB z8fH~_(rFZ9p69h)VX5L0RUfFzhQn3cqt`ARV)B5kH~yM6=5ao@lL6!qy8!^xoMvCb{GrA>5oIG4eqfrnT!@Cc6$Ji#&* zB&^ABsu`3Fte~vJs|MC|xbz=n!m#)+C?%WArdDjEGKR-J!*I4`qwR66Q_~kDZd<+! zt&$syRey$pZ(%G_N31h}R0n;bs(f3#a~*1UD!--mFdC~@+Tp6?+OEgYxAvl3UJqpa zOB~%e$uZ4aEt)^W^?0>NuSfL~jfO5}NPwa8M)ODWDB;-QvC1|;$KaV|F<=INJol3n)r)!zjDJYT%=#t2#6*9b^@cc4kJnH5YlvekZzCZ%rGD0I7ybqIz`zUYlHR#?diho0a6+z8K7hX?`ir; zo(T}f!>kB_@^P9X3}@*^h^{^7$a9`N30$Dl1SV4`U@Ql z}(nkkAiOyg2i;96i);pF>67}K!^B)Sc_ I9AsVj0T3#e761SM literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/RoadFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/RoadFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..f739a058fb9c9fb2279a6be2e676c0ddb010b03d GIT binary patch literal 1817 zcmbtU+foxj5IqxOHVLa@#Nb`L00~jn8{UGb1Q9Sq%cxa8Swk{}k>`8ahrl+Z&f;?)@?5f z?=fGt$&#zO4Q@Z>p49uum{hCMXSiMUMZ-g4|qSiaY z^4EPO+SVhNH|N5LGQk(BFZfGtb(OTOCEh9PV*1*=qigB)Fywn{A<(Fv$==YZaBFj? zW!04@omM$!d9eIKG*o$-vS;eD<#5&Y=%UwtsN^p}biI38Ld{CQWApVIZxhy)Le=$J z)^c}kO)9J5w%gokT9t6E3#Tc(axqp?R3uHs51b6A{tUoicIa+uRwyoQ8pp`rWTkSm zb+_v^#GKUg9f-|iLN}bapiL%nxT(bFx?)?U)P29q56L&D9Ma9G{ z?i!dgaS!tb7ECN^s9~I>d5;P`M9q&I!=ufb>j(q)O;oYOF#UgYVwn0DfQrp!Ta!9s zBk{RsXwHgkb-kce%NN9dTfPo=6*uOqe|H7X{o}yt+`kt3R0^8Agc1J=6Hb6JqGs&t*yYK5r3~$9_@5OR2iA zgWn~{9yK(hJnr~5S9EGL-n!qmqKuRDkq&@iAAQA1T8a832WdBn1ZjXVo@1Lxyd^b( z10=Jwf{vx=V4gHH48sr((oRDhq6iJ~kX9X=8ZT|4Pb2ij5QeaePH2RD7!@HgtQ7cgTJ~e*&fP(gw^>&Fy}VJ)!#Dz1^ZbT@6%VhF}K? X_yoZg2zWbnaVvFkEA=RyNnq?7#rxO? literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/SpawnFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/SpawnFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..d1b9a0cad74cf3763923150b2ed5bd0d6239f766 GIT binary patch literal 1462 zcmbtUYflqF6g|_H7RrKBp$IA}_$cMEJ^;}oK1zr&6-{bLMs-$Ck=J7@yw1w#%cuKU)a+~kl zn*pRi{JGLDf6vX1l9u_3w+mWLyv5sEOz#OpwpR?XhJu!Rp=&{Eal2ubl`HK=AyRo= z*%eh)Sf{TKlx4%_s^ik1uAWfxmn2$mT6!CTt7e7UenWQ{h8sd{NUv@2gDu`7`juSC zaT{i(v$rReS#?@1Zr99Wu$F~g6K-KPqB7J?lk)sShUq^Okd(61ajRle>fwz08XL^DxYstePD>{+0@~V~~;@NUv6gPXmMDy^p-;0jrxW0dXTcFtF%CD0Tlf2!gDKjiY#e_yZ?TT5?TIMW#zj6W;!)Wd_uz>6IkQiVXqW2|1D@~u`dCJxiqa9%6GwcYle4>l^C(2_O zp*V~<#UUgKKS=nDMh19Xz$j&!YmCsE>kX|jT9f&?BP29S+-FJq)d_m5CVhr%fC?E1 zk1WQC=_1_-*mY%sDw9-+;S%jG;|fLnm3dmV;#mBHf2wsR{mN8CU+h@l6t0FhUlNzr pm;H*qcSlHmMyiYc4C`W`i}c46Y%>w9*<-C)T%&Gk1=Bu$<|ns_a2@~v literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/WarzoneFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/type/system/WarzoneFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..54f3807a214fca99a882f901a8b95ecebc8a16f7 GIT binary patch literal 1269 zcmbtTZBG+H5Pr5Ty;6@CTPVIO_*OtTU%;4@kmwmgOhuC#j32kxr7T=;o4Y*;{wnnY zB%1gG{87f)>jkfp2#NhLJ3I62Gf!vce*XIQ1HcMaOSo0W1VXW@1k1>70MUEDL? zePimz%v)Hnu*gtclY!Lh4Eg%}HbcQx9l(zJgO1}4&Xx!| zB5cfOB&8y0Fj10Zm^+(*q1;k&=!p$!W>p>T?XqbegOx^Y*mz(}m0>37YoKoors}7G z4a~xP&gPc~>Bkt^ak{M{M;>4;RM;_cU&zg2f^3;i5U@zl$;3-wxQGhf3`La?hT<)q z23uTMJVxFypFe7xOW+6&v=X7{dyf2BS^ zqKQAiA7z}`ZeS~k@L(V2&Yd~;%<0VRuixK)0$9WPDCUZ|f_XLz1>7$phX-SLh)3)_ zW>aCaSin*N%L4fg?P;?qkgY843gl{jTM0}ww5PVCUP}c#vgJ~w-0&Ug?#e*(JqhMa zSBC=iMyMR$YrA?+*`6|oesExSojvIo?R%kp>X@Uxvcsd$sGj{%yKNPCDh%rbT$PGc z8vF9Iv?HTk`bdxnG%?dJDlp% z>nNTPr>_>UQo<_i5}x82o989Gz?#6;|CqhN>LqECWf7Q3CX~_}uge8QZ))|L@9pVM z6iD7q+N{IVO|1E@AH^rE69mi?bTam07_OmAH>Q{( z1XFyVld<`wA+exlbn;`G)*43T1JO(PNB#iC?hpe9SbHs%V{7v~U}DC@*j~#^3t`dDu;B literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/CaptureZone.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/CaptureZone.class new file mode 100644 index 0000000000000000000000000000000000000000..603f005d7c0974f436b46f0a9c2a087573e0c62f GIT binary patch literal 5875 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class new file mode 100644 index 0000000000000000000000000000000000000000..720fa5eb0ed59e5af68944259f19e88bbc5a0ae5 GIT binary patch literal 1266 zcmb_b?{Csz5Pn`Lv~(RX#3^(Bn$rQBt0;bgEJH*?f?Hx85se>8SD>@BNn7T>r7Uqq zquFQwDC4~y*_irGO7b3e_w=6U?!Er}_4NmUGRg@ESd)=QK}1$WQAQH${Me9?k}0{t z5%(o5aJwlX!>uaf0fV@=Q*YIpFBqP-eA959ecS4ps$&KpT<^U)FnYQXSgzx%XMaY4 zW&5h>jE25iw{>e+ALvfsY*3)W5Sx^XziepDHw|J~ZP!|R4UM7kb~Y68L){*kKEv~T zVMZl|y1Q>Oq*|6^?u>?A(|e_NZHkB?*KUvDb-s0=AL^=2&8k}9Sx&!Fm`y{OmTTyC zTlXwZI$;(ZeMkZ_f3q^gtCnL0TMUc;5Y;TS8H8Y9(S#D3)pzt@Y6QF81Jejd{^RMPl6v2-Ou^2s{$kb2c8NZ!Bz=*> zc8)6m$dZWAk`5rf#JlDQBybsvV7Nlw3R(WhW3bPNoFMvhF5(uKj@uz- z1rqLrf_a&D)ChlS-yn1{V)Pi&5fY&z3!yU?I!Y{b=HuT97ah}5c7!qJv`%b{dF=>{ Y3pnjpCWSx@YosqSAzj5?ibZhmH+rTvi~s-t literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class new file mode 100644 index 0000000000000000000000000000000000000000..83d42ff709b2ddc3085eaa554ee4937612cfa40b GIT binary patch literal 1271 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..9bb84d363d4d05ddd602d1d7ced4dc51c829249c GIT binary patch literal 1547 zcmbtU+iuf95IyT$oQp}@KrfI|Lfe3ol(<};XoZj>qCP~GP$3e1bDV8s;@Fbyl%L{( zTU7}pK7fxx%-T-ss-X?yW!F11=giERUH|(1{U?BDc#=Z~Y8Eo8VyTIxE@LZ)6duWF z$k1eLGi3U@-LtssF|4&6_gL$W1_RUA_zAatZ7+1TP0!z9$QrtBaLeL726o7h_PE{S zF2i~pX*k0n!L(+$9|SRkPVbtw>AzrjtF}FEIF!~r;+oC<4~{#~`o@uN_@-lf+T^1Z zT6V6duXY%cO{d2h=Gvys_eaAnci-q;i!8;qW9U{#cTI7Qj7h(5Qqz00)-v)<%L`@k zw5YJA%XOc>5>iova#T0N_N=7i1{n&++>fcvP*$t)wx`V_e~zI}@}}23pHD)q(uA@U z5e|T1^CIEj#-w=MkMShcL!oV!tYe~z8ZT@*kHBPh4J#TsRYQi{firRq-ZI5dmM?4A zc(0%63g+=xK>>3La>y%CaD!p>s;em=6^7P~x9XZnGQ9i`qTn)2t2fd#ypd1;`3Y1z zxKB?w1DXXAqzq|84_y-S1Um^vyYSCrfz~3OUXwpTd%jjb1FLPFLi!v8-=wt=xEASu zuuNntxJ9;d7>-3O(TRZMTOl&>B@#%K{5I}H^s9jfNPa=$6U8tH-gICs(OQ~BHs~Z+ z#*tDivK(YqLVuK*1jJpkh$gfMo2q?7@*^4I;Ds1CH36^T-W0GTYK()6Q^92tI?Vi> zq9wwlYo${p&y@>1R08x;7%@>S9SlTtyN-=ZJoO6`xSB`kO^*nhs6;#)K`xrb52W6m SA^jBzQB+)Z0eKL#`S1^c+gcp} literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class new file mode 100644 index 0000000000000000000000000000000000000000..227eae3ac7a0dfaf4fa76a0e86fd2da4a772e7f0 GIT binary patch literal 1494 zcmcIk?@!ZE6g_V(>sHFIfeI5*6mAUBicVB=1`Th&Q3}&)W@kqyG6g2c}7}sH7LOv!l=+X(C zl#C}C^vQ8bgUMjjtYvG}sx34sYpV?1i&3!tamS8$*^Wa_ctr>vls!8PdC2g#8gj=M zJD$7CO~Ip2e(=HEcXn+ja(xk+7cX(-dZEdWxQIe?=^S2c)XMv|*yENAk6lewqFgK1 z%1f*Ee$iTJykgMCHWsSuR-IvMtDR}nN46Ks;@%aCZB3+>{T;Hjr|Js68Xs=+pkZ%& z6wwj|Yr71hP(84ZY||r~%z6~KVy{$eXYskJ@7Ugk9k^0TQ;#a_Lz0#IR|`XW))j6v z$8hr+sg>degBtC-!{?qI|~7kUl!p_k6z{z_i2=uehl^%sWT{_X~uAip6LV|A^sqSn*150lBk|j$G@TD465X(uJH2| zG0s`Ijo}0*XNe^DEO@+v7>Ic-# zoTi*2bAoI#(bZ(q+3}Mg<(PVZQ$0p!{RB*AJ1&?9pNndw!HaNA_BB+}^s?q8NJeIx{Xk87`5Q zL&xhnJ3fVeZ9JYR4hJd%`&J4;aJ7Eu^}N9GiHL5|7AOVsf!dT-yugdE3jEL*k4WX} zm=_ukIp+%PcJq#a-s*QLBNH7jkeh>VcVxJgp%}$qe+T*;dbn}dmGNZl(^oLaYjP|ry9-wQ(5i6hxJLjRJmV~?{gFy^X>~p zpfxU8PN}H-2=lY7;3!Qbxe9&WOjTz_e8Ev)>5Xl!Z&`g+4g2+TR3lT>i0a_p?J?PM zuFarz0)67*dPC{9Lf`jqUS4tiwBsl(&65F!L0Zdeib^NGqQ7>=(~0hC|OM z)q(S6`}Drr8&13{pgB9#Ra}iWPSf9p3F=yuP~~jVA5MW&sAfv9nkmC-rX;JG@=SA` z{1)&Ejf=GV4jK%a=dDK&*0~`H*7+ect2u;j%@&6!{;GUmWgB7x)lDbd3YD%-U#6&f zbA)$_PA;LStWM)Kn%SNs5o*P;6x52N(bS6LDbo2FETz$G5jNW|T7RJQ5Ysdj>8JPp zgi-(gAq@RT=-N+Yp@AbRDeEQ0&iNou$_=x>u1>XCZIzl9Z{RGQ@_iSS6`=oy@-MU( z8Jq^~8Y9b#v}445%R5B}K^lBF4@WyL4(pWTc@OW8a5SaYl697P;n@}A1BjQ zN9Tuog#J|UA(qp4&Zry$wZBmL@)4@Pqs&2Ng*-tfmsRao@FLAsI<3=_F|j)LAM@~5 A(EtDd literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..48652cd48a185dfaac3d1e9783fad77b488a44cd GIT binary patch literal 1140 zcmb7DO>fgc5Ph33r;cf80^zGb3I&`XbrJM{C_)HCPfOyOKYO_*Wo- ziZ~$7{3yh%Z9-55N_^Oznces1&FuKc&#&JAY{Rut$K^V%*jUF^3)fa);kpTSEo@l0 z!C)PFK_azcxHpJJpw&Sr4+U2ud8eZZ9|y&G%xA`Kj@V(SJ(fx)PZ%D!%Yu7*43+2l zKrl21Qi)+Y^+oi?^FxZX20HM0a<`7WW6wbYHyJv` zK{xP}(n;4BU6qERg-r*yaGPOkxi@sM0^4xkVR*VA^q+ktc{&<#Kb=fuk~f}b4QD93 zrhS`%p7N2_qfl@%r&@8}iv@obWrHWp9MTIr!B_;7p-zTW8pA_(U^>7R_P1M-%PL!} zuuAJH-2v7J*`l?LCV8D4g|iefUn^s0WHrdnx!)4bAlv=*6V(1o-a!=?2zW6g@8+-> zd3#3Qru641HN$z5kf-6ao5a=rCsaR>k*ls{!DdEis-+7BA){2k>wiSIP5mVAubOkT SGgoVECZ|@&VIo7?6N z$xw6kXXTe>mErY%pQENa+>K;t`n~Jd<@h36W<*y(S&uUqv_yq%JP$WNbg+EO*`Z)_XF%#od zU}DLL%Sh4-sKteuQ=~q{aBsNF-&Nd^(lHxz=8z`2b6p|NDG~WBeS@->RgV`=9xLRKTDf&zxur+x$C C5}VHe literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..90167881196caf55314b9aa987e750b394afe416 GIT binary patch literal 3260 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..098a76e1c959f6a2d33071779bcc993757c8c2b4 GIT binary patch literal 3434 zcmbtWTUQ%Z6#h$d zwRA04pZegdkNy{R?=wS~gdzLBAqx$Xc(v z&R2E&?rnjd(wEkOWmYVA+g$N$j=N3!>9SS#Y=MQ6XP2wws+n}fRVR6Nsm>wBKL80?m8>%d;1752{Y?m6XM0kKZxTh&^b$TM?}>-aYWe$W5A z&ru7?Q6%=${>OFNKis#&42C|>#)Y04@A`USO&~R2-J~eHN{(wksPApqwa3;*g;sh> z)v{GtvuX~{!^M=pMGy#xnL58DiAwZMV^Rl z#kb14_pN;yfE4y88a~zV8HrxQ=K`JEwjYtQz{Px_NCwHgYs;x_h0_G1aJa zI7?(fh6G01JZTY>0GkH2A~4=+`cDQX-Ly`32;vueZ| zJS3^SEHXYOjQdLbj2>4zxj9#^gs%|gkxt01RO|FQEjnDO!=YhYVNLVZ8W_bF271wF zpa(A+=*M{j0~j!6ihS{cL`F^^+{ev^2GJO&;GXVC5# z&FC~1EP22q_C6s;U7Sk}pKu6?pK~1YgB91vuRfKCc81VO9aoeAAY&0VQ}&3D(-dgG%sq+z3y;Mt8%~%dqT|EbHi9 zbxCx8V9}IrMhcd1>0R7Z@g(B%1SKGF3-76TQgL~>+}WRb+*a|V z@yF%iLS>#iY99G~#K|+4x#+&dAFj}!lj`^h9qlsfR9v=>yI2mvWAY+_j$dFrIl{Rg RpmRhbQr-MC-jgaQ{SDD7^nU;V literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..47dbba05a1f858281e4bc5d21d957232a826b7b2 GIT binary patch literal 1846 zcmcgtTTj$b5dO|?w|k*nL|9Q!1ib8)OTC~*xg@%g_^=^F2#LIv?g1*bHSJjp|H%h$ z8xl_oTQl#e*Uq zR#3!j5%WbnD&jFiY0q?94)+6w8%@vOHMZOP`?fIn0e6M*Dtg$o1F^tRwoKRJj>B6F zY>S~c;BJfiE2brE&t+I>2Hf%p&fejM%f$!J-#7NGo#=UBbPwY2JvY`I^ROFC=)J=9 zce&`Im3;1)5%BY@z-?hWfe{G59hPLgjv)wMU9??WEHfO}vZAGw`5!_r?4iENpftP| zXXtO*E?;fG+vfg;x$Tf;u<2Q*vuXOayvIgG?AbKfwX9V~sl(9+Mm&fU3L8E*1%D~m zg4i6ONv)rq{!*=;HBSn$5#+|%73iTXC;1r~*%MsIAw!QHG)~tzU#rt1YXKJtqf*RLrp!BE|dQ-swA(_%^`n<^pJi8rcZZ}(`P!!>$4pwpTnpTl2yW& zQlXeKMkvEoV(c18K#$_-HcB@_lB^QCJju+t@Fa8R$vTGXab|CA2;zmY;DF%$zfw`DW&uY4_)^(;ool@w|cxX38jIRtiIkIVm1X@uY~S z6%;X3#C#D8MLc6D?VE1P;eNnyx9RzN#!ma-z!nBS;;t~>L=T&GAQlh z1+m#rliIjA{g<_R);uZ1Mv$8qSD=TooaJX|WKVDnh)|8Zx}2(bKr^Mk3p~W57;BWY{3&0c$|hKXzGb@Ax}LLi ulfGx3NunExij_ED33Zxk#MNY23DEN$#kVIYeT6E^PA2Q8+Z5SynEnm(NvWOl<`Fp&vu&zdit97CK#W8CW*)bzo;wG2JObOTvj zH7x8kAJ`-QLP$jo%3<9MyYrHc8)V3xa4(`ZL$O?mwmoYe*(ruP$r^5BI-gj%LK8|; zL@)q`?em0x8*KWE~Tg%F)7R^9W38UpK>%Q#EAB9NI%i=S@QlW%Z(l z_4nFHQ?Q7K3UXLbkU>^~f@=)xmt9Q(DKRwXyj53BlHvJ(5c!v3R=uI7!HsQ10pD2bw@Fsn0f!4w#vQ8(# zGLDoYkwrhV68OW+Bp_~+MKqy?*hKXk;vdNn1usRwi3xZEcV>VkQDYRGp9wCK&_U*> z6fF@ZSuLC*K2~OJ=KVjJwOVTc literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..d8040a0cd96f4435b78896b9d8a2a00d2450a023 GIT binary patch literal 2188 zcmbtW+fvk66kVq~eUCOEf+z}J(C(nb`whIJln*^vHB3<@Zy_9;NJunE>&&mrH_U@K zv`VYy1LmWqX77`9lZL2mO+TFLUi-54%BlY6-!FdyxQeAJYPeQG71w#V!NbieZs9hs z=6P5s;Z7B0+%4f=3HM8QAW+`4ybV_dp}>ijAGFQ&&eoO_new&tBJ)Xn*>b{YUZ7%I zo-JKhZU~4qfnq4V4H*cWN+WH5dz)b9Vmz-X8$#=T;Itjja+j@bDKOG{VZF9Y*Yeut zN)$L=n`}y+d=p<67aY%t?h5?TXob@DDM{zKG(8!;@q;aM(|&H*k>h)z*;_2dC-Xl} zW`F4YC(Ts>ZPDMLRO>Crlgpj$bs79-t-C6D-?rRUD{y$99BR>~Lo_}aG~Z6-xM56m zXeP=3Dm`N7F_X`9B((`#9Mox-1c7QOqvbB0ha1@y9$1Mid+QhLWm3bzwv19u7np7| z(|l&hqPB~n@@r1GxGR%Wbe9Y`NsHBF6VOaE`OpF@}dahB2b! z5Jq(z#%KwPIv(M%jsrNTqmChg$?tu8?Bue*(tsbr4}>Lf|9?1A+RVx~;XVF9uKe^@ z%Zv`~?JvDC@>R!jNmqRee!Bib+R=P-4JYYctASn@6lg_!(qouoO4UrXtC^TrGm%fT zPWEFMr|}5wekc0^&11&wX9(l`4synY9psG(Z3o&rg`41eWi?LY5sEZHF^*C*kI~4_ zukt{*NfxVQ!&bwy#z$zMQ1}yNV>U@3PvJnN zF?fo~ou=|msla0~s26yc^+hgEl4TxZ2o*9soy3@=nSa`Q6yMS;l-r^@ouTne&vK4- zY}>WWr7R5pF<-9oZ}qR;E_yl6GjF& zzZZNc6Fi#<*7kx&Gr{L^A&GpO^5pInjbl3~?P@0GR#)h_RmEPbib|!-^PJ+0x!d(a ztUNX;l?a`-<|j&!~Jrk)5T5Q>Wb(I?Lhe Ee{?p*umAu6 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..c527c3554fc7063a65a3309c815d6da3c75128ef GIT binary patch literal 2414 zcmb_d+fEZv6kVs3-WbXq5sIRSw&gMkc!Ppq1NzVy4TePChT#AsWlE+~41SBB;Da|L z(Zu-dM;Z5?8QP)LIvQWjZO&eMowe6F^W*22ZvbYIPe8%#INETBo4Y){7sY*^%yBcH zpe7f^LIQCtM)4qur6`sKV!N8TRg_j);8LMv?WmiTy*HcDn$tqv--Q7o(Z zS}Z|F4vN~5v;+pvkT7k-K2o1L-*{KfFb#WA;7$7X+k(=tj}D}|qwUL6F4|^MuDWdJ zgMyqtOJ-dloG)#WA{_<8lus)Ao6>sD-~!!+lCBlkHOt_+w-~l}4U&KD?{Yc?Dyvk2 z*CfAR&K1*^)(Y2;B8U2v^S*vupmu;} zTeL4seP?#!1R^_mj8Jy`7%lIeh>O&AJKqP;ib292BJ326fUFxwD=C^00@s{Sc{Gem zgv%q&-9oEWH80~d^}H*VJwf<8THnz)1kMz3)<+z4W=VTIbU`P)N-NBGihBMQ{(wk* z?3gb$?8U}0T8&LPk+oRi%bTHZ*DyvcXHlu=EUnp3h`yzPpJI33nb=+tW9IEHo z+b}o{&R?Ior9QZ?VQ?1XUho|8WZ@&(p<_gAMRcW2I??^^j%wi|RHiP97ns20IUF)W zC@2mWn{lQb`S>t3K4(qUoR4Fq&Sic-JU+E@d`7HZl=cRq#BdAjG$t|X92jW(iuj8Y TBt9a-C-N7c&p$(JA-ZMlpB-k>1ZfIc)vgCUW(VS0d(G9~R4gWuvO_}~pm zG%-H=QO3PzhIS~mj>eaBo3qzmXYF;){P_9h8-O|FVo-29ia73YbC;+0!nn_qd2SYB z)MUe0j3J7pFdl@l9L9=3WLGl_MOm&0T*{ZqJL*<-Z_lt)c_>Xwee8V98x?CoAgXJo zE{jE35D=RJaa}vGs%5!ZGNr(Lz9RJ!ff?IUHKp~cRNhl}^=(bJjFMSVYlEs~6f0`3 z9!t=ngQ9jM%K}4ZNSKyk9jQ<4Z@epOn1;0^@Fw;9ZGLH3M+Z{f(e~vj7j3I3*BrJB zenHNkCA}dK%#{kHNN3(K<&*0EmMlMKaDkqDN!N-STG`;ayBM@~4U&KT?{eA&s;E?g z*CfAJ&b-tPYBl%+_87165_%cxs zV5gEXjY_U=)wWcc%*vZQo)gIWCw#ujbQuWGF{VJWfn$Shl?tb>U7cWRlTDJaS3MVK zG38gl^L!XEN`R+~Mp|4D-aF&}@TXUT-ioYVbT1%jN+_}QQnjqhHG{o9>!UV0v!p#Px}XzYr4?p8O+9}Len6-( zcH9#ibYr6!tHmbm$a<{sBDe*18j~2a4-CY=BKqP4 Tv5yGxiM++<^Uu;+0CT?pI#@cu literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class new file mode 100644 index 0000000000000000000000000000000000000000..300ebb3e393f91f0138e9a2ccd2a975ad28e157e GIT binary patch literal 954 zcmb_b%Wl&^6g`udli*TQ3JK*^s38e23j}OHNUob83n!_RP!?THoM|(yv5_C`|FB^V zNC+X+58$H^cdXKsb&-4@XME?LtK;imzkeJ7c#4O0G|;S}hATD7RusId;hF;1mAj$b zO%1CWZZq`F(V|*O3`Kev#rx*W-{F2LqcAZ~k}Q=$VkT*v(A^SSoyc zxG+k&zfTk8m}Y0FkD@I0MNg_r#wo@}d;EY?=Wgf+Q6j_LzDQ@$RKuDM6L)l+gRbK) zS~}Y3Fs!J0E8yX-HHb!;KkG>mOuKO$#X9b(vir(CK#O5xE{Jt3h&30)`YVW)3u2uJ zVx1b#e9WM`Bu(rDJV``C)6XXuPWFVKGOVASh@o=8gG>>;Zg;l5vv+*Kp!IBL><$Mc z#eZrT#Zwt_+7sFfwJ5gdx%R;65|?9dj%}B?Dw}WDJ=ZZ-X@~2y)68h9uc$Iqv4Haw z7YThtkusq79qj05{VNJz)KmP1Qfc@Jr8haO5G>E3MzAu6Rf1X$Kchr^%k*!Q(Zm|9 zOc^aa!83}_VPk`05eD&9a@GbeP+lNgBD;+0I}I1n|JTut<-F<=Re%^8 GjOriV3G{9N literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class new file mode 100644 index 0000000000000000000000000000000000000000..0ce9899d7e9d5331138245236b8c7294a4c90e59 GIT binary patch literal 5006 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Raidable.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Raidable.class new file mode 100644 index 0000000000000000000000000000000000000000..1f4bf4636f302be1aae17d9238c62f13d51c66e4 GIT binary patch literal 487 zcmbVJJx{|h6g-#EK%u34s1xkTf)_RhmZ(DoLTZ75%}rlZm&B1`2l#Ca`~ZFw;>CqZ zNWj42vvu$8J>PqKe|ZIPhNBP%Ar1vP+K!c;scB9E8&P~OFv!Ryq};;Z8mIGbbRuxV z^p$$nMP2+@HL$hCVvzK(I~zX=y@x4 zm^kHXD=>`WOG{~KX1Sh|G~}Mj>On5jxk{TBR<18Kf6Yqks@gNsPqOkk=U66XU8OYC zO)TB72u_#kQ3+i9x5YZ>eq$taWioj^T~g}W0s<{w4G;#r2m}D*CfXjuPu#+`e|NCs RaTi^WJ?ybkpwDLu`yXt{iP8W7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class new file mode 100644 index 0000000000000000000000000000000000000000..5af368d4d233f062e1dad0afcebc74f23165569c GIT binary patch literal 1842 zcmb_c>vG#v5dMxWTehp_V$!5Z1GLbzwo57kDYt}>#8KQ()hSkD$nZ;c6i1CBb#y7i zJMa)ZLP^14=#=Si9)*Ws*p)?4TMvJTe(X7W_S?((c6I*v>$l$lEaK}TB-|Yq#kw;%x-9VZlIoRqR@5%H3SJ6p|$K>oqnuAyzvCiwoi<2eFl{h|5TR2|dpsYdAAZjZd=>+Lmt zS2F~(Z_lTW{A1IJtU#bqsh(3vsqXDt0;9U^TFvOVWBEH~$DtEB&b56Y@J;3Q+f~o! zLS^0SnoisFZBCkGmR$3g3dk?pt{tujREFf=8d6f5+8!R-L{HJMdoK0Pr!bd>cvlHp z>{+3av~QwPeLbE)VY%xhHDoL7(@vo@H#%NE4;EHvR7!>y`CV(%X6DCI!*`qKO2OOw z!(3JHCGH8V|Nog*Fb7>h755dqiMIr%UY+0d$aeNEpD_zEnhLh@K*3i~6|`Wm*kM~u z!8B$R?6UO=@7lbZ#f-qnzcHCCfn3+|T)N=PbZ>VaTHTOHxRdTw-7$k;DaCj4TcsPt zQOR#I?U%r|xLp&T-%~r$(UBdh^+PkPdyeN*8I6{vHOWsOW~YFK&>MuIAv7O7vfO=v z`5{TtwG12*)+okorT$-Lsj;oo1CniN8>)-| z5Ew~s;WfMifpjJlaLy630;80B3>PpCjx|Z19Pw6s zAKvkevUrb9Gnl7Lx1lEW@yhk(YCl7MwX}W$6s{MuNKbX9_hDqb}vnP?P_}`Z0x?%0H)+ u*%OQ#d(sIejJ@0mri`Z$OwFJj<(Rf2wW0)_$nmM#OhUp3_>gcJEdC8Z7Qto! literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class new file mode 100644 index 0000000000000000000000000000000000000000..edf87eb165c6510939e4fe7d06405ec33900056c GIT binary patch literal 882 zcmb_bZBG+H5Pp`ncWu2&1(b?!D2KFu@S@T9L8C!D60}zmYA}RP+wDRZ);)7C@DKbe zepVA>jNu3Pql~i`+Wr7cZg%FGo1K|^X7115UuOWG;6WYNuvkMCtr}U^EnISO!-AXk zxaH!ui)Dtle*aWuVifUDekw(5hFTp+-^lDVPLBPNIN%~vu}S@jk!MP$ewrnD@y6eg zn%fYDnf)z>>IWVIdf|TJ{(ng2#>r3_ zu8Rerjc}qcdL8aCRKi{u?KPKaFKe`?tl6?dvKDzfG)P}2^cf|xfM-9!&VJXwW9FNE zN%|}l__)yItBbn*K1h7A}VNMg{EJ@8Xn^*=@Mosu~Vd&CO2c76eSFu3ogQHPcwv zGnVe{*v@8VqqwdWJ;S!#%)v{=GfX$*dQQdP$t>um#ww!%#0ga`2#Dn7ahcF(3WbqOoS40l%NoC*l11|CrahC5-JyOdqS z%~^Vx-eTm}a;;oQhYBV(Ry2b+NkB2>8{EuUmGan$bAOw>P2?$_qJG!l%WkdL@(|y& zj1Rb3Q!+}}5OC*&{UKuzhK!qdD&sx8FJlv?j4~$aB4018$%@xEmlgqdwqo0YwTwwkVrND{FrBsb2IbFLFq886q?HwB1noEftI*hW}q@K>+&Dz$wQK~rp zV5YkEbgf+0Je}K@y0GiG-i=dz?FLGn&H9@%Qpl<5{6qSXs5AGb7au=ZT6m!5#&6J< z<^p}}BICVWX#lNMZ2n61Mmr&{dZ6PRw-xa%h+_b02)Ihz6Ufev;%Cbi%zn|VLu*zvx(JL$2vG)q7C3gj?%2;Hq@O|$JH=sNqNk4@rHV6qRdmvGmeX59 zPWox;0 zTKQHZ>E9u7oQ)kKH`s{;amJ9vRB-qSB6I?ndI_z`M`U?Q?x%#OHc^?tDb_ zx!&mCq#CB&<_lsKJ^4bUir)Nl2;5nL7EqdM@Q^` DqttiX literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Role.class b/HCF/out/production/HCF/secondlife/network/hcfactions/factions/utils/struction/Role.class new file mode 100644 index 0000000000000000000000000000000000000000..1c9637b8149d8f9ba689ad0763a42c5bace5ca17 GIT binary patch literal 1726 zcmbtVSyR(c6#j0TCbuDMaRqlpZKD|X4Mb|GiWaIwnPK!Llz`EYIBlvv`jfP-qod=q zKg#i(5VT6)numLGzI)DhwtJJGzrK72a2`$`3a;q5iU|#48YXp&;u>Sh2?v%xYA3gGIODbF?(1I_Zag zJSA|oOT^i&No+-mi!_b+iBG-BJN{be#;pd`a=Z&)cV}(Qi|3PRZZ8zKnh-4+l+uyP z$$F4xoGozZT8Bp^Y^_iB)TJppKDraN8g=ic&m+n6X*|V;%)k-8He&{AxF;~t!|66q z#C-!Nv0&gJ4jDL%Lws{Qcg1T6WG&0$-EjkZu$OWuN8_7&8Q$8*s8)8L$F3g=2!i%A zq|SMKngn3r00RSmZwL2AAXg8fkjnbE)3xQNUOlGLFLVyA9JtNqL`Qqm3)VR!W+lI! zoqnm=Y;ke=41E?x>Fc9Sk8mjfNlHGElyM>{QL@NzBN9oy0ER}n+oY?=<0y`S4issJ zN%Et&AwDAW1KBsE2^45mlf4|-7h$FL=ZTj+bW^cDBliOe+h_imG3WF523PvuXrUYmk#3HtKG7MpKGDDLIF5de~ z`qI}{6kKK1<#Ydlf1p32PqlkbMhTLK$!fD!&SlTOe&;)T=FfkAe+gh5W-BC2E11Eo zjD8t674%?^hg#W<>hN(HG_rxtf);5g|-S8~esc1#LWNNo*Sl-z(Cj?r}ZPW31 zBXA{*t*>A4T`cI1UNp<(rET4+Y}xwGA~_aF zi>5bs$n2}BQ0O#BQJ{ld9bs-aIcq@h_@rS6s6|s;nOvw^_PSY?@hxp;Y8wGH>o{h4 z*48T(pCBO#JrFn`UiKV4Il8;S>HXNGum9tcwC6qDcuW`7&%v+tMjbqJPPH@{<{*#U zJSFc|%Z7Q&V%oRAeKf+Tt2oCUv|q(4?h6bx(e6}Sz?zC7JWz24y(*G8&5hIL#yJ|o zkw;K#^RBna{gNGx^YEF9Q}|HEcjP2QPn)p_thcAB;u8$W_+G_BjH&nmR9^vxiavZq z)H|dZ<0xaDT2Y7)bpZrohV428<5Ai!6&_KiB{E&Azj!_?C+dzbXy5gO=S-M{^>%?; zmT8{~k)V%(K-Xb?H4pSA@!XvIgzkr4p`4>zRZn20K2(r+U5djao9phNa+`dy@JI0kt6zpBvETxNc*`& zn8>8X5g#Cm7|n_FQ13ok(!WL%dK6@=s8M5|~3 bbOtv_CxR(_L34sumvIkQD1%Nc(wzJkkQmN6 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/game/events/GameManager.class b/HCF/out/production/HCF/secondlife/network/hcfactions/game/events/GameManager.class new file mode 100644 index 0000000000000000000000000000000000000000..2915457306c8a4b16b09e3544aa939adf66a15ad GIT binary patch literal 739 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/game/events/faction/KothFaction.class b/HCF/out/production/HCF/secondlife/network/hcfactions/game/events/faction/KothFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..6e598d1bf8fb7d1ddd3fde304a6f9abf41fe64ee GIT binary patch literal 5853 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 Gn*IlnL4+p& literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/game/type/KothType.class b/HCF/out/production/HCF/secondlife/network/hcfactions/game/type/KothType.class new file mode 100644 index 0000000000000000000000000000000000000000..ebe321600e0d6332371b82a15321c71ee551ad74 GIT binary patch literal 4860 zcmcIo`F9i775<(rTVpX`q8f)K5RnkY#u$Ztu?qw*Veyh;1A#8iSRUJhM>DEsgdtti zmF^o&8rsl(Pa7bufzYPuM%#2rmvj0D^oO4Q5uBcWcSe#0lCgVwssnf4-1qMG-Fx4A z2N0I`BCS=jEL;pBGEdG~ii$q2LT+ zF}^(~>n;fYi$#886km$s`6wN#yXesAbdM-Zs+=Xbq|bp_ol)26WRfAvRU z5!2=8bLL6cp;NmTsxa?cwwLOfl_jo?IWuE0r_MxwA^l5BoS`61QV|Cg77zJGdaB>Z z2FZ-#%L)yy)5S6|J%0g-nHT1HqNoC`BxZ5w150(-m?9X*Tl(DGL~1lYHD&oJX3_G` zrXIJAv;RdQRN~ZnlBJ&wv?#2c+d{cNeXd97p8dc0GY?ktVlBwUJm1X@TN$QaLF-K0 zh0cx*x%ph$?6sti7Z+P_<0<2`q2p2PS9s$B`ZuU~FIDg)=;T5_>G%r1%KFjqHSE{% zb$mm|H}S0~zOCas_-+*6)A4=0pyLNZeux)!T*BojuIP9PKhp7I;mnBWRa{oMR~$>( zhBJ{G@^cJkf8Mgk%$&liq&ehfO!i2^@)Cs&jZsb{l4Clq;ku5OaYLbQBN;7G{6xo3 z@k$gw)A1^P&Z=+K@eACD;+Hypgm^Ot574tD-ual z5V2j)zg@A8KS=5PQOBR~x{g2NFFN*Mua3Xsb%jS3&_TDIfC@`z>wIwZl$qw9yKMnl z3VkT&VZY%R3`k+;-Q`NVN5wvJu$XU7cR97?-6bJR6* zV@Ha|5hD(5W!bUe2Ci@)tTtNpUZU~E|%AA8g!fYDz1!L-Z8_LFqV1&;N>9P)eJZG z6-1!~Vsob@pt$nj#{a;U2Nn(u~SaBG~uhWkC9`HMUP+HZOucLh;giHckk z_EgbUhD&L)nB(@$T4n-5FSb^MnPG25hkCjO z2fBx_mS0|-;BARtmkqM_^9!*-&JI4K6WjQxzlm0P2xkV-=demf*P$s~ zKw~&=kg?XTW)LG|(T+%Sq~ZMYxaS)5P;BuvEVIq1H$%g6 z#<`LZtzyh;a2N?3A&hUq0~o=BcoIoWp#?tH<7u?vMYIRl>>*N&zkrR54pCMBy@WpW z6HSd5%K;41-eH({oGFMnebVKO}mRLLL^EfD z0&GGZHY0{DXyjinny`)WZ)XHMa2z{{(k>X-jd7OU6l0UBNrXO^kg)?i1Q|QPsD{xU z#}kDZC%IZ;OtuyMZl&KF3YlDAjH>NAHq;>U0#}B0Dt|r!v$l>UJ!>^tvYNyRoTLqE z4zeIt-%NkQ;{PX+mHeG4S!M0aWtGkp%JU))@};pkVqU?<^B2)k^f^Uoy7-9VH^Q>` zrZQbpiMXz&Xi(0Q;O+KAtpu;pj%7XfkKT* zWwDEIVLHNS-&$(;Hu43Jie?`SjD^jv3dS_Ntt7ZDND#2%3br(1>kPKPgdJC~vkAL` Y@kXf`6?9dYm3vq@adJk;ufdc50r5JcYybcN literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/BorderHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/BorderHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..dce78c792c13cb9c496d01bd0be5461876ecca47 GIT binary patch literal 5940 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..33be54efd339c24494ea6f36230605e288b2bf10 GIT binary patch literal 865 zcmbtSTWb?R7(J7#S=S~;t@VBjQX{yg`eaK)gQY_3gG$~fn`w5;W(H<=>+cf0fDirv zf0TG88xTYg+J*ftXU?4YzHjE|ukSwqJjLA>>evd9o(+V9hrm5WY4>xlt;!OfemvqKMvr z{Zw6HXt#Yq!8=>HSnX?H#MVFhfAm2fOIG~K#Hr1+nZHqaVrNa<4AH`^5KWx%Q8&bG zZ|*mq4SS)lNWpScr1#c&MxdPr6#*`y_cJf06?*H#94@UdDen4%f zmiAapbec-O3eLat7qY{~>wJNL=yd!z7*+VU5J2E8qakyT1pS9!Ao|}>`LyDMv<-5A z2f<*$c7$V4nK25hnyLLNEcBds6ukl~_ z=sz%#C_eb;gMZ1ycxGFZVhAR%$(}Rc%$&2|Ip5izzrTG4Fon5x7`Uv>Z~~o3cVGlp z;<%bX2BR8e;~0x$JdSG`O~hcvaGk-Zb0=N59fy~M$1sq0y^>j|RVubJg;ciMH8-25 zGYnBxw*54P&E|b!xw7ckTf&q=?YLgWEL&ULQno97v&`vCc)po)s|Bv|Zi&(_H#T*i zSzFp_p5a;MB#Dk9JG#jb$+<5x(?(wxvPcjU*jF4}YMX^ScVBQaA>TylVh6K~c{|NQb-{w2= z?_e?vW)2yJMwv6Z?|m(l{+Vj(hwU#4UJNvP$}n^^vE|$nLq|!d73nK3EfQ`dGy0z) zp&)8}mnW)jU66#l$Q8+IX7XBJ)8VpYt}Bo9ooOv(+o_doX|4q>C?wiQflKtGchZj^ z>h9L+1LSEG^bWl#oCd=gTIC3b$tSa8dtlk|J%qAf5dIWgJWDo87l9Y(A=?uKCvgtv z2~kjxlF^Mm^fwcJq;xvsN%k{BKd`3VJ|YYsu&CFmwy%ipBNj%0;s;Rs0hDM(`{-cM zw8GG|E+9tsCDri?LwF4nZ!m|qc!+n{!25u%(IC>KJ3#l_z<$wj7=r{tl;k4$2sLX6 My|hYDfI*&~KS^3&YXATM literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class new file mode 100644 index 0000000000000000000000000000000000000000..34aabe90405ae6076f13cfd7dd71c9a8c6e6da31 GIT binary patch literal 1080 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CustomMovementHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/CustomMovementHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..a3e903ebf773a602d545450a4d8e7f05bbc06879 GIT binary patch literal 4201 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 X4iLv7dOJv`4&OQs4R2;ZN?`sE8!Ivh literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..944361a5260bbe79db0728a927755cd42a799a59 GIT binary patch literal 1151 zcmbtT+ins;82$#3Ep#cAR)l(}3M$aU7ULZr5^0SlRE;#f=-sePVPrc?b{85R#m6wQ z8olrVd?@2TyIeqGuh?YgKg@rc`M&w{_t$R#&+s$_19$auFO3y!ui`!)=;dJ=WmF72 zGVquoJ>gDeH1-7rwoaf+Y=1g zwp8N%_@XPk6W(>mlW)5=cTTw{wLNnt^x+uHcS;Gb<#68@WWHKvzDk468u!ME)~cQ; z(+RjeJm#ZW&veHfd$xEZ^;D(*UDp0*KH+qRBV{|TFIE3o1OvBc;E9PUY9>};nn)pS zB7=f~x``d^n%IM7;J`!!1%hh{v?>jT@*F38dmwsa0@r#SlH}7^spwXlOLU>DaaF{U zL&1Xq!(Md(+zD}Uk&j{Ak@h$B)fVSwT;MIkiu6Ayhe!~@a7Og=N3!n*q;zIVxmsIj zH&6UZ6hu&NU)N(6!eDs9AMr~?kIbMa2gGtYjSfJPpwb@tGgt$GN?METILT~%=L)R8 zdxcp22jXADz#Oef3ItonI_ZTlIg30t$)cpNB%_F%v=xHus#kC^KQ6X!Wb6DaS!*$@Suc6 zR6RWO@Q9%_5MlK+6lc;f%r+y_3SC&g{l|AEc(!EWFqV1`;y3X*d8OtEjolqT1 zuBH7DnLh6Y$0D#Q(lPG|+LI>cTW4CFs31ew&AblisnW_mXE>^jg!J!bmkt>Uji@6T z%1x!^>*S;@&4Fl#?_7Tn<&{8w5_(+EWzOEO=K(qDCh&YCxgrm^Na znrK-O^!LT-Ma@zxN=zVklWD5Q4j9eVU2fn25H z*aK)LDxHV^2~2`Wr&WXOJk90$@;O+200e3Km>$ECSxJNU6e*nf6I^h5S literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class new file mode 100644 index 0000000000000000000000000000000000000000..470859f809f8448619d912e8645176a33c4465f6 GIT binary patch literal 1768 zcmbtUZEqVz5PtTY&Z(#YTugEBbA7UfWA9d)D1v zs_-xPDMb`oKJXQZ--HmecW&j-K#^j}w>z`5GtbOCvw!^c>u&(wL#F@-SInncLR8XCQA86Pd3Z%!#kFa?i_Icgzi)OQ*!a-KM-0V79#n<_KN1ncQag zmioy1GCkX3n9>6oSFSSLY{$Y6RX315;VGe?gweh?@O#|XGE}iQ;B+RU*t>J2_<{5@ z5BD;yadbl}sc$hnuAa)%zk{tkWSD4$UBNKZmP&k)9PEkcYrYqdrrZvF9z5icH1bF} zVUlBT?kgptR>0#}ka+tv_$r%}Yc5I@eX9o1WUM1eQn~#dKjdD(Ro~k+sy-P`#zX#u z4(GAbY7xxe4x!xXTM>(sj4Fo}F|SDLIAPb&6?2}Cv6QGO7{6sRNgAne-s z*ufTVIGDxT4&K6ygEE$F+;ngYw;9eo3ZtOg+%=FksJ*mL;o11a!Kc_}*j)41g7n;# zv8zJu#zMQpK=4?&L=FP0UG5U-UeE0aQ~p&OEeCh7ZDYs5U3_Nao`d^%;NWw#iB_jz zRb`Xm@)&nxe;~REklA^BGNH-{{vb5XZB)k_C=O|gyllKi zlVr?xjC#v(;`)EbPP7cP6tUN%CVStIB#oH0yhL^G$$k>09AUUN9{Jc=cKus^5VXdx z5UsqiqWzyM428bX8EYBVs;^VI_PUDU$_Z&6N}YV~y~?l^1|dB`1s!n}2V4`U7skLH zdyN>TW1+eo5y!kwhI1$3pz1c?95zeERF>xbOjo2c+Lyhfm$S!EJIVWatzVi_J@Z-w zVi-o6&>v&ME1TM5xb#w&=;gL%XU*^dw9+IR4gJeF1BSD-YmuCzb*8@l46NRG2CM!H za!*skIr>hKA*{2Qr~Q0-c?RdOND^I2T{5y*!t%)B4A&PD>zT#S1IQUxJUq8@{|Yr6Du}pbGSsZh0A0KOyC`?VS#oe~deqz2E7h2I;;pS#tG3o2R(n{rR;@j(7R&$pyfeEyn`{!=-`|hS&b;#;&wah` zz>og(&|^fjz&AP|j+V0ma<-h4E7r-f04{SaIWL!d@({kv=gR`V9Lkr4d^wCShx26- zUl#La315!j%aMFp%9o?~vWzd~0l8dO@CucMM6%k4#qpoO%B$s?LK3ppZIZ_XWSv~g zaLmb*>*Ub^SuYy`vQe(jl^f(nzB?vQZj#6HyvOn5@d0^)JkgSybLB}gm`9~@3tyV@ zWU~zA$*r=5FWW2`4$wS#asa(r`K~Qz*%Sv3o}fKvS*i1svusnkIg+z%LGmdoJ1luh zKt_4Vn2hJigzV&{w&zl-JT*Y=atB{_^4rt+a(Y01MV?{FGxKPTJj;?_4N$H8TCO}> zp2IEY2IP72d`n)CNA>dSIgfvmTIS!Iw+82f8=POZjpcFJmZhc>r%) znKV}faB1bvS29dj<;tt&t^h7Twq1VHlHbas7I{sc+%2!oli!vhOMZu2zH7Y3UK;ACzV36+Q%lG;52bR1mKs)8#%&>d%Up^g>&&X#3 z@;UiDzv;}CFUTKR^2Y(XT)xPcmn`{{09_?tbftwPKfT1AUk=DuV@phkm~xZrM#yev-2YcK7q$ z#n38skfkQ%s)JQAFEx>ykN2xdy#C~XoUNt=)Kpbssc8ZFKux#Qi~xP8N^{jr1xxB!yF`0g;iJ6tWo zh3^*2OZ{pIe$^2S&XJZ{8W1|od>=o(s?-W@TWP6P z0a2i;`C&D*LapJu8dwWe%Xf8!B-OeklSjcMsiOm`UNz{-(}=i7qb@Hd@TZ=ks#og+ zY6FA2QNdWfqBaH8vHWPU2r+5e%p;+-Hkw3aDnDrkR^V0kxGM zMyeLRY-28k1L|benycDWJMQ>x1Q%JSqL%8&6N}X;Y|hRNsF;fLC1I(~fH+Eigp1nF zms4Rq)eauA)30EM>eT6e^%cK5gKy6)B&E*gh0cLGsB;TRtFtY2L7w`$Jl9eeTIwQ8 zT`b71jzmJSind@p9*PUHf^BWlQ$x*y3TjRcZV#4qCcIGU1$52P^>Yy zr422GHPNPE+lC-O!L!?_6WhW-^vEG5-xdU*p;)}Ea%Uvi9&TFK7Tg(%t#VocW_}E} z(e{nu#J2iiqy?+_rdLUMiSxn(1vh448oL0 zBGE+9@IcVP{pU6Sq%j{JjW_^S2HS&-*upHB0OW9DXIYi`aXK#F={$MxX#+xSV0mck z)=(2@QtVy4Bg!C^tusGWriUX<%m_gTc>B7`IdGxZ{EU}|wnIXM$ihI}gc%V>sERETeN8zq0;N3_1p!Vi{q|Rfd9zZQyj4Wit`se(4oU`>!}q zcP6`8st?)S{x#w4;YdrB>A_@g4YxrZU;~2f9Z=wKC}yck45ik^q9=oU;kMAKFnCxt zFvuA_(?HJ}5a=uepasELEPAS-qKsh%(6VxVwFH5ffowx)Tezt$R1pJ_Ag9?hZoAW^ zETd~0v@Du7$OxFCEzuxoFfI#d%kc(;3~UL(z%Fl#HnsNYw}sov%o|{Efu$~m5l-q_ z(ijNJ3q_h>oD%I|l%T1ZE2ZAVp?awYESv8cRU1kKA<^EEX|Zg_OYhhQ=m4~w$FLYU zwmPesaNsXD#vEOBI1y^^BU|ZZs`1iTCG_-}k;W%oW~s{&ry__2$c_nK5st+ZwbAWh z;L1$Va#-%_ycZib`)oUwWNkDqV{0r5;6`WdAV?;ng8Z@0NW^g@1r8_;#(g=k95e_l z##YA@G4=z6j-PCU4=8KkrWVFH-Vr<%FBMpBsVgjXrJy;P6Aomv(y}?z3w&ts{>HMn zR(nXx;^~)OE!TC^QH3Smei$ju1{9=h=9mY4i7ztW3#PAfz ziJcuG*Q2M&G0ZWiso4U~Gp}W-t1NZ3rFL2Bo0fte_&Z|ZXbe7~k1{zdHym2$_FzJ< zs$RLOs-e*sK*xMn?dWJT5z-*0IiqKq>jRtSECYcGmEPpbPVe-2UTWuW3!jT%iwWl7BzM(W4c#* z+5PS;2w|5)^CX_R@y_xt%Bgz_*!yqjIZgF%3aom47i8Btf9I}4{ z*Mt*@K^^3=v_oGOc^Cyq%9u<9li?!U4ijj?Tm&3BaK_}h&Cb)XaNNx7&DHsfW8k&JdcYdBg~y|!vcQ>eqZd_gn%12n*FmfDS? zfuIp!Z#3Fm6GApp0awpS&Aco?Inr0wr*9gvIsI22Y>0;tM|X1QJR~8wTY9;n5KZ?M zG%6WLI`}njjKyPLVqm2Dp7mX!?ZO}L5)!74{j9J|7Y`Tml zWeIo&>~GxPIwNHDAvfB}=KeA!aC@fl%;NqA9$@6iO^ug_nhl!!VKI_j)2j|;F)~LW zBZx*E-_jX_HkD>!sn-FaQ+las{TZ3HFSIRbo!w|+Wm|B21gSDIRkY+>h1!vF)Q6hF9Y9J==aAkH z1Y<$uLr^DA^$X_Sw89aN;mjjla6;tgR$S(1>7P+COPfq*O;b4=-4<-$(j1(U)LpiN zQx*U^w;fURl=*-z!s)QLUI&-RVR4RAqe9^@bIc*2Wpawnwzes7Y@;)z##jfZP>Ilf~vsK;Za6!_BV?WMP z*V^ja>N~bLMr^X>7&%tZNDqL?`lGGBtFE)v^?bR3FE{e#dwjWxFE{h$7QWodm)rPq zJ74bL%bk4rK3{&om%G$;mb%+k_o#bq(J0n~S)x zt$wJwE%l(SdQ@+|r5@sjhb{GptsYg6S?Y0H?NLuy>PcG`tEVh=nXR5y&mjG^)w5!^ zt)5fQqXJ;77u1hz^o60nA0slyz+Nh59!Ps^@i6EVwn{)||J`+kE)u`uSzu=)v<+PJ zFn$~kcIkY+E6^h>U1;l(dX%k4>oJ+Yrd5298jG#R>T#AXvh@M_KueED)jR{lrex_S zqrhY9gVd*)3`wsB`{a~bY&`)`ievS`wl3Ba1szrr+7#_9-Ugdm>=?Y}V$}bOOW?fH z3l*1yxLQ)ob@Spa(P-;LOHZ=(WIe^!Q+0`@r`dYCo?+=yThD~J=viQ?p3Rpzx(r^? z>?4>02v@OMLNQy<<+tjmmFu!Xx$ED4pgHLNS&SXbOwRa3QYZGB^LNmEH% zMR{FCRZUG*6+gp%^*YohY<;w@w{-(Eun}sj*V}r7-e~J%^d?Im zYwP3m@wPqzW=5Z=H{1Fojf%!MZM}t!+|{;jf*H}xI%Mmuy2aAlY#r7oTe{WOZMxmo z5goO4hd#yDF@B8e18tq)wL1B-U3~`1r{&2hs4eddx54NDSM~#iB~1?7icJlDF{Ihn zr|KQ3rPz9>UT5pm_;R`~K{30esj{)2yIA@wwmw6jY3Z|U{Z;)n9&)y=&rwgIqHWY9 zR_vB^pfB-a6fP1Nc4%=2d~zaQ5-Q$;prjKrR0415ht4#IL(R}JS<-}(Q*p_HXK&YMS2|qijswM;LV*8E~Zls+iCBU#G9P^bNMYQGXA~^Wb_K%2t4Z zE73P03H$GcI)0v!yv5SD+WIzqyP)wNWRvkgYG20IcQCwnGH-M0Q6Fr?PS=&T{=WW> ztr6Rx_F?P0#2uEt+tT+~`d(Y#r@N3H3nE+pP?y;He)X&WqXj{rTCkOC`Lj=k%FISA z-5y6Ep&zhxx2+%4J(ljZ^+Wn$OFv@kNA+X2e%!=$M%^>Bd|U64V{QEeWA!9E+o$x? zwtfatkA7A^m!G4bN3^A1u=S7hk1hQoOsej(^-KCEwtksy)+?6&sjXkt=>IyRD*ZD{ z|J>GZ=r=8m8Go&RW9zrH4^gq#$g?|fP5fa=Kk{Fj`QO_5ZT*g=e+N5O(u7PdUL1@; zu;7P6X0xGrj-`KZ>pw7Rf7I{V`cE9MyvNXeVCg^G`a=!x@R6-QR&NSA(8Kn$$9GZ) zTYsWHw)9_Z{i(Ra)_)UsKt&BP&7MBz2)6z^8wifUL{Mz8^*=RC#qic>Vp}oFo3TVO zoTaV*r4g2STN_$;LTf$UYJ$ydf%O;q-2(k@Fko+ioMP)Q^?z)=&quaT=y&sTe6m1J z&l+@bjAHo^kS!Tp7Y22AC@Bm+n(J~=j!P@riEC8{G(s7MoX+o{uM3{fw44#MQETw7DQc~wsB@(u{O`k*RE~E!|k`q-{m)EYXO9NP#Y{-}>+31-l+2l@CP_e4Kx~{gox+VqFsC1Kevchz8 zdb<2{V{*c@-Xi}C?u^6f1>>yOO#9|`c@WF*8Gd#r^bJ8i`(>@$JTj$F`=!Sw$ zo8_|*)K%cl*$-ZjorT-OiO$o^i78`c8iVoH_>|-*@M>BXS;;mAYhmxX5&LH_Lx*KO z29<4Cda2c`XKY~j{en)(I^1*WYEY93+UzIH>BYGYn$D`1n-gI$P0)dL<{(&YFoFXG zz-%(8=;`Sk6GIt;Pm8&oK(vF0=mMFJg<9BZ$BcOayARJOW;w<-Y1cE(1Y|5}N>q-6 zG|4KIY?~?lRU%OU^hwh@F%xWOdarc`&?B5EtD>g5V$J5|HES!@KvOY?**gg}FK;u) zKMu&8$>T0Cg@x{os30Ox$n54({=BNXO6amt5|sFm$yTt9!ATt?A$t0;T(z9%p`Qb* zYnQ7`*~r-pOK!Fq3c_Sy?bI&W_{`-qMgz`Cp82!XksK8AtLrN2tI8XyHdmI{mal}B znv%i#{ztud9A?KMkhu2*7?dc3xdW`YWCphX#<)z|9`eor`4|U`(ng{p3VJ0^t&Gan zj;S(6B*Ovb65y)~?SN@PjTmd{h~AE=wKIIAF;n6PL^~&RN@uVQprS6D_UTD` zg>`JkEqM~lEROSrETs`DF}rlaZf!AIA%zo=U`PvP0onmNWkG4Yjzm-e*&US2Jr%`?1y~VgD0!NQ^TX*{>%^!3LmV8>-uEr)OsN??~m9 z@v`*vPW9g9k`rI^4$X`j9Cvk zIm~WNwitWh(|Qh)?zunSyU0*YmniOQpv5sA zmFod~8xgYA!#g%KmN!qA>@ouc%fQd5V&}0vn zJ`5rs6zpf{()wmf-^qR$HUe<*5kuZDH6>@*yb)kU+6?2!2>K1nXaLJwLpvKnFuR$Z z(UjTQ^cm^MN5(oZ)eZrRGPF76T#Z_>wt3CSKHk z%2+55WDt+7p*dP7=-B^Tw&z8|^?+_j#X*M6NhyTAhWB~}EzQ6>GnHDM;rsgP5KjUM zvRA8vPjWOSt>3N{bM3%Rr^~XetjWT4PipHeZecwW9&-Q+{+saFya>Oz$o%QDo;2_*B# z#e|QpXMRH9nd`qJ7bYHsiE)OV54G2JqO6RsVpuCU=`^*@_|es-#V zkmhbk16ZE0oW&a70RnKxvY~lPEE;TX3UW!(Q?sv(cAD=Nt?eAatli4#KeCAQicSa2 zJ48u4<*ZlZ#FXptaCG;#;A#0GbS+dJE{ z3ii}2I@PCcSsO=i8EA{Pz@f#BuyGv4Nj{k32VdP=&PSIA5eIVtJ%IMq1BXzR;dlo& z85~D39vQI*K?j*M&;w@5Ri+%~o^Es2=2UteLUknK8R#z}%xk#YNb zHshS?v>$O#0%8o@vq#a5+psO&%vKAAg+D)qSi7+}AN+LjX6~0^s$`VjZxmQ-ah(ds zaacXfSF0uc;uB9f(tO+CLd^_9uES?N55|g~VV(h|1D2UJv74EOclxleZq&)yWk`u{MYLDUgTOqk1`gt$CizQ43eeM{m@GbJ?#CS1B- zgd1=MsQwB*rGWh_LCc1SFkBK1I2pjP!|{d=lz8D3IGNS>pxc-c-rM#h_eK-!r9~}1A{|>K4XMF6Dt-hMkyU#Zm*ar3Jj=`eLQ&C9PW7A(-IK{w?+oJ9! z0`?v=_0JWpRh`J}9cu>Mhr?L%c4ewyU@Gd2Mf36yTmrD{lNqOha5!6?1O>A#&cfI} zCOthoHPH1yre?Ps=j;|PFkc>|y^!m1GOS6Kc>sX-)M}Or9*$$5CL9ly;qOv#?o!#|2z+`Tj5+P5vITiOV-R1E&CX?C z#q5pMpoCY}5{x~DT;+zrTwqUp&kC`PGhpZVC zs6gi15^_Ejs$vJ3t%{K`!t=!r#2JA?1s{n7LmJ&;qWgSgAH!u%-ek;_9AMU+l6*45 zmsr@Fr$vKvFF7L1cm$BBh;8P>#jI)>8^T$rFvv`>M?N6gh>yklhm{%Vc)u)yoEy(rg3^lQab=b5(VtuIBOgjwTuVwq& z2WME{&xOnZ1pZD4hTnV$;A~-?9c?_Po z;D)~|BG|mn#2j!O&f{7>gBoAK`v!y^q#Ea z8`qNujs=_eD^4e`NXy^W&WQ7|Kf{W>iWuOt5V=$Zn-I7ayVq<K}M6pgBO+wU@q+I@l3-=rFckxNF5r6P08SbZ}4PThydOV)?kq>=|?kS!5Ac@i* zk`IvTAze`LDET(2E?AjOx(oHIO};L~Z<}(ukW6i|y6`pICVv;@HEb$ClZ_v=4Z{x_ zhvO%=i}LXk=)%tLrh>dK8i60Xiwf~GtcynCXLuKl!cTq|jc(|nF+ZfS579WHQB;Kg zd+5N@hiE)M9)$n#*h2@GmUdHdFHKZ*pF!#bTqltq*QG#X3E8xa@@YApOO=NU6!dE(YS1|s-W_{Aq9-4H}1+AAJc+wBh zCIzn+Ftco-9BMMNmOA}YvlfUZ(M*_?3h>2$GkWJxKy1aG!Wu1N8|GoMpNuz5_Trh{ zG`WkW+)CqcH?^1WfkYQgyM^?9Gj%sjXFQcz8GpSQ?zaJgFdaaxbTGAh@G4G0P%OgY zWUSSS-uM*k04>^ZmxGpe{0b2fQ3nRJ=b@eGb*wz&2`b%9FY?_UDy^N>MKgP8mZaU( zGpm(bo)37eJcU)9IoEeDk6AmEsf;12qfj z2@w|w!@1W}6n`BQ?{q0Xj`WvQYKiTZIQ2_vv&0VZIUW8vD4xlMo#HfC5;nM!Fajhw z>IqtQt;_oIGz!BZJVfUKkqfARzV2cBh!hYb0L1Ao5D>MzKI?r&oZ+tb9wuY1H)6fz zwP0=q^A+spg=d5L%+X##Sn(Vh+}kdy>ZTRk!`ra3U^W;%6BDf(?c3H()oGARC>Lvd z1Jt_&T6r0?_zFnvRWy~ZriJuPT1D4T1MN1bEOp>Xq0$Ic&V&y6XstL)d=>PuX_fdI z?iA)&Y&f7XgDuWx{uoKe-v#(3jk3f!_uSt?vfP#hZ1)*d0e7#{fQ}?}91U(@0pF+4Mb{Pd6Kk zikuLBO&&H$;ry)@Ah7yA0ZdXc!;g|(L~qxUNS>(Nh8y$kEn zd#IjaZ9r%?iW-M^(}r%^$m(hA$1%4uFWrYt{D8hFA*T5=0rL{w4(RU$RNn_*?xI6r zE03aksfzA1SU9$AMGA`*z~UPQi}~UbaVe-c75H2xE{BC;e1-v^FR8>5S6JdoyAMiN zB~73B0SL#!@ib66t`?Wcb+{bASmQc%v9Cxwa@S2KbkT|3wAsjI7oF5i!QFI4kPl(xLPit)Rzg1B7b}Jw=*JlGBHsMO5WgO7 zZ5Ld})nXU!+GwNrruddol&4b+c^V9XsmGd+yJjgs4~c8UZirt2-7l^c--hsvp}WO* zz$8ae=8%6MfXcDNcP(+9F;v%E;s$VxX!rs7VBmO5+z9LS1x@;biZi&FE50Xgf{kGZ z_8{2L4ym?_67b5Mu3&DT)lJ)PpnUN1RNS6=132RJ*s+IpcGGEas;3{+OJ9*-84o;T zV`<@;{mJRb=T9M@uffCrjONlCw1|E|<@8IcpF{_6zs4Io~eH~KdnexK@n)0Iblow~8GOfkS!Dgbjpv!O5 z0(yszq~C)=e*lI4NVW7H)zb%bEd2#;<0HD9K7sB1D+KOSx`F;dx6o(M`Ogg{*#aL4 zTHPtW4~jta#1B9}g)zytTT*QVabh1xSoJn>7gO9&_dv?oOA9P<_g)%jiF>{vdsgZW zT_WOM*Q7n-61^Iv`G)Iv_?F`i$ONRu2$OT0O={5NjE%FhNsSW=ehI1BMoLrKy)P>NN41ExyOZ?EmNzK7|)O%GC6;Sam%{-V5YdH}!4 zh3@aBZpd{vJ(%v-gZJZdd#KmfLl5D;psbr7=CvM4w`CdjsCU}J$MA$sm^iuo;~DSw z;ECsa0>6b%;^JM=%>LADc0CUHpuS9QIF4s&F`NSEcaI<3xVI=LIsMa^1Kq$fp79x6 zyf^|5=OyzK&Zfxfre~R-&lw_bcUqn=Xhzcuvy*fF$eHEG&YUme$-&!r8)p6U1&7>7 z4>;n1d(is@I4FnQFQI!Hpr2$8zKzaGb$l7G%w*m4O5snPQSOp`M!8U$&KZEd>Yd^> zJOKBBpjH4fZM3=(Dv=lle>9x(MFEW#Bj{i;mZpgVXr3shC1Mh-5L2jLl+a0HI^6aQ zIz!B&v&C%MCFam|qKxhm^XO4ApPmv6=vA?h{wWp-DHe-Tu>|Sdk>VV&R6HWe#S@}J zyez83>tcm?Tdb6MVznG2YUCtQhdRVsc_{wTfC^DBH{ka;(I`V=y^M(s^4nsQ{E0YD zz9o)VBgBbntT@RSj?bc+XJ2=5a4q6c@m@bvpcuXqS12(}<; zU~m@}53{FMBV7ZNuW}L6CSYV&$X5aDqwuCD$sX~TcpQ{@8GpI*9^B;sS_v#3CCeDu z&6N8kO*3A5`HyTy@^{8 zWT14=O>g(oJDkY;jsZnF|NCD01E=#&UEzs)5S>4j5ncpT$GxBf@4FJqBpvWgCM#|+}+H2l(}fXV10?U;NX%05e$Mn|7Lokw=k>tVD(K)-R#O*PmC>K3kb~!z6As0RNGvIe#Q7$ICmPWF_ z#`6ewXzom8x<}lXX6CUp22{EU%)A-C3#7SeFR(kv3L?z{3$U?JS|3xXARTY-j_l<-ZqwcW$F%` zNwO7pZ*lntrOW@IT*1YmHSmPahz+zyykl&8kRA}f!<~<|(+%SH;t$~a#en0FxU*0U zIa9m~A@UsA_$Ae1<=?55AtoHD73_z`T&i!?&K1l4;5s`n~X?=_kZ z3v!rv1DL!C)%zt?L$Owiw~+I`OM>tj4NMpnYppg$r%Un0h1!hT( z;4YaLhf@k!?R9%B9L?{g(IBO%!Q6m+w~sphS$yc)+g%_YC%fzxzDN@f6^Co7 z$O-xo<+;Ynkni7V%pJGzXJGyzjS_!BQt~m}!Y6PGe=`_ynPmcsSxJMD=^*~%ItXJ} z4D@~i>$$|(58RKkfV+3U!2Pl>xSs*se*xUj0q(y6E>;x#_5<9H_Z!?##9v)-uW_k6 z2h{zKYyMLuoq-6vuMfmhkzZ;WD}6LkS~OkyX*R+=uKY8BCwd4xCnYFzASj;#Vn51e zeF!|eKY{-y{_a35YB3|r!>*a#f@)_X)$A5>Rw_)Kaia=L|o<4BR) zBLa2klZRteJ;Lr4!{D>UaFmmJVRlge@k4&Z2s{1->WhihRLTAbOsADXotL0)tOfHSjMQHO6lnNBp zk%smAr*U+aJ6-_pQXIn&co;YBZTS^lQzy$-C}YY0TZRkIvOU|0r;b- zSk^<_*VBBtkq(!~q(q(&w;3kN$lm@sF z4sd-SP|#}!0;B~-@9MGW)GkqCw#mB1G*8*i-8mD}QJxzqX1K+)kr+@qQp`-nyrxFS zjR=LfOqV8aDF`HKwE1ldB9Wf+#EmH(MFS|;16Ty`L3i_y_C?jd!33Y&UhgXj)P z?o_v)wgR@t)YFXlW@#zhOOsF|>w{+w?3ROP(%($u8skMS4yZqhS%rOSf-_+=W~YI7 zWaCuIl{-Q9)965XI%MQbn8dGAiF7u%oU;D36u{E}FnkJf*9k7b6Dh|7u<QXq2mUMIXRe|V@@mgIg{gH4p=h4W*53z_0$5;&W}Zx19NHxoCgt|9G&7y`u7M<8 zO9d!Nq<671GHHo_bZI_KG9m>-N3L0O<6-w!8`AdNb_s ztu#m8ZUC_{t;Rp;Hcl3S$p@f+y5&Fw{aib+InC7AtSJ71`~?9%l;VQ51fvpT-W9*RiFw)4f{BluhF?2RY9kk{nF78C{z~r&f3qLH5+Vr4UhCKpNUJ$sEMwy#2 zH&GsLmh0;oI}Kl7apd?r(f>&NVE}k65TFwLncpKSM~bQ*v0~$GbbxtS={yWG53Beg z&3|KwXbqy1TAGZEvy_fT2HF6p+ladj*ty<_^9`GDCg6C3gkx93t}OZ~C@08+0YoVs zC5r{lA{d$#aGidV1^2%f*{p5nf^L&i=$05Qz*bO?sD4PSCWI(!oNX>)xRqm&s>B$a z=1I}o5rGllE;dgeLU@!O=BTGT%tPxDaw;MZ!bCU`&RyTQ9&v9_NA zQWf&074T%MJhKfKXCZcRgaT@Sok)Z+5F0sDG~jnNSj+Jm|96%1gS`#&pSoYJRuAOx zKi&9%UbL)8&7=?Y&G0t_ZFASSYAWe`~tL`X;=Hi;GxDt3FBJi;TBnK<)CjkTM# z)z+o0wNk8Fms+~mR%kmAX{~m#t=(())$aSgTb2IjzDedyGNAeLz2)9>&pqe=&pG$J zdHmUj9tN;lb%n7NH-vE`ZVIClH&@}!cuN>>#VzvsHhH==jJM;KD%^&H2Hs)dP$h21 zJHx2L9dfxdguB9c7w)dYJ-D|DVcZwSyK%p~zDEQO%lh|L;eB|&Ts}~V2k^lVK2(Jd z<3Uk-M4pa{)UBfWBQo~UDtrvNFplB4Txd-d#zo~rayb!33qCGSpQysa_+%9x!J~5d zlz~r+37?TmE`-m9@K_k1!{;mU1w0+tmuz9IJ~LincK zza^934&ggtd>7x7W#5;PAB6Bj13xnGV*@`?sMzQv9e0z$vWDJ_9Zw|(6V5(6mbBd~ zQt9E?{`fvC?mDStCbqq^yS;I@LZCA>Xe-R@b&_^}c4WX#@3ICG9EtR%;#Oj}m3HJk zKNxWLI~j!y&!K$3#f|NBCf0Siopg6PL&@#lNIOj&O=O3hq{8CoP$Cv8n5m?!@1)8h zTGiapn@SJG2C~D$jvKQ@eQY3+iVw#MQhHPETu=)rJnuycGj_UGe7MgV&3hc(kxjbJ zh`rm%IK*K~GMREM4WUBabX)Y^1!rk}hgjE5cbGeyMZTlF8tKM&%C-| z;O7Q@Vc?fKkTeuj6hCbs6{HGOgc7N=Eh!@V9o!g|XA^<=m4ROy_zm42vR%Ek zu&2=7FkOE7NTZ*C($t1MvihwNIujaBx%<7xz@Uz@R;|Grwc`8jSUfc{A~i>2Cdm}* zwleNk3U;T`BbNAH9X5hCbeuv+i_yhiE;7=z0jK3K8tBJqi?rMOv|1`jWdeX$d@NcT~ zl^@SA57@JO<0TL?@E;TZ#Z$8H|4clMXGqO5TiaGI8Vo#Z;-ms2)>KNBnW|g`3>7q0 zg)&SPQkA9(t145OY6e5vRMl#xsb;C!hKiVKjyi)F4yJa|<*n(|Xoewgsv1>ms<~>O zsiJDWsTOd1b*5U#>@d|?s*X`&s(N*{sTQd^Q!SRu61CJ+%hYmHHK<0$kg1wfGXu#~ zEi&DzRxos@CV;78YNbN;;NXhBzWVLk+eSv(G9+k5SC+QevAxz%+8!{}Ii^~r&Nb9( zQ>{^J4YiKItMv-2N*q;}J8t%>n52j6*qNBas-kN}N7hLU+G*mb7Mf~t!TN!*dYRZnhmjREFx2^`+N`#iszY^}YO6Y%=i-zl z3hPQ3>pNF@PL)3T6jq#m<)p9qI8})HV#?M>om2`tDK)azH|I+bp8UQEZ;@|WpF=w6 z6c+ddeIoiCP*~)fEyQzC$>wq66Dq3H3=-dzuFlV4S)oQUkTju_rI9taFu>y_ZSkNX zo4y@7bU(mdS?w;;{Y9UZw1xzz#SKN(%^43p%^S1U2pK+1Afm>Gx-1mW!fA z7)(y|$nKg5CcE?m(#95%cZxuy%H<{Kno>eKQwa&1N;hpKGYNf4u}hv>JK7tk50OS9 zwbjYUndcpIHKkVO!IM6LOxH9tmN=j$%BPO*E$Os1M$rl@BbhCM=U;N+zyUk%PFOUV z4|La{Jp`AbIwx;PVOFEad1=Hv6qgs_eJT*;Xsy)w<8@(Y7GqzO-!wtOB%j!46ia%| zm`CL{_6L3X3uA7v(8L5a`D18enEE?+bZyzyv%70b98E}YVc5yY+m5V0=Swj{mn5L1 znUbEJXGO6U6BAT6dyr?9VAgN(fUpvYF@+0@fSVNdhjjr>SfhGevvd38*MM)9E1HG==h^!z43#jYlqJ3~iNu7RkF)2w5$y^jb+^8~ z#D*o$yD0^fBo_5x)X313NVP^s?Icf-){>g122{R1h2xkrjx#tAj8^1Ovxhos+l;6&j=2hLA$gdma1_z|Q5OwG z=8t1R84h7iG{pVR#5r@xeIf}Y*)R&=k9Bile6aeU^+rSEfyOKb!LJiKv z0<1v;)*^=WXvYRZ+)kg*!(MDc9Gh`9w(w`ct^5VBo4?9!!##vsNO`g6{UmVr61W!; zp&;(WC0t!b?Kk04%9V4E>+ll1l!!IpD!dFYr&J6XSQsF-d#N#wL4JnCaXxJ9LrBBl zgtDhmZD8mmUWrNr`wcjJGjPDbuz`eu5d-{)OVOHQmPTzLO)*9g|hvhP)IStB014*eUUu#4w#?hz=3XP*l zk&(tIpPChagKTN5j0S6rYYi2x97k(8Y7FCUR2=62$tQ#_e${De0y;K3FpFmP5|}>B zWL(c>WY;kgm(sPB48BeVUJn7@LAWj^tS*7QhLGMsIBzD9w-L$-T3oJ96J80=gOdau zBtfnw=oU>u8TYw9Pta1z3mIZdzosh4ow|_4M_*t8tL$&>JW^;Vb;F~${*ljuSnI>cVL)c zk8raj=3$foXS7jG++-fZ;tk9v!DquHxf^uO@swm%OU{*PVrHTI8LZI>bNy!Z6jvy` Jk=HW3>Hj@onmYgh literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class new file mode 100644 index 0000000000000000000000000000000000000000..78766aca8e273d6583a6c60c49da2de0e52199d4 GIT binary patch literal 1114 zcmb_b*>2N76g`uqF>%}`ge@scTN)sBOPvA|TUgXc6-c2Eq%DFcCeEZWcE^zy_z*sU zFF>N8^1ui1QHVRXk%AB}6j{D==WcWEoipEmeEkOC7H*bM!bKfAE-7uHj72OdaaoCF zC7L=pu4uTXp~aw$;y`j+FwFP-VBZ?VuIohB!1Ha_+Dd)*8H&-^37c((PA?R;FNdBp z5|$LvJ3nx(u|48;MNt5W4Eu6L$T75O1Vw~Jd67wp}+az|Tc}1H`TX+oj{+*myqGzGgBg)Z7 zqXeo|HQdBPWI`20658#OKTm7LTs;IczaVF>9U}iR39ONvOWe1q+#S;I;uP5y(-fS> zIoeTjQko^2IxI)U>u6+0Oek9UHq1}RtN#cEhMCvzk1&%%YA7hk3ph)wPC+GHrDXOK8ps!0 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..0217bc4071c4f124cd6abdf15274fcf74d29c349 GIT binary patch literal 2491 zcmai0T~ixX7=BI&Y}hQM&`K#EVufM|A6vCzZLpQZQbH4ogi^68T{efXCf#LrH+A|u z9B;gJ#`}6fMQ0qn^(Q$U$M>9FU^9e-VRrYtpU?Yw^3Q+2{|Vq0EESh=OT|Z6OyXnQ zR`Ch$^dgHT@%3pEcX3a_XGtWmEFL)(d3>(mz6uR1DhBbOn+%D+m>{hxC@5G{@Q`6( zrQzC!$sZq944-cqUX4L3*fw|bb;I+x$I!E6*_MBoVLDy(xaruHy0y=BoBQ88ZcRTh z_YKpx9NW`Z^DEhzZH9Q>sc?o=(X#n^aAQ>(>_D0=!$=!nObC&{OxS1|GZdKoF z)M}Qm^B3Iq^+PG6H;djEEE#C`UfnS%W5ZERNz-$JLynaFAi)eH=Y_&hNUU4>W0;Q$ zb;Q8XSN09FRx%D{G8GgVu5C7K-+IosEzhDXFWa``8?rzQ6X(s#XwLH3=hz{t906~g z70VVGaNL(CwGg6bS!oeN8x00kW{d*ysYS-42qUSK?5u(k$(NmmYw{IKwA65mc3Ak% zcwuO`ieUxo8XjRo!511fQC6^};W4%qJkjtab~Jp2r<64fU*j7x7HNRMcW7P1x7gM2 z42FU|4JMv4bm+5o{W=wzJ)1g#wxWS!UqclK40qa(T083u3+M2xi(Vd!^xRX}!SAJRU#-C~?ig34a#QjYa(#9NS!i}wISF9o$MHz33H=4b-t zAZdXJ#WH@*dQ^Z`@@C<|>eg<)Sja!z%@rTzX-&77+o%#*O%aNG-7;&uk_(p7NHdl| zUh+shLE>SdCN7i!bTH5t{ zQ#FGy!}*fc6zB`K=Nq<3=x9 zs`Q}kg_SI>(=~h<3|HtD?xHs>Cwg9^Q<2UwdSA-Sz6SdZvCQl-y1MX6+}9YPXFo}R zG`lf`6lspqX(-Ua7{=*D+ISliWRc+=@)eVoemGs-lZQTQxZ#tyrd*$ zk~~k-_Y`hO%!{Y^7K#2Ip-YpcBw}wcreNk@N8BHUdJF7-#O}3W literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/GlassHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/GlassHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..54e5b36b374d7dbf191beed69e0d40cf262b70cb GIT binary patch literal 1454 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 JDNYy0{s-mS8!G?+ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KillStreakHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KillStreakHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..366f522a09da0f925ad0c2b0a1fe6051cc1c1fd1 GIT binary patch literal 4738 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 YxJ7U&%;Gk!8H$?24DD=+%F;^TZ{)->5&!@I literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitMapHandler$2.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitMapHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..8e65aea15d1f64569e1d4bc3b36cff59ea68b820 GIT binary patch literal 1012 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 F`3>}&8~gwO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/KitSignHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..872bc5a2156e32832ba438abd56d86935eea2836 GIT binary patch literal 13515 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 CK+r@0 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/NametagsHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/NametagsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..8bf05abe2f20a5e04a5cc2856736ba31b3c9e0f4 GIT binary patch literal 2780 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1d48724b1059789003c01404c7b55f9d9508450c GIT binary patch literal 1218 zcmbtUTTc@~6#k|yw5|(kxd~oCx!8g-V0_G4;w?z-nhaw`*tC5O!;mexs~75hT!yLO zOL!jg)XJD|YaMn1X)GO_{=0}y`?`?wpaWYyV;rgmKeSq^Mx{z1-eHpJNbE}YEOP@( zT6gJvJV4RM93C-D47iW;ldC$sF~i?(Y15&+^05x?V*{HETmOT{us-~_dr~U}5vJEX zhS@|ncr9(Uq~+pVD9hbr3!)*z@olslUR`BSSGqL4+YokN85^pIny_3d{}XTKbgGU* z(>ju8LT{Unikdo6NowK_!`o7DqmmvW`KK-~D+dSVn@$roMLi`(^LO349cBg3Xhg?B zvqK}AAxYh*b%L~A(laEz)wN5o)eB_4cVi}L9j7U$k)}DG#T_Ec6lv4FXp%Fe(K$RM zFQY$^sgJ2K+KpPcLiXemx!?*TCk}s<@bi->Ov1Z>|Jh~A!euHVN9z+5Fi-mpS~qWG kTj*yiP_D-m#qgA(eUd%PJnb@AAX|niy-(63OaDXk2Okwj!2kdN literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/PearlFixHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/PearlFixHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..14847c0ca8e38f0829f32e8d708af42844c98281 GIT binary patch literal 6208 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/RegisterHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/RegisterHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..96155354ba3a8e8046f9f2dd25899f4e74336295 GIT binary patch literal 6102 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ScoreboardLayoutHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ScoreboardLayoutHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..172a1a2a43612b89f017cc9877480a354d286cdd GIT binary patch literal 16056 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ShopHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ShopHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..19ffbcb33a94e586dbd5795ef4517da72473f8f1 GIT binary patch literal 16317 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 HH~0Sm_%v2? literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/TabLayoutHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/TabLayoutHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..38d40666261ea4943502f977ba3d115f69a971a6 GIT binary patch literal 12329 zcmcIq3w#vS)j#L%?#yH}z_Jh^Di{%$1OkilG$7;+fsmw00MV)}$%d?KcH`~_jJDQR z`m)v9TK(j!t#7Hd4@+xEuv)RLRBPYw*1li%-P+oRqJIA~GrO5hmW0;dm)|clckbMK z?s@#r+$dce{k(~rq_x@4Te#WJTe-#HR_SRg=GV#Gc6sO! z(s<~UhiwLLH+Tn{bVBC~<<(AE=%OGI?<(d9@Ah*ScS|d(bB~{P@SY;*q1VqbzPyf z#IFV4M& zIs`D>$M4gsSJ_Vn->g-){Zw9%!SC0qUti|5Z_%o|9&*~ZYSpner~N-#b>c5h`!=mQ zwaIB8)T#&OIPL!x9zP%!x?M#5V353gS25qs_XNqucjB*JFig?XArXdCauD zwsjohTcdruqbX|%ZCxx8%dBVelviwLSSQ&Hai%rL6490c8Pyrt9Y;^FIoTD7Z;zy6 z^6YeaGrh4i)A^H#*&BfhqN#Kk)0!iL$$`u!yGN9`Cz`SQm|Du4lc_!7-2;2~#xmh( zA`{CDI$Bv)|U#wf`XCk{t*8uV2y~#|kBQw*6LL^+)*c0iChNJti zZq72{Eu#cLPwT?VXo{)C&8TQb?1=&1-eez?<%?bkD>88t=JZ+0W?D7L@;NZ%8wpfm zAe@L^34&`+l|}(TG3hoduvowaqvlvT1J;e~`d~Skh{OI&r@6(?`z!EX0bYvo3d$&gVEmn1Y03llE zkLdiM&L7qJV@xyQaCMPXcPtT!*T+&(D-L87 zNx=|vQlRCt!nEvE1<5W~i0|c0%l~t}p@#7)I1h38KPBY=Q}jB`(P=t^*w(e++}A)2 zL2wMUWv|unAZe`YLXfgjm%k%9km`yy#w1adj7>621-vGGoIU|}F!|#&r1K|CeuzJ5 z@?rjz&Yw2lZSc4(d4K25jaz* zr#>3V^g2VH=HrOgp`M+Puq>Nss!aY8KV$Nj`71hq)#R`7*Wr($?sA>KVe&U+imEI# z`CHQRRFqw8(huob_{t?r7ff7{Op*gl{x*L{=kJ>QJ^sGVKQQ@+{0vqL^~ePxJZwhpU{o06IsUEAzc=|${AZp2V)9@4c`@nVgiQw;>9STUr$X+( zoBRU*!{mR8R`gKMCX@^y@-MM|QK-8GQguW#I{(|`7x^ViaZbpv@MSGs-`Q?M=mfv4 z^D8F5%8!@|wYsj9sXWT7E1#(}rCWegh|SqDz-9g|5|EOe-b^buNcEdbGowAQnMVg;twtzB*f1ko_D{V@N#m z3AGSmE7X%!y@*|9s&f7Z1gi+pa{+!HtwjO)m8ll1N>eRSOVJSy(9cb^3^LM(=>b!n zt0WMgB7ftPx~Z0nb88T}Tx9ozdMZq{LajtDH`OXWX3{aWnrY6-3TIudG1d9>tf{Kh zT2rl47nt-D`Y8ag1G2Z^!Y$HhKm-4(LmC~@*kP*ms@PN;RJEyU_;^6oLcY2H{mE4I zszFzcrrM}Bp|2@Ge_&cYv5+U-1OP&#@v?RI<$wXxxdn)gtsw1f16WPl#^!s@uelxqKOH(D@wT9DBcB5h;gGGO$br4uY|3;Qb+*EWUD5ool|IgbPuRS zQ_iN!F36e^$lP#h(5Wh)tg<;7DU^BBQLbg(CX$Hkkt}xpqy)!#oIMrvR!%I`NhSg# z;3Kc(V%jlb$$E-vfJERLMa&P4~=7OaC{ z338);k}Jby|6Dt052-F6KVmY|yAcY>%L}N@_B(5!Z2{RISryzkehRKua6Z=Z#nPzN z5Yx(~;Pj-U@QB&vO-%)az{!Lb>F6e4Ci;{ATuHCZANqvZASW0*+#=+1UU(`w#pJ$!u12l z12|1;Os4uGnQfvEsI+%T{6)V+vBhRr^7)U4iiuk zz^;?nA*aF~?8Cy%cGaD>H)R_1&?E(XNg?NjPZsaCis^Lhswl*rW(y(|!&rW;uAsIv zTp-+$OvSqwG$i)LQpto=`Jj;ZWHu!d(NtYLl1>Xjt);bnYYocwd2X*AM+NqtGMbVt z!9C!dDdc9`u2J$l#pxOooC*xIBg<&8neGy*);jmJQ=MJ1+u;`c&&dXVOC_VlG8p!X z&ajaHpR$tx3zH+(=EA|&jP7XKI@F2v430W?gvC|Zd?=`a`=unwZaE;^uGTR@iokc#aA9fN(lli1D70;_gJ--hGmczYz)ZJ%!= z3DxISqV>rE>)>187l{uboS;3M#!HaZe$N|c6)FNOEU2es6QI%V>&%=4ZBxP{P1$E zUu{uvpgaf80{kL;#!*{=#SEatRF+4kXCPslwk;Lyj^U_03P$WB5>buV9`v1Mzzo8N zb;gd7z3p@{Z3WQzCCBY1iNL@)#XE5_I$~dtVA8ySW)R(w#MP zv7ppF#pSc|ouy=y!O=Hh&6~#g2vgSkEa8OLwJu$_K0;Zf^2?dr@)8l+lX4`s0b>5Q zjsybG!`jy{-FCnl=q!e_TH&hAN``X^mU>MhlGIvG4V4yXwaBFv6(efE_#o4nd3MWT zqtQVc820o@)>`AX!1!S&N06-7hV@ViieKp|e3D3|p~@L6adbg{O?egiXrVXic3Kp084(`<>8a5DHx}p}} zv&x%X;ibbqx)+8eAMcFpwBssuV8PXWo}ZTskbqsE>L3@AxqM$Z zNw~l_@cY#35REKz)}*bnXR;;qZDd1pr1kFlt_QApv-EP!PZt8$y^B(&Vt zce#}C)((}pQk_*N=&Hk1ooa_kzs0E*{f3@1>6bYCp`YQvhyI9D5&FFxgUlaQRV=YD zxfi97_1y!fV-cz9lPLhWxNr1HSE$Ui=45j303iE}!?~qvhk$*sW^Xmq3+$0jKyaJH zW$L_%o%nL)9)9XC?IkCk>kfSm<+?~b-U0ZdZbR94&Nzh>k_V;P#N+5Jx(`1yVLC*L zO6713?T_FSzoG~6jPt_W^T((dZ5;UHDnA+sT+d>lU+cxaeBL*!jNLOw+;!=zP7TW1<3qso_U z77daApznoBuP0bMMCOv?N~`pEf>Y40^mreksXLF*v|wO}rkDDLC^$qjhG?es(wBW% z;=G*YdZ`CzTZ4=o6LXkGs8rG7Av(=^70|K-P6q+-gAqe?28aabx;o}b$C>C@gqdZy z2hYOAW}?)4jOHJt8%w>9)BGx}R2!nRhiJhNol~V(dICmvfe>cM%Z0g_cw3ZxTaMmg zst7I`7Umq%7~ppgDAirO$wOt9QF#z19liKG!6lIIFfBbuQ!9PmU>Hw_s92iIL~x%k zc&>HVgXg&h8o}k(z$KNw9N#OzPH^Qgt&+7?%flM`A-h&U51wz)8kJR~IZRcDY3&HD zQ_$!IxxxP6dV6rOTe4x=FhbR$dq;#r-ZcV&8jOV`wZ|cb#~ZA(xT}+%VXChJN^PZk4FnO2p1kb%S0olgY3p3+GMwyhH0~Jn6}`_;oXx{NwYm<>j>dM zSk%&LceITVVs%aim@fyfc6&sJ`=#L^d=v$RARZ`oU>q zIFNmNG8|8L4>)BUdwn^y1UtoG-kd`1g~p(!(wno3q(*DytlReFgYn0YtdQKB2&tBg`@gm4U3V%$U8 zAv%C}Gw!4+r#CR;URqk|Ey-c3%hHrJBQT>|aDt1&%^_+m)k=&Jipr`zRYfw(865}ordvmFtV|+gt_mvnq#!HJ3y{;6d z2OXwIo#ZN;cQAUu0NeK;qHUg4n&tUd&8Kauk#?vSx=?MSooW}*76a1mq+RO6 z6j9%%-5#B~JPRo5SwcOYE!6Ajq?o6lF84f4anGaF=lMJ(JYT1N&!6cEZ-7$XO*G(b zqkZ0;wBI{OgWg-{YNVhyc%Pzcyx*iZdB0C@_Wp|A;(dV1jc<~y6-?hDcNz7_N? zUyQEtCFw@re!9swLhtn*qxboqr1$&2Mz{E$rCWVJp@Y6Z(g(CMdcPK;4{8;3hgL~< zY0Y%E)sM(^r6$a%~%Z zmA(d)d>!)4BIT_0joez_L|OAKyxT&vPEfH<-+qNNI(SZ!nrysmTHU9=HEWb0b>n0im8(x8Gw*Gi? z@GU*T>ryu~l~29xb}A~LNe8-`7L^~Nw+XsEf^Nc3GjaVGO-J=M8}-{<^om8w@Lo`F zmuJ$lwJ;qsendaU(jp5Ax)U_lgC~69wAtV_peS=6oVxI~57N|yGwJPET?@YRA+)kx z*IQlhM%VS(t{beb_n_;BY}ZXz*Za_QQ?~17tLqkY-JI>Z)#|zpUAJbt4q9CwK-a-+ z*X>rS#0E}k=hzkJ06#&|5Kx`vGwi&Rx28 z@DUL810L4`IM)FlHv=HI0uuKF6b}FnqDp{4)R9x=gO&o>QeZI^O%FPM0l(~Q9Aj?8 zT`K6{q9MA&ss}zqy7v%yJs(A{Z9BW1zR6Wi2k94Jj4aYVQh{m)QS6xgs=a2Ig`5T|#T?tJnj!d&eVCSbXAPME2d zFxc@qB+qk58X$?3cGp;z%3P!jn-t{1w$Yit!kO>Kd^@|0r7+J$!Ebpyek4tQ&h2uR zgM$3cK1z2Jz;e&0Xy7Q_>oj+Xd$FZpzlDH#NFU->e?h;Zzw#e(mtT9Y=HKxjs!P>2 zb)ni$rF=2^*CPzR9>4#-gfHdGoYo*;Wwoy6H}D&szH9l-R_jB22jA(m?&bUb53er7 As{jB1 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3a30ec86c1610f96b310ba1cccde5939320403ae GIT binary patch literal 1655 zcmbtVdr#9)6#w0AP&O_wd5NHcGIbk|f`G5_5atkcKmueMj3!-o*$Sm4Z8yT#@S8{k zgMat|{7}Yo%ZMXRW89LR({s=J^mlH*|M>b1z%(|(XhTerdy?FbpdAmwxQloM2_z#J z!Dtv`7;lA&2}vef@eor|F|A-m!6SxfMKfc&nrRwVamlpxeTJc|?G)8~d4J#VRAG6B zcdRbgSfm)j(o0lG$uM!nT%KJzWqjXsNwbQ=kDZZPa&PuZh8vq;Sjf6Ux2=L{>t0jF`(>=qsT$Nl4rf^(!yX4qMTHX|CJAWkdD;MW7)U06{-aNy{c!RO7v{9$) zEBb$EGm&EmrR{=X=*SwDST7&sg|jW2VCc-+x@P7y$B=UMFeJyqz*j9xIB8RJT|wev zV|~RYX-Yw-Y!Qvinj%|v+0n(aA?p~ZKiKg-t)fxg8A~^9m!PpGypml|@R;KXo^o`d zo1+6!j%(=T=)rA{XGkfS<(R{~f(4G}SX8jYk;V%J8IEPV#``k>yy!I$@w8 z2*f5ChHLQZ>LpPq6K2#UAHbVs%eol(Ttj&nx@_w=Kr>9m{|6UswHrt8xF;(Iu9iK+ zR2LmbJI)%eT$HXl$Ao!D9M~0ldp+?BKa)00-N^3=-Ag5Q7{+S`;&18SHHD7@f+n&X;i42mnf?c+o0qwmTPF9W9} zT4iNh9;IR!{9|Rl0i_zKpQ`HLTs|!LfoKnCNSxBAHA@$!DGIcz@ts5tLv)e0)9o6J zMkTxf;)HOY6Xr=1pnnf~!El|PR!9yJ?@o@Kf+a^!5lD`mBAEPw&?n!zk7zSl13BCv z+UrN?Mn7(nM4ob&NY8K!x2sWYvXLG$CumB3M&Jz1Z-@uapq!xP9N_?};yEG==V)c{ z4MJz&ztZ-iiGsXED|RT|JB;EzeKtP$W$=px)iQz@B+CG`e}{O8z9GXHpr;5~wGpS^ EPkvCy9K7}n&#Rbw1prm^$R+ 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/staff/OptionType.class b/HCF/out/production/HCF/secondlife/network/hcfactions/staff/OptionType.class new file mode 100644 index 0000000000000000000000000000000000000000..a2801015e425981912f286756563b95300a9ac57 GIT binary patch literal 2341 zcmbVNSy$Uu5dP#vk{yLb>@*<>Aq_SKXCYmJLovolTpVx_(75R)ga8F2b7VU`y!Qt+ zPE&fC)1Ex%U-XakbmmHc0KZT_Xzram%lFNlJO1$RpML|GhMhnR#U#GMqJl{Ur6fl1 zj6X|!vdo{difbyqRh*|D}vtKrn#dZykmx3)6N z`@CB{*tcgS#LJ~zo?PSeD}~%5#VQx`i)&>GYH?|`u#(HK(pmm#!5|rP%{^O!UV3T1 zGBZ`v-Od;d&vCaYj$%ce!H{tG#l_jlugq%GCQ$dsQ~$#~malCR+Rl>W+Dpy74cl8aH>#vj zMBL>q2@B)rtC6}mP`y;M%<8)7Ih-KKB4-`fY0OG^)Fw&seBMy~P70q|r;BUsI8=oG z(@CfSf<)Oi@!JJ!b3+_n*|r-?qBVNQQ|DnxNRmPMs6PgdY|eE^s{Kiutdz5Ul(Vl5 zct({Zi{qq&fzg?qY?p3()Fvq#t68fWTuOAD74sp!1-H4Ez3AO@lP8T@)3fZy4)<2) z$@`q*ho<2Zo+gtTOl(M)y4Vxfa1WM-2iVl`F>Y%ZM~Wwgxo2)uvL5l2PgjMl3;g+1 z!!=yz8BsMYTf+^pnfGjSSHmc87H5McxhWaE*^xhHD5LB^_ftqgSiv#HjYYu{b9erte9G#yG!G8gywW& zZira{B#Dra#6?JAAta#}l7Itj;tiRLsp#8MHF$8 zdV1o@A>{PrTPW$F*juQtNgEZBbYc(m6M_Ny-x)+VhUgy)#4pO8_)IY66?64<%r=J4 z>DnTKoWL+JM{j@inBEhEoip3ay_iR5vdPzC+F^U<7-<9EhM ztz=QFqh85Vk1U`NApHjl#Yp9pdsEbO>!{Oz#S7yMpfv@ zuh90%dVg3uAhd&uJ`~mt3++d$ekH8E+9m%*D55QN7?oHH-9{zeLa$MgTNp4ZN(;kA vMQ!1#@dgqX)oJFDv{<&shE{sqOEoQc6q-QG zNZXHbGL*-DpnPlMD3z&IK_F?lAb20DGo8FpRuOk=pzYp;uuZQ!gS0wfb|>l>ey&7d z&FlU}Vk^B&v*rDhg^j2a=$wa+e|XltLK?<2_v3Nm>z9TNTh8fyaH39?3m0=PYN)$t zaA=|>@bEwE6KL~58LDU?-}O(lZ_%MIQ>D*Tg2NPaa+oE{L`1m;!5dJVr<V-w_H6Dfa$oB8y0bG_mWp9w z4{#OmTFtV(MuWRmWmWWYmUxOSPk|C$b((eQG7RqlrSoJk#2aBZ14`@KXxa1Y)>3n2 zMFwpOYaO^E+^X;k&&n_PD{eX5trNE|-FkS{ZWV4b4DAg;h2egku6kexurPhTCVYk? zo1ugo$Y9Nyck~`*-A5OX zV%^qphO;|hzLG)nte1{>r84tyj=HtFdB5iQ zt=2wP;-TxTF|eoqdGlqO14sCqZa&@ekVvGOaW{m(aD0ovx3sp9A-+Vl)wBN%p&1|9 zyAVas@kq|mz~`=VxSlk6Lbeq(v)#qetLJJ~D8=hq)H{Vy5^)jAWg~5zqNgoEj~@^L z)0!uHfL70G9ii`FcI*pSHW~Shj_fCNenwZ8O!vny;vm^W=pq{@yC1z2pQQK!97KP( z7h=$v0a_6n{SFfYjVz9?GrcFCPTI?l{e&@>`-+}-=%-IKmyCTy?>Cqcd_a;seYxbm zwny`K5DRdEo?wmKMVKa`CUBg5Cox2K%V9XoBimxw$Rm$qbc$)#@N9&lGe}WH2gLzV SM1JFhf#H30=rlPZIP(`zPp8oU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/staff/commands/VanishCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/staff/commands/VanishCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..29ab517b1c585865846bb59f069e51cb94fa6d58 GIT binary patch literal 3354 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 L1clsBl0N?cHBS7G literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/VanishHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/staff/handlers/VanishHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..36e5d307c3a34b12a90c7469216db33cc878f06f GIT binary patch literal 11164 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/stattrack/StatTracker.class b/HCF/out/production/HCF/secondlife/network/hcfactions/stattrack/StatTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..a1f42579b89248613bbab035ece9ff265e21ef8c GIT binary patch literal 3529 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/AppleHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/AppleHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..bcfc6e32552d265c32ae5565a3a5f9aa97ba9a3c GIT binary patch literal 3378 zcmb7H`F9jm8oiZHQt8f>6=gtQK#(I67Sme_$vNEi^usdQdCMJiRHmSEg< zMrFobalw6eMnMOdX@Z{P@n?UW|3}Zg+IzIVU-t?%XMU%&qm!0q@? z3K<;IaX5u4^d+$c_or|K{VBd3t;YZc)xxn9{)pphIFZ5wIGMzQ_*06*L+bO-O4v}V zLplm6EJt4*hSgK5m5~&R7_Eb;W=^Fr2CE+9u+^HQ-X@fa( zEH_#hF$%uv*k0~n*Zz){K@HVi&M*}&&6~D76pRl^_oy*sai$^f6bx(7a831Ho~-sq zO;5x2>wx>_xOBZ-=fs314;myPT}5uf3W_G}-*lbrikk*~*z_VQiHu^}=-7RhF(ut@ zUygUthG3jDw`cN>Tg(jwV`HYDlatc+a}%LhZl3f$wHjJo6AEg$_4jTLtxzO1tgYB< z`=&otR!Q>JCP`{Y$7M`g>37_zoU)+bHwt5vydivH3WP4!@q~^iHQab4AmX?jG(D5< z@3d{lH^Rti*boPeEDkN3^K_l*bu!MA^iNZze=2CUoS=GxL7M8C&CNySRTPTS?=>yU zjMB@?%Mt%NT6#33`klZn$o;0utmW~%Xj7#i(1sir=9Pt7Xcx$0tB$7xp2jl*f5BgM zJS*@Vo)*uv6&U$p9>sBx4;+pQs66`)A0|1f8uL_Z*W1wk~uc2 zkOeNPrEl?_z`t-w$7O*l__v1J7O&_9icUk@;(JsJ@=eKh5LGD?Z(cR!P0yFMa?YCg zT0E09tdA`%kmrnTOkht~tQwXvm-@n<&}-O6QK{IJX^Cfd)G=6As&SNsSTpt9*ll~h zVHcQBo4IFkGoyyGAx2>#U`E1~MP;oU))O0Ddu8>6-DSof9sieT)M5&jG-y#QruiCPX~rYzpc!~PN%~|r(}VBS9KdQ*c-UUkZI8n zR!pX)pXi?SyHqSKOAfPlW=^PnU(3!UZGLZygGKe)(GtV2C}FbLwm>pWntt#|c;bfX z9&H(5_LHn2sUvdS;L&LpHLS|?oR|+!+&bTh_Gwr_|IJlxnUjVs*Vo+TSPruy>AQyQ zS@e5&R?ov)5We1{KYFF-u~vTL<1z*1H&q-1ws|^`-E>~V4Abzo5ndc9!kd9ld%gQ4 zgRm^7eTv!7b8C4aa9w8GQ6522w+~~*PM#q8Zz#{iH|CM@6z#Ow(FP4GAYpw{Jr9pC z$ud201H=EZQ)e?7Ww4&! z+f3hO>A7R{*aMVOre-5fv!No4W;hEE^=2_^?R|KxSf<2sQLxRbnMa5mB3!k zs0i%iGpUYgzAIY`L{;u-qjR#?uuek>P3MuG#`@UIhM$lw;pTJiL$Ce{)rkw-5wTa8 z>MsYyP((-}8-yHcP}RCyr2@}pE-HolLmG_bEId`Mz(!*lx0JB?m~u>2EIjR4&Ctxj zuPMVP)xDsMSu7jTI*S<^v492CC6m)=zL>m7J&_4Z_yk?Kl*n1SZ%$Wh%#;MQEY;;h HdcFSxFM5a9 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler$TaggedTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler$TaggedTask.class new file mode 100644 index 0000000000000000000000000000000000000000..6034fdb1a7896253bf51c0cc4c8f14bf1a1dd282 GIT binary patch literal 1243 zcmbtUTTc@~6#k|Znl1}S0YMOuoAx5C+!QSr5kshHz$k^pw`n_+q1#!U-L1iYrBOs5 zd^Y|lNntoO8Z!&Sk#;`0^FN0@e+5VkC|ZjK*;bW9=Bngn>y+8Muu* ztz;B@-wd)y2KtnNG%~?*H-_mLW*FM)vgFAc!(iUg6|3l1tJ1TC@}zfSJ-7LZ&{?ut zmP&f748zIao2B*`q8mQDD*Bb+N4S3of5bAxR!x@u8ewz(q%Aqd8H!C zyWFiZm^r0{-mtmr3OZZMyQ1W%vMmpUrG)p!(N*iPbij$Vqg;!)3+-C#x^yV?7AHfY zCokd=_ZICdT9W}i5I_Lf!g>vBW z3PWE$xT)oP(x$X&ev+52M|m1(0=`s#hW3i^3QE5AMXpSxOs1Mb6biYgcP(tKo za_CDo>}{?p)=u$Al)P-}6~ow{FR`_;*?`U|*W;>0T{K0|e{~`@Ce=J>r#$zBW>~${ zwa2z!k&2o-*s{-3%^m$~#)BXfuT6`ZQzrsTSD@FW=fAa%wNsbnpcfUd3Cgr&7oLUDNOyxIiW{Ob zLL0=;Ic6c`0E`k;`U4{8XvTgZoT0t3nHPWwf&ylV{yh5Wi5kIT2xd}13Udw?!A+7P Q7{&nY2Ay@#`_+&5PfJNaF#rGn literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ArcherHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..88cdfb0f6979c528b5e99593c6ee9bca23fbb4fd GIT binary patch literal 1806 zcmb7FZBrXn6n-uVS(0oiltN#uQl&2mR2D00HIzzuk!UDbAijLNEVs*T!lv$S>hL4{ z1OAKZ47EDr)UW;?KXy7k_Xg}{CZ!`Y?Cw4Hobx>A+~?f<{qpxe0nFmt0*3KH0XOks z0YjKA;v;-qz$dun;L|)UpB0fqrGP=q8T0Mjoqrg}KeL*5aK~(Y?qI>eT?dN}mIMl0 zG6>Y}mW&$$ZZ!;5wAhq!tYU#oA_IZZ+C%wRdhJ9vy@e=}2Q?ih6@mPw4nmoFns?0MgH>X3L%nMvA)neth!ri8RpuA8eKenQVx92~Qexh4p?5!@YRLXUM z>|$$|5T|Q8RQKBZJ1W|eJ55^7)LOo5)@7v4`pB3~_B5%_z9D&{_f-_L9)C|otCB2K zWY|4wwgVjsOuQl9kP{eeh09^0lY=F>F9TAVF4bC5;O(><4V`%Eu?qRL9$wmU*=*S2 z`mK+^)c=UHH06Pc1TJ=kb$~XSW{>PnZ6?xhtjR~VHPnc}h5Kzf?W?+uHG8%YhOI=} zb_lYT^Vm)f zGSW}9q9i*)VIR|^ZL7>sC=QRn?UR%BVsIrrgu|)acdd{Fh60srSZS`wkV+%WM5&xU zu#RxOE+=ZB$iQkCCo=RY&#R0%nO#TM<0%Tg5>xq+3QWb3l?Vs!RuAPL_oVV#qIL$# zDKt9{uN@g)I;^KNNdlL;JJ2;}N2PCv`iHiv?((vr^DEWZ>quaL_fH~qNdBXx&URCV zfw#W%Q289t?>m6U(@oLy#>~emIksd=OXWJ=<=s0BV(>q2RLl2yUb}s`fDFGm1bkki zWu5CjzDFjfo|Npc zX4&Ds|AKqF!QLt-wD1~H7SJ`@e-sicFG_(PnpEMK+>8I*(CQIzArq6!HVlO%v#WD*~%1B z*=pZ>8tu`E?k&Zw);iydSZTP;pl`W>XNeU%q(1QPjm_@xSDey(A}z=DZP{2Cs_E7> z%o^y1X&?PDdBPD(seC#7?xr3qV`!WuPlb8={du$&50q?5NcC8 z)H?0jP%mWjg~}Snr|zW>=7y6lrQ`u{q7oE{z3n%v(IZ&cJLFR5!~r1Tx* z9WEQ@W^IRJ5nAV#C43sOIU2I+MG2liW#{)`p^7n@d7Z|eWiny&kQAf08<#QF1hRXCI zE-}1CmV_k3S7__S4`4F~=z912dl)H>Fj6lPw2n}$QTi#3VG83XQHRil0c4~2`J?#P k37tmlCsG;)e_)v0+#pko91PPpL9Rw|l_Z_0rRYn~AEjzmVE_OC literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler$2.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..355640ec043b304a53a274f55fae9f3f9904d5d8 GIT binary patch literal 1627 zcmbVNYflqF6g^WO3uUp0@=$!BR44^mM0_GI3o1!bBZ5(*ak?E~V7t5Q&SLl*e)DH& zeBlS*o|*pm_4ONoaV#{$#05R{C((+5X7nM`fn>%UW;X5K=IGOi?HLDP9Zc1edS4p*FJ&b>w zU}#k9GE9#$+{lN*_S~W)SB2#Y_1X(It#x~q+e&(FXen6|L1^V19)?eNP>TF}oT5db zL2gM`swsw*%%M>ZCONpmP@nUPf+3ZcuDBnS3L<#S3l4eO^PbI}6&^@!SDf|wPz>gR z>xv*|EXbTVEVuL+ov|*6TpBZ)O_RUv$FL07{{w34dWq1AlypLCHYj;zLWJ15q`1Ag z$o-f#b(H$HrEpID(Xk zcJ!FIftv;!XUf42ch{^3 zg$-e=iOT+J7iq)~#2&qlstmJ1z<2U8RFvk}pEP@J(k)$Z#idK<>iAc>XAG0I>wJ(n zDsKTpTPVtv_C+zLwa>6zqvD6XJ%cOgrMIz_-pWK?@^!q zfW$5u7IEMjiC{pTcQka)x#^f&Ij^fwP3uOLhY1aGvIR`fEs|n^sARG-;;KZ`vNi-T(jq literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/ClassWarmupHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2e06657d7cc662d86a9b6817fdee52a576aa6f9c GIT binary patch literal 5295 zcmbtXiCYxs9e#&h7Z5fy>B7>!Xu6M_;Uphgrz(l#A-M|NbHS!ZUEP4Be! zzLOr>q)ktoHnvq$gxIFGX-sSH`%drY>EF=%{bt79nIhnmE<7{e^}F8R_083PKl3br zt@vvkx5AEN3mh5wI3gH}api=J@i;0_DCa5hs}-|{;&>HaEht`-z-#e3aq{&Eya5l3 z#~b5#6HdnQW}HmmEqJS7_BQc&dmQh;JL6b^cZt!v1=)MzXu*30+52R?U$A^c>^+*m z2k^lJK72(v^e^a7|9DtrUV{0kXNN4qDPmk8!lv9~9&1~8{VMwS6@ZG1{8BdYhrms#{z|}sh8pFvR(-?Lc$8(lev~N*> zNxNmKg&y5@D1F2A)~B%-dRDaQhVJZ^u)bjqbN6+0wr=c~5bZG21aE$iZfN`SqeGf? zSRKl8Wnqt*QnUT4rHi@07W&_cPMWN1N(JbCo=7ZVLGZCLlRa`=i>@1nP1fR-n{PIfWG2b zN#D8jES+ZZsE(tJ=A6C9^LkFg$}loC!72EdxKPBIWq!y@*gl7EW=s~>zrr07mW8kg z$)j6SdCQ^~gqlUUBIOqcV!gx6W;HiG83>ER@mR=Ri^+r6rD%Jp7VK_i)syj*jI+#p z-EOA>W6XzH@w=aaspfLoLPxPqteOSyE)mJHSC443)J5`CR#UAKdCjoq^y=BH?w{(> zjuNa{mFSibS5qm?w(DD3S|s$(RRd;D)0tf-G%p(`_pqs*@=w7E? z9Z=zVj2SMLHY~8W+=j%$wLN6F+e?$zywe)2At8QlyO~$=5t})yp>FSGvm%)6^DL+3 zZaw7PC!m!l;QH;HcR?2}ulKA7I{R(e$@Ll&dzI8(ZTwXhp& z_@%f762EXGh>2#*@pgX4mSG3yZ2rZ08|Un`#rYjbaLmgCpLdaBoFBere77_ zL=<`|YKI{7PC@1rUQ>c+Jf!foEo(nH68W2(=5cqgnZ>7fDu$G=GNv0Hd`7O?Bl@qkaYGyi#902OtCI)qw|I~YiN z862Hh$S_&LAlbk$*+pnN>Emt!H9*HaK(`d=n1>15BgE$ku0DxDTtEuXA?Y7zFUq`05Rmg9MHypQgE0483Bm(z8x;7Nsh-pYeq5zbi#`JY%Q zPloW>I>cJ z=Wd0F#XwE)fL;)Qp#p|qsVWGM2#-qSij`_J`H0`5VyUdUgccUf%@EJj%V6O)z87+|o^SE1@LvA~Kf$1v literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/EnderpearlHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/EnderpearlHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..12b04e1cfe79ffc0a7056b5a2b686f69ae44af17 GIT binary patch literal 4021 zcmb7H30E7}75)YRgT#0PuZfK@B(_*=xvAqO#dVEA1cEb0BcYLn@u|*X-pqUV-TU3|F7NT?e_weO zz%l$gfgX(Om`I=wlW}xoDuHP{mf+jt%{Y$>a^bxRybl+f@qRoJ#|L1_&l&m1CNK*T z#~gBU$9xQ$I zK8O#=w-4+1NCKUBwt;~8JNc~q`lwv`SOOo%Cv<#L$ES3BT0>LTb?sUAvZJ9jbIDvX zQ-#2?Q^Te|KW66pG{h&YoMQ$BPiT0sR^mitYHDg^urK_!O(&PixK6I`By}{NupBEm zso`KUId9e8r+hx9C4jg(%yDFAuEc^@j2cp5X^>z9Qb56Tz5e+g6yVen!kOoEs_`)sUEQ3tmiCj@FXJl)zKT8_Uo-G^Tw&l0 zd;{Oq@ht=2##IB);X4MN$9Hvn&%pQb106p!@FV=#zz9Zl{M5kD@N)ydz%MoIQnpof zP6VFib0}yp_@Z6bRQsIkwVTX}dEvDmv<juu?td3t9 z_%(i`K|5gJC9LRp*}!k{I|D`B(6MUZCaxHG1-A_R9)B?KDqhp^x`999PX_*s*EDRd zV3D1|z#DSuFZip0zv1sX{$b!v{8Pj6ja$Z@s#?R5jW^0h7g&N#Cu{?(hnkAbSbiWJ z$-#8~(Bod%?fhks=sE@>OK-8y9}TX2)tQzZfG9GkCx@eP1x{^@Hg% z=kMI#OZ$m$t1p5nUr4`499bh8I@ZaVs8y96jqJZdO7lRdlz7-~`nqbSN*#y>53iHy zOIA>LTHQ%hsfJpnSh@7XV9>_JqRGpJlVjISj$Wu$PrXfn8}8Gvozbnqq~XxrEf2W1 z%ao4?p6U2Dqo{5(HM-VS-|Ul*G2#1c1dQo=wD25C)&#VwEGnmGSW0Qtgu;d~E@g7}= zqiEtgPjNoq&Y6pdaTeIu-E#xlE!3UAf!NEaUqwTAcM**@p~rYS%B{!vY(YJrd(eP; zu?73E7j1ZuGdn{iIF5Jli|X(Y9#+QRiN2DlPLA@Yub{q&CaF|YO69d4#N3Du&YZxz z_${%$K{GLq7ki3`kM-U}Lcnrn^&;q8XoRl#n!8Mpl1c!ifHM* zg;x5qy=6xcJGr!rF74)P%N{<8xMvmj-o)NIUWpa z$1%31^8}fdFqju>PJ|>zH4S1DV^Yzyc}){(BsBSEIJhPga@AEwN=dW+y0j%L+8U_|koJT&51r$u&z)cgka65xL zSTayFaF<~w=u5v?V_0qZ!f{o1DEEb}MDX7A26o@s=T0D9<=cTA3D37*@{!o)1^XNFl2fn&<)xp2nM@Uj^U(PL{qE-h(Psp0)M$v0SGPngE8Erv%y7G z8}Ck=E8dHCXZ;Mo{|3^^1kxEWgmFFl&%(x(Ca%~t0(5^Ebfo|+o7J;UT7upTEYKE_ z)+Ae>n3d{hu*w%Cjv}9nBxlG6XkeD){MZXwtY>%b1(wdW&QfQTT}D4=j*8 zM(P;nDxbi}_==e%j&%AYbov}pB%csW6N`9?Jf25Tni^1;KwXLaS)PLCNloA?uF*F| QcjR?kBF!XsgTD0q2Hu8&$N&HU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/GameHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/GameHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..55a15b9a94c414a007074a8220acfeadfca6a5c1 GIT binary patch literal 12562 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 XeGe!H5wBp(1~dH*o=(h))5Yh1N@OQB literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/GappleHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/GappleHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..bcb1b191d13e08f9b4e4ee3ff14e7949f82d2ceb GIT binary patch literal 3447 zcmb7G*>@CG9{z5+lj<}@fP{dekY=%ybbv-gQQ`3~oR#yk3 z<2Iw>Hmk}E8pR}LU^de`Q2G&S>TCkD30Mh~60j3+ z5|~TiVYT8WQHH0XqG4XcIf0ftP22SD5=i&t$};cR1O20E|%=rn`@Q8*5f$NV|XtE?vnq`y89HKM@k}7)) zAT?vm%aoBy-A5Dsd1MaQdnO(2%eZ`N@E z|JLvy9T)LmZk>+T@rI85IH2QAwepsZxABgKcXhmn_jP=L4+VPCyVKTB7tZrb@A7-K z-|~F0DzGgSjYwZ1wl5S@;RM=28?G?YiOL+~8D?2XJ2jw=;y#s>z+R}CE(EBerm8}z z^zQ0uDhLeLYc^6-r~~tKUn|IcsdQm?YKA32=BR}jx^DnK6jKJHxIzc)>G%lmYq+H2 zV|*g8`|5<(h?4|%UR|le+VM^hFoxrBZQUhiXSQ8N# z^!ZI-HBaBTPnn~JZ4{M@tv$U_J_rbvOr&_VDnyp)iWqAoBGBf_qQdR^T*8gHy`D6D zYOO`q|36*&{JJyZEg-0?a%~V6#%dZCWjZ2oYtsVy@X_4CLt_sPjF0CI33Nt7u1Qh3MLt|HEat1TCl|8M(W$dC z&&!64xsnJDR$ODsv=|79qo;R**2~fxGVHvxEXku3@0nCY%r&+xq;F|+c1P4?KxqBF z5ifNdM=U!U)b70LRUXYQmu;YOf>lh&I-wntC4)}{yQnfWGC6sreHu=9PM|2TmT3&* ztb!8gzP9Tj$8uP(t)6SxWsB+eA0=1VYG{5%nF$${s{dP>EBUJ!YtPL8bwm z$Xlmic!qlL9OOT!zQKh+@j%0r|NqvQtksc_7I>mqs%!EU*JULi=anAZp8j6*W^830 z1lNx$f)N#kIt;a`w$K)9ZiZSV;}O0udPYWiN3fX>#cuFM;nT30e_o<&`#8!Wh9>@3 zXZpT^SVB{#?=oUBe8IUUY-ig>37~^|omho+*ul}dKnFXK<%rtYg_~)SREk@;rY!$} z7R32K)3=EDD4XW79gArB651jX7ctC1Yy2JT-@b(8MeON|FJi^^Z=j$43M<>&7O{#8 ztK+dHtYN>soy{UTmaz6RI-76_8kg58lrbOW79`l;K$JJ|<+~AG*uB;Zyxq;%=tYZP-ifNgTuNxPx~0QC>&W&p4%_U&Ea-{DCtql)j7qR&{-| zuVVe$&njSLE@QpG60Tdq^=q-gSj3H)_Kh{vnf6U#w=3+X!tUmRzF@92cJdNI1FY-t#vQQ@g16D zpD~!_iA8LC^$lq8ONhrlqiB%+q+bwwSuA%%Ty$4ms6@6P*0$~di&njks_ynz-E~H- e)0u2t!cCu3DX2h|aWMBG_RgwdfkVF3;a>r7EYy+! literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/HomeHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/HomeHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..602857454ced630fd617327d063d3527e991a433 GIT binary patch literal 1547 zcmbtU>rN9v6#k~gZYc{?ZUTxTAQq}DAc9y#pnx4)55=*-*BuD0!$N~WiA;hEl{_Bc4p zFvO-zVS3XHU8#S&4Qw*hWbFcHXv~{}ulW1h+*#MREwVJ_Z9}&A2Gey*|dAd5u9X8Vr87fp#d87eWfr-+MMPBfU8Er0T=o4RvlRgYro0=i+af=_=jz^5GSC(1b zcZnf!jvW33S z!zQB3bZ1GaGUnW`g>DlkJlUczN(?OoCImdNW)v(kOoq(WF~*=|SC^M(SLPWq;q29= zAy(GT^!Zf3|C3WTGhM~aFib;ErFqAaN%^hODnkE8B*Abon1hkPk{C>X1RMN}$os&j ziJmd?0iL3no@%g8papHTW4MI&N`|+H1{o%f5FPvgc8nT^V_b;fJ7W3t4|GfG7bx%0 zmi~nJmfWU~P}(X< zs#R01y<2;bYMUN5J+xje0c~w;t8MLF?R~elwfB8!)%briv%9l`(DcWT**D*N?>qkA z@xC{YJbT{*0M>}|IM(0>1vkbK!fRuA5pIg(b$ERl-hem8`TC|f5_q$GyhT3V8pYe< zxEXJkbMJ`bop_gmu_zA5@owBAAGemF9PcT^dvQdL-dBeA;{#>*Aa0Y74=Fe*$sd*r zJ|agSm7G2%CEqSz?~qbHUWPkymz=m;!98&-$GvfU0-uzl@i>lQLN1+@tL{^9ztsIx zaeNvN$Pp=@iK7L_<>Ns~A*avca|%AM;2{MM3#c8YsoQO7EtAnR0(1NHjANLZV_0UF zHX=~od8u|#OJ*G-og|@EAl73Ha6#7A1=bbMZVbHc-P_UL+G*JX$=>YHkl`ddt(42Q zbu*bnQD;hd8ddf2U z(ni0YG&FZ5m<(-D9cV~xtb$gH2n`RNV>qM9U1@EUoP#rYl&2+1d#Q!oB~TMwQp}O4^xM|3z=GhKJa2)JV+qXZakSJB z{pDjb*D^hg+O=VAfJ(O%D}9hclD?p=t_9x0t#ZQkMTstl0!=}&F71W)(ISuM^cH!7 zTA6GD)w{D4JFM?BG6r3Gj%iws8fx0?E}A=9O<*uWyM zbToEQHAl0#jRD_hWE{;*5fwrDTt5uEG?Pft8E4HB68W&*=EbkSkzq2&^QTW2IP)Yq zkwr<$A~4j}bj=f37|6ahE1lNeoZ-ra#W^uLlFN(L)9%<<1gZy*?~u)O$(VvKDEOj+ zFDZD07&&@cAF*sl!B=S49{;UP%Vr3hIRn-~G5IL%2vWTu@}TnbCdc1(^J%#^S6XZ1 zMMT5aGubp@5qycJ{qiNCcy)#DFG+c-6=mQ_N@6UeWL%_k3J4@;vb0e1dK}we)pK*& z*0qeq%2MgM!L5n@JOwZU+Y5DFVATu)8iT0iu_ORS<{U{vX-}7tP8+@>I`w{fX~tbUXu!r)+CLk@4HC3?kCnAk`Zhxr z`-(uRZjl(P*o+qo%qtv!{^2Aiu2<2DjS9Z1;%oT2f^Vq!CcdTO6?mnJNAZ}7Z_CGb z@R-2*6{!POwtkppysuuX?`0qjHP<_Xx~=zHwqEafpQ;Vik5Zv}#}E4!1>aTiJ$zq9 z76%plK*bO7BY{%_XR25D{CH;B^h7z9HB{f{)?f_!)k# z;urWOlTpRv_?3!Z<2TGn6;I%|OiUHO!|zr60e_rUxR=i={v>UG9Di0Zguke`8rP^e z3+q+<6@OFlcl<-aKUMq-|5ouTT*V`F=Hq$l33}Qp3H>z+{-feaJf-5lcv`_TDxQ_< zonROVAwmp~06@6_Rz+Au6j7pzQlT&-3RxsO2USFcqKcS^E22yls+hwvda~;AxSM&4 z?4cYU8%h62;dvC$)GHgEJSB8CWCCkvX7&Q-!K_L=f1f~AA;Jr#o|U9P?r?Nlb1YjC za|OXH4U`gNBp6(ru#M z03gm5T^w_4&CH}VhxLc;Y9S_bm3=BnpfO;!7c+hl@bWOwQF&^4WPv5cpcZZ7!M<)9 ztpm-n*NU>E-R(n~k71R-beLXmLpwH5%>T!VO3Wj#;{Jy5HY>yDhjbxC6!PoVhN)H+ zxlF+~7ksiE_QeY9oYoODo0QkUVMF9sW1pdKRjzMj+wL}w3mV$n+kKVXyOj(>u8kUg zuCdk1sqD_@a*%73K`qm*U%?}ffyjW1nC?rli935QWz)vhr95AHbV9JdIQWZt)!BSD zvw=NDoO30&D4|ZWDUxQD(Rq7KJxQGHKc(P6pB+RB5zF|& zWes==^P5RbwlN%^&Cf(3Y~VY4zx?|qs2sCbuXg@xpTYZ<3W^5?V69H zys~0?@ks)(3KbN-gzO~%p7`240JXRPyD6vyr=SOWeDP6;r%|C`FZOXyDd+d|H--yw zfa5KIxEKoGfkP9RH;&4#=ENlC3rwPl287o|5{qw;f0J0CU_(iD$s`u?2rI2Fox~!6 zF?7k%DFVk)y+Nr~Xv-MZRV%b*L$o?dW;G#}+9d(C?QF`>mLn|Lfd9$P}4q@eO zD7`)+j-I%4LF9HS5^+&)K^e#EsodG9Vl*wnCY;U~YG)L6Qt=*wkmlRf^!l~*xP)Xk zebj?y#@7yx+PO;tp-AKMUOI%A;H5NO!Buz}UQU>*a2YPfCG_SZn9w*Ip`=UDixk1^ z<8B$f9z`cbdNqNP6Z~GNDCido1{4hP$53!7@C-H)ZcdaxiO^HzA7is`dSLT*5+Mhm zJ0TcjOKwF~qG{zMmV`l|Cs2D7YwkfEL0igX97p{mmW8oDv19_LM%G2{$MOS-V>oRB zr!R^0Ra6Zg8pn$L9%^2!CJ-n0PRiItxfftQF{vR2D;WT*>H4*F`zGj&)Ik@q%?ye8 z#KOV|HKSg6oVtmM7tP(UiAl(v&A=f}Yng@K4vB?=P|edgQ>Gp-VZNb5+#t8q$lD`hqu7tjxj6JdTrS3^6(rcaa)$V@sw1sH%(^>04Q4yey8%>#5HvMMUIW%RPvA z9vMf|80sg`9H6W`j+SvGZ@vXe_=&+o+62xV$Ey8>x+uR?gIjBu0n!c+q{VrV7Q0@P0(i^x1+=>bfNO&S zVlTw|S}eeI0qqy&F?uyK&a31DK1M-Ah*4c$z&Lz>Xo?=2!0J0KQgm^G>3kio_k}KZO$W;ICr6#cMFf0X!zG7E3z7Re{#J6doWCHWG`@`C HE!EEfOa0Zh literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler$LogoutTask.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler$LogoutTask.class new file mode 100644 index 0000000000000000000000000000000000000000..4d9496688195dbf46f0632db4f400706630dfe03 GIT binary patch literal 1505 zcmbtUS#uLd5dKCMUTeKzkU0#A!Ho;Rx@UIR>ApA z2~{B>;84X6;76s>yIO+)0}s5+Oy52Ib@$u<{(S@B92RZtgj>KErbckc!eJXnaI}DF z9J7%}X%sV<9l>!MCvY+$P8Hzcbn-f5V-9C6oU`yF!|+2w$D*=xpL9%Q0NcdVc1Gy?ZCCsln?09W|mHS3&6?sN>MHqQ~ z4-1?WMR?@BKgxY5j1`@wBt83qjzeEmWtLJBHZwZ)nD@AYaZEbcg(AcDzL$#bcF8Tn z^gw;O!tf?H+^fo`qPdt+D?EsWh4T(B;G%^~4t_#8ae3Lo6$e*wjbU!uf23o#&3nRa z2%+4FuZm#Z4Ros|nl9zzu7I_%DsY(oo2R;}1ZPARWj^2FQ4fkWE`XEkyIm$w%$}rjzrlumpl~1rAEzNudKr$kb zb|uyK01X+IR{_;(R@%kq+GVnfV#I+!9Nk#pdT;&0SyN$=fH{}HTiGeSE z(BG7EB+Mp=3>QlS4j!0Ls#bZh>)(ODX_Dfe#yGY`fqK%!zj?8dfsrEeDmu_KZUqx^ z6$RW-k*2o@IP+-^)V>|*cltxguxBeP`sdshIecYcr~=e~*$C3mWhGB?_7-^5UgT?3 z@&wssC7;BiM&nQLt>xv~jdw5(+R^R^MOXJe{^lky1K-S8n4+z=leQc~E}2An z<>)<*-E{6Ds!DW@ZhQ76*zEBa$o-k>?4@%DhUomAR^T5f;2HK2wYRU034BKs*`;0? zdHWudna?hU=>=Sv{TsRB&}-x$y~4KV7=8(B10zF7`Gr@oH!zyRb2tfO1KSz?!H$RT q6DU$>kbDAv(K3F4^CVA_aQg1EBy#wHcsU%z0lICHjnR7EkHY_Z@S80F literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/LogoutHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..5ff64e55c4138d6ec9837f12ddb554bf2a9a3862 GIT binary patch literal 6031 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..7f2d0ecf424e60cdf7815c860379e7b35297b655 GIT binary patch literal 879 zcmbVL-EI;=6#fQ~rOUQZ(Ne4Ruc$y1*G9e4m?&x_p~e*9!nSx`TK;mc|vzNHcSvrDt~-@^__@<{ral{m-yQpCQ-M zzF;VIq!Lf#gMkR2^Fcs6Cp+5XL7#^*iRYU+Gm;U5(^g7^t$;_7pzwAl5}sCmAoqo< zggMmV*d2NM+%rrvy7=q$mwd{J@gwC0I+AL*E6hmy7A`y3LeW71OAc&Q9Mo{d!c_;?PsNib_^9r*f?#3;zS2*gB(hM`jb{kYM`4Vp!Z#*&rG ziJ;_V=(AA-wLcx#%<)ch`x996Gcq4i%rdQc!T_(aLaUSdHcD8fh{&Ka&#*@}!Bv|d z!H$r9k5b}&L5|@FCz5noB!+ooI#m9 Ln{LXJ1qwd_EJN0` literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/timers/StuckHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..9ca67e65923a2f9cea5702b5295a80a8c3e54381 GIT binary patch literal 6704 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 M|GwNTe4A>X1D4Y!;s5{u literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class new file mode 100644 index 0000000000000000000000000000000000000000..5ccbb392677fcec9aff0b0a71d323ee8154f7055 GIT binary patch literal 4167 zcmbtY`*##)8GgRK&15qzVM$U!|a0l z^IZUYvDAVT%qY^B(2$K_VE<3%0wa{i2tD>`1%aaG4>qln>ia`?QCmod*8oW(UA-_r1H4c`&avR1ilPFVu6;Y;S6nJJpiRA$t3ZD*=a zpe0+%+mp8CmIc;T87iJ#%w)}3`E=Bta!jw{@_6`&09LPg)tr@-CO$=}aLvY34k;n^)7dX+gHW4d*+I2=CG+4?LmvzIoV~td1CMcWdW741cC9p3U;}xMmfRWB^Q?TG zS+7N2pkuWVQAha5oaNBg&|tyj)H&Sb*ZgeFx4zZR-)D#g9vbz`+%ywTA;sFz@Li^v zna>|9%@I@u*Xf?~D_z_5fEaFAMJByIV-_n6V?@o2S!3axoVaA=ygm&l8%!MXtQmpv zp5c-^m6@naPupI`b|iKscRnMZDi`}6)ZS24(YF7khnSWvZ?I_Rrd0$ryiStZtBhpi z1YTcTF?2PF@gv_@wGZs%m@@B~wZ*pCI)UH`i#;nkTB^7?>!_{Dv#CEkCYz#xeb{f{ z0KO*x1CJpiuwHdb)eMiBKTjRZP1K-CF1Oyj9 z#DIn$8Tc`NqTvk#KgF9&a074QhJm;7Gl8~y1seD{-eKJ?TR`pA#wid;#Tm?a@0ED9 z@hNS;kaD8&RD4e6ZoJpPf~1J6|%UWLcjK$=dtWbf0HEC%| zHDcK#FNKIXJ8L<4fppJm{p#LG`>DfTt9zyDrOeG{2V?(y*h$EGdO_ za7fEVCx?xpB|M^zNXkci%Emfn6Dd;T!iR4(%BYc((!G#!ZwoZ8k7F~2(T^ z;yO;@9h_EfC&-&6QqSNBSN(XFaAXv=3qBN^`LXf|h2SwtlQ32Jhsb}Nl!p=c7m^xI zXc+znEWE7rDBQ(UzRy%ED?aF2BHqg98p3%D5DoK23T@9ql)_k}yc z9ig|8PIrX&^hW$+DakM4-x!grkNGEG35$gf|CS2!@s?125nHp3{M&r4JJ^0U7Ej&A zqbe4$t~3L&gdIUVmyn!zVe)^nH~uhB)s?zK@-Y=w3t*J)}3g8ogQJN=zM^K`TnEr5Erh+Tks|OZoc9e|pwqH6_9t&5F(OS$*8(gHLxoE&n6HGr zHzaEymXsNO59(D@FH_h&5x;^b@lqXCim#ixpV4@p$|bFeWteT}f=bzLv?-%Qb)%~k rnWzCqPgea!{xATfh+Rrn literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class new file mode 100644 index 0000000000000000000000000000000000000000..24cc1b3fad98d34fc3d4a5c494202f2188fc10bd GIT binary patch literal 1562 zcmb_cZBG+H5Pp_k+v{-@INlKz6tyiv1$mo&rR2*kz^vcMKsz+D_Tj)}P?tG3 z-J-2~p6M|xlswaL__l5Bm|1T6?;UqPyKC&|hHp9C%Lcw>`R zi}lD7*K3qOEN^kkr=F*-h`)SAN)-ml-?gYbiLzDYx*xdYrt6B^X@bgm!#)cTNeM-z z!Q~SDn>z2+$NR$8Bh<1(L%tcfwu)XMCocwE6o(;d*bXN`ovCy~ z;a0ZxOv5MAxqqR+Fxl9x@FmYSct3kujR8e66t27R-WhB;T`7#ypF^XcP_)n|=mNA8 zzi=mBWMQH_KwH1)0?85*xQSb&zfIB|+Qp|Ffqg;KDIy<9Vi=?~7TU%MKNR8wK8L1I zt7uZ@E25{61itAK{w`_MIts%gHrc5kv)jQbmR!ls K2@~in^!)){>Wbt5 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ActionMessage.class new file mode 100644 index 0000000000000000000000000000000000000000..a0a1319a2d06bb52c55cd14c844ab403622e5346 GIT binary patch literal 3027 zcmbtWYgZFT7=9*+Y!a7?K~b?HSgIibSF2dtC>5gCXaE(eMXNGNhOn~irn?&yd%xd* zKz~8Mw&z&Ta!!w*{n($=b9#AacOeKgt$6mF*`3+<{=DnlBU>?wOLDlZ;7S~gI3tHKDL5X*n{skBj%#>J z4iiyakCVOeIBwu=1vlf^g}Sw@k;g+=%Sk^ogPUb- z%(Zp1oaxz=+2!QOdXTOR-mB_r;|!;s(|l`LxaTZ;mb5YyQuS#He9eu>IfV z2+0C>2)847Y71?a;4IpF%GDfU&k0+bJ97KP?JGyMoQ!LTB(v6R#WKm6?1>5mDJa~- z^_4GqVltZ1sw)kVZhXwD+C_0r_nPLZwmT$2P?1CrLu;+g2W^|r%U)N}jh7fQ&(YEf z?x>i7A-&8hFjZKnP%Uok-`}g^9oSTF6%NQ(6>|(b*Y?FwRX0k)R&f{iRN|6;21c6m z=qIpL+{e2r-oyK}dQ-uNDn7<142SBLcwLobaGw$~t3dX!2>@S)CICJwVe=7J@fki> z@P&#m@s)zFReXbQ8IEnHU<@s_+(!#{M3L|w+Ki>{HB7e3uD_9K|JBgWxx(hIMQwg? z17~x(TfJXnt*m88$(U<%(=oV9{d{0UqNt@3a0kQ1qfB%(2*@AI6FPHL(?!lO4q*nZzBAuVO@Wf^tLt#B0QGDWINd8BKd^zuEk#~q^IV{jc zx1oJ>>tb}(BKD^D0h)zy5E1$&s;4nUD?AFNpl?NvCOSA_-s{ z=_SyNR`k+L^>xsPLo}np;c#GYlH{a(`x3THq|y)3ut?{9>H#9Xj}Q&vTJKNvH-wty zHoD2}qNm-n-05ovmdOr|;AOJiNKZG8k|yyg`U7uI$XkT$O(tS_>EjXN48!DUE5i>+ z(}&9N7+Xe`&`60jr5DiLw}2LUCAQJ9KsS&d|NcE4rXQ`5(gL>US4k#z1R`k}bJ&Zy z0}6e2(5#c5E@ZGD0~FZ>s_`wVv8;~Fp%Z(&cx5dngKWaMiQ`^2uh41}LVu!B!3hPg z{^8Z{HL~WTQVsIzN-d!6A$ATgVb?@&WD&bZ(vQ);fIScJ0wuDy22;W-L<&&~AwjTo z5-2j5l(*isQqV4(#3^zU#cm4xbt6I9^z{YhhUPrOjbI4D2*y zS9Ah1J6BbpVshLsZCs4_A24%|sj(7P$=K_tKyD@V9U1-T?)dZ!IHBkIkKIV=dE1$b zcU4nh#c4_}4643*D(yhVzl71gz3V-7y;y}o(@tXL$4WL^ax1=c1LE#R(ydbaYUzU% zXQPC5%$BrzL7|h*o_pZhz8lo+^&pl}lr&;lU3=!qhL%Id?(Nw1_BY)|x(yzsfVmwe zktZK2z1OR0SUhlfprTTm^Sdpf`d(grT<-dfxc5Ut;1l)HGL@? zY=hEdB{=`BIUvxbM@~XKO=*z(Ru>GE3 zimyYF??e_E-6I@jbep7qc1ju%x?Mm8oYk4BpO(S$F+_Rd5SjAAA+qI>+#zx=(`DCb zhti~OG6T(4g)|AEXabiKg1^B2sYk5L$~ zj?g`Sgq|bxzCzy%3^ONpf_?!GvL_f2`0dT>mqY>#qUXu1D{uo{v}5#5(0dI9mT!uY oY1#!wm&mV`4w1P)O*5EHF_zn!KVmG;3alF_jT9N0qa%azTaV6SR{#J2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ChunkPosition.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/ChunkPosition.class new file mode 100644 index 0000000000000000000000000000000000000000..cf3886459d5f0f6075fa89a2fbd3e61e8858d13b GIT binary patch literal 582 zcmbVJ%TB^T6g|@x3s?m4EiQBiUDyqAqj3R=E21VEqV7r=V4${1J5}R1xiOKLxbOq~ zDC3=hm}p#?$=t`8Ip^HWe0;vW18AaFL=I~OSXftK!^WnKEe7^LyG8qvVc|$bLLM{Z z>aA9z%V4$RK4&O*M8r?C+a6CY{a#2&wG#(^*!2^k`Z;LHkw_U1Iw=q0s2_>}_aZLu z<7DEEf`K1M5l5+)NfAoHQ?EVBqRDxj3WXn%+mOpE2D9Fvc~o=5P`rq^zi7GOKb!)9py$DE;}#JtdthTd6k%mb|CEkq>1PjJ%5! z7pc3ZbCYt}eFbxCQyA{f6y~!gI25ZS1iETLjaPSG_FkLAlgA6KI up4)ho)mhGcf$>CzL2@990`pqXnO&F*(pUXSHh+`VOdv6>{!L!d7OP+M7-Q4` literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/CustomLocation.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/CustomLocation.class new file mode 100644 index 0000000000000000000000000000000000000000..4675ff97b960cfde8fea82c4b5945848c4031715 GIT binary patch literal 5964 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 JutJh%y8)^PouvQ( literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/HCFUtils.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/HCFUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..5bcf2c830ff4510ec2841d1458c1c7c684cfafda GIT binary patch literal 12181 zcmbVS31C~r5uII2`m+3U;KWHBayXDUPV7WLLN12{*_Le)`M|Pc93bY~{-Ev3*xF+C`hHZ7$sRj7%fQ0RTo`@Zk{ZlR@=lD^shC4VIjF%4w??Ck8!?Ck99 z?kHb)`SGWSXrp}4M-PZH&-okC!k-daBNi}N=n90N{Ssq~7?d+u%;0neOBgJ5?XX#v zadUZzs1Pd{JA<(^8LZ^ys$x+oRx?(`U`>fwE2>M0#Mvd{9I=57*jP$JY~kisO>Fbg zGEwUj+r@c4u|w?iiStE(N7ng7y=Y)8SRxulQ;BF6AqE#{VwX>ZMGJ#g25lvxU0ldm z2ZIPVJ4-~D*v+7uX%{i*VX%k6#hSRpN1Mf^n%G-HTSYH7E@R`2V!B`S`9!}M@KL=m zeP|Arh#@h|GilO9lqr`p*N9KVL|hXIpGb;P23Pn*N~9TNip7}N$6&ut91sUJaiwQx zdtb}f|MvcueAFgh!ve0-#MM6P6lFefjkuP4sq{|+;J0QuVZkt zSKPvVw=#G=Q{KSfHm`Ui%e>ty-o)QKyy8y&zS%3@!r!~R;%@%F)hq7tigBN~SG=uQ zyj{G*C*CRU9m;^ zImpYey{@v)527c*OoQ3xoGM28YaW-Mh2>YCxO?aIi$v5}Ez#$P{dWa^W# zWUAIlZ8&IJ#2wI~Hw5dt8XJ2%d)kAM8Cn-Hd3vogu?VaM7L6t|(PYBku0FxRLCm`I z;HX*4rf6xiKbaW7;x2ToXysY+cOm(u)IgnV(ZX*@twoP}RnA2)6Pak{ zpx^4OWwSh^Hsj)x^Fe0XOboP`>9jEfi_fZZ_`{C1{Vx7qS)vO`)%L)N11Eg3dps z39l%F%_|);GtJSVVKbd!vv?r|1qzlaM=#hwdEy$UtMgPuSOS44sO%)&?!H*Ee?-tC zXTPHP>$rzQHkpbJMPW|SfH{a}e=M0W2L!nhcQJess>nt5Ht%K{2I0ga5yIbt_qHbxUhERf-KAa~U6DVU|rX2&h^>}V=^ zId*ZBH_$StRXNUlKP=SJ!^vcZO(+mLB_r)`&+|u;W2t@!EW%O$Iur+gKJaloXkq6sl*WA}891{G3dg5i^E05_@ne8Mcpc*}+{!6W;-Db25HGXP!!KEz8s`0an%(RB;N~@JXRudqI(qllv1^ z23K-Drpn_`ka2V!r(n9lh@MO`cN*b*EttjB*;NoKId)j*!Lf-DQAuTLGfa&`=nq8G zoXU~F1_xVI)}MvlP-mnDtm6S=t1du*Pji9r#G|noXMS-3&n#s`W4KxDF;huRd>cm; z#!WxahZx`AVh^4Vb-Rs3G(Frlst$^9G>y!#zF?}hZ*phBbk_KiYB-;j$oi)^i_$z@ zzok%}uGj>9W6{_EZ@lso#MfC}NUK+C;yar7E@F0jKW3}WOrNz48`TD%l{?+mv&VFr zpvQFaJ@I{A{6PFr7e5j|*2Pa4`zeE;ar5Vl{erPyGWeDFwI+U}i{CQ&cjEWD_yf!M zqxh39{!EW);xD@RtN5EP{x1HZi|54in)s(K{v}?(YStllq_GmCEoNpoIgp;?5&xbm zUYz5mopZ&1bn%k-uO?pB#W6{`6jIKWMRSU!Yp!(b(jzrpdSx+Aa!2OuPZ@(5JB#i+ zyLU@($A(-YtmiIkNp$IxC7RTAIZMvg8o-%vb{rZ!HOeM>#{jfE7mmB0pK})8wE}w~Yd9K`~ z%gu75F1N_7Iz2)k(d0H=)}kS|%ky;l8~t6AJ9N2IJdbn0A#9qg#oW*9^e}x;ljrL) zAYQ~}*)b%y$2D1}%X-soy5O(oGwU1A{1?qB_ z4C{1+9?kJM9t(E(BkpzCB3pIYCfjv+q3qCPM3bGm?4o13+%3Cxd6Dd4Y>zH4mOX-G zO@%Hm;oeIb?B!+Zm6suJR&K70uY2V`Iz345!I@Oq-;*4xFj8h>b*3Vks4yz*JLL+U z-pd@z^BfgMjPJq+k7ql~Z2mkO3o>G{v8=NK|QXy`Q;U@oj0O!dbzwRC3hx?=gl_W}hYvUG~X-O%CYN zl!KZa(&ey>>hutOKo_&*h%RI7n7B-6GO5c^d4(=hOi9UvF4K%<7>sdqA7g38_A_=V zV+R=PV(cJeS2Fe*#x7y(D#os6>>38wGPsUuuVw6d#;#}V2F7k+?2x>X4ZBH`uhZqt z^qeMd(dDi3^}2imJ*Ugt7`&0e?F`<;;0^|NGI%qCw=g&)@4{All@EfIXJe6G`ul~SU z|H?Bx{)ob3H;v19}Rf)Cb{!~1fs!t{|Fbp$YSyk|mn^LEw^6g(e%Vy&>kv8*276wm~ z5jU-?k~h-Tu{(qs$#E~490w+c*Jvi!L}(S+z4#tn`o)U5oCHiGF{hn3pK1-9cU5;qWmTWs4E$B6=* zZYvlM(O!64Rm!lmIXl#er-)!Eo6ax0OXNLre8#U7grdjj?>9#gnp+FphhTKpHXQ4l zp9W$!Jr*}putgh8rh=%c;lVKNjPtA<{Kc4Avym9!*XBA*4V4&w9CaLZk@Kg`)IKxi z&)wv#yq15eu9-12HXrn$m}hhw8C3g_Uu#aK%)yOG&7Ml7bq6yrR@-O9#>_T60_RoL zIYW@UF`()djdKX+8UP!`PnVG6E}x5TIBCw<=l}|ljt#zgnryr;ni;!ts&1u9f^abI z*NJot!;jlN*jQXyb((IIjti$8BMg}}wSyxj!o(ZRpH~ZVaanMVaX1Vc=~h)fLA4IA z*7-R`6~Oroi!6wW2zC*=9UC)u^g$4B0{hHk84jjgy@Z2F6c^nr%Uv6LklUiC83WW;f7nX7sI5azYFw3C0s`iw!E0Dr&uxFiu=^@SuCG8QSzD+ zm`j`|kfsEBGf9gJQQ8q~z@4zEBY=eDiJ6HZzBzja%$Ui!o3ql1OED$M@rdZeuUC6i zGGzx&wW>~ToJ!g`PPo;2r6?-rF+QEOU~5x26lvyK^_0`CUW}+_m(TFGG;3u;iQIjC zXd1&DI`VcoXtrJ}P0vs*tki6W;fE(g(+sj263EIaC%Xa{b_I}z!l9<-&fdCkR}fpo zc@pI+9Z0;5BzxLA0&kbPD`az)ro?g8QJcwM=2tLdoh;DSvIxr zGvVky9K*SbS1HckWZ@H9lkXO^>I64V=LINuWjYS57kM9p$4hGC^D)q zs)p)|x}f@^)~CLx=8~Wf0hjb)j7Nz$-_D|q;%mPBQJMoBKOO)c#RxyXsPU3}EhryR zA|?Sninx>>2d-NT^aOnjtzvqTo&p7fg`bL4-;-hjm#`Rq&FZ&Z13pHl0W3P>?pzg|v|_qI0Pq)Ff@DG1@}c&{ldk zZG(4f;i~Np=RHXur>7zN7J7z0VL6X(fL0G^mDMdZPwgn$>$kAI=Yn%pdxKB?k_u}{&b zq4hJM&La6Tc{Td15HG+t#W3h|FoZ+lPJCJPs_IFq6x32PNvj2o(?TFs0#etsu7k^9 zl5LO6VNZ}2QzN|9L@TK|Z_i@Vls!c(HgC@=*z=N1^!p#Ao$Jb6 zhup`?++_&Kvs|=IE7v9o72$hn1!L#n0pKn7f_cLPZB)p)6SS$^`^e#APgOqxMV8;U z(QM$m;M*|y5G!-3jTTWmEu#)vO%ber7gl07I4+`2>Y+<%4_!u=AVT&ke_R5icTpLA zmA*z^a97dS=^OA5CPLo?jsKYREnqlKG4k8MBs5)2-=XiqhPjacJ^DT-zld7s2f*CW z-9$eG=22_Ago=)V1mFEA_y3QD!0!GJ1thfpgnnwfa1kW4=0VZ2_8HndPJ6LEHn*;u zpe@^644eb@)>1F*-0M+XtJ!!SAuA6}0AH3HAXC_o7cVPCaTn))aM?gPq)&9Hh4 zEu^2(&oTP|#{YtTiP_JF-+x8FRy&}benY=ifjmgRqu;Yzq2&+sN6ek|{t1yRmA^`< z=w({1(VsQ?i$;H4{cqS(%s;1DUcye7z=*tAIuGHo<6+=drm)iERmvtSg1z()dJg?O z{`vfPE4OlN?L127A3y%Og7N>Pf7#<-u*ctkFYg@QbpcLrb%Mg!oN8B=15vxOzNO|U zHNexZhYuh7Wf3c}0(JphM05yA;zp!^n-Fj}BeC70lrF$Tmc!V8L#bpH^dh2!lv{Kv zdWm#wz|&tuUopKz|FsP|7j1S(NtS|`Q{&Ur#B1yH$!(4~mC(y{4E^}!H+N(pnk}C! zM1E@?Ck>wv{$60AyQb2dW&Isk@H>&z?xIq*BhTAAjB{vx$FUMiaHwhbs2 zKFa`g5PLBCp(m)b=P~??#iO*_d8%BQJ5?sA8^MI4+XVHDQ&qLipQSw$baAjffJVtKfdf4goLz9r7$O8{Xhx zSV8V%h!;2SY%xa@b2$gTL;+2l_9AV3f!t-}6{Wc=kmym4C$XY*0B7zIGD`>5cc^q& zeWRt9tM5o@Onu{}iPGdz8qLxbM=5oL(nl$irLipSo1pz!I*_G<3b`^zc}mxwHZ&(iyt$}xF4Hqj?VKY!)h<^A#gX7K z@CW##9M2MrV;=w>&h9xm-(^ph{QCXlCxAU1o0!649+Oxyv5aCKD_AXH4eKWEplG6` z!-fuJ9X55itHV7M4Qv^(878EsLhd<&VWp;o<9iKPHihkp@Pi+`v)fLSJE8PFWk0V} z4;jXfq$k5C4C|#4`ZvxPauvTp^wTxziC0mlE`m3_?ows0<~!Uy_BZc5&apo`nZG-#75kz#{{X4ICIaG;qYQHF&@m&%`jJ ztosKJbz;H0waXWc|$|i|A4{Ls_C4$uM-iTnb@KS~; zY{-=8$~T*Ks(h-`6S}1-eu(D__%rTF)lR`XgFT0`BLaFi-LCsjaDODsGp`|nE=|=< z#db#m(p3HE?|A5AF-e~efFYxAG3~OnpT!)-OO#cqo}tw&e*-ITensXJWf@$iI7Pjn zT@F`}$5o1;*z2bC8fApTbz)`ooc3;Mj?i! zrC3j@Ohh1xERhs&i==Op$pw10NJ7h0EmCC#OIRhuP3lPO+q7!2vGNyWKGG&}KHe+N Q^&DGCL*FqY8r`+<2Whf$UjP6A literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/JavaUtils.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/JavaUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..e17d196ef703de414fbeb48be41e97b654496097 GIT binary patch literal 6198 zcmb7I30xHC75{&*yR*9tibPPv1C3EYaEThD!6PeRzycD1c%-Qg%Lt>(F79E}G;Nb6 z_P$S(p6OxR#MYP=F}7)XrEPlO_nD^mk>0IMWB+ev*d269&GMUXzU#g3z5hGDH$3{( zgAV~%rJBNM!yChR6W%P%F%5TxaW~!~&09lg#oNMoJKhn-J8_Q;-xbEY@tzXA7spHR zKD=L=4`{eIjQemR%nct5;X^nnz59bW6~+Vju!fJwDPv(&;Z%apq!s5#QFvq7P_w(bT6UrTb(RG8jrCCu*Z$bgyZGX~B|gTX@wP? zX)~5g492a!W+Y)|Zce85M}}j2jabG?Cerr78OuyZwor_IN|ENlC7IOW9wU`DI}#a% zrL~TXaU(Gl>CL39#87jcXNsFBxad}79ugdEjqKeW@who;#G|R9?1-7jv>l3>qjIh& zm$o^H^!fcRcZJg4j1k-4WsKU|&_NZZO$gPR%-U)%`9E?w`{XDqEubq@6r$Kg)>b+i zA00Lllrm+-C=(&e7*-dKUE0zT0;pVlTA_94TWSaOnWguQ6R84nHn)D z|0I+hx0_`BoXG-2k3Kospf14$PUOyZcood?DIGLp)`$`Bi5oGKs42$QMz1;()Q;d3 zayYUrnN1ARFS{5ag{9L|o-GQqry{25jKtuUq?J%u=ALQ?XG@a4YzIyAu7YxhW4Rq- z(|lNaC<)G>8Mj6(T62?0h|OqXkSY@J`hpbeoLO(^ZJSiAsHDCrvc(o=<8+2vD5eS3!pBnZTZz#ubqu7;bT-b8;x>(_ z95hoL`D;5`>Nw*+XvDK*?8`E(6Sj4+xSQa^y~%7UW^T45olnc9;^pE*I=0|h8h)9m9xgcv8oIaXd^M%5*hDmFwyiaSu)7TuhG>kp`Wd)G&M(8)oQM6n5V1x?BP{-wWb#6szxo;)gpDdt`ukO zhs%{KZq?Ot6;WtlX8B(a`5=s#PwccGoBa~+b%MxtfDk@KB>hN zR(fw0snUAQ16eZ>%UvNJ@~&I~cM)fIiE+Kxl5Eaujrn}h|E~sF3_7x~`iKiW)l&;Z zj*g9-y2`Bv2)|qWlMXsbMx-jt=m}*FP;Llo|Ik0 zT6WD!*eGFae|Iv|&D^4}#tWOPjYkxB#_J|Im4lh2lh>G;CV`SGM+!O~tMOpk%=EJC zX2QO*w!=B@BJCz>5qlw@?}&9dFA;0BFJ)M~1BP~)sU(q|Jt4xy`%5!P7DQGeCv849 z^YsNyZKc~rMl*+*j0@k4&Gwf>+B!nH>8OlOURoo`gB(^&4$d4#^QJJ06iE_BMM>65 zlVZsQuWqU@B8QSF`1aX_R;|~7w&O}=?KN1=906l=)RZV|^wQ)G%qJ*kDqmRy;$~tf zGfaJBjP$4k1NG$v?p!8zB#6`U!$_1Okge8`T+_bV7K!J%e0iMeLiRx`-D%2)o5H-j zX;=cpvZ)knqe!1MV)onjzOOa9vsYn(!_5xX0{e&#owLh|$K^B5SG&coAlkR~ZzHYN z)zRJG*CxH*wwA5kt&g=xMC%NzN0W%vi{e{WgB%7a=Ug4SQj!eE6Qm zvVnCJ+fI%me6x~(zy37T{p=K>i*3N3EJHW@y0ZaW(Zf*)*JB%Jg!o3ji})_7A4kzR zicfZ`llEo}LHJN?vzo>?FpD#@NnB;KtRz{8PcQoH{Uzwf4cxVz507rwu!HM6u`72_ zQSKoBI08>|&;lM*L*j+c;Gi4vZ1*if`S$T$SAPb&LRZ5Xlqwv<9CoHDJdEkxjmySS zb_{;seaFu~RxAhjY^We5LX;%58G!Pan4ZU2?4I{sDA`H z{b9a1LZE!X$+M{0$%tLp-Pm{riy`BBHalg1*8H!7bp2F1{ zZrAWa4R^S>+(}%H;zf?7RTX(^+bQfkXs0uKh$#jU6=2!ce-L7a&xeAoNXWVj?>+e)H6klvK$>^aNL61={ACs z<0wb*8e$^9qj)WGQnsUnpsmyOFn{#i*X8cB9v&gTrn088wd2@OW|SS_YYZF9qGh|B s-YHzm@fe~HAY8s_94!w(ldF%(maTJN-ND3pC)4Or&c2?rMR>#i0H3WS5C8xG literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/MapSorting$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/MapSorting$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4d80279ef70139765e93a427c0aa0fec12db239b GIT binary patch literal 1255 zcmbVLOK%e~5dNIkCTU7a+J-mf5lSAwQWZ|EDxs>Ckka-L)Vs5B6So^X+Vz5Z<>oeBd!x zJIVxP8};@vf6e1~8(WLq{ z+o4u&mxsdLjZ{3DNnLh4XL4V#*jY9!PqCw;z!SUD-k|c?xS!a$60)N_UxzgRJz)mA z=b%wS9)%K`XgPSqu$XWGN?1UJVf{ZY8N))Ha7sOfmA}Zsu=dYX4Eeq=hun{-@uhm= zgyzrnhNtu}b6{}j(WdDm9mp%v&LzvpW}BbDKF}tGIa+NnFpmNs?gh7Ms7OO#-lqQ?{#sS3~@c}r;Z}8jX>6VB$<{U z(f`uN45aN$e*iy<;jApjatI{BGxpxSd+)iAy=VRA?Z5v6xPfW`CaxB+h-(FmN0*3zv4zQMN!4{qmBD!{FHl^ju=vNgyx1KspI}Q?B-N^MKSBBR2 zc4tEck?Xe@*$gSlM&0(hI{910>NER=9UE)IQfgaK?T#JTkqS!lDRtEiBLa=I?T$`) z*qxde8hYR>Fq5(w=m{}1T;0n~zry1w4<=Qv)k?K`X^AeUQYQnfa&l^HxGmp~x`E7r z%^h3uqu`~$@8#ODxri}U*+i#kBAd*XdO`(%#tWyebhTG&wCz>%x2rsE{nRlsIF zPMS3gy^o>?H`hll;T->pO#X2(eLYE(#wc_C_&dd&#Z_qS!fS{>DP(Yzzu8zhj%mtf z&j80T!<~WSI6*7z+~AtwI(=~qnJtXG!sx<37!!Df>>t#Rq_C!AteKuYPU173(-Wug zIq^?Z9-N)oKKp`aXSvH@mXYW1B_$pCK3AP~et}`PklPvUL@M(KMIRw5G`2 zS$;E^XKTp81X*XJKcjykuTeSv{O$GQbmDOdd0gIZ;VeD%XZ$}HKfgxdZ{&3&(~c7~ Yxk6or{hr`DMakgG0(e6=aXxFj1M>Dhs{jB1 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PacketUtils.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PacketUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..e655d7f3e9fbe618652e5ad4481418b6eb61480d GIT binary patch literal 4210 zcmb_fX>;3D6g@ASVnq!OEup399*SeP6@@}e6B0_Af+0-`Neg8wimkY66e-AZ+LV3Y z%D(S23^RN!Go9kX!0@Rb_)QGMd6H}^X5yF`Cb5?H?mPF~?cJw8|NiB70Q>Nrias1y zaRLvico-)YJRP896*BUu_lh za1^*I)?z`$Q}7fNRrJE|LJ5mf@T|O?Q?R7qygPin8MhpB zqBK8adeg>?&5>)z-JD^cFg#1XM}uwtX{#u(Z@g&cTqkc^v!?Et{#nYk<|DZW6{uU!zt*awoxn&#s;Q* z&vFWb1LHY&UN5+A!8Ub1&by92V-!t&azW}cY~r?B1_}4a7H4hSEEx77uTYw&uCa4D zGZ3e6!gNaWfi{7j*piTdK>MO$mje514T%j zLf}Ehn+&F`f@An4k6Nsu>4UMQW8@aD9R8Pc!tt1JvmUBY(Pk~L=uf!LM9H=V4#YJ~ z&YUrGe%$}j$UsbCG(;Z-NHRxiKB`W3gt@`6&;>!tZCh?+BsrYoJpTvy6Id5yMgCsX z&S!mdK1>{eO{sC$E9f(&xjD<%8A{7v(vR83lIab~^zB#(o&|1LSx#U*6D|gO$d_uS zY?nzm)BVdOkx*4K-sw`h9$;@(pSPCa<5E@=kA4T!WCWt;_4%`T$J^{hfh zEQ=LQZWcT%eba6^dGnlr$O_!^e}D$4oo5N_p3NR+J%{lK!y%Aq%x)|QUKBe8Plx-# zsBIdKbfv)k%Q#xjBH>+cNzYcE2D1Z=Rn$VlDysqrY>j)gIvxY&K3H5e9sY~5OgYjwKP z)~MknysY3A4X@%g4G-W!4Z|2w@VbUK@TP*dG`x)q8t%rZz}{Gj2GtQ&Xr(wJ^G0Ri zgdx}P4&G(hHN1!S6?~xKLySqZBN{%!#|l2t@F^}3x?$CY2204vl0RkovSy^wpDFlU z!x#8cVE-!IY6%d~tEQK<^D6~kYxoA=YPcWc@^VbzmjB-E7@C^P!wpYhprK{)`Vi=@ zEtgF}KneQNpN1-i1)9+hQ|YW zw6KDc1ow#CX)`xB;re0I+8MXKO0H&VG{h}GmITXcEjor&_7v{eq#F~iWk;B|)%2hT z`Y=6{se1k2?Tea0xCAoTM zLseBtfy(Zlr^bb#wQ`aTP)0*QZ%jFKSZx6n?`o*H&ci${Ne{XHjNwgL=L0WgvyFAu zwtU(0b~mA}#!o<%Ex2;lNUhSlL%E>aXI6_|Hl8*&HDpy2Ws%eVuo-4j&9@tD;{m^q z9~giNo|&+j*DZY0c^AC5r+@Tp;^s1d^p=q!B&oO!^8E0#~34l+jfWwi8MEPJ)Gmdm=C{#a%c= zxPaX| zg7Y$gC#gxgpJ#&zZzRI&3S+vlj1Bc*cg4WEs-|>R!Fb+^zzz~j=2z>% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PersistableLocation.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/PersistableLocation.class new file mode 100644 index 0000000000000000000000000000000000000000..72818b0d64bf61435fa5aaf62eb52ba92be9d8ee GIT binary patch literal 5957 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 MRgp0+AP&y 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/events/EventStartEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/events/EventStartEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..2a75f92e0099861a3a2ba585e1c9ed2e225008a3 GIT binary patch literal 771 zcmbVKO>Yx15Pg&HEFmdvni6hsN`lmtP!R`8sy1pb1cV66g_E;!h}*4QdA;FpwGs%a zhyH;6sH(G01QJ3-a9GdBzIlE#OeZmhP*uXW=}WiO4CVlhDJG@U3$1#Kmz|^O{ikBAxdMd!6q8Fcb!6DhZ9D((-+J zK9Tm5n8cjf9GXbPV_{VmuaX5fR|(-@%}uFOu~YJ=XfJW(gk6ed;iY}0mFp8;cGhtH zq3`aP(EgZer_SYAC5rVOYHghGlOjADo{EJCCsOd-20T1x)5sb7!I}$cGhwWtxDav5 zeFh_w+DM+Ltm)=&N_R7&8j2{@P)D2a=I={d(>USPztta!M6ULm?{vp_%Fn03FNxQa ziDECuei;=$s~m-FiEXj>4Rq;$2Yi-%GQb1&YfAvzha3^N)nJmWxX(7nHt798uJ`;q m=!&Bpelb)$Lu-jzF)-dsA#5Xw)PN~uo8A-va!&cyPHbGaxo?cT@K@Nh{|EY z4+CdZO!`rQm=9C(Yx-cxZ(PM$KWY$@CliH8!Y)J#=j8C5ifOqwSKZrYk58pAqLo$gn~^Tz4oaidg2j5ltn8ZCIv)?O`hs4UMKICk;EaWG^Hwghs?v ztSeiEHuCoxreW_>(9jr8>Qoww8RL4$)a~c2#AIk9GA<(0dNOpltEZ!Bm~6VNF|sKM z8>Zf$ni|y;Lt<3&3xutRhz*N`A=hc4*Pbwv3ffmOp0bUYZRkmts7o^KWqv%CiW+pU zZWSAnAcHb!i^yc3h&u$F5S}OLm?g#(cp4oKlHwfsD*Uflh-vS@q3MVom%er|#R>|d zy4`K19M>uu-E%QvMni*k!Z4#9P2Dsb7xsko+{sM#E+b3*UehKM_ zHjJZs(y1^7l{u>Pq*M$2$NsCJO!g(WSQpxO=Q4^-|D&xJI?X3(3p2v&u$ggKHKuF; zWy_K2Q%RiNj@^V!btoaEH6O2wEew<4DbI4aYeLvvR!rt$gPjm&GA3-jGsfibcI(cL zd^xDKrLikV*jI{}2N93!CL4E4j*zcxed#+yPkgrJmNPkKiePDbE?z7kw@Lbpg*vLt zs4S^3npG!6vR|KOOZA%0XQ}al(KC8Pc2bWRBk3hQJ-sK($-RM#HPTifncqTe!LaFV6s>t<5)~+(zC=^Bg<@ z?@g?^f&A;ppM!c4{^o$!GY22n^C-9h|23+3(8{qI`5ddT2J89rr3M?ZfzX?{7et6V zm9BZTVLMj@!VWw{@SU8OK)K7qc`6=Ov5SHNJc9N#v(scI|5_!fc@*ZLrBR%NSe`?y zl9Yft1c*?>Sk%-17Dhkkj<0DyAr#{ur8eF@MwpOMv!mtFQ;US@nBjqj)N&U+i@^R&!(^#b!U zcNUn1>b(SS7DPUEz*lXNcXbx;HOO0cfUmoJ_R_{DWn!q(wqU%pw85RPok#iA+o%}1 ziON9L9M&;x>jLXJ%%S?~GOv2+)#I$mzAWgrENG%s5tvUP^B`}*U#t~bZTbRm$8FRQ zYeU$TJa7ve74&Vpg-r@(QNu}4!SAT;Z!T?UA-6d^c>L1cKbx<5e?{$xC&RRE8Pmae z)JwKrr$jfhI)Eq1_9$~O#G7%9MKa9Po?tdlIqZXs$qp2vmr@T;wb8R9PL%YtM`7BK kb?5H&aVE>644%KSNkzYkfjbD^q4)`k^9ZL9PR<7Z1+8u-W&i*H literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/LimitersFile.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/LimitersFile.class new file mode 100644 index 0000000000000000000000000000000000000000..7610e1358199308806b30cb090308309469fe09e GIT binary patch literal 3316 zcmbVOYf}_Q6g|VP%(4uxRZ+p{5)?s{MPm{aqasKoE|7?#XcE&b1B?ta>+Y;VUgrHY z@2BRSFMhGgR~2Hcr1CjGBb8raRbo!h%)%~gsR>o|bl>iK&$*Ajy?^}k%WnX-;pZ?K za7e}BFa~iXgri{;VWUn>M#ev>Lrg;5Jro=lY@4W|?toR-5G6;pC=I)vxLcmXe}cuB>} z3WB4CsVgXtpA@G>%&=qKT(>JIOW4+^F_uXQ$FMC0TjF+VEH<2(m@u4J-d;>vhz*HJ zvolwPHi~x|mf`GD(9jr9>r@&sjZr;j>CPEDH4z(6jEaP`o{sJB>~3!wB%4lqglsC} zhNbsqCWrOZAu%lZMdEfsn1do^$h9vFI^#xK!H#;{tg+aDlQOKa_NFeHO$ujR`tIf?cbBoHevjo4qmXisf-n#4 zwQW-ubgtl`V;&0+&`r`JoTft1Wwh)m#f>x>tSiL8QnHsd~@e1)BhN$z5hPpNo?9u62|mT)pDrlajXh!!-)Xb#w!R6>_U zqo69chFWCMG&EzA0xkCvsW_|QRlG*A>DOG#^rR_|zOG>d8a2FuH#NM4w^h8O;a$9^ zp$Qu`ypMAlw&Mc@OS1-Z>PN$eXw&c!x->k7T^c&DS3{>`;Y4Mb?TBjl44*3~jas%79knyoNS%f+@MV@oe$X{Mj{PdW((pCT zGtwF^NN2vmw=}&FS;Keup6T`>WtQi0Rs5jgNBqS6+`UOi0)_9ff|mPK-7naL^pt|S zyDRXv^WwRFxPJGrWeCTnqOATd;fQWq29wS<`b9b4JL~;A%Ssm4r|c8O`V`~9Tfnx# ztEkDgaZpdYb*7-YK&>8=YO(*=hgq(&JLUCe1sw}0HvNzGUh1}>v?HtpFU5Ms;hr&N z8>m`{OrI)}?0M`dY^{eXY_FinFKuYR1H?8q-+*!pMMKRq z2tIH?ScBDsUdz2G zV%(|r%%c@sxFQg?;vs@>Lv1k@u!gj&X89sS?T2uR=nlywB#J_jbqQsGAA8p5vA+C_v8Y@9*)RaagDjX&)? zk3GXJ)ZapBjPh1g(I@Gx#?xgaz60%CNhlRXaTPm*JkEyi`_}KnEh8L3D$b+Sn^j&e zzf2_$sGMIgE@4I`LX%klU>SB}5BGduA~ep2Pp~F?bD&#upoy}Az|eBA{k_Ak20IbUG`DNWGhP1Lur7gTItyVH%hwi oQJgkp-FbVxoXN7NLf~(#Rne!S|2CqxDSndTBEl(zle2+;0c!LrIsgCw literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/SchedulesFile.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/SchedulesFile.class new file mode 100644 index 0000000000000000000000000000000000000000..d7b7bbbb2614943c8abfbb4e8fe09d17dd9330bb GIT binary patch literal 3320 zcmbVOYf}?f7=AX1*$`HQs6f$bP(%b~RY7Z8JgZYFWg4S;%+j4xc4i_ro*WfPX+0a;)xWc+{UFiw+bN=% z7dI?@Z|?Yro*5D&5?>^4Cxv-XWDL2^3j@x$kyX%h592w%icS$)ui^ z;r6h~3aZ9*XS;f%}R-QpDQGP%?rupIiRq&%P? z%mdqO+tdYvt9a_DZhj(z2%%H?l;~QVD^lD03f^r(`>1-N+QE-h`#g z=f^$Om&u6J`J?rv76|a%{K{pcRcVn+ZFY zN$Rp`Sdfw?>XKR0(1FzowBl=|;*5q@@G83|Tj;v3)5lGD_B9PF(Wc>byrJPuyrtr8 z4e#Jx4eeN^;XRzyuo3Som|w71)Il0Pzy=K;V!MVd*s7rq+cfmch)NB|oY)OtmX3MVQXZBtakr}#`kb=0z*=%}5uQq3AZ#}@?@rD@mj7=u<&5!5G{ z2wns-2XCV$nPb16bz4nAeT8;CEY)KFk&6}7NrEcjX9ay_5ZnI;#aFv5ly!ua#*3#2rFv}NAELP z9A0zX-H~q*YOQSRuaNfHBGy5q)4D|l@2rsW*&LX^MvNrn*j`5yW1$I3dAeq%fjqVh z8Pk1KUr;IOFPc@yMRu<~Np1~T?xWQB;K(sODJj)2QUqN>?)g30PTnP)xwK44P-Hz6 zE830}C8D6@iChhriP6mOlU9Dy_)sPJinA(7P<)1bMT&7JS1U zQ}9Ou*D>cBf>#lof_fg|j!3{ig%H;_P<0LAD^&5Li(?al9P2R$jr^2p!V-S0tl-#% zrHHvZu6cB04Oeu8wRnim*Ks}%${il|saUV#VG6472sY%A9VIgP>yn^upt=Gqjp7Qx zd@e8v30Q^*T3kpi%t9w~ARYUmw9whcX=j2-P`DAfim)5Bb^)Q?tENzM#g$h<Tu`>k(#dA_QA-04%_x=;dBMmI#gWO>!^ebr<~?%ZzWK@vSu8dw1h}LzNkC znnqsd%_8TZ1}-2_doihz=F%S zuyFV~>LU$PXk^+NBM)$xLeu54sCF@`0W=_9C=vT zZebC9EslGV2XA7Df<3EmVyS|2Sj0(G!Eb2Z+fm!vNo-SCcId*LKRPZ4enIoFzkqak z8PdcJv`Dl8w?&t*JAi#e`vhx{U=IzkNe-|Yhgi+SF8U~QvKG~hr^pC74`;G1>frwiOI7SuF?bu%+Z6Ak*hg0i_PevhKN`;~c>n+a literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class new file mode 100644 index 0000000000000000000000000000000000000000..5bab72769f5bdb7fd5e5bc6339dbc17527303a5c GIT binary patch literal 3320 zcmbVOYf}?f7=D&SHiYFCxhPl-1rbCDTHB&n6+tRBKr4u%ZS5f}uo8A-va!&cyPHbGaxo?cT@K@Nn2^Jy z9|lgVnDV0nQ6Hw|*Yv@X-g)`#c(cpfjPcu~bm z3cTY+R98?OJ}u6QkYR;-xb9F;6tT>4VEF z(XLDt+Q{Eyn1;PqK|^CWp;KurYK-e4Q@5YB;!~l?$he3|>xs~zuAYvjVY2D6#>l25 zY?yj~a(Yyc4~bF9FA%mOB04PMhFqtFUVG9=DCk(lc+xhawxK6nqDQ$hPN|r;y@l1j0PMEq>e4JCA z@wk{x9j(kx_iQYk@)VzJg*_`t?q!hAsCbzk4jL1tu#<77qx~L;<}}7=4qC~0M3+Uw zgk%*_tBjh4W^7ZSWnLo{=QO;6S6MZZuv2xdv(r&|_B9P#(5T^cyrJPuyrtr84e#Jx z4Ncgp;XRz!unX@iSev$(Q9&9$K)Z$y(XHVT?A6eT0~)&I@*sLte5B!He4?Ogc|H#$ zjp&#jmjv1sl)6a_3OgtZZFf+^r}#`kVbHYf;JB4E$7(fvjxW+Ivcs<7Q5;h7rG~FC z$5?B)Af5Rd-_Z1OWDVcqJ0?5@Df7I9tKxeNKj23NyYAj6B!Pdq$_iTVQTLEwBhupv zYVWSV3(r(LjyR6@+B&>Nk*gi~q?DszS( zrtAb|%aQ3*NsMieZH3)+C@!QmA72bx7$(D0p5buUq_DfJsLaC#J1)#bRM>iFl*!>W z*PR{tico7yV^@x_uM{y4A{Nt4cJP)QAz#@8Q`d-|_-xCqXmU&!L3W=mUMe8BTl$Q} zI;u>oWYrhVs*@toug|czdQIn(ZG2$#v>uTy)g#78I;**-_GCG^mvHIQG9>vT;j-A= zcrqgpX(d5We+~KbP%psW9PoPP;p2J%1=r!fN)-=UIaVW|V-?n5J%7s7U?VmVdK348 z2yv&e_lk*ZNcX&8Y#e*syqM!f|qdmp!6q(7tR!M3Bg*j+x6z3q8 z=MbwTC7=!gBGfPz_4L1m5s<(hDD?!}wFoB2QsGA68vKsa+C}&dZ=FZ+RYzU`jX&>P zk6pv9)Zb2Ni1Id+(I@Gx#?wV4z8f7}NhlS0VHJD4JkE}v@@*gmS57#Bl+2;fot0iL zzDy+-sF+_cE`CNOK$B?zpd9r5OyW^-NZ%(ecNtglY%+aa1vDT8*2NTOB-6qZ65a@yLji1<}2P`P&?vDGp$?3 zbZ`OnlC9S%(T%JQ;0dxl!W<0oW*lXa3^TRInaz_9`ygYo1BK|N)WcJ4^z5(`B|YU) nm^NhHxqE$_$+9Se=Pzth(XV3QHiEY)ew^Yw!YPE4v%!A=XgDki literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fdb44ac6fa34abeb5c6f8ac66c85fac2d23f77c8 GIT binary patch literal 421 zcmb7=&q@O^5XQf$b=O_1_7OaIs22m`$%-Bdf>IFdzCg@QYt}S@B&+Y{!3Xf6#O(Ig zg5YIle#89x=KJUK3&0h|ISz9i6ZU*-31Tw$TDBUWo$hYPXFw#s#HF?sjhd&-0r3b<-)aI@x3-_botz!aM2x*joL)bL2T6Y&1b!xx%FDwnlReJ2W#2Sj0}MTVZ1GsaQXk0 l8G$fJj|OO%evDz_{X_#~i8fJ=gFaK>DETr~B)J%6#V^V+ctQXG literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/Redis.class new file mode 100644 index 0000000000000000000000000000000000000000..c91e5e72da8eb23188c73f7095a46002084406f4 GIT binary patch literal 1998 zcmbtU-&Y$&6#j<%ShFmoK#NjJp_OWY(zS?ML!`D5r0E7KNwNC2ECVcTb~(G7*8WAl z)_M+BAN0)!|D!(C_L~h&!tua4m6y45@7$UD-Fv?~|NQ&Mp8)3ZgN{CYn&a*>9iQWi zUi9OZ+I^{^s3VI79VL9FV-dG=Fz~fHyQAT*hO&ll1dMgLm6i5}OHU!e;U`q<*E!UT;&Bmq- z>-MHc%b*oFwzpx2uF{W;>3G*=h4w{K#y^t{1y9 zGD8K_OyDwfK5Y8Op+7AAkC!I9-&mOHN^xy-PdYIp2_|r%>tN|8M;<6_JTnqd?dsh* zGXjCkp2|~T)Jonq9nY119GQvPtf)g(`A|kpFIJ`Pbfpb>_;|ga9=xsj@>v0v>h*<1 z#!pcS^wnb9*{|9MNlVEm4ND2JiW-*5o|?Pk+i^2w1?^J3_+O}tXYN@G&{P7)*pac- zA?#qGyPrpt)oVdBbmX$Dc&R7dzo9Bh67e zF#1DDI`ZRq8|d<>Pw-F6AB3(SCp@o*wnNf%wWszpie*D!z-fjdr?l=iWYzUNHNX54 zD+2wUUMd0#Xpe2LDc81H^+Kf^;}Jj4w-DY9gMHb?i7WiN`}pCLvWi{YrMM?!xn7`V zQVPn<^luQqaMOcfuGz$x#rxbFEeCvn5o$SH#3;RZS&H za)r^xQB33tDv3-di06nC=!Hg^L!Q2)^gM?N?k1V=ED_(N=Pl+@4gSWK)gUzE5|DGITqOyR#U6mM`8O z`~m(b>{4fh$pgLMZt z80rs|R^}1Il;7+!RG%b~WS9+{9}Weg93OooY$ zVs#+7mgZfO4)|esAVQ-Oo$=hL*eIFtR7NV}ozC9V7lOiNy2~(==vT2gm1&Ulm1fxX zgCy&n%`&V_ z0u|NHT6Xu7JPqY@Wr>+9jk9wkPK1YPxDGZv+{C7XTOMx1_s~Sk!IpWlqNnprtLBQOiDt z2BCDcdYj9=h@K7M6b;)qP;8#E9SUiSA(6N6(_PH7Z&IcE6majK>FE$Wy~KKc90^0f zoBr=*M|!zVvx{}q>5nj+qYqOdNt>gyK^iB?NY+{(!QK~ckIs5wbTC7AZxn#@m?e!i zg9`*=liMUKB$u{6pz;}045Lex;S*|SXl@bJz#?H;#HCTz7}4tUxJbwgq#Pe4AssW-{5{?WazJ~EZ&|O-6}p547Kbw;=?*E+EXwCaWOrSO$7f9h!9_k))_FjA{Hb-+jw`;q9$ICW)(e2VKA$l|dm zQM5L!F9LYdfKOEuiL>r6A}@#F5A2n?w!W}z)+G2E9* zGaTOmhQVFdNfd~?(#B=NW+FBJyv+`U?v4sV9aH=t3e(p;2fur`jH-wI@H~8n2@e$< zp>)n`ZDJGg^^7sDl<-FtS7^KH;V`Z{xZ&X@W*N%X%76!b;b6|gEzCP;d$^4|3|GE2 z*bHZMwCZ=0!9W^6Ch%SoipZZ&2}_AmS>`W)n*u7nWWC3YaB&y+82rW#LER=dE_KL) zgGDNXC7Zvt9uB#pHW0fggXZ2!FjY{`tD(}kxF^3;Vah($Y95DSrSZRQ*(N$vc$tvdzGpbt$cucQ21lc`9kyu>YJ`3)48y`GxcM=X>zfhOR!Ux9N7L+aaNolNJo0c9 z#~5b!9?VVoU^t!no7yGSh8_sNlTHU}9&SgAj$SeBAAUJGctSPU(Rz@qGknZDHUh}{ zZh@*Q6mdP{oZ0GIjcjQwpzVPCNlF#iFMV!VN{6K%lNU}^jFpg{VT+fus=-@FPk~O~&)q30@o+eso{s&{4Hmd*t literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class b/HCF/out/production/HCF/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..0fa40178385f49fd957d1a27b36fc561e331f884 GIT binary patch literal 4805 zcmbtY`Ck>+75@%An8z>(Levm9R761Kg~VzUVyZ-g$pcM5tu}2syf;2Zh8dg%L%OF; zy6>yqce~g&F)fR>scq9XP1AJW+yA0JbxXhZ&OF{c#I4oOXYS0s=X~!u-*e8rhxgon zE<6oj8~&!D8%87FPiQD$RD*?+D#kQa!O&o1ycP~z4Yy)KLkCW!;fc{#5ooA`kwz%S zN%1(H#=~Nq((njgT|=GM)Z(>xor>3sk2h#ofj5fBqqTSw-du~v@VI!qMa5fdu?BBb z@pcU@@WsbFgz7uRUhh)zZVemp9`Sgun0}v%_owjz4IjjZ#P_2@>%%HOqM-|hijS%| zqd-64IHuQU8@_M)3bZh^^26?+F>WfT&z>|UjZ7F=c4oks=uuEJWEC7E2tBUeUcTC! z_&j|0z}-F3w{19u%uwK2PN8Qv5j2O;!>*9H5=2sEA*g_;?zJ2%*sY+lz2k_2RG*ud z##)X!7><>zg^($=lWmGvk=SY1bRejOI=l zxxjKAU-}$arl0Z5yya(vxra%E&+SvAt~*96OvjfzG_@}@vg0_V1d$3F7Op9%8w!lv z82OAXstzaeMnHQvUIuhIg~H(~(+RvOj{Bla0!I6_@E)eOKGjgM5OjMOrRmwrmid-dK6KVXC1SrFH-Fo*Y^oqtLi*G&!t`kv2?&EZ~m!w8@r46~E zmoxWUqKcNx=YE&SBON=ji+R1*bpt=}jEMm=7kLZd>&s= z@kJe9!daHw4Od*h!2&fs6<^lz6?|32*L0l2*LB>7`*nN+-xN6>+P01-@T7tj3-f$$ zXxVv_@vCUtrsF)G5|3{wSl!Z=%UgM8Q_wPMOqwl5iwt?bMHEbzj&EaH#f*+w%;~rt z+sKcO3%ICYY3V@hH~djjtz!oWz7yZk@m)Nv;(Iz?hD$649pA?fbo>y{C}=9_&4)+F zkHpfF(vo0W$B*%hj-TLJ9Y4kN|3aHQs9L*)QTOP04nNcJJf3CD7V^XMT%1zUc@;m` z@dAFKzocZsW1t7BTpE-2B zO#X@{l;qQa8=>;PVbm5DD-ky?5~fKj2p=i6D+7Lkm!9nwSgO7&&hIk6ie{6m%84+L zWS2IIjZAF4h}rQJt2O4Mc>T!;q!}%5YRDw?(xMYmfK&7!QOr_id6`VH=qad<8vda9 zFk#r_iFV47ALYc%o04X39uc8uxcGXX$?mAyGsoRY&Ri=M=22<`H|w5eGi>;RH@HXiwq_g7q>0*szj(m(~xp6px}>0^ZN6xn0j zqIwgtD8?>v{qsO1qISY_$D>shzti!1{7J_H7*cT8A_;TlCRZL@Wyhd`^`-2voJn`g z%w%Ot##`SI&9W;R(c1CSmx{lT`z#x_a6-ZJNe5zps9}iicE2@}T;z|1gy&_7!|YX) z;@7_zZFzOwWZlKceTHohS%Jwm>94H8%LrM_9|dc!E{Aoz!@BtwWd$_RVu1ai{MycM zb`YzN>am&6E&QKJ*xrRc z+|BiUQeN4@t@q=eckn9?29iogNe^*R?1I?u?t#fFv5NB%1)Ki%f6O#PJe=C@X1hH8(ao8)?htEF-c-Fq(|P z{<0X5@Jr~J#nxS^VnjN2Rndm#RC86tJRNJUqG!#i==3nWqwOHW6>j6Wp6+iH2!vh3A9M~>*WlCqJ?b+Y|A0T^ RkECLRt0I+h)Xl?0{=c`6C}IEr literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/utilities.yml b/HCF/out/production/HCF/utilities.yml new file mode 100644 index 0000000..2137d42 --- /dev/null +++ b/HCF/out/production/HCF/utilities.yml @@ -0,0 +1,15 @@ +map-kit-items: '' +first-join-items: | + rO0ABXcEAAAAJHNyABpvcmcuYnVra2l0LnV0aWwuaW8uV3JhcHBlcvJQR+zxEm8FAgABTAADbWFw + dAAPTGphdmEvdXRpbC9NYXA7eHBzcgA1Y29tLmdvb2dsZS5jb21tb24uY29sbGVjdC5JbW11dGFi + bGVNYXAkU2VyaWFsaXplZEZvcm0AAAAAAAAAAAIAAlsABGtleXN0ABNbTGphdmEvbGFuZy9PYmpl + Y3Q7WwAGdmFsdWVzcQB+AAR4cHVyABNbTGphdmEubGFuZy5PYmplY3Q7kM5YnxBzKWwCAAB4cAAA + AAN0AAI9PXQABHR5cGV0AARtZXRhdXEAfgAGAAAAA3QAHm9yZy5idWtraXQuaW52ZW50b3J5Lkl0 + ZW1TdGFja3QAC0ZJU0hJTkdfUk9Ec3EAfgAAc3EAfgADdXEAfgAGAAAABHEAfgAIdAAJbWV0YS10 + eXBldAAMZGlzcGxheS1uYW1ldAAIZW5jaGFudHN1cQB+AAYAAAAEdAAISXRlbU1ldGF0AApVTlNQ + RUNJRklDdAAOwqdjRmlzaGluZyBSb2RzcQB+AAN1cQB+AAYAAAABdAAETFVSRXVxAH4ABgAAAAFz + cgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1i + ZXKGrJUdC5TgiwIAAHhwAAAAA3NxAH4AAHNxAH4AA3VxAH4ABgAAAARxAH4ACHEAfgAJdAAGYW1v + dW50cQB+AAp1cQB+AAYAAAAEcQB+AAx0AAtDT09LRURfQkVFRnNxAH4AHAAAACBzcQB+AABzcQB+ + AAN1cQB+AAYAAAADcQB+AAhxAH4AEXEAfgASdXEAfgAGAAAAA3EAfgAVcQB+ABZ0AAjCp2FTdGVh + a3BwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHA= \ No newline at end of file diff --git a/HCF/out/production/HCFCore/META-INF/MANIFEST.MF b/HCF/out/production/HCFCore/META-INF/MANIFEST.MF new file mode 100644 index 0000000..7427cc4 --- /dev/null +++ b/HCF/out/production/HCFCore/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: HCF + diff --git a/HCF/out/production/HCFCore/config.yml b/HCF/out/production/HCFCore/config.yml new file mode 100644 index 0000000..a4c0e9e --- /dev/null +++ b/HCF/out/production/HCFCore/config.yml @@ -0,0 +1,49 @@ +SERVERNAME: "Test" +SCOREBOARD: + TITLE: "&5&lSecondLife &d(Map 14)" +ECONOMY: + SIGN: + BUY_TEXT: + - "&a[Buy]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" + SELL_TEXT: + - "&c[Sell]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" +DEATH_SIGN: + SIGN: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "%TIME%" + ITEM_STACK: + NAME: "&aDeath Sign" + LORE: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "&d%TIME%" +kitmap: false +coords: +- '&7&m-----------------------------' +- ' &e&lImportant coordinates (x,z)' +- ' &7- &aSpawn&7: 0 , 0' +- ' &7- &3Towers Koth&7: 500 , 500' +- ' &7- &3Islands Koth&7: -500 , 500' +- ' &7- &3Moon Koth&7: 500 , -500' +- ' &7- &3End Koth&7: -80, 90 (End)' +- ' &7- &3&lConquest&7: -500 , -500' +- ' &7- &cEnd Portal&7: 700 , 700 (All quadrants)' +- '&7&m-----------------------------' +help: +- '&7&m-----------------------------' +- ' &7- &6/faction &7- Use to see all factions related commands.' +- ' &7- &6/koth &7- Use to see all koth related commands.' +- ' &7- &6/lives &7- Use to check your lives amount.' +- ' &7- &6/mapkit &7- Use to check this map kit.' +- ' &7- &6/coords &7- Use to see all important coordinates.' +- ' &7- &6/logout &7- Logout countdown for safe logout.' +- '&7&m-----------------------------' \ No newline at end of file diff --git a/HCF/out/production/HCFCore/limiters.yml b/HCF/out/production/HCFCore/limiters.yml new file mode 100644 index 0000000..79fe08e --- /dev/null +++ b/HCF/out/production/HCFCore/limiters.yml @@ -0,0 +1,107 @@ +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable enchantment ### +### Use other values to limit enchantment level ### +############################################################## +enchantment-limiter: + ARROW_DAMAGE: 4 + ARROW_FIRE: 0 + ARROW_INFINITE: -1 + ARROW_KNOCKBACK: 1 + DAMAGE_ALL: 1 + DAMAGE_ARTHROPODS: -1 + DAMAGE_UNDEAD: -1 + DIG_SPEED: -1 + DURABILITY: -1 + FIRE_ASPECT: 0 + KNOCKBACK: 1 + LOOT_BONUS_BLOCKS: -1 + LOOT_BONUS_MOBS: -1 + LUCK: -1 + LURE: -1 + OXYGEN: -1 + PROTECTION_ENVIRONMENTAL: 2 + PROTECTION_EXPLOSIONS: -1 + PROTECTION_FALL: -1 + PROTECTION_FIRE: -1 + PROTECTION_PROJECTILE: -1 + SILK_TOUCH: -1 + THORNS: 0 + WATER_WORKER: -1 + +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable potion ### +### Use other values to limit potion level ### +### Change extended to false to disable extended potions ### +############################################################## +potion-limiter: + SPEED: + level: -1 + extended: true + SLOW: + level: 1 + extended: false + FAST_DIGGING: + level: -1 + extended: true + SLOW_DIGGING: + level: -1 + extended: true + INCREASE_DAMAGE: + level: 0 + extended: true + HEAL: + level: -1 + extended: true + HARM: + level: 0 + extended: true + JUMP: + level: -1 + extended: true + CONFUSION: + level: -1 + extended: true + REGENERATION: + level: 0 + extended: true + DAMAGE_RESISTANCE: + level: -1 + extended: true + FIRE_RESISTANCE: + level: -1 + extended: true + WATER_BREATHING: + level: -1 + extended: true + INVISIBILITY: + level: 0 + extended: true + BLINDNESS: + level: -1 + extended: true + NIGHT_VISION: + level: -1 + extended: true + HUNGER: + level: 0 + extended: true + WEAKNESS: + level: 0 + extended: true + POISON: + level: 1 + extended: false + WITHER: + level: -1 + extended: true + HEALTH_BOOST: + level: -1 + extended: true + ABSORPTION: + level: -1 + extended: true + SATURATION: + level: -1 + extended: true \ No newline at end of file diff --git a/HCF/out/production/HCFCore/plugin.yml b/HCF/out/production/HCFCore/plugin.yml new file mode 100644 index 0000000..f712e34 --- /dev/null +++ b/HCF/out/production/HCFCore/plugin.yml @@ -0,0 +1,114 @@ +name: SecondLife +main: secondlife.network.hcfactions.HCF +version: 6.0 +description: SL HCF Core. +author: SecondLife Development Team +depend: [ProtocolLib, Vituz] +commands: + faction: + description: Faction Command + aliases: [f, fac, team, t] + master: + description: Master Command + ultimate: + description: Ultimate Command + ultra: + description: Ultra Command + balance: + description: Balance Command + aliases: [bal, eco, economy] + block: + description: Blcok Command + aliases: [cobble, filter, blocks, cobblestone] + bottle: + description: Bottle Command + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chest: + description: Chest Command + aliases: [pv, playervault] + coords: + description: Coords Command + aliases: [coordinates] + crowbar: + description: Crowbar Command + deathban: + description: Deathban Command + aliases: [db, dban, deathb] + endportal: + description: EndPortal Command + aliases: [lightportal, lighportal] + eotw: + description: EOTW Command + event: + description: KoTH Command + aliases: [game, koth, conquest] + firstjoinitems: + description: FirstJoinItems Command + aliases: [fji] + focus: + description: Focus Command + glowstone: + description: Glowstone Command + aliases: [glow, glowmountain, mountain, glowstonemountain] + help: + description: Help Command + aliases: ["?"] + lastdeaths: + description: LastDeaths Command + aliases: [ldeaths, lastd] + logout: + description: Logout Command + mapkit: + description: MapKit Command + pay: + description: Pay Command + pvp: + description: PvP Command + aliases: [prot, timer, pvptimer, lives] + reclaim: + description: Reclaim Command + aliases: [claimlives, claimkeys] + regen: + description: Regen Command + savedata: + description: SaveData Command + aliases: [sd] + set: + description: Set Command + sotw: + description: SOTW Command + spawn: + description: Spawn Command + staff: + description: StaffMode Command + aliases: [mod, staffmode, modmode] + stats: + description: Stats Command + aliases: [status, ores] + sumo: + description: Sumo Command + tellcoords: + description: TellCoords Command + aliases: [tl] + togglelightning: + description: ToggleLightning Command + vanish: + description: Vanish Command + aliases: [v] + togglebroadcasts: + description: ToggleBroadcasts Command + aliases: [togglefd, tfd, fo, fd, foundore] + secondlife: + description: SecondLife Command + aliases: [core] + deathlookup: + description: Deathlookup Command + aliases: [dl, deathl, dlookup, deathlook, lookdeath] + lastinventory: + description: Lastinventory Command + aliases: [li, lastinv, lastinventory, restoreinv, restoreinventory, ri] \ No newline at end of file diff --git a/HCF/out/production/HCFCore/schedules.yml b/HCF/out/production/HCFCore/schedules.yml new file mode 100644 index 0000000..b307ffe --- /dev/null +++ b/HCF/out/production/HCFCore/schedules.yml @@ -0,0 +1,9 @@ +# Add more koths in the same day by adding a splitter '#' after each event + +schedule-monday: "6:00PM/Temple/15" +schedule-tuesday: "6:00PM/Temple/15" +schedule-wednesday: "6:00PM/Temple/15" +schedule-thursday: "6:00PM/Temple/15" +schedule-friday: "6:00PM/Temple/15" +schedule-saturday: "6:00PM/Temple/15" +schedule-sunday: "6:00PM/Temple/15" diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/Configuration.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/Configuration.class new file mode 100644 index 0000000000000000000000000000000000000000..2ae0970b6b119f0aa5feb0e68d6f57c12b63950c GIT binary patch literal 3259 zcma)8S$JDV75>MIWXso$>^N!iK?9*_ah66&2}v4wt2#{@nu z@CkuW3Vcf7(*mCn_^iO^+VOdOK}KJc(PJ{YB=ERQza*nC%jhdI`l^h+CZn$ld_$(+ zl+m{YzAf;bIKCUl_YydW@5k|E96wOlTCU9Jindc4w@Z4=aR(M{-_8ZvFDt0gm#^Cw zqU&20xYP06{~_A2)F_oG*%!uiY2K*l^gTOIwIkXoECvd-xqV@6-p$SZ#o|NdN$n5S zv?**Pb3klv;CAIa_rZ!T2ZP!U7BgO%H(2M*IPRq9xB+>ctG0j9b9L6vI~C58IVZ65 zx|r2v9ZWkV%`JhpOC>wd176Yd6*gx)zmS@*EH67jiXI3IzfYmvrfv02R?c1tYEB5NzO1s>7O{i{6eY#=QDdx5B>TN0Zk9^O-kJ~mQ8(x7l6HfWI#|`(J+qSM-FW1nLX5r~ z40y*)+&JU;`SQy)b!V3B^LDCeyM@$L;PY&`H#e`Ja!R3No|1e}=c1<04K%3FFFf4A6fV@F4G9cQ^{V5 z<0lrLLe)YRQx@Ki`z?fcI*w;7Jc}!FT(xiw&slgLPh0q@z%Y(lI3X~IqjCJq!gc)I z!Yt-2ybbqRIExtzZxtAkU3~&?5jZArT%cdzq(E9=NMJxt`-O#H;*^C^fnN!n7RU(v zT3}4z1%Yva-v~?yObYx~;9h|5H(Y6`^^RT{0awezGwZ=1-^T#W>75zI&;ymQ`jF(p@y}T zk)5?m#fA$p^imNY{XZg%!h#M?dR|f6jPFgok;JUmjGZiBvGIxQSbs)gThyjkJOT}< zy`8B!^~6?)pSOz@J+Z)Y+&j86qG2udnKJ)>5+7n%1O?p$5}Aam+;Xir25cRv!Fsw6c|QBc89qG=#l{6Q zTU+CWr83{zdunbjs&&1(_C(yj-figP!T#*&bHmwmdYpALGdesneQxqhb~2Nup|j~s zW@1L6wZ7h*P1D$x;cWjbTU_Ko<8HQ#s8dY&Wg*0NekB~?hstgIm|^~!j~b@1q0C}K znaGB+6d1~!Hk4^?DD&A+RtZCy>4q}d4P_lMltsc&ro5p{cte@LT0vO72WGE|=p)6E}vQ`<&ng@k*95-Q}e zPJ_Fu*d1a|6?cW$TSY3wK7;$KxI4s~D06`SH$O$^He-QU#UA1TwDQ|CiNn~;KJU1FK7Az-6;gni;Mwx1{29WL|HpP|Gxwub9$3NNx9 z{DF<&kL&|~;=})$wf`?{0x$8jzp@$qjs5BGY)}8heX0rfs~8?o7Hrjxd9?*OwGDZ- z16u9Eg4&0IItWJ{!IC;g?FCxAxfTXkgu@vF0!v&`D00$`rhn7GrZ`G*xWGSn(>8cm xsRa@4;N9id`8*EJb|1Qe!y#hg5@lQxBL((T!Gokt@L`iC$UTH7@W6?!{{cW%OhfS+UisSZWDSz(iZ1_(oqQn=zTP%zAca>8Zb_ zf1w{5u|20hpg*docQ)Y|Pl34S?7ZB0?!C|4d*}Z1@1K7I_zblH3}eQ{2xeVe!Bqz( z7g@~a;M@6{i#c4k!>5CUzA=cK_}m`c%Hg)1@3@%9T^CY;otd?m~;QM~IngXcUjGE&-KEw9WI{H|2eEHF$J-vK|p&5$ie zb-{4DB9(ZM?A1iP#cLr+3Y93};Wm$@-FJjpONYT*Q%c0;kZUbyd#Sgt$vI+|i4#R* z(fVZ}{p$?wW|YK%SdrFej&4!@cdOQpv+(JaO>U!!ztS_};@0_|d~pm|)0vSvOI%o4O$G*|9x6PATh| zvB^0?MRCKgCA+)Q_&R8cdJ>A*UrYrXiBj!sjQ6xf(Tmh_2cGYW$gkRnJ%*tmiDRM6 zmfRCn8HP5GlnP2gKY#H;s5-;dVx>zjjpY3F|3sbOQa*2q zCg6*BQuF7j5Wb|bO5S`~<6NO%(Kuh|S2flM{hG#Fp35i{f2SoI<$OajbMx!t^}LQz*9`&o`Zzr7*9}vtq8(m9V=l z!?FCmZo1d#iFKPX-*z3(*x0nbUSV9?>axi=yDbZhSi-g(-!t||v$08jx4LeEJ;$%H z9ot{4Ft&Q(4u!HNw~M1pYO@`yJ(G-D=?*iRU`s`t8#5C-%(N}f`NlH8M@A`kofaq8 zZG!7G+g=V&PFr!?^R4tollod|_B=J>o3Y-_W-2dWBB$b5F~7szmQz@9sOfEc%s$gd zm`>bi*%z}?GP8QxPvMlf<+ld5SWvyNBx~r1n@Pv4^|nl;oEEB;0m67a?g-;{91N@R zxI#@2ri5zbjZ;|=mgF8ZsPPn?b5WVKqfngw)iqnx>}H=ZmYx1)aYvtY)awLTYAMoi1y6esPvS zmoC#cWzRH|2KtQR2m$l9WBprUeeqFax&3U2CwWHHOm`VA-Q9HmZI0qNMEGjN2 z=X{y8DLX@9W%1rIH<{$>dGy&V2nAenOw=GVBCxT|zF}djr+qk(zb}M1^ zWjPJm11WVe>m_9?MpLPq*y1c|8g*OH2Pu$rwZ6-sr|j-Ir;SB`K^Zgj5|4Q5~J z38AHrXH8k>fU{J)tBL@?nkbOVRJA^}CWEUK^)E$x^HPYi2G#=#> z8Q5LY5jWXywB+b9YLDV_T(a(NBap;(>+asn1SGK9D2_9Xe~0PVUQeDmq~?TipPCz1 z^VEE1Ld^{w4UG+vmfD8x9UEKPJ6f9>I$F21*S54bG`6)ghtz_ws#51DoLw|!;%T(# z``pnitg6+*kg5r*MQX7^<%tI0+7O9!ZrRoxR!dZ^oPv!oUW?ZWTB9`Ti^wNurR3a0%9V4sWCT3Y% zv(HQ{dtA3yp{lxsj7<{JQO@8&GL~D6?b}zJ0XVXTW;hRxo zhqN)7QJCUcelDfqAurp5!;h%va5=|v)r;OUs*lQEb4yd-DlbOL4~NTR=+0(FIpy+s zl0uM37xY_Ql74v!N7%9ot{uTXN7WAsn=!_WB#URG8=rfaU9Xb6TJ}EB{ zWJCg(+a~!8hGmG60!0x)J7n<+(r6;C;W085HkD+e610=mJ0qRpfz9jfkb`%F*YCvm zk#yXQm+0rWrMm6-9guVU`c0b_9{tkGXW(h0F}q(xCZ}Ipd{F{#4+3L|6`Wj^WmYVa zi5f|s&XSg6cqu#X`b>B-(MT4u;L+M1>1b$gYGE8|E8dx!RG3{|o83MUR``r8tsapv z?<>Zz{#iF0&tSlhk%HQ#Fl&VAer;o6!7jj}1>?EawsOedoO@}8oM&OmjbYmtiy*y(W8x>r3 zLIqF6lq-levvk(udcMLmjy(LskT+Z|6lDYOaXm(4@^VgXrcAo5AteAQFQ#ab<%XS1 zC5#OgOO$qOOLPxEEK*I(S-bvt4O&}AXgj`1_F4P?b5s#HDaEg&&yz*0SB``XTjQB` zT27b3l93kmIJNR0R+_QgcaKEmP!AD|!5j0P!0P>-#Nk{AyeTV2;jV!B$*eG- zr{)oi8N}Ejlu%>cp#rw(G`5GL(BjLCzTGK7kq6;mfq zK8$IDm_CRZgE(ynGlk>ynrS$L{{uLyv!LHv-erKd2W6;3h<65)u^OlI&R{Oi!y?pk zT5GU^cLl3>Pp}RRtok>y!r#n7eLIWuTaKDnPcW~$gLy5dY%xmNAkHp~sc9P^g0YlT zuuEBT$wi}%*+;#|ukIegESbY>PQOyX9D=z5<`K*nuz;XSz&Qlf0u~a~2v|h0 zSilm3S^);ZQUS{dmJ3+X`7r8^G!9_p5LQX^YQ8^Lz7sg7pG65Ns6CO0Y@5MFedEHWRc9*g~*Xz{LdH1Vjir1Z*eRA)u4s5&=7@ z@2-0g9>Q*Uyp-*i3Ami#3ISIVm;$0f&zL-R1&@|Ib_b7fdF&yVEnp8puYd$WQh-C? z3P=%LB_N&kqp?{(e}LWsbaHcC!rQQ&I1{^g>9ZS4a4CJ~GF-^3o{hK?7xSuT7ozl^ zE?(MnV?Vv<0DABmUh&+CJ-An{c#yz@yyAHj4xZo@&r|IAG}3qm9-f8I+nWrYN1syI zt9ZMkrlMcX#eTI2SF1W)qb|U;stwnv-MC)u!41m8jp`cQq;BCw&OzL)?!qkvzf*VT z{qD`wzZ_*Rs<{g%PNdhd{GRhdyuewB#~vJnHvqpPGl0H(uwn>%cMf46cV2(?#r^?Y zJ!R%|Q`#%@{jM3nwPV#`T=xjBKZJQF?td6JWV;w`igeKcZW_V?%DuVbmI1sX5Kdh2 zO8yMsRfD+oA=w$Yoc6qtJ4s?q74-ye#YBdzwY2EvY&98cq6}Ew3{`u$r*7xWWzWsv zjG|n#x8iMCIR}rj!UUA9o!uD1y^ARDKD<3|hO@FAxtSlvmMd=@{gntvvUpT(=Hn9}f?dVWsB&sAUvrh|ALGeNAutcHt0)Z&X3sKPG< z@dn=1@TDMD;mdyfqI&+4AD1-zauC0QUk&0b_%%O%T?xPC$8V_q-wfin@Y|~8cl`KW zKfdb6?*;Mu_*w=20DoA4Kf)iY;!lG3Q~a4K{yd1U<1bY4mjV10{#q4(qh9}36@M2* z2mU^Qf51PgBmR?`_@68A4SZ7-|5CYdqsLrHKGd>ivtYq9eo5~1o z=pIewLRs57V}>S-bST<4eAh4*)#HqIEKTsDym z4Gu;+TMuw})#=Y-IhHX8qST6C$gcml}%Ww&{5|Rb|g4Og)>EA zK&|%(Lvb@{ObX<%V3}vFLQnbrL@JRzASi8YIwtUSSaBYux;v3Fdvg=RrX4kglWeK! zwqi!|m|-W>d%n?^9ZOJ4E!`P2W~JiE#E2P6nc1_JJsuj1jTkYt;Y=u&G%^`86Kb<# zW2VhLR}N&2*f=%l%%e#iHDRT~sca%U*=bA|qg-%TWAWL|GiE9q;x8pa#e(gV?ps(1 zw5lVNr+H-47F_3Ejm4oEZf>Jwoqo6^=G++d3<#^Ne=;kd zR4kOXEoDK8B=vE0u0G(1a*!5xjvr?&GiF&?bq>FIcP^1mn{3?k9yP73OzC^VvOARW zIkP{W$YhO_+K_aTX*9WxyyKYu^*l&_j=P^Qk0mk*;@g%=Sy{tDPq4Ol|1J=Ywz~{M z?%?T9+X>4iG*?(`k?_&HggRqSUvDJZ*Uy@j8c;4r-&p`{7srqbStLbW(4d@^9h}Q} zoY?pkD<)D3Ld%{EMY86EV`f}2V4D*L?L0LqXukS1i!4OCB9d0>F#VKnk;t^A)5%0k z`M^Po*sSsH+hb%+CpmP?Oiq~eF=j(jlGXPqvI$cKwd+_3r62 zExLs1iE>bvL(-*7M3MCR2J?iKt3PYnTt4oiUGJWf+Zmo@BahAMh;2r~GViMQH)MZ3Qb;QBim?Shgt;@J1b(xTqCYCN~NeMPI#MJI%Mrw1m zK9@1;ReY#d$2Q0(~=mm#kVOCuh7Cynr9;a#n4@l6!QSlykb= zEBEP0;It<9>+*hiKt~c2x;!W!(B&Z|I>y~%9H(`pRL2M9VND*<Ly zk{HcVn311+#k_?&V#pyEu4r^qAcuO~?X*Tz#I8y+L?zCcZcanXs4mKt2FxsdcYX1$ zug-&_lWB70($2P?wnO2e{_sF#Alla35f*GLruzjlC^eGvH+gvcT5=I*yOr~L;pS+^ zMx0K$y!do3H?*nxA08JLj@`7&P(9b%RnKe*yqDQn-|BtV98gSW}dNWg=)+B9L7mU z1W}K^^BZ?#N^8^qJ;^C&s$?W-L9L5#dC?H_J)$}dwt@#z`LJu`E4|7rbWm~2iZCxU zGn#tNUTAM^qLGvv%=1#jy1Cez^1jk^mHXra7*{HaOPyBE$=J0sMlxsiF=#Ds>?|JZ z3UE+4nR&vX1@B#8wNpi_70kJ)DZeM?aMVSwF+umMr5@(P3@HwK+->tn)gByN;8mgj^BIueoX?#RA-Vf8RitAMarr&zo?P zGQ~b#XjZI0c&LpVUS1r23f&x~7-TS&xI1S?=*Ci5_e(;)#JtW(m~E(pb*6$-q%&+dYY7Qr+mcD`bqc!AnahW=%|} zTf7stRZ1S}%*S_H6X|16-8HEPmrM$M$1OX~)|HKiPo7-RSu43i1w|yK;zZtfCM;e< zoxMg_I*`|S*m6#VZY0il=h)zpT?kW^ZUi{0Ex(el(V6Ib+(^6;ZrHHnAvag)=bg^7 zO?y7naqfJhE5YdL*_1cb6N7!r-{Q&L{vK%Zi{w>X=}RDXyN`V zXuOt%yZ$;SNo(9#9I)1nMh<^3Aj)$yG!-n~*XU}qC(=6@4G&-)KS&Nk5JNcv>fXcp z2)`VbV3hB?S$N)g3t?YCT{fI2FCxy9_YOYGDQh9k@@~HUkn;}Qx}`>@Q1U#q@(b|! zUPtMc&%t*QWhbUkUgKv&U>3m=9G`ElsPUK0HNVQaN@26Cfsf@@EJZUK(SlnLLWV6m zSL8a#BFE<${$7ug%cz8uqoiEJ*~@HVy;RkiqvIY-@_^iANele^2n*T2bsG9}@V&}s z<(sH_-mO-@i6w>V8(7k_Z5B%fz0LCym2aSGpRZY!Wp!mUsM%LuSAGe4UHO)2EK_6a zd~CghCC*bds%0*s_Cy_zzWjJy*(_G@cH?s%(^$Dzt1G*RRVQ9YUCnjVxV~n!?+aLS zqI8uugBu2BuvWFzvrt3$K}5Z-XEBWpGuSwbO(mSHFhPTo;|h7X%}RKo`5L_w%%Eu& zTLk+8bp&Ut;5n>TwQa(0^HuwTb-@`ltD@z?<*&~J)X#7Dz)tG)CM?4)+<-l3z+S@D z%9fjPfd4uP)Dg7fBx@E95{WLH$6>sMBT|JPX+f{-M4#-zQEA0(4#0OH!1f@{;a-+R zD-X4*-G}>$XoIZ4`|$u#ZI)_0h!4 zj!(GeB+qf;a*BMDW)$jSv3&|VUP7f?d*93W8f!cA7Iot^Zkocbm+>VfO(WUz5-np2 zyJ=;61hd#%0=~^+pWx}|5vWD$1uXaW&){aWeO=(`Ph;D*0_F#Z+;?4X&l-%g{~PyxU$-)vpKFig~P@y zj`(oTYJ zgAS>@`9_X@5fMC%XIPscm_Nv}RB5#UJ8SomUzmRIPb|tPO7dPGcpG&JwN-0x^SzA_ ze>ZA)w&FWj>ma8H>IqJy?D_uzS@%_tDPow1tmi7oiu=D`ko7u{DI+X`tnV6-<*3TD zgzO$dc8-wUOUUl0+8-b!4-&G62+6~Q>=8ot7$JL{kew%FPk#R(dmf)8a3pP6NxYSp zo!dG~lAxp9Cg|CA36na`WPU4o7vaw^hG^=gLDI5o$nH=>U>W3F;Dk# z*Gn#;M!5=o_4b#c`544XU*YO*Oj=K}11(jjm9ECKj7!gv^gf9&m3ADTrk($YqoM=u zj^`}+oMX34X86tSQygEyk^T5#)=D|{CXRfD#1+R1j#qx5qS{*c-vzd75?sayOW(A+O(vBlx>Wprkht6s!*G>RoWyab~luy1X{r|*_~vk+01Td zWXn5=XcM% zbM^H%0el4i3?qhdIXozbhg5XpSOm>D9>!68QpLk~B!W-jgn~y^=$Md0N)n_aFfgfN z3K{ukO8S#>V>*H?W+JeVlS5v?DFwC)2d;_&W+lyIQs(I}!kANW2A@{R{28ghXT$g$ z9#`;r6>T`yfG^1B7v=DT9G+D16uu-S%q#e^g0BduS>165EyJFg6A;5(nANk}^I3h) zum!dza`sewqA)#ex^csDO?NJS#M|o^&?M!AZl?!yR~P6{I7TXGrL*Rw5w{HYv79{} z&!i^xlxyZJC!XR-j^V@$u9k}rOs#7to!H)A^6?-1x&qZr96`SzNY>FyVJGIk@3 z*SBkpQfgVzIW7=9m`fW18xy8wj1*=j4Ev})k>$$fL@uRg$93D3^U`8aT1`(5Ta3U# z-$4R9*QkSZ!S*}pgmreo;uw<(gk0U8GF-k`hHg(VszRJC`>~SyN)BG*u?R;N&F53+!8?!4*#TS!L!? zSTJK`(*kXkQ8leuCTz~0ix0cT%$TdErb!txN~zvl9S*8k3dydT_V29}T`Gi<5BE#o zc=D5a-V>tWtE_hgUsLe3f@fH2w0A65uv5m6DRUt#BezrfnVB+ZrLsB4w5F1Vo5`gW zJgedB_=bi%aHobI^lI3NxQ1Qm*YF&k*YHhzi$`eqHol|a1r6WD0>g2`)wkk81!pyU z58v1DB7UIZCHzpqk2JiDR}}nM!%y&24X@&78h(y$4ZpxIX_$sz;n%cI!*AsFZ}B^U zTdze6-$^yMd>~Qqnuc>YPj_j!fJF^OT-0z0=QS+hbp>x|_&xrh;Z6KeLl?RgT-NXw z{v>dVm#JCZnu?FPHa&QtU}n=2w>EVc(#35)u=TZdq&55*f04sqHC(|(1#fHk8~(20 z9sGl!vo`1X1t-v6VW*SI80kXRu;T|jm>exwmS6F$6;w5{QD9H~Q|lCvKvS(MCCaQU zGwp4i1t8E>|C}-~OX~!boHcl=VCDt3#cCvd3H>{dGwBI4vbKh;dv%MPx5qjw8ETl! zN{LJ?*FC{zV@0vCdbqDp=uuW9qgyR5snZ@)&&q0BF_KIKJ`e9YV!kjhAMTqtNo48o zymm?8?)vV?&=`i(iH{mnro%&}bzC4!OM@-P)vc641^cMr|0jwzY@)0Z8YXp1pOW(T ztSWFhC8}AaUnx&Qn!IbT@m+a?ba&O)_&NvpwwDgQhlqWsDmRwpujY{Vi>E?6Z%iQ~ zsp*XAlg62x#Tf9;VZvL!UWe>uIyV43=>m z@h(~q>AWj+OKf0Zpp<&@%8DnLM>Ms;TrSCGhI%E7%cV*hC8Ikd#%a1ZXnBvOGG%36 z(`1jkVoly{rwV$OI&G;{33QW6U6Y3FNu=Usxt@kA#W$kQ(67~}`shmSB5d$n-L#y; z1{;e8dF}dGS9SH~b21C#N4$rB%aC`dexS=Jbj=+#?A%?v# z^~!AH{Pc+N%LoYa$15CYY?Pgi_hfV9J=yMXH^AR6d>DdXSHQiTOP;2#?nQ{Mo<#(@ zdKa;->mq`$dDM4t43Qc*gu6L5dlH(k8+$k-r);CRPq;?EFEy|g3K{^>+I0beC9D@n zbYDU7975eiC`)Jv;4;F=p0|0(C8$M2d_qmIBe^NS24%xp%vbJg3}B@93LHsy4vq8W z-x4+{=nJ+4m#~={tZ!MrgqsBxFf8Ai1kc&h7itN;h2{n9lH4t!B5pa0j+W46H1{dJ zMcmp#m0IM{TLa|OT9lp(xa|_6ufBJl971vxvF+J?(FKe|Ict3hL(xVxzku81ESe6c zUqoYco|APK@PQZ3Vn%yI|7jY4MO^N1UGX$ z3>8Ui;H(u#(2h~;!x&c{!2K9U1`lB#$Jj+4XW#fR7V!u>wny2h8F-gpx&I=?Rh$&t z_;oAeG|C9Pj41Xp3lwthrnLQxWQH<6hL7{)BwXBs16arNUco^O$jFM;Qe;)pgh323 zqVH0hL(HiFvjxz&;>#GOj8AZ-2ciF>UBO`miK|E|@_$6Zeg8({Ju(Fp9N{MLAM6(G bJneq+1gPH_pFw_DKY)+&O{LrzpZxnD3X#96 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Bard.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Bard.class new file mode 100644 index 0000000000000000000000000000000000000000..11852ff16e068a22f6bfa4b9cf7a2a68766f087b GIT binary patch literal 12875 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Rogue.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/Rogue.class new file mode 100644 index 0000000000000000000000000000000000000000..3f534754c13f842b4c37c8114708da7f01167e61 GIT binary patch literal 9100 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2d3b9df6966b90fd08b22f8fda5620c86a42490b GIT binary patch literal 4144 zcmcInS#uOs6#ni^lFoFR5CVzpVU5X5U_cSUL?8(u(F`DvU_jB%q?t6CbcdcEFzzev z`-=MpxL_4Z6%eUXlq#+A!FT_P58`+4Ofo%2NR)CO=5FVld(L;ZzQ6wY-S+@i;cFdH z?2VuicWSsxM;QAma5wJJVCpEtJ`KG(%H^2Up<|zpK3F=*_g5f=eo1Rr-~a~XUs}VU z21jnXQshtt4#L&pAtPD*3S@Ce?j4rPd*y6cM>X!#aKDcEctFa0Q0_b=&mPwBh>pd0 zK*OUtmP#ca({ZgFAJ_1NK$UecYYz=seeG#8lS!CE0#iE=n1{@G*0yz^nRu%= z=z8kr=5@SB%b!xMfY?qug$177*oII)F2))y1XL2To8zdrATxWaQ9JaiTmg)Bk zENkd=y;Qt6J1}7TaqE!f@Za%me>fhX+a&iDqNR#NAUb(Afmu7U6gg;h+Zmg1w>pmN zn<}&f>c$IFw-un!QGYXYa?F726pxA%at8ovn%8bL{f4Pd` zSw33XIBiL$^ZBmtbhBR4+HA|ztu54_e2grYrO&{1xZXeWzDvzseyOVW*~+p4ex1q-@pg>&_EZu8Gi;o!p8pasvW-N znZE2=GlTvNRt+YwqEDMnD!#4v01Ku-&RVs#tKV}E=XykCL2%Ceu-V5juW88D+<=5; zSs11Tu542sgmlSyNmlRm&R<{pQOms=8mfJqCAeQMVa&12xiEn73N@5@U8; zf>h$D#f(wqbUXCRWvpP>{6+6xvtC)J=vm^!v*FRLtWI#^B8wI_Q9;x zLAO?qs-(Ue)rTOJrZn}1_4k-zZyUG8?-b7(bPv&C5!cCQu)w@xgoDATV2tqFE1gfp zImNWf8|p|=YObU5b^@7%IXsl5-t_G_CCBglgC$tVFY_pv7ziOEYai#!_*4jCIoE6} zW9yZC7YNyH_`eDe<$OGpkn%`0b{67Wgw7+}a~35dC=Fq^T9x$g^ z9E@o645o~rG7K`0V5&f(X#`b*1%C-A(*!P{dh4H0@ej7R1-MA+?hRG?>sG|)%oj>tEI)YgO zBbXhMzKC5sm55zz`hjF+1bjA0XA^8W=3J4pbPZ3}a`z^swxKSp!&Yn~orJX-;u4QT z8n$b=9YUj=#@Yuy3xiFVXZfW;HP?=P}yOV}4Jx=`89-upq=1y(-3og-6j8 zlWHBqk}-D1^cUrSJW J$PmJwzX0hXcS8UG literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/BardData.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/BardData.class new file mode 100644 index 0000000000000000000000000000000000000000..59488ed4de453d138c1a4e07d96b8b8f0312489c GIT binary patch literal 1436 zcmbVLU31e$6g`{7a;zw^aY72T1PD+ZwMA`7KWI{L9YevBz)a&|h6g6ImN&MLEHRQ? zn!mtHUi#Gkz;rs(&`clt1Nx&nJu3+(<*}ae-Mv?L&z^hk-M|0&^DhAFcxYk~w<@S( z-Do~#h(GOpVKfh$6YonCU*T&VzirZdqjwu7Hu0@?@95oKqj@dMM;XmBz7tqhp^66w zdoNVHH}ZnOOOzXheF4!HFh}yIy*xo+F5m2?GEVuqBVhH$`};g() zcBq1WS0=u|mF*}VIK8p&d#RJSL)9M#Dt1~~K&Na77@J<`rFR6T8*5JlX11cf5~yx_ zp?WkP^;F!Iy?~MWcI3+7iHtq%7r~iy=p_Oh+j$9rx38Q~r7xq{cZTl1bW<-16UPl? zlBmQPr(TdaJsJ0%7EN2Gk_@VeN?ZRaYo^iBT#Q^DfwKdZ{-8#ZOv8arZL2^YWR$7N zVxslAmxCB#k=)g6%sTF zsb15`$!Re_5j0dzs4^k6HYs_Xbab9!FTBCryJXIj?uAnb#sq=$QBZis!ZpGwDOi=C ze?h78n%i0ar^rZ0)hqw-81tIjG%nLFWFlN-sVkTx{t3s`;)aj1Tro%JkMT)y)n-v` z-F}0GS8Ppmj4Ib!^efX(mwo*dWPL)KV_qOVV8?VHYPt_ZFmCt*_SSk=fHhS46g0iO U8?^$9C-Eu8)!q0kyZiHh0b*JOZ2$lO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectData.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectData.class new file mode 100644 index 0000000000000000000000000000000000000000..e77d9a30f89466823936d158977d87ee8b37c41c GIT binary patch literal 1191 zcmbtS%Z?I36g>q!&8v}-8Sybb=Aj1KM{Qg=>V_F32~iUb`=TkJhPK;uHyZ!Rg(eac z7k+>rWxThW3^)=oaZ^?I);;H*d#Zl?{PrEd1Kcjd#*Gp-u*=IHFZ%@?6mV0Z?pr+ps~rwVRjq3R{e1eSucOyl=Xy8vl;2a4;dq|3lCg;e9(QByg~7l# zLoEZHybq&^9D76M@i?*cd=5JfPC0OJ z%Rw0x2L%)zlu#5n{11-=HknxZDj3NZ{S*2Z0yJX}d-Sht`f+&(?nNj1Uh|yCqD*%wMK`jFQ%mgB2p;#!YMv#l|IWiU XGS3dK{-K8-?_c#~Pb6?Ho&NeSb=ueU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a4512847068f3504f098a3b6c67986ba44292790 GIT binary patch literal 1206 zcmb_c&2G~`5dJm}2~ABKN}(nE1sWhtfu$0HL!k$%RG|u}DyT@kIrb)5;_gOkJJ1K< zfsk4uIPd^G6k^tigeyhj5=)-(?#z6oH*Dj9Dxe67z4G@Hozq_dW3DXt$fg7QdD>BKS6b{O2|1}M}>4AH*k~A0cAon HO`4v+%3M(s literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..319c5345f13dcfe26a5cd85fc036ac60e4d605b0 GIT binary patch literal 5310 zcmb_giCYxs9ezJp7+J;xGz6%Xs6-LaF=^5mQCmff=!!&88+*`UcUVSdXV#fn6x%dC zV(+{5(59(P58I}fM^Q|hnqFzs^iI$GC4HVW?fcCv>`Yjo<|#hTH}lQ!e1FIHn| zOi6WI!I<2!6y%bqgDo$PCt(~d`ycsJftgZJWn z^75$UJ(I-y@c{)NRPZ4M9~Mx1ZQF3WE#31BPhgR2c)r7n!0J@m$!S@~$y$cS+ni%_ zu`DC)YlHf*WpoMD447G4_Y1BeaB?B~ZK>n>xULm^)6xzf?%my$a@?#oTo@ZOeJ$_! zCKdDtOV7v%wG2+=jfH5scF>CIZKiGdI|SCXr930;*cr3N zD;ztT6FsN$rcAc&ZK7-@aNa0Qyn(DqyM9jO-OU1QvI3e2*Y%rc&kdhvj-r^gQH`5-?P ze1y$|-9liQXZXcr3o|bODpF;k;aX8|)S_~lWTjNg(itb>)kaX1>=@ptQ?N4Kx}7#G z0dY(q84{&T&lhNjlzDg9FIamtyCGg%tnOlcZ7IvKZ6Wh^bSe0#f{!u9EIl`z(OX~X ze(PpJyDe=M+e2lW^e8#t6x_72$F%5GbJ+^rBpa2Ac62ECxQb8UlPW%iPb>J0inI8v zigj48;BzWIk1r@Vr{X-msNykvNx|bPzKjbBzM|p@d{v-vF7#D=4PRIB4P2BQ-xOFC zp)3;(72m?Q*@WhAaPiWdy9c%2CEa^c#dq*s72m`638ji3;1cmvaT!-sT*VI+Oscqs z3o5Q-O2rL%c?v&bqU~}V-}7BPf57lZos74%8b4l!K`u|L_z8Zh;Abj+j$bJFrHW_q zD;2+%m*?;s1<$MaEq*7k=l|o1z^3^H$pgnX4R-&q|1w`9P=_r;rmn$*Fdl|txkO7^ zU`6Q^E2TG2j?#9oZ@4;7QGvRMqFup3N9?kO-ygL91G=qerOvf&8)C^Gyk(WjGonbu z`l%&jukHD=@C5E8&-{LeXGcrKgz(gf3l>=78d>SS8?;BZpe=1tYvKUK59Fw!L0@fI zU}oUR;5sMw8xsQtTSXmxD8a@pdf7X_Q}F~3Y@6#$qpkqzu>Y=%V;t{vX)1a zlCVivr+fY@7|JvgGALw_6PBEs;@LOHBo^dF072BxGM>-gl81)jhbM+*5Z^@GG1-dG z+}Z>)cRPz^WjwUeR4#{vv_o+V_MqYSG{z_Q1a5FMy9}NP7CW=vJ=$?qPjCU zG5aHvENiMUmQkg~L7qkCOuuM|QBC&|8Ld&>>oZQVW_XA(wGwvluwt4%8WLtq)Q9rn zln45Wf^N|?Roa}(b7nSWGopgtupV|7*v5Evb1z?@>V0MMe0H#B?-YwXYGV?=#~&v#o4arC)xFVOx@TmH(^_?!_V^4@CzJ1gW#g#! zXB98tZz>Mq0fEhBP?#4xCUvRznD)3cW@xEk>f;2W%MU!quQjCXisbKr?{b!p?!*|w57b#^g;M8z8LFILaI|WQYGt|(uv-w# ze{uqtLv!38PBin=VKvKeEto3&pOm95*EarsP=O7o<~_$?UOTyS5S82ombZ6YgSd{0 z_V!6sP9af=O98`1UYC#vScxjELOoiriBAn78#HX@69wQd+)beZuj9`p6@l=6u2Oj8 zWmHX}TA*VR$`lp}OrfR%M@t%#0o_{MPLoU08)u|9;$FO-vhSlb>A)7Q0{3HUQPT^w zt%`g5sUdlw^BL5hN8(cFP1N>L_r^dcU#XK=JcT8dxQV4(6HSR{Nz{>;#ImPQ_fY%B zro=VWOaCXaJTR^j(*1R);kAtl+Oe39)zidIx_vkQ-A8A;Y0f?xBMrYNG-Jl_{WQFb zrdDAOwqZNXttaIUyn&E*63RDXClc62&N@`QgvAQF|BY4!yA|}ryse>t2PlX^6E<0@ z$#ONZy?qKR_`3l;yiGv5G=&C%a~PI)w~N5hs-`OXP4^d1qVYVcFaGC6J~YYQrY9r< z(+?N0jQ7p*MYDWC=qR7z3IsGUhObHBXyx{csBG`J!Gz#P#A{cc!zRgf<}y~DeH?3w z_bq21L&J;!Zic`IuqFanckrhz5R?kSQA0r16O8)_MGpbpgWc>ZJs84X6wr&41o$)# z;8FDB0v^N_49>v49s{J>832DZfRV$%R1rNR?KL>l%#($xC%d({Ga3S`j3=1aN-a&-#sGOa}eUy7JlEujxo03JF z7SZCtqP!Na@=v*r)mKm@OF{(j$TSCRRM+4y_&fee S%6D*2y7f-dJdAhY;r{~Dxgfj% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..9c700e15663be82153bca85a93ba539b90b074ac GIT binary patch literal 1160 zcmbVL+iuf95IyT$oY-yx;nqu1QUWLmsD9xA(FzGwg(6u9REWf*<8GTJu3hYPQU8jo zDuKiY@KK0a$26{>ky<~DcV^C+**UxW>-YDc03P730UgU#lyOs;wvH78McmTS(Q%uh zGIE0*pGPsnvJ*yo_AnWbg|zu052U>{Njf5yYYc`P?T68Z@5Y3F=)~L$i7R%w9dP*} zjK=oJ+jTuD!XUOi1>>=uNa4r!lM^P@DX)t_$j1zCx~EzOQph9wrSBf`Xzilqdjp2z zM!3Tn>W&Ebi)4Suqu1`xr%1yIJ=Y(&kx+gXEXt9ffu5hMW2#SnuFdy}IM`IGsR<9# zAs80V9+087$7N1ohIY4i3jd!oFsB^a^Bj3oX&D|-feRl?W!>|$gDG^CjK+4DL>_-C zlynQzKGRWG-?@jb1q*j97%(kVP-SS&xbdQPNVZ=Z=4`k$x~JSBDEZ{ zm3Fo!`K&X;JQgUThOjekss9z4YLh3|bL3J+u3!;M8M#Af^_f3Ve0z-27Zj8N`JF1U JniSK}`UAl?9rOSI literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..995ef5fd38b691adf3d3e9ba634eb2db4cd2cf31 GIT binary patch literal 1166 zcmbVL+iuf95IyTSabl+l4Y$%HB_#zV0o5-&AX*`z3IxJJAZR2W9e3L-aqVKSi~3hw zRS6_MfR94VI;L?2L~8vo_RO3!vvX$s^Vhc@0Pf6VG!G%g7Mf+r0`?=;R%!Klr}{m*>6!OS^;k!pX+Bk3d{*Xc6 z3U@d|-4OwQp6ri!^x7Ty6lpl2=lVl863Wklx*Q7{=-HV%ruyXP+79@;L>xR)x~Ult z(lHp8|34x_ZI8>G#tfZa{}lcoTd-yvI`sm1GjSR2Q-O0Yro8F-*=h@^;d@IcW`X>}V5Qc6t*-{!^B75}&xlW#{@&~Eq zknOZ{b(+sQGc4g6Mbr>>#w`xMKvQk<bfqmOF0eHfl(MF(3imE8YNp=cs&w;2yTAgQr|fHv zH3t_~Ry_1afg|^nzVyn43)|3O6E!?BQA9}qCMuXWQPt)O$|e(Y9OC~UW^$+h?1Dsp zmF;(qr4tEogtoEF&%eNbNfw+2B}PKC#GaI~r-;~72YsFuH7w9x<;g*YFR;}74$)jc zL#A1sIfD_~Y?EQ`D}T=58to!-v^5xn7nmvII-A^NevuKFiCf_YbNX3gz64}-Lbmx0nJ)~+6uCHQ#_h~;LDEj(F77d-RbK?>C&6>6;APxT0p~tXFzb=@ g;$ms%%qw`10yZX@E2-esRB(0@Jf8|)i}gMH1FF0ZZU6uP literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/CommandHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/CommandHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..466dc9f17d325b4a63a99d112abaeefbf934af93 GIT binary patch literal 4775 zcmbVQ`+pQy760D6CYeltLIb8y9-)vIuoQvPY#JU*wn@8r$fiMBwN7?#Hj_+d!pv+) z(Arwx^;xYCu)YZdgD0WY4|dd(XM& zeDAq)&&(VDdG$2_d+}El{g_fPt)dEM10KYT0!u|LrW#>mR>4UX^*qB-p<=25E<6QU z6-^AzsaVPKl!`l8&Z}6%azRBi%hM{>vHXCF7M34Wv7Y4aZj1A+RKJu{;+uN5h(I1OPJH`ZRVs@H5 zSeY;^Ih36lm(Hj@ZW6LOVW)I+Om__K2cQzHEUa%_T{^p!haGvP5t-!XxM0>(^GLiA@^t9pS$&CcV zNol2NJkcRhV#BLDDp=|M`}LAsj?-Y=t{3NG77@!>)? zykZ6)shGe~X_~R{V?p4-%8l5Wj42aFX413hYAA%$UEb0ybd2ei;Z7EmW95}gaB({6 zR}=}VC;}@QeuAIUU8vzDT+;9}yezQiHtmM$4h^qhQNv|iQE-msl7d$?T*c27{6fQP zjQ>)@ukgA+TghwIa&0s3RPMUd@M~OB@EZ-kMOwk{H2fZa(C|lG(eNiW1PyQCf`&Jd z*6?TiMPT1;dL9HH6chrx%Ik5(<{8qB6ck!Z#^4uvee*Jv^=wCAOL?nQo6t>NyiDm) z?dZN@bvqYjD~dyW#R^pG>9jy|d+2f>9-opaFUn;_SNYXqwl!g7va|vfk5qP0kwec$ z0YR$uMq%l-?HxJuewCVciAoD)Qg?^sJiF1(%hgzZ=g$0mzt#xcp&BP6y#b5Tm#%ez zZ8WL8cey%EC9Ohs-)uQ3sRZ_i!w=AoQdQB2Um^zPD1gl+w(O=krBnLv&t6)rrffeg!q1FQeuv zYEKYcw*;jM$8$(MBMo6hWu!5OT!MBM&AFLPjIRjKT*=6)FmeYYtHa0|M(zwF&5W!K zBkLG>M-Bs&yTi!6jO-~QOL(WiAeq@K=;eA7HTDU*MfMMMF5EM|{>ED`(cV|%UG(c<1O2X}4-+j|MIRAbslS&#BE+!~@1u_hv)GKMDSw`$k#qDB z;R^1--{>R4Kd~MELYvUgE;gb=>_(?Jf-W(N9by7I#XNS2XAlw3W4Cw_d&HaM+~3Kw ze_$Vu(TbZS>?G19HO2MNF9s~Z3lhNzApx`~% z$Pa<{(x9KWqLr*Dr12!@n$JXcZA)#y#Wc5aWOUcvj_0*@0hbsSKh z7;3#AI)%$v6617mxs^hi38a?91RY(btr@k~(MT*^N3Vj+wrgm(=AZLP8mxlxU+S*3 A{{R30 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/BalanceCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/BalanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d7300835f39d872f2407b6c0633ce32ee11e62ec GIT binary patch literal 3000 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d0e61fee0ab53761ce00db267783ab6d05869c78 GIT binary patch literal 279 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 F|FekxSepO< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EventCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/EventCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..88ecf74265d8abe0852782a35d6aa54c0d753195 GIT binary patch literal 12688 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/FirstJoinItemsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..62a2d28ade167b16e5d6dd1f9a6577d1dfe8e1e4 GIT binary patch literal 3010 zcma)8TUXRp6#fnjWEg_tctfo^pvB=b#tYuSS`|f56zYhrm)3?5hCn94B!gn_SKHe5 ztq<)(S6zLu4}H+~Xq;RYT$I&C-PROBGL0^K;lX09%pdY7eq2Np{1~6EI*KjtDYy#&nl)!nsE@$45 zpBEHdOkgE0Nx{o;yqUmTxFWZ{9fz)9I1VF@kvPmaM&rmS7*k*gR3Ee)D>x+3obLBc z!*xb%Yt+;nGq~n@6WW+DsvCjjI=I zc$Sk3eHPrly0~PyTHnC&>xMZgX`zBDOWG&Ucqs~RIaBn)^`48y_93gbSmphLk9ri?(1 zG-=4!b98az0)`f1$t<@b`sEwJkafsX3FS#nY!6(PB7DX|HZ=4F$5roaW-%cz~Qg2D~05Lk9#nZ7n? zdU?zDS@JBZfx#<-$IqVb%Vzrq⁡dBa8K;u2(F-A>SNu>}dhPGOJ&#mRVw6E$B9b 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 S{t1R-A%A5_7ue}2dEkFOu;b(a literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/HelpCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/HelpCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6c133c30bd77a14db8cb285ceae84c9126cbbe5d GIT binary patch literal 1375 zcma)6O;giQ6g{sk1lklUUxK2@hfs<%ii$`Pl`4ZX1s6ChboEGI(?`>UNnVigZ@BUo zxOU+PE*#hX3;%}Ws5far1{mt*HTUM;bIv>WHs61L`3m4Jo+Y7Uv;$+ENMSsQ8<^Pm7$&kMUzn~_wq->aj! z9p6|jt`w#=84^XeEEq17q$AdY`j+rs@-3S(-6hxL_9pja7&ns%Rh2%&QVVd?t=G9z z_6_b?L0veC_=LSvY@`dMbH@%W=`f77Kni6tXkt&8fg)A&*^=v7##T_PNo6#7j3)4g zaLU3fye@6?U2fRiv5XDnNymzA8n63Sc&$?}Nsb?NGK{uHC(GzoWJ1pwJPhd##m(9p z--#U4aEBqe;Rc>5R%B>v=9m%rP>PN;x(KvN2I(~UK@InG%;CO@H zosSvzDJguTLMG8Tor<&?ex)s;8bd5eUonhlPY-aak&4K}D%zN?e{vdq9r8$3fA)C8 zq1tfGs@z`}d&CmYPQ9X;I8o4hSRZZFi>+;8h7^-$TxnOT;H`0Vo1$xnHgqbFJHE}s z1*Sjd$pIFca*i)7!}V5s&X5Y%c1`#`w+OlKEaXj$&<8}PZwe3tttYzZyg<<^#WDKT zbJL%}a^0~{h<}W#GIVw!PG=fzRGUHu7b)s*)T0|c6j3L7(MM>E-dt*;zN4BpdYA8x z?IUr3Hiq??1GF=|#}GYe4BybPkeD7!?4$Dl$rwKT`4RHQi3Nn6ptBdlgq$PX84N_+ tIm!={k^u}x75O6-d0fU7Vkb@v;VSW8qvsT2zmU=}{F4kIGbt6r$X~BjZFK+u literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/LogoutCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a0bd5a31b271b220e5d939dad0ae058a31e61e64 GIT binary patch literal 2718 zcmbtW`%@D~9RDmtE(xb%6t&jcSTTl(oZ8x2qZUCZv_U9AEVb4ymnAuKxl8Z%KgD_pw{#1GZ@E^T3=0K7$XYpwK!haP)K4F7ZMo5coHeR zp>8JPD5`ZbiHn#@;1b?UVj6F0xSYgZyxoo~ct=65YIs)z*D%AtEc%ZyBFJo8&V#K~e?RO;; zs;jjycSed8?w$kclK!O-Nqik{d(T zbx|T?!qXJD1EJx%js@J%@V<@@@S(EkBON#KF~iY}Iqe4N3ZE0{86ljs&u4|bkhV!{ zQBq2$-PyFPh_o-fIpOWs@d@TNe5&I!e6HaO9be)r4PWc{2H!GlTXDvSBSl$wI=;jA z8h+66BYx8Hv%>1zSe|zsW9V2BG&XZhn36JY1vC*jP9q)9ZcG$|Caw!Jkd)acv(b`h z7NgOuy`pd^=K0Ho6(t(kkXMPhI})i?B5Rr$yJszSq#So(&v zYHDe;zu^XyTrY(!>aHiLy^`358&rDGpmfZ@^Qh7&OP068+^^7RAhDUy6;H&ZsX~_h zC##k{yw>Rqam$gR-@S1ApsbX4hiqUO#Cdex-qdBgA= zTIt0n7E=K}+r~T5}!y?jZJCh~7ir zWJs3979u@D=bhoX6TLV}Cn8r9kXSMt!|^8T2WX=m@N4dO#BQNLON;t1VH3k`wCVa1 zv`tW;`-o59MIx14M7zRXgr3?=`$cTIhpkKKXhCk8;IWd@N>QY?-A8Kr9=6}cj=Shw z!p_!^Q)*X8u)78K@YHSWQMikE`Y-HV#4}6S*Fut;z-KQh`&yywI}V+`JkDBCjPIzcL?J=YMU?dsV@%S__6{SnJ!GZ_#k?PX zB0s}aiI7yK@;N^vzay2(od@e~05_@ZR?Y6*+kN`n+vncy-~amgR{&@5gN}VT-H9_< zyoIyTpE_r zq!Y-rhMPKiFw;S+M4z4yH(f4mv#fka+HtJgg4oS)xHSZ2 zhR9Q_yEXxf>GNgbGwf}IqDURJY~FGsAFc=8JLqNEi%y*$aJ3OgL$d8?rJI zkv4Du2MOPe^JU;ZJ}~eAA2RH22)k(^4G#@`ghvKG#wP|o1=lcVz(PfXFi?ffaH8LO z;DvdM%i}5^1|lDAWIoMa-jVr$SH&|=ioE4=rxuK8m^a|yv4#Z$E@~R20S}8BJ~QBh z5_2Gdr*@updc=T2sA0*#6FfDrjAx{q*K0DRv!!f~o{X~dxrQ$c ze2K3#d~M(xd~4u4e9tiY|G*he{Y!u`9*9(LB+Qg_R4^Mv$FQ^N`H39v24Y6K%M6V6 z^4#l}ny2D%g&&x+!gc~B{K>>X^==C_B?HB!C8!uK4h*&^pRJ%son3@Ak@SOUF1a1a z`9e#;dIxEqN_aWKi<(B%U>M#cqz1*VJ80b5*9X7F0!i%YqE{8ewWdZ;$8VL8f5H=? zk^e@Bir5LtX}vJC4Ghwb9^V9G$x-1mGgOYN91&2Day?3MR{2~8E{~cSwdoC_8Qf@M z$Ty@iRa|q=qx47JZCV5Y?Ic6*X2{gbHEh@}D8m@P+A6a=KWBZC`)YNaWPnYqWpQpG6ShD8lW ziG&@){w66jHOIK|cQs^hEIv3AHI=P-Q3U_Nh8IHBAnB)X| z)apcT)%}W%<+L%zqYW``$(~`)y05$}ty!^1X{5cp!-EBe(@kki4rn^eqI0^~Aj;WL z%IHo|yncOfirUC41y4yO;x?i!aW@n*RffKSsYXGkBPfe)iy;*;o#wBmryIP{(uj}_ z!XdgQ?Thb58PH*bgY?YP`)y?C3v?BRUV;_6GcV9qXn%qB=VZ*#G@u*p@w0<&SUL1! zC;D)hEPcsD9Klg~BM2NrKfzLUV<3h91KD`CJ@gwoZmwe63bf%hbTX_Vo52e7AF*So zJGTmB4cjw#{uAC9Ucrvoy0dN_UPV{rSw(kY1-pJh&x6A7OY~-Y(6@%&8dkAq1$*yD zq}yWB1?cpDFWo2i(RV*lIzXfj;S^E7Oq557>KIw7blHr8DI_%O!Ppoi8zYa6A-qkY lc3=*}7$JO(PFX)fya=9l-F;Q0I%bk19J!hYNzUI%rem@4Vf^Q;-BQb$w7}H4k z$AX4*7>ihnVhqLvK8)ZaEQj$iR(#DTVSI|u{M&Wk>U010MHCs_(6FjuOy3mjY9HWyxZ@wIiK}=1!BE zc;2p=%}vu$zT8)ayglU#+#CU3vs*3Gs=J2iG}1+k426=|QvIP?o^l z2rQqdfF^&CwYEoI*Asc$X&5{0{e9&b{YXY1xFW5(bTZ%NADM@y(KM}wQSlsQHM+Tu zyWMAjtD_-U8IotNXHNm^(l?K!BXDsLikT|!$S61cH?p3rcxG*%sdvlA<_bhAcH61R zb=9r$P*s+E(mKxK9PwM`0rS)GC2s2Y3bzDi2htu2q#>*0Hty(H$JgX7>&nxxp(BU8 z8t&=H`xpfjHI#Ieec?VH=&0bKjw&`aZ0Xp>U4gYX&&;T{3M~ImfLo?3`z>Q{`?&th z{ikmNv0dBgRkZ5LlGQvC5Z?-{ygAe!=dUT9*Mqmw69vL7EC(@X9SU3-?47a>SykIP zGWgcJ`5m+mq;;YYSRb0c(|nR6KsS|qLg3iHGiA@^HD?H`S{r<$IUu2GgwOSvvroZL(0@5^@{6mpeHu2iJFXS##$Lt$R83Bz0)9j4$m zh*vBP;Ya=TDoEEg8{E@V(fPxf^v9DM*&BTpqL-_mfst3P$J#_2(yLnPaa-o<9EwD8 zz@%Eu-KNQzZuw4}1cGM0j`#Qvjq~3M1i;P3IiBY!-KQMjcRIE38$>D|c!6Ll^a7!0 zUDFFZ;|TGb;vaPyQA#no&roxr=ZIOnMTro&h_?wV@D48Z;a}3m_ugLk17pSX@l(VW zpJTiOEr6|GkWC+le#UA#xE!DO72%(-%-2W<(Ey%el6Sp>$pD@`$CS5kC44pyRo_p-E|MnateHJs-bw&i$QxcK`VI=SKiu z#CK7&VnoL17VO0dvAiPTq>NKhoW@uU!Z;Jfs~DFt5yd2?gk(C3vp5&U49?4#jbaY3 z$#`7|FG#o;MFTF$ctbqj6w6yOE{o?CVZmk0*FeLxjFb@SGSV_KGO{uZ2@4Vy86rc5 zWq893$+mG<*K8|g8fjg%bnmL|EUH;8%{9-kEmu7~dUCLRjv+K^r*wweal_Il^SOE5 zInU=!lElYtjhl1aF~q(o40&0@WjMMCxMt^a+)BABcQW~$Zh5Xc%?qP}bdb_qGV>Y3 zV%WP0kjRoj(y!@S-lL@Y+s17tqt53S7Y$D>hEa>aGrE=1oxw}v3w)WYCbu%`jOQ3u z#xFGD`f7$fn?umCQ07!a;0zqDYT0bdRu7+~W*=o79@6 z6Ek(kRfW0W=L9_k4$s+ni*Ops3LCRLJ>!Q7djb5`8INm=6MV_1ids>EDIv!Yow4(d zrk^wftFLp%?!Gayb65eLmQFh8}>SAa~YO^lS=mUyMPRh`dU+=Io z6r?#U!HL0z7egM)60XK@4F!hQq;|p1D;l@)Td$M6o` zjp04qp!{QaA0J4#8N-LT#ZaHr#;j#-8Yv}cRdUG1@DV;{s4MAw;GP&h5%Q*|n_(nx znA9es@K34BgS2eREGSvNtSdB1J%6H}z5E?!3BDs4N#HJNqwDLQ%v zc9CI!h4{;cm%py&J;U@2-KCpu+H~)>cn-H*lZ%l+lWtvz_Vpr$8qswVbnMi;4BINX z(LAg#>--Ua%uqPG#zDReJ(c`68Uy<_uWG{0FvPU1t}RZb(DE`-PRA%w zwv#+Z7>#We4?>hPQV2}ODwb0r<+4{t#YUh(bzoz+RT9t8+?gdtX};EYPGOomu1>8( z4Nx(e61%0LCmWVG$IUzyS>4t?Mng{2#A)Vhfryxl@TDbUoS}OY*q|?qbAjsE)i$>N z+)8TMvjY!`>XtK>{)LiZ55>zlUG8b^rMI{Ng8qlP{j>d=UGl57tg(Sc6d5d^x> zO|aD8Py_g?4pc)1*x}A!5uWUN6uynx?s((@q=%5JaJQ?v_W`yHgc70dJ3_b+I;a378F zZ7bNG5SkS<#dpwV1&NYNXf>9U2>WI}Kxzfe2`M2x0lXsip(l_#38nKPb}`VO`12wF zrSn3(Wi9$@3W~4@A_<4xs}6hCItUJ`Avjn-Gp##_gJ$AjC!PH+G@*rlyNS#_I6(9s zBvOaS`V=uTMO>UGHZBtvS4fjZFTGC>!NXzP#1Y&>XK9Vo3Q&S%PIVYmoR_`MYu(A l`XNznpzI@$(InyMV|=ym^cLocBpBa12={|~V=07L)) literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/ReclaimCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/ReclaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ae5bd4eac1578a56e75538ee123191d5bb7b13b1 GIT binary patch literal 4368 zcmbVQX;2);75;j5VTWaiU_l46jzPzAYY`Gc0xWSzSVUX_gsm&mu-hync4t>Jv&hKK zVdb!$%Sjw3LCT@ni52IvQ6dDkBRg@DA4*j!RY|JyD?gGyDOaUZl~kqTigUc4U0{J- zL8Xd%+tdBt_r8Ab_3JL~{pZ!Y0QTeOUbNt08IRY@d|zlowCq69VXyGCn2a z(=t9I;~5#BmGL>D{dpPB%J_ne=VW}*gD-jTWro}q-O%mB4E~C4iw9#yD58(@fWhs{ zF>^dH797=rwjMLA!10dG=E`9PcSkJ58P;{{2JcNoN4PnpjYMe1*BuLLkzvi$#dm7b zZI9^|L)$9g!B{k^86hj6nc+l~8@3e~;K7KdM>~=$%|taGNrZKSVdpAff+>TCKgxp% zn}{8(=#H7;z(`_zT(<)$SAi7pAU8tXY(CR{QJc^L5zPn(25nO}!p>%MZ6d^NhRx{^ z#80;;1N{+gl1v$L?2u+_3=OLg8>1~oxM>B1x(Mh|`V~8~91;vW(!FFRN(mrJ6w=}h zl${_6QlyonR4{03!SNm~?&O0i*Mlhr?_exp26?A0@>aYw(tAW86g&tj3Xhpgf`V(f z?!i|Sd==Lfd`*b2;|9Z~w7@Qjih^(8dGe*;1$+9<3c6l(Z;1*s|@I(Aa!EMYi zY+RnV_JkgxjEWuHVJPu8p7A&MBdI<58_%i!kb+svQBl%xOtVy{&Ui?*$GC2)LVKQ| z+Rx2#i_}IYReLf{RYBuGDk%O?nSxivE?=WP_3E~>r>r~JFLrQ0r}GG_IVER9x~&;{ zBAV6Nfz_PNBdqSsbHbdA+c7$KSyFQ_>8mwsG*bYpyUKZl8^Y0+%r&r=9ElJf&g#jr zU)@hh5T3VPlsq;0WlA78QcN)cEwZ%3Q{P9sOV)4TsyrJMt{6xV|@fICdu|!?f z&r_AE#ztwI6bseQMUgsZL7>?&)vpO{sy}Ky4jRMOOls7;$yHJ>IL3qH3VtSdsw;Uq z%L_~yB;k7}d72M|pJxk28Nr40kcg$DlqpxN+4nD5nJb0fZ9e>w=B9h848c~_4W;%?>{!s(=|BQ z)z?eyH=e#e8Z(nO$w`a%8Ief_cA7}gwbQFbsU}J)Dl^f@BZc zrspD|L&d_Y`@4ePIUc zYJG*XD4K&$LaCePi(f;@sXJKj+c1NTNn0BDHj$V?=`1$ilzz1c`M^@hbvKfbTh;=( zH4XByMaXSSAvea8klWV+sir|zEJBtoh1}kngxs+f$eoLj?01WhyOu(h7bYQhuLaVd z26?sCS3YlZli9Vtip8(d8dtrq(s49fdka-_sFvv6TR`I)Ct=eycXOW?DXg70nyzuz z&tgwgPOUQtOu;=}nzK+DxivZUzB&gnP?{^UT|1xdy+n#^Ncx0ua-A%Tn`jhf`y8{H z(p*;-v;E7>UKIQr9JA}h`9LQAIS&8Ewel~`rJ|lfs__g%Qm2%m17@kz<$<>1FRE`OvgcX1&7#EXkyQzg-zi>_BxKRduV6B$1(ON zbh5wVA@)xkXYb$y`!BjBFM6bW^h?DUkhWn+s=~0;fQKdeH-Mz!v=qS^$;3J7Ih>bX zzy;}LXwoc3q&aZu4U9_n5SD(4i_&ipk^TTfdK+=+Z@A>z1k2To%TBjBi#)==isR@) z4tW^IdvOA}WHXkUdmHad&WV0A-<4?8O)+84Trc{l@8!4}(N8EY6uN52<^=Vq0g7u2 teE&w=gFz35{)K^szk&j_=w0||;a#-T+B?`MEzTTrW_FN=lY}8*_T literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..9e89068fe3f0354013e7830a1c721ec076915351 GIT binary patch literal 970 zcmb_bTTc^F5dKatyKP;hAZo=6C@XE%xY1~Q@D?mf)7Tc%0zU9`x_f93Y|om#z(4S> z_^c+z7{d?nM;T`qXnpbplby>qJGact`Stt9F@Ps{P{LJIiYVY(k+j7GUe|FW0XGwN zOUIIq+YBAEeYr_{D`JU^6b*b&jlcXiy+v0}i) zT>~XtFtCcMfg0)zi%E#(aW%BMem{0b8&Y_#9Rz-0;9lZ(A616e(|K5@^RTA#u$+_n zp~Zt?JQgYnt-t#+A2Ap$r9{y1co+(rO?g^(bFeR*h~eeAYB0R{cl_DTtaNAAWM?Ox zp6yIK|wxpQW$Jd`Z6SH{^1gpOAZ-LXBX4 z3Uz{73O`eL5exKs@~B{i4l0i-9^)y=EM_UOmZo1tne+_NTuRz|9rNf+7&%``9Tsqz RWDZw|FB6q0yg(A=!XH+d1x5e> literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/RegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3444dd740dc6519bef19de7d94e2986d274c8f8e GIT binary patch literal 3927 zcma)9`F9&v75>JNJ+eGW9652~EM%MrRkDcH7FwFPP4N;F2ir-!BuxU8@#tBadNiZX zjFKqqEu^I^W#7tPmQpAXL(~+`;c)ncbNCDR34Y@T@+YtyzBi+IkL;r}Pcv`%-o4+w z@80|V`oG`*5x~1pPoNKH<2cujEY8bjO2u>nGnkdlg$`WAQ|-8f%N@9a_b2cHe6Srk zJe|OYV8k((fQf<%kw7Qr<0#7ilALBG@C+8>uw_p<4o9wV6ooS!^$$?cid`*Q zj)J3`KuI|jsN%XXs{zG&EHmzU#r#}#VZjRWjg9gR;A!C$gg0d(5Y^7jG zQ!AX?Q3$*#@od%dM1egc3KG+9)icGYC7pEFO1J8lR@ZP0{R&z`vNU`eH#NL~7ZvPV z;Wn!brQ$OhUczTJd=8&i@dXVpP9};(MfZt!EBZEt@_o#r{6MdkvoD zuYhzN38v3`LfjDgyzA+P;|3++>1kWT5AZ_`Kf34Q}$hrOkdl{^NT)yp(9F^V#9AKw&kiPF_eiT6lzrS7wk98r#lqXwjci>uPvs<4!Ey|n;WLxv_XEqwOJ&qmE2!ScFEKdm+Ack+osq}!?J#w*{91QLvg^CTO~_H3 zQK^ti1;@6uu8}iH!NHK+m03EB&#p6Lm1z^Iz=-#tG^J577)`^1NtSd*`cJ@CDwa3avi+wD4G~6deMM7~UaVN2p?Ew;Zi1Z!CKIpVVFODEZYosxb z3~z;5JjHw9b9e`yr&az=tNeqM{)?nal21nTEs=Z|kKuSo$z7bl08P+}f8udGL5jNY zH_m^O=E~yFcn=0SHbjhWwEh=IR1B*a`46%xPIdJCo3~I!R!fng;B%EU6xDcpu8y=A zWcvW01I6R9MPyzgE$+V9!ppjlHiCL9e&j67&CgEV6X=-> zN=jfLuYI*ttFEhXO|E;?r1OC*y?Zj$Ms6y5;!Pb1WIKSnLA5IVQsl_6T&pTSj+~<0 zR(E79=Nd<|}n<-gk@*FR;lRNY5H=Sz(wVkR5<%E z|5R>E$CG~9DaN7p%k^l5Cm1pg$)a38=KG; zp4zCuvr#qZgDvQB5LD_eSg@Y)YBV8m`{)kq+ynv_|0hINMygq0c0v=`^yvQduu;yp z!Q9qy?U_@HwHIp@IV&ox>L}tvVEvX?9Zt8%lSx@r5+=h3{gWcqV@>Cc(tE#L? zC0uAISkJPGbAA*{-&O3n>zSzz59%-|k{BY^d}Brwq%X@V6u8zAaIc@7w@rz6>FA&i zF=S)^$AkGDBZGP+Oa=MUJx|rg7#)nX)3Ze*{fxO_Npb?GGr6M@pNNCTh#=aYqt?M8 zaJEep`&x>m0_G|ihtiKcY33AXa7+6%htNS4lio7Uvh}IPx3?Y!vgFDrE~qGCAq0-M z!(({$L1JdBiFEPsNHM`*&q@B5fG!9#gt(rjRHWR+eR%rZ3yA4-*K>4F|BjyL=>4sJ z`8}>_^l%+OFNV-hDUD&gPtA#jDL%kBC4$h+83J>zcdtErk?_P+1 MXw30Kp$iw@080EWJpcdz literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SetCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SetCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..eb2317dbe18c9f71f0b207e1aa50fd5d394c2ac2 GIT binary patch literal 2963 zcma)8NpllN6#mBBj3qf3vDj>8Y_KiM7DEV00I@4}F!2_IO;`dMOD%cuXhzIpW3rGP zQaR*I&Z#2TP=S~nsGM@hEk7Zt$}NX*Po?sDW@L>mm5o)^?&<#e>-WC*`gQ;I-_Oqg z9L84>^y8F-)2-;knO2-dhWFm!&9I1(2>pLk!np`WalRFAVNAk!6e1=fn8Z{BZ{tFQ zhO-hbMlg+;C@$e036~{Yk#JSQH3{!ZxGv#_g!d$<5@sdjB;+M92?Ys733C!O2{%Q| zi_itM9M=rZIVqqoF=n%zY25WN%;gGd&e2T6R?cNc(gQOBnlfgd3D`8I z8EnEW%`)qvI;+!2e9X+L`iyF6{5u$Ia^^H!z=;jWb7rZe8hKk$t)g3EhGQ#P=4AZQ zG?`h}-J)g)*tY=@w^D$}ZnK>0kWohxW2RM9X5IOD%~67Flz=$Pj6Ac_SI2Iu3#y{4 zMp4N+mSz+^M_X)fT0qan6eJ5-PL6J=L*|*UE-_2M&M+0ZsX0r^l+NeK>b9(-=H|!M zvZoy-gn(9V!?djy$(7z0aD@jbk~Li`$3`?BlucC`4{$GINMJxfqs^QcN-#v2F_dA% zaEmt<$cN65VykS7A&ui)U6Sp#=7=B;7Yia5W4Mha0b4JbmYz>#%j%+WfKVw8i{TF5 z7x6(1AL1hscVjq>k7M`*p9|+A<_T>~Vy$?^x9OY@@kI>S-01@((csR} zt}2A*NeIC|X|sU}z?Yx`2)OfjpZ**4WzI{lMVH>QR!jE`osqmvVKjLV_P_JV2obz<6PlZH-b zO}HYUeeJe1#BRB&ZjTlX(_$GimySrH*1Q2)eYB2&p@P3+Wq~S*GEFvX+-Se9w9!>j z(2B05^4mec%i+SdYEJQ%Usg+cCcK2|U9`v?erNa$9f^T3M`eO=sXBJ95z;T)+(xQj zn{BU%YlWo>38m7i;#nC_57a6nKnc~q7jZ>Ee;tKG%#*V>SBHLNea)7>&tCXnKt1BsDER&|CussojodYTK!eBZ@85Zbb*S zVaS{FIFP~t`XV+cI7mBCPT`Qhlkh$5+(dKF2Y-P$G4$+PM3bo}kRIZXp~ge;)+dNO zK<^_&ln%N2(P z19CN(zzqz=FpLqox~XC`jyMLIF(&8t!@Q|G0wq8aF$tCf^W_g4221 zDQQdo>Z;*s!txAnLz@oH`W3_^r(5OgmV&l0W8T)eXV@0;1ln9-6{WWGVJ6+KRJc{t zMrv~*;30`7uWYy-mlO=2rzRY#0+tum{T#Y*=ze3KrT0uHf zS146oGc3a!Q1Cfpzpyni?FRD%g;bJ{>7|Twk5w)wWV40zWvVxORr)F}iq!m1ebPoH58MIC+Ez)LSo~XH8j`q{0;I2rmbHhue zbp`_~a#&T6pwn9KxH$$B6%`hPjVi;Za2Q;8)Qo9f@O7QCxa^x7DNmT9YCE1NraU_p zbahUJuVRg19S;~b@KD8P44>l*%EX?dq=GunDk?ZSIW;@FI6PD+EZ&^CJrUfFJxmIiNH8W5t1i*CFN9s~ zVUsnnu`%g(6R%bYd=zwN4v6bHQoSX~=9$cR=YJeGdv+~33R)@P=TfHN!U0uVGd%yH z=6iZ|T0{ z5DZgxc9yreTPD;Z!E})5mvR!|k#GOXX6=skhl^DwQJxITo8zWWsU)bRhq5CS?+YWL z7f|PxF3ef(5;8@pWn{}aqGGQJLc+83+$(qujr2u8xCkVZ5;KFDU^AErIfI!1mAE4G z&*CCUbJERPVlDaFnM5{OnoTZt5{{X$vw{HLd literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/SpawnCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..718ab6d8bbd6743e3eaf358161ccbfada3cf963c GIT binary patch literal 4236 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/TellCoordsCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/commands/arguments/TellCoordsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f528bf91704caea08de28c03046448ce854b939f GIT binary patch literal 2252 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 Di?Q@# literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/AbstractFactionManager$1.class new file mode 100644 index 0000000000000000000000000000000000000000..b9496864eea5f739219885951b8599567e9d24d0 GIT binary patch literal 2381 zcmb_dZBrXn6n-uV*=DQ2cFhT+_E&OP_sbDn$7+28;8@h1S2*iEAc*L3t^ zQb!7(C~{rL1a4@UQo>C|rZvpyNMrUi=8)4dj|H9Q7Bwts$P1*xs#_l(7nm>B9b5Wk z&)suO-w7YdVBf6TdzKx#(yyCG%wnk?2Gp)JcUCRmsyM+6UCp|_8|DO-vM2O4vMrFz z%d#WTTXcPAtx+pE!Io9>sOc+8+w!)pz*TZfnN(>A7zN*Vg1l$d>kh@mlf^MS!K{*= zw8{eOu{k|-!^WZ62wg99ow{i^O42Qxc`1Xk>sz6-VY$J~Nb!O7(2A_g^#g^b<$o8WntUoqE94;(vug=f1;Kwtja zb|P@=8de0pE!whXR-~+Wj!CvAebct=s$=FAE%H&FAU3p)5RZA%SZAH(sWR0!Wh1bi z6<5{x`S>QgstSocvFzKPth;_?)d{Pztl^e{KHN5t!5fMz82AjI8z?HWiZy{7G0ojc zq6XHnp*+|IAesF9b*MuV^7glt+0 zY~>^cwytj3wo~Vv9_OSk#r9|0OB@3n8z=@g>3M7}Gnx%7M}rsNm4R1YvuZ5JH?yrN z7NNKq1}r{W4YapsOIs+YEV{ExOKKfD<|-!2n*^rXJ+&IW!`AQn?|3C*a&N8SdChmt z#yF3i%6Nz0#$JA2MJA(~iClvJeK-qZKrV+a{sH>v*bfk+&(QT9r7rZ7rf36xWzUhG zYg%CdgOq3=dE>bnS<*|B`c#UMw=%B%d}ph)vYL#9HV56N15Em1zcnv8g_9BL-gH)J3KW+qy|vH zyX2CT7w{grZd~T+L5M%;P}4B1;eElMhASZX09kH#VI;FiU`EL)kgsu7Ag4#ienILf t&OC{X{*AE_;hk<{?=RUNn4hbKliwP?x z10D>*zwz_rX`03-`>2?w%fl%$>{N|sSX~NU^HCYkl-3VvJj+L;Ok$@=%WRDsd^E;v znd9Trd9I(&;CVj0n=j)Q__&c5%4Ly{T6wXb&*UXOZsMhKcb1Qvxy8?|=3SdSF7weW z>DP*W)Wv7}c{#WH`5ay$mz5f?lIC-T!)lG!_-F=K3$61sK3^U_?B@%3t&cC{ppVya z$j=>Y__&k1{hwlCXZi{%U6Z&?Sj!Aa`~F5v{U0<8h>5m zJ2k$GNpFfqjd)`um`E52rs7S(_|{m|SR4!`!?7q+V{^g?#iAXNaHkQ78p%zu`1(M1 zsMCC(2-r8tEgOtLVoM@v^aNIA5NTj4-4u>=81bl)NZ6DYe;~@)bU?f;6byA6jS(XV zP0s0#8^I2yh9Ri;Cc}|r*hmB#2MksuBf)UbvREQ4D4Y{q7crP7Hiu$8fv#ArD`Et2 z+Y^i8ClWD2$$;vDfko}%u4pjX8%O`khU!13`J&*)U?38Vb_Lp#@o==O!O_wjljl6q z4~e`1m@(Y52Igy+3t5J3u;f=NGEL4Uk7yrgjs-iwUG>Ajd-CcyCzos+!^z&Q0UO*< z@48sHBhVO&#law$G?oR!aZ5?*6lmKZ00$#EiRE&$fr^T%BP};v771=K;wyT?9WB8P zOjRbFiW8hT)Ekc*(Imu4-J%ypFUh0Zpte%PSFC7Ss4y?K1d#?MLTCQ8)0A={n+ptU zE@g0T4fYs{^Kb`eQ_oW}Tk=%NJ0~0sC+EU{s)vwkN#o*%DJz-Wjj;~+|M2E;)M)MP zS%+C^&Y-g9SST1-8H|VJ*=lqryTgb)XAD8y0yYttzb=uCBm7v(w*;fXE+Y;zdN)LR zyTXWBCk#PKp)L=2V)7#rbJiGVfUNpg|AQHXd{C#KdR zBs)sdOqI)fqsefOu`-+p1Je1?Xe=3&DFsBwH^<^#fpxv>*N2m)lmR8tk|4slLTosK zRV;2a2BRSZajc^NNdq$#Zit6t@o;hr(}Y22EVFt5N3Er;wdtI;l zWVhuR_xx%4m`r6ERGPzyq`1B{Uzw)miuFile}&a=eF+4YShu<;d@P6QF<%7IsohXJ$xv^eCl8T$({? z9k5y-SRmK@Ax{(YsPRn4ITdr#G~LV^Ag*gp1ZN7Jx24l;{hj7^M&gLL*nqSgIZZE; zN~RLW#8XKhc8yF6EHTm<+%X6tWWfj?W#$sLvRFt52$nY=wLQxq2>0-9F!N<_#IBcV zRfa9$bI1V#=AitonUfQ8Gs(=EMmsH=$pJ4Vgv6rBATrKqSBA7m?-E8Z9_q$TG8jk4 zELv@yoe|`5mb4mw6T5;8au$x*J!4*kuuDv)ceyL_Uhq>+<5WZTg2<_`uTa13MihJ9 zhA9ZG!%Vep6Xw02%MD^eQD&MnG3V-X4?)WLs^fNsG{6X7r(8 zZvw$$;s1gl!b?v$danEgH>;m;6y76GYc&3rs@U9PW;~gt6{ba4yz{i|5i2w@S5{>g zSKu}ukbE{J1evL}RkcEV_iB2$ps^+qWL>U1-GPU8o4 zeu%%L@xwYl!r#^TQDDvA8ukf#Q zE?_qbN@+0cZL!Y3=J8BZ^Q3M~G@XCLuVN|H`M09NL7jiczt{K=I={w$)c8+2|5^0? zi_U-L*LD6IzoGNraiPZu>i>h^6m;Iw`JeQH#{bgkMFK=`%fmZ5zsv9G^c?+2#pIVSP8#+Y{VT2B-5NcrBtA+bWaM@mhUj-8`Vt!vy@CHk7kWc<9l>hDSLHS z89gX^kI-Es=|Rm^uDdGee%&=nF2}hlHP>kD1C{?c_P4rgjBBj!8VBce9WR&ht_iwp zqFg4);|X%90(pMgb)wANXLNdi9z>p%CkD9#-jFlSj&D|Z8MSGrM~dMCQr0qXNQa_a zp2Aoru!{WHo2RE!Q__eBlQ9q*>tHmX3X(Z9GIohTH+v-Z@_9;T**ez-fvKQc&OxdN zPd_D$FF>U3unKx!bF;=&hh!k%VMq|Fa`aVcqRO-v^r{sR3wqSpWIr4!yL1i%c|Ud_ z;hx@}_V89@0#mA&<`ixKLySa8Bu^l7`VeBU5>y@Y$zQC~}#l6m{x4K%kuLk7XrxoHF4& z41l)9!|>!_#H@%8OXG)p65#|rT8&NS%jqy{o|;=;2cyZBYkp@Z&^0>LdJC@}ndXw- z1mT<{YzO*^lm`iffz$#3a$0vV(Q0gl{SbMjauQV!nI2~wsu0W@&GOCS{DnV4z=s6h zjloE-d_hwX>_EgS&*4TQm?p@nDs!D9GKAv6&ZHFrHlDn8*4pK#sBb9nVMeq|mI^6) z#^eE$wHoIrOH+xZU4j5| zwYI`ez|7GnbqG_09;)z<0v4=*;~2XIiWlRp<7@&a%Q>iIonFk#-#9rFH*t(}mMmJk zs1<>s_Q*bpvU6v+s}~sscHV%ybrDA5Oxw)g70fNcBn(jyTn8(=tD8i_3I`63V+u1U zrNJAOscY&5cpHn)QRK`jF|pU4p0OEd@mHS@`*7S2&i3_`9X_HZ2aMb{T&PDAJ%y} zMoOGz;9Npm(c0KNzp2FxNvZV)hX{`8I|!mj<*7!l-GK9RxAeMZCS#cW^COY4{q+$d zi=$v5+a>dCdASiuebpmtuW1H!_O3U!v`f&={O|!yaBs(|t@`L@N|AD?_I%WL05p_C ztyv=roCo5ad$RRA9pMrO8`h$Qcv*n`g!yib)n^U*cr4@KC^@}q4Vrrm?BiVQtYPkn zw2dw&7hOSDQXzg(RK&+kE-47AUliNaFY1@X^htGp9p0mqXFp$$XO!9O=g;676*v3& zCOo6GWkQUp}6h<#n(tf52CAUYWI<=<^UC}-be1ehd6w2s|N zHMRXTzJO}_XaWXS^wGq7m4;u$btVnN^)&KOJ(bW@8bb{+`p}o@7Cb>Sx|ME&woG54ui~9(-AVrzv1& zJ=LHE|JU_XeTKTl7)8_p2@E=cIvr9}*-}(NihGYJ#UA>$CB-$M=LSXLH?^Mv*d>D} ziuc>85;vG$57YG4ntHrGrH@YCb@-q_UqIplWoqO_G>+EOWQx!f>QVAc!25AjMEB8N zC2fr@Sq&uXgJkB&#=TP#7udZ9)URDMK2N6YB2$6Hj7ag|vS0)G*I48&&4&e(<5iYwc-Fs-^ zPDHr-$g_J7Et=_-mc={CSMDt-jLh_o-A`whdv7NlIN;_E@}X=(b8;UcQ}aoZEgMZ3;HF9u$&E8#5RMJgdj6)_0w4{I9+o~ z-Q$Gs3#bI3kH*w#k=9wl#YEqX(s#ng?^2v(j(~>EsfvD0zX6A0VDu{e7CZzmT|z{K zMhBZslwP6VSyC*pR4NvJ&??Q(85HhuXjN?UDyH9qgJ^|=5R2YzpeOU{RM4wT(Hlgo z*7`@Nbvya$AEwq_g)Rn);K_`R@d*LbN3Jym^FQL-VX8<+^rlH3p$+Z`~pODvq={I591FQ z%Q}C6E?8Y#w~yAgBKrch3ta?_gF8rb1N?%!A%QcRy#P;pkw(xXI<@fSh>qYxl_qYt1Kmb)MJ7y8P=}D zKd*H6QM8|8vg)G{=@@vtJ@8@-bk}jE*Nx6`jC#eL#(yzlJi&L$=+E$`zhD)49XaqD zGzX5pl-@+n`xcU-w$;Ycad$WgSMp(+Lk(KS!ygj0h3@?q%1X_G#F}(#;!T<({YF#Dw{az5S8HOU4$i; zLvhQkZ-yKApvW$ulW47foZR=~E{VV1{j_nWJN>X}rUwt3@wY|Zc+(G?W@_c`nT6$r z<(}K=!gBA-qVl40?RIK|;kNFiiLfohm655SOOctYU=m#7h9#& zUBtT%@4mVa*IU!6=Um`LTu2`Fkq@(T6c3{+9uAY2&|EIVDmMZ_Yb2e=<+Oz>=n5W1 zJJ5C;-tFWu3inQ^-h!1{lAa=3fK^@+p+bSfMthf9$7NpZVh?*UFFe?xNa|ETqv!_K zFv1N`uYxR3;oZr!k&AHWrMVP_Y)`?qGJonwlVq3uhmjH#X^b%Qvc|*E!19ma8a}R_ z@E&>aKTK2%UCfNnne}?IqkO$mBs1$}F5%J~gA202-x-}imDX$@5M=(jaK0yoQiTbCbRcd;bFXA zh7V}?pe%nVj7P$FG>Q-7BQktc7C$ERk45oud_sPHQeHf!;Zsq}!KY>UGgbI3J|{mv zFH*js;foP`315z)9$%@#SMfFZ`E?n-q2ZfRd<)-};X76MF1{x`zpvp3Q8eM0(El)u zA4TzF{6yaTG)k(U$-AG+@CzA!8OE=|_;nb+3FEh6{7$y~K7v2sk5%{+{w!pFk>Rfz z{uajH!}y1We}?h6hJS_egob~I@gEJR!wQ;GVHMC+MHJmQrm3JpIG;{FGjDcvC`{|# zW9&ELc`KQUZ{6C}(W($k8~aR!8s|;QNDsyPt!y$q#CKB%vZi4rGwGgWDwWJBsB6h1 zW#p_rQ^*R-(+90=cP5wX$)~L3NGfS&xs~E-21!1=%SiiQgmcDj^H3&Dq3U{~+ieVp z2y(CXq3bs-0*Le{hth_X&vJ8H>Dx8kIddSB9!w>7oAI=19mr(&#)k(A+~VG3y~DqC z9r=aUB-2T2ox=t8J%C=W#z({Q~vPt>v zE(Wb(vC<{y3Qb{3zhw;U?J-7dPK;emRcb1vP|+YTB15Ltez4c}R7V-;jpr^=a}A^^ zt-yb4J~^n+?(#1N$$4-O=51bD&a@oVv&x~S`>!ao-kr$~#dqcR?oC?pfy};rMtU%w zaGw2UdeF?aHj*-wv*!vIoqfMTrMcfsTM8Q{YbjAb7q_W$aW{sXsP7a`tt=M|aQel2 zm$FkuA=fZj8HLcCw1FK^IV+pDb0*$rIzk!RQ$|w8K{M;JRA`+n2CEKoS{`$oVtf`2mq6*BJbF3DP6YB$m zC}RyvZJSPnOwx=Y}av}3{OFyj!oFiGeTEWaEFek;%SO~>1CR9Dkg4U4<3X5dy`%~Z1# zmYrJ?=(rQN^OUYvU|&(Gt6Ft|t}aAQ$Ezt)%~sPiHAh!-)jSuQ0j(^S2#7OIPMwTN0^E4C=Cnxv44g^lG!R~M_rx>}-^YN|n3jkK1E$x4%2tZ<<( zXIbQv)ItP{*np&=_ z6>6o98}WQyU7@bj)he}GhE`pz5hDl9jCDXZFPGCel{t{J>=r4oWF;5sdouYnD@$5e zYt@ySTBob4(8ubgtE*L;ju+yvj$3f6LgHMElRKER%zg3B^x)=9)-qDw;Zf7s+p%-= zroJt0-8SbNt+}*aLv#+?Y?mT4mWsE^jjNZ4Yt)s~As`KF2KVlq6dkm-a zZ*JS(Tjbbw9vrtDS?Nwap4Hpi`mW#9+gaq=aXwt_kVu=koX5CkdslZyXJ2n;e}9qp z+9&5d#1^p7l_ImGbQ@n%~}4+Hxx#Jm)5=JafCDcN=-1 z#_p|i;))#L0)BHUKa@=O7-?fjny^Ks;79DYEZ4qGbWfd6zj9kxTzQX6**(3&+>%by zZvNv=yDuQBlDULIKc!M8gC^9|+0)+HCl}Kv&sjH5bN0167cbkr%LT8EcWhyNVM(YZ zG8AWb`_#tC1iO(duCqDhMOaP;b}hlS?(QAzR6Bb+d-z=WgPrmWE7=Uu3B6VlCXUPxH7-_6d6Sc?0@R;F-xR9hL|j|wOR zV7!bud|zuMq-~pQNUYx~H*W@Yd)GBPySsWj?Hf^gu!moBJ$5Q&W;8o>4kNmzkh9G4)%aWR6J zhbq)z8b2w{;_4hM<*!D>_&IPnnlZp#^^QOc!sIWCwiRMG&Y7qfz;4cKpiYylLc@@T zVGT*H3Gh8G@Xh2RG__@c3$lQXtQM7=FB^w!nT`C1l2vwqnK7Ry{2XqGh*&@6f=*YvibPY(_d1@N$*(4!Eh;Ua~XBK z99M8$%~7mTOPupC7yD?9fJk)RD>l$k@dP3o(k+kkT?847xcF}3Z^5^00>1er_-4gM zQR^c5!30FDl)Q!>T1yXIMenrv5KZwAEyFYIz$-yiCx{g9M>!YKTH+D>kyz6yTri3Y zkMW1&f)KX=ogQ;;@|+)WoiD5`m(>Y`Xnr6OdoMzdVVXReMlqXuR2+L4b9Tg zxAzq0wTxkY04<|fU~h1OxXupUpn!0EumBq8U6_fDSj4Z$%}lEm)JyE$#*3)7J4!l+E#I7Y6#44*YE;L;=Rq4ccUw>`C&BecnIRQmLsUDVc5oxqAEtOUNVYH zM{$`rbQG75VtLUJj_BP!(aoOdW}oQU2yD}E(`i~PV3&)V<$05a7ujH5?1K5Q3&s*z zH7o2?t&h3LYF1Ku5d`r`<&%w9*c%sn8?P*GtXbtic6JwZq*BbfGb!cNf<5%&UV1gn z7|gI-XMIXqo{|<`!m8ldH;6!E3+FHOjQa~$pTqxWeaiZ5^%;ETsJEZ$9iV!LsNS=w z-i4twey_W5uwf{iU(&*;UM;pMIuZ*a9<&~yT=V^|YFlZ4S)XIfY**8dtirw=n% zZ({D>%-ngA56l7&%mNpTk}nRftc|2~&KTO@Zo3dwPQB}O(1J%1tSHtNCs1E%^DRA7 zq)Jq>N?gqkPPh%Pa2fA$m8hM|NLlxKa-PddP))8=dFmFA)u^4Vx3UD><^x^pfv&|X zSs{CEV8f8WKA#FPDpt$4Q=7miV=0iR;D_&o4`SgyxzkIrzXh z$#rFk?wR!mDLWom6|X@R)I zi|UZw21=y99&hmYIDKj;R>ux?vV5dN7Cvt*&!=v(e5At`K5xRCIT}Q}ni(u-d?>b* z&GKaVNQW+b-cp{Ao%#M)K9hZcn+O(-@i-N?Y0nyFdjr<)1^Ku^XCgyuDDWc9$NyM+ap*6ck_N3ZPqBxHF3~Ym8KCk*kn~*e@TF=CD!DFF% zylqXSdW2H$NxLQj8)@~>GW<|&Y18A~^xz<}yrl!-H1%4mF9WT@INFn3NlSwU;Y7>X`_4PB{sx)$!p;g)Y|6%8E!)VzMwYT+NApjKz^OL*@3H+}|D@N}dCxq+KL)IT^##T;TNQT8%^~=Xocz1;kT^NB==`ZAt zHFO+HU-G_A$1RRj%cm`QXVsNgBNkEOdWq8WM!gg`AnxIIw2}nBl|wvr8yp9m35*n0 z4lAltJ+0T{E(SVDgbI0MK-*G<($s4^3^PV1`uWJtoRP5>VP>}}tYA1-t^Ld}+ZV%q z19>SB!M^liVEFCC7kt&(lRD-Kug|4Qll~y~jeUAB2`&o(9j`O_G~Lsaw|=`(mWB}m?WjPPE8=!BFD^Ur#FQXJ!$T_r@V;eGQP!1 z8Q z8w`_=w>v+z8Lp4D?`t+v5l>mYna!#~b)!b(>QmPy;?Sj;yBgA}KbTUM;CVAOeh95; zlL*^!>7j7!dG3E5wSt>)m#Z5)J6SuAkGb%H;BK95B&a{xaH|>-0^fV zqaUK``C3Nr;v>(0j86!23in9Pz-hgN0{wx77hn}k{DHztOuoQmq3|cpzeMqO(otOL SUm~A@Me^32{fyQV`20VnXOP(d literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/MongoFactionHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/MongoFactionHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..eb43a01723549d7056bea0f900e7da3f23386d28 GIT binary patch literal 1273 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..f8126af65b87af99682f38f9f2b17052b1ecc984 GIT binary patch literal 11984 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 E1i3wY6aWAK literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..2e86c3947180a16c167e51f9091cfa76632b51de GIT binary patch literal 796 zcmbtSU2oGc6g_U!rY#xk24iI~Hnt4f7a}3v_!3kttD3ITI&BYo7>?_;ZZjJtY4?+O z1|)ad$Y4ZMh83yX=m9tf`^AZQYrtwxiCn$m{PHfQ!@;eftf`@wpE(6(hRve zJK}n{OA*TG-h|IN$+xr!O|0~&CzG)m+Ss&l+rbvL9h6aV;9|$Y9o%JDOH;g%>yfu- z1~V~kD;W-3QDhWpZw!sW%pmmgAteye?O z()2sc?#Xk%-|RAM{4>cm(NJj~W>%B;OZ%M{yT7SaH|ckk=(n+IEwv#<#4o|2b%EFf zc|t(_1K7o<$~)xVrX&9zmeqd^tDDgx(LzSwAV)e^v5Ep}*d{{@q;Q!OikZ$!EE3L9 iR4E)-M>dwwODDRwoSj{ve89pA&9^8jlxfq7YUwMB+s6X{ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/claim/ClaimWandHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..e84cbe238e5a64efdf1630359ab75758b9b7361c GIT binary patch literal 12383 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a6213e39d79d499be034e607a47bfc0ddbe42e71 GIT binary patch literal 1171 zcma)4%Wl&^6g}g(agsVs>OOcDD5b@5p=QAX(FzGgia?5Jr9c+2nmChm8fRSj0ra0( zfJB6Z1RuahA+D29O0Zfs_c3$Nxo7U3A3wi-2k;ONN+@Ehhyv~!uv1?vz)AgfYVH}h zZ(xU^AXOA|Pkt2cHT4DL%FiHKq8P4kGq z<*v_F-)+UARDHTH9gA=%qlh33R#ru|7la2sKM~=pNbD>Bgn_+g$nQxd<0lMT_J0Ve zwHfq!&?ViKrc~lZGVF-(CGYrjVl@Mg`)wY|G@l;o@u4Kudl!(OKGzF|L$11!+e$k1 zNleenANxsP($fs_UU*4N-5%M^And!HWH6AiJB7JZNK2@$2zN6^mA+uUFXHE?3)r-4 z7l@mzphT#rzqhbr*D}Z%%2af4W);gsp0O@VMvZ^gk+W;GkWwp1LQgbgI?~FYDeR;) zCM>unN||12Y(deOjIzsAN3^&?Vwlbdd5v;Lm21=1E_oUa=A6&aK2k7gk?I41 zR>_)^f+-!t4cw%YRQFl1J_{~qf^T6x1Du})FJyvmVe3+44$pqgSS8e_Rnk@Ng literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/SubCommandExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..3f82649b9cb1e3f7f663cf5f144ff530b8e67ae0 GIT binary patch literal 10449 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 L{_EU;g5Uf<;$q*< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionAllyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1cb4b95765ff37bd90e6bd98669929be5e86d352 GIT binary patch literal 5917 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 Nq%cE2SqtHT{{v|gAr$}s literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0fbbb37d95a6fbb008b3a238326c59be4182f766 GIT binary patch literal 2648 zcmb7G{Zku77=AVc4#Ks3wuOG+(N+jldR6;LY8BHW*bpj#wzO(pE=#iIau@F|V01?N zZ|Hx~&a@V1bo|X3|0f;ay*ncxDZ$Ci&h5Lq&-=X3`@XyR^Y34N18^BzDGcL14exj2 zau4zG&;q>S#d0eZ?i78~ z;?;ml$DED)XKgMk*=R9Cw5xWlBprrxEr1nk22Fe;tXe=MucvdaS2EXX8yhk(V{c{* zTo6uCc$vq!r+kx}Hg`&9A@HPA3Ip%(!)1oEtszJz?v*I;fhJ%feO?zH!^xdc!U<$h zH}BbMjaVP4hF`G)44D?OHbe~SRT0C)hZR~O;MT?huZEeSdeTr}NEO_gXNg&Uf05IzGo28ot!=1Yc<& z4{NY=6d{O~j&+n6u8mo%Zq2Z`GaeYBAA@pIG}c|us1t1?4%pZ#6Me(uvZyL=R6|*Z z#8Vv`ur&}n2d;*yj;}$QUx{G3?FnA28)d#J3?AWAs*Nq>LOPKL>1QdskXb(60nhj-A4&eBfLDX5UoK%+1nAc;mW~L zzX6#(hj5uZ~GPcrrf6Ti%(`}vdi;}d3DD( z3AkHbj0?i|NnD0w%{bG&kdppV+@TC@=?SWj@g`(8Wl;OpZ1Bjswo3`?3Ow%kHdj|T zy;S>1G)+WQMREHvq$yoZTR0MZ{@+F=l@8k#;iY7TZ&RaoQ`y|i{KAt5Gx^&LMstsi zOM`r!KMW^^PI{ZwgGd=Ux9bgSTrmG#MHwZo#*0PehuSdxxD}09KP9_4$Ne%r6GW{q z)On|oV5NVjQVr@DrN1S^^p6EdfF3fOqVY7%9-^Hrz|iD{pTQ=Rzap{P*56imiR5JR zCEA~dC(h8=k0gzKw10rU2XO+&FhZ8&(RsWDgJy(8zRnUlMUL~47dAqt+G*|Ch2PPU ze+}&wI;XbL#juT30@KOiI<67y-| zo}pO|X*|FL>GTf07*qHj7x4owg^^#5VroSG3~v(#Q*qMCH0jcg@969#`5ZzS7YHLs Y7{E~^|H8P2iyF*<)9TD6vL^8EKiHrKTmS$7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionClaimsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5e504cdff8703269f00ce9403ac4cef6e0a902d2 GIT binary patch literal 3961 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 R^{pjQM`8dj(&Z2y{vU((Q%C>+ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionKickCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..feceea83bbce02eb79b3c947e260113fee7e71bb GIT binary patch literal 3960 zcmbtX+j|se9e%&C$xJrGp@9I4q)woO90+5vttFvgNQeY-pxF=(rQ&4w%VwI*%sMlh zkXjYgR>gX#$5M|}LF=Ikl`ZIF>*Iwyk5~F9c&j(wd6UP-_uJWQNwSdmxEH^f@9=wn zr}z7Pvw!)|@7@9M7z%N8U`WHTjuW-mgQt}k(U80 z2zBJ^FoP)_vvFL&oD$FL_=JuZ)cPmmRQ!~VPpiR24VN^0Mxf?^<2vC%f##NhK&Cu5 zopmOp<;rl@^QWxI)P$W19nTG{qdk3Htz!bQ9xp8g)(<$Y9Li6ROMlcJ&vK@Iz)RWL zG23_4xHK6HC!IiGUjUXZDLNFSeU8Swm!HJ+cEazd+Q%qjsVrJI(1*E0jp*)z74wcU)B41LGV6yvT5 zipv5!R)%1fY(K-eH&y^Ex^K@(Utrt4P|^*ZaLziBRcrKmZLauMN`OGu3bB@R7|!Kn z38tj1QWnx98LBcZ3r|1~WOic2Q)PT=wPy06lMSpO^z%iASW2CS;*p^U%<$YSc`{nE zy*3%zsi{FbS7ZmziiXef1Znsj^^#uRPsu(&6MrBUKqhfsDU{<$*9aZ256S5 zWIBQA+fG^?l_mq<#rGKW(x?vSoh%utg8sfhM-l%$gtR9EcXwz`+B4F$&1tF5qUqYx zGHo_z4g3Hhpy#{`&#Ltv?1BVU#9KSH|OZ-Zp zB?@O&`mz`dQ73$F+6*UUIf(H&TGH^Qz#7`o@M{CV!3_g9aYLZ0In64V&2rKX%yB8* z1sJ8ZPsRL}f#2e)QdT**g_i}6J-7*#IlhWMA<+51f+h3grCz{tu2OmVY2#5{rEaAo z#CBz89XpV09~&k-Kk5f313Bzw=LE!Af!!70XPhwqyrlp`M+R(ZS&t2-HuP;b$l9v+ zvBNJVSXb-vDS}z>j)*`*B{kjyPgHQ?p6gk1v`eo$;S4-u=>Dh6$r{xatMD*~2Tv{;pRk3Tr5`zW$d^dl-%2~yzH zqN`?62V&Y+X=gdP=%n>vB)9j(ZW)Oms%**_0WrMbAe4{$kL76q0#>#hPq-t$~36pXap18euq}i#0Y8GWvcab zpBU}#XVvtc;ejLFy+=lvf`u2Oe`u_GpuhM02-gJGg&unZuiJ=;0^4c-ezzdwHGDbk z&B%q4B^MF4^0(3b;g%=#>{&%E^BxB(V)CP`0-vLHmh-(Chc{qgscS8?Gl4ax`kbl~ zN5v4bo}FF@xN%VkOU@k0v)-3#`!Me?Kj>2p^7Ml={y)B|HjWqjut*lLMFvtbkkBbefbxy^^$1s;!ilj zH;pzgqmLRo?SpaD&SQ&)qx0CVp+7N?eHxC<<53OA=g~;XsncBVqS*l|RAKPHO45i! literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionPromoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..367ac12a8809671b1e1e28705a1d6a21714416b8 GIT binary patch literal 3381 zcmbtW>vt1H6#q?|WYcsJ2+tPK2BEF0L3RN zK0y@U4}751bNmM9P(Y6yKgl`%5B>#ykUxOq@lH04Km#quFS9#y=l<@!zkBD-{PEAv z*8n_<@etPHaRpBV5ep(7M0XH9LG)Ik0Z+=IPeCGx{t)(Hpc*0U4dE#a%3+_J?yttv zc%}-^;y?(`frl`JWED~na&0(>w47vuFy!~397g1xtb)-Hmcb0dlHXj2B!_~qrEq@` zj-0z8R3IP3VY%ao#6PNFOu;dRK(k>Q?hb}XUCa?l%S>gBVWFGCJ!07-dL}u{ldfTz zj^5eU(NsUc;A^u|f?;;dFhzHMbV%6!d?-sR;h2@=*#T}Fa$a2Yxf#P@=$Qt*WF={h zj&d{Q=t-V)xnb%Zp8a0i8ns-}=82og@mw~aHcW<<(?CnV85D6;B=au0xwS54*=cj~F3%yc32fKw1Nte75xh~jpdLZ4R#tl&N$ z6E;Kbtx&>r4R=iM%}N=0Ju6rED{{clG)=4}8r`v+D8dw#2~Bm$BjLt{Od3P;Ou_Q5 zk#!~$;b{|^&$eXNx8EO%s{_6(8dhid)5}XjSnU&M>TwB>OYm)jV*`a5U3$HN(`# zh#9Sz?&T^zM=Qg|DVurL7Cbekxf!8ljC4jgu4Z#{M9W!@W6&uj)i0#6FXiwR&N3{z zlf>4%ktKd4$6qs4M7F5-2H&dq4kzVw1H&pUA~M|3hJ-LRPQYnXr07TElOAf3l!|jW zsp5O7RT&ZMRs105=W&7|e(%mxs_L0F2ZreV;wAD!#RkBzZHCHIkJ!u&mpM^%xMyhC zQ@;HmQC0J-!5u*jXU?!?dmUttBYMp27z5kKu%-L{t6LC5CF*8{@)}2ZLcjIW@XGHkWbYmOCaxtv@SlNADA9!*PY(=`B$2 zqQ=!_IxaVpg7Bkt_0#m7yFpRQnM+v3W)kNn`Aacxn-;KCg}18`oP;3{%_@|x-WKOTFvKFN6D;wlm@uMdWuGf$fbb^Ea)tU#>2Wp{fYRajT|KufG^ z_kq5iSUW?ojXs_v5O0sS$}LJ;OK*Qm7e%c&!u34ZHQl?Z#C}-^+Eoh%pIGDRTCZlSo0qjV{og*vQut(bL0*lpAiC=}O96dp0OcgVJQD#;xe%jr?N zmfo(Qw;`kE-bmwmnq}dq6<}S%+RI=K!Cz4^SQ)NN4En;p#GpUyPYedafyAH^RuY#G zZ17z|)rA6zPGcCp!sy3*M6iG?EX2dKve3iCBiKMQLdQmWHB)E8CT#XBvp-P@g=9C@ z{zf&n?wbD`W;cebuRy(uSrxc&1rJQn%2mu^xQe+Ii27=L*D#HHgP&e zj2-(ec4UaD(EPTkIhyIwv#qh GpzB|{Q`(yV literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionSetHomeCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionSetHomeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e0cf4a2a83d9d9406ad1ec44b6d6430d3cef6f18 GIT binary patch literal 3724 zcmb_f{dXKy8GdfEyR*BQ(sbJ<-P+1FK$%`g(2XysVNydbiQ_n-hLdf001qZGg;Q;K2oERm z2p&!1G`^UCiD|WwZ-a)1)lg8ovJEpRwqX{Q8qR2#OQI8Y9P>#yaFZzEF?G<>;3u&i zK^$fEdp1eL$CZ|Iaa7dG6YAKPG(4%{%L1`|mSY9`1-g5(zRbH$!M0|k;mF`|*PAnD z^D|~Xuw2JCjt!3t^_~=n47&v>us&-!a=bi0ExqIBw9S=N*3FytNz=2`yuKI-W-VV} zq6zqtmb^PZZ#o6v$eX3Wv>aokravcxWA3~hu5Ay|@RD6FT8_YNO`w(C0-8K0^W}hM z?&-<8UeTB?&&^qZQP*eGfpgL+NN?z&>>2Z{Y1pPyG;)DwImOWRXx=uhc|tT%dEFaz z-WXQnDc6z8Y(LZ>(AC@ua&3A=vbS*+dqM`xiu44wE{Bp%U7TIP}Umg8Fm zd0cv)6}VnSK%62mvrGn+ax3CQ8*_n~pBpnvVG6SDG<-$FQyRXi;cEiPoLlzta>Po_E^Wm#@DghInJI=+E#>Ub8< zY510oZ{v9lFX;FV4r}pVfH7rXg`{||3h$yd6oQO%^Q zTJC|hN45s#2VOaRgBS{cSVK3bZi)BR#CdIw9T_`xWK!VXCK-EE9Ganzj-Nc39X)({ zaw2<#bkoD@rPxU?mxX9?gJO#C@I}Corg-Xl&1P9*Ja9|n3U5hkshB$&1Qv^&LK++B zxI7mKwD$C>3(^TEn-2j&HMjhY!gcuK7V&=!pQi&BpLslz|6$tfvtRBIG%9wKkjRe>1RpDTe$4#Xx9=NqtvNY|vW+89- z0e0{&!A|~R09qi_LxbZk&K^OOE5P<$eQ!hTioS=Isn%3$ZYq+BF8U@(%7e28^@m(jKWy#<%jk^U;y4Mx+^DsH)q^{-)F|7ElZ?QG19T21(us7eiY+fA5gE`fB6jgV|Jba(g7y8W^i^!F z0j6VD@d*M%(llvXI`S^IPrZ##rf#hw6IxKk4u1A6pi6)ssoOYIaeEbaC}vurn0b_J zfP6&h`$pVKUNR(o2fA=OiSEYTq<=q&Kfu#R$ zgYy`~1?=Oi>t6hgl8WUS@@J!+C+|Xn^J`0dU!&vzc~)!pU=O1a#fR8Sj8J0V=MbYEPvamC@qgb1VhrOj;y6N_3}XLAmxd7yNB@Ow8jgL04h^G1 S!+m%B6D{r3_IaLbLH55Ec~+?a literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionTagCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..7250cd6f0ec5280ca414f3abb0e24b9c88653075 GIT binary patch literal 4527 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 F{|BARnNk1% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/captain/FactionUninviteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6a129f637d1766c0cf3131a61d0382dc671b5a3f GIT binary patch literal 3536 zcmb_fS#uoK75=U~qi&7bu{}1jg&k;P7;AMC6BcWP9a~sfL5tB?#xf*MtLJLeR;ycd z_XvxSkc0%t!WOasS=bT?NnW6e0VNfRw^Z?%Uyz6JFI=g7w|k^$8CyzKYN~E`pL5T5 z&wlQF_V2%Z0^rN|a}Hg2K*O+(5gnsC#&n$3@n8!&F|L-9hI2Y5ayXBNT9Lzr942v5 zEf2Ti5qzx$U&o~!z5zRjDL5@CLn_*|qE&RvW4So&>5a^g!&qsBH z>KW;Xa}=-YSZKv#xT0fG$Kwj;n;M?b@GXJne%E*7;{t__;Yd1xU-sN-Y56jKEC^?< z8E4vdVmI(3>&(DlvGcq@W*{g_fgQuHFGs6$Q!+efPkE%|hXcp<&fB4@zU#zHJmW?J zXEy;~ImHR)=4`(lS&ls)+pcd7rsq%iuD{^Mav9xp-r%r;sTnyBAseX zJ@4rl4#J8xRh^x6W2=6kRR=CfzbwPz!^4;D1>5p$zhaf*(Df^c?afib7Pw_|2zts6 zE3|!g1F%GWdr^i0H?D?~e(c7J)>%*SsP*>wL7rJx!*a?n-zx4&-ax>Px$B59x-Jpwz|M^!+t)-#K* zWtmzekWF6sOt_3zC>MfRY2dp!X5f2xN?_lrBw7SMQAkTZ6);-j)zC=2W%bvg{@%y>qc^^`qg;7@o~VD$P; zs=k};V{3gxpznVLELErKy+YvF7KJxfyx6`xsfE$sv6^nj8xVO z+|WpjqvNgyO01eNGi>~x3?pk?R@^9-;hB^mU{qv0t}ncj z1Dur;s@Jo%j*eX#JUMV~XlzuC_6=#kM4zdgRpUae;fc8jD6aRKpk=J%4g|=)OziW5cIeF0^nc zx!tTCrMqbFnmVWGPWfon_M)MRAB1v%C4Y@-W65WezRxz?p{{M5U~|F3`t4&=m!%UI zJGs5to>#*`ptn)=Zb*RoaG*+h9HdtycJ5`3S6`gcOgYJ5xK{+sRb#W^-HXkP{!q6G z3QmQAU3Tm!#z9`4yLiI}Z@(OG=;7MSFArH#fS#`Ik084AzoBVzTYg(GOW4_jzD#@O@7Uh^0d}R# z_DpXL`Mzv>wuapwV9z@V^M+++4Q+kRJ(;8Vy*2E66>aU!OK7LT`5RZ@+ZBHa`Ioz#VXI_-Xj=q#lkq#G}g_vT8UKwf>t4$@n~WV42arvoc!{HwkhGCaQpbsjg1pp0g6EM_@p-BK1r=YE!Y|34UsmxI1z%P0HHP4zZs^V_hFEvX7FpBC z74=yWH-xibT66J2c9v%y-8Ag@`Qed)o@s`_u$dDKyHdI##@tdySQmMwNRn{M%<|$i zw{$u8g#o9a+YA$1fY+>K%~FXQIXj-^WryoVe8jVVNp}i4i!Tg&>jUI@x#;F~gWW#s-(cJaP75O^tbr#|Pw{ykFLEOvPdk=w zca*EY{2Vb1Y>|punw`b6@L_yqiRLel3RzW#!R?~Cj$X7^D&=Vt+)f|v45u_^De){x zLFc%`8IErOU7#K)3d@em?XvaG(tqh<+Tq!`QC_aL7o9T&Usv!A1urm!(xz)=#fUDO zvBM8*L*E>cWz`VJQHI?cOU$4y_-#hcE|9YhpA#Bh#AyxR#J3pkUDG)0YQfMM%TC!m zFA~xCY;*-CI>?K~=e(vlrQq8dzJu>-_#R$T@Un*Q;|Cgkh#x8Vv4)@E6$L-l@H6~e z!>hPPk!kn^eo5hJ_!VAL@M{gP<2M@KkUQSQTMUf^ui>}&9VI}+@9_r(f7I|N{F$PQ zWs}A{FY38y$uz`br-r{sm3^`7P_>DpCD(SM84)d;w(jWjqLblREPJsaqJH6`IaAoi zAtzek^CBt?)6Ew=u&86wVpN{(P6gLB+`!u!{)(FndpBnFjH?&vNXevE7#d`{@!3(OB+)hIjBT!+u(twagOPSoJ64brOa0H(b;39$uo7#Kes0dM>V{ z-H<>GW1AD2A0<)E_Be+j@lgTOZpP;ohLhV=zWZoy-*BCS$gpR%B0g0S8&YF%TM+&1 zo;59xPo``!ZWI@(^&e+ARL9$S-EptRr42_HHZf+=B$jA)EN<9EE~%9+kyT?Wym_~X zp+z#~sIcXUVQ8zTMpw;=I!>&)k!mC{De}7Q2-@+ojv8&JrZCJT`ChE1s z7DcRuROc8_Ow#_ODKCf9+b^F7WjmHzeFnuP0AUSmo}Ue#tXHSYee~SunRAm2k9@R< z*5i;HT5@c9D3v^WWpX@qj%q*=)^6Lz?jE{tcZ;W8UbK^W!?eUO9r+JAZFJ-nx-DEW zKFiSFom^X>)d$Ye&BLy>#Ra-${k~{%ti=g#*@94rR_c~@wHH=Rsk-4zONZ!I+T3c5 z2G+h6h?itC7QKc`);0Toz*5db_L?LIC{sjKlxrG;yj&()W9YAIZZ%4e8U2fqAfs!Z z6?NaEgiSPE;*`O46zjde>8x+WCQ#KeJv)?&jAim%mfH?G>HFjeeZYXeF6fx!D2*SZ zSq4oc0lIqoZh`d%-$TPpW4JLr69@;=Gfm;9^i2eN12>^uuj)QTV;BJ%TS>DG`_WF= zdvS~;?H&?+Bps(2Vd4ZnPIl<&jgy|ehDkJ{8DJ0h{T=Gq;oD8GVOM{+c?qFqv^3!Q z60{0-^eEB2G)0;!2;V^K8`T~6tn8?u?L_c!;GuAP z1$$q?j<(h|DCE52VR`HIosgf{s_EZ2x*$Tkv%$y{{(qtS{mIgc_m0 z3LdEHK3PFD5@-unC%FnbBY}6(HFFCOh7VM5ux}YL>GQ$xAsQme61wH2hlUDz3A}>7 z{uPD8^|yG@QBE5nD{vL})7U{3xDPG#yB!Zu4Z3g;2hdC7F~q0}Js3hCQaFq$`H4z3 zzf3CyTCu1y&r@w)pvt_6LA;Dd=;?V1*GS_noWa`|rdQnv-p8Z(CzAL#F0h?=j2$C1 zS?O8GZ_-92FaSkXbEW3=Yml&5Rdx!esUwyHxs#Ix8)TCnNEtS0HA^sSX%DLUcgk^NFQd4!O?{dC#?st}Z{`lvoI{*&g zt0;D(Tf&J5dP=biy<&Jm!pR8wqIeQdl_88+6mj&6At9y%Wq2Bcr5M6+6eAdo;u)MO z#TZVDwKGvXi|54jY?Oxa2%Z-Q2BIhu6HQE#67(pxVj==A{wE_yiT|{~GbEgoFvSq= zFf7A6%1~DybGdF?6Q(iARf~HUY-dVM>yw)98MfuBC%b#w8%7yI-Sz}$SQ9fW-k+IH za%WgenzT|8vvtiJ)f_|2vx^}wZMY1H0^m6x6x%^>lMT+eu9W=nm{c2a6GGc{#+YF3|`1s>uSX>C6fJEzTRs;OBi zb;xrJE9GB3?E2dby9z@PQJRyYtFO-k=9{n0afe~cVkmBThBv1Um|~BtE}!wgvLrCH z7r1MVMsIG0XJN9!gcfzVIT`1|Wegpwh01t_=`Q#okS45%z#6oL-;X>TlIuAcKcrM4 zPEfK(L~(Dyu<{{K)2HIvj2}UiB@#>t(-O$n(IGqI=)Bhudbj3}jeWv(GHOuEuy(l{ z$#9*tiqMi_W50|UoM+g)C?b~lfMI)`KH_RA-lnLN%7U!Y5jf_k1j2FQ$;e<;p`!mBb~!|QYv8E@cCx{r*v@HSma#ye<}@vhi>PsaQBK*on+ zMq+CcFdYXha z%T?xRU)LbA}qFj;A$ONpfx} zGmbrNdwfFiY~QY|eggdhmt}m3S%&z7t4l6&S62WS+8!2fD3i=4IYa9zg;%E0>J{h7 z8%p3+Dh`B~rV14?%``NZQ&CwvX*)rc7;$;RGUpiBX@)&{;Aaglb4e9|p21xzbf!(| zU+Os&6s9IBB9;E-Zf|c`xx`Q=>R+6@A|Dtw<`bg_;!qwV7QG{BD(@zDTy>DA4A1)`Eb!C|oK^coO0DYtv-b z20~du7sJ5^-}*kt!cR}wKUez>=a691=!rU_a<0l=ob`?6;~7w-9V@@bOR;V ze2G0YRv<*%R3*RVhC8>Fd}qkBwJ_+D$pNVyAKeceB4)wP@3q z*-{ny8C%D0Vq3-bdF=2-=)Yno4f9aw_&llwOT`c@CF%a4&bkCNkHNs>@Nkftk3-Z}9Hy?K4PT=j-=PEF;~0KKC;md0 z&-!4%XO8u|g#IY8O&k-_e)35P{v^BuWLG18Ak;(Tzg}D++!or4Q}@zJ_+ip&la3Zh nqy=Pc_#P@H9Jz;T2}l1%t%PF|I`3fveN=5D6{gj$!4g literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e1d85d9ffd7bb6d77ea2615c74a6744ad872d67f GIT binary patch literal 3553 zcmb7HSyL2O6#gy@)5FjP#RUepb^%e;PK*)-L~(#XoB?IPJu%J91zMVJ(tSt8Y-Tei z#_WsPjfv(ZFH+^GNonQHs=VYEd>C&pqEc_dCnI{Po}Ow*hR% zKb$G;LEfF;v&YJf3vylx6mF-R9zi;|}SA$$ld#Ovm>0_Gnwf+ITSOJ7C!6<9`%(C6!wUf9x!c&RWks~s2LP~k|)!Gg4|jYbKC*FFFiD53O(md&jBa6 zO+FhA$Br4t4c#*A0X-pH(;mnkJm_WB3@c}bAesz!fDS%C4_G#QW0boLm6M^kEle@0 z@3EwgqMkF7{VPWSL&FSbogh(+j_@2z&X~|tK@o8g=Q3psjk5(y3)Aw(^Wa+(TEKN= z&bL1viYMH3ww&~CGM7h82qQTZH%7AMLT#cTt>CzV6Aa;mlXjE5&6JKJ`3hm9%#(^5 ztYw({V9to;RJLkVoJ5_9QJi9^n3Vh}bTcfjPWF1n0I%2de$BVk8vP73DR^1MD|l7G zYbsvHX$5bncoT1_cpL91IHTfSoK^6iiuZ9&#RoV~=TPw>KBB{@_!ytiiBx=wCKaFI z979!gvS-i`nvbuUo@P5jGi_~@&aCAUxkAO~pw`?pZL?vy)E=Xn804DeoZz0&T*DsH zMjX#GsrktA3+d}iDZau5hVlpL*_AdeDt5`<*9yLouD(_A9llrb1Adg^B6XKm%?Axn z>*L(cagx%6qZ#8NYSk$fKjFNJOE}L^SS?-uEWdxjX@=d89w`$AJDaX&sDE6vM7l56 z*$mreX*|7mX74ypt5Da@(y?zmwL@rf8J1~yoF>WKe#iAkL$AlXY-^N(9b#CM2mZJz z(x-F@C`|6rbh8}l_+mjd;#r0qgEZ|QEQp4+)0Y^uNez>CS~8T#xfti3Y#xS%`H<<_ zsLK=Qq}yeXhQ7sJPw(afrYE@D?k~{XqM_Acd&01jobc;w*3K|<9tK6@W*%YX21(qo zDPE#w+l+t{WjfWA@U}eqP!BPrTv8lD7t zxCli_<8M~H@d$R#^m3XggS-LAH&tPclsg`ssE5OFYHE6;F*H9OtCOh6K@c6PaH4cI z$)S;^_NX9!C(VFym3*HBjgb**eTEH_6WrBzj3-5&X_C8f$Z*R3MDB$(t%~mN57^mK zD-lkNE;~0$1Ceqe9N&~CTc7I~siffvtf1%i8hVL?Uc5}c3`nk{uLCHe6`*2W?RBtq zfm+I&05rwEJJ|geA>T|{$7M~`dLpai+p=*z()EaB5b> zCf^JD8--9vcenOW1UuK?F1m!$+A`$^LN`%dfU7qU&Y)z&O{fK^4@3fYFsF75b9`ka zK#C_AGAPYp?il7>&T7lXwd(_$NL61HDY_$3=TD$UifDg*FcKWYf-6$B@V<)H7F|IJ zY3hT&Vy@g%egz>~C4-_!FoTLn;15I&UPt8^7H6;|gQXI1Sq96?G!k;piVRlD?^Pr+ zSe-$Y NR3+FJ+Ejqn{{cU_AdCP2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionDisbandCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2e1e694a1cdf55f08af36364c34679d1dd0ed869 GIT binary patch literal 1289 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 bPG7bf5MbQ*dIM5ERhldTqI4FgU;6t$f$aPl literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/leader/FactionLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c6d80d323641371296debb66c3ae2f87f3c768d6 GIT binary patch literal 3249 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionChatCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionChatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2dfa69c01aa8223e0e57264d7c0ed40f8df100e3 GIT binary patch literal 4240 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 MVKBU(_B3Jazd8h@U;qFB literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2f2c48967a2938c62c139258630c8a84d75b931c GIT binary patch literal 842 zcmb_b+iuf95IvhXagw?;giF#=N=pq%0AV5V20}=|QKKd)B31j)2eh%b$tKP&vYqsk zcm^bd5b6i;QHZgFKwJbbNS@s}>zO&TKI6|{KAr=3hs+j$R5t8QyJUGIt+ZQN z*$)`3j#46Q1w4vG#8Cc0e=wW~kG@^!zww#4%dkmGIZLISKPa{GlWzG159Ucx_odr^#<2CzP#yYG@gSW98jXD4rQ{cM|6e)E+cbj(nn_l!C0ZpO;T2f4 zuM(OdOCHep0CxVV^bVP~$&-B#!#H>iV?Tv?g1HpFL5AvFMin{KuuIbCsKN!RkWcG8 u#~S$=vND+kG>t6x*)z<6) literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionHomeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..786cce197175b83767a94541f0e5fb02d3917574 GIT binary patch literal 4270 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionListCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..61ba63bbe57ea5463ab2d654b4ba695914fbcadb GIT binary patch literal 1200 zcmb_cOK;Oa5dJm}acT?+ZGiG@X+ufeCZ-Yxqyh&bDk5AC1m(hMV{els&KmjAa_1Kz z5kMUH0sJV$tP??{BIS~mJhP9PZ)fM5@vq-Megb#|cLgTyYO$fkriC)@S=hq1h1;l` zxNl;Ip?t!_`UgG~3~Szde!|_5tD)OfsThj*fWguRiBN%v8MeGA9=d~UJeH~JN0SLx zf!mqsUT#AkrF0~d`a_0SULyQR1))3^t`g~K6p!7Jf6V<~u>#A+Mc6hfSU2I=*u|cW7TQGb(%7x6)`U1#|YM zC^)St4Cfn)pL6R~k|nYRQMg9(T8>adjb?h(G~;wm)q?do>Ql1O9u?;c3SV)7l<^&< oe}GmF(jv!p4r>!maM*)e@o5FOx#7lV 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionMapCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..818db45bd0eb4a589322400bec5a9ac44d895ed1 GIT binary patch literal 2715 zcmb_eTT>KA6#kkWc3>D4Rsm6?8#TCGC&6o2V+<$(vs~f|3g*^3+bjdKGn=`97)|9d zRe6Z7@ih-Vn<^2Lisf6X@|#R5r+1JnGD?!lOV3PqpVQy@&N*Mt?|=UM6u>Ebt>F*` zRb(4*z7YrUo*XWyc)tlrT-5LZh8m$^Sj8m`mocK@LyW2z)36Iy8t{>P<{B_ApA#A; zF(nN@mWEd~=~)$XDsD0)&s&ZaTwv(TRJ4N3p3+dVziH;xVmEmY5OPDKmSh5_3V>@`2kQr2QOPFCm2+w75u2(V& z;nI>77#l|!8;xnXmsWaIxwPni>xqWT5LVk?6bC<0kylq6= zEMFKin+6iHU-iy#bY}!aG51PD+TIu})#&-E@E8u%x)M%c1*^uCE!XHkrN{%$a5@fY zO;Q(#Yg>4}A-BsEU!o_O?{dUSe!*R#@QHc`Hb-;$fSXJ7Sxqffr;1OgA{n&28+xV~ zv1AprZOd4{Bvi*6ILy%eGPw+iGOy_P6n#2A!%2qyH7VK>m5$Hx1)ZsbqoBh?7eil6 z&AvJjDvCM;=2et*EWl!De;LnEXxUT-67C|w?KGn_rUOcRy3^LN1e>VnG}De7r03nx zDfa6qOJI%;7Zl2uAafsqicrTgR#e>5v5MOa$2-kon_J~{#jy2Y;h}w?Z7WW0!ar31~WDXZM3W;?RO z7V3G|n+RLR>4S^f&VmJ{)Ow>@D zoD93ROY+kgc---AE`^mYkCz)M8=KZ9se|Lf_j!rTTI0+p5Y6(deNvSkijBnQR1B`T zUXUn#BS*4UHEs+mq->)4KE6f$w@6Diu9{x0BiT6#DXuNzZRk1}jf9q=#k2+YB2^i( zU2};F>(2j&Ecc39qN*)gCQdK1%IbR$;@@l;7$5T zIYj?2KpmKrcN&k-*A3Lu46whu=P_8f@+<0Q6RAZ05tMG_5$YdSEz&fmpwQSt`}flO zKD48iyaH{JJ&xiSeUT>|$6Mr`3JoWsQ&^sCRa(2(^9;#}z9&!_*3mGi^gdO7MAJ`b z9IStUY)b1@2G-HE2K^bd*}?kXaH8)Q?3#Uy-KjlmXr^TvQ!O;CA+?UZPq42J4?C1K zwBCoRJb;oolWa}?fZcr^^~yTh?xX!7y|Q(*U++onubOn!p+jj+uHk@;E`cO)yXeKYFz`LzuCj0y4P=?1)h_Zuk#6#F zk9PME4|1*-eZ*EhzC%CRCg`MZ$o?H-$Dn&MvK6#@04M36@KhC1@(&zVaazTh=Qyk4 TY|};d94#zGF3-`1I=uTA;He9P literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionPointsCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionPointsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..54ee54f382a0d5906f168d73124021cb73df08ad GIT binary patch literal 6011 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionStuckCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..52ebc94547fb94320ab51ab51eca54c4986ca1f3 GIT binary patch literal 2408 zcmb7GZBr9h6n-uQHYAHcKmm((>q|_au(iHah*dFyU;|j9DA-Cbn@d=;+0E>3py@yH z2Xy+`&S;@C?X+L}EBZq^ou0c{(*%*UlbO4-=iK|8=bZbTv-#uipMM2#73CO)F{xlG z3cUxX@QGY5EBG{qE4V6`YjJerdK{nOhJxuRW@5N z`6%wo=YoPo1rHdyZ<@C0-(pCna-J|8yI`5yLbrv#=eQ+($JpkEZ#uT8FJ$L4={1H( z)+q>vzMN@`lU|*dfssMcebaZ3vRwOe)=`;ob*DdLAIGPykEZ=0({6(`^A8Vro4~ zcyYp$BS(%WhG9Z#((+pe?Ynk-^6v>y&piw}>oeSM866G$b_F>MPlPTVL1@?XtKaEW z-?V&Fcr=kLhsx9AyWI9HE=Ly)=)(=2Nxy4i(3;8+YOi&|QR(C?TN0i}x4>}nC}f)S zQ7Z5g*&z%=tzlu3V6sBq^AIy7hRnyzD)X`oQ7mN#|LwuPIuxEJVEI|BDY(*cSx zb~r|}pJwUu%IeZ=j^S+c^#^2{Hxf{r7HcRsXnT)FKaI*pBScMaHt2qaGc7`B8Jd|i zHCr#QRIFOoajb%~N6I{Q{~A7`kNPlu?|}}`JjN)kr|In}y2t{Ij8FUoHXiu}9qXNm z&irdc#v`xM^(r{=0j&u{Xzi!{3Hl8Z+7QOba;knFXKceE7+f+7-_P`5%~)#1><8wo#dP#QwKhVLC+W+yG#Fyw(gAn1N@!5 AmH+?% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/member/FactionUnclaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..8920364309edad1d00571d034f202cbb68e80f4d GIT binary patch literal 4467 zcmb_f`+F2;6@Dk#WM(%*flUJ}jqL&@_pnOsg@lG~b1BhHf(cMURh(>w&5+rdbY?aX zs#dM{TU)$R>$Ryq^$+j|{|W`)Z+14>O+vCi_&j+gJKuM{bKdiw z%XjAWYcE{|@J{?Qf&|_#8J0er z%TDOdL2bh1N;GAsHS@6M7~(xx40%(AD`9vIFJzDl=rlxY$ubL$W2chULr7;2o#U$)}-!qKa@J5 z&1wl#voeV>&oQiw@A*xRp0#KB)+?~kt4#&DoM)KSV4Av570oFosSvbDXec!&7!u0@ zk?&B_Bce4tSmZ{SP58!-+LkU@aDBiMwwGF2*(pX&b23C-zk+){q1v48NZ4AcO1C`2 zn@b!p#U2f=oAG}IQIXJHDRyseMi0~khlRGlwIM&&682WAO)%~jbE9y&L|rjF3-L;3 z?VLrXr9lz1vMeR6AX5*l7|erBoBy3okrcA3`p;AOsP zQj+jx0hRF`72n18R6K)cWjv?i`#2}#2P%Gu=Vd&t;zxLam{t53FA}(lpWvr5&a1e9 zpQ-pco>y@ZdHSQ`5-v;F*_0lq2k{`T@k!fi_Tp38tRB~_xwy}fyGzErikEOjLbYa^ zDt>{NnU%gTekmm#N1IC-t|#2Qs^XV;Ma8f1YZbr2Z)N;W#jAKt#qaS43HLRno6LU4 zv7PwIDcy<}OEj?65uY)2&DG=VY>b6R81dv}mOan)9L=+xT`FG3A0=#FO6C1I!(=ZI z5Z;hb)pWOtKjF_R{(?8f>uwc)6~F4^P5PAP7VPSiaREn2{*6t5TfWEivq@*+ff=|> z#ozI!ihtk*36-XMP|&M4MG0N2H}D`RZn5dPiLu;7(D)?msqpafLayBK3S}$d=EcA- z_D~XAlC;IPDdDaPQ7)-Q3GotjEA~g0j%FH66$WaKUe&?(8otNKiAnH)y$@W~Fr&c2`U58j-(|D)y9()D<*_A0Zm@1%S)*iy#xLgA{q?8M;5C91>RpJL&Mq zv4Ldo!NHMXF_|o_ZtAQPcju7qy5x}8bjxxXG3|uuX7PGD^8fH}g&H6jnPx_9(e?LL z9?OC%HnN;QcO--Y>grydtOcf5I?g#D)t~I^AC++L8acYE9>P!uhYu%HgMG(FM^gO- zB71|mDM}v~t6p?^L4o1+XJy|s`^~VJ`DK|rGI4@KX}93BVUh90K1=zq%Zb+1Ju$5A zC}ppBwj@+zx`>qOU$S~Jn%y^`r<92mTdof)t0q>H$GQu+={bLMeQ`674PCXd+Iei0a2D&^qtVN#FKl*P z4Lys-j?nJt&3QDO#l|bxG#;zHgw0*@IrPxp7G7aW!Fo)YM~vpfvGA){AFGXp=dra4 zPnD~Tg)iflE;$y8$wbxY@4jupU`(FJt-M{8Sm+9F8^45jbXy+VedKxU;Lqsoe6-JF zrv&lV#7BdYM{~5r|3$n?wDlZnqHSWkosT>^^5_(-hagzD$TScq>)TO}+sW=u#PGlu<$o`%Y=`f7CZtjyDQ@O%&W6;Av6s3R;QS&TP-C2>FFEY^Cdxe7JX z4)haEHR`1X+SyNE+Hj4Q-bFtK@GrcZnrn%{32eNDQDPXPjbY#0>cIX8?HA-n7Uad+ z0ZN@gL*Inl+MaF|Nj>s4<$Wl-26Fsp^81Ox`8(E-LJO{{s$!AL;-A literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClaimforCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..109ddf0f492f8c81fc54610549ad787ab5600630 GIT binary patch literal 3803 zcma)9`BM~E5dI!4JIgWz#d9_4sBr}Z#yhwe5=D(9fW-9(5|3f#EsV_0;LePSxf9K4 z4s*wxmHY#mDnVk!GCw4#%0H4+#XrGHrQhtb!a8C3>ko6wivKzXr!JAmKR)$K#lX z6EU0=zo%l*#P6UG(qk~<;K)cAs=+W!v7C-0fe{H-94nBGqYk#fa$*>b;|y{!xDq@G zK0|b;X`5aLL$aaU<+@`VmYLzI&AoF@ZbTi{Gn($1j_s=ZJNLCW9$|=dItFK`>o#rP z>t_df?vOTU(VO~iN7t+)TFw;Dg_jX;*mN0s%YYZH=uS4P*@mmSo|eg|`|{R1EzQhk zoLpyqx1IbRwfrH|W>{MWS-8z0@$+2wJ@T@xq1(v~se}H=i0P>Xb7}!N&259{+6TH% zYiBjp((EBM?d42+D2P1j2HOm4%0m!OT5gCUUl0NoxUY@z9K*8dP~7%RZ%pm8#2$HF z>k$U`3M4RWEE8*y#exPw)KMBOW3OR)eFegryD4bZ9ckNfMh!MOZBFrVbfz=`RJ+{b zK?yKynoYGR=c?%`71E!li`IA^LB{iVLB@+>c?mBw zES*-uGm3^xCiTOvHpEkkno*{Jl%2MgS zGCsr=86V+ehIL83-|>~K?|RCxc9tu}QdK-hF&srSnpVn!j8E_>gBlXYY?VRDlkpio zm+^&IlK7Hgdk97t7Xi)pD@15tmGKq6mhla~C0~+U_#U|J`nv9NH{)Al`Seie!gYnZ zjX`nel%zrBB;z|=VW>>Rg&9Lu#&JO~Ix8!9s&%Xq}^S@w7M1z1o(*R9qI%x#~eaWV#;D?a#kpkZHhl*)(l!ofCelp|MQ0{T~#uHUIvw>d|cSmtx*g z7O>c83nf!fCA@7R%!Zx6nTnLP`+hL&31h5GjHND-FO?1A@)OlYM=2c)EupBT87(wF zQjd8~{wBe&kQgZyBngp-Vo#%UMpCmJhN5JCtQYi)gO{Oa#yw}okZ7M3IqaAbd>y&h zLwCijpY3x@+oM)b9!{G>;`S$Qic_-M`DwC5SD0w%OTn{I?l$^BhQcyha{6c91caHG zW*EUdVmLl$izVH@eR>d-F>!q@xlcAym#Fne4LbORQf1gOXL|*e;0h{H7J6x1Vl{m_ ztfTJ>paRrPu%6ZideTuvZ-7-z8z#V-BEO)bzp}nEeFKrEpHOuJ(Wb}^NY?|!Mp_q> zLVjI}dircgU>R0oIhumE0Tec%nVtv~Eodb})TgmAZ;<_s2;#JNcf%dTdYf-o{eZfb z`s$mAPoky**Ka}|M{RRt^CTXsKq``m{EE7(Sl@CB^ZF++zrKDP3uv3x`h~QNW6@0A z#i^=9)gJ2CKZE}{*W(2mP^3_qd+*YG$du?xSW6aQdO zkcCX1-(nW-62@j?pE$=B!m6MQ{)KIXSV?w&Bh)s^$pEfk2U4`>;XGN`i6~h)MRqzM wk*zMW^aOoxUZb5|*o|tk2+Dor9+pVha}Vtj_TIx%3HyTeNwT<~Br4GL9{`Gf^#A|> literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionClearclaimsCommand$ClaimClearAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..1d7a2686fc26bae96a0a5ae6d72554bec44a13bf GIT binary patch literal 4065 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionCreateSystemCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..204b4c597a576ae47ac9daa33f563443050a4f47 GIT binary patch literal 3605 zcmbVPTXz%J75hnRE93_P4Kd z{Ez?r!*@g$x~AcpTK zcsha2_^yhx^7ngk;VNe3uPMa}DumRTQ&E%}B^6cz&tN_Q8)dmTZE#Uh@vI6@g|8q; zU@t&!jtI`V-n>yV=eQYIuHzdc+2Mii(+u&fTM!IeMlDB-hviw}o#L}L?IcHC zliR1cXUX?yGai&IpJ8eP@VXV#Etk1d@C`rUb92UU&3e`oJP`RsKM>_?O=5t!SM0E8 zISl(YK$p}R6meddVL(hDNsqc-(U=YA=dHkqOd1hzUN{Be4Lmja3}4`e&7Go=4?N2$ zR=scWtH%s`H-?~Caj!_;Z(9efN}n$ZkKx`%DB%QFuxL!$@{Cx=9bT>mcMTne<^^tt zbjWfHoALoS=f`-Z8h9!}s!oPP-VHrd3|lfmdu|=gK8dd3FdksIXSF2;&8#NCuO@&Y zX8Ial#Bl{b(eM%mHN1>LhMf&TUEv0qPMOm_FN%KMnA01<^rOKaTrdi@1m6!1RE)8$v*BaizFhhDZn8_W-4fI)|+pbd-o*tCAQ^orY-lYT$ zO`JNT;XV1hC1vIuN{Use66sTLQNwTXu7clbcpo2V_z)i{_*lawd_rNpX)0w?0}&~1 zQ=|)vx;St7f!{?r&R6(3s`1Be-<|aa3KlEEs3pp%sz#BKq54$A@9_tQ)*+`b>3RVt zquIN_t*b}a6oe_47Z{G+1(?)~a1?x|;g9%4!=LauLr+S~xM3}iwVEmDHP7_O-D;Ez zdWuXpr36K5@+%Vf%43G1|4t$E;cPTYXy#BYa9_|2=v@b9!3x6Xj4-h5z!JVODZH}f z`!sE-ohK&GP7Y0t~HEEo>1XMPQ%Xk^ex-IdO*_50?r8o0HA&#*ncR*(QzFy-eP znQkg^zcG*NhUQ5cvf|m0+kUR-xSq&Ti7?!M`)Jk6^T{2z5c!b^v5Ramtj4%w~Xw6vcMbd2n*oDmBppN%`*?b9GGRfBKNGzi* zhReP2!~O9q(2g{B#+R_Eoz7F4FR*#$8nz_wS;E%#<|QPP+vsTt+v{pq&|cU0v_WIX zEj2Ra)iOF_xQNcqcyi|wI^UC2?yX~X#;@bPi!1l8W7iVC))`;M?il{wU}z5+l8m<| z^;OgeysHX+UrqT7?44oPurITWuQ%b$XBZ)g{VOF>QsO{eB1IDEl@i@jqNgqqzkGw) z5;E7(yNrV|)Z^9{k;_Pa#wvc4s3yp?zCslO?4q>pMjIt>2XspAKHAw&CkK#08e{Zd z$vAqEM<1Ssf#<2FUZ6^PlPc*QLiv~q;SweNb4vMDO8OEWqc9!EKk+#Jg+crqL#&Oi zYVCM}9mEKG7&$h9lWY>B%%ofIYlJRK=~%5uZj=(cfN#(qlZ8Ww$Enbo*-M0Zg1GNu uWn>9EjxJWh5QfQvCkUehiT|KO!N`AcL?Jtey0#te>LMQ*PSSA<-~2z?UlarY literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..67d1434d0a3fc765483f79ad5ba52789e05dc463 GIT binary patch literal 3080 zcmbtW`%@EF6#gzGEQFD2AkB^FRW$YFm1f+=P|QZo0csvF~?n zJN19)O#c9xF={(?`derEH#wc2o2(gxNa*yJyZ5o@JLi1oaqr*%{Pq~YN&FPRVN5ER zYQ-CE=)-gy&f&bA&B)<`f^aKl1Bf8nj#j)Gz(vf-;Zi%^LaYsOBmzicK7h+uXhRB% za&Jk_mgU~t3f>8z3s+ikRerBYn0H(8o?N^yMOPGjpnx;9OzEcXPBZim#vGBc%&ej3 zgk}o&re&{btC<|nxVmLJ+Qo2ma%h>s7q+s3VNXmqMWR$l3wx2L4cZCDtPD4nxvk5! zx9M|Nb%)_{1Mr%bj8!ObGwW!M%X2v`TGbx4?2MQd1JO7-deJE5b(7&}18`|M zgCcH;Ovxof&kV*aJFlfnYiqizc^WkjI3>)iuqUs@uJapQGq{=8Qm(C=`HJ%`PUV>4 z<;D<16}R)`{Qf#%74!MJuo(_+h7zW$yX)G#A(kg`e?v8XQdqR-R6J&0qH zV-+DBVc5HsZ-(}q412Z`b`@ESDG(}h$g5bDgO2MAJ)1)L40#Np{>+lY^I{^TzrxmQJFi=oo!ctIF@gZy#4qOE#6*q8G!7UZ*$dh9#ZsQ~JPQ}OgM8T&jKEvlK zzL1uDDQ92dYliNvZd@qo1|^jA@*9Sx{;Y~`@tunAafe|f)Gt=K6G{tVRxQkx3}ZdS z9Y@cbB1@AH4;3oWI-=qS+)?o(EQaLHwOY%9-If!>#D7IhmC|0xFr3|`@b;wKz2Z74 zNJY&JojZbxY^06}H*~jjTa$vWE*x!M*ae-KwWw!wBDTAtIx#WnXX{Vj5*wngLsiPXgcC-bN*Bw{b7pof#YF@Z=CiPk~BM5(DaHv5?cpen7wU4m8 zQjc?!>?NPiHUzAt>a(JRcWP&+o+C*8lpCIJX*a%YEYY}FH|YcCd=nT;$kys=x>>*0_Y>Re)ZCN?*_vXG2L2sa*y zUy!(p^VHSzjh-|+np(N>>eRKaHIT(yABT1l@yIDrXfayo!EW5hw;QNQxMSFkDs0E}8;6NFjy}sYkb>#uNgFR*Rjy}Rc2ATw4q@j#MWxOOE zY=(6361fE&A_x1>PA+s2TitXrKyHnYW2a~~PVStiRRp6*V2obB$8i-Wh|SmOQ87*r zfYbOHXDXyjSKY0Vau>%)l1U0kdW_ij(=DvwHPSyouaM(}<0JGWVV$J2Q}kyid{5A= XVEhUC6r6s79tCF(5Xf0NB$oaKIGT~j literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceJoinCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..81b70731e0457cd550d67b42d47e18a5b1f7d7e9 GIT binary patch literal 3515 zcmbVO+jA3D9R5z5bdz)|kOFNHOSrW3LRmmSXaJ>YBgH1EO$!#(x=l{frQ6-Gy8()K z#T$y(Cw=h2M;~P93#j_e82B}zsos){qySs00;41 z2s>~>!t(*V5X5$z45AM)@zgJd0SWN{UJT(B2J3MeFNH9Kgcy?bNMSgLmoXxq(&A}U z!dL)j>Jh+M39ke(j&nhr$EzW1!fPRf@w$YG5Vqir095fk89+vSXN8eV$VtdE)E(0d z%{jr)-Z5nJjA>+bEyopuJC{vsTA9k^)QqE%l4>-+@EVrWPhc2j>R7F>f zypnb-&B&LwUT2rg3_B`AkWi|Xr>!@x0#>50&T@-k%VH>QIGQu74C}&1tQ!iYCr<^2 zXobC&Wpri>+=KBJ3k^Io!@g>9{#)FTcGS#tLM@a6OSwu3C}D~rls1bLowz1)V5_%a zdBFAxJ!R~~E{65XwPgtAM1U_)fMsadFX4iWY3MR$#9+W=XkHYwB{DIzwr9p{HP3q^ zN-k1HiX3yrqlzoYxCl#vEyF=k!X+7(aYe=~u1a`Q##?w>!aFkF72e*%`!YU&&Tw?? zg7DO|m6c*M>}t=9o5e^*H6o^=&ql=FA}*oG!ouw`KEySK-YWeR9Zk0vN+Q8U=}GuV z#>ec4X(-f7Da|cm5i&a=IRwFuBkSs+T63s(o33C zys8MT9gW+{Ft=tj+ol#s<(L|t7#>R`H%6?;}Zc=*)I+kkKx+*#swdfW8I#*6HL>ASGC)v^l$51a?S%TZ5ZWuPLhD^Qw z@G3kP9SKv^sdaAI$_USEw!^Jc?gWFJ=gy!(J>1A}!td?qtk7{D2StKzAS^F-3DqFJ zB+Jo?fD1)dt`~PH;T>9gQ;%6leT#Uwu`FlO*(GPmlC~7BwBxd$mFt})YaR65;_e3@_mYH_X*nKDlgMMT8&Gm%VORSmEE{q&UUO~>EfZprc{Ui4TDolt{Wcf8ybu;^jFJz4LI6K z^a)9gnBugnOAI9X21Xc;KPel5Lo|L|BafaGdXa8bUmKQ-RiY;@eL*!#-9nr=3^$gL zUA4bNAAhM?nHv9ZgI*T8WTKtaOlvy?!#cH4pq9qavuchnPe|`9B<%x^>0a?@my?#M zW;3eo(0zP6-PXll4d{-ET{O1QuMGS&18nQ+z5~|f`wcbYwc*F!@9-BJ-!3?u%68R7XP0m z^9I-4;{P4t9|T@w8L!3v5Mcq-(?g&e8SZ1#c+VU*&!OoKn&;8-J=$7)_pxRC4xSEg zoyRlod-M=)rC}c1<`EGB)Itc5L?ex@BtQi9r0QnUwTZNBBMG`_>(A2W57LJFu@{3- zFoJzZ)9iVg&EXL8I6^nTUb@pn@e7WZggfC%QWowetyM@cl8ILDrwIA+GY$|+E%~`l sNQdAf57Rh|=g4-1-fV{d5t<|%eT1zNdLN-xLbUO3#0lpZ*=un8UknE^W&i*H literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceKickCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceKickCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..262267af21b310d93bd01c0d955060aff3e95f64 GIT binary patch literal 3287 zcmbtX>r)d~6#rcaY!cR@hyqqIN=2S-i`6P1h&(DaB$NQH*p_aRo3OIkjk_B(_WiQ& zcWc|Pold78>Ia<>wVgWs)|viIPN(PYh76BL=yWo<*}LbS-#Nc?&OP_$?|*)~58z3B zA4CfVC7kwSD1d`F6TmP=#M7u4#w0xL$Jrpp@k|Z;I2S}16Jm(eAd1NVp2buUF-(i6 znILBITmaAGyqM03=>;KuLBfkcG~gva=Ed*Jey9TOf*)})Pl!dyAUINDNK06dpfObU zYlh|wFtoOXZJscVq^_m7VsPiOX)P)XiIkdfG}Ew^v%_P3?XwKNVKd1YYQvhrBe_hR zThnS>r#E$BGok9Us-=l};ib=6&}@ci8StW&gqg{xM$%SnM@^-aG0*y#X(jkMEwMQ4 ziTlX$te#7221833XyG@5#INu~&LKBXw1rJ8t;BPSi<+Yp>?sA{7&nsK>bnrWs4l6B zt{Q12=2)7McBxm}u9)Fqc?b%WYNd(#&Jtj*`)ZzB40~2Xal_G^yfUc^8F{@e>pm5t zz|dEQYcY&YKFbR*1!aL&5KnNCHHQAJqU9V-w^wrEX$!cRqb3$7)U2CoDq{&3B`h)o zV`h%>HKvKG*juo_K7~g_gk?O2Lk!#3N1Gv#5-DG#l*`c3BOxQhfGHy@hD#v#8&{=q zP2d=sTN5+3n&!PBB^4?nh5Eg44oI+NILOIZ!et3pWaM#G#w&PL!fP^K#~Tvfl<^i! zq9o&Oyd&dXF(GH(!!-%-%lH5v%J@h)^D#b=@hLuIXjsqVOit6Oo&?R$87f+nGQPl< zRI{O0zM$HnIOm4vUn-~T`HsT$k}3t}{$*zE_KN zu(j>P(EDHUV!3!>%P^eWqVmR~+`8csB}kiE)iu@Tw8^?kxUi%-xvPp$bTn=&libQ^ zwoSc^N;f(=KRG%zF&>MJM?xmw=HLE9yRnlrDu-eaCy7KrfyQT z1{_N@Y+V&ChG9xg$I7|40Yv~1e&6Qoi=iu} zPG?|vbZBIBis95&Q&0+r+>pm3vqRzWk@=};c+_JUQ8UD_o)~V}X|&$r8FPuR1U|Nf z8^Oa*>5T^F=Gv(>RJMuRQni}R(jI2$E}7l+&J_*};^cQs@8&_RBW{^$GNIZI-CjyW z+-r1M%Usgvu(1_`xI1dvR%S&96p^5r%UUNKZ%Z)jTf=(I0qS0MYAr67N1X-2q|+M* z=(gHIS6ZL~OdQ-aw$dztDtZI#@94Y(*5UgD73VAKDr2|d>$rug+o9HXb>ME^9+Mu~QWh)3}R=Fmg2 zK8hqsb9f3rp%=fP55J<{4c&kjlw#;^K*8e_G71!F_fU?iX#G+8OCtQZMs|+FM^-X~ jb%JCkX(grR0U9LqK0vdCz6WTO&|g1DD5pqTfq{Pk@AuLX literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForceLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..be420d06ea01cee1d814cd900cd6c51d29333357 GIT binary patch literal 3519 zcmbtX+fx%)82=pz*#JvLR3uh0YK_RnZLL}jC}Mz08xkZy>!qbjauQaSUAntbv3Kpo z-mJabd+S5{EHg%Fr%oR_b*7K~Tl!FEwA1foV+J7-oX%v06KPo&g@qnU=S91QoiZyjOqgv}&p zSQgO?9?eXSacf8&(`lzJVkT65M71=r&To30am{8pR06ypC1FlZsz%aQY)4I{lwMbQ zuW2QCgsVwzh1~<~r23SeNoxkfrV`*na|Vf@;)#qyitcWTm{wXD%S=pYj*^$C6u}?Imn2IMSJ(;(3@nvp~y}`?-i4L&s9lGLEL(ccS5PiwNkskPxn^ zC*ANw)yZ5cEbty3GWf~4hic-EnwaQUr*f%6B_ZL2gp*V?3{`P6Lm}_gL}E4O4Oo~3 z+k_YyP1wp%J6|M2bxP!otE7xm*d<|F#%XlQctH#=;w6TLIk|9`_Zb4g#IUWVc_^Ty z0&}ne9d1|N}@8difDB}ZM zkno|5kMOaKPlP6);xkGY!!)>z&v8-47lQO9zG7HC->w50O{WwUW`E647EH?c2H#5f zj*2)CYB>v`gFkNPQV%G0oMxw#|#9M3~Ymp?}eNnaE9T5V7|BlW-3QsM>r=J z;-oBdGDr6jJ&zPyylWKlajAvP5V~K)cxEhLybODm$h@#TmM*wRF;II^bxpN7m3wOu z6;5bQ=CmRh9gW+{0JkPJ+orxsWf2<~9q1YC?~BL#Vo^%{sX4@2$~w0f4BI?r=+hLs zBMe(giwK*#Nfln{SgK*`s_1*v;^*g5`__e9R5zl_^>bU~KEtYFY;+OqDx$=k`(m8h zxXvwG8RTircDQxW-C&T@-03r@!5axq_@Sn)CEC!vpr{2cC#-yX=vNKWmu%is60ne! zce4`S&c%(o2O~9c(j#mdj!M_5k#<9t2WN;C^I!>^3z8OQDygX~u4W<8=;|95t(zRx z+Z7(71RIUUhDLj1!_jU^4pREgRWR^>bSzR4q@+afgQn=R zFK%$bTgBMvqKfo%b@vQ1>|LtYi{X$Oa$j_$E7I3JIv9)exDIr$G=_cmYhyk=3b(0n zmwSD#B&Y?IO8yLY4GeYlQIC+QtGk}vU+USmsAqC-n(`*`tn;c6! zh+GnwbAJ|nOELHy(|tpc$HpvEO(s;^!3KH>Z=vThPzEOMa2lIwl|TjU0PCAuu7Wjt zenr{g^1AZ)6?mFwP;mv`X3rH!mvf9QG}aRXu!6=_sH2r1tI>!CwB~3zD70Z4tq2qf z9wtEyk6^nikljW(Dv5TpNfLlypty9pIpET2K$kGaz;?wrnIWytII-hi)e)lcyGy;;kaN$e9T|iX>4du$x|1dvF%*IEM~gKqoGu3%?_bf6$!^%Q4sCg|OTt z-W?PU3IfU4Me(n|-*}9W%1Pp1gcgE_q|Op%2hk>Q9(!r#6>m7~BMJ2S!U;OjN&lz1 r2&W0sEv%Ms;1(Jsgm0liLifsBsHIQ0gr3`2MI-%4YA>BH!{h$}iJuGP literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionForcePromoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0d75311d8cdb6d0e3f9f0547c2db1b521a293cab GIT binary patch literal 3087 zcmbtW`*Raj6#j0TblY?*5aY{f+%77%JjE8g(o62fx0+>SR9X+sn-AL2;(@D`G7NMTX# zEy>xk+UmaE6u{-PGM#hJm4oBQlnmHT0a& zOyS@{sQlj9jzw@gR76bwxdFEe<8R#q_Vi|D3^71z_kUgT+mcKi`5!;NKb>vCP) z^th|K!;owMUel7X*4Me2bu`E2xttcNXb)L-MkH)&-Eu{+a$}loFBrwVZZaHifG$mE zP{b{fDY|6o*`bJK=e2ZkZB2Kzs!FX2oDybM*wfb{*ZB>u8QjckDc9D`eA)XJr+mzC ztT6;}#qB(Kf3OZ%*?hhsY=*;Ip@iw`?uM2y?GEUeSuKZa7cFQIVE#DVJx~qP$R!Hs!5?w1NzSFJ%=eWFcK9MqgEbohXh= zl2ruI&#-?x;S6d{2EI@UyoxNw6$lkMZ+PbxL%ZxcQQ^o` zX6URZMxA-0juBfL_$u{PL)ea%6nWiog?*{AL1mT~ZrG%bYi0!DPYn$>XbaDSBDM|? zR<+)v+$4L+=gEeEwOoBxl<>~%?$mPxsi~43LCcgyL%q8avMM-3ydHxMe6DHQnZ9JE zw!4|N?4w`Nl5C|!RA@f9NLjZMi!ZK(;!ClMlpJLA)7G5$KQ`7W6EadE_@pIU^7*|- zqypu*cCq{r&?Eq1P4Dh-jjej(^zVxPCdd4O_=iZdj3Mk*e3Q>j(a_H zRKor#Z?E^+18)fjHsSxZeEVSaws#YUO6ctM{En_G576!JDWP}l5e_rZ#Q!1rc?5;Orp+nWRHv>0cwIl{5eV literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand$RemoveAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..9379a2345d64401b3bf57a2efb63c142b7b52993 GIT binary patch literal 3856 zcmbVPS$7;q8ND?csmC)dFN&848`72?Gm4{`1QLO*ELbDSRx*~177H6A)0!zsZMC{5 z-91tic1XZ1Ng!Z|*$In*us9-&tpqs9D~~*I4!?k3zympexz#-*jTT!@bdIX3tG=yn z-S4ZKzy9yFzW{gue@-HUK@F#ph+%LGK8ztX8ctwD^`mO$v}(o@_(%e0)bMNqA5Gv~ z0v}6YTuGfz;^Qz?GohM75=BVWOr|h}=@cwnNMQ!HYGyS!Nw_GfwI`DB;47m+lFj)9 z${OYpm`|Y%PbRRS%s-{XKd}X$#HW}X0p?TNwW}GuH$D<h z6=aFhob-G%!X;Pt#c@D|uJ-%|bI#1#rZbft4m``5qEU@{YE>Zf_N)n{%tAqyf_|q| zrh4IRMzcPc_L~O~ZCiy~gGY-xJ3m@!5cN|JitRMHI#Dh0MFlf-S(@@5U!GX!FeE3hT>B%Otfj&I=- zx2@ybxTNDdcu~h?d{@KwbbKE_(D6h3NW+hH`~)v)_^FPc;pc=%$1iY2$1m|KGVj(o zUW>SvRvLb-<7NCt$8YgF4HtF%9#?g|qJlQ+w`fe8bCUa$j#0Gy2_~p4Qe;)qgn65- z=IF4bh{tMTOe_$FMO+eqg7FVJUd10ZRCHX!bsbB}*Zn!uDM;IvMFK93lIIqr?;Gx9 z%^Ne!FzX=CkP$jw!|MV)qmIYIHsx4PQQeb%iPcPI3=(}4BSxX-mFE5=aP~IAdj};- z;OzwIaR(mj!M$OO~u1ZZb+*u zU}v3hZrTiTuB}`)o$1Zz2gd|<*XR4PfXZ*PRN}!4bfoJNd~o7|ENoOXtNBR9Rr1w} zy1vM+$Ttl2_K;lNgL!t1$A@}*2Luv<8>w;!>Gj%llM39tJI`y$^jSa>)22Ti-FDn} zKf{+#luetdx@)8G&kA(jnjzE73!67bc1TWHK9A}|G{Jho3#Z@Vl}4J=^HGNP&P;I= zJ7}v~`c9gTIi=F<$fgF@rhZkG_8z=-BsWncm@9D*vO8;thdd=?Y@Rt8NC!Jt_`5Ps z_^o9!?_Q-`BRN$y9??K}r}Bh&0C6Y$Sbe-zei4~E-gbv~IrE88G7EgymbIF6nBM9n ztLeQY-vDmYzlY}%a_NUsgCzF^c6 zJi1fk$HOGhs6JrMl3e@Jx%K2sVNm9=lDJ-bQhT zfet?I)n5Yy-wOA!y`NtXvyZWFyyqIkD;&h|KDO$q4fG(6Uc8^9-H{M~Bz%Bh6vqc~ zgsRMIbX85gKpCYq{yJi3uAyNO@d_GSnkvv1k>GF|=^=`-iGG3py7v1H{AkR?spK>x_3)aL3Cu z!9TSt#@_rU`@;}_`zQN-9V)1um$9p%GkyizI#e|LY>Icrcf}*czejp(fxY}!5xsgH zyDHedggt^+{hfrUv9)mtt%5I`18Vdxfj6-CXj3HD%6{Jx-raz)D>wdexPtc_ZCpn1 zt_qA0f)Kg=9JV&TiMGpVtBSN72OHmo_BM&JyXFUVs;(x9a}{DsxrQ8 zx?Q1uPo%Jf!!bTs)<~!`Yav()_GJlfupy*K1}TmQ_#5vOF7l_?WeoAjHiDNhihp4Y z|HfId2j|3IjEf_bQZ#yi#JPwa_z;eviIQXJMvikll-kj86dj$K>mmJO=%eN-B>#)F zhT~#uYTtjbL&J%;(0&8Q(WIeY!(&`hs~R2$oBRzP#rl;PS19!sTK3cKN!pEZ2c7Jb Ml<&Y7@F0@^2evj>n*aa+ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionRemoveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..17187b01f9fda92e9dbf5e73d8eb5e369df4b62e GIT binary patch literal 3766 zcmb_f`BM{j6#sk)upwD0M5^_w@xnmBtyXOd)T$8_8xl$Y3q5d?da@{?wWNO`T5PcM})_!N^Q!XTH1p-S^)2z0W)M?|*;03Sc*W_92YJ z5{`J$@5NCs?ruOkq74{8OgzOU4EoT3dn63`;KyO{lJH_!+(*PRDwbnnxmPfZc`@$8 zeYoF`2k@X56F$`7xCFHUNu(sC1ts@m9VUIqU`i~SA15%~03BKJWJoZ5*n*rF4~e_w zgAGSK<$ajJNeK^2IK{AHh-b|ien8g;Ei;>Q803D#;8sLeZJXN+(xjSlOp8c&L`^HB zB=ghLnxmvlV}@I{>S(56E0K9`eMS0ihWZ}O(42h?t)ZyRi6gCRlUy;lbJDb?m8p~v z?eZUq^mVt5GSo)QG$*B^n!#iFY?52UYEq}2K-5gB`lxDY;=Qz4>r82+VYG_yxl>YR zHme$GTd^H=a#9hB(&ztm?Xa>WUDsqL=gb#n1r}7TzczdWEAonnW#=R%F zk>*zSebE!@jH>9Wkx>$kr5PF5ZvQNtuCcAgj2(FbC zbSSx*&|tWwirI5;mhdAz8WWD1njTPdu45#eX7DAJ|*NXWPaI~kf5 zqC&Q%xy}Ww@}xWI3?9WWWjuptWju%HWxRkFWxOPo9Z(p8t*H@P&G4?EG8rry9_&$d z{n66V`y{+9;}yIr;f##4c#R~|XBn^K9K-f9lV_c8*rv|QqEEsbGTsy*Z7t(iBEV$4 zg|}tAgLfsoC*ys5Amc-PB;jKjpWssopUL=K;Qj@^WLUk>g$MJRP9ZNK{)!^Bl_&D4 z6qS_8ynZTJawks*OBM!O(=xusHxxWFzQuPkzQ=bGevt7aequQK|9Oa^Yq`P_`D6)5 zs)E^5? z;6jKg^?bQ`92?3iP_d3FgKjx<%glS++Av5_6y0wT9%u6YE(Nz{mYgh3kd^entb9= zOWPS5U$%%wA;N7(y{Rdavah;VBc^Uz3=NK@8n&*AszxnwkvH2GZ&7I|OV!!rp4U^T zB#JgLz->`M7;da2nR;sz`9jt0{)}N-JVFt<1nD@#w(2Gg*cl4GSbQQ9k0s*KUWVqR zNcj1a07Lv5;WbMsTG@3vfr6_!$*DQd@`}J?XupnA1Z8&{*|xWWZSy9PDQYr04K~UU zont%PI#S%AK9u23zd@q|#WP{o6>6)}D3=l?tRPvX0x_T((blOtm# zf-qhzq z*@P%I)1Q<0<{pea*h_Du0&c_Yq!#4^x{B(tUGSimzMbv3TK5H3gaa*?aN}jHs=@h= z+FgOw1>E#L+QNTg%?D@<|AMu}Z{a_%F4o!pD^_+Eu>LYO)Zp0pOSrj!jl^~t!5YLm z|8hAt6*-C@JHwZ;*+cVAFnk4D#x7!OU|RvLBxF0?3JB5Zm(V8c^FY|whh|z^QIGBP z6heT&-hd8lMJHW5=-NqiyKs=!2-!JA7LJmA6J+6W+=(3a;SBb>cV7 z<~d}}66HQZMC{!~)HNih2M0*1hok~B>H_Op{=s?)hdStMFYVQkZk=@Z5ucxepaZ`D E0A1&Ry8r+H literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetBalanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0782122106bc39d585ce6f4501cabf77c682878d GIT binary patch literal 4106 zcmb7HX?q)26@ITRdt`ai#CDy;Nt!B~;w@1L)J?23P&+Yk@kV4DlC(Hu=}Mk@JR@dC zPTWGv(w41kWi4BwY-Mi(QJjQ^vKC6A@QokB2l_m~!+WKPEXS&CzTCOndC$4;x#yfa zul)Dg4FGS!-y`V8{Tkj8#!v&gFx-FO+NW+IUJT6dw)U-|im_V$3$df6@ zPFrS1#%<}Jcih?dOe$lfeABVL_{si(M8~8+sNYFTfsI3^El2Wm)6yL`rY+7i4>>8r znlxNfjf2UMKVy0VV{3qywWOT6Im1qSanCn0nfO3Sds6y+hGp0(*&ziQt zo;9$Q;R2exAX9mtb{=jYa@=fuIzKyW`td+vJOEBgJ1yPB*`bGwc_U7h*?7`-O*>mW zd%ag&7TCQu1er42EYIFj1*~Yku^?T6ZIw{c_Dz2wK4z&kbx5BW(ihl}D^3M`2qe}x zbeT|pAtwX8K$x(%1A^ldA>Z@ko1kz?68q5x|R1@!xI9Lq?313 za==vXzaxNO;j4p+N*xDqP+-%ov=YRV{&dN?I-W#A!$)*{6d%*^an*bRPYG3D3yN-e^1%U4n`p4UTv$dNe>krs0!1K7~(f_>7Lv;%N<^)A4zHLBkhyd8}X>VgazP}02 z^Ya58Kg5qT{8-0N@KbJ$r3USJ!!pxRyBI7aPRGyif`*GaF5%}oet{QsTt-1)%dPD6 zxo%(X(kgp{2)aHwl72UXJiE+Z*mEC5icp?el0MvdaekJ@oq-f zTH!3v`~Lza^V31d3LIId@XAOYuVdwuK(r!uswO*uMwQlvrKjRZptTw@6aT)o?Hu;9%p<88nVKEVWGq$) zfqT}GZdcmfL1LOJEbl93Yi2HH!xD!lF0eKT9IR&TYALm+$}uX++zhLaC0#FmN@h*Z zm+r~Z1kXj)gEs3D%Mj1i+upH84t^sj-isz;1^IH=ut__;dt^<(a#$@FC7wpS5o3;K z-AS;yH+MDQE@mMN`$u;WYwzr*j@_oc_H zv}c)MCT|yCK1y`Vm1#4@xTCS#itJX!76==bHEj5)8G*e4O~swn!PF&>kl=Eet!?jM zA#PgoA9c&(<$5-SzivKDo8#xs?%tv7NxM!&#;HE>JM zpr9fVeKS!iZdza|7w%f8H}B`OAaG|rGvk~=7c9$arPpPmQcKAQbvEBA^_dl?UB^hL z4CTTd%Z<9#=4#wkoFPE(nAGqG9WUe08eY}$7d+1g-x9&5J@3rQ_>eI-oi_LYFjVk3 zF0*;#+|o$HYb1Bbac1*5=8i$zmTtdgc*RolY9-eJUg;@O$~NBKl3-$`aTPPm1jqT# ztK7c+#gfX^Wh;FUAougCC(U9=v@DU+&ln^fDxYblcihaHzJ|ZCcr0yMX4&%dGI&?t zhh6-y>gMke_@Bf(i-T3E`3M z8}-j&V^?#-A|hAOSc8iPx6|k`_bQPNfuA-?1y>)GMFJnX3 zB{Y|$y6X-V&~gp8gBx0F_!=eX<}zqoT>)Eq>bYwXTMKCG(OT{8?1Yzo*@z}}nt_i<)ve~crgYropu&Zbo> zpyQ?(`CLS&qOul>%2Uc*>>!mp(MYm3BT6#&U^n)m6Z>%t9q4CoNc|$yW9R6xSxQ=@ z*CVx$lH4aq>{B?*XKFA0g+$Q}50nTlyWw@NA0hoDox2kBcOCwTqqvuLbmBGYxfda} z*YQ@ojcXo%C+Z#!oTF?hRzTx9Idtsa)P76Z+#ug0&k^i8R9}REcNwAY#s=**$ Z;Wt8sf5cz$C*BarvCeUZd$O28_J4@H!FB)u literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..73ad66c659c16ac02005dace6a2e5e09db554a93 GIT binary patch literal 3734 zcmb7HYkL#N6@JG^T3K2G7GNx(cnQS#zLYi>+r%xAqG0M}R{y~029zSi*tX8sx4R-utEX~Y0=biUG z=gjDx|GxeffREzM7Hi%IcmN(|>Dd@71ZW0=NcaWvxb7@okV zqxeh|Gch#a$rv=uib0Pf2OdWrg*fJ5h~d11c?o6=3$S8nfi0mJ!$CY1g(LpEV(`RJ zieV8Kgo}%fSi;j$d{!7-5~iPv;`1@=#}}gbqS*VTD84M=D-yoS5IJR7hBwI2);{cV z-L`V3k>{$#y$iN8ug>XtP4^7ja@8}b%s|IEhEU4RafV&PhQ&uq3$xsr)MibZNetV% zW}ed=LwpY=L*AU>G7N9wycR{b7Zx-t=c=x!<@0K$5EbC45uH zxA2UNZ;RnsJjc+oPUkvu=(H)@ak%a&Q?6Fv{fe4bTrONHrz*URY76{QzLI+4^PqC7 zLg!$wgzw1sE}ob1J$zrn4`lohKVoQV(}%1@%`|dKr6zg_o@SadevB6+yeQ)`UXt+> z{8YlvWc(bzknl?xzrxEzi;Q36H!^;U-!b&wxd;PLZnZEN`nGAXQ905?#w)lYDeyC)aR1ZRkKQgqoaS}wlo`bmAV|RR3KHQPj<;OOm)cPj^^2v&l2U2 z=5nh1?oGli8eZvXRhW1Nchzz3EEuj!t(jq8cJg#4Gc!Ism7N)Xcw%HIn;jY(t*`x{ zlM!jfb(XvHwo~aDQ!XDPMW}usV>rHb{FH49%#EI-S+1#x=1Nz{tvNK%v2ltaF1q0e zcSZRT`pwMfqB*e%h;{c-jfu0=EvAST;_WWaSsK?Imsfe-3R0~j?&eRGG}9d_ShmAc zq{3}*5jpqW8P^FU$=R@7bkfdD0LHxH6g0;-16fvpIQi@W5y_?Nb!5X#n zZ>}@0mIawgbDBHKFM8Bc+dD{rkmY~bTix&9)MK;fDHiRH=lomloMx7YWU`?9sG0gq znrq&iJ4N@TIiVT3%9|zBo)+u0ixMuP6^oRZ3_Y7=&K9*&rsrBv$xWHlsYz;LGoxdZGnuieQK2GX+*C!0Zr&0f%Zr*#uP44% z-V&LLo1EcL{f-LbRcUa9p6osJvCjuV5de2T8m5)XZ=b`}-rw$Uo6?8BNK^O|&FK zWhBcu@aQZ5`%l*!I5>R+hY}wu)4jNjdGCC7o8zB&NJ0Qrm z=$8#}h{!&SI9iEr#izR!_Yk>lB;|3EvJ(U7f=)8elh8{vdx@-HAW2>%0j?1FuM+)b z^wE3e6#jt+@eT&@FPz4|k;1!3<2_{90X*W1_yozLQ=~rhBO-*V%1NIF$e#Ig50Zxl zgjq8_hL024R;-f0he+HjaDCe_c^@MGY4Y+etvrkjB#Hq#Lv$7UC7fABi-e(79FlOh W>wPpFT*YAtpV&h&hG|~|M*a^s06LWb literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/commands/staff/FactionSetDTRRegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..20aa7e87ccb55e299574c1d3d206a92cab28854c GIT binary patch literal 3535 zcmbVP?N=OE8UI}vc7|nQ!jeEhOeRUY*$`mTXi5VyHi52z@>Uj7Np054?A>L`?94hd zOG537t+w^GYE9MFT5ElY`mH%9l%X0B-ZE7E?Wv4K)+meo_p`_dG7Cd z<)8og%ZC8IfIr8P!nleF4U-zCG)y<+I38=p3^MZ9tX$?)T-NY-9ACkF3*xvE#}oLf zh9{eG6!-D*4NnuWdkRSOt3Rskj-9qB0ny~~&MNxwrM>jmVlr(%j4j+Mr zFpe^oHC)qhJ&qMTt>POho?(ccvt2tp&yY-w2g35)oMY#O>5A~0=P#LyR-Rj-?YV(@ zX*fM};xdCW?BxW*-f`O%ljY)q@MrmgLz2X}XL08;_ig!I6)NGP9WXq$19(k~`x<@_gP*SF~qDI5ImkBMQPDt{fO5(@RddV7m;*b^w=_GpORau*xAB`cP`z^9$xe zd1=WG&8kMT3Y-ycPWVGlj6cPfx#@7XU}i$!b_>ztV?ngdaCBz~qKf+kdVE_Qu*iJA zB7BCfjZnf3?Qq4McH|yet-0b_^lk<=Mvtfx#c*neN7opwQb<^PN)c*Rz%aC1h;XGO zswRDc)?V_(vh9_F$h;X*v#p<(eYh;PsR6j z`~W{>XiZw9?lO1moKZ=Xeig6k_z}n#9h+Zrv1~gOc=Dk?X6Q{?^IqAoxa)eMw85zA z3=B#HBT{Sd1#ejxNk_*|@S2XF;zfqWq}8wE23}Y3GaWz2FLbji|j<@BZ zv)gC-x+-(4-x*R#YnD>lkb8!gU$@K1c_J{RvE@KW8;|JtHQv$j8@$VKASuYP8%(E* z$sEOnj^E;S3I!u6^1fG$gum1Ad;Ea`hL4GZ-7Cj*GqV@c z>Fo6QTqZmH$jroOCNnxUDJ%2lXrl;>mp0tom-qZi&6x|tlW`Y?Of6qU|`cyEUd{V~p`qiMj(rU%iKHd4DzG z$rEj#My1A^BTy~$DvgKKrs~r7;P$Urq(15hKQL!R!45*TzTN`C9eXZ|3UJ0Cz)Yz3PbpxjB-nEB1 z(t_{toW%p8Kbpa6i8-)~d1*^{)3}5qG~%Xc8U`Aum{SL*^(1{2(L@s9M9<0h!FpnU zL&JPyqA@eCB$Uj2Q=%zz8?l~SP;W!)QEsF8y$GV0)^@rI9H6y>CftKKhE7t^g}!Jn z0!2Se`XYFo!ULp|;WR#9QQdGKRGPDayC*+Fe6sh$*t^)1kA5cZmpjUa9a6T2q@=SElFq9{BXEf5G|)o+ zYR6HM+>gWLxg-($0Fii_P7V>lSBcmxNjxGmr2lZ9#Th(@hww7a(f~4u*YHJ}HNJ#* z@Gx%TBJN-~a?1=f(s8%umb-NK47o$f9>f4eLKFT?IA_VG!}u2=4M8C-ui_jb#t1Wq z^MtDs@{@!;M0gkI_B_-(=umO-4!V@yJ2<3bxb0(%LsK!L;t>^T+EhrY;>!veBGILf VNpt-Jjg{{nUU_`>p zeoO|?f@Ba=m=5AB&I$91@S73lyo3t@gmKZ2SHKoxqHd77nOM}t!l1rnT|3N8y@UB%ixV!DbCOo*G-5VTjiVUe2OfOG~Pmauml^(`jY6kbNpU!fhTa%ncIitdYy; zCc}XmaRq1wiC^Yg&LxaTJL8s}QRZ@si@K{6lPSf(Np7aNJ$NC$pf0P5p_&;b>Ds!P z$=B_(OoK{h*ijjRo38GzC=-UdLav0&$p>NBU%9G!BH~iDGsMo;Dk<|til79)$PUB7 z8s(O0Eb>Nx8k4T7Esm+#{DzRgByb67hCtHF*%}|##omRh5#29%kg*>J7@9Y7LipV5 zJnf2%3=T<{m!V@p#-cC=mKe5IFujf@hFwu@+EFunAflurg)ouhMesusOc@rkGTwkK z!I9x2Cu13xBwUuUf-4fcyn}a%IT`QaeHkC%Lm408V;P^|Q-=19{G80`2B}HV_Ze{! zM}AC8tx*nhM)&G??PThW3Ttn8n$>a z;0=3!M`O<|G_9eTro-Of(DEIcdP1SROJVFjT2`@j4Xt!)>%;YH*v9ZJBI2oyff5b) z!oI#Wv@@(>y9eif`sdHSUl5+TgB_urtJoFxu3|U+hW3zI#ojU;LRtq=_enI9-AQ%t zMvy9Qqw3m;$PS{hmsT7m298j@Lsao7)q4j0blobrii5b0L--L-=Q$dJkH)v4kLG=X zhca6?X!Sv2NsK*39v;f|J$dyLf(~4x58cD?QVw7{>K~w8!m|&sN5avq53ohTvA-xj K)lc&t4E_sqDK0et literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/FactionHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/FactionHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..01f848c1a2652e50e5057c6fa4bf326605838219 GIT binary patch literal 10044 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 M!I59$co}~Ar<#0pAOHXW literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/ProtectionHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..c6d569ae614226f57b4de01d979c61fc44d3aa91 GIT binary patch literal 1940 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/SignSubclaimHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/handlers/SignSubclaimHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..6dffa9df50a0b4f1b1b21f4d3c983b8defa2df72 GIT binary patch literal 13656 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 Vs4El!sxVFZE=hrM+b2 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 W{F#UU0!Mic{?ilmK_h2=$^QXw*vSb1 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/CapturableFaction.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/CapturableFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..b3cd25cebd14d096dbbc2467534603b246763b6d GIT binary patch literal 613 zcmb_Z!A=4(5PgLObVWf_yz0RO(b$VO3>UN+LGvpiRLk6c4jwM6IQ(E39 z^O1}m#3-Ol%?o`I3`L}DyiPi1recP!7fV0X<3LR$*U~(P(G#Ef6X6>b>X?5Y%*#UZ zshG={cf`UZk@dREXf1}bhW99zf(JrRdEZ1zPg_|gF)HALLGQMeHmS+NwzR>f0g^LVFD&Y!j9<0$l7+WW_dP#XU03TVC_xa)sQF+@&fYL6IcZ;v}Q3 VEv)e__EOstDyXJC?GrDD+81bGlve-% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/EventFaction.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/games/EventFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..6f57390b49578bed98984fa323de94ee1989c49c GIT binary patch literal 3313 zcmc&%ZC4XV6n+LG8{#T2Do8Dgwqgk4ss)OMQZzw`CR7cg&{{i5*05%?8?(Eh*xL8{ z8~U|>psgQ5ThHm|p8lww-q~G32&>|k_HfSZ%_RWWq8FW zb3B?ht3@T}luDYdKC+>ou&o#vgKsZq-ABmVki#D%tbhZxQUG5E>=q}j4& zFdS-(BxEX7N1AFa^G6JO3GXaj`T}W>K_R5C7ORk_vUz~KbkO+(uh>piT{aDs zmMhJ)X4z!cp4Ey57gh}OI}9dY6SQ6-!lk7&#EVan^GMcos(JN_CMvP3v2@OeI*>7d z<6<}^L&F0ZC5%xysHVLpL6=bmvDDjKF_#@pCrvT5435e$QIYWwV-l(|EZBsosGDn+ zO_+trIBg7MOvkXf;5;;VVNj>Xz`&p?;{!}daAcgun2c3S%UHuB36Ev0Z8R@F~`PfY#A*PgoG@4LuYfoNbXXxWscFNaH%^=11 zQr$MR;D%OmA;5bB$RM50QTNtGd39z|^Y;?zOR3DgxtY}L+yVnjF&qepMEW5$EeRPV zg^Wb+$?!)FDRyQq-Dz@mH?TDaW#?;l8>4lQfyhM?VO}V>cf_#!Q2FfzyDj8PK5fgP z{z!5*6TQ^rS$hvPU;4BQ|bf}tKS%Q~ucoNB6y456I=5ym*dc%NWg zq(tKcW2!-~n=l%aA17;1xj&IA#eGi1=n@W|uHn$_;Tn48N1mhiSq+D2(RVS_7kZAj z#4`2*N0wqEeW4A!O~(DVw^V+V{(k^2BZ4G4FoRyql1k<%tE&|4nw!z67pqR}1SW97 tC2zu|xP?v*5sElzt)Kpln50=K#KgCs1jO(mrpfve#c82P3<-CZ{1@eFX#@ZO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/EndPortalFaction.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/type/system/EndPortalFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..1c846d4518ba94843c64a235abf49f19594b5353 GIT binary patch literal 1299 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/CaptureZone.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/CaptureZone.class new file mode 100644 index 0000000000000000000000000000000000000000..5d1ea1a44b6900d58c99c1c699bbde573dd6c5d0 GIT binary patch literal 4669 zcmbtXU2_{(8Gcrlw6?PTi0s%_659>f;K*^dB?d~Gex!Di+Sq9t#|}1yu$I>L#*)^o zR!LJnT0UE7p|s=%F1XDNooR^blAem(Dd zR{#F*-~Rz%27k;Tf$KVUx-f=PC(0R)6YqaByk<;{4Le z(zWIJ^>f$GUOsnLgEp@rS#k?I8nTPmts9nEvMO8V%Ny72g8z(${%XPX>Tvu$X*j&-dRyj3ZD+^vO}pYd{w*`u{Xm47zl0R$h`Zdp9a!MtqO1~HATkFYKfj>+Sz^l;WK(!<_Gr($2Ml{akfinUSVo9v=nuu7|z=g2yIne?|s)9EZ%#qx$ahMT7O|Ol9Vvgad?l7=7QM17KhYK`2U4HxMlmxaXcBAJpOt6 zncQXHD(oy-yDC!TCaXlpTN-k;-J<2&u~?l>^(;engW+a2)|n`3y%ch-hx0k7x=XfP zR4mN#MT4+yxu-a@pQ}FlL~>HaEL{%SGQ_iUu{`SI4&kFz9hrPIS0xi^u~OKo(?$}9 zrPms#M)Apkz#Z{5s0|IL7}PIbP?@gNx8@b>^Nw_pzDVt#l+rZtHJsx6W|;<&G4LgPSp#JM zw1KZ+!oXMMF^S^_zKwYUr&P2(19LcI;2pec;CC{6 z3Z{mh=IKSZvSlETDFY{A>iE5Z_XPM42HwX92A&jECopZ`2^`b#bPPB5)$Z7kn@X>2 zd+yDkxlYFbw)MNfp%rPM8iZqw(kFu^7uI9DP@2`iUaw&~%Dp<3KG(OxaIqps=i(3EnBF09&e~CPPuX0JSk;n?OKIx+bp={vh;m*&-y%M&ec3i?t=5KSGN4n zi~dcus_%vMGel?NyumTv@(F$v96*<(fwP2=M2+Nv8p#tik}7H>Thz$Zs*yQVBeSeV zCRU9k1ji9*LPtJlxOx#CoB@6LPoU*LMPiNP9y&f&5?|-DhbMqhB#}ig$8T_D1Ty$0 zp5{vMz7^uFB8?Q^W%5(mY4=K>6E_x&=d1CTph$1ubOsvUB1*p>*;i|Hc zB@*g*kLxr~O|;pZpV~t@e_{`MetHj``N8BpbT!qFLZ{Gp=*R>Hs4mBP8>Omo8Y3pn zDB~v@CQURWA`at-8Urh`Dj%n4#SHps*9h%sW_vVZ$sr^jQZQ=C ze<-YxPP1Vg=F}SK6(hQC{{?#T4w4;zrPe@Ong>DNG&S@_G^CK|eu1BN($qr4c^WPv zS-Ph`KvzDSlvH!^Q3Euf*s~1s^AX@|1ekR1Cd|18>}&{|`xMRrG zh){G%)CiZEhG9+@u@vfasZX^Bsp8?O2TX)$rXP36A^Ie%x?6$XAY`vn@cYz#jRkGt z2^1o_kA)$Vu5*#yG0@H64M^}_#-&hs;5`3|QAtO8zO#`Wq#F5tr9q&maJpT1AXfM? zmSZ$`whIr&3SYrWjPP)~@KCJqD)SQ%CTjLbyYO(V@OK&RfE4&sP zu%qpokHiYE$7;^DYd#t){9U{n`h1#p3dzz!vdA456n3|g4vHh)U`|@yzfv6EBhP}^ zwcuo$h4y$HxxWSHT0BmAzc|4yso@9lIQo8Z@@q0G_$nyut;Nke7@v+iC>A>YTU5$?Igcc U>Tehox3tK;(8tv_-zDJu4-DyM(EtDd literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/FactionMember.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/FactionMember.class new file mode 100644 index 0000000000000000000000000000000000000000..705e57919fcec941a21c32813a99b9daa746b2e1 GIT binary patch literal 2871 zcmb_eS#ujj5dKE8v^v&D%*MzjByk`_mXF1RBlt)hJ8=?_5A0wdP?cKCD{EtU*Q{2i z@<*tG2VQyM0jlh9JfwK$H&GPbGizz3C=jdiGBc~`{=S~>uV?hvKYu(0@Gic}U;rPc z(T^D(X0w>XJg=^2a03fj+{7XeOFYc;a7)AO46;~G;|}h!)jbU#Y4}(mTdG*WQpIvz zyDD(2ShGu>yHj<_w&~izH=e&|R!U{76gZw+GaHL~;8bg7E%57d$0URklv#lu*V?xQ z28)lZL(8mM?yk8R_>Q~Fd%jntz4>mLHprb|l5>vh1lI-P`LQiRUGjDawZG`N_G*29 z+xG8U+srdq^h#EB%kmxm4u9+kDo#yc?sPFMt1PV83{N5akS}`vuDM;`+j9cbb^|AP zY_3Y|kkQ&fX)UYDJ9P1=ZsiS)WeSx>;MlsJ3^>eFC z_T(Qqw7@dizmy*0$T$@OH@b%mo29ST7UiA%%LtM+rV+F%(%B9=IayrgnP{&yeX;{^932*3l1%`$-9qagnYOiAhn>z0E@F^w) zrXw{j`BpgyyZUhY;kAbwS5LZoiMN#8bZp@>4WH}y0uLDFOM#hFRlX&9fq~{_xwiet zE(HR)NK`F)Zn0KZYpZq3Z6t6e0<CW<~}vB%(z*z{X^R~Pf~tcUZ~2IsK#E{ zm|lYe+0ud<`hSnqlBrpY(mOgp&uknqRuQdYtQ|R%plHrQu*hf}rZ1CbL35(;E5t9- zY=p+7{Ba1c(OOpqIEUBii=EHY$j)CAcn{6P>|B^QMyxP-jCf)Eck~DxBhdsLLV^r) zWIl{EM$kvlIf7(@f&vK%2o4u;QIZbJGsKvJ+ksBS^rIntHKaEr{W$S8V`yhSPaGGB z`64loQbsOCn2iRrK{keDHX6)EgP9sJWImvoqqAkLhn!H9*Yo;6X9fpkn_%^Op#I)p};sMLiBfNW<{hFdLM_c(3B{qC6W?F zDnz1oz*OkpRMZh-?aqS{=S0KV#M>R5fa3UK1ZyfG2#(59#cfyIkXgsWQ#`!?z{o21+=&J<) literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/LandMap.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/LandMap.class new file mode 100644 index 0000000000000000000000000000000000000000..27ad7ad1289c9bde02fc28b49b51d22f66024413 GIT binary patch literal 5413 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/ClaimChangeEnum.class new file mode 100644 index 0000000000000000000000000000000000000000..720fa5eb0ed59e5af68944259f19e88bbc5a0ae5 GIT binary patch literal 1266 zcmb_b?{Csz5Pn`Lv~(RX#3^(Bn$rQBt0;bgEJH*?f?Hx85se>8SD>@BNn7T>r7Uqq zquFQwDC4~y*_irGO7b3e_w=6U?!Er}_4NmUGRg@ESd)=QK}1$WQAQH${Me9?k}0{t z5%(o5aJwlX!>uaf0fV@=Q*YIpFBqP-eA959ecS4ps$&KpT<^U)FnYQXSgzx%XMaY4 zW&5h>jE25iw{>e+ALvfsY*3)W5Sx^XziepDHw|J~ZP!|R4UM7kb~Y68L){*kKEv~T zVMZl|y1Q>Oq*|6^?u>?A(|e_NZHkB?*KUvDb-s0=AL^=2&8k}9Sx&!Fm`y{OmTTyC zTlXwZI$;(ZeMkZ_f3q^gtCnL0TMUc;5Y;TS8H8Y9(S#D3)pzt@Y6QF81Jejd{^RMPl6v2-Ou^2s{$kb2c8NZ!Bz=*> zc8)6m$dZWAk`5rf#JlDQBybsvV7Nlw3R(WhW3bPNoFMvhF5(uKj@uz- z1rqLrf_a&D)ChlS-yn1{V)Pi&5fY&z3!yU?I!Y{b=HuT97ah}5c7!qJv`%b{dF=>{ Y3pnjpCWSx@YosqSAzj5?ibZhmH+rTvi~s-t literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/enums/FactionLeaveEnum.class new file mode 100644 index 0000000000000000000000000000000000000000..83d42ff709b2ddc3085eaa554ee4937612cfa40b GIT binary patch literal 1271 zcmb_b-*3`T6#gz03S9>b*_1hd&FO&6RTQ5f%aB1NYqp0fh8Q18S6F9h6I$@!QkFQQ z(d^kj%6M)e8&e-?lY8zt=ey^8=iGCD{r>h7KnbNd1Z+ykAul2$q97rGExv5Wkd(-| z%@I#xSmJUghBTLoh^Gv~L9=$iP**+EaGhh@>Y9pU`XAlF2j#@*>V|K*j;CC1hQ4Kc zis=mdp3<0jRZ}0Cb+VKhB5J+bsxyfDP3>j%aG!P?t*ZK_t}!&;%_&KAq}xN&V|bOz z&nu=-bB|4iq-r_l;jrH^2e0*xO%^docGP8P=hRbuq${@W^c2k>SWd5;pHoR`)irdx zr4KBgb(&gm^gc02|C^Q}TCp6<-(^_&536RrMK|l8Sk$AqX7wE19}Xx|IL95aieXO= zznuxqZ?H0#a&~DDB+VTT46|YJ9xneqDLcH8GH&p3&B!R?8AELj6DT8#=Q8f%o{S_? zGM4y~Mv5VEb$7f{8dbw~9U_;>`Jr`8aPXDlL2KOh#i*3J?A9JpuGT^$#3pHs(! z0JDx59tMPYnDDouKBin*ehNq5abk33XUT2@R*WQv}{QJjW0M4V4#|ZA`a1bj6 z+{2f7+{ah4{8}y#f<`n=K6| zs*PsNSliy(a(u&nYF*Q{2k+t zdPc9|4b$?ShIiAhuZi(|wPjlkZt853B6h&Npq#dE}50 z(li!WNOZfL|Kh`o%|9+jVrddZZ|6nL^`lxy6&23 zZ7nsLb<-!)^N#2E3mX0|ttLIOzw^irvk-DviSEwBMADQLG{{Ljjj=}#iHPz!eP2Ur zv9V5?4ptq{zO^mFxM!}pivNaXy7$edBkS;H%HMRz{L=oSR1)q8ND_WsL`{CvW^2c@ znD$U>lCOlKjA2zI(G@g_4+H<_|CX*~3hl2E$?1Wb?ME7hhN;qYm*QetN@3532`)IT z#l03YSej;&$JrZU%zTL>7BE5nl+%IB$v9PHS`DVNA z942Z^;~A#S-AL~lZ=3aZpUW?Klq{nfMiqJ8ZAWkM@OueKl~yIsIo@q&FpZ*FDTa2vNfFzH_-Dzo zA^@X`!S1{a&0B8xLST_d*ei|gre!ZV(n61fgm*gLoG44j8Eohn!_h2iIyO% zTRO&3)Nu?GI!@rEj!7KP!qriSr{gq^>o|lrbR5PJmf)+t5oC|sd@1j%;$G6GHGKRU zFsjqXMH|XFc-fp!tecS1iYkEdCs}~qVmg9x;xrt}c%Cox|D4&~sjzJAik=jMNT;w%V zE~a;pEf+Jp7~-ATr^xLh{|h|_@fNSA86mh|hA|hoDsqpL+~q8PGqm^sZ}SH%2fLw! zX|A|0$~=vxW-~a)sN|lUY*5YQOer;!)1=i*&X>U~=X&UQg1e@}lg=Rr1Ml#OoNrQD z0I6S5_?c@>MVnD~%e=nZv7F;d;%HkAL@W&zd$3z7j9tTfc%L4!ixK*!%fCbai8rFo zV-e?c$N4-d>31HG7^BWdW1TPH!x-muuk(1U^GCQCN<71N?kVC~RaX gIZC8wRGdKJPYgeJh6BH$AmK(k#$m4Rs1UyR52cU(KL7v# literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangeEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionClaimChangeEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..121757b5dbc99d793904b74845f4a7a29b1c262b GIT binary patch literal 3396 zcmc&$S#uLd5dKED`eF9-CrNlpD%y?1HcD(T!Mj{MNFW<%dHYN zu*s*}yxigCE-#``FL0*m^*iRyU~kU}O!-W@fq5r< zY&w2W7bx16Ys+p|wgkksK-RVfz7)9C^rh_)jMJ8;D}!&m{+_vOw=FwxJl8jehe6zQS;mf7&guEJwSww#V@1%o~r zf20*!P3n@(ZiLQkd#bYzs_tTs$aZJuPq}d5HQ%&>$n=u;~RZ5L|2kj~fk!&m0fuaHg`&eO6Gn zY8v0Jybj_Sbdo?vsh_XtnP>Se{o669XVhs9?FjkniKEnW&&WkWK45<(!6;yz!m8bk zW;4}1U6i)GLEn~}4o|hEF+=DoSF3>~TsN?QMFUfq&f}qhNBF|PDZFW54)X@eIAP!< zCJ8B43P+kz;NE}htyfM+8jwefZLo&Ui>UO%A%2mH)a-a(rz=gaSI?zQ{Z5;Ad%Z!x zQvBb6e$Z_1>GOwe0m_@UbF0mSSaqDEzcK~{-arl|ri}gsrI=?#mSm$so!GsUIXMQGGCv~!J$(!1QBK{i(0Xwwd6m8x?LaaWldLH}Lu;AHPk{=mq`_9q zNH<&i8HMlYBCb3eQ_c>RYq+FQPP313EY;vJ0#xlxb> z4T!+Icu%988dYA@D!)%D4~e@*VQ_kLwZ(lDxMbqNPbux0P-0jfIaRxytPkMfQ{U;GE(Q<~;w3wz8-QmL$AMWzuUXt!- zC_#%!dXS`t3Z-^5t76#7v3w+yFEbkf;FkFYYcrBJM7S8>RmvSG2!W@DQuJbwidbP?zdDw?L5G@nrAb947qsKLt8Rjk&bl zb>;P@6bHY zJDAQPC!}zXq?kU%rQiif0pn}&q;L^Z@SuGN+AhXOAzTaYUkSIJLkw}WRo(R8kZ6H# zWGZ&k(be2`cqkM+Mbp0K!OXFCa4rNaOLqggZ&JZ$u#8|_ z+JqU9<*PB(Zv`mwqtq`3VDfuLY= literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..9bb84d363d4d05ddd602d1d7ced4dc51c829249c GIT binary patch literal 1547 zcmbtU+iuf95IyT$oQp}@KrfI|Lfe3ol(<};XoZj>qCP~GP$3e1bDV8s;@Fbyl%L{( zTU7}pK7fxx%-T-ss-X?yW!F11=giERUH|(1{U?BDc#=Z~Y8Eo8VyTIxE@LZ)6duWF z$k1eLGi3U@-LtssF|4&6_gL$W1_RUA_zAatZ7+1TP0!z9$QrtBaLeL726o7h_PE{S zF2i~pX*k0n!L(+$9|SRkPVbtw>AzrjtF}FEIF!~r;+oC<4~{#~`o@uN_@-lf+T^1Z zT6V6duXY%cO{d2h=Gvys_eaAnci-q;i!8;qW9U{#cTI7Qj7h(5Qqz00)-v)<%L`@k zw5YJA%XOc>5>iova#T0N_N=7i1{n&++>fcvP*$t)wx`V_e~zI}@}}23pHD)q(uA@U z5e|T1^CIEj#-w=MkMShcL!oV!tYe~z8ZT@*kHBPh4J#TsRYQi{firRq-ZI5dmM?4A zc(0%63g+=xK>>3La>y%CaD!p>s;em=6^7P~x9XZnGQ9i`qTn)2t2fd#ypd1;`3Y1z zxKB?w1DXXAqzq|84_y-S1Um^vyYSCrfz~3OUXwpTd%jjb1FLPFLi!v8-=wt=xEASu zuuNntxJ9;d7>-3O(TRZMTOl&>B@#%K{5I}H^s9jfNPa=$6U8tH-gICs(OQ~BHs~Z+ z#*tDivK(YqLVuK*1jJpkh$gfMo2q?7@*^4I;Ds1CH36^T-W0GTYK()6Q^92tI?Vi> zq9wwlYo${p&y@>1R08x;7%@>S9SlTtyN-=ZJoO6`xSB`kO^*nhs6;#)K`xrb52W6m SA^jBzQB+)Z0eKL#`S1^c+gcp} literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionDTRChangeEvent$DtrUpdateCause.class new file mode 100644 index 0000000000000000000000000000000000000000..227eae3ac7a0dfaf4fa76a0e86fd2da4a772e7f0 GIT binary patch literal 1494 zcmcIk?@!ZE6g_V(>sHFIfeI5*6mAUBicVB=1`Th&Q3}&)W@kqyG6g2c}7}sH7LOv!l=+X(C zl#C}C^vQ8bgUMjjtYvG}sx34sYpV?1i&3!tamS8$*^Wa_ctr>vls!8PdC2g#8gj=M zJD$7CO~Ip2e(=HEcXn+ja(xk+7cX(-dZEdWxQIe?=^S2c)XMv|*yENAk6lewqFgK1 z%1f*Ee$iTJykgMCHWsSuR-IvMtDR}nN46Ks;@%aCZB3+>{T;Hjr|Js68Xs=+pkZ%& z6wwj|Yr71hP(84ZY||r~%z6~KVy{$eXYskJ@7Ugk9k^0TQ;#a_Lz0#IR|`XW))j6v z$8hr+sg>degBtC-!{?qI|~7kUl!p_k6z{z_i2=uehl^%sWT{_X~uAip6LV|A^sqSn*150lBk|j$G@TD465X(uJH2| zG0s`Ijo}0*XNe^DEO@+v7>Ic-# zoTi*2bAoI#(bZ(q+3}Mg<(PVZQ$0p!{RB*AJ1&?9pNndw!HaNA_BB+}^s?q8NJeIx{Xk87`5Q zL&xhnJ3fVeZ9JYR4hJd%`&J4;aJ7Eu^}N9GiHL5|7AOVsf!dT-yugdE3jEL*k4WX} zm=_ukIp+%PcJq#a-s*QLBNH7jkeh>VcVxJgp%}$qe+T*;dbn}dmGNZl(^oLaYjP|ry9-wQ(5i6hxJLjRJmV~?{gFy^X>~p zpfxU8PN}H-2=lY7;3!Qbxe9&WOjTz_e8Ev)>5Xl!Z&`g+4g2+TR3lT>i0a_p?J?PM zuFarz0)67*dPC{9Lf`jqUS4tiwBsl(&65F!L0Zdeib^NGqQ7>=(~0hC|OM z)q(S6`}Drr8&13{pgB9#Ra}iWPSf9p3F=yuP~~jVA5MW&sAfv9nkmC-rX;JG@=SA` z{1)&Ejf=GV4jK%a=dDK&*0~`H*7+ect2u;j%@&6!{;GUmWgB7x)lDbd3YD%-U#6&f zbA)$_PA;LStWM)Kn%SNs5o*P;6x52N(bS6LDbo2FETz$G5jNW|T7RJQ5Ysdj>8JPp zgi-(gAq@RT=-N+Yp@AbRDeEQ0&iNou$_=x>u1>XCZIzl9Z{RGQ@_iSS6`=oy@-MU( z8Jq^~8Y9b#v}445%R5B}K^lBF4@WyL4(pWTc@OW8a5SaYl697P;n@}A1BjQ zN9Tuog#J|UA(qp4&Zry$wZBmL@)4@Pqs&2Ng*-tfmsRao@FLAsI<3=_F|j)LAM@~5 A(EtDd literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..48652cd48a185dfaac3d1e9783fad77b488a44cd GIT binary patch literal 1140 zcmb7DO>fgc5Ph33r;cf80^zGb3I&`XbrJM{C_)HCPfOyOKYO_*Wo- ziZ~$7{3yh%Z9-55N_^Oznces1&FuKc&#&JAY{Rut$K^V%*jUF^3)fa);kpTSEo@l0 z!C)PFK_azcxHpJJpw&Sr4+U2ud8eZZ9|y&G%xA`Kj@V(SJ(fx)PZ%D!%Yu7*43+2l zKrl21Qi)+Y^+oi?^FxZX20HM0a<`7WW6wbYHyJv` zK{xP}(n;4BU6qERg-r*yaGPOkxi@sM0^4xkVR*VA^q+ktc{&<#Kb=fuk~f}b4QD93 zrhS`%p7N2_qfl@%r&@8}iv@obWrHWp9MTIr!B_;7p-zTW8pA_(U^>7R_P1M-%PL!} zuuAJH-2v7J*`l?LCV8D4g|iefUn^s0WHrdnx!)4bAlv=*6V(1o-a!=?2zW6g@8+-> zd3#3Qru641HN$z5kf-6ao5a=rCsaR>k*ls{!DdEis-+7BA){2k>wiSIP5mVAubOkT SGgoVECZ|@&VIo7?6N z$xw6kXXTe>mErY%pQENa+>K;t`n~Jd<@h36W<*y(S&uUqv_yq%JP$WNbg+EO*`Z)_XF%#od zU}DLL%Sh4-sKteuQ=~q{aBsNF-&Nd^(lHxz=8z`2b6p|NDG~WBeS@->RgV`=9xLRKTDf&zxur+x$C C5}VHe literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerClaimEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..90167881196caf55314b9aa987e750b394afe416 GIT binary patch literal 3260 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionPlayerLeftEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..098a76e1c959f6a2d33071779bcc993757c8c2b4 GIT binary patch literal 3434 zcmbtWTUQ%Z6#h$d zwRA04pZegdkNy{R?=wS~gdzLBAqx$Xc(v z&R2E&?rnjd(wEkOWmYVA+g$N$j=N3!>9SS#Y=MQ6XP2wws+n}fRVR6Nsm>wBKL80?m8>%d;1752{Y?m6XM0kKZxTh&^b$TM?}>-aYWe$W5A z&ru7?Q6%=${>OFNKis#&42C|>#)Y04@A`USO&~R2-J~eHN{(wksPApqwa3;*g;sh> z)v{GtvuX~{!^M=pMGy#xnL58DiAwZMV^Rl z#kb14_pN;yfE4y88a~zV8HrxQ=K`JEwjYtQz{Px_NCwHgYs;x_h0_G1aJa zI7?(fh6G01JZTY>0GkH2A~4=+`cDQX-Ly`32;vueZ| zJS3^SEHXYOjQdLbj2>4zxj9#^gs%|gkxt01RO|FQEjnDO!=YhYVNLVZ8W_bF271wF zpa(A+=*M{j0~j!6ihS{cL`F^^+{ev^2GJO&;GXVC5# z&FC~1EP22q_C6s;U7Sk}pKu6?pK~1YgB91vuRfKCc81VO9aoeAAY&0VQ}&3D(-dgG%sq+z3y;Mt8%~%dqT|EbHi9 zbxCx8V9}IrMhcd1>0R7Z@g(B%1SKGF3-76TQgL~>+}WRb+*a|V z@yF%iLS>#iY99G~#K|+4x#+&dAFj}!lj`^h9qlsfR9v=>yI2mvWAY+_j$dFrIl{Rg RpmRhbQr-MC-jgaQ{SDD7^nU;V literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRelationCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..47dbba05a1f858281e4bc5d21d957232a826b7b2 GIT binary patch literal 1846 zcmcgtTTj$b5dO|?w|k*nL|9Q!1ib8)OTC~*xg@%g_^=^F2#LIv?g1*bHSJjp|H%h$ z8xl_oTQl#e*Uq zR#3!j5%WbnD&jFiY0q?94)+6w8%@vOHMZOP`?fIn0e6M*Dtg$o1F^tRwoKRJj>B6F zY>S~c;BJfiE2brE&t+I>2Hf%p&fejM%f$!J-#7NGo#=UBbPwY2JvY`I^ROFC=)J=9 zce&`Im3;1)5%BY@z-?hWfe{G59hPLgjv)wMU9??WEHfO}vZAGw`5!_r?4iENpftP| zXXtO*E?;fG+vfg;x$Tf;u<2Q*vuXOayvIgG?AbKfwX9V~sl(9+Mm&fU3L8E*1%D~m zg4i6ONv)rq{!*=;HBSn$5#+|%73iTXC;1r~*%MsIAw!QHG)~tzU#rt1YXKJtqf*RLrp!BE|dQ-swA(_%^`n<^pJi8rcZZ}(`P!!>$4pwpTnpTl2yW& zQlXeKMkvEoV(c18K#$_-HcB@_lB^QCJju+t@Fa8R$vTGXab|CA2;zmY;DF%$zfw`DW&uY4_)^(;ool@w|cxX38jIRtiIkIVm1X@uY~S z6%;X3#C#D8MLc6D?VE1P;eNnyx9RzN#!ma-z!nBS;;t~>L=T&GAQlh z1+m#rliIjA{g<_R);uZ1Mv$8qSD=TooaJX|WKVDnh)|8Zx}2(bKr^Mk3p~W57;BWY{3&0c$|hKXzGb@Ax}LLi ulfGx3NunExij_ED33Zxk#MNY23DEN$#kVIYeT6E^PA2Q8+Z5SynEnm(NvWOl<`Fp&vu&zdit97CK#W8CW*)bzo;wG2JObOTvj zH7x8kAJ`-QLP$jo%3<9MyYrHc8)V3xa4(`ZL$O?mwmoYe*(ruP$r^5BI-gj%LK8|; zL@)q`?em0x8*KWE~Tg%F)7R^9W38UpK>%Q#EAB9NI%i=S@QlW%Z(l z_4nFHQ?Q7K3UXLbkU>^~f@=)xmt9Q(DKRwXyj53BlHvJ(5c!v3R=uI7!HsQ10pD2bw@Fsn0f!4w#vQ8(# zGLDoYkwrhV68OW+Bp_~+MKqy?*hKXk;vdNn1usRwi3xZEcV>VkQDYRGp9wCK&_U*> z6fF@ZSuLC*K2~OJ=KVjJwOVTc literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/FactionRenameEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..d8040a0cd96f4435b78896b9d8a2a00d2450a023 GIT binary patch literal 2188 zcmbtW+fvk66kVq~eUCOEf+z}J(C(nb`whIJln*^vHB3<@Zy_9;NJunE>&&mrH_U@K zv`VYy1LmWqX77`9lZL2mO+TFLUi-54%BlY6-!FdyxQeAJYPeQG71w#V!NbieZs9hs z=6P5s;Z7B0+%4f=3HM8QAW+`4ybV_dp}>ijAGFQ&&eoO_new&tBJ)Xn*>b{YUZ7%I zo-JKhZU~4qfnq4V4H*cWN+WH5dz)b9Vmz-X8$#=T;Itjja+j@bDKOG{VZF9Y*Yeut zN)$L=n`}y+d=p<67aY%t?h5?TXob@DDM{zKG(8!;@q;aM(|&H*k>h)z*;_2dC-Xl} zW`F4YC(Ts>ZPDMLRO>Crlgpj$bs79-t-C6D-?rRUD{y$99BR>~Lo_}aG~Z6-xM56m zXeP=3Dm`N7F_X`9B((`#9Mox-1c7QOqvbB0ha1@y9$1Mid+QhLWm3bzwv19u7np7| z(|l&hqPB~n@@r1GxGR%Wbe9Y`NsHBF6VOaE`OpF@}dahB2b! z5Jq(z#%KwPIv(M%jsrNTqmChg$?tu8?Bue*(tsbr4}>Lf|9?1A+RVx~;XVF9uKe^@ z%Zv`~?JvDC@>R!jNmqRee!Bib+R=P-4JYYctASn@6lg_!(qouoO4UrXtC^TrGm%fT zPWEFMr|}5wekc0^&11&wX9(l`4synY9psG(Z3o&rg`41eWi?LY5sEZHF^*C*kI~4_ zukt{*NfxVQ!&bwy#z$zMQ1}yNV>U@3PvJnN zF?fo~ou=|msla0~s26yc^+hgEl4TxZ2o*9soy3@=nSa`Q6yMS;l-r^@ouTne&vK4- zY}>WWr7R5pF<-9oZ}qR;E_yl6GjF& zzZZNc6Fi#<*7kx&Gr{L^A&GpO^5pInjbl3~?P@0GR#)h_RmEPbib|!-^PJ+0x!d(a ztUNX;l?a`-<|j&!~Jrk)5T5Q>Wb(I?Lhe Ee{?p*umAu6 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/events/capzone/CaptureZoneEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..c527c3554fc7063a65a3309c815d6da3c75128ef GIT binary patch literal 2414 zcmb_d+fEZv6kVs3-WbXq5sIRSw&gMkc!Ppq1NzVy4TePChT#AsWlE+~41SBB;Da|L z(Zu-dM;Z5?8QP)LIvQWjZO&eMowe6F^W*22ZvbYIPe8%#INETBo4Y){7sY*^%yBcH zpe7f^LIQCtM)4qur6`sKV!N8TRg_j);8LMv?WmiTy*HcDn$tqv--Q7o(Z zS}Z|F4vN~5v;+pvkT7k-K2o1L-*{KfFb#WA;7$7X+k(=tj}D}|qwUL6F4|^MuDWdJ zgMyqtOJ-dloG)#WA{_<8lus)Ao6>sD-~!!+lCBlkHOt_+w-~l}4U&KD?{Yc?Dyvk2 z*CfAR&K1*^)(Y2;B8U2v^S*vupmu;} zTeL4seP?#!1R^_mj8Jy`7%lIeh>O&AJKqP;ib292BJ326fUFxwD=C^00@s{Sc{Gem zgv%q&-9oEWH80~d^}H*VJwf<8THnz)1kMz3)<+z4W=VTIbU`P)N-NBGihBMQ{(wk* z?3gb$?8U}0T8&LPk+oRi%bTHZ*DyvcXHlu=EUnp3h`yzPpJI33nb=+tW9IEHo z+b}o{&R?Ior9QZ?VQ?1XUho|8WZ@&(p<_gAMRcW2I??^^j%wi|RHiP97ns20IUF)W zC@2mWn{lQb`S>t3K4(qUoR4Fq&Sic-JU+E@d`7HZl=cRq#BdAjG$t|X92jW(iuj8Y TBt9a-C-N7c&p$(JA-ZMlpB-k>1ZfIc)vgCUW(VS0d(G9~R4gWuvO_}~pm zG%-H=QO3PzhIS~mj>eaBo3qzmXYF;){P_9h8-O|FVo-29ia73YbC;+0!nn_qd2SYB z)MUe0j3J7pFdl@l9L9=3WLGl_MOm&0T*{ZqJL*<-Z_lt)c_>Xwee8V98x?CoAgXJo zE{jE35D=RJaa}vGs%5!ZGNr(Lz9RJ!ff?IUHKp~cRNhl}^=(bJjFMSVYlEs~6f0`3 z9!t=ngQ9jM%K}4ZNSKyk9jQ<4Z@epOn1;0^@Fw;9ZGLH3M+Z{f(e~vj7j3I3*BrJB zenHNkCA}dK%#{kHNN3(K<&*0EmMlMKaDkqDN!N-STG`;ayBM@~4U&KT?{eA&s;E?g z*CfAJ&b-tPYBl%+_87165_%cxs zV5gEXjY_U=)wWcc%*vZQo)gIWCw#ujbQuWGF{VJWfn$Shl?tb>U7cWRlTDJaS3MVK zG38gl^L!XEN`R+~Mp|4D-aF&}@TXUT-ioYVbT1%jN+_}QQnjqhHG{o9>!UV0v!p#Px}XzYr4?p8O+9}Len6-( zcH9#ibYr6!tHmbm$a<{sBDe*18j~2a4-CY=BKqP4 Tv5yGxiM++<^Uu;+0CT?pI#@cu literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel$1.class new file mode 100644 index 0000000000000000000000000000000000000000..300ebb3e393f91f0138e9a2ccd2a975ad28e157e GIT binary patch literal 954 zcmb_b%Wl&^6g`udli*TQ3JK*^s38e23j}OHNUob83n!_RP!?THoM|(yv5_C`|FB^V zNC+X+58$H^cdXKsb&-4@XME?LtK;imzkeJ7c#4O0G|;S}hATD7RusId;hF;1mAj$b zO%1CWZZq`F(V|*O3`Kev#rx*W-{F2LqcAZ~k}Q=$VkT*v(A^SSoyc zxG+k&zfTk8m}Y0FkD@I0MNg_r#wo@}d;EY?=Wgf+Q6j_LzDQ@$RKuDM6L)l+gRbK) zS~}Y3Fs!J0E8yX-HHb!;KkG>mOuKO$#X9b(vir(CK#O5xE{Jt3h&30)`YVW)3u2uJ zVx1b#e9WM`Bu(rDJV``C)6XXuPWFVKGOVASh@o=8gG>>;Zg;l5vv+*Kp!IBL><$Mc z#eZrT#Zwt_+7sFfwJ5gdx%R;65|?9dj%}B?Dw}WDJ=ZZ-X@~2y)68h9uc$Iqv4Haw z7YThtkusq79qj05{VNJz)KmP1Qfc@Jr8haO5G>E3MzAu6Rf1X$Kchr^%k*!Q(Zm|9 zOc^aa!83}_VPk`05eD&9a@GbeP+lNgBD;+0I}I1n|JTut<-F<=Re%^8 GjOriV3G{9N literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/ChatChannel.class new file mode 100644 index 0000000000000000000000000000000000000000..aff3fd4c2a6c2dc16f9500267cd481886957ffd3 GIT binary patch literal 5003 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Raidable.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Raidable.class new file mode 100644 index 0000000000000000000000000000000000000000..1f4bf4636f302be1aae17d9238c62f13d51c66e4 GIT binary patch literal 487 zcmbVJJx{|h6g-#EK%u34s1xkTf)_RhmZ(DoLTZ75%}rlZm&B1`2l#Ca`~ZFw;>CqZ zNWj42vvu$8J>PqKe|ZIPhNBP%Ar1vP+K!c;scB9E8&P~OFv!Ryq};;Z8mIGbbRuxV z^p$$nMP2+@HL$hCVvzK(I~zX=y@x4 zm^kHXD=>`WOG{~KX1Sh|G~}Mj>On5jxk{TBR<18Kf6Yqks@gNsPqOkk=U66XU8OYC zO)TB72u_#kQ3+i9x5YZ>eq$taWioj^T~g}W0s<{w4G;#r2m}D*CfXjuPu#+`e|NCs RaTi^WJ?ybkpwDLu`yXt{iP8W7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/RegenStatus.class new file mode 100644 index 0000000000000000000000000000000000000000..5af368d4d233f062e1dad0afcebc74f23165569c GIT binary patch literal 1842 zcmb_c>vG#v5dMxWTehp_V$!5Z1GLbzwo57kDYt}>#8KQ()hSkD$nZ;c6i1CBb#y7i zJMa)ZLP^14=#=Si9)*Ws*p)?4TMvJTe(X7W_S?((c6I*v>$l$lEaK}TB-|Yq#kw;%x-9VZlIoRqR@5%H3SJ6p|$K>oqnuAyzvCiwoi<2eFl{h|5TR2|dpsYdAAZjZd=>+Lmt zS2F~(Z_lTW{A1IJtU#bqsh(3vsqXDt0;9U^TFvOVWBEH~$DtEB&b56Y@J;3Q+f~o! zLS^0SnoisFZBCkGmR$3g3dk?pt{tujREFf=8d6f5+8!R-L{HJMdoK0Pr!bd>cvlHp z>{+3av~QwPeLbE)VY%xhHDoL7(@vo@H#%NE4;EHvR7!>y`CV(%X6DCI!*`qKO2OOw z!(3JHCGH8V|Nog*Fb7>h755dqiMIr%UY+0d$aeNEpD_zEnhLh@K*3i~6|`Wm*kM~u z!8B$R?6UO=@7lbZ#f-qnzcHCCfn3+|T)N=PbZ>VaTHTOHxRdTw-7$k;DaCj4TcsPt zQOR#I?U%r|xLp&T-%~r$(UBdh^+PkPdyeN*8I6{vHOWsOW~YFK&>MuIAv7O7vfO=v z`5{TtwG12*)+okorT$-Lsj;oo1CniN8>)-| z5Ew~s;WfMifpjJlaLy630;80B3>PpCjx|Z19Pw6s zAKvkevUrb9Gnl7Lx1lEW@yhk(YCl7MwX}W$6s{MuNKbX9_hDqb}vnP?P_}`Z0x?%0H)+ u*%OQ#d(sIejJ@0mri`Z$OwFJj<(Rf2wW0)_$nmM#OhUp3_>gcJEdC8Z7Qto! literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Relation$1.class new file mode 100644 index 0000000000000000000000000000000000000000..edf87eb165c6510939e4fe7d06405ec33900056c GIT binary patch literal 882 zcmb_bZBG+H5Pp`ncWu2&1(b?!D2KFu@S@T9L8C!D60}zmYA}RP+wDRZ);)7C@DKbe zepVA>jNu3Pql~i`+Wr7cZg%FGo1K|^X7115UuOWG;6WYNuvkMCtr}U^EnISO!-AXk zxaH!ui)Dtle*aWuVifUDekw(5hFTp+-^lDVPLBPNIN%~vu}S@jk!MP$ewrnD@y6eg zn%fYDnf)z>>IWVIdf|TJ{(ng2#>r3_ zu8Rerjc}qcdL8aCRKi{u?KPKaFKe`?tl6?dvKDzfG)P}2^cf|xfM-9!&VJXwW9FNE zN%|}l__)yItBbn*K1h7A}VNMg{EJ@8Xn^*=@Mosu~Vd4jB8dI?mjC`h@bEp>rP3N@|TE@24^n_arQ0nwk} z|Il;P514A|u}4oo`=dP0Y&Htm&S&SRvr7V|R97$9)|zRo z>lsV;c5P=Xvr$;r3Z7wGZsy>n>=~w;aXqK(?_`#AQ)87e0pgUZ<^@Eu3)y*IcQmuC z3lQc6NXp8Tx}41kn11{gJVkxe6#r~$@NL)=XY4hKv|TkUeW6@h)tv|0s!0;bceF@} zTTZE)+K!enHLIA(d5&Qf#|Ga5l%#4GG;>9B4E7kf6)mkq-ji>-q$?XYEW?`+(A^}W zxw*j=x(IK>pyb4JM$yu|vO}iCl)uwf)V*25-8Qwo1>Z$yYOtA;)|{smw&u0%ARyVZ zXEro%#y0J;BcO*)*-kODTHe|+yi9$|p(1GaY&uhyuyV|B=XK7hfN*N?5g{<#Dbw7e z>>6&?(o6IfqqtUT%VVahdxnYGHL@l)r1f}&022v0%3ZSZBc)@%7X z-?WSmxLH#&ir5fv>y-T=;~ESZH?S$=J-jbt3#N<`rs*PIFRbaZVXo;8YtPE~6k{?h z*pw8_G!4xv=*(}+c!p6KLl~7nx-PGtj52m)>|#g4w=(va`HsmYT$VAwL}79R9|~wY zbj&HGDR4@V$}qKk!L%*P=F!SpT;0?Q9%cMyW7Ya|XsqF84;t%eWOS~p@m!$hm-Ia) zw`+KX4JuaUFnlGLVankQQ|dEJ@n@KFFvFDky$c9E=3!+!YlfwnRH@qbwr;HnxYp=B z!189}1ouYK9?@?CswO(rk9l@YB%tFEdR^4w*{Z!uV_S16u~!aJHk;HlwzX~)%Z@*l zsi-|&E0r`)=ia3j>^iP-<5XOGfl_C)=B9Myv#PrIkiH`7+?~4*p4?wvy02y@hv_rZ zPhYyoWG|N)Kr2<6zf!T$PKZk$=s3qcMSKh57(^NbhPcbL@-I<=P(|n!!u!MtxJoqY z?@6S84c7zx5wgc85=k-rCnB#PvVQ1@eugA+O^Z5Y*x#p`CoT4P7h#H-G}2f4ULcx2 z{|BVsd>!`LM!QU-Xs1X!z_z;RBwHNu@$efX3gae8L->e1eT>l{z8^@!@hw&mOIH!U z{tGemW6vz-r}HHe`4?!ReYuL(WLp*ORdnnh71QoJRV0HwIu`ap)&e|(KAa^;-F|>I zu!})}pOCJIP+u20qxnIUoj(f#8>$EPGYRRZ(8ED7?2GjD(W6vwX1{_?dd_lsYo3#S z+WP23KV9TSie{j}`%r`T2*OG@OlHSV>%QxC_bGCpCihqAFLRRn&oB|7pAOKsrYq?F z5t8^5#PF{N&}x-7(qOOk2%J#MB>gXgTTSit9A|IzBzu!h?e!jKZ~P>CQK6x%2eSvqMqub~D#E8%J_}ux3=ySc% zzezPrxy|Lp3VL$+NCmyQ=McEFYTcZm7^rXQ_N0T}$>KK2Lb&6XUV=0)5RZ=7|JRdu A2LJ#7 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Role.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/factions/utils/struction/Role.class new file mode 100644 index 0000000000000000000000000000000000000000..1c9637b8149d8f9ba689ad0763a42c5bace5ca17 GIT binary patch literal 1726 zcmbtVSyR(c6#j0TCbuDMaRqlpZKD|X4Mb|GiWaIwnPK!Llz`EYIBlvv`jfP-qod=q zKg#i(5VT6)numLGzI)DhwtJJGzrK72a2`$`3a;q5iU|#48YXp&;u>Sh2?v%xYA3gGIODbF?(1I_Zag zJSA|oOT^i&No+-mi!_b+iBG-BJN{be#;pd`a=Z&)cV}(Qi|3PRZZ8zKnh-4+l+uyP z$$F4xoGozZT8Bp^Y^_iB)TJppKDraN8g=ic&m+n6X*|V;%)k-8He&{AxF;~t!|66q z#C-!Nv0&gJ4jDL%Lws{Qcg1T6WG&0$-EjkZu$OWuN8_7&8Q$8*s8)8L$F3g=2!i%A zq|SMKngn3r00RSmZwL2AAXg8fkjnbE)3xQNUOlGLFLVyA9JtNqL`Qqm3)VR!W+lI! zoqnm=Y;ke=41E?x>Fc9Sk8mjfNlHGElyM>{QL@NzBN9oy0ER}n+oY?=<0y`S4issJ zN%Et&AwDAW1KBsE2^45mlf4|-7h$FL=ZTj+bW^cDBliOe+h_imG3WF523PvuXrUYmk#3HtKG7MpKGDDLIF5de~ z`qI}{6kKK1<#Ydlf1p32PqlkbMhTLK$!fD!&SlTOe&;)T=FfkAe+gh5W-BC2E11Eo zjD8t674%?^hg#W<>hN(HG_rxtf);5g|-S8~esc1#LWNNo*Sl-z(Cj?r}ZPW31 zBXA{*t*>A4T`cI1UNp<(rET4+Y}xwGA~_aF zi>5bs$n2}BQ0O#BQJ{ld9bs-aIcq@h_@rS6s6|s;nOvw^_PSY?@hxp;Y8wGH>o{h4 z*48T(pCBO#JrFn`UiKV4Il8;S>HXNGum9tcwC6qDcuW`7&%v+tMjbqJPPH@{<{*#U zJSFc|%Z7Q&V%oRAeKf+Tt2oCUv|q(4?h6bx(e6}Sz?zC7JWz24y(*G8&5hIL#yJ|o zkw;K#^RBna{gNGx^YEF9Q}|HEcjP2QPn)p_thcAB;u8$W_+G_BjH&nmR9^vxiavZq z)H|dZ<0xaDT2Y7)bpZrohV428<5Ai!6&_KiB{E&Azj!_?C+dzbXy5gO=S-M{^>%?; zmT8{~k)V%(K-Xb?H4pSA@!XvIgzkr4p`4>zRZn20K2(r+U5djao9phNa+`dy@JI0kt6zpBvETxNc*`& zn8>8X5g#Cm7|n_FQ13ok(!WL%dK6@=s8M5|~3 bbOtv_CxR(_L34sumvIkQD1%Nc(wzJkkQmN6 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/GameManager.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/GameManager.class new file mode 100644 index 0000000000000000000000000000000000000000..8a5991cf5c39290e94edb479109ad2c74a0cac23 GIT binary patch literal 757 zcmcIi%T59@6urd(1Yh_Uu<>qm#gd3FFq%j-VOPe>P-bXJdk4eD-{4yXtlz>QqeZF$$Pp#Ey`W<{8IqQmPoX&#p1{oa#+meB*FnH=w7rc$xO(XM5J znUm6tHQ89EB;dI_GB&|!o~DY?J6F8HhfHqB?!A1@DswoHE6y!VjHZ5X@^{k6I45BH zFOw?bsEjjY(spcCW3^N|5pd8gt{zQpV;ZW=XVeLexRY8YWG@zSEd^Zdu2g6OQYb=M zrysJH3Uth*PVj!ZpqLv11k`+S0qT*T4iSLIIy4Gw!eN0eXcu?{$Nr}e*Pk^w{RWWd B{6zo& literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/eotw/EOTWHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/game/events/eotw/EOTWHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..60a24d2fc08e4dc15cb2fcc56bdb98375da8ff98 GIT binary patch literal 6183 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/BorderHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/BorderHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..3df4b3fa994b46d03d2c71aa38622451e1a93b77 GIT binary patch literal 5937 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 E7i+2`2><{9 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ChatHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ChatHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..c63ce2c05a613d0c369b8306c6d65aab6a8991e5 GIT binary patch literal 6987 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 My|hYDfI*&~KS^3&YXATM literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler$3.class new file mode 100644 index 0000000000000000000000000000000000000000..34aabe90405ae6076f13cfd7dd71c9a8c6e6da31 GIT binary patch literal 1080 zcmbtT-D(p-6#ga~vu(09vBp^2s?|nK)8YyhFKp>WV#Pq}g-SrYnrx=Yn9U6A&PMuJ zf~Bb71Na`IPa&S!L`$EnW$?y4td3H}$B?O4OSadxGWW{=@r?IJ+`OLn8fkZtOo zU?{ew5-*ccS43}kHzdhoTL(Ps@JL#ID$LsAs3R?qLU9@9?#-OIBa_N~E=ZFR2JYPIZTc_w>O&TceAAr_`1LLHEpVdYe? znSK%?*61P4(ZkA=N_GGMoiq(Ap??9FL35*9lX!>DVtw-%tiE-OO#KAT$JDSyG)IQO z4_qNyNu7&WM432pN+B6pTqE5Curc*0*FPci71_6r2_$xZfBDHso}9q zBt%Vo03XVDW*1{gh!?QQ&iVh&nRCwk`u+VUfF|}9VPn%AcO4XQ&&GWRd2E&N01s_! z+o&qCE z#GiFI@y7l!_hYG5PH(Jst44r$+?;I#U{)1F2+u$ndd#9iaaeyVGaLxAjmk zlzUQ%qhvY|;d?#^NVDA2J`eglltw;R=FR1(BVDCL*baCU2@(&lQDCh}ceTPq(OEYI zIq!55`r?%|MXX)Yo2Q@nj8nxO4 z8F+o+$2v6Dx{Vzd4eZjiu0E_*k`h_9SXea;f0xT_)e!dQ$VizU5T*279KzQC%1 zoSyG%TVEQ;8(3qA?r|qkcld$u7_Q}|SGEd`YSmVjaFwkNtOw0+8HOHJvHip}!+hQs zMd_9tdskSlQ2WxWT9x81FDhHQzE$D$O?bYQm9+v_d08$CZ#58VJM*?{s|AMb)Y}+3 z+tu_YLw8n|1Vb!uyJEdjD+uoqFE}I_%*!HoHo0f({fV$!hsI#$TvvEmhx@*u?ZR8Q zmzbqUyS#==W2)&;i7U=9dtRFwZmnilmS`qZeH)4wt82X8^w_{URc=EzyrNjKby&k4 zay|8w@6nO5Ww+=^-*(GuLRDnRz*i<7;A<1_;e8X=@UDpwj2U=nVgrxJwux`BX<`eH zO>E5e?Dr;qz>nG(H&H;5;bu~7%SL=(cp_f49Y>Vn z1ySS;U&If{`FOGvxE&8T5>JYfElN`cN+tw$O_WhFVdJTRstHHCFw)|J?d}mtrFUTE zl&Cc`WTFPwghZWq`sOrE%rcC&oa7fPqSPQ#TZ_%+c-U~=fKM~$JfyXr40Gqy>QGgp zsdR&;yf1A^|75DI6?96hprKECSHqUIIHQR;+!9t>i!&Hyq1Jhg=roi{=QVpQhr4BK zLwUp=Vqt^;iw6NDm-;Uv{f6xBxBb>gn?18bH-%rf%Tm!|<76>Pex2oiA^?$_*Z&7X zk$S?f^L@(R#TIN(TZS-&xurSHkn9*`i%t_qXAZYjA&@RDE$NJhm2gB|dK5@I>QxJ6 z(iH4i2TJVOs`0bcP`0CNq3=^i(k&fP9(R3*D=JiH|2mYe*B5SSP53@9liKA@VUepQ zMV@=rRSc>2bf5NHz`xf>ia*hklQVI2R}>w=DTV=GsC!;bdRgfzq9I+kiPV$U+MXJD z-P}$7#z?cBEZwP{^d{o;YF?#hFf=fr?=*mBy5O{g{zh;ej4+^gF@!FfW8)Lgz{V$^ zAvFFRUB8kjgb!%!At2Z!KBV=Prg99U_=t9-)HKNmk;K@E!N2I`)knzj-w--RH^UJw z*p|1n}AZ0S#f14p=cjKL5BrArLQ7-FY8 z;{`4s<4OnLixME(T|mT<%X literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/CombatLoggerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..90b0f2d249c87df6123fc3abe48a80f6adc7ec8a GIT binary patch literal 14235 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 L-hPWz@aO*kDRTrz literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DeathMessagesHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DeathMessagesHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..7693176d361d630ac5b35b6bd2d89c4ea258f752 GIT binary patch literal 4877 zcmc&%>35_C$)4inoN*CG^+6qIOlyo7fyYGAdk@VMJ&z(26$Cj|or|N^|&3o@I=ic+~eKYgl z>(2vt75*K<-53cWj?oZy!m7p@jD;``JA|{CkWoSwlJe)sYf48tglaq-LI&9oT;wV- zspF9lYH_X#Q+QNHZ?42!`!jn2a6v7TX6~c${WC$O@M@8miGWxh|{6sZAiBE-a0Z)sqPlxas zd{)QjbbMaN7c^AdYdf}kzlI&*Sk{WCoY91R#)>+Y`$#G?5gm`8G2^bCaG&C-wNW9drD&-tbm{V59Q>URl97|=!q9eJ93EPcY zla|AO$F<$5XkcHj%zGHiy)7CdD;LwCCzab0iL>UU8BLhZSaitE*v^>vG~}A`i2*b1 zMMlRLHEbHp(TSvW%+A^j**?cfxuzFw4OzsyJOG!FNelR);=s`2dO%s=XBgO z@FHF^FpLx4zHAE#7~Z?RBeGZY{anMw03^j%OXlX}kdykn^nO>nWznQ5vrie2egIx<_uv`gJ zVhj$WN#N@O`RN`v-R@K(MFN)XAKb_4P#;Y0+%knL%yimvM!n0;e9jJyoVDV-#1y2_ zFJctrWoUlCe?3`hf2EsJyLbukdt;xSk>*HJ7HBG*Dby{{2YY*n;Y4pNcIfzmGp!JC z&3ZUzCP@7Sgqg)h7B+;t3suj<)R|}10h?FGCVJJlf;yt%o~6(DTrCXtNX73izbE$> z3EXm}qo`W?Tt3)4)XR2LNxag688PyzU*glhRD6nbm{~qc=#EUKS<$vFWVV00)jrul z`wap57Oa!Tj(3~UeddtR;qD@NqoVDi$V{8@aVr{6C6n^e;a#DRr!u2Q*&>LnCT^x} z*G$-tT79`hf)$D1Ed?Abgx!hl{D8U}Oddb)D*5D%ga5DQ+aZ*qgwM5+)~nE_Q4)#d zQF;w!rMz8$OS}2Mnwx<2D8~lWVI%hNtzL=YHFz!Gr~sX~mrD7$gZsHA${$08C)w1R zNBKb8O@!L=sJMW#XIdj|oYTc<qp0zrZaoj*_Td)S(&`9^i;x?sg&SDex z;&rrFj;+{-F52wot}2xL2emqSfL^{zXpI?It?G zH`7{I^DJslT*aCzsLNw*-MT#1t6?7Xd2EQa)@@w4V`Ff~G&aQ;(#}?YPu(3{ZJWks zKB!<$vVpoe{R&TZ3txQg?KiQX^40CcyY=ZsdfJQY;q*u~f|A~=lKd(oc3AV;NMK6RA7jPo_SnOI&dRS;ou zQ8L&ZnFYU{ZZVzf>+bXiwJmux5-QPc5DyiTg$|(Yc|JAcDDBIy8OMB2nsMCYQsEAv##kvw0eC^zvf{kd#AvnIctk eo&SI17$A;=#BrG34$`S3w~s@^n;4K1nEwL@v^=8# literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..45f818f2efe836d8d8d220e7369f1c5f344cd655 GIT binary patch literal 1151 zcmbtT+ins;82$#3Ep#aqD?&X~1r_LFi}4N*iL}NhRE;#f=-sePVPrc?b{85R#m6wQ z8olrVd?@2TyIeqGuh?YgKg@rc`M&w{_t$R#&+#k;1NZcDKaCY^t>OV5>g7=yWmF72 zHt>WYJ>gDeH1-7rwoaf+Y=1g zwp8N%_@XPk6W(>mlW)5=cTTw{wLNnt^x+uHBc+7ba=7mcGG8w*&!9`n(xXS(B#JzKn$daBa@E^F^IpKvQNeT9pPvd5#mlJrKPyfor`9N%Co|RCKG&CA!enxGG}F zf#AV_VYj*f?u59w$j315Q2U$uYKwC-F7TFNMfx92v%M1tW96%X|r z4BwH|rQ^`0*K}vL4wL0kWE)`%GfJMdxE;o_A_W#njiH21k_p_wUECxsPdpUd HJ*55tF&8a$ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$2.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..4ff7b3ca10ecdaae9ec36faa96abb4a819229e64 GIT binary patch literal 1161 zcmbtT+invv5Is&pwhh}R6ezt=ZViy87grT;;UbY16_FxDN+0^>Y}~|T>#e-rpz6rHg?MV~!?Ncp|RgfX%Li%^JD+dgPX4I7o z<(AU&b#mO1W?ytd^31fNK!gXvC}*EL3+`|X{!6W;X@(+>C7I90>94v)XU&^L(^zvI zO|`8E27BV*gnI0ZG_z+iE&hrY21$UH{9K>{=a%N(nqS77~vF33M73K4-D*(N?njTR5tm@ z6RSe2WX#*r45fKTrqf6)b$36?d<=ZF(~(Eha{Td7=pJudL;O*%^awqAjX)uz*iJQ8K`_g;S>D&SL9|ceMiwD=HU>hT|u^hB3ne6Ev3kQmUE7LBaLNc3Y?>5 V4)a)`xqwC7#8q0ADBPo&zCV*-It2g# literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/DynamicPlayerHandler$3.class new file mode 100644 index 0000000000000000000000000000000000000000..7ce33747c76dcca2115739ad6d180dded2d7cfeb GIT binary patch literal 1768 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 R+^N&l>1qYH;jUKI{U1-X1`_}P literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/EventSignHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/EventSignHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..6c07229578bc22fb80ad6744d645da9ca6a1a1d0 GIT binary patch literal 6139 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 Jk=HW3>Hj@onmYgh literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler$FurnaceUpdateTask.class new file mode 100644 index 0000000000000000000000000000000000000000..78766aca8e273d6583a6c60c49da2de0e52199d4 GIT binary patch literal 1114 zcmb_b*>2N76g`uqF>%}`ge@scTN)sBOPvA|TUgXc6-c2Eq%DFcCeEZWcE^zy_z*sU zFF>N8^1ui1QHVRXk%AB}6j{D==WcWEoipEmeEkOC7H*bM!bKfAE-7uHj72OdaaoCF zC7L=pu4uTXp~aw$;y`j+FwFP-VBZ?VuIohB!1Ha_+Dd)*8H&-^37c((PA?R;FNdBp z5|$LvJ3nx(u|48;MNt5W4Eu6L$T75O1Vw~Jd67wp}+az|Tc}1H`TX+oj{+*myqGzGgBg)Z7 zqXeo|HQdBPWI`20658#OKTm7LTs;IczaVF>9U}iR39ONvOWe1q+#S;I;uP5y(-fS> zIoeTjQko^2IxI)U>u6+0Oek9UHq1}RtN#cEhMCvzk1&%%YA7hk3ph)wPC+GHrDXOK8ps!0 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/FurnaceSpeedHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..0217bc4071c4f124cd6abdf15274fcf74d29c349 GIT binary patch literal 2491 zcmai0T~ixX7=BI&Y}hQM&`K#EVufM|A6vCzZLpQZQbH4ogi^68T{efXCf#LrH+A|u z9B;gJ#`}6fMQ0qn^(Q$U$M>9FU^9e-VRrYtpU?Yw^3Q+2{|Vq0EESh=OT|Z6OyXnQ zR`Ch$^dgHT@%3pEcX3a_XGtWmEFL)(d3>(mz6uR1DhBbOn+%D+m>{hxC@5G{@Q`6( zrQzC!$sZq944-cqUX4L3*fw|bb;I+x$I!E6*_MBoVLDy(xaruHy0y=BoBQ88ZcRTh z_YKpx9NW`Z^DEhzZH9Q>sc?o=(X#n^aAQ>(>_D0=!$=!nObC&{OxS1|GZdKoF z)M}Qm^B3Iq^+PG6H;djEEE#C`UfnS%W5ZERNz-$JLynaFAi)eH=Y_&hNUU4>W0;Q$ zb;Q8XSN09FRx%D{G8GgVu5C7K-+IosEzhDXFWa``8?rzQ6X(s#XwLH3=hz{t906~g z70VVGaNL(CwGg6bS!oeN8x00kW{d*ysYS-42qUSK?5u(k$(NmmYw{IKwA65mc3Ak% zcwuO`ieUxo8XjRo!511fQC6^};W4%qJkjtab~Jp2r<64fU*j7x7HNRMcW7P1x7gM2 z42FU|4JMv4bm+5o{W=wzJ)1g#wxWS!UqclK40qa(T083u3+M2xi(Vd!^xRX}!SAJRU#-C~?ig34a#QjYa(#9NS!i}wISF9o$MHz33H=4b-t zAZdXJ#WH@*dQ^Z`@@C<|>eg<)Sja!z%@rTzX-&77+o%#*O%aNG-7;&uk_(p7NHdl| zUh+shLE>SdCN7i!bTH5t{ zQ#FGy!}*fc6zB`K=Nq<3=x9 zs`Q}kg_SI>(=~h<3|HtD?xHs>Cwg9^Q<2UwdSA-Sz6SdZvCQl-y1MX6+}9YPXFo}R zG`lf`6lspqX(-Ua7{=*D+ISliWRc+=@)eVoemGs-lZQTQxZ#tyrd*$ zk~~k-_Y`hO%!{Y^7K#2Ip-YpcBw}wcreNk@N8BHUdJF7-#O}3W literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/GlassHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/GlassHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..6af0f1f32b41966a4690a63a0ed794053e2d8a9e GIT binary patch literal 1454 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 CK+r@0 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/NametagsHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/NametagsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..a377b39700cc855b661d5f619b2f60d0ed105db6 GIT binary patch literal 2786 zcmbVO+jA3D82_C%bV;%mS_+hca`8e-DXRzw1klhMvFU}B7QstB-JT>%lijj=(h|Jj z1@G48i~2Oa(-9lw*^rfC`q)&5~18@Z2M6eq# zL~tA@)NwM37*2(88fT(-5iep67{Z$u)3C-8C@BS=Ou zim?dBF`-1yt0Sd&lM!6NR2b8^sHj)eaVd(+zTB%y?lldsYj}g9<&|2h5PnS{}pk zq$f&AlXELw9a zNEML^ayi3AP`9Umz157luKixj$!kMOaEPjq~W13Es#=Q_Sn3Sa8@N{M}qs|?5f zUw<(iZlG9S?*OfdpaB?8G*Ei9LOpte4e(BXV4rK^0Y8KW5_WJUcb+0*pOCNwfZXEUyxSLpc$j|TURj{qO|KI zw`^}j6dAVGuF~<@E5ekqp34l)-D;n9)NHB#ESLRGPOXJd{QOj$)^P0}sXmj-7QV0` z>^X+MM%LFX%V0i9F?4o3Il!<{I{sFt2&nM&^Gt%P3L~lpnzF3=cu;kz zX{T)KYC$9j|Mq3{D*Z4ul^7uHEh`OCHA{@zlsnYLF@ssgT2|!ND>58jx*; zAW2x>s8FBRx&~UV1T|3a`uX=ecG}7mT&~8P0?qSl@m#LxO$fI-ZDI09OiNHEovSjT zKFm?4k}Bm>lQKozv69`26fLM^V))#JnTe^?L~@Wi^wMB5Ierm)=?BVg`pE+{fvIl{ zo%`sPKr{UT+JW9(cffwC2s}w=gamhNtli-ADoZ(M?7a)q?{Sv%NUz zn`Mi1-#~Bo@1m)U=H7bTasVkf!?h@BWFgr^DPS;93# zQXT=dL?GRy*KY};?+BzH(TksP2*2Yw{7pYU6|hHqpsK*$M;}QjVDG~qs)@Y(foDmh knY@&6n5Yn*r}s8!|6o|d5&G}iylY=HN@_>xp$W(S12>Bv&j0`b literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..1f5ef7dcd90ca9801f8d0dd5c6750e8430ed9f8e GIT binary patch literal 3327 zcmbtW>30)V6#u=nFljo_5LOW+UKjL`l_1u1#GElmu~9rZiex;Yg1Jh>Bez}#)}D+IK1d%@f~e& zv#4cVTQ`d&vM}dOk8*SJ?^6r1F3(R6@`?{u0Vz}sUd|PGD`}VU*wR+l4;jlYYB_Im zQg=0By1F~9jTn4d*xeFNbQTVUqvEp}R$f_zA(pi~J1_R?(v2(YhPF%ELzecNdBbwZ zoyaK%m3-UUQag)!e&^O+8*Fbri|I_OQv?HcodH*cwEI3cv3E&qSz3h zJdoPanM@JTr&TOvH!|Mv(Q1K=CD*!{;l@xlIQfz&cvPZVub&>Ho@oZ<5&x%88FpRE%?t}1 z;d+(XC@?JcZ>Vi94D<4a;1szw)%AyzIwtl{fo6UH9oIQwZ*Vx z&cZol49bLM_w#&-AsNVtj52YNI8$9hIbhYubb9k^rP7z0Z)tZGYNP5)|2eXVF&MMG#rmMv4uaYtx( zTGVMNfDw!O)7HA6uPRB<8;_F?hPJTqfGcd7ncbITB8jML1uh|{&t^o(D|BMRzq^BC zWD)QtYCEQ5aF@DUDh%O@PABz>?(~-{?zG?I4>L476turPcTE<~s-Xny{C7|z!Y=EM zL(eJYf8X%X@aVCT{?WmKY<6IHi1I&FCN-^{>aE0`uykDz1T~%=>)E@vM(f%u;u@D3 z)H5$v4Oc%$-8D%cwLl~umybL^Grjo4X`ufUHh`*|s5Bxzr=`8) z99VnjIYipequ~cBij6eRr-Q&6w9~kZct8s}u!&|#NtM*A&;_lk@E1}iuQ=NNBO)_s zynuO!SVH4qz+QR= z%^er8tdssFz6KxPI{NSinW~VHE6AjN;_fGe2hfQ_g!2d?lh~61sw(z=T!)*mnK19i zVr(HQf~|C_8SD=nQLv5v;xU<{RkKcEo^O0_$5|}Dh!qi>#!jNI^XW6_Y_Hly2v;Vq zPpq23YJyIdbX>#@41q~ASaWa=`a&O4E5Tlm9*W4Ei+iy{#*BWw*oj*Rg9JAZ>~}iY sh+An9K{s~M+=$z-n`{LV#7ojFe_!God_^|yC0Zr%JLsx?7{Hx>0Ta`)^Z)<= literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/OnlineDonatorsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1d48724b1059789003c01404c7b55f9d9508450c GIT binary patch literal 1218 zcmbtUTTc@~6#k|yw5|(kxd~oCx!8g-V0_G4;w?z-nhaw`*tC5O!;mexs~75hT!yLO zOL!jg)XJD|YaMn1X)GO_{=0}y`?`?wpaWYyV;rgmKeSq^Mx{z1-eHpJNbE}YEOP@( zT6gJvJV4RM93C-D47iW;ldC$sF~i?(Y15&+^05x?V*{HETmOT{us-~_dr~U}5vJEX zhS@|ncr9(Uq~+pVD9hbr3!)*z@olslUR`BSSGqL4+YokN85^pIny_3d{}XTKbgGU* z(>ju8LT{Unikdo6NowK_!`o7DqmmvW`KK-~D+dSVn@$roMLi`(^LO349cBg3Xhg?B zvqK}AAxYh*b%L~A(laEz)wN5o)eB_4cVi}L9j7U$k)}DG#T_Ec6lv4FXp%Fe(K$RM zFQY$^sgJ2K+KpPcLiXemx!?*TCk}s<@bi->Ov1Z>|Jh~A!euHVN9z+5Fi-mpS~qWG kTj*yiP_D-m#qgA(eUd%PJnb@AAX|niy-(63OaDXk2Okwj!2kdN literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4563223e1f5f86c6f6cce011d8020124d6d28143 GIT binary patch literal 920 zcmbVK+fExX5Is&pmMjaT;oAF!RH8v*i$no66%X9hN}&(5;@#PptedSZ*}L#vl|Tp{ z`T_l@it+BMl`6HBveJ${%GZ8A0UT8B4snp7bF{d+OYJNhLmJU;Dy*=KX{st)7l}a>|W#ei^Je;tatDrG(i}xV3`Zw__4$ zZ_pf7lPR*Rj*S0FXC@Ly(h->dW9IcQ{G1chLlq_3N;NzdX{-kxo(6b^Rsau^0UB=i z94|bq1Zbm08jmM&dxK#`n_<|`MkASqHj2d{qss{Q^1w-^RH4+?cnugPEk73rJf*2- z$}2zSiVuZh*#3{Ezn;iZ@m9)067HMXTgmr96G)Ia=ouKCnux8U~OS=mF4ftS~ zqTMd}F5-9AuE09isC>(F0Fq=1GG(!H}0Wm!CssI20 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/RegisterHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..c89d89e6f88648e70f4ce78c43c69bdb420f60d4 GIT binary patch literal 5979 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 Nd?(-KwC>~k{|_gi;9md$ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..f2736d1b910372badaafaa5c5362a1adff3acd31 GIT binary patch literal 1655 zcmbtV>r&HD5dKbE8rmK%auY!XrD|I)0ReB^gjxhGFau0g^iP@|XlO{7B!%HMd=nYL z!5=<=59PQgEn_=Y$C1u-H+%NJ`S#@dkFVbVOkpE}7Q`jFC&~RNTJa!)yGTTlL@J75 zj6^Vsu^3d0OEM9|LrhA=l!9pmj~LpIG&8=dnWkawEt$4nVi?TY&Yqetmr91G3d=LR z6Lq=9Vum3iy~GhI8OH0(<=LfE#`jGZHEU1!u`^Oj?qRQJxbbm@g{&)d+bWpGu23!E z9otSxE$X|P?ise_s^nTQh2yH*MaMqY@}@}J`D2k^shrDDvxa4O^9&yoSBzEHMuV>F z^#9OiGRF`~+XcbUmNhJ~UOvbRXInPG(2=!u&CF?zA?4~}NREYpuUeLH(x&FRg2ctE z^%b9>DFvOfMKmF6if-9uM;FV6tfRm2V8`~gBaQ0LSh{Ju1dTP}743q8#~e@al%o?} z9BpXlxP}gnZrtX0h8YF39CMggu)y&giwc%F(s-dD!?BE)94lB=@QUL#vK(tzCk$K( z0`Uokp&GopdQlY0gc)_o2k>UuvMM8=yHXy8PTTqo&BK(q%mBu?qmnxzZV6a`w<#7;7YLApp=>2?ja zw@Y{f#0lX(C(M&3K>u#^fZ;klt&kid-jy0Y151sZA&?q9LooFPp-;YbFVQer1KYSk zw8xLog+AOQi9F>lk)GieZdaq)WFtMMPtlb6jKDdLL_ui4EhC5lvJ6oBcZi4R8#07`dWw=&3vv4W E1bSY`*#H0l literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/ThrowableCobwebHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..cbaf13c7e0ee26248e1b25ecbad50e9370b6d106 GIT binary patch literal 6161 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 AA^-pY literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFData.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFData.class new file mode 100644 index 0000000000000000000000000000000000000000..4dd34d052baf450ec2a7071e8230c0bef1c62b98 GIT binary patch literal 6193 zcmb_fd3aRS75}}=@+LDc3j;ycuqlKLWk6&p!5~Rk0s}#!AQZ%x$;)KOWG2i^f>^C~ zu`RW$UD56vw$)ZpLPD(C)=I0bw05zJ-S&b{ZndzO3d z+2*L7c!tL3{~cR`Hb}7UGzIheLP-Uls7R5FW+J08WXL#{@hs;It?jmfacA zFe1BA(Q#HR98>W`kmi0}#gjp-!7&w2DNwuhyuMu@P*4*)qz~!Q!F)0mC80?{WoI&x z*7Ji|L%}WMzpk^;l%7sRJM-COI?)u%8SzZIJC*D)qG=<4B$Mrn_Qrekcs`j)=c2tj zzZuzFR1`+Hv~FtS+SE)n-n8CN4dDw#DhOl^J+;I9?(0jYQaJ@my8?f=q33&vs9id3 zh?6}ipJ|Gr_wjo|9~elHs%)i`i)?C=bUnaXqzL z&n5-8iQar~l7_FmB6m?)P9LIZPlIRqLnRK+xCepQ4oq0Xp z$Ez2V%cXd2^U??V<=Iu+1w3py;9$!10OOel6Gpz}sOA55x9eZ&EhGpSk5o?$mi#FV zi!b!Af)EevDh5G-*fuK;=mJK9SlDI}}X5M2$p;&4N0Nt`U}TR*L}zv&CVOhGuR|D)`?~0rr*C{-1dtSQk&( zsTJ(Z3})lTrlh2eW*3L0QjaurV2_6NxIx1P0WE0N&?aD`fK386V~d7%Y}K$$Kuo}P z0XqaVVV#PnHGBi#R50m+G*R&_4bQ-k1K(EhtcG*=4xKIaPPTPqqOz?!nfAA*^M+a4 z)ge7KXms=_n98Jd7-^qi;jAuQJI04(ePs$dP70C79MW4dnUtZYMdm)|Nt@2Y^)4?n zl*|v_5#24&Ds}DYT;6JE^O<{>=Ag{5oxxr7({??roA+CJDb9ZDR4yus?_i^_CN`&#A+noOM++Mwb@>Meaz>U>8j;7jsN!+yNw)beC(ABkrs_aSj~g9nM(W)S zr9OOt9gg@ZB#4UwmrBv(YID}e4W{yTP1$84wAtH}OtZx|U&;_yahu53PQS~nLOF9> zOmiMl;Oj|dbM)!>#$C+n5bvMYlj+RZ8kWGM(Qosc(%PR$^a$8Fo9|w6 zl+$>6R6A$Vy&)HQW6fbdr0jWg>3E&BSP|=_39bz;5iZE~2!-XP!DwE2wH)a| z$&pP6Fj8vifO@)UF~_IXjDn4vpgIY4&QBSRPj@jQ?&Ab?oG*TY^V16)pGuBAZ#%LU zPvI8qr33fTsU9c+Zr@P!=vk8d{P3!)siSDDz$hXLotdj3Sjgi>gM#GmBL2mJj1v#%3fu zdl)N*aozQi@EmK`90||0cB`m%p1t)o&XOpeEm2&@SPnJT`6Q0Ht&+&K9Nxtk1rucf z-M@$~TgK>HONX`6WjnE-@Bn&nkPg2McOs5^(T)3&z=P<;L+HaPr0@j#Ibf#oA`asv zWbra`9RKp1`HtWf+-^QfGrfF@alfCBRY8s=GWF7ib1V`Exbu>GDsJV@C$C{Y-U2-D zc)V(;uVJl%G z6s%bX>=ToVm`GIYF;m_jPLaK3t~xDp%&DE3>bhd73NpAy;O9IrDT^<~~&l#UW!B1>=eaWHT$!uNnHRV+=Zj5qErVGy%5OHzQm?auyT;_UdY0b~Zk{dntU-4< zo{7qlu|OVdh&9A|z>+;PSzae9N5%?~bGy47-$doeSR!(cy36rTRE~@_BIgcwIqF2^ z$XFzD-pHz4@Q;TzP~K|}+r&iW$XF$E?qVG*$SJ%#{aiUwIWm@soV(rS1Scv-x`N2L z$6ZcnqH<&`6gh8pm!nNoj*OKe=PmAX%uebo`WMR!8B6)Y0dK|Im{m9Oon{f2KQB9$ tRDZ?MI>Pp#d@l!~w-;s=_GrmRAT)+G9H3tR7^>wO;~5pagR}~~^M60GKx_a2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFDataHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/data/HCFDataHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..9417d9d7ce64859362d8030b35a42bfba462d0bd GIT binary patch literal 2003 zcmbVN*-{fh6g`~;28R(N?kld45MiyU*QD-`n%!*SGHgZe!6#7jic8=3wmBHGaR+xhaW6T&Z{dN3VGAP+?ITi2{fMDA=S9K~RH-W83RemJJ_sxBvj3L* zS_Ud|C&wp-^NS3b@t`Ca4tY|EsoKht2b( zScH*V;+h**PidY^His$7)oQIQ6~pCy?3f@Kjs5SF8!8-PIW5w!l9#=W)tyF_huvzpE2pCMAZUeIjqk0OfLUPIJFfc=bFu~7q9VW3ex1SXXa;*O zsD-|mkfu70G+*lAJHEypWO3NSBL|Q1#KNe9F^pSy>fjkBEIfBGi5HZzgO_;az(di& z6s8@_;IxHV2d^<_Vcx+4rWqdWUB4{}uG7LWxVLgm%c_=wx*(}Zx`Z8-3el}{Rd(leC{>xrJ3xT3^#t-Fw-b^7&tC43 zkr(iiNjII#Q}CH8iLqcF){68i41K#Lw5`FCFq2J&v&~gOFPGHoR2Aj{q>N5B8f`oy zw-H|xxQK)FL7``zzAkB+sWEBnCdnf?MRT^l@C9rWss6%Oq|^9Jdnp{Dv5OEO%{J0G zL^?-FI-cm@7_H1NixW6W7O8P?n$C>nk0cq*zQQIlpOE=n*g)GR+KU4lus*?}siVFm z!~x?l9XmV^i`K`{K_;_g?gY-z|2!_C2fdVv3E)Cv`fmVzgg8qMO(5q8n<6Y=Bi->6 z-4-s`qzAMU;u6i&X1G!hbCRT(01D6kicSWKaRbg40d{C!o?5>1cC_!P(pMuu1W=7sN#Vts`ADYPgLa>@Q}iMXLcozlyyO& zhdr0>KHYt~zwSBvmw*4^T>uAgJ&I0Ts6jiPQiGv}aW&-BFi{H=7bPZZpH7LT3VmnG2<|Hnw{go(UD5+sy4bN!!q#{47;ZtgUPQ$0w z{22|O)$lo`>GNuMK1$*jB)+KOOB!BKq%TMD6?|3VYf-xPb%_@RLPcw`Ah2uDb|w?! zrRizQO^oO5+;n1$j9v=3^RuSF!-GXLXBQ^&)Fx|_xGo6^qT{Lp8WfzKxDT6%I zDJGPZJu{z3m1m_TOAXXiW4Y$cm}}&w1zP>~tiqgGaBXKkkzSRcc*K~oO9fXzqy@sW zj+LVuk)u|@a*qi-+veBc^LVp<`qfr*ES-*@W>k{)1l`#-Xcf%i(#*K&WR3AWDfNSP z&d8rO982vh#E?5>6$OrN!Z!vaI%&H7^ZhD00;j9o-(&U0H)lnkwTned`R?UCU|tc3 z4PG+lj6~ijOeRuSa^|ecIXw#Jd3|22;haxk%yq27B)R&G;hKy?e%P4tB6Ca0noQWs zoIs;L?B#5hZ$l$RmwE)6ZzDoPxe8ueJZKFWvtH08z9I2V7M?^>;#(3gvD#P+tT6$} zNGf0oG_}P)sq@GY=!z2$09W6AJLU!@F!ZE+TYM#@OJ7NTQz z$;p`mmcm_~uio~nKv#YMbR5J1hDXQC_zrVhweWR(7vE#t zbbKFIb^HK7lz2tQkMLuf+L%Wjui_`n_lWJdM!t2xVZL?z6t4;F^=YqiMTwv3_&Huz z&i;aVN!piNQy249wkDm|56riPEFMlXzHMzei`7Y0WAhEi1F z?`EsAbfMG(a}t{vXhQEn>W-){N;6aXisR3v} z2s=>2H|SRE(uM>qIY(a!2i+Z|sm&gqyB}1jIdbf3UwH*2s9#1yPvjb2Bx8ri*nI;rGIlOwSKSj!Xk0>*5}2XDZvV+Wm6KUA?(j33D~w(; z_WBtu6~;bgn#|VvJD0F;33sjF?g~rxNIDwsuK!s5y-R3YLHv-s2HB&L8u3##MXeDF zH_(2jvnkXRVNA4TbS#Jk#{2^j5MkUSYDA;h!?{K57x&{Ha#V(2!rdJ2VBDLT-M!3i z3w9G}&DclG+=UGJV_cs>8_pw+r-(q4*t412=a}6W_`Z0RxqX9Aj1}hdPkd$kjhOp8 zQTG9QL;w%bdasZ;Dr(R#8j+$GNzshsq6KNOAA|Jf5%B;{iG#?90gQU6dY@=Jf<5>+ zZSao|y;TT`;FYx%kz1ktb#3*})fMelxU?L=!{{TP8c9>=leAu@X|x|y?;>dQpiHYl z1J|m)0@y7&(T^l$nnm10bBMS92aY2}6e;9-UhyXPRx}^ve>hK{LNNw#g3*#vGJ_L=!XbOj6GUjiPiZg z>JTXFpi+S>9xE3S-QuH}eF+~P%7FAG#^mj5d7I4P<}_zwp+9^P8@ t@Fxh4j~)(fJiM*y;j=hb<#71T4Q|&}J^Vz~!;y`Lw^u#r&G|6#lkN8)+jV7X`d4YFohI{Zd4w7DWqQiXi$cP1iOyZZt`8cm;g{o$)1{ z5gnY--;S^3jN{oPNILpUOs9MH+%J31?)RUczXCXehh6B!m|Vu?azZY827Q>w;v`OG zaT=#GBzIP#=OlVAgY&qMzB)zv^r^U*!6g*4n8al%G^OH-imMEn6~i8RZX2uIWf-nF zZbPrNTP@4ix$rH2RlghXiVR&+vSvGGi(xP>7|`@-$sw_AQp~d&f?=}aanliX+j_!v z!Tpzx+tQon6T|c^M|gVEARc!;T}nC6R`qfStE5eq(tgwOMkW|aTd;F8^dZenTEgtj661qh=GOx8j(Fy=b_W#3Q02 zi^rhN3c=lyZFn9hw7i8NqDqdOq*^B3Hl1%WC*#^)^$oK%XFQKQXR1!yHTjGsW7{1& z(#XJxr^bpwd6b1|JDw#PbKGw_brsh%OrxY>7<)AIV?e_$?A9=dAq{(RRK;}-Wz49! zq2i{7S=`ca8x<9E8s>3_p+{QQZ9_Els_&9z6?Zk>kR$5eB5$CrBmM(Q;v0ZN8#_(o^q37OY;|P!={!S$W=Cv zCFB6M(sD@+ARX<@igQpbp&0{cPiB#sl3Kn{6=3JMs-VcKO#p_d?i FzW`cs9smFU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..b081cfb4c2801d6cd369fc7f827c6cdf99f04382 GIT binary patch literal 9390 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignType.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/economy/EconomySignType.class new file mode 100644 index 0000000000000000000000000000000000000000..6ea43c8e44784dfdb47b575c1e37826fd27de614 GIT binary patch literal 1674 zcmb_cTT|0e5dIDgO&fw}rcF`)mBI`# zGCDr{qa1gWDlMQdn9iKd-oD+l-!?yfe)$Gq952I=peeY6F&Vuw?kecSJwC=|Oel~s z8Nz**4-|@g7{Vh~rW7RcID{@Xjx)w|2t6#H$e0lb%q`~yW-?Wy;MhgWEE$?@xF4L# zdu^>y(hIKX*i~&!C!bNNY8>TkY-?#>X3esl+uk&$1f*;_lM#@IS7tNI>8!x)+p~iP zw{)v!R0UGe*nfbNQclqj=*XD1u~^$!H7YrM)gp`R)mbVDs63I9P-CEHrCKs$%m27>3ibqaX6bL3w+jOS|x=(3nA+|yTch^jsOqe;)-CBi^ z0#SCfl?~S;#`x$GdNk(a*Id)mGG^5!vTmL*CQmjoO@X0g!Kyd%x*;NM*EW)8oeJYC zS*KPh81p8x(0OdD63m2(OT6yADrPY!FnzW~RdE$571uE=&~u#VxteJejS9PO3ACqE zON&dd@`>!iv&Dppr%0<9!n{E1yIlHBPQ^3K%XqG00WVZ^p<6`{x&_W1;qsg)zF;{v z-|zR-z2#b3T{j9$#zZ5-DNCZGq+V5XPn z2#};v0_Xdfee$#-j6Ph3KtE~MNb;lXKxy{7r2d4vb7-b E3p9$O00000 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/elevators/SignElevatorHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/elevators/SignElevatorHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..d7730291c76557e1b16231139cac30c8aaaedee6 GIT binary patch literal 5962 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 Vhv8#*3`cYv#p65~p|^ZE_CI6WHaP$Q literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..6ece02f9d63cf512fb3dc13a46fcaba42f425c78 GIT binary patch literal 1197 zcmbtUVNVl55PjQL&K?Iv5UnVPQni%Af#@ehqYcEyRt*>u{kB{ey7s!)-0juyvosQd zCjJ0_lyUZ2v`zF=FX`;=%5!R~Uu(DC_+2pQ&TL3r#Q#;umru25R)6ZdTr+hQ2gO&Jx|8MbSY@B-EF z<&kie(4T^^!H}y-C0@tvLlM5?hdz0xYk|l810G7V?mIK)a12gWDG^qD9z}wd&qm=_*r2nf z!&s3m8b3)V#{vl4nFBf+jM5}tC9Tw@q z+Vp@^Q&UD~fJPGCc<7hI6d111tU~Lw@sw6h!Aj**q)KNmx3=kPGonK=j%|a)2@hydSJn^aUTzC6tQIEA__KaR4hESQA6EA!$uRE)Q|=G z;cPK%q literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitMapHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..5ac5a719ab4d53e9c20c98bcdecb1d2162760138 GIT binary patch literal 4933 zcmb_g`CA*;6+I7x2c*FEgi%d#)uIejc`f# zE#2F6Z_+hsjk~vYTWsPsZMvjxx-Y->KWX#zyf=e1BLt*P@%O#a%-rSNbML$NjbD7} z+2;Vf3jc_r8)H#Ciq}VR1aFApjTn#OO)%s#A(vbflQ5fb4pSPYqlm(i%lRl~FcCu@ zv+|cMmqHWf@a7mCPrfLXT)C9w+j;rxLKJVof?N!F`K1$n!~Sx{x#SqlRP2d;ej?own%a!3~U08+2?s#rTZn&Kh&^ zQ5tmu3m;?v8Z9nTk)8W@tNZ&YQLypUWEy zrV~G{E-BZX^`(>Yt%|Zi2@2ft-zqDt(z?LTkgn}o?t<@<5F-}d3bX}fEL-|7I16!! zX~Z>hGn8yrKS+n7RKq7Vd`e))aETUY%~7jpk?ua*F1Uuul)%2AQ7>W@S%uFn1=|na zc1?#VW~3YPR#<9%xp+QpkX3k$ju1c8q`zI;{EbXuZB;vLJPLKBfuQ<*Hr^o zKu1YcAiZp1RxpdiF%7rmm?Lw>1r}GlhBgx-^A?h%hVGV&;!B+L;1zC$vA9Go%;%jY2s)PliBZZQaGf!Bm8H9Fl&v|3s&~XRu z)bJS{pT*~Nd>&uW@T88X@I?(@((z?{MaNh1H62gm8J4(?uj3mUF6vmsC3cYYyVJT2 zWe-E5>t|#Pc%^&*}I%e!)%=>`-38javDbL2yXYFW>^kk#SwDVn((DUBsAX7Svtv$48XUE$I1BHqv8Psu z>Rl74no2zZZ(g?v_uHyT#-OZXLI#x2o09_d9f!v_92G;}h}s>d#_t2{sT^SBM3bDT zHgzB@SR+rqcy?iq^xYB`A2b-hW#lQdH4wteW6sReL)p|&MqpczfR*=D8{6o3vTg$i z(Hag?9%*!^WM_@yOj^PeI2KA!D672>g-WTIn>Hs)Jh;TY@{>jgwkr^0tuzJ4BImnL za>|xFiF1kfiM*AYF(=g=WP1p+8Q24KCezuc&S(Pr!-Ae~Puvrs{GL_df&$!B!>N-4 z+3`d=l{hutpB_q_s(GLYD$!~znK_;u9#0G;N3tCBeVNfznzoXe#6VvrJDAL5$FqI? z=_JW6GQ3JnMmol13hMh(!#sqpfvsPj4l0vgppikVhtxci>=!uu|Emu#GG$$Dy3SRg z)*SI(Hj=8p2~_PFUn_0RTlSPEL*njTzsr=%df4wGba}+YLJBx247_4`y8N;@uGHQOE1n&aSHv*HG8lxrF*GWKbfyB{^2MD8?dJp0lp|leAYw%jy?4!Jny2gK_T|>Wy1dj8`CQ2uH6*z&D zKJ`(vh`oV~HWS58VmwG(J#-@)@EZi1?Y> zd3ZE{p}mZuofxte47;i@ybdx}xt~lQLt7a`XO;V|n(oKBTMg{PM8JJp*?k+`pQ*Ut Z9&%sDij!^N5yW|I<*!}5%D^7Ft zsCsz7;P*sSJ&wewv) zPK-U`o$x?}P8l8Zj-WkhV@@nxam-&Rx2M|rdA^)7ttzeD8pDTLe^mcZcW$4dv}Ib7 zq1;ef?k3%)v~NW-qLs0R2}QIotV;d!#Zr1ahG0i)X}2N~$CBKqeI;03rqdQ}qRH0M zl>9xD*ib%GX&U2~3$u7AdVzI~@hXEd;7GM}bfFbw+Mlcm%4s{Rn z0T%Gs!(srAv^V{@4Z~9H zQZsv`KAy|+T!DW=x6`eaw3vgTF;UB$P<1C8Y4LdCRKz!|6{igqJF5Nkh0|QpGlSQb zZdY`v4->Vy93BbX=6lXk?Fl>n4@%Omm0i;#)MV`f=vDJjhLqKNx?djMHlR?cq`d-Y zq{gKy^p4;vsKqqfBELvuxjugeR$n+nq5c)ck6B=a>;MG<>lh_Fm4V9`!vuK*$|xB{ zOwwLXxK1%CV)PSA_0K4L!xe@v7^~DiEj|R5Db?UjTlVysXJSC3$rchbe8b5G@{W5 ze}F&AcxDD8B>J?I%xO=1zHd&?`8q#;eg6UAF&+)T!}ZkM@X?Q(1DM9GLEOe2A9pe1 zq2l2lgWnZVVfe!)iU2q0!Aq?Mtqu zJ2v)^x5IrAI%Ras+k*C_jXAMY?CZdbMRM!uXftthSBD#M3rZ&d$JcXp4Vv}T%; zVYsfe+(|kOY2S)QL@T3p6N+e0Se5!`i>35<48f+>(ym1!jwQKIdrGjfM5isWRIO=XE;=9~iJuq~SjwUR&2B=IKEI*Uhih}EV72*E6lz~l{Fnun$@Wnouz?Y>lNopzqZlWTKp7>Y zhzZ)u37=3*iWvEXQtdMe-*AcH3;N#urSvnJEtIjH(FQr-jJAj?1TSC;S7|KK@8TN9 MXy#LtMY-h;qYzaS0BN~11 z2l%6mXLm6|qEFpq&&-)Q-?wMZ`DTCq`u+pJLp&IQhpVZ%=3@}ohcJs9!?=lCK5k>q zL&d`#2EQkw%3&mqrDd3{8{6j1kJ>N{Zait-T7UH(uQeC zhS9pxay#iZrQH$Dh*rkyCKS=GuqyRW7fb2!7=kUWrQL``97}Q^_myB}g-%a;zO=X2)?u-KBup?UuwUR&0B=I)UI3(^1+kis3oc0Q! zks6n-&^v;Qpcd0?gZv_mqqT(-u-f7Y3bn5&e#`>PWCth^c!M#r(;0XaY zh$-632_I2RiWvKZQtdMe-*AE93kKf(rSvnJ2FlpUXoDPZN?XJwf)_A@%QTkgcX0(1 LH1jFSqmiE9BtR){ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$4.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$4.class new file mode 100644 index 0000000000000000000000000000000000000000..8f9ce9a6d37ff24b69a583c2ef84fb6415f71c2a GIT binary patch literal 1117 zcmbtUT~8B16g|^c7M8`9PZ7VRYAMKI!W#rX2u5N>BL)-Hhv{}`2evb0cD96{r4fxj z_yhb=#=E;1A6bg`5kk0IF9TH5tU#IYpzQC|sGm+7=cn`pAN zG$nuABsP>!Rhq{5`NAyji=Lo#H*^@8Sn2i)={lz6;ckF?s0A2C5MT&?fDudum_yye ze1HYq_plg%BkfH;t*I_E%$`v|9Cl4ssc zcCMK{QXkJ{d8)uap&RMeN?Odp(3q%Yj;OkmjkI_?aVp}Etrf=&6+5c^^qJF~(=&tD zmTpUQsSgvixf~t|-R9fQQtb&l{trshu9aQWBh+N=4CrNZUxt*`F5NGWZW~ajRMK7n zG*aWz6?#W-5!7Out&?A*v0R@&0jn>Zpiuvc;>RqoLUw=xfnAJ}oyx#vjA4R20%eqp zA|`1sCwxdTDPr^!O7+hue8UBXFBo|Hm(tH@-lKvK8EudQPHBs{MDPNpahb*v{VuLx MoMt{nc{I}V8!|5`ivR!s literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$5.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/KitSignHandler$5.class new file mode 100644 index 0000000000000000000000000000000000000000..c6e2deafdf81495b60fbc6e8ae52c2bba320f4ec GIT binary patch literal 1117 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/ShopHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/kitmap/ShopHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..c16f88233af4bdfbfafc15542f585546e23c8251 GIT binary patch literal 16358 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 RjZZJW@+{_O`KejC{|{EGW`+O& literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTracker.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..76d6853c277467e179fe3f0e882285a2f1cf8e25 GIT binary patch literal 3592 zcmbtWX?GJ<7=CUt%}mo_X(&q&u+)aODJ7`5(OM`4Y$XMxg$l?rO@?-8HYZcG;=Um6 z3oeKouDGDbjX>obkLUQ!Kj07Wi+{o6ae3}cDoGpQL%-a)_nmir-siqEzy9;%PXN~7 z>mXKQuo|tnTQ0kU*n_<_xCi^>alhOhsKG%PDu#ln#-N6TJST%NaY)0kijg4ZU{EfW zhQsnXDwk9c%aN9984XztISuzppSFs85Z6eHW;oKQ(!|pZzi&tWXd{Z#xkaJU)COtjU)~k3CGH2^05(v?@T)%%R7eS*hXSB*3aF5 z+?nI|Dv42n`gqnJjtz~Cj#^I4${aB>PSzfe^-gNgG|*vX zET>bzY`&WE%rkA-#k#w*N!C3lZe`4^W9cClVGN}x3B|JsBel!0EqN{q6=%fC3v|vX zwnRH^I)*@FV)Z(@@e0|X<5ip>Jdy5gJGTx*1Qt$h(S|WAl{9S~ui3B^+*>lpCgJ0F z@aLsjQ^nWQEd-YGTO3O#58TAhXJ*(mV@A%3u^dh=4qJ|!JcoX+cvw-2#bp6ywZS5M zU8$77tre_FQn`|!+Dmu6H{+PYk`!9bu=6I5Q#dr~hl5rn2p$9Hm4fXOP|naAzL$g8 zBYM+i{s_u>F1cC8*~xgj_`lT3pE*E5P|h*#d~*1@PtIFDLvkYX8GztextZ%NJQd)l z4RCYxJVdnh9DLE0=iqNGK-tBE!ufvTsJFDZ0=;fK3ZLe4%|+^os=$s z?_WAlRIF36UPYIR4ZvJx-;Ir44ZaPGT?L4v(I4QGiC;wZ?(+z)RVWCYLO!g7Y9^rj zFc_91e*v>XvoB%}mF7wnT5Gm7< zvS~{6?$veG3_bH{D1;To&EaP(zkr6&brOum3y4fdMmlHPqKv) zNvc{@{f*;fl8Sgk>+-*lp-LZ9^zKBAPszwCiK(p2=T;^!4oFW)W9gF$#cTw&VLK)A zLX{c^&QefnTvyTfF6^ja?3)^Seg$I<{TL`3N8o2TVAe%6?+&$`NA!CvmN%5+kE@q{ LEl)dn@?qD1gqV|I literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..235d850ef2b42e0d0ecae9129ebebdbbf6c76056 GIT binary patch literal 2632 zcmbtWOH&(15dH=|2E_6(7=r+t*f_R$Dj^QG5g`@=0E!fxL1$+7*j)}9^?2VfC+qBhX;sqOx7WWsQ?0)Rthsp`b($k9wo+)V1ZRo#;6{bk;8G=hiGRuoqS&)>6s9~7Iq)H(}PnmZo za)*>tf&1Z*f_$g`rXzIOIF1I{osnqr- zn&joCE4*{{O7umoylKTugYs!pltkbE$i=ma{!fk(22RjdcDGd%mZMJSM5)ws1hUoT zEx1gYI9$!QcEgc!pZKzHMEqgTBihKrEwM%i>v47)cT7dqVff+H`brVIJ3U znLaWYuFw}p4L#{pr!h!xad>D3Xzm|)1@=2?`Uei+@!&T{vy;X~(x7$t(1IqkqKn?H zlx)zAtMsN;uc3!L(!EK0)hN$w5nj~N+RK4`coTyM@G;B}9pVQP{R{`-3}fD)_w}gH zGwN^ixA|URJm_unkBspkKSY0!@1u4Pb-$qJPXrzZ`5x+DK^rP2-B0{0~%}a;eSq@_{{(S literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerType.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/stattrack/StatTrackerType.class new file mode 100644 index 0000000000000000000000000000000000000000..f1ae0e74b858d7d86aac6d034bd77e59d3a3d7ab GIT binary patch literal 1866 zcmb_c?^6?36g@B5WH;-IGzC=DiV87_l`R#m8j6G%6zGDG!(9ynI)!d&I3-i6D(*3)f321mYV!=! zRw!)WYq-vuFg+1H_Jb{R!(QWdM^V7-EwfImCAkv8(vuxgVn~%2 z=W2@#>hN;edQ`15RDM4S-1IJYn<8YW<_kvxs8sxhU^rnpo|tcLuhI$ls!JXVlx<$c@^yAblK-#!O`n}GqA-yNA{ralffF5eK2rZ&i$Z)2bf`)`r2tV za2^j03}b}hh55sjhMClY6N#;9eR4z47keQCb4BfJK~)oy@8@>{O9 zQnXQv{C`Tjd`NS4ov8WLY(|b7IU+PGzU$LWX6PpILYGH$klYs$mZrw&^6IBcF*$Ww zwgjLrsRr~8${C?Z8X26ySumU<>mq&Sqwj(3Bk>N&7i2MfNAGkTOHuxL47Kyek%+x| zRw=$l>KzoBpZF;M0(p#97U5rt<1|W?B^k$%q#vLbube$V`ehvMrt551k&~t4a-5SV z$O4M(LN*CRmOlIj>dFDMY-S&NaSz9y(b{;9RQ5PI_R;eiCuE7qt`c>0IELFCS14xy ziQiOw|DJ%EimOPFp<92u$iBj{ u*!Wh7jlR^M6iSi=^%Z50E{a!RQr%WFb&{V%rx8fes-@@{ek5N4*FFHCqP+9~ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/AppleHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/AppleHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..9e8c780374de520f4ced9033171348d4dd8b352c GIT binary patch literal 3396 zcmb7HX;&P_6}`m(%?xENpv{Vq#!`fa5n`M;N{CSuA+&)9i3ourS&q{T&CsIhM!g{8 zEY9Xc**9g8|C5~D*F8XwA?Rdu)ZJC}>c0EdD*pMOzx^G+ z`|#Hs3b<(CQVvZR%i;(=lEY<;=lFG{9TS+8g{wJy6xZZ&J%?v;Ba7$ou^b=I%kbkO zY|84Cfl3bBG1i7@d0VnFlS37=ZLnqLW)5?3+A$AT);#%I5EZv_@Da#YXducVkHr=; z3yyUmnG}`_PE@t&h(nLS5t0hVv>hazG6kXB>A7Q$ zxn%jnp*255W1@NTeX3CQ{Ay_`nwzu3lC@~LVQC>2E3K10E32{jEwP}&lmGAL*a{(` zu(x5a8`|MgT_wpk+a#%wPs`Y@==c1kl2|Yvnw2?9J{Es47h+!<__TqS6du1E5pmv{ zv;&)Q7<64PG~*B|97uyE7RQ#YdAiLG1{v^0`lqYWKMgc{u2a3qAT158Ch4Z~5{0T2 zj@pi6CwUf>t(oud`aUD`VD+p<16^8#@Fz5I#1&p_@;qxX?z>s(fBUzYJ3mh*Eoms8b81f z6?Vsp;u;zcecP>`j%;UIf?DXVT=SxQ#dME^`6#gRlKFWFW`4%=^CrVEYx((ZN8=t| z(HOxq27aXRDt@ex>8|u?`~*KW@H35{;}?vk#xLaDyUlg9+ytFr~K83!`H%n6rZHo;eDOYCTy0R+U zL1?++r9J7jbV@1gPc3bb@C}zxf`$$8(F~kpX$2r(2xIqY{wNm`b(gIz!yHR}9q|LVJ zP^L3QcV${ZpTAT-bN1r%gJWamvkE)YrmskGbE|bLG9CJDXCZZ7U7EUSRoH-~?U2El z$Tz2Khla3p3O(aQ53F!VV(B>6G@EGQx-|Y)wkXTx_*fb&Dcpgc6n;Z3lf|(Ol3~#f zqZi{dI8OIu%LKEZWHm`$w&qP9rfyYXS7GG(dU)ctgGG% zg^>0J&sYq?wv_fIWvHD6|wtMtVl@1g~`k zDD?1uR?Zf_dwGp(!ZEb+n`aT9PjcotWH<|S6_36J^){NWy@kx1XkJE3u~?j|(i^pnce*j&>WA|{LgDtP%RPQpj-ox>u z1l`vAHn!7(j*iY6c5q?motHDq*u_D|Za!+*vy8_dVs8@Al1BU6G!BDDKWK}a9TC>1_p3~yjv*sA)F+4xx9ZEr-(a9d5xxj?!x@RdS-!J!Uh`XQtq@h*(?{nNA7YA(-S@NisV6aE3*VqCw-UKX_pRybO_`E` LDpFlJrZ@UuvvZE= literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler$TaggedTask.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler$TaggedTask.class new file mode 100644 index 0000000000000000000000000000000000000000..53b45d6859f3b2743483023236d801b5baff1934 GIT binary patch literal 1270 zcmb_cTTc@~6#k|Znl1}S0YMOuoAx5C2q;>_3#Or_0izTW-=^E49lD*xz0}~p(kP-2 zJ{y0O@l4wUFsKi@4>NnN-#KT#neRWodoi`vp=XPnY}R%zXyJf2xQTv@ndrl%7%UUFuo%N_6H8c*Va3E9 z+>K$?#68?Mk;R&c2U@dk;vo_y9wEVy`#*&<%$zwGpSmlD)UfrWc~UPzrCI~d{sSCM zCEyi?p@Qz+3IplTAU%FmkbXdu8#zP(7aG5?gJ2QElT zh`dYzL&=uE!&SxFE*%Iv$fjN~O#Qi=&5c|OI!_qH0WHfo58P2f|}m zKS$_8C#*?u7@eQz`b;n86ujJ^cSK3ek5oeAZZ^_(g4%xPhjcH zM?~JEBl8(ihGTT@rBBc`h}bdWd+(aDgS1|Tejkz)nL->HlIIC$0Ygn&GaKoykVJW# zsEp7?G1kT`HfsPT2`c>okv5vKr-c)Aw>I+>FhNkjB9*^{VS2qLu+juGDIuk4gGF$a SqzJ|_Lc2k>9(vk_5&sFnBudNx literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ArcherHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..865f663a6fa7bc75d2ad2f231ee67854b9c951ed GIT binary patch literal 1833 zcmb7FZBtuC6n-`dxg@!zPzrsqN-KRypmI^GRzs~1>(!M<+8nO6K?9gH+A?C z{sI3*b%t7@<|DKRErqGoH5_Y-~F3`{4=Y02Y1cZrw$ez+;gz#U`e33 zC4)fiZppYQ;MT%WMT;#N$0`=cCNdBht3Q%Yq}NGw%Ug&dc~IAJQWYp{>L8R!CsG18 zPV$-SGH!3zma6lN%FpRgC-VZ=%k^0K?QplHA1W_Y$@lH3>FxOsrJv|_7<;RWE7eLv zAh+1wCB*5v4%Pk6{*H>a4zq6I~QeO3Yq}RA7!CS<$c;Z=cW$$Hl3> zlBn&9N*9`KkXJSl-y@zU?Ja>zy%p%`yrZLUhx)sYs_pU}q4P@}*_TRSkWW)0bx8hW z<#f9x!@yhLd8B-{?6)c4alf+-_?Q-Al^k1g<)umkSNJTCfEfHQ7#(vy&lfp^3&`@D zZNc#pE$duoIFC+EKZE!MnW?EmWS=9K#Zw#bCdVN<0b>|oqBBhN7FXkG7$$I;D<&Z5 z+e}Iw;41e_@*fysB4?)$G4LnyKO*Wgv2UD2lGEaw_oCom^ tX83JrPTHdYrQb00%`=?-8IEBfECUk&o;pKZQ@~l)!ThutoMD_r;XiS2>{9>$ literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ClassWarmupHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/ClassWarmupHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..c734a03a3184fe770b7ae5bf1ef9449f304482ca GIT binary patch literal 1342 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/HomeHandler$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/HomeHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..ab738e5144b8bb39499fbf9c97281b402c179190 GIT binary patch literal 1574 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 GuKgdu)Zf(r literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler$LogoutTask.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler$LogoutTask.class new file mode 100644 index 0000000000000000000000000000000000000000..bd8ab01f99e4431d302bc6f4546551a5871bd5d4 GIT binary patch literal 1532 zcmb_cTX)k&5dPM2qgW9H9H0RjPznSmT-0)J4YZBHwZQ=nB;oM5mN)idc{i0-rr|e1 z&nYdJz&ZT^{ZT!PWF?rAQXY8O-I>|Belzp;Kd=7+a1M($cEK%R0yAUy+QJbVM{%rx zSsb^KM`;{$m>y7cBS!z zGSaMjcT!oIeqEMInyU=crT_jmx5ALG=$2rZXh9Ff{{8jE7sa524ILSm9 zc}DhMA#SMjD;T^{DcJu6HZV4VlwWuSdjsP+JcE-kHn4-? v1$N$l7eJ9*gXB~AgZA`uTp)Q8gflRo1(Cxc;^lA{2k5p*HbI+vKMHRFb^E2r literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/LogoutHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..bc543a8004cb5b5d19dfd1c886f284abcfde958a GIT binary patch literal 6076 zcmd5=`+F2u8Ga|(W!cRTAfyzKTY!e#$hHM*+W-xO1d?nBZ9>AO*iJT+&5+4#*qIHa zl~%1*rL9`zB5myr+j=S5f`(AEQt#HgR_p!xSExKbzGu$t?kovOP=6@T!{p3&&iO9y z`M&o%vv27*{bK0{ zBKRO45|0lRVFf-cWDkqikBG-d#p}mHI1)iA9uY5(3T<34Lx>-XU?Dy(w0@!ppTy%r z{OC*^jo?!_Ce$5|-~>*F@aYIn;fV;I6pyFynIL`Uzx0g}RN-l%_n8o$6)(?4@H|cn zbDxdi1w7!bEZ8MPFACpZ3gL4hd_IIPD2T+8iDcU8)a(HTYO`hOsRmQCZQWK-WM=31 zHZQhc8`h#}$1tPYG`qh|8>&+f?l2OT=A=`)g2C}C*84;|cQ$XSi`jZSY4w^$pB}Yz z=U_555bclmX>rF$T6VNwHhla1|6ex~UH(Q;uOJ6jb=M(8qW>mC`LI+K?UQqVAsN()F=qDiQ5T4-6Pi zl*$ZeB)Y@YM)Xvj)ZqHlY&m*@A~&Y>hGjS#6_i&@0oAsKrn<^51%ZZSFTtN3Gc0|3 zday@Nb!t5(B_*+BTr<10lp)?dVZiA(c$gceP(JB72q{jE z6uunivTCd*1XE-XCNW#g5(7QOo6L8uwW?@SxCUNeE) zLvDV0X)2cGoUR*qg{MBGV>a zx`z~((498JG!02oc1-UhNR#erA*S(^t~t6SC+2pJH5F`|qC6(8Ge6(aOiCYQy=2T3 z)7MTveN|OdPLq|G2fL@e_}VF~*uKKE>S;5pIIsEnv^6r6p{_mCRdcN_yNuM4OsC>{ zli@L^Xo_Ch)QZlbViPtim^-cqiiuVgx8gPx>v0>2JGW%AE}~*1?g-(FDqhAJ6<@-a zLwH5St2nFT99l#8ii)pdRKui>JKui@(|UKfvV;F5x-|4%*Z#weQW#9&gJFta|O#C%wgT`aGPhFX0dm0*-93pZ>4OlBw*2Dy+th9B5rK9Y)7-=q_P{hXL46% z=Uq01V&a?96T;(^OUCRXx8@USUQBttH_uVo)#9eEF`{`stC?QP_AEj-oOr(iUIUug zpefj`9h9-{w2T93y}6ecmppQEuZ>*7VsbRYvRm~Lc59Cd+$?SH*{{dhR>|ODYTRrl z;{&@~8@vQ$C7dnftb4P{rBr6G?>gp*=w4i4ZE_%~mk}72)1{ed9)L<+9r1p>H_iJh zFOT_WXlG`k^4zm4d627o;9PYb`-rqIZ{~rDX2DXcCphw9!%5%gUd!FYY)G0(`V)3i znq`~pOIHNk;iP!mt@CoS)U9V09UUJ2)Vp8%b_Zpmwbn^bK1 zp<$5(?S0JjiWWbV?xzJ;4W*fAETo)LFRR8&{M)ms7dH8g;$@nT0NXT26wjb`NI|fo zrKOU-lueKmzAq}$fVexPEs;nu<^z*sV_t>lmodZf9mJLSDU{Tqj31Hf!0#>;A}m@T z$G7uqv;cK{XBW)AZ{R!oT=u;lvp8le<+Fi1MyR2He{ZU)J`d$03U;4I;W-4dqu@o% zpe%F_Gsh6Fsv1S)0*VURCxy8!d@kZAGq4yzEX8ar#Bbp`JyMPhmoFO%&5hpqz$QLq!F*#?U6WDs!klz}chK zqnK60|Hq%eY>taLEH=mf7{#1ZFgZ7ub90|XF^44_mOO(l-=cY!P&$h1 ze3JRyXEBqZUw;Z~VqEF8t6jbnJ%k_%W|04ZM5T~)Gl49hNHd4UU2q3eGwis)fA zp{b$wYj`5H*nuea5sUJakSo)Ur3Q;uM|~qf1!P#`tP-u&nUC<^aen zZ~-7v1Yj>C=T?JYp$Fu0UV&WHZgFBL7EsGA_gPG;C^Com>4|hi+OIg*7jv%-p80VH|AZw zn8PTz3=wlhUaEw}1(=Hku{OC01S}wzN%k4T4W%g8#!xYe%I+M0ir)^wUn;N1L#{I_ zHE^F-?qMF4?&*w^62x3>R;SBo%cUeIzMvqA=u@C?@Y)RRJ&`d&S2bU_b~q2^5Z3{^>UlC_VpydEK&J?1l8 z<1M_)oB07qjx~s-;bC#HyNPZyaGXyXApOS!=nX=nk+>^wRr=y*3 z0=Qr`n|01BnO`r^w-A?G>9IXX(_Gt&B28P{hQv1HqDhJkBAsj|n`w4u!p>|% z@Sutcf`S49DTfyVDyV>l78Jn)6>q#xyzc`KR8WimH?!HDZF33j@0U5=zV{vf?|c96 zo7X3fKlBKIO(GJ;cDz}^Rbdq1>JYZ!En&PB*OcH|ye*8kKbxHX8o z!nhmnmzNL7%Ll`_2lvV+iue#d9L7g*pM1JsULH{JQ7PnOA&lX{FfT`?ImhJXp)ekn zg0|t~a``7hcm$u6lOL6SJr>5N@M-z<83msWV-p?^;&Vj=fdA6#=wh++tSHiJ=LZ4COA^oV#Tz?J}qU)_sn3x88B>tmrf&m zK%-(kWk($&DQ}%a+OXNB#dmw-($JwqI&Kh)Rnv%)b_&e0%qGwBW=pPWpU%CkpAuv{ zsvpu#$Bt%XbR@J9JtZYI%5fJ58YBk=7PnZbc(gY?IA}Og{%SZQQEvh5C~^e}v`l05 z|D~R}VGYTsXbFK8Eio$@jaybcp-1_cw9II)X6w=R%oJL&Fh4XSL*wDuHr?W_lRGEV zXI7`9#Ri#lniwSYeTHo?4|bZSE!yDSJKZ^SvGv7A&ZnPTrr_&D$uhkhX-H^Bve9(( zRIA0EXwj_hQ{Zw=Y|ihHV`cJLVBJi;%B&y|CH*NYnH8{irUEA4Pbb<)QX!#PDZN26 zV|pT?_Z5;S1+#r9WmqZhD}jhVWbWSbGN>angLW#d?QMIy+V?W;EtAM{-8ouPi|e~a zyf=Z(l_!f~GRmDh(SjU=MYhcM6U;D7naNgaB)Z4ZlkSe789~jFbM-!Q*RZY)S!5y6 zBe3xWsLn}Cxdq}$1>YcA<2kffwr+NJr1~W3Y<1s(NOUkyjI1}@NUeXG~@U9gTNx!6SpVmbW(;H-<38JE;-Kg>mD>>gOQ4aia+8{D*lY8 z1!|~Qvm*?Iae@i_;Y1Tu`~^?D#Mk5(n~)rz@00D!$SDPXm8kwr#ozIaihtl41^-m> zFFd8-Nfpn^`*SM(jsK|lFOI8t9>?kJ$)N8{rL19{aKox}|po$_K1R54eSDPo=~=8FXkt5_&dn!{7}SgKeg7LaW#bQ#A1 z>20sBn-O=v);cn$`y&081aRZJNQItB*A=QbO_Zx*u{d27OT1BA+k!37cpN zW1rIF5}TAuuk3nXlFx#9=+#fE((Nvrr;gJ&4Y;2K({!t3Ti0i=Tb0gE6E->(?)} zOu|%R*uHd(PHj$(^BS7E<;R~#5={m_uXcJp98+}n1bcY`qH-at@5v*S69JRkvC(ab zCd1bImAHgC)oWg9!YsbX4s(ww*_od&`Ei+m2q|H$kG6C(#sc9aX^_oEH~Z41r6`&S zdVb^1j`lWzYCkzmy^1P=h8atw`*Z@gDi5WJERtMO<+sUY#YuZk&uikLry8`h&De(h zFX|qXm53Q@+fw~SGta#lf0nGy>7%a~Or1;FynG?ziDXw}OJhg--Y$U)XS#`Ah$cEx z!iaa9#>HuU4^yd(z`3j|rA6J-B2M9PkfRxP zib>YRV*sxUcdH0H>^yQG7vf{SY()tr*gfsj5@|+UIVA7x{X7S&Z1$G|_Y{kwhtf=5 z7TcU989679_?Ksu6{qy1B|lqy-CL{X3{Z4ZyM%{0mCem-o3Vn&eA~gpEdGULtIzu` zexVki0kinbPXk_?IMRbcjslCTsvm@S7zO(uMBxJn97R!8^)VC|;y!oX%XlqAfY%6$ zuoAPe8s#_xyE(GZlYl*F<{M?k@*TQi2>C|2?odKBTd z+M_5L#k}gk7}VObSw~TN46_Sd%>hWw%b@VOmYS=fqK4n`Y@v8GoO*B~Tuyy%V+Nfrl}l@GdA@IEF>F$8eh9 z3GJe?a$d%;*!BAK0^Eh!<$lorq z4Dc%%+=FyphGrAZt;1Ga$k702w`JiO%)&EBcrK!wvp6Ro9&cnEo-z~$kE5ITC^(=% zdzSX(1J#R|2Ndq$T>>S;y|lH)jqgf6FKgpvxkO|Pkt3L0%iAb|5~~%`(?VakTPdNP zVd}tKTDXX|RWNwf4Ar=2bD3&=(79?6(dg%sn_^kdWZ>hOFw3;a5Ay-n`Z71n1sLdo zfrB~*k>E%YW+vptycg559vZ&V4LSG5s@9sv(ae$6k0CsY9r8&gGVf z?_*dau%)QH=y8a<#A`Lq#KrCgsO1Jo!FCbp$s*Fj^$z_j z5m||%;PcFyVg-j347=eyAQW5z>=4gEJj?ATBQ2?;hksd^MsTSI6Gf4NI3-L7YGlA` zbG%XN{vypwk&SHE?1(ozYgm|uy^1o5+@Q-)<)_xGv#Ay5Z<4VpsHyILMDN5hJ}r0i zX+EEpxhW;>SemiIODg$47r-z%>k`)jkF_eY7F1-CMKVDl#2J%jM@Sxf&{RolG2$zD zry+r=V^}A5^!iamj$(svWaFdQG=?*8xHS{|dt4Qg*d)n-j>||&LZT#hhr%VKA{5l@ zkPLnq4)aH;@Z!u8zxee>P+C>Cd7L)0ifP1roTVMb*<;vpelE>C9>0tnewZ8Ra;)c} zLC$~;J_CruVyfo>!zovP1=U|k^;c2-)l;kI(Z(rPe+|`NOZC@L{q=e3FJ~@$@MpZ| ziAqNOR;G}QQE3+9G1R-j7P!3SrPz(!CpY;-mSzAA;f;7xMp8VJH#I&<%$sGt*G$qd zhc24BHt1-Md#c@I!rIw)YtfsKlT8m?Km?%)RM4jO1O z?EDX9hOGtdBX21Dm_E>bkPhP@R%)i<-G6UFLh$i8n6|VIe0@yv6l8Rt1f7r!e;w)z zhV=z@zib9WaUe`r$yc%1^J&QSMmtf_jg1W4Zg=k?O`~8$AjUd043+xt*Nq--(VAMc zv8-H9B&H}skBuT|Gty1Y%redGPhic@$b3jK%VhI}0bXN;tdqtzN?4^6kwIl%;edRC zt2RG^ogn)jr6l@-9K#7tCFQb6%B_$G-ca+mSi`%8vekLnGbxs>5%4U98G=>G=jgXO OhcZPrb;^?m3O@lX4dG7! literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/StuckHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/handlers/timers/StuckHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2baef90578b7d2859999d84f77ae342eb0356d73 GIT binary patch literal 6734 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 LznNQwIJ@qDRy#4b literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/OptionType.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/OptionType.class new file mode 100644 index 0000000000000000000000000000000000000000..a2801015e425981912f286756563b95300a9ac57 GIT binary patch literal 2341 zcmbVNSy$Uu5dP#vk{yLb>@*<>Aq_SKXCYmJLovolTpVx_(75R)ga8F2b7VU`y!Qt+ zPE&fC)1Ex%U-XakbmmHc0KZT_Xzram%lFNlJO1$RpML|GhMhnR#U#GMqJl{Ur6fl1 zj6X|!vdo{difbyqRh*|D}vtKrn#dZykmx3)6N z`@CB{*tcgS#LJ~zo?PSeD}~%5#VQx`i)&>GYH?|`u#(HK(pmm#!5|rP%{^O!UV3T1 zGBZ`v-Od;d&vCaYj$%ce!H{tG#l_jlugq%GCQ$dsQ~$#~malCR+Rl>W+Dpy74cl8aH>#vj zMBL>q2@B)rtC6}mP`y;M%<8)7Ih-KKB4-`fY0OG^)Fw&seBMy~P70q|r;BUsI8=oG z(@CfSf<)Oi@!JJ!b3+_n*|r-?qBVNQQ|DnxNRmPMs6PgdY|eE^s{Kiutdz5Ul(Vl5 zct({Zi{qq&fzg?qY?p3()Fvq#t68fWTuOAD74sp!1-H4Ez3AO@lP8T@)3fZy4)<2) z$@`q*ho<2Zo+gtTOl(M)y4Vxfa1WM-2iVl`F>Y%ZM~Wwgxo2)uvL5l2PgjMl3;g+1 z!!=yz8BsMYTf+^pnfGjSSHmc87H5McxhWaE*^xhHD5LB^_ftqgSiv#HjYYu{b9erte9G#yG!G8gywW& zZira{B#Dra#6?JAAta#}l7Itj;tiRLsp#8MHF$8 zdV1o@A>{PrTPW$F*juQtNgEZBbYc(m6M_Ny-x)+VhUgy)#4pO8_)IY66?64<%r=J4 z>DnTKoWL+JM{j@inBEhEoip3ay_iR5vdPzC+F^U<7-<9EhM ztz=QFqh85Vk1U`NApHjl#Yp9pdsEbO>!{Oz#S7yMpfv@ zuh90%dVg3uAhd&uJ`~mt3++d$ekH8E+9m%*D55QN7?oHH-9{zeLa$MgTNp4ZN(;kA vMQ!1#@dgqX)oJFDv{<&shE{sqOEoQc6q-QG zNZXHbGL*-DpnPlMD3z&IK_F?lAb20DGo8FpRuOk=pzYp;uuZQ!gS0wfb|>l>ey&7d z&FlU}Vk^B&v*rDhg^j2a=$wa+e|XltLK?<2_v3Nm>z9TNTh8fyaH39?3m0=PYN)$t zaA=|>@bEwE6KL~58LDU?-}O(lZ_%MIQ>D*Tg2NPaa+oE{L`1m;!5dJVr<t7}K81J-A}vs)2Ea?i_?KJD{P{PYq)Np zVB!X@o0!n%CMFpMw{>9$uYp@8rZ8=yh}#VLw0J_4sq~e!6Vj#hAW~_u%vEYh2sf3s zZ%d_TTuqC-ff*Ae+%YkWITLp^M6NvqpK)6V3={uWURYOaa=XRBF#7NKEm=)-)lw8G zWYevMyKDLk=l8&TC4ikV09D!e5n2(d}SJR31*1N-q{?9?Z{GDs%T2XmV@Y z_iLWt9P=Y3?z_%91AF?Pl`qqsaD>0D^4X?`1S8d)yCn*S<2%H@W6XsN@g=Iw$^CB# z-S>0t8&UKekE9(9eC{fT>sv?9$*!hmcDopQ^&OiRO7XfD_+DX@L|lY&*-9Iy=$T8< zLkL8`wEoE+pw)9)N9a449r*&5O-4SWBl`)RpV5^i)BQ1wI7s#oy2!@K?nf`hCnjogqgAXa4{gnyOC# literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/commands/VanishCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/commands/VanishCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..29ab517b1c585865846bb59f069e51cb94fa6d58 GIT binary patch literal 3354 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 L1clsBl0N?cHBS7G literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/VanishHandler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/staff/handlers/VanishHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..36e5d307c3a34b12a90c7469216db33cc878f06f GIT binary patch literal 11164 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$AMText.class new file mode 100644 index 0000000000000000000000000000000000000000..5ccbb392677fcec9aff0b0a71d323ee8154f7055 GIT binary patch literal 4167 zcmbtY`*##)8GgRK&15qzVM$U!|a0l z^IZUYvDAVT%qY^B(2$K_VE<3%0wa{i2tD>`1%aaG4>qln>ia`?QCmod*8oW(UA-_r1H4c`&avR1ilPFVu6;Y;S6nJJpiRA$t3ZD*=a zpe0+%+mp8CmIc;T87iJ#%w)}3`E=Bta!jw{@_6`&09LPg)tr@-CO$=}aLvY34k;n^)7dX+gHW4d*+I2=CG+4?LmvzIoV~td1CMcWdW741cC9p3U;}xMmfRWB^Q?TG zS+7N2pkuWVQAha5oaNBg&|tyj)H&Sb*ZgeFx4zZR-)D#g9vbz`+%ywTA;sFz@Li^v zna>|9%@I@u*Xf?~D_z_5fEaFAMJByIV-_n6V?@o2S!3axoVaA=ygm&l8%!MXtQmpv zp5c-^m6@naPupI`b|iKscRnMZDi`}6)ZS24(YF7khnSWvZ?I_Rrd0$ryiStZtBhpi z1YTcTF?2PF@gv_@wGZs%m@@B~wZ*pCI)UH`i#;nkTB^7?>!_{Dv#CEkCYz#xeb{f{ z0KO*x1CJpiuwHdb)eMiBKTjRZP1K-CF1Oyj9 z#DIn$8Tc`NqTvk#KgF9&a074QhJm;7Gl8~y1seD{-eKJ?TR`pA#wid;#Tm?a@0ED9 z@hNS;kaD8&RD4e6ZoJpPf~1J6|%UWLcjK$=dtWbf0HEC%| zHDcK#FNKIXJ8L<4fppJm{p#LG`>DfTt9zyDrOeG{2V?(y*h$EGdO_ za7fEVCx?xpB|M^zNXkci%Emfn6Dd;T!iR4(%BYc((!G#!ZwoZ8k7F~2(T^ z;yO;@9h_EfC&-&6QqSNBSN(XFaAXv=3qBN^`LXf|h2SwtlQ32Jhsb}Nl!p=c7m^xI zXc+znEWE7rDBQ(UzRy%ED?aF2BHqg98p3%D5DoK23T@9ql)_k}yc z9ig|8PIrX&^hW$+DakM4-x!grkNGEG35$gf|CS2!@s?125nHp3{M&r4JJ^0U7Ej&A zqbe4$t~3L&gdIUVmyn!zVe)^nH~uhB)s?zK@-Y=w3t*J)}3g8ogQJN=zM^K`TnEr5Erh+Tks|OZoc9e|pwqH6_9t&5F(OS$*8(gHLxoE&n6HGr zHzaEymXsNO59(D@FH_h&5x;^b@lqXCim#ixpV4@p$|bFeWteT}f=bzLv?-%Qb)%~k rnWzCqPgea!{xATfh+Rrn literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage$ClickableType.class new file mode 100644 index 0000000000000000000000000000000000000000..24cc1b3fad98d34fc3d4a5c494202f2188fc10bd GIT binary patch literal 1562 zcmb_cZBG+H5Pp_k+v{-@INlKz6tyiv1$mo&rR2*kz^vcMKsz+D_Tj)}P?tG3 z-J-2~p6M|xlswaL__l5Bm|1T6?;UqPyKC&|hHp9C%Lcw>`R zi}lD7*K3qOEN^kkr=F*-h`)SAN)-ml-?gYbiLzDYx*xdYrt6B^X@bgm!#)cTNeM-z z!Q~SDn>z2+$NR$8Bh<1(L%tcfwu)XMCocwE6o(;d*bXN`ovCy~ z;a0ZxOv5MAxqqR+Fxl9x@FmYSct3kujR8e66t27R-WhB;T`7#ypF^XcP_)n|=mNA8 zzi=mBWMQH_KwH1)0?85*xQSb&zfIB|+Qp|Ffqg;KDIy<9Vi=?~7TU%MKNR8wK8L1I zt7uZ@E25{61itAK{w`_MIts%gHrc5kv)jQbmR!ls K2@~in^!)){>Wbt5 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ActionMessage.class new file mode 100644 index 0000000000000000000000000000000000000000..a0a1319a2d06bb52c55cd14c844ab403622e5346 GIT binary patch literal 3027 zcmbtWYgZFT7=9*+Y!a7?K~b?HSgIibSF2dtC>5gCXaE(eMXNGNhOn~irn?&yd%xd* zKz~8Mw&z&Ta!!w*{n($=b9#AacOeKgt$6mF*`3+<{=DnlBU>?wOLDlZ;7S~gI3tHKDL5X*n{skBj%#>J z4iiyakCVOeIBwu=1vlf^g}Sw@k;g+=%Sk^ogPUb- z%(Zp1oaxz=+2!QOdXTOR-mB_r;|!;s(|l`LxaTZ;mb5YyQuS#He9eu>IfV z2+0C>2)847Y71?a;4IpF%GDfU&k0+bJ97KP?JGyMoQ!LTB(v6R#WKm6?1>5mDJa~- z^_4GqVltZ1sw)kVZhXwD+C_0r_nPLZwmT$2P?1CrLu;+g2W^|r%U)N}jh7fQ&(YEf z?x>i7A-&8hFjZKnP%Uok-`}g^9oSTF6%NQ(6>|(b*Y?FwRX0k)R&f{iRN|6;21c6m z=qIpL+{e2r-oyK}dQ-uNDn7<142SBLcwLobaGw$~t3dX!2>@S)CICJwVe=7J@fki> z@P&#m@s)zFReXbQ8IEnHU<@s_+(!#{M3L|w+Ki>{HB7e3uD_9K|JBgWxx(hIMQwg? z17~x(TfJXnt*m88$(U<%(=oV9{d{0UqNt@3a0kQ1qfB%(2*@AI6FPHL(?!lO4q*nZzBAuVO@Wf^tLt#B0QGDWINd8BKd^zuEk#~q^IV{jc zx1oJ>>tb}(BKD^D0h)zy5E1$&s;4nUD?AFNpl?NvCOSA_-s{ z=_SyNR`k+L^>xsPLo}np;c#GYlH{a(`x3THq|y)3ut?{9>H#9Xj}Q&vTJKNvH-wty zHoD2}qNm-n-05ovmdOr|;AOJiNKZG8k|yyg`U7uI$XkT$O(tS_>EjXN48!DUE5i>+ z(}&9N7+Xe`&`60jr5DiLw}2LUCAQJ9KsS&d|NcE4rXQ`5(gL>US4k#z1R`k}bJ&Zy z0}6e2(5#c5E@ZGD0~FZ>s_`wVv8;~Fp%Z(&cx5dngKWaMiQ`^2uh41}LVu!B!3hPg z{^8Z{HL~WTQVsIzN-d!6A$ATgVb?@&WD&bZ(vQ);fIScJ0wuDy22;W-L<&&~AwjTo z5-2j5l(*isQqV4(#3^zU#cm4xbt6I9^z{YhhUPrOjbI4D2*y zS9Ah1J6BbpVshLsZCs4_A24%|sj(7P$=K_tKyD@V9U1-T?)dZ!IHBkIkKIV=dE1$b zcU4nh#c4_}4643*D(yhVzl71gz3V-7y;y}o(@tXL$4WL^ax1=c1LE#R(ydbaYUzU% zXQPC5%$BrzL7|h*o_pZhz8lo+^&pl}lr&;lU3=!qhL%Id?(Nw1_BY)|x(yzsfVmwe zktZK2z1OR0SUhlfprTTm^Sdpf`d(grT<-dfxc5Ut;1l)HGL@? zY=hEdB{=`BIUvxbM@~XKO=*z(Ru>GE3 zimyYF??e_E-6I@jbep7qc1ju%x?Mm8oYk4BpO(S$F+_Rd5SjAAA+qI>+#zx=(`DCb zhti~OG6T(4g)|AEXabiKg1^B2sYk5L$~ zj?g`Sgq|bxzCzy%3^ONpf_?!GvL_f2`0dT>mqY>#qUXu1D{uo{v}5#5(0dI9mT!uY oY1#!wm&mV`4w1P)O*5EHF_zn!KVmG;3alF_jT9N0qa%azTaV6SR{#J2 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ChunkPosition.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/ChunkPosition.class new file mode 100644 index 0000000000000000000000000000000000000000..cf3886459d5f0f6075fa89a2fbd3e61e8858d13b GIT binary patch literal 582 zcmbVJ%TB^T6g|@x3s?m4EiQBiUDyqAqj3R=E21VEqV7r=V4${1J5}R1xiOKLxbOq~ zDC3=hm}p#?$=t`8Ip^HWe0;vW18AaFL=I~OSXftK!^WnKEe7^LyG8qvVc|$bLLM{Z z>aA9z%V4$RK4&O*M8r?C+a6CY{a#2&wG#(^*!2^k`Z;LHkw_U1Iw=q0s2_>}_aZLu z<7DEEf`K1M5l5+)NfAoHQ?EVBqRDxj3WXn%+mOpE2D9Fvc~o=5P`rq^zi7GOKb!)9py$DE;}#JtdthTd6k%mb|CEkq>1PjJ%5! z7pc3ZbCYt}eFbxCQyA{f6y~!gI25ZS1iETLjaPSG_FkLAlgA6KI up4)ho)mhGcf$>CzL2@990`pqXnO&F*(pUXSHh+`VOdv6>{!L!d7OP+M7-Q4` literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/HCFUtils$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/HCFUtils$1.class new file mode 100644 index 0000000000000000000000000000000000000000..28a342d0b906e909ec333f1b0062fe6c78970f77 GIT binary patch literal 723 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 J{1*wd{{z8s+T;KL literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/Handler.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/Handler.class new file mode 100644 index 0000000000000000000000000000000000000000..8e808cca127d09f2b4a0a3c990164c9662fcde72 GIT binary patch literal 1581 zcmb7EZBx@g5Pq%{Lfaq+zVf2HQ;IgIh{~&2>F8KwMjXCh(`$N|CY|J}e@h)-q96PL z{wT-2wiA#Kv?eoqx0~I4p5436?>|3(0a!yZjSD(-1<-@pR{YYcga7g|L$cskDE)9rdg67nUKYVyUUtbcTJmk~9`itIy<<$O znhY6MyCiQa=_)CR6(`0b(99Zc(~%y7QITOAp)acmWE`Ph#$_&Km%HR{7n(lun}IEg zQd2cMF!>Yyo|_oMq>0NIHSo~H1SSovn|OrB2A-JM(E6r zRq`E21To#U9)pR(E2-kJE?uJgU#(g(@{v{#=*q_NT{xeMKjxkcYrO`?uu9fNK!?<5 zxTnawJr>*v-uEgZXi%Ts7=H8rGEl?)=4t2FdyIY~92u%JCuN=)IU1jht}_?+;an%NsXvlQfFMIAvw@od&y;)1g&AOA-1$Bl!dU3=sw*7!d{|q#~pvWFnXm zhQ8sF24pS3JTkN&C)f$vO%Z`xMEW+7ohI;E`Z7n>dD0f?U81Nd@@N-g(W+tlb6=47 YNSk&I11;lNi@Vu&=x}G0SbI(X1;@#_00000 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/JavaUtils.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/JavaUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..e17d196ef703de414fbeb48be41e97b654496097 GIT binary patch literal 6198 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/MapSorting$1.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/MapSorting$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4d80279ef70139765e93a427c0aa0fec12db239b GIT binary patch literal 1255 zcmbVLOK%e~5dNIkCTU7a+J-mf5lSAwQWZ|EDxs>Ckka-L)Vs5B6So^X+Vz5Z<>oeBd!x zJIVxP8};@vf6e1~8(WLq{ z+o4u&mxsdLjZ{3DNnLh4XL4V#*jY9!PqCw;z!SUD-k|c?xS!a$60)N_UxzgRJz)mA z=b%wS9)%K`XgPSqu$XWGN?1UJVf{ZY8N))Ha7sOfmA}Zsu=dYX4Eeq=hun{-@uhm= zgyzrnhNtu}b6{}j(WdDm9mp%v&LzvpW}BbDKF}tGIa+NnFpmNs?gh7Ms7OO#-lqQ?{#sS3~@c}r;Z}8jX>6VB$<{U z(f`uN45aN$e*iy<;jApjatI{BGxpxSd+)iAy=VRA?Z5v6xPfW`CaxB+h-(FmN0*3zv4zQMN!4{qmBD!{FHl^ju=vNgyx1KspI}Q?B-N^MKSBBR2 zc4tEck?Xe@*$gSlM&0(hI{910>NER=9UE)IQfgaK?T#JTkqS!lDRtEiBLa=I?T$`) z*qxde8hYR>Fq5(w=m{}1T;0n~zry1w4<=Qv)k?K`X^AeUQYQnfa&l^HxGmp~x`E7r z%^h3uqu`~$@8#ODxri}U*+i#kBAd*XdO`(%#tWyebhTG&wCz>%x2rsE{nRlsIF zPMS3gy^o>?H`hll;T->pO#X2(eLYE(#wc_C_&dd&#Z_qS!fS{>DP(Yzzu8zhj%mtf z&j80T!<~WSI6*7z+~AtwI(=~qnJtXG!sx<37!!Df>>t#Rq_C!AteKuYPU173(-Wug zIq^?Z9-N)oKKp`aXSvH@mXYW1B_$pCK3AP~et}`PklPvUL@M(KMIRw5G`2 zS$;E^XKTp81X*XJKcjykuTeSv{O$GQbmDOdd0gIZ;VeD%XZ$}HKfgxdZ{&3&(~c7~ Yxk6or{hr`DMakgG0(e6=aXxFj1M>Dhs{jB1 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/PacketUtils.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/PacketUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..e655d7f3e9fbe618652e5ad4481418b6eb61480d GIT binary patch literal 4210 zcmb_fX>;3D6g@ASVnq!OEup399*SeP6@@}e6B0_Af+0-`Neg8wimkY66e-AZ+LV3Y z%D(S23^RN!Go9kX!0@Rb_)QGMd6H}^X5yF`Cb5?H?mPF~?cJw8|NiB70Q>Nrias1y zaRLvico-)YJRP896*BUu_lh za1^*I)?z`$Q}7fNRrJE|LJ5mf@T|O?Q?R7qygPin8MhpB zqBK8adeg>?&5>)z-JD^cFg#1XM}uwtX{#u(Z@g&cTqkc^v!?Et{#nYk<|DZW6{uU!zt*awoxn&#s;Q* z&vFWb1LHY&UN5+A!8Ub1&by92V-!t&azW}cY~r?B1_}4a7H4hSEEx77uTYw&uCa4D zGZ3e6!gNaWfi{7j*piTdK>MO$mje514T%j zLf}Ehn+&F`f@An4k6Nsu>4UMQW8@aD9R8Pc!tt1JvmUBY(Pk~L=uf!LM9H=V4#YJ~ z&YUrGe%$}j$UsbCG(;Z-NHRxiKB`W3gt@`6&;>!tZCh?+BsrYoJpTvy6Id5yMgCsX z&S!mdK1>{eO{sC$E9f(&xjD<%8A{7v(vR83lIab~^zB#(o&|1LSx#U*6D|gO$d_uS zY?nzm)BVdOkx*4K-sw`h9$;@(pSPCa<5E@=kA4T!WCWt;_4%`T$J^{hfh zEQ=LQZWcT%eba6^dGnlr$O_!^e}D$4oo5N_p3NR+J%{lK!y%Aq%x)|QUKBe8Plx-# zsBIdKbfv)k%Q#xjBH>+cNzYcE2D1Z=Rn$VlDysqrY>j)gIvxY&K3H5e9sY~5OgYjwKP z)~MknysY3A4X@%g4G-W!4Z|2w@VbUK@TP*dG`x)q8t%rZz}{Gj2GtQ&Xr(wJ^G0Ri zgdx}P4&G(hHN1!S6?~xKLySqZBN{%!#|l2t@F^}3x?$CY2204vl0RkovSy^wpDFlU z!x#8cVE-!IY6%d~tEQK<^D6~kYxoA=YPcWc@^VbzmjB-E7@C^P!wpYhprK{)`Vi=@ zEtgF}KneQNpN1-i1)9+hQ|YW zw6KDc1ow#CX)`xB;re0I+8MXKO0H&VG{h}GmITXcEjor&_7v{eq#F~iWk;B|)%2hT z`Y=6{se1k2?Tea0xCAoTM zLseBtfy(Zlr^bb#wQ`aTP)0*QZ%jFKSZx6n?`o*H&ci${Ne{XHjNwgL=L0WgvyFAu zwtU(0b~mA}#!o<%Ex2;lNUhSlL%E>aXI6_|Hl8*&HDpy2Ws%eVuo-4j&9@tD;{m^q z9~giNo|&+j*DZY0c^AC5r+@Tp;^s1d^p=q!B&oO!^8E0#~34l+jfWwi8MEPJ)Gmdm=C{#a%c= zxPaX| zg7Y$gC#gxgpJ#&zZzRI&3S+vlj1Bc*cg4WEs-|>R!Fb+^zzz~j=2z>% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/ConfigFile.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/ConfigFile.class new file mode 100644 index 0000000000000000000000000000000000000000..330d4b14a6e93b91a6f6b2ac8170dc6dd572ba4f GIT binary patch literal 3308 zcmbVOYf}?f7=D&SHiYFCxhPl-1rbCDT5D0PiXfF5pcO>Xw)PN~uo8A-va!&cyPHbGaxo?cT@K@Nh{|EY z4+CdZO!`rQm=9C(Yx-cxZ(PM$KWY$@CliH8!Y)J#=j8C5ifOqwSKZrYk58pAqLo$gn~^Tz4oaidg2j5ltn8ZCIv)?O`hs4UMKICk;EaWG^Hwghs?v ztSeiEHuCoxreW_>(9jr8>Qoww8RL4$)a~c2#AIk9GA<(0dNOpltEZ!Bm~6VNF|sKM z8>Zf$ni|y;Lt<3&3xutRhz*N`A=hc4*Pbwv3ffmOp0bUYZRkmts7o^KWqv%CiW+pU zZWSAnAcHb!i^yc3h&u$F5S}OLm?g#(cp4oKlHwfsD*Uflh-vS@q3MVom%er|#R>|d zy4`K19M>uu-E%QvMni*k!Z4#9P2Dsb7xsko+{sM#E+b3*UehKM_ zHjJZs(y1^7l{u>Pq*M$2$NsCJO!g(WSQpxO=Q4^-|D&xJI?X3(3p2v&u$ggKHKuF; zWy_K2Q%RiNj@^V!btoaEH6O2wEew<4DbI4aYeLvvR!rt$gPjm&GA3-jGsfibcI(cL zd^xDKrLikV*jI{}2N93!CL4E4j*zcxed#+yPkgrJmNPkKiePDbE?z7kw@Lbpg*vLt zs4S^3npG!6vR|KOOZA%0XQ}al(KC8Pc2bWRBk3hQJ-sK($-RM#HPTifncqTe!LaFV6s>t<5)~+(zC=^Bg<@ z?@g?^f&A;ppM!c4{^o$!GY22n^C-9h|23+3(8{qI`5ddT2J89rr3M?ZfzX?{7et6V zm9BZTVLMj@!VWw{@SU8OK)K7qc`6=Ov5SHNJc9N#v(scI|5_!fc@*ZLrBR%NSe`?y zl9Yft1c*?>Sk%-17Dhkkj<0DyAr#{ur8eF@MwpOMv!mtFQ;US@nBjqj)N&U+i@^R&!(^#b!U zcNUn1>b(SS7DPUEz*lXNcXbx;HOO0cfUmoJ_R_{DWn!q(wqU%pw85RPok#iA+o%}1 ziON9L9M&;x>jLXJ%%S?~GOv2+)#I$mzAWgrENG%s5tvUP^B`}*U#t~bZTbRm$8FRQ zYeU$TJa7ve74&Vpg-r@(QNu}4!SAT;Z!T?UA-6d^c>L1cKbx<5e?{$xC&RRE8Pmae z)JwKrr$jfhI)Eq1_9$~O#G7%9MKa9Po?tdlIqZXs$qp2vmr@T;wb8R9PL%YtM`7BK kb?5H&aVE>644%KSNkzYkfjbD^q4)`k^9ZL9PR<7Z1+8u-W&i*H literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/LimitersFile.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/LimitersFile.class new file mode 100644 index 0000000000000000000000000000000000000000..7610e1358199308806b30cb090308309469fe09e GIT binary patch literal 3316 zcmbVOYf}_Q6g|VP%(4uxRZ+p{5)?s{MPm{aqasKoE|7?#XcE&b1B?ta>+Y;VUgrHY z@2BRSFMhGgR~2Hcr1CjGBb8raRbo!h%)%~gsR>o|bl>iK&$*Ajy?^}k%WnX-;pZ?K za7e}BFa~iXgri{;VWUn>M#ev>Lrg;5Jro=lY@4W|?toR-5G6;pC=I)vxLcmXe}cuB>} z3WB4CsVgXtpA@G>%&=qKT(>JIOW4+^F_uXQ$FMC0TjF+VEH<2(m@u4J-d;>vhz*HJ zvolwPHi~x|mf`GD(9jr9>r@&sjZr;j>CPEDH4z(6jEaP`o{sJB>~3!wB%4lqglsC} zhNbsqCWrOZAu%lZMdEfsn1do^$h9vFI^#xK!H#;{tg+aDlQOKa_NFeHO$ujR`tIf?cbBoHevjo4qmXisf-n#4 zwQW-ubgtl`V;&0+&`r`JoTft1Wwh)m#f>x>tSiL8QnHsd~@e1)BhN$z5hPpNo?9u62|mT)pDrlajXh!!-)Xb#w!R6>_U zqo69chFWCMG&EzA0xkCvsW_|QRlG*A>DOG#^rR_|zOG>d8a2FuH#NM4w^h8O;a$9^ zp$Qu`ypMAlw&Mc@OS1-Z>PN$eXw&c!x->k7T^c&DS3{>`;Y4Mb?TBjl44*3~jas%79knyoNS%f+@MV@oe$X{Mj{PdW((pCT zGtwF^NN2vmw=}&FS;Keup6T`>WtQi0Rs5jgNBqS6+`UOi0)_9ff|mPK-7naL^pt|S zyDRXv^WwRFxPJGrWeCTnqOATd;fQWq29wS<`b9b4JL~;A%Ssm4r|c8O`V`~9Tfnx# ztEkDgaZpdYb*7-YK&>8=YO(*=hgq(&JLUCe1sw}0HvNzGUh1}>v?HtpFU5Ms;hr&N z8>m`{OrI)}?0M`dY^{eXY_FinFKuYR1H?8q-+*!pMMKRq z2tIH?ScBDsUdz2G zV%(|r%%c@sxFQg?;vs@>Lv1k@u!gj&X89sS?T2uR=nlywB#J_jbqQsGAA8p5vA+C_v8Y@9*)RaagDjX&)? zk3GXJ)ZapBjPh1g(I@Gx#?xgaz60%CNhlRXaTPm*JkEyi`_}KnEh8L3D$b+Sn^j&e zzf2_$sGMIgE@4I`LX%klU>SB}5BGduA~ep2Pp~F?bD&#upoy}Az|eBA{k_Ak20IbUG`DNWGhP1Lur7gTItyVH%hwi oQJgkp-FbVxoXN7NLf~(#Rne!S|2CqxDSndTBEl(zle2+;0c!LrIsgCw literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/SchedulesFile.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/SchedulesFile.class new file mode 100644 index 0000000000000000000000000000000000000000..d7b7bbbb2614943c8abfbb4e8fe09d17dd9330bb GIT binary patch literal 3320 zcmbVOYf}?f7=AX1*$`HQs6f$bP(%b~RY7Z8JgZYFWg4S;%+j4xc4i_ro*WfPX+0a;)xWc+{UFiw+bN=% z7dI?@Z|?Yro*5D&5?>^4Cxv-XWDL2^3j@x$kyX%h592w%icS$)ui^ z;r6h~3aZ9*XS;f%}R-QpDQGP%?rupIiRq&%P? z%mdqO+tdYvt9a_DZhj(z2%%H?l;~QVD^lD03f^r(`>1-N+QE-h`#g z=f^$Om&u6J`J?rv76|a%{K{pcRcVn+ZFY zN$Rp`Sdfw?>XKR0(1FzowBl=|;*5q@@G83|Tj;v3)5lGD_B9PF(Wc>byrJPuyrtr8 z4e#Jx4eeN^;XRzyuo3Som|w71)Il0Pzy=K;V!MVd*s7rq+cfmch)NB|oY)OtmX3MVQXZBtakr}#`kb=0z*=%}5uQq3AZ#}@?@rD@mj7=u<&5!5G{ z2wns-2XCV$nPb16bz4nAeT8;CEY)KFk&6}7NrEcjX9ay_5ZnI;#aFv5ly!ua#*3#2rFv}NAELP z9A0zX-H~q*YOQSRuaNfHBGy5q)4D|l@2rsW*&LX^MvNrn*j`5yW1$I3dAeq%fjqVh z8Pk1KUr;IOFPc@yMRu<~Np1~T?xWQB;K(sODJj)2QUqN>?)g30PTnP)xwK44P-Hz6 zE830}C8D6@iChhriP6mOlU9Dy_)sPJinA(7P<)1bMT&7JS1U zQ}9Ou*D>cBf>#lof_fg|j!3{ig%H;_P<0LAD^&5Li(?al9P2R$jr^2p!V-S0tl-#% zrHHvZu6cB04Oeu8wRnim*Ks}%${il|saUV#VG6472sY%A9VIgP>yn^upt=Gqjp7Qx zd@e8v30Q^*T3kpi%t9w~ARYUmw9whcX=j2-P`DAfim)5Bb^)Q?tENzM#g$h<Tu`>k(#dA_QA-04%_x=;dBMmI#gWO>!^ebr<~?%ZzWK@vSu8dw1h}LzNkC znnqsd%_8TZ1}-2_doihz=F%S zuyFV~>LU$PXk^+NBM)$xLeu54sCF@`0W=_9C=vT zZebC9EslGV2XA7Df<3EmVyS|2Sj0(G!Eb2Z+fm!vNo-SCcId*LKRPZ4enIoFzkqak z8PdcJv`Dl8w?&t*JAi#e`vhx{U=IzkNe-|Yhgi+SF8U~QvKG~hr^pC74`;G1>frwiOI7SuF?bu%+Z6Ak*hg0i_PevhKN`;~c>n+a literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/file/UtilitiesFile.class new file mode 100644 index 0000000000000000000000000000000000000000..5bab72769f5bdb7fd5e5bc6339dbc17527303a5c GIT binary patch literal 3320 zcmbVOYf}?f7=D&SHiYFCxhPl-1rbCDTHB&n6+tRBKr4u%ZS5f}uo8A-va!&cyPHbGaxo?cT@K@Nn2^Jy z9|lgVnDV0nQ6Hw|*Yv@X-g)`#c(cpfjPcu~bm z3cTY+R98?OJ}u6QkYR;-xb9F;6tT>4VEF z(XLDt+Q{Eyn1;PqK|^CWp;KurYK-e4Q@5YB;!~l?$he3|>xs~zuAYvjVY2D6#>l25 zY?yj~a(Yyc4~bF9FA%mOB04PMhFqtFUVG9=DCk(lc+xhawxK6nqDQ$hPN|r;y@l1j0PMEq>e4JCA z@wk{x9j(kx_iQYk@)VzJg*_`t?q!hAsCbzk4jL1tu#<77qx~L;<}}7=4qC~0M3+Uw zgk%*_tBjh4W^7ZSWnLo{=QO;6S6MZZuv2xdv(r&|_B9P#(5T^cyrJPuyrtr84e#Jx z4Ncgp;XRz!unX@iSev$(Q9&9$K)Z$y(XHVT?A6eT0~)&I@*sLte5B!He4?Ogc|H#$ zjp&#jmjv1sl)6a_3OgtZZFf+^r}#`kVbHYf;JB4E$7(fvjxW+Ivcs<7Q5;h7rG~FC z$5?B)Af5Rd-_Z1OWDVcqJ0?5@Df7I9tKxeNKj23NyYAj6B!Pdq$_iTVQTLEwBhupv zYVWSV3(r(LjyR6@+B&>Nk*gi~q?DszS( zrtAb|%aQ3*NsMieZH3)+C@!QmA72bx7$(D0p5buUq_DfJsLaC#J1)#bRM>iFl*!>W z*PR{tico7yV^@x_uM{y4A{Nt4cJP)QAz#@8Q`d-|_-xCqXmU&!L3W=mUMe8BTl$Q} zI;u>oWYrhVs*@toug|czdQIn(ZG2$#v>uTy)g#78I;**-_GCG^mvHIQG9>vT;j-A= zcrqgpX(d5We+~KbP%psW9PoPP;p2J%1=r!fN)-=UIaVW|V-?n5J%7s7U?VmVdK348 z2yv&e_lk*ZNcX&8Y#e*syqM!f|qdmp!6q(7tR!M3Bg*j+x6z3q8 z=MbwTC7=!gBGfPz_4L1m5s<(hDD?!}wFoB2QsGA68vKsa+C}&dZ=FZ+RYzU`jX&>P zk6pv9)Zb2Ni1Id+(I@Gx#?wV4z8f7}NhlS0VHJD4JkE}v@@*gmS57#Bl+2;fot0iL zzDy+-sF+_cE`CNOK$B?zpd9r5OyW^-NZ%(ecNtglY%+aa1vDT8*2NTOB-6qZ65a@yLji1<}2P`P&?vDGp$?3 zbZ`OnlC9S%(T%JQ;0dxl!W<0oW*lXa3^TRInaz_9`ygYo1BK|N)WcJ4^z5(`B|YU) nm^NhHxqE$_$+9Se=Pzth(XV3QHiEY)ew^Yw!YPE4v%!A=XgDki literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis$RedisCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fdb44ac6fa34abeb5c6f8ac66c85fac2d23f77c8 GIT binary patch literal 421 zcmb7=&q@O^5XQf$b=O_1_7OaIs22m`$%-Bdf>IFdzCg@QYt}S@B&+Y{!3Xf6#O(Ig zg5YIle#89x=KJUK3&0h|ISz9i6ZU*-31Tw$TDBUWo$hYPXFw#s#HF?sjhd&-0r3b<-)aI@x3-_botz!aM2x*joL)bL2T6Y&1b!xx%FDwnlReJ2W#2Sj0}MTVZ1GsaQXk0 l8G$fJj|OO%evDz_{X_#~i8fJ=gFaK>DETr~B)J%6#V^V+ctQXG literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/Redis.class new file mode 100644 index 0000000000000000000000000000000000000000..03d12b1ab5902816ab703bf39309ef3282f6d50d GIT binary patch literal 2002 zcmbtUT~{1M5WUTQj5`c$fCME#AQ8<1A!A~UxU9rv1<5)K3A^CO+b}dRFgwGUnN7?u z@-@bDF#4cxKKPIF5cT#f*--BcB698XxRQX)rY<>!?I^b zk&Fa#+{8;^7=!{BtbO~5ZF;u9Yg&Q7yC9G)xxO1O3Zx3tn*!-_uq_4hmg~#aW@Af+ zb$iRBWzY&7+uO85SLw&bbiC&>#2qV=PT+5Q?v6Bl89xoe19Q*Wv7Oir{K#y^t{1y9 zGD8K_OyDwfK5Y6Yp>Gua$4gV)Z!AoArMR}WFP)f?1QWQ_b+Ghjh zb0O5I&#@nywsEK-&7SeFocU5zA~_ahZ-sdzJ_I>id6$^cqA~?sdJkF z1|F+R>jrA5YuGTbiEj)HV9>y~>eB7E=Qane6RFivfqQTN&Ix744B>h67e zF#1DDI`ZRq6X?pBPw-F6ABL_UCp@o*wnNf%wWszhie*D!z-fjdr?l=iWYzUNHNX54 zD+2wUUMd0#XisdfDc5#b^+Kf^<1s%kwh%rDg9F*diL3m&`}pCLvWi{YrMM?!xn81X zQVPn<%r6i>anplguGz$x#k<@aEeE`Z5o$SH#wfjbSDb4So#;+>bs{S2LFM(eCsSX9Q_jzh&Xb^TZ$N&j)w8_Ch1x9P;!XrRN1qayP|<=ZN?gJ?EK6k!Kqi4gSWK)gUzE5|DGITqOyR#U6mM`8O z`~m(b>{4fh$pgLMZt z80rs|R^}1Il;7+!RG%b~WS9+{9}Weg93OooY$ zVs#+7mgZfO4)|esAVQ-Oo$=hL*eIFtR7NV}ozC9V7lOiNy2~(==vT2gm1&Ulm1fxX zgCy&n%`&V_ z0u|NHT6Xu7JPqY@Wr>+9jk9wkPK1YPxDGZv+{C7XTOMx1_s~Sk!IpWlqNnprtLBQOiDt z2BCDcdYj9=h@K7M6b;)qP;8#E9SUiSA(6N6(_PH7Z&IcE6majK>FE$Wy~KKc90^0f zoBr=*M|!zVvx{}q>5nj+qYqOdNt>gyK^iB?NY+{(!QK~ckIs5wbTC7AZxn#@m?e!i zg9`*=liMUKB$u{6pz;}045Lex;S*|SXl@bJz#?H;#HCTz7}4tUxJbwgq#Pe4AssW-{5{?WazJ~EZ&|O-6}p547Kbw;=?*E+EXwCaWOrSO$7f9h!9_k))_FjA{Hb-+jw`;q9$ICW)(e2VKA$l|dm zQM5L!F9LYdfKOEuiL>r6A}@#F5A2n?w!W}z)+G2E9* zGaTOmhQVFdNfd~?(#B=NW+FBJyv+`U?v4sV9aH=t3e(p;2fur`jH-wI@H~8n2@e$< zp>)n`ZDJGg^^7sDl<-FtS7^KH;V`Z{xZ&X@W*N%X%76!b;b6|gEzCP;d$^4|3|GE2 z*bHZMwCZ=0!9W^6Ch%SoipZZ&2}_AmS>`W)n*u7nWWC3YaB&y+82rW#LER=dE_KL) zgGDNXC7Zvt9uB#pHW0fggXZ2!FjY{`tD(}kxF^3;Vah($Y95DSrSZRQ*(N$vc$tvdzGpbt$cucQ21lc`9kyu>YJ`3)48y`GxcM=X>zfhOR!Ux9N7L+aaNolNJo0c9 z#~5b!9?VVoU^t!no7yGSh8_sNlTHU}9&SgAj$SeBAAUJGctSPU(Rz@qGknZDHUh}{ zZh@*Q6mdP{oZ0GIjcjQwpzVPCNlF#iFMV!VN{6K%lNU}^jFpg{VT+fus=-@FPk~O~&)q30@o+eso{s&{4Hmd*t literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class b/HCF/out/production/HCFCore/secondlife/network/hcfactions/utilties/redis/UUIDUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..0fa40178385f49fd957d1a27b36fc561e331f884 GIT binary patch literal 4805 zcmbtY`Ck>+75@%An8z>(Levm9R761Kg~VzUVyZ-g$pcM5tu}2syf;2Zh8dg%L%OF; zy6>yqce~g&F)fR>scq9XP1AJW+yA0JbxXhZ&OF{c#I4oOXYS0s=X~!u-*e8rhxgon zE<6oj8~&!D8%87FPiQD$RD*?+D#kQa!O&o1ycP~z4Yy)KLkCW!;fc{#5ooA`kwz%S zN%1(H#=~Nq((njgT|=GM)Z(>xor>3sk2h#ofj5fBqqTSw-du~v@VI!qMa5fdu?BBb z@pcU@@WsbFgz7uRUhh)zZVemp9`Sgun0}v%_owjz4IjjZ#P_2@>%%HOqM-|hijS%| zqd-64IHuQU8@_M)3bZh^^26?+F>WfT&z>|UjZ7F=c4oks=uuEJWEC7E2tBUeUcTC! z_&j|0z}-F3w{19u%uwK2PN8Qv5j2O;!>*9H5=2sEA*g_;?zJ2%*sY+lz2k_2RG*ud z##)X!7><>zg^($=lWmGvk=SY1bRejOI=l zxxjKAU-}$arl0Z5yya(vxra%E&+SvAt~*96OvjfzG_@}@vg0_V1d$3F7Op9%8w!lv z82OAXstzaeMnHQvUIuhIg~H(~(+RvOj{Bla0!I6_@E)eOKGjgM5OjMOrRmwrmid-dK6KVXC1SrFH-Fo*Y^oqtLi*G&!t`kv2?&EZ~m!w8@r46~E zmoxWUqKcNx=YE&SBON=ji+R1*bpt=}jEMm=7kLZd>&s= z@kJe9!daHw4Od*h!2&fs6<^lz6?|32*L0l2*LB>7`*nN+-xN6>+P01-@T7tj3-f$$ zXxVv_@vCUtrsF)G5|3{wSl!Z=%UgM8Q_wPMOqwl5iwt?bMHEbzj&EaH#f*+w%;~rt z+sKcO3%ICYY3V@hH~djjtz!oWz7yZk@m)Nv;(Iz?hD$649pA?fbo>y{C}=9_&4)+F zkHpfF(vo0W$B*%hj-TLJ9Y4kN|3aHQs9L*)QTOP04nNcJJf3CD7V^XMT%1zUc@;m` z@dAFKzocZsW1t7BTpE-2B zO#X@{l;qQa8=>;PVbm5DD-ky?5~fKj2p=i6D+7Lkm!9nwSgO7&&hIk6ie{6m%84+L zWS2IIjZAF4h}rQJt2O4Mc>T!;q!}%5YRDw?(xMYmfK&7!QOr_id6`VH=qad<8vda9 zFk#r_iFV47ALYc%o04X39uc8uxcGXX$?mAyGsoRY&Ri=M=22<`H|w5eGi>;RH@HXiwq_g7q>0*szj(m(~xp6px}>0^ZN6xn0j zqIwgtD8?>v{qsO1qISY_$D>shzti!1{7J_H7*cT8A_;TlCRZL@Wyhd`^`-2voJn`g z%w%Ot##`SI&9W;R(c1CSmx{lT`z#x_a6-ZJNe5zps9}iicE2@}T;z|1gy&_7!|YX) z;@7_zZFzOwWZlKceTHohS%Jwm>94H8%LrM_9|dc!E{Aoz!@BtwWd$_RVu1ai{MycM zb`YzN>am&6E&QKJ*xrRc z+|BiUQeN4@t@q=eckn9?29iogNe^*R?1I?u?t#fFv5NB%1)Ki%f6O#PJe=C@X1hH8(ao8)?htEF-c-Fq(|P z{<0X5@Jr~J#nxS^VnjN2Rndm#RC86tJRNJUqG!#i==3nWqwOHW6>j6Wp6+iH2!vh3A9M~>*WlCqJ?b+Y|A0T^ RkECLRt0I+h)Xl?0{=c`6C}IEr literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCFCore/utilities.yml b/HCF/out/production/HCFCore/utilities.yml new file mode 100644 index 0000000..2137d42 --- /dev/null +++ b/HCF/out/production/HCFCore/utilities.yml @@ -0,0 +1,15 @@ +map-kit-items: '' +first-join-items: | + rO0ABXcEAAAAJHNyABpvcmcuYnVra2l0LnV0aWwuaW8uV3JhcHBlcvJQR+zxEm8FAgABTAADbWFw + dAAPTGphdmEvdXRpbC9NYXA7eHBzcgA1Y29tLmdvb2dsZS5jb21tb24uY29sbGVjdC5JbW11dGFi + bGVNYXAkU2VyaWFsaXplZEZvcm0AAAAAAAAAAAIAAlsABGtleXN0ABNbTGphdmEvbGFuZy9PYmpl + Y3Q7WwAGdmFsdWVzcQB+AAR4cHVyABNbTGphdmEubGFuZy5PYmplY3Q7kM5YnxBzKWwCAAB4cAAA + AAN0AAI9PXQABHR5cGV0AARtZXRhdXEAfgAGAAAAA3QAHm9yZy5idWtraXQuaW52ZW50b3J5Lkl0 + ZW1TdGFja3QAC0ZJU0hJTkdfUk9Ec3EAfgAAc3EAfgADdXEAfgAGAAAABHEAfgAIdAAJbWV0YS10 + eXBldAAMZGlzcGxheS1uYW1ldAAIZW5jaGFudHN1cQB+AAYAAAAEdAAISXRlbU1ldGF0AApVTlNQ + RUNJRklDdAAOwqdjRmlzaGluZyBSb2RzcQB+AAN1cQB+AAYAAAABdAAETFVSRXVxAH4ABgAAAAFz + cgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1i + ZXKGrJUdC5TgiwIAAHhwAAAAA3NxAH4AAHNxAH4AA3VxAH4ABgAAAARxAH4ACHEAfgAJdAAGYW1v + dW50cQB+AAp1cQB+AAYAAAAEcQB+AAx0AAtDT09LRURfQkVFRnNxAH4AHAAAACBzcQB+AABzcQB+ + AAN1cQB+AAYAAAADcQB+AAhxAH4AEXEAfgASdXEAfgAGAAAAA3EAfgAVcQB+ABZ0AAjCp2FTdGVh + a3BwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHA= \ No newline at end of file diff --git a/HCF/src/META-INF/MANIFEST.MF b/HCF/src/META-INF/MANIFEST.MF new file mode 100644 index 0000000..7427cc4 --- /dev/null +++ b/HCF/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: HCF + diff --git a/HCF/src/config.yml b/HCF/src/config.yml new file mode 100644 index 0000000..a4c0e9e --- /dev/null +++ b/HCF/src/config.yml @@ -0,0 +1,49 @@ +SERVERNAME: "Test" +SCOREBOARD: + TITLE: "&5&lSecondLife &d(Map 14)" +ECONOMY: + SIGN: + BUY_TEXT: + - "&a[Buy]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" + SELL_TEXT: + - "&c[Sell]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" +DEATH_SIGN: + SIGN: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "%TIME%" + ITEM_STACK: + NAME: "&aDeath Sign" + LORE: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "&d%TIME%" +kitmap: false +coords: +- '&7&m-----------------------------' +- ' &e&lImportant coordinates (x,z)' +- ' &7- &aSpawn&7: 0 , 0' +- ' &7- &3Towers Koth&7: 500 , 500' +- ' &7- &3Islands Koth&7: -500 , 500' +- ' &7- &3Moon Koth&7: 500 , -500' +- ' &7- &3End Koth&7: -80, 90 (End)' +- ' &7- &3&lConquest&7: -500 , -500' +- ' &7- &cEnd Portal&7: 700 , 700 (All quadrants)' +- '&7&m-----------------------------' +help: +- '&7&m-----------------------------' +- ' &7- &6/faction &7- Use to see all factions related commands.' +- ' &7- &6/koth &7- Use to see all koth related commands.' +- ' &7- &6/lives &7- Use to check your lives amount.' +- ' &7- &6/mapkit &7- Use to check this map kit.' +- ' &7- &6/coords &7- Use to see all important coordinates.' +- ' &7- &6/logout &7- Logout countdown for safe logout.' +- '&7&m-----------------------------' \ No newline at end of file diff --git a/HCF/src/factions.yml b/HCF/src/factions.yml new file mode 100644 index 0000000..1df0584 --- /dev/null +++ b/HCF/src/factions.yml @@ -0,0 +1 @@ +factions: \ No newline at end of file diff --git a/HCF/src/limiters.yml b/HCF/src/limiters.yml new file mode 100644 index 0000000..79fe08e --- /dev/null +++ b/HCF/src/limiters.yml @@ -0,0 +1,107 @@ +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable enchantment ### +### Use other values to limit enchantment level ### +############################################################## +enchantment-limiter: + ARROW_DAMAGE: 4 + ARROW_FIRE: 0 + ARROW_INFINITE: -1 + ARROW_KNOCKBACK: 1 + DAMAGE_ALL: 1 + DAMAGE_ARTHROPODS: -1 + DAMAGE_UNDEAD: -1 + DIG_SPEED: -1 + DURABILITY: -1 + FIRE_ASPECT: 0 + KNOCKBACK: 1 + LOOT_BONUS_BLOCKS: -1 + LOOT_BONUS_MOBS: -1 + LUCK: -1 + LURE: -1 + OXYGEN: -1 + PROTECTION_ENVIRONMENTAL: 2 + PROTECTION_EXPLOSIONS: -1 + PROTECTION_FALL: -1 + PROTECTION_FIRE: -1 + PROTECTION_PROJECTILE: -1 + SILK_TOUCH: -1 + THORNS: 0 + WATER_WORKER: -1 + +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable potion ### +### Use other values to limit potion level ### +### Change extended to false to disable extended potions ### +############################################################## +potion-limiter: + SPEED: + level: -1 + extended: true + SLOW: + level: 1 + extended: false + FAST_DIGGING: + level: -1 + extended: true + SLOW_DIGGING: + level: -1 + extended: true + INCREASE_DAMAGE: + level: 0 + extended: true + HEAL: + level: -1 + extended: true + HARM: + level: 0 + extended: true + JUMP: + level: -1 + extended: true + CONFUSION: + level: -1 + extended: true + REGENERATION: + level: 0 + extended: true + DAMAGE_RESISTANCE: + level: -1 + extended: true + FIRE_RESISTANCE: + level: -1 + extended: true + WATER_BREATHING: + level: -1 + extended: true + INVISIBILITY: + level: 0 + extended: true + BLINDNESS: + level: -1 + extended: true + NIGHT_VISION: + level: -1 + extended: true + HUNGER: + level: 0 + extended: true + WEAKNESS: + level: 0 + extended: true + POISON: + level: 1 + extended: false + WITHER: + level: -1 + extended: true + HEALTH_BOOST: + level: -1 + extended: true + ABSORPTION: + level: -1 + extended: true + SATURATION: + level: -1 + extended: true \ No newline at end of file diff --git a/HCF/src/plugin.yml b/HCF/src/plugin.yml new file mode 100644 index 0000000..65552bd --- /dev/null +++ b/HCF/src/plugin.yml @@ -0,0 +1,114 @@ +name: SecondLife +main: secondlife.network.hcfactions.HCF +version: 6.0 +description: SL HCF Core. +author: SecondLife Development Team +depend: [Vituz] +commands: + faction: + description: Faction Command + aliases: [f, fac, team, t] + master: + description: Master Command + ultimate: + description: Ultimate Command + ultra: + description: Ultra Command + balance: + description: Balance Command + aliases: [bal, eco, economy] + block: + description: Blcok Command + aliases: [cobble, filter, blocks, cobblestone] + bottle: + description: Bottle Command + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chest: + description: Chest Command + aliases: [pv, playervault] + coords: + description: Coords Command + aliases: [coordinates] + crowbar: + description: Crowbar Command + deathban: + description: Deathban Command + aliases: [db, dban, deathb] + endportal: + description: EndPortal Command + aliases: [lightportal, lighportal] + eotw: + description: EOTW Command + event: + description: KoTH Command + aliases: [game, koth, conquest] + firstjoinitems: + description: FirstJoinItems Command + aliases: [fji] + focus: + description: Focus Command + glowstone: + description: Glowstone Command + aliases: [glow, glowmountain, mountain, glowstonemountain] + help: + description: Help Command + aliases: ["?"] + lastdeaths: + description: LastDeaths Command + aliases: [ldeaths, lastd] + logout: + description: Logout Command + mapkit: + description: MapKit Command + pay: + description: Pay Command + pvp: + description: PvP Command + aliases: [prot, timer, pvptimer, lives] + reclaim: + description: Reclaim Command + aliases: [claimlives, claimkeys] + regen: + description: Regen Command + savedata: + description: SaveData Command + aliases: [sd] + set: + description: Set Command + sotw: + description: SOTW Command + spawn: + description: Spawn Command + staff: + description: StaffMode Command + aliases: [mod, staffmode, modmode] + stats: + description: Stats Command + aliases: [status, ores] + sumo: + description: Sumo Command + tellcoords: + description: TellCoords Command + aliases: [tl] + togglelightning: + description: ToggleLightning Command + vanish: + description: Vanish Command + aliases: [v] + togglebroadcasts: + description: ToggleBroadcasts Command + aliases: [togglefd, tfd, fo, fd, foundore] + secondlife: + description: SecondLife Command + aliases: [core] + deathlookup: + description: Deathlookup Command + aliases: [dl, deathl, dlookup, deathlook, lookdeath] + lastinventory: + description: Lastinventory Command + aliases: [li, lastinv, lastinventory, restoreinv, restoreinventory, ri] \ No newline at end of file diff --git a/HCF/src/schedules.yml b/HCF/src/schedules.yml new file mode 100644 index 0000000..b307ffe --- /dev/null +++ b/HCF/src/schedules.yml @@ -0,0 +1,9 @@ +# Add more koths in the same day by adding a splitter '#' after each event + +schedule-monday: "6:00PM/Temple/15" +schedule-tuesday: "6:00PM/Temple/15" +schedule-wednesday: "6:00PM/Temple/15" +schedule-thursday: "6:00PM/Temple/15" +schedule-friday: "6:00PM/Temple/15" +schedule-saturday: "6:00PM/Temple/15" +schedule-sunday: "6:00PM/Temple/15" diff --git a/HCF/src/secondlife/network/hcfactions/HCF.java b/HCF/src/secondlife/network/hcfactions/HCF.java new file mode 100644 index 0000000..7f882ac --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/HCF.java @@ -0,0 +1,186 @@ +package secondlife.network.hcfactions; + +import club.minemen.spigot.ClubSpigot; +import lombok.Getter; +import net.minecraft.server.v1_8_R3.MinecraftServer; +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.scheduler.BukkitRunnable; +import redis.clients.jedis.JedisPool; +import redis.clients.jedis.JedisPoolConfig; +import secondlife.network.hcfactions.classes.utils.ArmorClassHandler; +import secondlife.network.hcfactions.classes.utils.bard.EffectRestorerHandler; +import secondlife.network.hcfactions.commands.CommandHandler; +import secondlife.network.hcfactions.commands.arguments.event.*; +import secondlife.network.hcfactions.economy.EconomySignHandler; +import secondlife.network.hcfactions.elevators.SignElevatorHandler; +import secondlife.network.hcfactions.events.EventManager; +import secondlife.network.hcfactions.events.SpawnManager; +import secondlife.network.hcfactions.factions.claim.ClaimWandHandler; +import secondlife.network.hcfactions.factions.commands.SubCommandExecutor; +import secondlife.network.hcfactions.factions.handlers.ProtectionHandler; +import secondlife.network.hcfactions.factions.handlers.SignSubclaimHandler; +import secondlife.network.hcfactions.handlers.*; +import secondlife.network.hcfactions.staff.handlers.StaffModeHandler; +import secondlife.network.hcfactions.staff.handlers.VanishHandler; +import secondlife.network.hcfactions.stattrack.StatTrackerHandler; +import secondlife.network.hcfactions.timers.*; +import secondlife.network.hcfactions.utilties.Handler; +import secondlife.network.hcfactions.utilties.file.ConfigFile; +import secondlife.network.hcfactions.utilties.file.LimitersFile; +import secondlife.network.hcfactions.utilties.file.SchedulesFile; +import secondlife.network.hcfactions.utilties.file.UtilitiesFile; +import secondlife.network.hcfactions.utilties.redis.UUIDUtils; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.providers.nametags.VituzNametag; +import secondlife.network.vituz.providers.scoreboard.VituzScoreboard; +import secondlife.network.vituz.providers.tab.VituzTab; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; + +@Getter +public class HCF extends JavaPlugin { + + @Getter private static HCF instance; + + public static JedisPool redis; + + private secondlife.network.vituz.utilties.ConfigFile factions; + private EventManager eventManager; + private SpawnManager spawnManager; + + @Override + public void onEnable() { + instance = this; + + RegisterHandler.hook(); + + factions = new secondlife.network.vituz.utilties.ConfigFile(this, "factions.yml"); + + new ConfigFile(this); + new LimitersFile(this); + new UtilitiesFile(this); + new SchedulesFile(this); + + connectToRedis(); + registerHandlers(); + registerCommands(); + + UUIDUtils.hook(); + + eventManager = new EventManager(); + spawnManager = new SpawnManager(); + + VituzTab.setLayoutProvider(new TabLayoutHandler()); + VituzNametag.registerProvider(new NametagsHandler("", 16)); + VituzScoreboard.setConfiguration(ScoreboardLayoutHandler.create()); + + new BukkitRunnable() { + public void run() { + long l = System.currentTimeMillis(); + + Bukkit.broadcastMessage(Color.translate("&a&lSaving " + RegisterHandler.getInstancee().getFactionManager().getFactions().size() + " factions...")); + + RegisterHandler.getInstancee().getFactionManager().saveFactionData(); + + Bukkit.broadcastMessage(Color.translate("&a&lSaving took " + (System.currentTimeMillis() - l) + " ms!")); + } + }.runTaskTimerAsynchronously(this, 12000L, 12000L); + } + + @Override + public void onDisable() { + RegisterHandler.getInstancee().getFactionManager().saveFactionData(); + spawnManager.saveConfig(); + + Handler.disable(); + } + + private void registerHandlers() { + new HCFDataHandler(this); + new RegisterHandler(this); + new EffectRestorerHandler(this); + new HCFConfiguration(this); + new CommandHandler(this); + new SubCommandExecutor(this); + new GlassHandler(this); + + new ArmorClassHandler(this); + new ClaimWandHandler(this); + new ProtectionHandler(this); + new SignSubclaimHandler(this); + + ClubSpigot.INSTANCE.addMovementHandler(new CustomMovementHandler()); + + new ArcherHandler(this); + new AppleHandler(this); + new EnderpearlHandler(this); + new GappleHandler(this); + new LogoutHandler(this); + new ClassWarmupHandler(this); + new HomeHandler(this); + new SpawnTagHandler(this); + new GameHandler(this); + new StuckHandler(this); + + new OnlineDonatorsHandler(this); + new PearlFixHandler(this); + new SignElevatorHandler(this); + new BorderHandler(this); + new ChatHandler(this); + new CombatLoggerHandler(this); + new DeathMessagesHandler(this); + new DynamicPlayerHandler(this); + if(HCFConfiguration.kitMap) new ThrowableCobwebHandler(this); + new EventSignHandler(this); + new FurnaceSpeedHandler(this); + new StatTrackerHandler(this); + if(HCFConfiguration.kitMap) new KillStreakHandler(this); + if(HCFConfiguration.kitMap) new KitMapHandler(this); + if(HCFConfiguration.kitMap) new KitSignHandler(this); + new MapKitHandler(this); + new ShopHandler(this); + new EconomySignHandler(this); + new StaffModeHandler(this); + new VanishHandler(this); + } + + public void connectToRedis() { + try { + if(Vituz.getInstance().getConfig().getBoolean("DATABASE.AUTHENTICATION.ENABLED")) { + redis = new JedisPool(new JedisPoolConfig(), Vituz.getInstance().getDatabaseManager().getDedihost(), 6379, 20_000, Vituz.getInstance().getConfig().getString("DATABASE.AUTHENTICATION.PASSWORD"), 0, null); + } else { + redis = new JedisPool(new JedisPoolConfig(), Vituz.getInstance().getDatabaseManager().getDedihost(), 6379, 20_000); + } + } catch(Exception e) { + redis = null; + + e.printStackTrace(); + + Msg.logConsole("&4&l*** &c&lCouldn't connect to a Redis instance at " + Vituz.getInstance().getDatabaseManager().getDedihost() + "&c!"); + } + } + + private void registerCommands() { + Arrays.asList( + new JoinEventCommand(), + new LeaveEventCommand(), + new HostCommand(), + new EventManagerCommand(), + new SpawnsCommand() + ).forEach(command -> registerCommand(command, command.getName())); + } + + public void registerCommand(Command command, String name) { + Map commands = new HashMap<>(); + commands.put(name, command); + for (Map.Entry entry : commands.entrySet()) { + MinecraftServer.getServer().server.getCommandMap().register(entry.getKey(), "SecondLife", entry.getValue()); + } + } +} \ No newline at end of file diff --git a/HCF/src/secondlife/network/hcfactions/HCFConfiguration.java b/HCF/src/secondlife/network/hcfactions/HCFConfiguration.java new file mode 100644 index 0000000..9e400c6 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/HCFConfiguration.java @@ -0,0 +1,108 @@ +package secondlife.network.hcfactions; + +import java.util.EnumMap; +import java.util.Map; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.ChatColor; +import org.bukkit.World; + +import secondlife.network.hcfactions.utilties.Handler; +import secondlife.network.hcfactions.utilties.file.ConfigFile; + +public class HCFConfiguration extends Handler { + + public static int subclaimNameMinCharacters; + public static int subclaimNameMaxCharacters; + public static int factionNameMinCharacters; + public static int factionNameMaxCharacters; + public static int maxMembers; + public static int roadMinHeight; + public static int roadMaxHeight; + public static int maxAllysPerFaction; + public static int maxClaimsPerFaction; + public static int conquestDeathLoss; + public static int conquestWinPoints; + public static int warzoneRadius; + public static int citadelResetTime; + + public static ChatColor teammateColor; + public static ChatColor allyColor; + public static ChatColor captainColor; + public static ChatColor enemyColor; + public static ChatColor spawnColor; + public static ChatColor roadColor; + public static ChatColor warzoneColor; + public static ChatColor wildernessColor; + + public static boolean kitMap; + public static boolean disableObsidianGenerators; + public static boolean allowClaimingOnRoads; + + public static double dtrIncrementBetweenUpdate; + public static double maxDtr; + + public static String dtrWordsBetweenUpdate; + + public static long dtrUpdate; + + public static Map bordersizes = new EnumMap<>(World.Environment.class); + + public HCFConfiguration(HCF plugin) { + super(plugin); + + kitMap = ConfigFile.configuration.getBoolean("kitmap"); + + if(kitMap) { + bordersizes.put(World.Environment.NORMAL, 2500); + bordersizes.put(World.Environment.NETHER, 50); + bordersizes.put(World.Environment.THE_END, 1000); + + warzoneRadius = 200; + maxMembers = 30; + maxClaimsPerFaction = 2; + dtrWordsBetweenUpdate = DurationFormatUtils.formatDurationWords(1, true, true); + dtrUpdate = 1; + dtrIncrementBetweenUpdate = 1; + maxDtr = 6.0; + } else { + bordersizes.put(World.Environment.NORMAL, 3000); + bordersizes.put(World.Environment.NETHER, 1000); + bordersizes.put(World.Environment.THE_END, 1000); + + citadelResetTime = 17; + warzoneRadius = 1000; + maxMembers = 5; + maxClaimsPerFaction = 8; + dtrWordsBetweenUpdate = DurationFormatUtils.formatDurationWords(45000, true, true); + dtrUpdate = 45000; + dtrIncrementBetweenUpdate = 0.1; + maxDtr = 4.0; + } + + subclaimNameMinCharacters = 3; + subclaimNameMaxCharacters = 16; + factionNameMinCharacters = 3; + factionNameMaxCharacters = 16; + + roadMinHeight = 0; + roadMaxHeight = 256; + + conquestDeathLoss = 20; + conquestWinPoints = 300; + + maxAllysPerFaction = 0; + + teammateColor = ChatColor.DARK_GREEN; + allyColor = ChatColor.LIGHT_PURPLE; + captainColor = ChatColor.LIGHT_PURPLE; + enemyColor = ChatColor.YELLOW; + spawnColor = ChatColor.GREEN; + roadColor = ChatColor.RED; + warzoneColor = ChatColor.RED; + wildernessColor = ChatColor.GRAY; + + allowClaimingOnRoads = false; + disableObsidianGenerators = false; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/Archer.java b/HCF/src/secondlife/network/hcfactions/classes/Archer.java new file mode 100644 index 0000000..fa94734 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/Archer.java @@ -0,0 +1,204 @@ +package secondlife.network.hcfactions.classes; + +import gnu.trove.map.TObjectLongMap; +import gnu.trove.map.hash.TObjectLongHashMap; +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Arrow; +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.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.projectiles.ProjectileSource; +import secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.classes.utils.ArmorClass; +import secondlife.network.hcfactions.classes.utils.ArmorClassHandler; +import secondlife.network.hcfactions.classes.utils.bard.EffectRestorerHandler; +import secondlife.network.hcfactions.timers.ArcherHandler.TaggedTask; +import secondlife.network.vituz.providers.nametags.VituzNametag; +import secondlife.network.vituz.utilties.Color; + +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +public class Archer extends ArmorClass implements Listener { + + public static TObjectLongMap speed_cooldowns = new TObjectLongHashMap<>(); + public static TObjectLongMap jump_cooldowns = new TObjectLongHashMap<>(); + + public static PotionEffect speed_effect = new PotionEffect(PotionEffectType.SPEED, 160, 3); + public static PotionEffect jump_effect = new PotionEffect(PotionEffectType.JUMP, 160, 7); + + public static long speed_cooldown_delay = TimeUnit.SECONDS.toMillis(45L); + public static long jump_cooldown_delay = TimeUnit.MINUTES.toMillis(1L); + + public Archer() { + super("Archer", !HCFConfiguration.kitMap ? 3 : 1); + + passiveEffects.add(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + passiveEffects.add(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 2)); + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onEntityDamage(EntityDamageByEntityEvent event) { + if(event.isCancelled()) return; + + if(!(event.getEntity() instanceof Player)) return; + if(!(event.getDamager() instanceof Arrow)) return; + + Arrow arrow = (Arrow) event.getDamager(); + ProjectileSource source = arrow.getShooter(); + + if(!(source instanceof Player)) return; + + Player damaged = (Player) event.getEntity(); + Player shooter = (Player) source; + + ArmorClass equipped = ArmorClassHandler.getEquippedClass(shooter); + + if((equipped == null) || (!equipped.equals(this))) return; + + if((ArmorClassHandler.getEquippedClass(damaged) != null) && (ArmorClassHandler.getEquippedClass(damaged).equals(this))) return; + + new TaggedTask(damaged); + + double distance = shooter.getLocation().distance(damaged.getLocation()); + + shooter.sendMessage(Color.translate("&e[&9Arrow Range &e(&c" + String.format("%.1f", Double.valueOf(distance)) + "&e)] " + "&6Marked " + damaged.getName() + " &6for 10 seconds.")); + damaged.sendMessage(Color.translate("&eYou were &dArcher Tagged &eby &d" + shooter.getName() + " &efrom &d" + String.format("%.1f", Double.valueOf(distance)) + " &eblocks away!")); + + for(Player player : Bukkit.getOnlinePlayers()) { + VituzNametag.reloadPlayer(player); + VituzNametag.reloadOthersFor(player); + } + } + + @EventHandler + public void onSpeed(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + if(((event.getAction() == Action.RIGHT_CLICK_AIR) || (event.getAction() == Action.RIGHT_CLICK_BLOCK))) { + if(!event.hasItem()) return; + + if(event.getItem().getType() == Material.SUGAR) { + if(ArmorClassHandler.getEquippedClass(event.getPlayer()) != this) return; + + long remaining = speed_cooldowns.get(player.getUniqueId()) == speed_cooldowns.getNoEntryValue() ? -1L : speed_cooldowns.get(player.getUniqueId()) - System.currentTimeMillis(); + + if(remaining > 0L) { + player.sendMessage(Color.translate("&cYou can't use this for another &l" + DurationFormatUtils.formatDurationWords(remaining, true, true) + "&c!")); + } else { + ItemStack stack = player.getItemInHand(); + + if(stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + EffectRestorerHandler.setRestoreEffect(player, speed_effect); + + + speed_cooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + speed_cooldown_delay); + } + } + } + } + + @EventHandler + public void onJump(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + if(((event.getAction() == Action.RIGHT_CLICK_AIR) || (event.getAction() == Action.RIGHT_CLICK_BLOCK))) { + if(!event.hasItem()) return; + + if(event.getItem().getType() == Material.FEATHER) { + if(ArmorClassHandler.getEquippedClass(event.getPlayer()) != this) return; + + long remaining = jump_cooldowns.get(player.getUniqueId()) == jump_cooldowns.getNoEntryValue() ? -1L : jump_cooldowns.get(player.getUniqueId()) - System.currentTimeMillis(); + + if(remaining > 0L) { + player.sendMessage(Color.translate("&cYou can't use this for another &l" + DurationFormatUtils.formatDurationWords(remaining, true, true) + "&c!")); + } else { + ItemStack stack = player.getItemInHand(); + + if(stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + EffectRestorerHandler.setRestoreEffect(player, jump_effect); + + jump_cooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + jump_cooldown_delay); + } + } + } + } + + + @Override + public boolean isApplicableFor(Player player) { + ItemStack helmet = player.getInventory().getHelmet(); + if((helmet == null) || (helmet.getType() != Material.LEATHER_HELMET)) return false; + + ItemStack chestplate = player.getInventory().getChestplate(); + if((chestplate == null) || (chestplate.getType() != Material.LEATHER_CHESTPLATE)) return false; + + ItemStack leggings = player.getInventory().getLeggings(); + if((leggings == null) || (leggings.getType() != Material.LEATHER_LEGGINGS)) return false; + + ItemStack boots = player.getInventory().getBoots(); + return (boots != null) && (boots.getType() == Material.LEATHER_BOOTS); + } + + // Backup + /*LeatherArmorMeta helmMeta = (LeatherArmorMeta) shooter.getInventory().getHelmet().getItemMeta(); + LeatherArmorMeta chestMeta = (LeatherArmorMeta) shooter.getInventory().getChestplate().getItemMeta(); + LeatherArmorMeta leggingsMeta = (LeatherArmorMeta) shooter.getInventory().getLeggings().getItemMeta(); + LeatherArmorMeta bootsMeta = (LeatherArmorMeta) shooter.getInventory().getBoots().getItemMeta(); + + org.bukkit.Color green = org.bukkit.Color.fromRGB(6717235); + + double r = random.nextDouble(); + + r = random.nextDouble(); + + if((r <= 0.5D) && (helmMeta.getColor().equals(green)) && (chestMeta.getColor().equals(green)) && (leggingsMeta.getColor().equals(green)) && (bootsMeta.getColor().equals(green))) { + damaged.addPotionEffect(new PotionEffect(PotionEffectType.POISON, 120, 0)); + + shooter.sendMessage(Color.translate("&eSince your &dArmor &eis green, you gave &d" + damaged.getName() + " ðe poison effect for 6 seconds...")); + damaged.sendMessage(Color.translate("&eSince &d" + shooter.getName() + "'s &earmor is green, you were given the poison effect for 6 seconds...")); + } + + org.bukkit.Color blue = org.bukkit.Color.fromRGB(3361970); + if((r <= 0.5D) && (helmMeta.getColor().equals(blue)) && (chestMeta.getColor().equals(blue)) && (leggingsMeta.getColor().equals(blue)) && (bootsMeta.getColor().equals(blue))) { + damaged.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, 120, 0)); + + shooter.sendMessage(Color.translate("&eSince your &dArmor &eis blue, you gave &d" + damaged.getName() + " ðe slowness effect for 6 seconds...")); + damaged.sendMessage(Color.translate("&eSince &d" + shooter.getName() + "'s &earmor is blue, you were given the slowness effect for 6 seconds...")); + } + + org.bukkit.Color gray = org.bukkit.Color.fromRGB(5000268); + if((r <= 0.5D) && (helmMeta.getColor().equals(gray)) && (chestMeta.getColor().equals(gray)) && (leggingsMeta.getColor().equals(gray)) && (bootsMeta.getColor().equals(gray))) { + damaged.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 120, 0)); + + shooter.sendMessage(Color.translate("&eSince your &dArmor &eis gray, you gave &d" + damaged.getName() + " ðe blindness effect for 6 seconds...")); + damaged.sendMessage(Color.translate("&eSince &d" + shooter.getName() + "'s &earmor is gray, you were given the blindness effect for 6 seconds...")); + } + + org.bukkit.Color black = org.bukkit.Color.fromRGB(1644825); + if((r <= 0.2D) && (helmMeta.getColor().equals(black)) && (chestMeta.getColor().equals(black)) && (leggingsMeta.getColor().equals(black)) && (bootsMeta.getColor().equals(black))) { + damaged.addPotionEffect(new PotionEffect(PotionEffectType.WITHER, 120, 0)); + + shooter.sendMessage(Color.translate("&eSince your &dArmor &eis black, you gave &d" + damaged.getName() + " ðe wither effect for 6 seconds...")); + damaged.sendMessage(Color.translate("&eSince &d" + shooter.getName() + "'s &earmor is black, you were given the wither effect for 6 seconds...")); + }*/ +} \ No newline at end of file diff --git a/HCF/src/secondlife/network/hcfactions/classes/Bard.java b/HCF/src/secondlife/network/hcfactions/classes/Bard.java new file mode 100644 index 0000000..71af28b --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/Bard.java @@ -0,0 +1,299 @@ +package secondlife.network.hcfactions.classes; + +import gnu.trove.map.TObjectLongMap; +import gnu.trove.map.hash.TObjectLongHashMap; +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.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerItemHeldEvent; +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 secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.classes.utils.ArmorClass; +import secondlife.network.hcfactions.classes.utils.ArmorClassHandler; +import secondlife.network.hcfactions.classes.utils.bard.BardData; +import secondlife.network.hcfactions.classes.utils.bard.EffectData; +import secondlife.network.hcfactions.classes.utils.bard.EffectRestorerHandler; +import secondlife.network.hcfactions.factions.Faction; +import secondlife.network.hcfactions.factions.type.PlayerFaction; +import secondlife.network.hcfactions.handlers.RegisterHandler; +import secondlife.network.hcfactions.timers.SpawnTagHandler; +import secondlife.network.vituz.utilties.Color; + +import java.util.*; +import java.util.concurrent.TimeUnit; + +public class Bard extends ArmorClass implements Listener { + + public static long buff_cooldown = TimeUnit.SECONDS.toMillis(10L); + public static int team_radius = 25; + public static long held_reapply_ticks = 20L; + public static Map bardDataMap = new HashMap<>(); + public static Map bardEffects = new EnumMap<>(Material.class); + public static TObjectLongMap cooldowns = new TObjectLongHashMap<>(); + + public Bard() { + super("Bard", !HCFConfiguration.kitMap ? 3 : 1); + + passiveEffects.add(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + passiveEffects.add(new PotionEffect(PotionEffectType.REGENERATION, Integer.MAX_VALUE, 0)); + passiveEffects.add(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1)); + + bardEffects.put(Material.FERMENTED_SPIDER_EYE, new EffectData(60, new PotionEffect(PotionEffectType.INVISIBILITY, 120, 1),new PotionEffect(PotionEffectType.INVISIBILITY, 100, 0))); + bardEffects.put(Material.WHEAT, new EffectData(35, new PotionEffect(PotionEffectType.SATURATION, 120, 1), new PotionEffect(PotionEffectType.SATURATION, 100, 0))); + bardEffects.put(Material.SUGAR, new EffectData(25, new PotionEffect(PotionEffectType.SPEED, 120, 2), new PotionEffect(PotionEffectType.SPEED, 100, 1))); + bardEffects.put(Material.BLAZE_POWDER, new EffectData(50, new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 120, 1), new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 100, 0))); + bardEffects.put(Material.IRON_INGOT, new EffectData(35, new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 80, 2), new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 100, 0))); + bardEffects.put(Material.GHAST_TEAR, new EffectData(45, new PotionEffect(PotionEffectType.REGENERATION, 60, 2), new PotionEffect(PotionEffectType.REGENERATION, 100, 0))); + bardEffects.put(Material.FEATHER, new EffectData(30, new PotionEffect(PotionEffectType.JUMP, 120, 5), new PotionEffect(PotionEffectType.JUMP, 100, 0))); + bardEffects.put(Material.SPIDER_EYE, new EffectData(50, new PotionEffect(PotionEffectType.WITHER, 100, 1), null)); + bardEffects.put(Material.MAGMA_CREAM, new EffectData(10, new PotionEffect(PotionEffectType.FIRE_RESISTANCE, 900, 0), new PotionEffect(PotionEffectType.FIRE_RESISTANCE, 120, 0))); + } + + @Override + public boolean onEquip(Player player) { + if(!super.onEquip(player)) return false; + + BardData bardData = new BardData(); + + bardDataMap.put(player.getUniqueId(), bardData); + + bardData.startEnergyTracking(); + bardData.heldTask = new BukkitRunnable() { + int lastEnergy; + + public void run() { + ItemStack held = player.getItemInHand(); + + if(held != null) { + EffectData bardEffect = bardEffects.get(held.getType()); + + if(bardEffect == null) return; + + if(!RegisterHandler.getInstancee().getFactionManager().getFactionAt(player.getLocation()).isSafezone()) { + PlayerFaction playerFaction = RegisterHandler.getInstancee().getFactionManager().getPlayerFaction(player); + + if(playerFaction != null) { + Collection nearbyEntities = player.getNearbyEntities(team_radius, team_radius, team_radius); + + for(Entity nearby : nearbyEntities) { + if(nearby instanceof Player && !player.equals(nearby)) { + Player target = (Player) nearby; + + if(playerFaction.getMembers().containsKey(target.getName())) { + EffectRestorerHandler.setRestoreEffect(target, bardEffect.heldable); + } + } + } + } + } + } + + int energy = (int) getEnergy(player); + + if(energy != 0 && energy != lastEnergy && (energy % 10 == 0 || lastEnergy - energy - 1 > 0 || energy == bardData.max_energy)) { + lastEnergy = energy; + + player.sendMessage(Color.translate("&eBard Energy: &d" + energy)); + } + } + }.runTaskTimerAsynchronously(HCF.getInstance(), 0L, held_reapply_ticks); + + return true; + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + if(!event.hasItem()) return; + + if(event.getAction() == Action.RIGHT_CLICK_AIR || (!event.isCancelled() && event.getAction() == Action.RIGHT_CLICK_BLOCK)) { + Player player = event.getPlayer(); + + ItemStack stack = event.getItem(); + EffectData bardEffect = Bard.bardEffects.get(stack.getType()); + + if(bardEffect == null || bardEffect.clickable == null) return; + + event.setUseItemInHand(Event.Result.DENY); + BardData bardData = Bard.bardDataMap.get(player.getUniqueId()); + + if(bardData != null) { + if(!this.canUseBardEffect(player, bardData, bardEffect, true)) { + return; + } + + if(stack.getAmount() > 1) { + stack.setAmount(stack.getAmount() - 1); + + SpawnTagHandler.applyBard(player); + } else { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } + if(bardEffect != null && !RegisterHandler.getInstancee().getFactionManager().getFactionAt(player.getLocation()).isSafezone()) { + PlayerFaction playerFaction = RegisterHandler.getInstancee().getFactionManager().getPlayerFaction(player); + + if(playerFaction != null && !bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + + for(Entity nearby : nearbyEntities) { + if(nearby instanceof Player && !player.equals(nearby)) { + Player target = (Player) nearby; + + if(!playerFaction.getMembers().containsKey(target.getName())) continue; + + EffectRestorerHandler.setRestoreEffect(target, bardEffect.clickable); + } + } + } else if (playerFaction != null && bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + + for(Entity nearby : nearbyEntities) { + if(nearby instanceof Player && !player.equals(nearby)) { + Player target = (Player) nearby; + + if(playerFaction.getMembers().containsKey(target.getName())) continue; + + SpawnTagHandler.applyBard(target); + + EffectRestorerHandler.setRestoreEffect(target, bardEffect.clickable); + } + } + } else if (bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + + for(Entity nearby : nearbyEntities) { + if(nearby instanceof Player && !player.equals(nearby)) { + Player target = (Player) nearby; + + EffectRestorerHandler.setRestoreEffect(target, bardEffect.clickable); + } + } + } + } + + EffectRestorerHandler.setRestoreEffect(player, bardEffect.clickable); + bardData.setBuffCooldown(buff_cooldown); + + this.setEnergy(player, this.getEnergy(player) - bardEffect.energyCost); + + player.sendMessage(Color.translate("&cYou have just used a &lBard Buff &cthat cost you &l" + bardEffect.energyCost + " &cof your Energy.")); + } + } + } + + @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) return; + if(bardData.heldTask == null) return; + + bardData.heldTask.cancel(); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + clearBardData(event.getPlayer().getUniqueId()); + } + + @EventHandler + public void onItemHeld(PlayerItemHeldEvent event) { + Player player = event.getPlayer(); + ArmorClass equipped = ArmorClassHandler.getEquippedClass(player); + + if(equipped == null) return; + if(!equipped.equals(this)) return; + + long lastMessage = cooldowns.get(player.getUniqueId()); + long millis = System.currentTimeMillis(); + + if(lastMessage != cooldowns.getNoEntryValue() && lastMessage - millis > 0L) return; + } + + private boolean canUseBardEffect(Player player, BardData bardData, EffectData bardEffect, boolean sendFeedback) { + String errorFeedback = null; + double currentEnergy = bardData.getEnergy(); + + if(bardEffect.energyCost > currentEnergy) { + errorFeedback = Color.translate("&cYou do not have enough energy for this! You need &l" + bardEffect.energyCost + " &cenergy, but you only have &l" + currentEnergy + "&c!"); + } + + long remaining = bardData.getRemainingBuffDelay() / 1000; + + if(remaining > 0L) { + errorFeedback = Color.translate("&cYou can't use this for another &l" + remaining + " &cseconds."); + } + + Faction factionAt = RegisterHandler.getInstancee().getFactionManager().getFactionAt(player.getLocation()); + if(factionAt.isSafezone()) { + errorFeedback = Color.translate("&cYou can't use &lBard effects&c while you are in spawn."); + } + + 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.GOLD_HELMET) return false; + + ItemStack chestplate = player.getInventory().getChestplate(); + if(chestplate == null || chestplate.getType() != Material.GOLD_CHESTPLATE) return false; + + ItemStack leggings = player.getInventory().getLeggings(); + if(leggings == null || leggings.getType() != Material.GOLD_LEGGINGS) return false; + + ItemStack boots = player.getInventory().getBoots(); + return !(boots == null || boots.getType() != Material.GOLD_BOOTS); + } + + public long getRemainingBuffDelay(Player player) { + synchronized(bardDataMap) { + BardData bardData = bardDataMap.get(player.getUniqueId()); + + return bardData == null ? 0L : bardData.getRemainingBuffDelay(); + } + } + + 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(); + } + } + + 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/HCF/src/secondlife/network/hcfactions/classes/Miner.java b/HCF/src/secondlife/network/hcfactions/classes/Miner.java new file mode 100644 index 0000000..71020f5 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/Miner.java @@ -0,0 +1,42 @@ +package secondlife.network.hcfactions.classes; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.classes.utils.ArmorClass; + +public class Miner extends ArmorClass implements Listener { + + public Miner() { + super("Miner", !HCFConfiguration.kitMap ? 3 : 1); + + passiveEffects.add(new PotionEffect(PotionEffectType.FAST_DIGGING, Integer.MAX_VALUE, 1)); + passiveEffects.add(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0)); + passiveEffects.add(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1)); + } + + @Override + public void onUnequip(Player player) { + super.onUnequip(player); + } + + @Override + public boolean isApplicableFor(Player player) { + ItemStack helmet = player.getInventory().getHelmet(); + + if(helmet == null || helmet.getType() != Material.IRON_HELMET) return false; + + ItemStack chestplate = player.getInventory().getChestplate(); + if(chestplate == null || chestplate.getType() != Material.IRON_CHESTPLATE) return false; + + ItemStack leggings = player.getInventory().getLeggings(); + if(leggings == null || leggings.getType() != Material.IRON_LEGGINGS) return false; + + ItemStack boots = player.getInventory().getBoots(); + return boots != null && boots.getType() == Material.IRON_BOOTS; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/Rogue.java b/HCF/src/secondlife/network/hcfactions/classes/Rogue.java new file mode 100644 index 0000000..7b35026 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/Rogue.java @@ -0,0 +1,217 @@ +package secondlife.network.hcfactions.classes; + +import gnu.trove.map.TObjectLongMap; +import gnu.trove.map.hash.TObjectLongHashMap; +import org.apache.commons.lang.time.DurationFormatUtils; +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.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.classes.utils.ArmorClass; +import secondlife.network.hcfactions.classes.utils.ArmorClassHandler; +import secondlife.network.hcfactions.classes.utils.bard.EffectRestorerHandler; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.ArrayList; +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +public class Rogue extends ArmorClass implements Listener { + + public static ArrayList cooldown = new ArrayList<>(); + + public static TObjectLongMap speed_cooldowns = new TObjectLongHashMap<>(); + public static TObjectLongMap jump_cooldowns = new TObjectLongHashMap(); + + public static PotionEffect speed_effect = new PotionEffect(PotionEffectType.SPEED, 160, 3); + public static PotionEffect jump_effect = new PotionEffect(PotionEffectType.JUMP, 160, 4); + + public static long speed_cooldown_delay = TimeUnit.SECONDS.toMillis(45L); + public static long jump_cooldown_delay = TimeUnit.MINUTES.toMillis(1L); + + public Rogue() { + super("Rogue", !HCFConfiguration.kitMap ? 3 : 1); + + passiveEffects.add(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 2)); + passiveEffects.add(new PotionEffect(PotionEffectType.JUMP, Integer.MAX_VALUE, 1)); + passiveEffects.add(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(event.isCancelled()) return; + + if(!(event.getEntity() instanceof Player)) return; + if(!(event.getDamager() instanceof Player)) return; + + Entity entity = event.getEntity(); + Entity damager = event.getDamager(); + Player attacker = (Player) damager; + + if(ArmorClassHandler.getEquippedClass(attacker) != this) return; + + ItemStack stack = attacker.getItemInHand(); + + if(stack == null) return; + if(stack.getType() != Material.GOLD_SWORD) return; + if(!stack.getEnchantments().isEmpty()) return; + + Player player = (Player) entity; + + if(direction(attacker) != direction(player)) return; + + if(cooldown.contains(damager.getUniqueId())) { + ((Player) damager).sendMessage(Color.translate("&cYou are on cooldown!")); + return; + } + + 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(Color.translate("&d" + attacker.getName() + " &ehas backstabbed you!")); + player.playSound(player.getLocation(), Sound.ITEM_BREAK, 1.0F, 1.0F); + + attacker.sendMessage(Color.translate("&eYou have backstabbed &d" + player.getName() + "&e!")); + + 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); + + cooldown.add(damager.getUniqueId()); + + Tasks.runLater(() -> { + if(cooldown.contains(damager.getUniqueId())) cooldown.remove(damager.getUniqueId()); + }, 60L); + } + + @EventHandler + public void onSpeed(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + if(((event.getAction() == Action.RIGHT_CLICK_AIR) || (event.getAction() == Action.RIGHT_CLICK_BLOCK))) { + if(!event.hasItem()) return; + + if(event.getItem().getType() == Material.SUGAR) { + if(ArmorClassHandler.getEquippedClass(event.getPlayer()) != this) return; + + long remaining = speed_cooldowns.get(player.getUniqueId()) == speed_cooldowns.getNoEntryValue() ? -1L : speed_cooldowns.get(player.getUniqueId()) - System.currentTimeMillis(); + + if(remaining > 0L) { + player.sendMessage(Color.translate("&cYou can't use this for another &l" + DurationFormatUtils.formatDurationWords(remaining, true, true) + "&c!")); + } else { + ItemStack stack = player.getItemInHand(); + + if(stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + EffectRestorerHandler.setRestoreEffect(player, speed_effect); + + speed_cooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + speed_cooldown_delay); + } + } + } + } + + @EventHandler + public void onJump(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + if(((event.getAction() == Action.RIGHT_CLICK_AIR) || (event.getAction() == Action.RIGHT_CLICK_BLOCK))) { + if(!event.hasItem()) return; + + if(event.getItem().getType() == Material.FEATHER) { + if(ArmorClassHandler.getEquippedClass(event.getPlayer()) != this) return; + + long remaining = jump_cooldowns.get(player.getUniqueId()) == jump_cooldowns.getNoEntryValue() ? -1L : jump_cooldowns.get(player.getUniqueId()) - System.currentTimeMillis(); + + if(remaining > 0L) { + player.sendMessage(Color.translate("&cYou can't use this for another &l" + DurationFormatUtils.formatDurationWords(remaining, true, true) + "&c!")); + } else { + ItemStack stack = player.getItemInHand(); + + if(stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + EffectRestorerHandler.setRestoreEffect(player, jump_effect); + + jump_cooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + jump_cooldown_delay); + } + } + } + } + + @Override + public boolean isApplicableFor(Player player) { + ItemStack helmet = player.getInventory().getHelmet(); + if (helmet == null || helmet.getType() != Material.CHAINMAIL_HELMET) return false; + + + ItemStack chestplate = player.getInventory().getChestplate(); + if(chestplate == null || chestplate.getType() != Material.CHAINMAIL_CHESTPLATE) return false; + + ItemStack leggings = player.getInventory().getLeggings(); + if(leggings == null || leggings.getType() != Material.CHAINMAIL_LEGGINGS) return false; + + + ItemStack boots = player.getInventory().getBoots(); + return !(boots == null || boots.getType() != Material.CHAINMAIL_BOOTS); + } + + 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; + } + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClass.java b/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClass.java new file mode 100644 index 0000000..f210d6e --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClass.java @@ -0,0 +1,52 @@ +package secondlife.network.hcfactions.classes.utils; + +import lombok.Getter; +import org.bukkit.entity.Player; +import org.bukkit.potion.PotionEffect; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; + +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.TimeUnit; + +@Getter +public abstract class ArmorClass { + + public static long default_max_duration = TimeUnit.MINUTES.toMillis(8L); + + public Set passiveEffects = new HashSet<>(); + public String name; + public int warmupDelay; + + public ArmorClass(String name, int warmupDelay) { + this.name = name; + this.warmupDelay = warmupDelay; + } + + public boolean onEquip(Player player) { + for(PotionEffect effect : passiveEffects) { + player.addPotionEffect(effect, true); + } + + player.sendMessage(Color.translate("&eClass &d" + name + " &7" + Msg.KRUZIC + " &aEnabled&e!")); + return true; + } + + public void onUnequip(Player player) { + for(PotionEffect effect : passiveEffects) { + for(PotionEffect active : player.getActivePotionEffects()) { + if(active.getDuration() > default_max_duration && active.getType().equals(effect.getType()) && active.getAmplifier() == effect.getAmplifier()) { + if(player.isOnline()) { + player.removePotionEffect(effect.getType()); + break; + } + } + } + } + + player.sendMessage(Color.translate("&eClass &d" + name + " &7" + Msg.KRUZIC + " &cDisabled&e!")); + } + + public abstract boolean isApplicableFor(Player player); +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.java b/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.java new file mode 100644 index 0000000..15473d8 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.java @@ -0,0 +1,80 @@ +package secondlife.network.hcfactions.classes.utils; + +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 secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.classes.Archer; +import secondlife.network.hcfactions.classes.Bard; +import secondlife.network.hcfactions.classes.Miner; +import secondlife.network.hcfactions.classes.Rogue; +import secondlife.network.hcfactions.classes.utils.events.ArmorClassEquipEvent; +import secondlife.network.hcfactions.classes.utils.events.ArmorClassUnequipEvent; +import secondlife.network.hcfactions.utilties.Handler; + +import java.util.*; + +public class ArmorClassHandler extends Handler implements Listener { + + public static Map equippedClassMap = new HashMap<>(); + public static List classes = new ArrayList<>(); + + public ArmorClassHandler(HCF plugin) { + super(plugin); + + classes.add(new Archer()); + classes.add(new Bard()); + classes.add(new Miner()); + classes.add(new Rogue()); + + Bukkit.getPluginManager().registerEvents(this, this.getInstance()); + + for(ArmorClass armor : classes) { + if(armor instanceof Listener) { + Bukkit.getPluginManager().registerEvents((Listener) armor, plugin); + } + } + } + + public static void disable() { + classes.clear(); + equippedClassMap.clear(); + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + setEquippedClass(event.getEntity(), null); + } + + public static Collection getClasses() { + return classes; + } + + public static ArmorClass getEquippedClass(Player player) { + synchronized(equippedClassMap) { + return equippedClassMap.get(player.getUniqueId()); + } + } + + public static boolean hasClassEquipped(Player player, ArmorClass armor) { + return getEquippedClass(player) == armor; + } + + public static void setEquippedClass(Player player, ArmorClass armor) { + if(armor == null) { + ArmorClass equipped = equippedClassMap.remove(player.getUniqueId()); + + if(equipped != null) { + equipped.onUnequip(player); + + Bukkit.getPluginManager().callEvent(new ArmorClassUnequipEvent(player, equipped)); + } + } else if(armor.onEquip(player) && armor != getEquippedClass(player)) { + equippedClassMap.put(player.getUniqueId(), armor); + + Bukkit.getPluginManager().callEvent(new ArmorClassEquipEvent(player, armor)); + } + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/bard/BardData.java b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/BardData.java new file mode 100644 index 0000000..d801be2 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/BardData.java @@ -0,0 +1,43 @@ +package secondlife.network.hcfactions.classes.utils.bard; + +import org.bukkit.scheduler.BukkitTask; + +public class BardData { + + public double energy_per_millisecond = 1.0D; + public double max_energy = 100.0D; + + public long energyStart; + public long buffCooldown; + public long max_energy_millis = (long) (max_energy * 1000L); + + public BukkitTask heldTask; + + public void setBuffCooldown(long millis) { + buffCooldown = System.currentTimeMillis() + millis; + } + + public long getRemainingBuffDelay() { + return buffCooldown - System.currentTimeMillis(); + } + + public void startEnergyTracking() { + this.setEnergy(0); + } + + public long getEnergyMillis() { + if(energyStart == 0L) { + return 0L; + } + + return Math.min(max_energy_millis, (long) (energy_per_millisecond * (System.currentTimeMillis() - energyStart))); + } + + public double getEnergy() { + return Math.round(this.getEnergyMillis() / 100.0) / 10.0; + } + + public void setEnergy(double energy) { + energyStart = (long) (System.currentTimeMillis() - (1000L * energy)); + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectData.java b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectData.java new file mode 100644 index 0000000..e4d4db1 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectData.java @@ -0,0 +1,22 @@ +package secondlife.network.hcfactions.classes.utils.bard; + +import org.bukkit.potion.PotionEffect; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class EffectData { + + public PotionEffect clickable; + public PotionEffect heldable; + + public int energyCost; + + public EffectData(int energyCost, PotionEffect clickable, PotionEffect heldable) { + this.energyCost = energyCost; + this.clickable = clickable; + this.heldable = heldable; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.java b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.java new file mode 100644 index 0000000..f27bc79 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.java @@ -0,0 +1,85 @@ +package secondlife.network.hcfactions.classes.utils.bard; + +import club.minemen.spigot.event.potion.PotionEffectExpireEvent; +import com.google.common.collect.HashBasedTable; +import com.google.common.collect.Table; +import org.bukkit.Bukkit; +import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.classes.Bard; +import secondlife.network.hcfactions.classes.utils.events.ArmorClassUnequipEvent; +import secondlife.network.hcfactions.utilties.Handler; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.Collection; +import java.util.UUID; + +public class EffectRestorerHandler extends Handler implements Listener { + + private static Table restores = HashBasedTable.create(); + + public EffectRestorerHandler(HCF plugin) { + super(plugin); + + Bukkit.getPluginManager().registerEvents(this, this.getInstance()); + } + + @EventHandler + public void onArmorClassUnequip(ArmorClassUnequipEvent event) { + restores.rowKeySet().remove(event.getPlayer().getUniqueId()); + } + + @EventHandler + public void onPotionEffectExpire(PotionEffectExpireEvent event) { + LivingEntity entity = event.getEntity(); + + if(!(entity instanceof Player)) return; + + Player player = (Player) entity; + + PotionEffect previous = (PotionEffect) restores.remove(player.getUniqueId(), event.getEffect().getType()); + + if(previous == null) return; + + event.setCancelled(true); + + new BukkitRunnable() { + public void run() { + player.addPotionEffect(previous, true); + } + }.runTask(this.getInstance()); + } + + public static 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(effect.getAmplifier() < active.getAmplifier()) { + return; + } else if(effect.getAmplifier() == active.getAmplifier()) { + if(effect.getDuration() < active.getDuration()) return; + } + + restores.put(player.getUniqueId(), active.getType(), active); + shouldCancel = false; + break; + } + + Tasks.run(() -> { + player.addPotionEffect(effect, true); + }); + if(shouldCancel && effect.getDuration() > Bard.held_reapply_ticks && effect.getDuration() < Bard.default_max_duration) { + restores.remove(player.getUniqueId(), effect.getType()); + } + + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.java b/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.java new file mode 100644 index 0000000..53af02b --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.java @@ -0,0 +1,31 @@ +package secondlife.network.hcfactions.classes.utils.events; + +import org.bukkit.entity.Player; +import org.bukkit.event.HandlerList; +import org.bukkit.event.player.PlayerEvent; + +import lombok.Getter; +import secondlife.network.hcfactions.classes.utils.ArmorClass; + +@Getter +public class ArmorClassEquipEvent extends PlayerEvent { + + private static HandlerList handlers = new HandlerList(); + + private ArmorClass armorClass; + + public ArmorClassEquipEvent(Player player, ArmorClass armorClass) { + super(player); + + this.armorClass = armorClass; + } + + public static HandlerList getHandlerList() { + return handlers; + } + + @Override + public HandlerList getHandlers() { + return handlers; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.java b/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.java new file mode 100644 index 0000000..02095f4 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.java @@ -0,0 +1,31 @@ +package secondlife.network.hcfactions.classes.utils.events; + +import org.bukkit.entity.Player; +import org.bukkit.event.HandlerList; +import org.bukkit.event.player.PlayerEvent; + +import lombok.Getter; +import secondlife.network.hcfactions.classes.utils.ArmorClass; + +@Getter +public class ArmorClassUnequipEvent extends PlayerEvent { + + private static HandlerList handlers = new HandlerList(); + + private ArmorClass armorClass; + + public ArmorClassUnequipEvent(Player player, ArmorClass armorClass) { + super(player); + + this.armorClass = armorClass; + } + + public static HandlerList getHandlerList() { + return handlers; + } + + @Override + public HandlerList getHandlers() { + return handlers; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/BaseCommand.java b/HCF/src/secondlife/network/hcfactions/commands/BaseCommand.java new file mode 100644 index 0000000..ca085a3 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/BaseCommand.java @@ -0,0 +1,29 @@ +package secondlife.network.hcfactions.commands; + +import org.bukkit.command.CommandSender; + +import lombok.Getter; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.utilties.Handler; + +@Getter +public abstract class BaseCommand { + + public HCF instance; + public Handler handler; + + public boolean forPlayerUseOnly; + public String command; + public String permission; + + public BaseCommand(HCF plugin) { + this.instance = plugin; + + this.command = ""; + this.permission = ""; + + this.forPlayerUseOnly = false; + } + + public abstract void execute(CommandSender sender, String[] args); +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/CommandHandler.java b/HCF/src/secondlife/network/hcfactions/commands/CommandHandler.java new file mode 100644 index 0000000..7a46a33 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/CommandHandler.java @@ -0,0 +1,75 @@ +package secondlife.network.hcfactions.commands; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.ConsoleCommandSender; +import secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.arguments.*; +import secondlife.network.hcfactions.staff.commands.StaffModeCommand; +import secondlife.network.hcfactions.staff.commands.VanishCommand; +import secondlife.network.hcfactions.utilties.Handler; +import secondlife.network.vituz.utilties.Msg; + +import java.util.ArrayList; +import java.util.List; + +public class CommandHandler extends Handler implements CommandExecutor { + + private List commands; + + public CommandHandler(HCF plugin) { + super(plugin); + + this.commands = new ArrayList<>(); + + this.commands.add(new BalanceCommand(plugin)); + this.commands.add(new ChestCommand(plugin)); + this.commands.add(new CoordsCommand(plugin)); + if(!HCFConfiguration.kitMap) this.commands.add(new EOTWCommand(plugin)); + this.commands.add(new EventCommand(plugin)); + this.commands.add(new FirstJoinItemsCommand(plugin)); + this.commands.add(new FocusCommand(plugin)); + this.commands.add(new HelpCommand(plugin)); + this.commands.add(new LogoutCommand(plugin)); + if(!HCFConfiguration.kitMap) this.commands.add(new MapKitCommand(plugin)); + this.commands.add(new PayCommand(plugin)); + this.commands.add(new ReclaimCommand(plugin)); + if(!HCFConfiguration.kitMap) this.commands.add(new RegenCommand(plugin)); + this.commands.add(new SaveDataCommand(plugin)); + this.commands.add(new SetCommand(plugin)); + this.commands.add(new SpawnCommand(plugin)); + this.commands.add(new StaffModeCommand(plugin)); + this.commands.add(new StatsCommand(plugin)); + this.commands.add(new TellCoordsCommand(plugin)); + this.commands.add(new ToggleLightningCommand(plugin)); + this.commands.add(new VanishCommand(plugin)); + this.commands.add(new zSecondLifeCommand(plugin)); + + for(BaseCommand command : this.commands) { + this.getInstance().getCommand(command.getCommand()).setExecutor(this); + } + } + + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + for(BaseCommand baseCommand : this.commands) { + if(command.getName().equalsIgnoreCase(baseCommand.getCommand())) { + if(((sender instanceof ConsoleCommandSender)) && (baseCommand.isForPlayerUseOnly())) { + sender.sendMessage(Msg.NO_CONSOLE); + return true; + } + + if((!sender.hasPermission(baseCommand.getPermission())) && (!baseCommand.getPermission().equals(""))) { + sender.sendMessage(Msg.NO_PERMISSION); + return true; + } + + baseCommand.execute(sender, args); + return true; + } + } + + return true; + } +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/arguments/BalanceCommand.java b/HCF/src/secondlife/network/hcfactions/commands/arguments/BalanceCommand.java new file mode 100644 index 0000000..6b74641 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/arguments/BalanceCommand.java @@ -0,0 +1,71 @@ +package secondlife.network.hcfactions.commands.arguments; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.BaseCommand; +import secondlife.network.hcfactions.data.HCFData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.NumberUtils; +import secondlife.network.vituz.utilties.Permission; + +public class BalanceCommand extends BaseCommand { + + public BalanceCommand(HCF plugin) { + super(plugin); + + this.command = "balance"; + this.forPlayerUseOnly = true; + } + + @Override + public void execute(CommandSender sender, String[] args) { + Player player = (Player) sender; + + if(args.length == 0) { + HCFData data1 = HCFData.getByName(player.getName()); + + player.sendMessage(Color.translate("&eYour balance is &d$" + data1.getBalance() + "&e!")); + } else { + if(args.length == 1) { + Player target = Bukkit.getPlayer(args[0]); + + if(Msg.checkOffline(player, args[0])) return; + + HCFData data = HCFData.getByName(target.getName()); + + player.sendMessage(Color.translate("&eBalance of &d" + args[0] + " &eis &d$" + data.getBalance() + "&e!")); + } else if(args[0].equalsIgnoreCase("set") || args[0].equalsIgnoreCase("give") || args[0].equalsIgnoreCase("add")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return; + } + + Player target = Bukkit.getPlayer(args[1]); + + if(Msg.checkOffline(player, args[1])) return; + + if(!NumberUtils.isInteger(args[2])) { + player.sendMessage(Color.translate("&cNumber must be integer!")); + return; + } + + int amount = Integer.parseInt(args[2]); + + if(amount > 100000) { + player.sendMessage(Color.translate("&cBalance limit is 100000!")); + return; + } + + HCFData data = HCFData.getByName(target.getName()); + + data.setBalance(data.getBalance() + amount); + + player.sendMessage(Color.translate("&eYou have set balance of &d" + args[1] + " &eto &d$" + data.getBalance() + "&e!")); + target.sendMessage(Color.translate("&eYour balance is now &d" + data.getBalance() + "&e!")); + } + } + } +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/arguments/ChestCommand.java b/HCF/src/secondlife/network/hcfactions/commands/arguments/ChestCommand.java new file mode 100644 index 0000000..e1fed8b --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/arguments/ChestCommand.java @@ -0,0 +1,46 @@ +package secondlife.network.hcfactions.commands.arguments; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import secondlife.network.hcfactions.HCFConfiguration; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.BaseCommand; +import secondlife.network.hcfactions.data.HCFData; +import secondlife.network.hcfactions.handlers.RegisterHandler; +import secondlife.network.vituz.utilties.Color; + +public class ChestCommand extends BaseCommand { + + public ChestCommand(HCF plugin) { + super(plugin); + + this.command = "chest"; + this.forPlayerUseOnly = true; + } + + @Override + public void execute(CommandSender sender, String[] args) { + Player player = (Player) sender; + + if(args.length == 0) { + if(!HCFConfiguration.kitMap) { + player.sendMessage(Color.translate("&cThis command can only be used when kitmap is enabled!")); + return; + } + + if(HCFData.getByName(player.getName()).isEvent()) { + player.sendMessage(Color.translate("&cYou can't do this in your current state.")); + return; + } + + if(!RegisterHandler.getInstancee().getFactionManager().getFactionAt(player.getLocation()).isSafezone()) { + player.sendMessage(Color.translate("&cThis command can only be used in Safe-Zone claims!")); + return; + } + + player.openInventory(player.getEnderChest()); + } + } + +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/arguments/CoordsCommand.java b/HCF/src/secondlife/network/hcfactions/commands/arguments/CoordsCommand.java new file mode 100644 index 0000000..8dbbb5d --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/arguments/CoordsCommand.java @@ -0,0 +1,24 @@ +package secondlife.network.hcfactions.commands.arguments; + +import org.bukkit.command.CommandSender; + +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.BaseCommand; +import secondlife.network.hcfactions.utilties.file.ConfigFile; +import secondlife.network.vituz.utilties.Color; + +public class CoordsCommand extends BaseCommand { + + public CoordsCommand(HCF plugin) { + super(plugin); + + this.command = "coords"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + for(String msg : ConfigFile.getStringList("coords")) { + sender.sendMessage(Color.translate(msg)); + } + } +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/arguments/EOTWCommand.java b/HCF/src/secondlife/network/hcfactions/commands/arguments/EOTWCommand.java new file mode 100644 index 0000000..6f576a2 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/arguments/EOTWCommand.java @@ -0,0 +1,119 @@ +package secondlife.network.hcfactions.commands.arguments; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.command.ConsoleCommandSender; +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 org.bukkit.entity.Player; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; + +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.BaseCommand; +import secondlife.network.hcfactions.factions.Faction; +import secondlife.network.hcfactions.factions.type.PlayerFaction; +import secondlife.network.hcfactions.game.events.eotw.EOTWHandler; +import secondlife.network.hcfactions.handlers.RegisterHandler; +import secondlife.network.hcfactions.staff.handlers.StaffModeHandler; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.StringUtils; + +public class EOTWCommand extends BaseCommand { + + private ConversationFactory factory; + public static boolean eotwffa = false; + + public EOTWCommand(HCF plugin) { + super(plugin); + + this.command = "eotw"; + this.forPlayerUseOnly = false; + + this.factory = new ConversationFactory(plugin).withFirstPrompt(new EotwPrompt()).withEscapeSequence("/no").withTimeout(10).withModality(false).withLocalEcho(true); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(args.length == 0) { + if(!(sender instanceof ConsoleCommandSender)) { + sender.sendMessage(Msg.NO_PERMISSION); + return; + } + + Conversable conversable = (Conversable) sender; + conversable.beginConversation(factory.buildConversation(conversable)); + } else { + if(args[0].equalsIgnoreCase("ffa")) { + for(Player player : Bukkit.getOnlinePlayers()) { + if(StaffModeHandler.isInStaffMode(player)) return; + + for(Faction faction : RegisterHandler.getInstancee().getFactionManager().getFactions()) { + if(faction instanceof PlayerFaction) { + RegisterHandler.getInstancee().getFactionManager().removeFaction(faction, sender); + } + } + + Command.broadcastCommandMessage(Bukkit.getConsoleSender(), "All factions have been disbanded."); + + Bukkit.setWhitelist(true); + + player.setHealth(20); + player.setFoodLevel(20); + + player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(PotionEffectType.INVISIBILITY); + player.removePotionEffect(PotionEffectType.FIRE_RESISTANCE); + player.removePotionEffect(PotionEffectType.INCREASE_DAMAGE); + + player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1)); + player.addPotionEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE, Integer.MAX_VALUE, 0)); + player.addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, Integer.MAX_VALUE, 0)); + + eotwffa = true; + + Command.broadcastCommandMessage(Bukkit.getConsoleSender(), "FFA players has recived potion effects."); + + Location loc = StringUtils.destringifyLocation(this.getInstance().getConfig().getString("World-Spawn.eotw-ffa")); + + player.teleport(loc); + } + } + + } + } + + private static class EotwPrompt extends StringPrompt { + @Override + public String getPromptText(ConversationContext context) { + return "Type Yes if you want to active EOTW Timer || Type No if you want to cancel this procces."; + } + + @Override + public Prompt acceptInput(ConversationContext context, String string) { + if(string.equalsIgnoreCase("yes")) { + boolean newStatus = !EOTWHandler.isEOTW(false); + + Conversable conversable = context.getForWhom(); + + if(conversable instanceof CommandSender) { + Command.broadcastCommandMessage((CommandSender) conversable, "has set EOTW mode to " + newStatus); + } else conversable.sendRawMessage(Color.translate("&7has set EOTW mode to " + newStatus)); + + EOTWHandler.setEOTW(newStatus); + } else if(string.equalsIgnoreCase("no")) { + context.getForWhom().sendRawMessage(Color.translate("&aSuccsesfuly canceled EOTW Timer procces.")); + } else { + context.getForWhom().sendRawMessage(Color.translate("&cEOTW Cancelled!")); + } + + return Prompt.END_OF_CONVERSATION; + } + } +} diff --git a/HCF/src/secondlife/network/hcfactions/commands/arguments/EventCommand.java b/HCF/src/secondlife/network/hcfactions/commands/arguments/EventCommand.java new file mode 100644 index 0000000..f8319c9 --- /dev/null +++ b/HCF/src/secondlife/network/hcfactions/commands/arguments/EventCommand.java @@ -0,0 +1,362 @@ +package secondlife.network.hcfactions.commands.arguments; + +import com.sk89q.worldedit.bukkit.WorldEditPlugin; +import com.sk89q.worldedit.bukkit.selections.Selection; +import org.apache.commons.lang.time.DurationFormatUtils; +import org.apache.commons.lang3.StringUtils; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.hcfactions.HCF; +import secondlife.network.hcfactions.commands.BaseCommand; +import secondlife.network.hcfactions.factions.Faction; +import secondlife.network.hcfactions.factions.FactionManager; +import secondlife.network.hcfactions.factions.claim.ClaimZone; +import secondlife.network.hcfactions.factions.type.games.CapturableFaction; +import secondlife.network.hcfactions.factions.type.games.EventFaction; +import secondlife.network.hcfactions.factions.utils.CaptureZone; +import secondlife.network.hcfactions.game.events.faction.KothFaction; +import secondlife.network.hcfactions.game.type.KothType; +import secondlife.network.hcfactions.handlers.RegisterHandler; +import secondlife.network.hcfactions.timers.GameHandler; +import secondlife.network.hcfactions.utilties.JavaUtils; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.cuboid.Cuboid; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +public class EventCommand extends BaseCommand { + + public EventCommand(HCF plugin) { + super(plugin); + + this.command = "event"; + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(sender instanceof Player) { + Player player = (Player) sender; + + if(player.hasPermission(Permission.OP_PERMISSION)) { + if(args.length == 0) { + this.sendUsage(player); + } else { + if(args[0].equalsIgnoreCase("create")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + if(args.length == 2) { + player.sendMessage(Color.translate("&cYou must put Event Type!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(faction != null) { + sender.sendMessage(Color.translate("&cThere is already a faction named " + args[1] + '.')); + return; + } + + String upperCase; + + switch(upperCase = args[2].toUpperCase()) { + case "KOTH": { + faction = new KothFaction(args[1], null); + break; + } + default: { + sendUsage(sender); + return; + } + } + + RegisterHandler.getInstancee().getFactionManager().createFaction(faction, sender); + + player.sendMessage(Color.translate("&aFaction of type &l" + args[2] + " &acreated with name &l" + args[1] + "&a.")); + } else if(args[0].equalsIgnoreCase("start")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(!(faction instanceof EventFaction)) { + player.sendMessage(Color.translate("&cThere is no event named &l" + args[1] + "&c!")); + return; + } + + if(GameHandler.getGameHandler().tryContesting(((EventFaction) faction), sender)) { + player.sendMessage(Color.translate("&eYou have started &d" + faction.getName() + "&e!")); + } + } else if(args[0].equalsIgnoreCase("stop")) { + GameHandler.stopCooldown(); + + Msg.sendMessage("&d" + sender.getName() + " &ehas cancelled &d" + (GameHandler.getEventFaction() == null ? "the active event" : GameHandler.getEventFaction().getName() + "&e") + "&e!"); + GameHandler.getGameHandler().getActiveKoths().remove(GameHandler.getEventFaction()); + } else if(args[0].equalsIgnoreCase("claimfor")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + WorldEditPlugin worldEdit = RegisterHandler.getInstancee().getWorldEdit(); + + if(worldEdit == null) { + player.sendMessage(Color.translate("&cWorldEdit must be installed to set event claims.")); + return; + } + + Selection selection = worldEdit.getSelection(player); + + if(selection == null) { + player.sendMessage(Color.translate("&cYou must make a WorldEdit selection to do this.")); + return; + } + + if(selection.getWidth() < 5 || selection.getLength() < 5) { + player.sendMessage(Color.translate("&cEvent claim areas must be at least &l" + 5 + "&cx&l" + 5 + "&c!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(!(faction instanceof EventFaction)) { + player.sendMessage(Color.translate("&cThere is not an event faction named &l" + args[1] + "&c!")); + return; + } + + ((EventFaction) faction).setClaim(new Cuboid(selection.getMinimumPoint(), selection.getMaximumPoint()), player); + + player.sendMessage(Color.translate("&eYou have updated the claim for event &d" + faction.getName() + "&e!")); + } else if(args[0].equalsIgnoreCase("setcapzone")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + WorldEditPlugin worldEdit = RegisterHandler.getInstancee().getWorldEdit(); + + if(worldEdit == null) { + player.sendMessage(Color.translate("&cWorldEdit must be installed to set event claims.")); + return; + } + + Selection selection = worldEdit.getSelection(player); + + if(selection.getWidth() < CaptureZone.MINIMUM_SIZE_AREA || selection.getLength() < CaptureZone.MINIMUM_SIZE_AREA) { + player.sendMessage(Color.translate("&cCapzones must be at least &l" + 5 + "&cx&l" + 5 + "&c!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(!(faction instanceof CapturableFaction)) { + player.sendMessage(Color.translate("&cThere is not a capturable faction named &l" + args[1] + "&c!")); + return; + } + + CapturableFaction capturableFaction = (CapturableFaction) faction; + Collection claims = capturableFaction.getClaims(); + + if(claims.isEmpty()) { + player.sendMessage(Color.translate("&cCapture zones can only be inside the event claim!")); + return; + } + + ClaimZone claim = new ClaimZone(faction, selection.getMinimumPoint(), selection.getMaximumPoint()); + + World world = claim.getWorld(); + + int minimumX = claim.getMinimumX(); + int maximumX = claim.getMaximumX(); + + int minimumZ = claim.getMinimumZ(); + int maximumZ = claim.getMaximumZ(); + + FactionManager factionManager = RegisterHandler.getInstancee().getFactionManager(); + + for(int x = minimumX; x <= maximumX; x++) { + for(int z = minimumZ; z <= maximumZ; z++) { + Faction factionAt = factionManager.getFactionAt(world, x, z); + + if(factionAt != capturableFaction) { + player.sendMessage(Color.translate("&cCapture zones can only be inside the event claim!")); + return; + } + } + } + + CaptureZone captureZone; + + if (capturableFaction instanceof KothFaction) { + ((KothFaction) capturableFaction).setCaptureZone(captureZone = new CaptureZone(capturableFaction.getName(), claim, KothType.default_cap_millis)); + } else { + player.sendMessage(Color.translate("&cYou can only set capture zones for Conquest or KoTH factions.")); + return; + } + + player.sendMessage(Color.translate("&eYou have set capture zone &d" + captureZone.getDisplayName() + " &efor faction &d" + faction.getName() + "&e!")); + } else if(args[0].equalsIgnoreCase("tp")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(!(faction instanceof KothFaction)) { + player.sendMessage(Color.translate("&cThere is no event named &l" + args[1] + "&c!")); + return; + } + + Location loc = ((KothFaction) faction).getCaptureZone().getCuboid().getCenter(); + + player.teleport(loc); + + player.sendMessage(Color.translate("&eYou have been teleported to &d" + args[1] + " &eevent!")); + } else if(args[0].equalsIgnoreCase("setcaptime")) { + if(args.length == 1) { + player.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(faction == null || !(faction instanceof KothFaction)) { + player.sendMessage(Color.translate("&cThere is no a KoTH arena named &l" + args[1] + "&c!")); + return; + } + + long duration = JavaUtils.parse(StringUtils.join(args, ' ', 2, args.length)); + + if(duration == -1L) { + player.sendMessage(Color.translate("&cInvalid Duration.")); + return; + } + + KothFaction kothFaction = (KothFaction) faction; + CaptureZone captureZone = kothFaction.getCaptureZone(); + + if(captureZone == null) { + player.sendMessage(Color.translate("&c&l" + kothFaction.getDisplayName(sender) + " &cdoesn't have a capture zone set yet!")); + return; + } + + if(captureZone.isActive() && duration < captureZone.getRemainingCaptureMillis()) { + captureZone.setRemainingCaptureMillis(duration); + } + + captureZone.setDefaultCaptureMillis(duration); + player.sendMessage(Color.translate("&eYou have set the capture delay of KoTH arena &d" + kothFaction.getDisplayName(sender) + " &eto &d" + DurationFormatUtils.formatDurationWords(duration, true, true) + "&e!")); + } else if(args[0].equalsIgnoreCase("list")) { + List all = new ArrayList(); + + for(Faction faction : RegisterHandler.getInstancee().getFactionManager().getFactions()) { + if(faction instanceof KothFaction) { + all.add(faction.getName()); + } + } + + player.sendMessage(Color.translate("&eEvent List&7: &d" + all.toString().replace("[", "").replace("]", "").replace(",", "&e,&d"))); + } + + return; + } + } + } else { + if(args.length == 0) { + this.sendUsage(sender); + } else { + if(args[0].equalsIgnoreCase("create")) { + if(args.length == 1) { + sender.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + if(args.length == 2) { + sender.sendMessage(Color.translate("&cYou must put Event Type!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(faction != null) { + sender.sendMessage(Color.translate("&cThere is already a faction named " + args[1] + '.')); + return; + } + + String upperCase = args[2].toUpperCase(); + + switch(upperCase) { + case "KOTH": { + faction = new KothFaction(args[1], null); + break; + } + default: { + sendUsage(sender); + return; + } + } + + RegisterHandler.getInstancee().getFactionManager().createFaction(faction, sender); + + sender.sendMessage(Color.translate("&aFaction of type &l" + args[2] + " &acreated with name &l" + args[1] + "&a.")); + } else if(args[0].equalsIgnoreCase("start")) { + if(args.length == 1) { + sender.sendMessage(Color.translate("&cYou must put Event Name!")); + return; + } + + Faction faction = RegisterHandler.getInstancee().getFactionManager().getFaction(args[1]); + + if(!(faction instanceof EventFaction)) { + sender.sendMessage(Color.translate("&cThere is no event named &l" + args[1] + "&c!")); + return; + } + + if(GameHandler.getGameHandler().tryContesting(((EventFaction) faction), sender)) { + sender.sendMessage(Color.translate("&eYou have started &d" + faction.getName() + "&e!")); + GameHandler.getGameHandler().getActiveKoths().add((KothFaction) faction); + } + } else if(args[0].equalsIgnoreCase("stop")) { + Msg.sendMessage("*&d" + sender.getName() + " &ehas cancelled &d" + (GameHandler.getEventFaction() == null ? "the active event" : GameHandler.getEventFaction().getName() + "&e") + "&e!"); + GameHandler.getGameHandler().getActiveKoths().remove(GameHandler.getEventFaction()); + } else if(args[0].equalsIgnoreCase("list")) { + List all = new ArrayList<>(); + + for(Faction faction : RegisterHandler.getInstancee().getFactionManager().getFactions()) { + if(faction instanceof KothFaction) { + all.add(faction.getName()); + } + } + + sender.sendMessage(Color.translate("&eCurrent Events&7: &d" + all.toString().replace("[", "").replace("]", "").replace(",", "&e,&d"))); + } + } + } + } + + public void sendUsage(CommandSender sender) { + sender.sendMessage(Color.translate("&6&lEvent Help&7:")); + sender.sendMessage(Color.translate(" &e/event create &7- &dCreate an Event!")); + sender.sendMessage(Color.translate(" &e/event start &7- &dStart an Event!")); + sender.sendMessage(Color.translate(" &e/event stop &7- &dStop an active Event!")); + sender.sendMessage(Color.translate(" &e/event claimfor &7- &dClaim an Event!")); + sender.sendMessage(Color.translate(" &e/event setcapzone &7- &dSetCapZone of a Event!")); + sender.sendMessage(Color.translate(" &e/event tp &7- &dTeleport to the Event!")); + sender.sendMessage(Color.translate(" &e/event setcaptime

C:\Users\Matej\Documents\GitHub\SecondLife\Hub\src\secondlife\network\hub\providers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1530215984525 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hub:jar + + + + + + + + No facets are configured + + + + + + + + + + + + + + + 1.8 + + + + + + + + Hub + + + + + + + + 1.8 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hub/Hub.iml b/Hub/Hub.iml new file mode 100644 index 0000000..b87d8b4 --- /dev/null +++ b/Hub/Hub.iml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hub/out/production/Hub/META-INF/MANIFEST.MF b/Hub/out/production/Hub/META-INF/MANIFEST.MF new file mode 100644 index 0000000..7c2c92e --- /dev/null +++ b/Hub/out/production/Hub/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Hub + diff --git a/Hub/out/production/Hub/META-INF/plugin.xml b/Hub/out/production/Hub/META-INF/plugin.xml new file mode 100644 index 0000000..e877588 --- /dev/null +++ b/Hub/out/production/Hub/META-INF/plugin.xml @@ -0,0 +1,35 @@ + + com.your.company.unique.plugin.id + Plugin display name here + 1.0 + YourCompany + + + most HTML tags may be used + ]]> + + + most HTML tags may be used + ]]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hub/out/production/Hub/plugin.yml b/Hub/out/production/Hub/plugin.yml new file mode 100644 index 0000000..112a789 --- /dev/null +++ b/Hub/out/production/Hub/plugin.yml @@ -0,0 +1,6 @@ +name: SecondLife +main: secondlife.network.hub.Hub +version: 1.0 +description: SL Hub. +author: SecondLife Development Team +depend: [Vituz] \ No newline at end of file diff --git a/Hub/out/production/Hub/secondlife/network/hub/Hub.class b/Hub/out/production/Hub/secondlife/network/hub/Hub.class new file mode 100644 index 0000000000000000000000000000000000000000..bed810a9d02442bdf1c32c2d754f9238a5777747 GIT binary patch literal 6750 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 literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/commands/MultiSpawnCommand.class b/Hub/out/production/Hub/secondlife/network/hub/commands/MultiSpawnCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..414ad29200cc184c6d764841b35f0b5bcfd21e71 GIT binary patch literal 3238 zcmb7GX>-$76g|%gkzy-A3GVEH-eLu&p0VE3)4lhdd)~QM`s3eUe+O_FKSi+v zqcX;#7{^2mFJe+gO2)Yu&SR<_PhdKV8O%z!5Jgm2UKHa?GF}$rr6^v(t5N7kN0C8R z1{W)HGIC;^mtlzUatsSFg+*S5CBqicC&hh1#%nT)G90muE1@J|k)f?%mU4#0uzAGc z8QaR5#vIoy?q0Er3)*}st(`5U`^j#=unhM&Lrd@ODTdY|JIfhXjTjamE9KL?cur57 zv=Se&GrBpY7Y%VAEVjDyhQn}Zxh*nwKCfF@M;k4fu8}I}SF9m_iFS_7(<76gck~>^ z-`P827js&=w6I{fTHvS!)+ugfd9hyrY;(LhL(k*w88%LqEZ4~MDZ?=c_Mm0iuI?JP zwH)e2!!2FcO0Ge8xw8}ppc~0JuJYAxBk(VR#Vpv(=#k}D-6n)Giv7<(O(k?J4 ze!@dVuDg`6){rqLobEMk!ql%(rX!d2MO`y>E2pL0qG9Fy+zZ}QhVJ^@8$Ia=1wwIP zO)(f`lTK0O&#6n#fWwN^nB)J$@jm zCo<>ed6=EautrT}vNm^ADr=QrH5}I=uIl&ki3;CG!H>8@$5AWOhW;1`Eu?udtgewb zp1#a8F6|l;W{Kj5Y||#5+ufpWIi}YH61^eHZC+wfAJ-kJp^DZx${oLz3|Jn{f757A2A@fEdcTV+~{97ij8bRvd0y0C@-uC3dp2m5h=o*$%t7sWnAI~=}< zh=V5`JcT0;o+bp(;3!%I0+yt)g>3)sdkBeP^d96g+J8fI_C8{9rHqa}^pCHkOBt*7 zma+N)I?ISJW4ESixAu{C>#BBLkF;A~wcGFz8yTuQm(kro&o7V#E>>4P9d!2stwk{MAMgNJga7~l literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/commands/ProfileCommand.class b/Hub/out/production/Hub/secondlife/network/hub/commands/ProfileCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9d0dfd2d89c332ffd1a3fa70b8b5b624ed7655fd GIT binary patch literal 2323 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 Ug7!^3^Jct-|K#e+cmQAdFC-b(yZ`_I literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/data/StaffData.class b/Hub/out/production/Hub/secondlife/network/hub/data/StaffData.class new file mode 100644 index 0000000000000000000000000000000000000000..3cbde89043c74e6bba64df8f0007c91dad1ba353 GIT binary patch literal 4699 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 literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/handler/CustomMovementHandler.class b/Hub/out/production/Hub/secondlife/network/hub/handler/CustomMovementHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..9e2b7155e14b03f3d447ad0966867f824b650c90 GIT binary patch literal 1720 zcmb_cT~pIQ6g}G(3MB|u5Uqfp)Y1a6@*z@0kr{=tC_|N3CJoyXnkJoeQ{>%0H<|0s$4C7H4=`bEM^j1u_Xjly6*(%p<>%cS$T(!73ww;oC=;qZ;H=m)nRl_pG z8bdHKy~hyRun#!HP}Z>cTeqC&&U-Cyk|&zAb4szS4L(ma`%_8UiU z;zuZa+ckxet7ym8wq|KXx#5fcd1WuAs-8=u8BY69^G~8p@`Os646pyow9Da*lCpJI z*l!HI)Y3J730)mYq>7G9*Gr?Nsw0JA;sP0x+!&F|39V4baou(3M7J0&UxHz`Orq&G zk1d+r@^F`K(g83i^aSMS(^VTJn@$A1uhMFT{EWUz@*7z4I|5%3{7mZrqV$f?m;NC{ znb+!8Jr*Mvr4_?i+&Sgec{Kum-9A z4XQgul_k=GSFM3Wb?NWTI@35}xK-yB$2eI*iHZqKQYD7lEk-%=OGfMrthZhu)&@YA cPF;!=(*$6+(*R)9Ko5X+y#a8KN(ONM4^$4=r~m)} literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/listeners/ChatListener.class b/Hub/out/production/Hub/secondlife/network/hub/listeners/ChatListener.class new file mode 100644 index 0000000000000000000000000000000000000000..4a1e6f53bce66d280c592895b6283e7740f61717 GIT binary patch literal 3815 zcmb7HX=58l8Ggo=vbMaA6X$T8t7;BKP86#xp+_7_964?re1s@AjXBC%8rd7KcGcaL zQDEw1sdaBV*;U+ zla&H(gQhKqi}?xZo--ya?z9g&8N(VgTvM&9n<0P7^aPTFp3FFQ)-rQ4X-og2<4z~1 ziW5o8^n7Vc*Gs0R41ch?>JixJ*uCDYojGF}v(in&Gr{hID zqT~Dc0b?D@Cjonka&*a!S*(UZ}PlAUwhsKIzlNjDm^bo?B@(D6%@G~CcJhcZhhmg&}U z6PI+{!mkAO)s^GeQB@{UPrA$sGW;4ZYxs?h-{N;n0v)g5s*c~|Re^1_1yCD89e+?- z`fyUiYdZd@Jo}Sk`!g;HG(}_gzj7-Y%LyEQLzO77VG)#(i3>8rOzNyPBB+r0!mTfU z<;-W-2*ekC(@GBb(lvaCa3_{2Sf$J>Szf7Qft~TLB~?+25eq_NK@1ytX7FYbF1l9D z`iiU*vlWt5d^tr|y-v2WgH(B>4&Vz6i~XRf1L}E9QSecq0bda3=DVIx2))KqskYTe6Fi;P!%$l#zcx))kIah#1 z8MrDRGnuxGvQXIm+UFw}WRF6QVwG#7w)uEb4rK2n866$yBgy*3lv7NU$*ajXOx04i z)P}s0?>!1m-IIPw!DU&JazpWPb-C=W1KW)07oSXysZn50eSB(YXwMd!ta??7R=AF} z7PuAW1(=p|t^n?ue5?-B8&WMYxa;Y4VnzQH&ynPW<>s_u0CHd_hsLS!mtm%G5$`04Sw?XSsa*HI4uhK?Rt zvnj{1vd%?DcU6;!UTdJD`q-k%jZ4ZiEmd{4E|wlQ6u=8Tf9n$R`MZET8dGRkK0)e` z9ekE{?rM?p^`U^A5ApuB^J&PVlM&0AWZij=dbWj3Z=}HfKtX+`r>-1z58!S-krN>1 zeBL+m%U2A?d$>|x!EgBB4T$TUG~iy2>w?WqxQ}zaLV!2%&j6gi8TXTl%;FyilM-Ur zp%NN~5@j?BJ{m&9hvyK!g6(rySAteT6Hl52%7`@JGMW#CN@%$rjC0USXf0v=WkeG% zp{NBg!CIv0+& zhvu+@8|^zel(6d#!4$B&Mr>Q6{jLQH`W7wYZh@nr&QKY91bx_}W_tx+H~Wr;JHrPP zB-(!ivB20D|NGa4jX4}ppf(1ePGB479R#ftZP>wR>?FXu2y7G&Vh{hX_VTA{KmVFy zFwlir9K=(M+_Q{bnbbE4`m3b=3j^^thT-qzx{ZfKD~^f{I3{-DEkVGJP{VC(zymxF ztMF7qr)Ce~C_@+)+t9<)2DFLwI7YrkJWShmpy@UaYj~@M`a8 z2@n;I>`aurFxQhI>>UmwVN^lnGuTgRZ szV(5Y<7h@N!AS+KMk|`<9mH7RmP+U`^y3lQsoY}9chT5WoHk(Ke;<-W`2YX_ literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/listeners/DataStaffListener.class b/Hub/out/production/Hub/secondlife/network/hub/listeners/DataStaffListener.class new file mode 100644 index 0000000000000000000000000000000000000000..7a29b8ae7f670caec742fcaa0900967444c977b1 GIT binary patch literal 8710 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 F`9D|1K2!hz literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/managers/AutoKickManager.class b/Hub/out/production/Hub/secondlife/network/hub/managers/AutoKickManager.class new file mode 100644 index 0000000000000000000000000000000000000000..aeeb513daa976c7464f90fd273ac59077a99c88c GIT binary patch literal 3300 zcmb7H`BM{D9RIuoSqUp(!~?6yC309+OIr_)R-zVS5S7Df&rR}3mTY$89@yCXviD(Y zZ`=M2ooN;9Oxxc&)9HWInNGhi8`wn>#?HX9`+e{G{eC{*>plMZ_wH{19>$LmwBneA z;}L`~REND7j?iPI9;0}y9*^UMc#K65!^usg0fc^Ui(m&%3Hj+L3C?(OpgDpBCL=hD zsVEqx>oJ2_v29MmMWOR#1eb7Gn0{(Ao{r!dJS#q)lkmI*RYH;>tj^~c8WRiZqN=!# zrYnbkz~}7j#K|G=TUU*Yk}!?T&?xEG4r_+yj56%&N!UDP z8fjgd=Ze9dtEQDxvTjltcauZCa||^xGfiF^6Pm%#y7?rxX4Irkl4!zAsrsC1Y2v#q ztZ}lMEihHFnpX`q!!27m;X39SEtQ+}1Oih*cQcy7u&0``fW#2Vssxu$nu`QtZ%@Ls zGD_0TM#VeB?&|v(woE&!fKn*4sP|mNvOGoM5BG>T$e!#1 z&zBrG>uNrkR=WZ_yAG43ve)nYJ5i zVKrf}QGzYQ!3z?KGOpo82`|Zb8Lu?qRa$$k2?H`-#~Tvfl<^kcmT?^m3=Jhl8K2?? zgYrLXgdA1T5S`&@+@|g*l@~)xuqqa*E|i33JKPYZuq(J0tQdy+40mP??TX7M(p2F+ zz4tZ~W!O&?C5cq1dmL3W>@&Q`u)QbHZd1txo^pnIFH><_<+|yvv|+strO}W3bdjLv zsYX(+Wf7MdEzc)4T^F53#TjRi7FFHlQ}Ybldg5i!t0|+N2^U<4;b;Zl>s<%c%M2p; z44;cZc$4M@xdh=$1JYi61W4dbFoIvraQ>AME_f~59Ma^-qmF8Y4yECet zv%6Nj60J)0P)UcdTCO3&M(ICN5nLrT-&H&=M!?oU;f$3g4yB1IX3EfMIC@iu*za0X zHZfDzsR}gHAix#NV@^c&OR5nymEr};)47TW#ZcZLe12KZyGF^M5;G0kCC=oy*tkRFGFweW(<*Q98x@)ZH#fc%d z(de#J4I%(()lrp_)syr_#A-Bqin@^6fV%8H>VepsR0MT29}Qbq9b&PjC8r%rqeC*- z1Z5Eob1~dj;IB#LiWVL1U&;6y-^q9cgA9i%1Zcxblkq497&`ps*NjCo$CX6sxS@%z z&Z{ZMv}o4U=lw4U-%|l4Of%t+BPP@z78N3^mDFo)h8pWAnfd{wW z|Dxw|W8Gl5%a%o(PiqbzlJEn={&fMV#D}4E<9%qSR%@l(*gpCViL;gdc8F^nI#EmS zbQaUIn!bSgk33bhgs7sKS zu_cU)0!kP@l)VJ0l{mFyn4UhAkyR)oP;iJK94=|H4tk~gMH$m5F=4dO)OQyRbcsbH z{VZXt&sbcIL1AhnX2QJe?Jt{WbcNvG8b6;!1F-=GDN1HK2&d1WbCp5o zJq(&cqTR|2j*(BnfKW$?#5Pb+n?vvkh&&4dKKMq@GMS<7E1S7Ni51}E>%bomO16ja z2X@@XPRh&8TWIZH!mdBDld{>u@GTnpqq~>zz%urD2)s;r9J}eVe*hEY+vgZxKmtMoTYZ!Z0du~=J26?2Q6wcrVoi^?0Py%UJjuXsC$^SJOIuXkir literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/managers/CountManager.class b/Hub/out/production/Hub/secondlife/network/hub/managers/CountManager.class new file mode 100644 index 0000000000000000000000000000000000000000..941b81d6cfee5ff0f808d3ac0589d6afe8ea61a5 GIT binary patch literal 3899 zcmb7HiFy;)89mpMJhnVwBXEKowj>5*8G8s#A+;#Mc7hR=fntZ0kS-(XA`g;gl$nu< z(|uo(E=kvgo$DjC6ossajg#( z^|{msOPyTTP)%YdY8vWE48vB7qoI++ZakwDxJh{M6-{#h%ebL5KdWIy!*d!wE-+B3 zIYqNJ>ojd&K;#8_Pg=I+pAy)gDR{Ev*yWmaO&YfJZ#Zt%SZWrHv&~{|?6N?7)+tMY z!GdMW^UZoux{GG9#+_8bDVep)rfaG9)@IyavOIywZc^)}ZC0e~83CC2@GVC`jasu} z*#djIaVk6l!%HTy%1g3hdA@WPq`ORM0{1xM3&0LXg?&^$^rj@A7mNjMS7Ulr5A{H3w zE{Heu-g`Vvs9fo8$m2Id_uz~1$0l^qK|@O`X4@z|M7|NSJi|7?V1Ff}d)5Rmacpa~;3HFE#v1$FK34 zjz@7?;7FJ9?^vizpDyH0->UhR^o&+Xv*IGv6&AMBj;W-MB(TVSRN=KH=56|8tHf8|mBbF(|4$rpcXv{V{f^j$4cRq={*c6P@LM&6 ze#h~_8Ntc*dx5@LK82%0&$F+(vo({EVe>9_9YP(mkoY=e;j-m7pEKHdxM+G+Z**NH z5JMjo?bDQ?Gw_=wTt-8vZ6CL4o;@!}9?wpEbuY9Iy)@b2ywCi3dUY8|5H};gk zfvyQ3wokI^w!G1v1_Bcq4ySi9JT!LU@)L_^1a>j`@2nd7B_PPFi@{KcHeazFSI(NA z>i<#Pt+Ap_-Zc6#!GO@Ke zbS-Ihnb7dMjz8efI?k(}ezXI&yXKR?0~?{U>}97ajY2RGIhxFCX32Nl6C~ zCSbvFs!dMSe?|k@5)e+cv%!VR8x1Ktw4_MVY+_toX~-z~J3kCn-kmp^t1Zc@m=~B@ zISqehf8OGdPWCVr?oNmM*{2Rb@RL_GbwA*>yqC|sE^s}>HwST^0Ee^Vw;-~yzo934 z3$ZoC$5V;h=#3$K%-)6;$CEcn+JnPfM<@um4+&n>lh}*xRF$T(LsXXG$vvT1j3LW6 zD!@371Tc6*X(>NNZo#vm?3?K07Y6k6Zw&(*T9Sd3Q4Eq_N!3I8mQ(=)M_aP~O-jnZ z9C5Ege+BWI6KmKu6;H=+W4pjqBArMLwocafdey^_z;P|zo7%C8)XV744r_FRf)EP~ zJ%oNfkJHEr@Pb4mkJ5j~`1T$g$9r*_>lr)}z`GPeXd69;he)YRoFnzafiZLBIZoL_ zIKkgX=>IgOzK?VX${fKIpL$8L13AV^!%1@QL@fC>(i+~c;ndr>pDS;u>XOs4{$CWM z;xY9Wc3!!KUFYAz@Rf;MxJTJPzKVO(@grPcLsI!+73npMtl_>?Vqz70Zewp8Hz_HF zeT?4jO@`-a(n+2?%Kg(kpC!dKfz8n1#|isPVE8F&e~<=Db6%Z`c;0x b{aSB7{z&iriD7(-`zk}PQpMBwFrNM&!yO&r literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/managers/HubManager.class b/Hub/out/production/Hub/secondlife/network/hub/managers/HubManager.class new file mode 100644 index 0000000000000000000000000000000000000000..72e76e186d2baef9c80fface8355638273242dc8 GIT binary patch literal 5030 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 O-h?QlD{S`SZ21?2h7ZU9 literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/managers/QueueManager.class b/Hub/out/production/Hub/secondlife/network/hub/managers/QueueManager.class new file mode 100644 index 0000000000000000000000000000000000000000..81fc04b40efde33365db02dbb329c60314f798c2 GIT binary patch literal 4977 zcmb7I`Fm7X8Gi31nLEpcgeg#gKv)7zGD!xIikN_f03|SC3#5P*y)$!@Tr#;g+$E5@ zwBm+Ztra(LtF0CnRN5jC(285t+Pbg5`1p79>0^D*y?2&mX7W%%&Ybg|?LF`JeeXGw zm;ZO`MF5-d?-)Aqu#9)d5W>kQl6a4d_eP+`(11)FS>z(nA{dTfB!bZdCyh6-5dT)h zV89e(CgL~^OBA-4=LnlCYLhXX!Pyw5@Q5hh7vl!+Pe8(BV#tTYkaME=a2y}OM@8{5 z86S^h70!#sClW;UDKX%2G5*tH`e#J*2~m7j6i>?doQw-HJ})7B+SOdmme7JrAgQ_tGhRCYgyCC<@I4LWoXVB(;7>Sx|vi?b=1@$vFJ|L zdbV+$aIbFY&Nc}xZMA0YaWg&bLlWxy%p7-XOzVcW-yP3r))6(6rzMd#vub`wwRF)A zjP=f_PUzjWRvlLjbwsmlAJ2f_5`ZT1?uc$kXs$I=;E@m?(VQJq2lMKbW=ZI4OPkh6 zD&vlg=}t;B9Nn2p`JFxOwHBI1hlB=?a0&O_^$eo*0W7V(zl3>%j+z}CP$xWYWPG6j ze^9d~1^k{i--UVA7)cE}mTru^3D{vfSSC@qii8M>>N8!#kx`RKe*VG>DDxRMt=`_*x}y?aj1y@)M859g1n3`*^=Hf~OG{_?rzGv1S>%; zFuM7C>v{E{lz1e(_tg%7UwX)i7U8LUv&nH0!bqn4VY{Xk7+*4AG?UtoZ z3F#1BLkhZ)lCbu!WP)jNbWdN`1~K!CGQOnX%eWXANmpdInss#3pp(M;bcaDsiQt3* zO>^9duC$rSOi{shn5JVpmO3$@IiqIIZVcm66NVaPd_}=m@sx~jDtH>tDEJn>%?wfS zEG{ef4!*14dpM-v`?#p!3VtBthYEg#t1_Nb@H}2na1DDD^q{v1Kjx~}n{Z6Q4ct^P zjav%#>O->j=^Gkz8EHEn7TyECz1DR7=*6C?K5yS8CinyU(rDRaw^D_QG zclWX8%f8ZY5JF#GwQX@pWopK9RRXH(o3B4b3WO)@*20!d`D&z9n?sMFL#KRphC|+9e=rdpzVs1!;+aD<;YBsA)kkKu3XmR<4Fzgzh2&MWc zL@u2!{4#7>yVUHcgq6Vwy!TV(P~m9d77=Wod@U%r&YM6JSDRN#9dAs$;JSSp<*km> zC9ErFs&J;VE4dg1;jC(8wLA}Md3T{W_MapSRE<+{ztqa05~#{!F}!s9pz7KhQ(V^V zUE>oDp^E1~S|8VmH)?A}Zntg;B@oXk-#OdaTHe;*Ui(2K7cHLKlBy;=bqSdVb3ZVFTi<^M$~26D_auYe$HmQys}0kZvP%{08b? zK>hQmzm10DiSP}`(};xdP{9(du*51X@d}Glv~=9UJYXT_^Z!jWJ?Fu?pXEA4SuP=< zWoX259%2PywqO@lGF(b{+5661E6Ay6YcK#};dmT|3J665Mz9{;zGr;p$fTz0x&+-{~7I$37y#bp4 zR-oBLH1~Tfbn@&aH1mpRy2;q?*=Sk>nvi(9_-LdHY>Crdt3dP2Of-qG2WL?td=qck z-}MqAUDvVX%4M7-cZ(Czpf@_J_k`CQ3wmR-dV9Uzc+eZ4)w{y$RlMFrLYdk7#)-Ns z#O-_NB<^Lsmz-=x8@yez>Fw&d4&o5Uibb2f?cnKy z03?+GS`U3hT0=Q z`wm}VO|E!z(OU#w9qxWhWu8y@dPtv2YseBwWI>jvHRP?P)a8+@4I-}*LE}2hj#39Hi3kI=aFR7103cqHaIr(Ve-;zv3EDz< v7rwzy@%N~&F&n-fj^eNQ2mVIw)oEYJai{n@Mry~r+6VAKJQ~zKiAVnrfn^6Y literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/managers/SelectorManager.class b/Hub/out/production/Hub/secondlife/network/hub/managers/SelectorManager.class new file mode 100644 index 0000000000000000000000000000000000000000..3a6e51c8972399b06d39147d2742c16708840a11 GIT binary patch literal 7213 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 yijjm`b8r)7b}+Kf zo$Z}cP(NZ9s5X@|EOFE?O$%p2pEgNJ=j^<0PU(&zpCe+uH){~%{#sf~x}_KCMrPd8 zXJ*Dl-ggXdVJxIdU}e)U8kT~swKPav3f9f)#4N^zRTvYlOPvbpdL&*gJh@Ah?0FKm z_2g`)n3?wH<_s?*ERW_g$4z}fIDvaKDEA6FYV#>rL%8|5F})nQnGB7L1txA^#Y9}G zjF)HFR<Gp(OKwyP-Io!oRzQcTm!=DP_hoVH zzMAevhn8=e-FsOB1>MsXTvaP4@;J=sA?~s&Oa;kt+jsKfHbd6R=4$EQBkNd07j`OW ztJL&C$I%z0GxBIa!*=Y@(2oID{;+L(uIK3GG2zYH1vk}*QY!{hDl82)Ton}ZF|Xng z4Ub|$#bX*C#}gW!l*?0iTE#OOp2c$-p2u@4UeNF&UTVe5RPjnH_Gow&uc>%l!y9;0 z!&`WpzG!#{?`n7tZ!3U`_ceTg4;5UyD}US+x+^*zQ6ya9bo#Dg6+1KRsGzKu=!0e5 zb=g^kAr&8KIE{}roWWTIS1#!=ZI=C_0^Rp!J1au8RijB)Z6_wIhM1fko*~>!)OZ9^ zgL8RillTOm%GviBYl6*hs`#80Il^5y6SPsw63&Q8cLm45$(qw;Rp8m)YK1m$c>ZI- z*bAUf=$>}pfDikV~6Cq>@N_MYHubfTHoJ3 z8jz=CrF=o$dOk181Up$Z*z&UZuX3nFYsR+%qnQ!ga((8I*4rz`6;uk;8QZy4&(A98 zj3OG`nU`yj=~U_OQN6@j)xPLv5dU${VNcUYGZ}^#LY8biLlH;Snw7pSZy{=u<#9Y3 z2n=)pK4yy~amv?CceH5Pju_#DSrOnxi%i}BD0+s(W~DcCZd$IXd(^h8D*lx~Bvdzk z!7eMzMG#XezSQs)zR_@_9MXHMOp;amNkbNU_})@6Z&>s8oXF&Y8;YY|pV9N4?JN*a zsq&=aTh><2w&(n^f8tI)$IszERM z0;9aUBNIcE;vI_CzF*M@imLp-h~|oR`HBs~O;L-~s)hWKRt3AUC(<=bPRYBo?vWo*YX>DnMe~-7gbe&?_2`D6B+EKk*fnKrHk8rxF)iC zj^0cE2jezq^(^Xt>>s#FY4Lw_Mjftv%zZh^z^G{wsN hZFj1%8DHZ(&aviiBVE?}?c_a-QGVp^9^8u){{oL-zbgO$ literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/providers/NametagsProvider.class b/Hub/out/production/Hub/secondlife/network/hub/providers/NametagsProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..655d8b6c8f22403c435d8b0a8c7184905775540f GIT binary patch literal 1051 zcmbVLU2hUW6g^Y0z`6+1FGQ=wPpC;Zek49%OpK-p2{xn{9(*ywGO#0bwwawp>p$tg zs82RN_yhb=#yhZ0Obbo)<<8tY=bn4+ota<1fBXdS9NSrx9b|FCK?OIhxn<3!gA8tG za3_N;hUJ%1N%M*!RjYRy(r?1PU?{Yt5_|DMPw4l&H>OCb75aSKtDrHQv6IsQw>5AkTc=F7-$g%43)(t7#ux=?S`5m z-!a@Dz2k?;44h6FYhUb2JEgVreeQhX6V3n^IaD*a>*5~nyLe#DLp*X(L!IHtKhKZh z>71PNjVEf(hR(2FYgs|wn5&`JF_5v|K5%Q!Jmb6FN;1gXOcx6SL+YnGib6Awy+u(B$IS|RqeX+A4c KaGkbG*!TmTXWh9j~-+N4xkkIwGSh9R>v>&$FQ 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 Q&QW{<_qeN1;nT?e7r{tj$N&HU literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/providers/TabProvider.class b/Hub/out/production/Hub/secondlife/network/hub/providers/TabProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..8773c21585882561b0c4a826d8c7123c52d07e28 GIT binary patch literal 4618 zcma)9TX+-475-;;rCsE;E!KcBA=HGR3L_&Ml9bp$z$RdWZ{SNB5|XT>mAzQrb)}WT z^pd1)5_(J1TT*(z(9#x~k~9&9v`Kn%+O$pY%}bw}m%Qe+=~sGYSF$8a;^Xt@otd+9 z{`1d2XU?o%|KHV@0o;Z+1K5T80=OT?SD+gY1n?jps)LSL0C6Pv!%&dq=1B!pGRy$# zaG!z`yq)HbsQ_kR@u96?mbV{JkXDdU-~^Dx9Dkfta4LX#oL2Bb-hL>6591>W9#-&3 z0FUCMb@&)QuHZ4=KCa*i1!oj|B7jfgQwlz<;4{4YB!7HX!Bf2boPy8u_6sZUMSMxY z(+ZwZ@MQ&O6?`Q?wy!Gqnu4z@_=bXS%J`OyZ_D@&gMT)aoir_m^#d6rZd-|znKYu7 z;heP7)6uDHEZUcib<@0Ere!*N7{u_F2?nXxP8bZ01EysRWoKeWdQ6X{$f6C{aXmGm zr%gW28zpDT%rI=L6=F7R&zT7$or#jeNPa*;S4PH6w!xGZBq#T8uTmX{cO(aw&J4i!JcMWP-` zj-50e$4C=iV<@q=7c!d;EvB9k#~)}nTJ2;jr}#%)rBNs`WLrGvy@m6H zXzjO>HgO&A>uv8Oow+`5@W3REYjdg7wondrwW|0NE~@x5S5FNk^8&dM{=y@$sEWVh zs*Jy>_&ff=&=g7*d_(c!WReS-k4Cw-6ovYY6m8H=#r6R^7Mo|N&vWpsD*oxN;jrmY zesEUAurN>#QBsTBU)ZttMK<*)Cgwm#cJOtN7>3B10V&sD6uptT^q=hH%wFR8mCaX+w8trc8cA z`V93}kxx-JFDTWRaFwW@ZV4(v`MT$o7G5NK<~_7M;YzTooT_3`T%VbtEp@B>F?wbU z+Qa5>e}5HNx&{3D?5trW7}~4GUB0gT!KW~d#JShbT9l2JKFMoAM{Vt9yg8X@sRx17 z%Fe3usbEn|uQs_j?i%~)-V66v?m&^L;@E{u*jRHebim9w6sExyZOKB1$+Qy2so^BU z>Qc4564bqgc16mVr-{Sf(%1Q;cAe8vQ6DIH6VV$>>sBU3=Q!b2XZj*AGhQ{P3PKaS z{?aN|l4(#sWzJ-0mTc9|Hy4#J%Q1}%|LPj2K8YZwY&}8OCjYjok}o{tydv+WH8#?h z>njI>~tykb(8Q;SinhvagMMwb>!)aI+%{MMpm5FPPzboT=F z)-7T(;#+djZsHCLSf9hq)YCSU_ypwwvG;hB*5%Mj;2Q-<4{>(46wOz#iP6W(N{{S$ zs62*ttH)2#Hd99nE#SRF?Td&-#9%-R^LJvft`K7jfwkw*RwN(>RWfWni*R91#G6Cb zmD)D1AN7KshyQtW5afAumceVCUL3W6!58dK%?qn-Ct6)ni?oPjL?U84xPw$qtVJqg zCIwY)A!=;}SWb=GmbmdjHFBjPJaU9qK&c>i8z<*$@hu`j%WBYW_g2$baNw%7_{zwM z!63IR*KGlJ6lCMCt5GWrP|z({h*UxCeVm%V#m{x~k#0LVHQzGbDCtXf)JM9Jr9wBd z6?LOQHFBjPJaU9qliZ!0oZKRN8ZhoRrI$S>(Pu`u@;B14x_kSQ8?w8SShU+t_YI*&I6A!`RNwU=xEzkFXhc z3H#6^^kKg+h`WUe91t8F6rM%Da2bb$S8-VQ7lwqlFe1E-Bf>j4DmG$NJdAO13=`sU z+#}B8nD_|p7azlM@ku-&Uc`gq+t9^#5EK7{xU>e7Zmm2Dg*AyH`f&&%yC6){3J*aN z`qpq@{7i|xQ5_56hQG=``r^9q`;uDmyl5vs2~sR>7Llxp!P72V@l^IyCxV@$b* zDM&KLWlYde#yt?JW$YTwEVt8$>@wc(Yrh5qzEY=hzlv97u5tL6xt4oZds_xzK&}KR i$EY!38H`dDrW~pEoFdpYv~$(+8d731+)GaZ$Nmqr>!Z#9 literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/utilties/HubUtils$1.class b/Hub/out/production/Hub/secondlife/network/hub/utilties/HubUtils$1.class new file mode 100644 index 0000000000000000000000000000000000000000..f1e0185794a149c9a3fe801978ee6aa772632b62 GIT binary patch literal 744 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 Sf6>(p?GFVbG{an`n*RYOa*ing literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileStorage$PlayerData.class b/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileStorage$PlayerData.class new file mode 100644 index 0000000000000000000000000000000000000000..e8a538ef2bab5ea41f3363fa926e52837f32be15 GIT binary patch literal 1076 zcmbtTT~8B16g_uax=N^XKoc-vFNC(G+~F{YZXREduQja`s5~N>2!zVNW%axE1NP z60x$M64Mn&{f6jU9a*h<;?yK<9Vzj;-|cF zEh6^X?MTNe?by^R2h46OX)(Lmkkh;UlZG1E0*WykGzyiEDU;Wz^ULH@FU?U=BCgI&U5eoMXAMG^{1q z67Nk^za#sV9gpFFT$+5A!UTf@Ll|IYIbRiAr)XOxm2p(C z?0S{VLNy-(2A1+OOP*V@Y?Ya;Rw`C-CF;!vt|!ZCpiVP8PSZQbEXNAQ1(Jh9^8!s% zZjmI~a+aemR~PfjyC(BCM>=zELE7`uvvj{U*c2>SbZC5Aj7XwoLHbuIQN&H4Z!qV2 z0pP4C@Y|@D)vqSHZbfl%gzRlMWRThi?8kN4AmLJ*Bn|Pp+kz#nD7q;bMTy*l9 z4P>Fhldq}RQ&vHp=e)G7;$^u=%}2MAVSQZC16wZUi*mqG%L7O0!K_>L3hFFlL7;b| zXc*OzXktGO2z1n=^1SpH$j`(J=ri!Hi5sBm?USw>_<<*vrd6=u7X7xJxY>^P+YH=l z$B2m!@S%Z^Oi1Jn6igJM+IFD39VG*00}CcB+%`}#Ve9Xr2?wsgx&JAiwIAes2cC%| z7&PG{Fj0kTVp!9=i)Dea?HHp5p-5pi&g5^aLLhMRKOxRB`ey4qJU9yy)&|~Ah5qiGc0iH5pH#AV}={*3LT*RDDS$SokP6pHk^G_iCNeKH|H+1(o3Hy)>2o7 z*~3|u=|EbJe@Sh2dQ7XE+dQw$OQ6;vxm0CLoY)|8Hi)J5Lj<5K0*5yMs0B(a8T5Uk z?o_3Y>=y3JNk5A2VtBt?H1Mg3&v4JgYZwtYSWhO)x$9O`CKuK(mKRx)1zuQ`t$DHD zGjN|4a;{scQr^GfoN543WjZf;Jt}`7TA7Wx_3R2=XF1w(`%q}+@V4H8bF_-^+tO55!zPKp2YP!bNyoo8q!?rCi>P)^sSkAd5!md?n!dj zXnOb|I=;h^22-o(OyGC4PLDjqo@ZWlJxFSolA%kT)CtsK7ZLl3Kf*`b-p~1dsyK>F z$ZB+r#b}Mi(GWvuUthtiHIJvcSUb_XAq|rFiIZ_LkH$RhU9-^}*=SGbe5^r#L#7&f zBJ$%8oD5z59?kmO{Ug$x=n>e&@^jz*z<|*!wcwHS`*bLwok7&Wr<0-Cg)F*pimmzq zOsvtGh`CNOy@!c&EOh8~1{sKupk#ZokKfPnCB7g|mg72B#<=z^jN|QE>kQ8R1CqZl A=>Px# literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileUtils.class b/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/BukkitProfileUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..7ae5d322805fafa48df0e834a7276b3764c4f4e2 GIT binary patch literal 2497 zcmbVNS##4?7(F+!Ek_Y#AqxpfHz0K!KrN*UNk}1Vbuo|;ic$VBphYA0NRTY@bSIwg9lx%Ck)E(2m?Rrc4 zjaosk`IhZlW>v3v?t*2T`gCn+$?|8y-5hVL69Q`4^k-~i#q{WFXJ$0NXxuUaTb*ev znWel{^@$Tqqc^;?4X3Q1yi+tQzU4a7N3CX+s=jAAWtnT>App$=XGA1q0s`B^JImEi zanEz5(g@wRRp7q$wXakf^&i~SVlwY~WxWuTs-It2u*qdu-^3IHZkzRu;?h~85|Bta zD6oR2F0#b}ZL?O{G5ngxWDjjY#(zZUAfeMMVMtk}KsK{=P7&WtMp7Xo0)tx{3G~H+ zR8JVbamuwzrYF$ZNV@5<&8nVkh>kj=?9{61uN@^aSETmRlSNV$h*6z&YhKX|lkb04 zH3wvaHN1$I1bQ};i-w~(reO)ThGjTx|ACU>D_GRvqN3p@JPlRwq^98(ZY#K>VFe#+ z_ynH{>}U#TO=TKBli{@BDymJOzljW`HeItM4+=il@CClq@D&^lU*j8@?p=W-r^7C3 z_!i$O_+G;gI7T``%9$dodLAzbjQ{_UVhfr{oi8k!MV}LWb))cOpfGc4&*r2_(m9A- znbBuV6!!d_u}nerG@87A$kL`$s?J+JUo*X#Fkl=YJD;*mrz`;!LXIJ;wL)WV`!cy) zq{g@vhc>83zD@MGx!eizwcxqSjjZ=<7AZEF(u8x@6`RUXQ6!25t(#DReUZ1dXcMFV zHU_OmiEq+%#fFqm$YMJxd?We6z+d!?B8l4>%VI<1b|y3DST}2CjxM_!3^xXcEbkZpneTbCbWF_I;D*d5^;IiW3+_~|Lool!W-wqss zVg3mMY`oMtpAM^=VTX*&$b_mqbQ%A3)ske^42k5^acxZNGZ>$?5n8Mq- z-o0}b0}nAsUGIu~iCAYxnb$OqN0viDRzTu64E;h6apZO)PvB&PT$9V-?-<%BmyTG1 c$w+N!oLbY`a1YWLI(d1Tv0L!YKN+%G+5i9m literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/RemoveThread.class b/Hub/out/production/Hub/secondlife/network/hub/utilties/profile/RemoveThread.class new file mode 100644 index 0000000000000000000000000000000000000000..9d5990575a2cd1b76dd3a4a2c60d162dbb8d919b GIT binary patch literal 2246 zcmbVOZC4vr5PmMuY+M!yDW!^dyJpLw+b9bW&g zKD?*neSDC{f{r^_RF4mJe1wlR+|@Ct43^ZnJcv(lFO5%?a9_FjOu1Omv5L<%JkYSl zkXm*;N8V%TpPAif7+Cdf!7x&EJh2ru$|Bg~WtVQUMc?A?J`Wrvw=V}|%?TM6i=nW5 z&vu=PFg+ok_(9#QMP)ORjw>Azn$5tkIIb{vMZ-T5d$mAtdx>HOk;h=TyivCK6bVze z8LrI~{h(@=qk7$u=60px5|$m8AB$i~K}W8B|i!*u|_Bu zM!Rv$AMzt^;3_5guvs|>p9S66*6^i^-J%oIDG zlEmV+-#y3Kxg1-GiL;Y1?jbRd7^+u=OejRc#LR3GLebMCrq_jCbV5l(-DJ2Fi2T#c%kH;MTL8d0QJ@;JgNvK=?A<@+V^{FD>$d7_EbgN9?0Kvk7zGt zPh;k#c9pws$&q471I^*|nfjcU z4~@sgdbmOJJx)KaKtE`?VuGHplVsA#=)6>T3icbl^kI^osrWL5H|X6+6!0dlkwl^X zGcJ<0G9J(NouK~&1J7{@Xd#u=NbY#cVt}-C`e-17%LHYt%ky~RIio8^kUs@0YI|Nh zLAr(43N7fr;@0mNeEbwfcBqBn!ZVC8iZz_g(4&RX6J!e~xZJ|nBNe$n&LfFDgdq%L y4kPqmVzevrB9-MP>AoH7vpZxoMX!CBMw3pRz<3DY6Qp-ZR)v@&oq4L-?SBBZgmIq$ literal 0 HcmV?d00001 diff --git a/Hub/out/production/Hub/utilities.yml b/Hub/out/production/Hub/utilities.yml new file mode 100644 index 0000000..cd39766 --- /dev/null +++ b/Hub/out/production/Hub/utilities.yml @@ -0,0 +1 @@ +SPAWNS: \ No newline at end of file diff --git a/Hub/resources/META-INF/plugin.xml b/Hub/resources/META-INF/plugin.xml new file mode 100644 index 0000000..e877588 --- /dev/null +++ b/Hub/resources/META-INF/plugin.xml @@ -0,0 +1,35 @@ + + com.your.company.unique.plugin.id + Plugin display name here + 1.0 + YourCompany + + + most HTML tags may be used + ]]> + + + most HTML tags may be used + ]]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hub/src/META-INF/MANIFEST.MF b/Hub/src/META-INF/MANIFEST.MF new file mode 100644 index 0000000..7c2c92e --- /dev/null +++ b/Hub/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Hub + diff --git a/Hub/src/plugin.yml b/Hub/src/plugin.yml new file mode 100644 index 0000000..112a789 --- /dev/null +++ b/Hub/src/plugin.yml @@ -0,0 +1,6 @@ +name: SecondLife +main: secondlife.network.hub.Hub +version: 1.0 +description: SL Hub. +author: SecondLife Development Team +depend: [Vituz] \ No newline at end of file diff --git a/Hub/src/secondlife/network/hub/Hub.java b/Hub/src/secondlife/network/hub/Hub.java new file mode 100644 index 0000000..1ed77ba --- /dev/null +++ b/Hub/src/secondlife/network/hub/Hub.java @@ -0,0 +1,86 @@ +package secondlife.network.hub; + +import club.minemen.spigot.ClubSpigot; +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.event.Listener; +import org.bukkit.plugin.java.JavaPlugin; +import secondlife.network.hub.handler.CustomMovementHandler; +import secondlife.network.hub.managers.*; +import secondlife.network.hub.providers.NametagsProvider; +import secondlife.network.hub.providers.ScoreboardProvider; +import secondlife.network.hub.providers.TabProvider; +import secondlife.network.hub.utilties.HubUtils; +import secondlife.network.hub.utilties.profile.BukkitProfileStorage; +import secondlife.network.vituz.providers.nametags.VituzNametag; +import secondlife.network.vituz.providers.scoreboard.VituzScoreboard; +import secondlife.network.vituz.providers.tab.VituzTab; +import secondlife.network.vituz.utilties.ConfigFile; +import secondlife.network.vituz.utilties.ServerUtils; +import secondlife.network.vituz.utilties.command.VituzCommandHandler; + +/** + * Created by Marko on 28.03.2018. + */ + +@Getter +public class Hub extends JavaPlugin { + + @Getter + private static Hub instance; + + private ConfigFile utilities; + + private AutoKickManager autoKickManager; + private CountManager countManager; + private HubManager hubManager; + private MultiSpawnManager multiSpawnManager; + private QueueManager queueManager; + private SelectorManager selectorManager; + private StaffSecurityManager staffSecurityManager; + + private BukkitProfileStorage storage; + + @Override + public void onEnable() { + instance = this; + + utilities = new ConfigFile(this, "utilities.yml"); + + ClubSpigot.INSTANCE.addMovementHandler(new CustomMovementHandler()); + + registerManagers(); + registerListeners(); + registerProviders(); + } + + private void registerManagers() { + storage = new BukkitProfileStorage(); + autoKickManager = new AutoKickManager(this); + countManager = new CountManager(this); + hubManager = new HubManager(this); + multiSpawnManager = new MultiSpawnManager(this); + queueManager = new QueueManager(this); + selectorManager = new SelectorManager(this); + staffSecurityManager = new StaffSecurityManager(this); + } + + private void registerListeners() { + ServerUtils.getClassesInPackage(this, "secondlife.network.hub.listeners").stream().filter(Listener.class::isAssignableFrom).forEach(clazz -> { + try { + Bukkit.getPluginManager().registerEvents((Listener) clazz.newInstance(), this); + } catch (Exception e) { + e.printStackTrace(); + } + }); + } + + private void registerProviders() { + VituzNametag.registerProvider(new NametagsProvider()); + VituzTab.setLayoutProvider(new TabProvider()); + VituzScoreboard.setConfiguration(ScoreboardProvider.create()); + VituzCommandHandler.loadCommandsFromPackage(this, "secondlife.network.hub.commands"); + + HubUtils.setupLoading(); + } +} diff --git a/Hub/src/secondlife/network/hub/commands/MultiSpawnCommand.java b/Hub/src/secondlife/network/hub/commands/MultiSpawnCommand.java new file mode 100644 index 0000000..8c63993 --- /dev/null +++ b/Hub/src/secondlife/network/hub/commands/MultiSpawnCommand.java @@ -0,0 +1,45 @@ +package secondlife.network.hub.commands; + +import org.bukkit.Location; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +public class MultiSpawnCommand { + + private static Hub plugin = Hub.getInstance(); + + @Command(names = {"ms", "multispawn"}, permissionNode = "secondlife.op") + public static void handleUsage(CommandSender sender) { + sender.sendMessage(Color.translate("&cMultiSpawn - Help Commands:")); + sender.sendMessage(Color.translate("&c/multispawn create - Create spawn point.")); + sender.sendMessage(Color.translate("&c/multispawn delete . - Delete spawn point.")); + } + + @Command(names = {"ms create", "multispawn create"}, permissionNode = "secondlife.op") + public static void handleCreate(Player player, @Parameter(name = "name") String name) { + Location location = player.getLocation(); + + plugin.getUtilities().set("SPAWNS." + name + ".X", location.getBlockX()); + plugin.getUtilities().set("SPAWNS." + name + ".Y", location.getBlockY()); + plugin.getUtilities().set("SPAWNS." + name + ".Z", location.getBlockZ()); + plugin.getUtilities().set("SPAWNS." + name + ".WORLD", location.getWorld().getName()); + plugin.getUtilities().save(); + + player.sendMessage(Color.translate("&eYou have created spawn point named &d" + name + "&e.")); + } + + @Command(names = {"ms delete", "multispawn delete"}, permissionNode = "secondlife.op") + public static void handleDelete(CommandSender sender, @Parameter(name = "name") String name) { + if(!plugin.getUtilities().isSet("SPAWNS." + name)) { + sender.sendMessage(Color.translate("&cThe spawn point named &l" + name + " &cdoes not exists.")); + return; + } + + plugin.getUtilities().set("SPAWNS." + name, null); + sender.sendMessage(Color.translate("&eYou have deleted spawn point named &d" + name + "&e.")); + } +} diff --git a/Hub/src/secondlife/network/hub/commands/ProfileCommand.java b/Hub/src/secondlife/network/hub/commands/ProfileCommand.java new file mode 100644 index 0000000..e6b298f --- /dev/null +++ b/Hub/src/secondlife/network/hub/commands/ProfileCommand.java @@ -0,0 +1,35 @@ +package secondlife.network.hub.commands; + +import org.bukkit.OfflinePlayer; +import org.bukkit.command.CommandSender; +import secondlife.network.hub.utilties.profile.BukkitProfileUtils; +import secondlife.network.hub.utilties.profile.RemoveThread; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 12.04.2018. + */ +public class ProfileCommand { + + @Command(names = {"deleteprofile", "dp"}, permissionNode = "secondlife.op") + public static void handleDelete(CommandSender sender, @Parameter(name = "player") OfflinePlayer target) { + sender.sendMessage(Color.translate("&eDeleting &d" + target.getName() + "'s &eprofile!")); + BukkitProfileUtils.getByPlayerFile(target).delete(); + sender.sendMessage(Color.translate("&eProfile deleted!")); + } + + @Command(names = {"deleteprofiles", "dps"}, permissionNode = "secondlife.op") + public static void handleDelete(CommandSender sender) { + sender.sendMessage(Color.translate("&eDeleting duplicated profiles!")); + new RemoveThread().start(); + sender.sendMessage(Color.translate("&aProfiles deleted!")); + } + + @Command(names = {"toggleprofile", "tprofile"}, permissionNode = "secondlife.op") + public static void handleEnableDisable(CommandSender sender) { + BukkitProfileUtils.setEnabled(!BukkitProfileUtils.isEnabled()); + sender.sendMessage(Color.translate("&eYou have " + (BukkitProfileUtils.isEnabled() ? "&aEnabled" : "&cDisabled") + " &eplayer name check.")); + } +} diff --git a/Hub/src/secondlife/network/hub/commands/QueueCommands.java b/Hub/src/secondlife/network/hub/commands/QueueCommands.java new file mode 100644 index 0000000..9626e06 --- /dev/null +++ b/Hub/src/secondlife/network/hub/commands/QueueCommands.java @@ -0,0 +1,52 @@ +package secondlife.network.hub.commands; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.hub.managers.QueueManager; +import secondlife.network.hub.data.QueueData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 22.07.2018. + */ +public class QueueCommands { + + @Command(names = {"leavequeue", "lq"}) + public static void handleUsage(Player player) { + if(QueueManager.getByPlayer(player) == null) { + player.sendMessage(Color.translate("&cYou aren't in the queue!")); + return; + } + + player.sendMessage(Color.translate("&dYou are no longer in queue for &f" + QueueManager.getQueueName(player) + "&d.")); + + QueueManager.getByPlayer(player).handleRemove(player); + } + + @Command(names = {"limitqueue", "queuelimit"}, permissionNode = "secondlife.op") + public static void handleSellwand(CommandSender sender, @Parameter(name = "name") String server, @Parameter(name = "amount") int amount) { + if(QueueManager.getByServer(server) == null) { + sender.sendMessage(Color.translate("&cQueue named " + server + " doesn't exists!")); + return; + } + + QueueData queue = QueueManager.getByServer(server); + queue.setLimit(amount); + + sender.sendMessage(Color.translate("&f" + queue.getServer() + " &dlimit set to &f" + amount + "&d.")); + } + + @Command(names = {"pausequeue"}) + public static void handleUsage(CommandSender sender, @Parameter(name = "name") String server) { + if(QueueManager.getByServer(server) == null) { + sender.sendMessage(Color.translate("&cQueue named " + server + " doesn't exists!")); + return; + } + + QueueData queue = QueueManager.getByServer(server); + queue.setPaused(!queue.isPaused()); + sender.sendMessage(Color.translate("&f" + queue.getServer() + " &dqueue has been " + (queue.isPaused() ? "&apaused" : "&cunpaused") + "&d.")); + } +} diff --git a/Hub/src/secondlife/network/hub/commands/SecurityCommands.java b/Hub/src/secondlife/network/hub/commands/SecurityCommands.java new file mode 100644 index 0000000..81fa8c0 --- /dev/null +++ b/Hub/src/secondlife/network/hub/commands/SecurityCommands.java @@ -0,0 +1,78 @@ +package secondlife.network.hub.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; +import secondlife.network.hub.data.StaffData; +import secondlife.network.overpass.utilties.OverpassUtils; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 22.07.2018. + */ +public class SecurityCommands { + + @Command(names = {"auth", "security"}, permissionNode = "secondlife.staff") + public static void handleAuth(Player player, @Parameter(name = "password") String password) { + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cYou are not registered!")); + return; + } + + if(!password.equals(data.getPassword())) { + player.sendMessage(Color.translate("&cWrong password")); + return; + } + + player.sendMessage(Color.translate("&7(Staff) &eYou have logged in!")); + Hub.getInstance().getStaffSecurityManager().getUsers().remove(player.getUniqueId()); + player.getActivePotionEffects().forEach(effect -> player.removePotionEffect(effect.getType())); + + OverpassUtils.sendAuthToBungee(player); + } + + @Command(names = {"securityregister"}, permissionNode = "secondlife.staff") + public static void handleRegister(Player player, @Parameter(name = "password") String password) { + StaffData data = StaffData.getByName(player.getName()); + + if(!data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cYou are already registered!")); + return; + } + + data.setPassword(password); + player.kickPlayer(Color.translate("&cYou have set your password, please join back and login using /auth or /security")); + Hub.getInstance().getStaffSecurityManager().getUsers().remove(player.getUniqueId()); + } + + @Command(names = {"securityreset"}, permissionNode = "secondlife.op") + public static void handleReset(CommandSender sender, @Parameter(name = "name") String name) { + StaffData data; + Player target = Bukkit.getPlayer(name); + + if(target == null) { + data = StaffData.getByName(name); + } else { + data = StaffData.getByName(target.getName()); + } + + if(data.getPassword().equalsIgnoreCase("")) { + sender.sendMessage(Color.translate("&cThat player doesn't have security password!")); + return; + } + + data.setPassword(""); + sender.sendMessage(Color.translate("&eSuccesfully reset!")); + + if(target != null) { + target.kickPlayer(Color.translate("&cYour security password was reset, please join back and set it again!")); + } else { + data.save(); + } + } +} diff --git a/Hub/src/secondlife/network/hub/data/QueueData.java b/Hub/src/secondlife/network/hub/data/QueueData.java new file mode 100644 index 0000000..6b1fb89 --- /dev/null +++ b/Hub/src/secondlife/network/hub/data/QueueData.java @@ -0,0 +1,115 @@ +package secondlife.network.hub.data; + +import com.google.common.io.ByteArrayDataOutput; +import com.google.common.io.ByteStreams; +import lombok.Getter; +import lombok.Setter; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitTask; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.HubUtils; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.*; + +/** + * Created by Marko on 28.03.2018. + */ + +@Getter +@Setter +public class QueueData { + + private String server; + private List players; + private Map taskMap; + private boolean paused; + private int limit; + + public QueueData(String server) { + this.server = server; + this.players = new ArrayList<>(); + this.taskMap = new HashMap<>(); + this.paused = false; + this.limit = 1000; + + Bukkit.getScheduler().runTaskTimer(Hub.getInstance(), () -> players.forEach(player -> { + if(player.isOnline()) { + player.sendMessage(""); + player.sendMessage(Color.translate("&eYou are &d" + (players.indexOf(player) + 1) + " &ein the &d" + server + " &equeue.")); + player.sendMessage(Color.translate("&eSkip the queue by purchasing a rank at &dstore.secondlife.network")); + player.sendMessage(""); + } else { + players.remove(player); + } + }), 15*20L, 15*20L); + } + + public void handlePut(Player player) { + if(Hub.getInstance().getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + if(players.contains(player)) return; + + if(HubUtils.getPriority(player) == 0) { + if(VituzAPI.isBanned(player)) { + player.sendMessage(Color.translate("&cYour account is currently suspended. To appeal, visit " + Vituz.getInstance().getEssentialsManager().getAppealAt() + " to appeal!")); + } else { + sendDirect(player); + player.sendMessage(Color.translate("&aYou have been sent to " + this.server + ".")); + } + + return; + } + + players.add(player); + + for(Player users : this.players) { + int pos = players.indexOf(users); + + if(users != player) { + if(HubUtils.getPriority(player) < HubUtils.getPriority(users)) { + if(players.get(pos).isOnline()) { + players.get(pos).sendMessage(Color.translate("&eSomeone with higher queue priority has joined the queue!")); + } + + Collections.swap(players, pos, players.size() - 1); + } + } + } + } + + public void handleRemove(Player player) { + if(!players.contains(player)) return; + + players.remove(player); + } + + public Player getPlayerAt(int player) { + return players.get(player); + } + + public void sendFirst() { + if(!players.isEmpty()) { + Player p = players.get(0); + + ByteArrayDataOutput out = ByteStreams.newDataOutput(); + + out.writeUTF("Connect"); + out.writeUTF(server); + + p.sendPluginMessage(Hub.getInstance(), "BungeeCord", out.toByteArray()); + } + } + + public void sendDirect(Player player) { + ByteArrayDataOutput out = ByteStreams.newDataOutput(); + + out.writeUTF("Connect"); + out.writeUTF(server); + + player.sendPluginMessage(Hub.getInstance(), "BungeeCord", out.toByteArray()); + } +} diff --git a/Hub/src/secondlife/network/hub/data/StaffData.java b/Hub/src/secondlife/network/hub/data/StaffData.java new file mode 100644 index 0000000..3a7b9cc --- /dev/null +++ b/Hub/src/secondlife/network/hub/data/StaffData.java @@ -0,0 +1,90 @@ +package secondlife.network.hub.data; + +import com.mongodb.client.model.Filters; +import com.mongodb.client.model.UpdateOptions; +import lombok.Getter; +import lombok.Setter; +import org.bson.Document; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.VituzAPI; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by Marko on 28.03.2018. + */ + +@Getter +@Setter +public class StaffData { + + @Getter + private static Map stafDatas = new HashMap<>(); + + private String name; + private String group; + + private String password; + private String lastLogin; + private String currentIp; + + private boolean loaded; + + public StaffData(String name) { + this.name = name; + this.group = ""; + this.password = ""; + this.lastLogin = ""; + this.currentIp = ""; + + stafDatas.put(this.name, this); + } + + public void save() { + if(!loaded) return; + + Document document = new Document(); + document.put("name", name.toLowerCase()); + + Player player = Bukkit.getPlayer(this.name); + + if(player != null) { + document.put("rank_name", VituzAPI.getRankName(player.getName())); + } + + document.put("password", this.password); + document.put("last_login", this.lastLogin); + document.put("current_ip", this.currentIp); + + Vituz.getInstance().getDatabaseManager().getSecurityProfiles().replaceOne(Filters.eq("name", this.name.toLowerCase()), document, new UpdateOptions().upsert(true)); + + stafDatas.remove(this.name); + } + + public void load() { + Document document = (Document) Vituz.getInstance().getDatabaseManager().getSecurityProfiles().find(Filters.eq("name", name.toLowerCase())).first(); + + if (document != null) { + if(document.containsKey("rank_name")) { + this.group = document.getString("rank_name"); + } + + this.password = document.getString("password"); + this.lastLogin = new SimpleDateFormat("dd-MM-yyyy - HH:mm:ss").format(new Date()); + this.currentIp = Bukkit.getPlayer(this.name).getAddress().getHostName(); + } + + this.loaded = true; + } + + public static StaffData getByName(String name) { + StaffData data = stafDatas.get(name); + + return data == null ? new StaffData(name) : data; + } +} diff --git a/Hub/src/secondlife/network/hub/handler/CustomMovementHandler.java b/Hub/src/secondlife/network/hub/handler/CustomMovementHandler.java new file mode 100644 index 0000000..da0aafb --- /dev/null +++ b/Hub/src/secondlife/network/hub/handler/CustomMovementHandler.java @@ -0,0 +1,27 @@ +package secondlife.network.hub.handler; + +import club.minemen.spigot.handler.MovementHandler; +import net.minecraft.server.v1_8_R3.PacketPlayInFlying; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; + +/** + * Created by Marko on 02.06.2018. + */ +public class CustomMovementHandler implements MovementHandler { + + private Hub plugin = Hub.getInstance(); + + @Override + public void handleUpdateLocation(Player player, Location from, Location to, PacketPlayInFlying packetPlayInFlying) { + plugin.getMultiSpawnManager().handleMove(player, from , to); + plugin.getAutoKickManager().handleMove(player); + plugin.getStaffSecurityManager().handleMove(player, from, to); + } + + @Override + public void handleUpdateRotation(Player player, Location location, Location location1, PacketPlayInFlying packetPlayInFlying) { + + } +} diff --git a/Hub/src/secondlife/network/hub/listeners/ChatListener.java b/Hub/src/secondlife/network/hub/listeners/ChatListener.java new file mode 100644 index 0000000..a7a9334 --- /dev/null +++ b/Hub/src/secondlife/network/hub/listeners/ChatListener.java @@ -0,0 +1,70 @@ +package secondlife.network.hub.listeners; + +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.AsyncPlayerChatEvent; +import secondlife.network.hub.Hub; +import secondlife.network.overpass.data.OverpassData; +import secondlife.network.overpass.listeners.PlayerListener; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.StringUtils; + +/** + * Created by Marko on 28.03.2018. + */ +public class ChatListener implements Listener { + + @EventHandler + public void onAsyncPlayerChat(AsyncPlayerChatEvent event) { + Player player = event.getPlayer(); + + OverpassData profile = OverpassData.getByName(player.getName()); + + if (PlayerListener.doStuff(profile) || Hub.getInstance().getStaffSecurityManager().getUsers().contains(player.getUniqueId())) { + event.setCancelled(true); + return; + } + + event.setCancelled(true); + + if (Vituz.getInstance().getChatControlManager().isMuted() && !player.hasPermission(Permission.STAFF_PERMISSION)) { + event.setCancelled(true); + + player.sendMessage(Color.translate("&cChat is currently muted.")); + return; + } + + if (Vituz.getInstance().getChatControlManager().getDelay() > 0 && !player.hasPermission(Permission.STAFF_PERMISSION)) { + if (Vituz.getInstance().getChatControlManager().isActive(player)) { + event.setCancelled(true); + player.sendMessage(Color.translate("&cYou can't use chat for another &l" + StringUtils.getRemaining(Vituz.getInstance().getChatControlManager().getMillisecondsLeft(player), true) + "&c.")); + return; + } + + Vituz.getInstance().getChatControlManager().applyCooldown(player); + } + + if (!player.hasPermission(Permission.STAFF_PERMISSION)) { + player.sendMessage(Color.translate("&cYou can't use chat on this server.")); + return; + } + + for (Player recipient : event.getRecipients()) { + recipient.sendMessage(this.getFormat(player, event.getMessage())); + } + + Msg.logConsole(this.getFormat(player, event.getMessage())); + } + + private String getFormat(Player player, String message) { + if(player.isOp()) { + return Color.translate(player.getDisplayName() + " &6» &f" + message); + } else { + return Color.translate(player.getDisplayName() + " &6» &f") + message; + } + } +} diff --git a/Hub/src/secondlife/network/hub/listeners/DataStaffListener.java b/Hub/src/secondlife/network/hub/listeners/DataStaffListener.java new file mode 100644 index 0000000..aa13f2f --- /dev/null +++ b/Hub/src/secondlife/network/hub/listeners/DataStaffListener.java @@ -0,0 +1,206 @@ +package secondlife.network.hub.listeners; + +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.BlockBreakEvent; +import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryOpenEvent; +import org.bukkit.event.player.*; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.hub.Hub; +import secondlife.network.hub.data.StaffData; +import secondlife.network.overpass.utilties.events.LoginEvent; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.PlayerUtils; +import secondlife.network.vituz.utilties.Tasks; + +/** + * Created by Marko on 28.03.2018. + */ +public class DataStaffListener implements Listener { + + private Hub plugin = Hub.getInstance(); + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + if(!Vituz.getInstance().getDatabaseManager().isConnected()) { + event.getPlayer().kickPlayer(Color.translate("&cServer is setting up...")); + return; + } + + Player player = event.getPlayer(); + + if(!player.hasPermission(Permission.STAFF_PERMISSION)) { + return; + } + + StaffData data = StaffData.getByName(player.getName()); + + if(!data.isLoaded()) { + data.load(); + } + + if(!data.isLoaded()) { + PlayerUtils.kick(event); + } + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + StaffData.getByName(event.getPlayer().getName()).save(); + + plugin.getStaffSecurityManager().handleRemove(event.getPlayer()); + event.getPlayer().getActivePotionEffects().forEach(effect -> event.getPlayer().removePotionEffect(effect.getType())); + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + Player player = event.getPlayer(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + Player player = event.getPlayer(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onAsyncPlayerChat(AsyncPlayerChatEvent event) { + Player player = event.getPlayer(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + Player player = (Player) event.getWhoClicked(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + @EventHandler + public void onLogin(LoginEvent event) { + Player player = event.getPlayer(); + + player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, Integer.MAX_VALUE, 999)); + player.addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, Integer.MAX_VALUE, 999)); + player.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, Integer.MAX_VALUE, 999)); + + player.closeInventory(); + plugin.getStaffSecurityManager().getUsers().add(player.getUniqueId()); + + Tasks.runLater(() -> { + if(!player.isOnline()) { + return; + } + + if(plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) { + player.kickPlayer(Color.translate("&cLogin time exceeded!")); + } + }, 2400L); + } + + @EventHandler + public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { + Player player = event.getPlayer(); + + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + if(event.getMessage().toLowerCase().startsWith("/code") || event.getMessage().toLowerCase().startsWith("/l ") || event.getMessage().toLowerCase().startsWith("/login") || event.getMessage().toLowerCase().startsWith("/auth") || event.getMessage().toLowerCase().startsWith("/security") || event.getMessage().toLowerCase().startsWith("/securityregister")) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + + @EventHandler + public void onInventoryOpen(InventoryOpenEvent event) { + Player player = (Player) event.getPlayer(); + + if(player == null) return; + if(!plugin.getStaffSecurityManager().getUsers().contains(player.getUniqueId())) return; + + event.setCancelled(true); + + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } +} \ No newline at end of file diff --git a/Hub/src/secondlife/network/hub/listeners/PlayerListener.java b/Hub/src/secondlife/network/hub/listeners/PlayerListener.java new file mode 100644 index 0000000..8a6a730 --- /dev/null +++ b/Hub/src/secondlife/network/hub/listeners/PlayerListener.java @@ -0,0 +1,305 @@ +package secondlife.network.hub.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.Sound; +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.*; +import org.bukkit.event.entity.CreatureSpawnEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.entity.FoodLevelChangeEvent; +import org.bukkit.event.inventory.InventoryAction; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryMoveItemEvent; +import org.bukkit.event.inventory.InventoryType; +import org.bukkit.event.player.*; +import org.bukkit.event.weather.WeatherChangeEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.hub.Hub; +import secondlife.network.hub.managers.QueueManager; +import secondlife.network.hub.utilties.HubUtils; +import secondlife.network.hub.utilties.profile.BukkitProfileStorage; +import secondlife.network.hub.utilties.profile.BukkitProfileUtils; +import secondlife.network.overpass.data.OverpassData; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.providers.nametags.VituzNametag; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; +import secondlife.network.vituz.utilties.item.ItemBuilder; + +/** + * Created by Marko on 28.03.2018. + */ +public class PlayerListener implements Listener { + + private Hub plugin = Hub.getInstance(); + + @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) + public void onPlayerLogin(PlayerLoginEvent event) { + if(event.getResult() != PlayerLoginEvent.Result.ALLOWED) { + return; + } + + if(BukkitProfileUtils.isEnabled()) { + BukkitProfileStorage storage = Hub.getInstance().getStorage(); + + if(!storage.hasRealPlayer(event.getPlayer())) { + storage.addRealPlayer(event.getPlayer()); + return; + } + + if(!storage.isPlayerReal(event.getPlayer())) { + event.disallow(PlayerLoginEvent.Result.KICK_OTHER, Color.translate("&cPlease spell your name correctly!\n&cName of this account is " + storage.getRealPlayerValidName(event.getPlayer()) + "!")); + } + } + } + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + + plugin.getMultiSpawnManager().randomSpawn(player); + + Bukkit.getOnlinePlayers().forEach(other -> { + if(plugin.getHubManager().getHidingPlayers().contains(other.getUniqueId())) { + if(!player.isOp() && !player.getUniqueId().equals(other.getUniqueId())) { + other.hidePlayer(player); + } + } + }); + + Tasks.runLater(() -> { + HubUtils.resetPlayer(player); + plugin.getHubManager().handleSetArmor(player); + VituzNametag.reloadPlayer(player); + VituzNametag.reloadOthersFor(player); + }, 1L); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + plugin.getAutoKickManager().handleRemove(event.getPlayer()); + } + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + if(event.getCurrentItem() == null + || event.getCurrentItem().getType() == Material.AIR + || !event.getCurrentItem().hasItemMeta() + || event.getCurrentItem().getItemMeta() == null) { + return; + } + + event.setCancelled(true); + + if(event.getCurrentItem().getItemMeta().getDisplayName().equals(Color.translate("&f "))) { + return; + } + + String name = ChatColor.stripColor(event.getCurrentItem().getItemMeta().getDisplayName()); + Player player = (Player) event.getWhoClicked(); + + if(event.getClickedInventory().getTitle().equals(plugin.getSelectorManager().getSelectorName())) { + if(name.equals("UHCMeetup")) { + name = "UHCMeetup-Lobby"; + } + + if(name.equals("UHC Selector")) { + player.openInventory(plugin.getSelectorManager().getUhcSelector()); + return; + } + + if(VituzAPI.getServerData(name) == null || !VituzAPI.getServerData(name).isOnline() || QueueManager.getByServer(name) == null) { + player.sendMessage(Color.translate("&cQueue of server named '" + name + "' is currently offline.")); + return; + } + + if(QueueManager.getByServer(name).isPaused()) { + player.sendMessage(Color.translate("&c" + name + " queue is currently paused!")); + return; + } + + QueueManager.getByServer(name).handlePut(player); + } else if(event.getClickedInventory().getTitle().equals(plugin.getSelectorManager().getSelectorUhcName())) { + if(VituzAPI.getServerData(name) == null || !VituzAPI.getServerData(name).isOnline() || QueueManager.getByServer(name) == null) { + player.sendMessage(Color.translate("&cQueue of server named '" + name + "' is currently offline.")); + return; + } + + if(QueueManager.getByServer(name).isPaused()) { + player.sendMessage(Color.translate("&c" + name + " queue is currently paused!")); + return; + } + + QueueManager.getByServer(name).handlePut(player); + } + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + + OverpassData profile = OverpassData.getByName(player.getName()); + + if (secondlife.network.overpass.listeners.PlayerListener.doStuff(profile)) { + event.setCancelled(true); + return; + } + + Action action = event.getAction(); + + ItemStack stack = player.getItemInHand(); + + if (action == Action.RIGHT_CLICK_AIR || action == Action.RIGHT_CLICK_BLOCK) { + if (stack.getType() == Material.COMPASS) { + if (VituzAPI.isBanned(player)) { + player.sendMessage(Color.translate("&cYour account is currently suspended. To appeal, visit " + Vituz.getInstance().getEssentialsManager().getAppealAt() + " to appeal!")); + } else { + player.openInventory(plugin.getSelectorManager().getServerSelector()); + } + } else if (stack.getType() == Material.ENDER_PEARL) { + event.setCancelled(true); + + event.setUseItemInHand(Event.Result.DENY); + event.setUseInteractedBlock(Event.Result.DENY); + + player.setVelocity(player.getLocation().getDirection().multiply(8.0).setY(1.5)); + player.playSound(player.getLocation(), Sound.NOTE_STICKS, 10, 10); + + player.updateInventory(); + } else if (stack.getType() == Material.INK_SACK) { + int durabilty = stack.getDurability(); + + if (durabilty == 8 && stack.getItemMeta() != null && stack.getItemMeta().getDisplayName() != null && stack.getItemMeta().getDisplayName().equalsIgnoreCase(ChatColor.GRAY + "Hide players")) { + player.sendMessage(ChatColor.RED + "You have hidden all visible players."); + player.setItemInHand(new ItemBuilder(Material.INK_SACK).durability(10).name(ChatColor.GREEN + "Show players").build()); + + for (Player other : Bukkit.getOnlinePlayers()) { + if (other.isOp()) continue; + if (other.getUniqueId().equals(player.getUniqueId())) continue; + + player.hidePlayer(other); + } + + plugin.getHubManager().getHidingPlayers().add(player.getUniqueId()); + plugin.getHubManager().getCooldowns().put(player.getUniqueId(), System.currentTimeMillis()); + } else if (durabilty == 10 && stack.getItemMeta() != null && stack.getItemMeta().getDisplayName() != null && stack.getItemMeta().getDisplayName().equalsIgnoreCase(ChatColor.GREEN + "Show players")) { + if (plugin.getHubManager().getCooldowns().containsKey(player.getUniqueId())) { + if (System.currentTimeMillis() - plugin.getHubManager().getCooldowns().get(player.getUniqueId()) < 3000) { + player.sendMessage(ChatColor.RED + "You must wait before toggling player visibility again."); + return; + } else { + plugin.getHubManager().getCooldowns().remove(player.getUniqueId()); + } + } + + player.sendMessage(ChatColor.RED + "You have made all players visible."); + player.setItemInHand(new ItemBuilder(Material.INK_SACK).durability(8).name(ChatColor.GRAY + "Hide players").build()); + + for (Player other : Bukkit.getOnlinePlayers()) { + if (other.isOp()) continue; + if (other.getUniqueId().equals(player.getUniqueId())) continue; + + player.showPlayer(other); + } + + plugin.getHubManager().getHidingPlayers().remove(player.getUniqueId()); + } + } + } + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + if(event.getPlayer().isOp()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + if(event.getPlayer().isOp()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onClick(InventoryClickEvent event) { + InventoryAction action = event.getAction(); + + if(action == InventoryAction.HOTBAR_SWAP || action == InventoryAction.SWAP_WITH_CURSOR) { + event.setCancelled(true); + } + + if(event.getSlotType() == InventoryType.SlotType.OUTSIDE) return; + if(event.getCurrentItem().getType() == Material.AIR) return; + + if((event.getCurrentItem().getType() == Material.COMPASS) || (event.getCurrentItem().getType() == Material.ENDER_PEARL) || (event.getCurrentItem().getType() == Material.INK_SACK) || (event.getCurrentItem().getType() == Material.STAINED_GLASS_PANE)) event.setCancelled(true); + if((event.getCurrentItem().getType() == Material.LEATHER_CHESTPLATE) || (event.getCurrentItem().getType() == Material.LEATHER_LEGGINGS) || (event.getCurrentItem().getType() == Material.LEATHER_BOOTS) || (event.getCurrentItem().getType() == Material.BEDROCK)) event.setCancelled(true); + } + + @EventHandler + public void onBlockFade(BlockFadeEvent event) { + if(event.getBlock().getType() != Material.ICE + || event.getBlock().getType() != Material.SNOW + || event.getBlock().getType() != Material.SNOW_BLOCK) return; + + event.setCancelled(true); + } + + @EventHandler(priority = EventPriority.HIGHEST) + public void onWeatherChange(WeatherChangeEvent event) { + if(!event.toWeatherState()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onPlayerPreprocces(PlayerCommandPreprocessEvent event) { + if(VituzAPI.isBanned(event.getPlayer())) { + event.setCancelled(true); + return; + } + } + + @EventHandler + public void onCreatureSpawn(CreatureSpawnEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onPlayerDropItem(PlayerDropItemEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onInventoryMoveItem(InventoryMoveItemEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onBlockBurn(BlockBurnEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onFoodLevelChange(FoodLevelChangeEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onBlockForm(BlockFormEvent event) { + event.setCancelled(true); + } +} diff --git a/Hub/src/secondlife/network/hub/managers/AutoKickManager.java b/Hub/src/secondlife/network/hub/managers/AutoKickManager.java new file mode 100644 index 0000000..6b99d9a --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/AutoKickManager.java @@ -0,0 +1,49 @@ +package secondlife.network.hub.managers; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +/** + * Created by Marko on 28.03.2018. + */ +public class AutoKickManager extends Manager implements Listener { + + private Map afk = new HashMap<>(); + + public AutoKickManager(Hub plugin) { + super(plugin); + + handleCheck(); + } + + public void handleMove(Player player) { + if(afk.containsKey(player.getUniqueId())) { + afk.remove(player.getUniqueId()); + } + + afk.put(player.getUniqueId(), System.currentTimeMillis() + (180 * 1000)); + } + + public void handleCheck() { + Tasks.runTimer(() -> Bukkit.getOnlinePlayers().forEach(player -> { + if(afk.containsKey(player.getUniqueId()) && afk.get(player.getUniqueId()) < System.currentTimeMillis() && QueueManager.getByPlayer(player) == null && !player.isOp()) { + player.kickPlayer(Color.translate("&cYou were kicked because you were afk!")); + } + }), 20L, 20L); + } + + public void handleRemove(Player player) { + if(afk.containsKey(player.getUniqueId())) { + afk.remove(player.getUniqueId()); + } + } +} diff --git a/Hub/src/secondlife/network/hub/managers/CountManager.java b/Hub/src/secondlife/network/hub/managers/CountManager.java new file mode 100644 index 0000000..e2ef9bb --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/CountManager.java @@ -0,0 +1,71 @@ +package secondlife.network.hub.managers; + +import com.google.common.io.ByteArrayDataInput; +import com.google.common.io.ByteStreams; +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.plugin.messaging.PluginMessageListener; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.utilties.Tasks; + +import java.io.ByteArrayOutputStream; +import java.io.DataOutputStream; +import java.io.IOException; + +/** + * Created by Marko on 28.03.2018. + */ + +@Getter +public class CountManager extends Manager implements PluginMessageListener { + + private int globalCount = 0; + + public CountManager(Hub plugin) { + super(plugin); + + handleRegisterServers(); + + Bukkit.getMessenger().registerOutgoingPluginChannel(plugin, "BungeeCord"); + Bukkit.getMessenger().registerIncomingPluginChannel(plugin, "BungeeCord", this); + } + + private void handleRegisterServers() { + Tasks.runAsyncTimer(() -> { + sendToBungee("PlayerCount", "ALL"); + }, 20L, 20L); + } + + @Override + public void onPluginMessageReceived(String channel, Player player, byte[] message) { + if(!channel.equals("BungeeCord")) return; + + ByteArrayDataInput input = ByteStreams.newDataInput(message); + String subchannel = input.readUTF(); + + if(!subchannel.equals("PlayerCount")) return; + + String serverName = input.readUTF(); + int playerCount = input.readInt(); + + if(serverName.equalsIgnoreCase("ALL")) { + globalCount = playerCount; + } + } + + public void sendToBungee(String channel, String sub) { + ByteArrayOutputStream b = new ByteArrayOutputStream(); + DataOutputStream out = new DataOutputStream(b); + + try { + out.writeUTF(channel); + out.writeUTF(sub); + } catch(IOException e) { + e.printStackTrace(); + } + + Bukkit.getServer().sendPluginMessage(Hub.getInstance(), "BungeeCord", b.toByteArray()); + } +} diff --git a/Hub/src/secondlife/network/hub/managers/HubManager.java b/Hub/src/secondlife/network/hub/managers/HubManager.java new file mode 100644 index 0000000..d5e2e95 --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/HubManager.java @@ -0,0 +1,92 @@ +package secondlife.network.hub.managers; + +import lombok.Getter; +import org.bukkit.Material; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.item.ItemBuilder; + +import java.util.*; + +/** + * Created by Marko on 22.07.2018. + */ + +@Getter +public class HubManager extends Manager { + + private Map cooldowns = new HashMap<>(); + private List hidingPlayers = new ArrayList<>(); + + public HubManager(Hub plugin) { + super(plugin); + } + + private void handleSetOp(Player player) { + ItemStack boots = new ItemBuilder(Material.LEATHER_BOOTS).name("&5&lOperator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.MAROON).build(); + ItemStack leggings = new ItemBuilder(Material.LEATHER_LEGGINGS).name("&5&lOperator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.MAROON).build(); + ItemStack chestplate = new ItemBuilder(Material.LEATHER_CHESTPLATE).name("&5&lOperator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.MAROON).build(); + + player.getInventory().setChestplate(chestplate); + player.getInventory().setLeggings(leggings); + player.getInventory().setBoots(boots); + + player.updateInventory(); + } + + private void handleSetStaff(Player player) { + ItemStack boots = new ItemBuilder(Material.LEATHER_BOOTS).name("&5&lStaff").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.AQUA).build(); + ItemStack leggings = new ItemBuilder(Material.LEATHER_LEGGINGS).name("&5&lStaff").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.AQUA).build(); + ItemStack chestplate = new ItemBuilder(Material.LEATHER_CHESTPLATE).name("&5&lStaff").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.AQUA).build(); + + player.getInventory().setChestplate(chestplate); + player.getInventory().setLeggings(leggings); + player.getInventory().setBoots(boots); + + player.updateInventory(); + } + + private void handleSetDonator(Player player) { + ItemStack boots = new ItemBuilder(Material.LEATHER_BOOTS).name("&5&lDonator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.GREEN).build(); + ItemStack leggings = new ItemBuilder(Material.LEATHER_LEGGINGS).name("&5&lDonator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.GREEN).build(); + ItemStack chestplate = new ItemBuilder(Material.LEATHER_CHESTPLATE).name("&5&lDonator").lore(Arrays.asList("&dYou current rank is " + VituzAPI.getRankName(player.getName()) + "&d!")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.GREEN).build(); + + player.getInventory().setChestplate(chestplate); + player.getInventory().setLeggings(leggings); + player.getInventory().setBoots(boots); + + player.updateInventory(); + } + + private void handleSetBanned(Player player) { + ItemStack boots = new ItemBuilder(Material.LEATHER_BOOTS).name("&5&lYou are banned").lore(Arrays.asList("&dNoob")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.BLACK).build(); + ItemStack leggings = new ItemBuilder(Material.LEATHER_LEGGINGS).name("&5&lYou are banned").lore(Arrays.asList("&dNoob")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.BLACK).build(); + ItemStack chestplate = new ItemBuilder(Material.LEATHER_CHESTPLATE).name("&5&lYou are banned").lore(Arrays.asList("&dNoob")).enchantment(Enchantment.DURABILITY, 3).color(org.bukkit.Color.BLACK).build(); + + player.getInventory().setChestplate(chestplate); + player.getInventory().setLeggings(leggings); + player.getInventory().setBoots(boots); + player.getInventory().setHelmet(new ItemBuilder(Material.BEDROCK).build()); + + player.updateInventory(); + } + + public void handleSetArmor(Player player) { + if(VituzAPI.isBanned(player)) { + handleSetBanned(player); + } else { + if(player.hasPermission(Permission.DONOR_PERMISSION) && !player.hasPermission(Permission.STAFF_PERMISSION)) { + handleSetDonator(player); + } else if(player.hasPermission(Permission.STAFF_PERMISSION) && !player.isOp()) { + handleSetStaff(player); + } else if(player.isOp()) { + handleSetOp(player); + } + } + } +} diff --git a/Hub/src/secondlife/network/hub/managers/MultiSpawnManager.java b/Hub/src/secondlife/network/hub/managers/MultiSpawnManager.java new file mode 100644 index 0000000..d412069 --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/MultiSpawnManager.java @@ -0,0 +1,70 @@ +package secondlife.network.hub.managers; + +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.player.PlayerJoinEvent; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.Manager; + +import java.util.Random; + +public class MultiSpawnManager extends Manager { + + public MultiSpawnManager(Hub plugin) { + super(plugin); + } + + public void handleMove(Player player, Location from, Location to) { + if(from.getBlockX() != to.getBlockX() || from.getBlockZ() != to.getBlockZ() || from.getPitch() != to.getPitch() || from.getYaw() != to.getYaw()) return; + + if(to.getBlockY() <= -15 && !player.isDead()) { + randomSpawn(player); + } + } + + public void randomSpawn(Player player) { + if(plugin.getUtilities().getConfigurationSection("SPAWNS") == null) { + return; + } + + int size = plugin.getUtilities().getConfigurationSection("SPAWNS").getKeys(false).size(); + + if(size == 0) return; + + int ii = randInt(0, size - 1); + int i = 0; + + for(String key : plugin.getUtilities().getConfigurationSection("SPAWNS").getKeys(false)) { + if(i == ii) { + int lX = plugin.getUtilities().getInt("SPAWNS." + key + ".X"); + int lY = plugin.getUtilities().getInt("SPAWNS." + key + ".Y"); + int lZ = plugin.getUtilities().getInt("SPAWNS." + key + ".Z"); + + String lWorld = plugin.getUtilities().getString("SPAWNS." + key + ".WORLD"); + + Location location; + + location = player.getLocation(); + location.setX(lX); + location.setY(lY); + location.setZ(lZ); + + if(Bukkit.getWorld(lWorld) != null) { + location.setWorld(Bukkit.getWorld(lWorld)); + } + + player.teleport(location); + break; + } + i++; + } + } + + private int randInt(int min, int max) { + Random rand = new Random(); + return rand.nextInt((max - min) + 1) + min; + } + +} diff --git a/Hub/src/secondlife/network/hub/managers/QueueManager.java b/Hub/src/secondlife/network/hub/managers/QueueManager.java new file mode 100644 index 0000000..35d0e66 --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/QueueManager.java @@ -0,0 +1,113 @@ +package secondlife.network.hub.managers; + +import lombok.Getter; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import secondlife.network.hub.Hub; +import secondlife.network.hub.data.QueueData; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.status.ServerData; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 28.03.2018. + */ + +public class QueueManager extends Manager implements Listener { + + @Getter + private static List queues = new ArrayList<>(); + + public QueueManager(Hub plugin) { + super(plugin); + + queues = new ArrayList<>(); + + queues.add(new QueueData("UHC-1")); + queues.add(new QueueData("UHC-2")); + queues.add(new QueueData("Factions")); + queues.add(new QueueData("KitMap")); + queues.add(new QueueData("UHCMeetup-Lobby")); + + Tasks.runTimer(() -> queues.forEach(queue -> { + if(!queue.isPaused() && !queue.getPlayers().isEmpty() && getCount() < queue.getLimit()) { + queue.sendFirst(); + queue.handleRemove(queue.getPlayerAt(0)); + } + }), 30L, 30L); + } + + public static QueueData getByPlayer(Player player) { + for(QueueData queue : queues) { + if(queue.getPlayers().contains(player)) return queue; + } + + return null; + } + + public static QueueData getByServer(String server) { + for(QueueData queue : queues) { + if(queue.getServer().equalsIgnoreCase(server)) return queue; + } + + return null; + } + + private int getCount() { + for(QueueData queue : queues) { + if(queue.getServer().equalsIgnoreCase("UHC-1")) { + ServerData data = ServerData.getByName("UHC-1"); + + if(data != null) { + return data.getOnlinePlayers(); + } + } else if(queue.getServer().equalsIgnoreCase("UHC-2")) { + ServerData data = ServerData.getByName("UHC-2"); + + if(data != null) { + return data.getOnlinePlayers(); + } + } else if(queue.getServer().equalsIgnoreCase("Factions")) { + ServerData data = ServerData.getByName("Factions"); + + if(data != null) { + return data.getOnlinePlayers(); + } + } else if(queue.getServer().equalsIgnoreCase("KitMap")) { + ServerData data = ServerData.getByName("KitMap"); + + if(data != null) { + return data.getOnlinePlayers(); + } + } else if(queue.getServer().equalsIgnoreCase("UHCMeetup-Lobby")) { + ServerData data = ServerData.getByName("UHCMeetup-Lobby"); + + if(data != null) { + return data.getOnlinePlayers(); + } + } + } + + return 0; + } + + public static String getQueueName(Player player) { + return getByPlayer(player).getServer(); + } + + public void handleRemove(Player player) { + queues.forEach(queue -> { + if(queue.getPlayers().contains(player)) { + queue.handleRemove(player); + } + + if(queue.getTaskMap().containsKey(player)) { + queue.getTaskMap().get(player).cancel(); + queue.getTaskMap().remove(player); + } + }); + } +} \ No newline at end of file diff --git a/Hub/src/secondlife/network/hub/managers/SelectorManager.java b/Hub/src/secondlife/network/hub/managers/SelectorManager.java new file mode 100644 index 0000000..fba1b3f --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/SelectorManager.java @@ -0,0 +1,157 @@ +package secondlife.network.hub.managers; + +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import secondlife.network.hub.Hub; +import secondlife.network.hub.utilties.HubUtils; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.status.ServerData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.item.ItemBuilder; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.IntStream; + +/** + * Created by Marko on 28.03.2018. + */ + +@Getter +public class SelectorManager extends Manager { + + private Inventory serverSelector; + private Inventory uhcSelector; + + private String selectorName; + private String selectorUhcName; + + public SelectorManager(Hub plugin) { + super(plugin); + + selectorName = Color.translate("&dChoose a server to play..."); + selectorUhcName = Color.translate("&dChoose a uhc to play..."); + + serverSelector = Bukkit.createInventory(null, 45, selectorName); + uhcSelector = Bukkit.createInventory(null, 9, selectorName); + + handleInventory(); + } + + private void handleInventory() { + Bukkit.getScheduler().runTaskTimerAsynchronously(plugin, () -> { + //serverSelector.setItem(11, handleUpdate(Material.GOLDEN_APPLE, "UHC", 0)); + uhcSelector.setItem(2, handleUpdate(Material.GOLDEN_APPLE, "UHC-1", 0)); + uhcSelector.setItem(6, handleUpdate(Material.GOLDEN_APPLE, "UHC-2", 0)); + + serverSelector.setItem(11, handleUHC()); + serverSelector.setItem(15, handleUpdate(Material.DIAMOND_SWORD, "KitMap", 0)); + serverSelector.setItem(29, handleUpdate(Material.LAVA_BUCKET, "UHCMeetup", 0)); + serverSelector.setItem(33, handleUpdate(Material.TNT, "Factions", 0)); + }, 20L, 20L); + + IntStream.range(0, serverSelector.getSize()).forEach(i -> { + if(serverSelector.getItem(i) == null) { + serverSelector.setItem(i, new ItemBuilder(Material.STAINED_GLASS_PANE).name("&f ").durability(7).build()); + } + }); + + IntStream.range(0, uhcSelector.getSize()).forEach(i -> { + if(uhcSelector.getItem(i) == null) { + uhcSelector.setItem(i, new ItemBuilder(Material.STAINED_GLASS_PANE).name("&f ").durability(7).build()); + } + }); + } + + private static ItemStack handleUHC() { + ItemBuilder itemBuilder = new ItemBuilder(Material.GOLDEN_APPLE); + + itemBuilder.name("&a&lUHC Selector"); + + int uhc1 = ServerData.getByName("UHC-1") != null ? ServerData.getByName("UHC-1").getOnlinePlayers() : 0; + int uhc2 = ServerData.getByName("UHC-2") != null ? ServerData.getByName("UHC-2").getOnlinePlayers() : 0; + int uhcGlobal = uhc1 + uhc2; + + + // UHC-1 12 16 20 24 + + // UHC-2 14 18 22 + + List lore = new ArrayList<>(); + lore.add(""); + lore.add("&fTermins"); + lore.add(" &fUHC-1: &a12:00, 16:00, 20:00, 00:00"); + lore.add(" &fUHC-2: &a14:00, 18:00, 22:00"); + lore.add(""); + lore.add("&fUHC-1: &a" + uhc1); + lore.add("&fUHC-2: &a" + uhc2); + lore.add(""); + lore.add("&fUHC-Global: &a" + uhcGlobal); + lore.add(""); + + itemBuilder.lore(lore); + + return itemBuilder.build(); + } + + private static ItemStack handleUpdate(Material material, String name, int durabillity) { + ServerData data = ServerData.getByName(name.equals("UHCMeetup") ? "UHCMeetup-Lobby" : name); + + ItemBuilder itemBuilder = new ItemBuilder(material); + List lore = new ArrayList<>(); + + if(data != null) { + if(data.isOnline() && !data.isWhitelisted()) { + itemBuilder.name("&a&l" + name); + } else if(data.isOnline() && data.isWhitelisted()) { + itemBuilder.type(Material.PAPER); + itemBuilder.name("&e&l" + name); + } else { + itemBuilder.type(Material.REDSTONE_BLOCK); + itemBuilder.name("&c&l" + name); + } + + lore.add(""); + + if(data.isOnline()) { + if(data.isWhitelisted()) { + lore.add("&fPlayers: &e&l" + (name.equals("UHCMeetup") ? HubUtils.getMeetupCount() : data.getOnlinePlayers()) + "/" + data.getMaximumPlayers()); + lore.add("&fStatus: " + data.getTranslatedStatus()); + lore.add(""); + lore.add("&fThis server is whitelisted!"); + } else { + lore.add("&fPlayers: &a&l" + (name.equals("UHCMeetup") ? HubUtils.getMeetupCount() : data.getOnlinePlayers()) + "/" + data.getMaximumPlayers()); + lore.add("&fStatus: " + data.getTranslatedStatus()); + lore.add(""); + lore.add("&fClick to join queue!"); + } + } else { + lore.add(""); + lore.add("&cThis server is offline."); + lore.add("&cFor information about"); + lore.add("&cthe server can be found"); + lore.add("&cat &lforum.secondlife.network"); + } + + lore.add(""); + } else { + itemBuilder.type(Material.REDSTONE_BLOCK); + itemBuilder.name("&c&l" + name); + + lore.add(""); + lore.add("&cThis server is offline."); + lore.add("&cFor information about"); + lore.add("&cthe server can be found"); + lore.add("&cat &lforum.secondlife.network"); + lore.add(""); + } + + itemBuilder.lore(lore); + itemBuilder.durability(durabillity); + + return itemBuilder.build(); + } +} diff --git a/Hub/src/secondlife/network/hub/managers/StaffSecurityManager.java b/Hub/src/secondlife/network/hub/managers/StaffSecurityManager.java new file mode 100644 index 0000000..ff16d55 --- /dev/null +++ b/Hub/src/secondlife/network/hub/managers/StaffSecurityManager.java @@ -0,0 +1,59 @@ +package secondlife.network.hub.managers; + +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; +import secondlife.network.hub.data.StaffData; +import secondlife.network.hub.utilties.Manager; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +@Getter +public class StaffSecurityManager extends Manager { + + private List users = new ArrayList<>(); + + public StaffSecurityManager(Hub plugin) { + super(plugin); + + handleSendMessage(); + } + + private void handleSendMessage() { + Tasks.runTimer(() -> Bukkit.getOnlinePlayers().forEach(player -> { + if(users.contains(player.getUniqueId())) { + StaffData data = StaffData.getByName(player.getName()); + + if(data.getPassword().equalsIgnoreCase("")) { + player.sendMessage(Color.translate("&cPlease register using /securityregister ")); + } else { + player.sendMessage(Color.translate("&cPlease login using /auth ")); + } + } + }), 50L, 50L); + } + + public void handleRemove(Player player) { + if(users.contains(player.getUniqueId())) { + users.remove(player.getUniqueId()); + } + } + + public void handleMove(Player player, Location from, Location to) { + if(!users.contains(player.getUniqueId())) { + return; + } + + player.teleport(from); + + if(from.getX() != to.getX() || from.getZ() != to.getZ()) { + player.teleport(from); + } + } +} diff --git a/Hub/src/secondlife/network/hub/providers/NametagsProvider.java b/Hub/src/secondlife/network/hub/providers/NametagsProvider.java new file mode 100644 index 0000000..856c38c --- /dev/null +++ b/Hub/src/secondlife/network/hub/providers/NametagsProvider.java @@ -0,0 +1,25 @@ +package secondlife.network.hub.providers; + +import org.bukkit.entity.Player; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.providers.NametagProvider; +import secondlife.network.vituz.providers.nametags.NametagInfo; + +/** + * Created by Marko on 21.04.2018. + */ +public class NametagsProvider extends NametagProvider { + + public NametagsProvider() { + super("", 16); + } + + @Override + public NametagInfo fetchNametag(Player toRefresh, Player refreshFor) { + if(VituzAPI.hasRanksData(toRefresh) && VituzAPI.hasPunishData(toRefresh)) { + return createNametag(VituzAPI.getNamePrefix(toRefresh), ""); + } + + return null; + } +} diff --git a/Hub/src/secondlife/network/hub/providers/ScoreboardProvider.java b/Hub/src/secondlife/network/hub/providers/ScoreboardProvider.java new file mode 100644 index 0000000..2122dab --- /dev/null +++ b/Hub/src/secondlife/network/hub/providers/ScoreboardProvider.java @@ -0,0 +1,72 @@ +package secondlife.network.hub.providers; + +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; +import secondlife.network.hub.managers.QueueManager; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.data.PunishData; +import secondlife.network.vituz.providers.ScoreProvider; +import secondlife.network.vituz.providers.scoreboard.ScoreboardConfiguration; +import secondlife.network.vituz.providers.scoreboard.TitleGetter; +import secondlife.network.vituz.punishments.Punishment; +import secondlife.network.vituz.punishments.PunishmentType; +import secondlife.network.vituz.utilties.Color; + +import java.util.ArrayList; +import java.util.List; + +public class ScoreboardProvider implements ScoreProvider { + + public static ScoreboardConfiguration create() { + ScoreboardConfiguration sc = new ScoreboardConfiguration(); + + sc.setTitleGetter(new TitleGetter("&5&lSecondLife")); + sc.setScoreGetter(new ScoreboardProvider()); + + return sc; + } + + @Override + public String[] getScores(Player player) { + List board = new ArrayList<>(); + + if(player != null) { + board.add("&7&m--------------------------"); + + if(VituzAPI.isBanned(player)) { + PunishData punishData = PunishData.getByName(player.getName()); + Punishment punishment = punishData.getBannedPunishment(); + + if(punishment.isActive() && punishment.getType() != PunishmentType.BLACKLIST) { + board.add("&fYou are " + (punishment.isPermanent() ? "permanently " : "temporarily ") + "banned"); + board.add(""); + board.add("&fDuration:"); + board.add("&d" + punishment.getTimeLeft()); + board.add(""); + } + + board.add("&fYou can appeal at:"); + board.add("&d" + Vituz.getInstance().getEssentialsManager().getAppealAt()); + } else { + board.add("&fOnline:"); + board.add("&d" + Hub.getInstance().getCountManager().getGlobalCount()); + board.add(""); + board.add("&fRank:"); + board.add(VituzAPI.getColorPrefix(player) + VituzAPI.getRankName(player.getName())); + board.add(""); + if(QueueManager.getByPlayer(player) != null) { + board.add("&f" + QueueManager.getQueueName(player).toUpperCase() + " Queue:"); + board.add("&d#" + (QueueManager.getByPlayer(player).getPlayers().indexOf(player) + 1) + " out of " + QueueManager.getByPlayer(player).getPlayers().size()); + board.add(""); + } + + board.add("&dsecondlife.network"); + } + + board.add("&d&7&m--------------------------"); + } + + return board.stream().map(Color::translate).toArray(String[]::new); + } +} diff --git a/Hub/src/secondlife/network/hub/providers/TabProvider.java b/Hub/src/secondlife/network/hub/providers/TabProvider.java new file mode 100644 index 0000000..2d6af95 --- /dev/null +++ b/Hub/src/secondlife/network/hub/providers/TabProvider.java @@ -0,0 +1,105 @@ +package secondlife.network.hub.providers; + +import org.bukkit.entity.Player; +import secondlife.network.hub.Hub; +import secondlife.network.hub.managers.QueueManager; +import secondlife.network.hub.utilties.HubUtils; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.data.PlayerData; +import secondlife.network.vituz.providers.LayoutProvider; +import secondlife.network.vituz.providers.tab.TabLayout; +import secondlife.network.vituz.status.ServerData; + +public class TabProvider implements LayoutProvider { + + private Hub plugin = Hub.getInstance(); + + public TabLayout getLayout(Player player) { + TabLayout layout = TabLayout.create(player); + + if(PlayerData.getByName(player.getName()).isTab()) { + layout.set(1, 0, "&5&lSecondLife"); + + layout.set(1, 2, "&fGlobal Online:"); + layout.set(1, 3, "&d" + plugin.getCountManager().getGlobalCount() + "/1000"); + + layout.set(0, 5, "&fTwitter:"); + layout.set(0, 6, "&d@SecondLifeMC"); + + layout.set(1, 5, "&fRank:"); + layout.set(1, 6, VituzAPI.getColorPrefix(player) + VituzAPI.getRankName(player.getName())); + + layout.set(2, 5, "&fQueued:"); + if(QueueManager.getByPlayer(player) != null) { + layout.set(2, 6, "&f" + QueueManager.getQueueName(player).toUpperCase() + ":"); + layout.set(2, 7, "&d#" + (QueueManager.getByPlayer(player).getPlayers().indexOf(player) + 1) + " of &d" + QueueManager.getByPlayer(player).getPlayers().size()); + } else { + layout.set(2, 6, "&dNone"); + } + + layout.set(1, 8, "&5&lServer Info"); + + ServerData uhcData = ServerData.getByName("UHC-1"); + + if(uhcData != null) { + layout.set(0, 10, "&5&lUHC-1"); + layout.set(0, 11, "&fStatus: " + uhcData.getTranslatedStatus()); + layout.set(0, 12, uhcData.isOnline() ? "&fOnline: &d" + uhcData.getOnlinePlayers() + "/" + uhcData.getMaximumPlayers() : HubUtils.loading); + } else { + layout.set(0, 10, "&5&lUHC-1"); + layout.set(0, 11, "&fStatus: &cOffline"); + layout.set(0, 12, "&f" + HubUtils.loading); + } + + ServerData uhcData2 = ServerData.getByName("UHC-2"); + + if(uhcData2 != null) { + layout.set(1, 10, "&5&lUHC-2"); + layout.set(1, 11, "&fStatus: " + uhcData2.getTranslatedStatus()); + layout.set(1, 12, uhcData2.isOnline() ? "&fOnline: &d" + uhcData2.getOnlinePlayers() + "/" + uhcData2.getMaximumPlayers() : HubUtils.loading); + } else { + layout.set(1, 10, "&5&lUHC-2"); + layout.set(1, 11, "&fStatus: &cOffline"); + layout.set(1, 12, "&f" + HubUtils.loading); + } + + ServerData meetupData = ServerData.getByName("UHCMeetup-Lobby"); + + if(meetupData != null) { + layout.set(0, 14, "&5&lUHCMeetup"); + layout.set(0, 15, "&fStatus: " + meetupData.getTranslatedStatus()); + layout.set(0, 16, meetupData.isOnline() ? "&fOnline: &d" + HubUtils.getMeetupCount() + "/" + meetupData.getMaximumPlayers() : HubUtils.loading); + } else { + layout.set(0, 14, "&5&lUHCMeetup"); + layout.set(0, 15, "&fStatus: &cOffline"); + layout.set(0, 16, "&f" + HubUtils.loading); + } + + ServerData kitmapData = ServerData.getByName("KitMap"); + + if(kitmapData != null) { + layout.set(2, 10, "&5&lKitMap"); + layout.set(2, 11, "&fStatus: " + kitmapData.getTranslatedStatus()); + layout.set(2, 12, kitmapData.isOnline() ? "&fOnline: &d" + kitmapData.getOnlinePlayers() + "/" + kitmapData.getMaximumPlayers() : HubUtils.loading); + } else { + layout.set(2, 10, "&5&lKitMap"); + layout.set(2, 11, "&fStatus: &cOffline"); + layout.set(2, 12, "&f" + HubUtils.loading); + } + + ServerData factionsData = ServerData.getByName("Factions"); + + if(factionsData != null) { + layout.set(2, 14, "&5&lFactions"); + layout.set(2, 15, "&fStatus: " + factionsData.getTranslatedStatus()); + layout.set(2, 16, factionsData.isOnline() ? "&fOnline: &d" + factionsData.getOnlinePlayers() + "/" + factionsData.getMaximumPlayers() : HubUtils.loading); + } else { + layout.set(2, 14, "&5&lFactions"); + layout.set(2, 15, "&fStatus: &cOffline"); + layout.set(2, 16, "&f" + HubUtils.loading); + } + } + + return layout; + } +} diff --git a/Hub/src/secondlife/network/hub/utilties/HubUtils.java b/Hub/src/secondlife/network/hub/utilties/HubUtils.java new file mode 100644 index 0000000..3ae5bfa --- /dev/null +++ b/Hub/src/secondlife/network/hub/utilties/HubUtils.java @@ -0,0 +1,100 @@ +package secondlife.network.hub.utilties; + +import org.bukkit.GameMode; +import org.bukkit.Material; +import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer; +import org.bukkit.entity.Player; +import org.bukkit.potion.PotionEffect; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.hub.Hub; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.status.ServerData; +import secondlife.network.vituz.utilties.item.ItemBuilder; + +/** + * Created by Marko on 28.03.2018. + */ +public class HubUtils { + + public static String loading = "Loading"; + + public static void resetPlayer(Player player) { + player.setCanPickupItems(false); + player.getInventory().clear(); + player.getInventory().setArmorContents(null); + player.setHealth(20.0); + player.setFoodLevel(20); + player.setFireTicks(1); + player.getActivePotionEffects().stream().map(PotionEffect::getType).forEach(player::removePotionEffect); + ((CraftPlayer) player).getHandle().getDataWatcher().watch(9, (byte) 0); + player.getInventory().setHeldItemSlot(4); + player.setGameMode(GameMode.ADVENTURE); + + player.getInventory().setItem(1, new ItemBuilder(Material.ENDER_PEARL).name("&b&lPearl Rider").build()); + player.getInventory().setItem(4, new ItemBuilder(Material.COMPASS).name("&2&lServer Selector").build()); + player.getInventory().setItem(7, new ItemBuilder(Material.INK_SACK).durability(8).name("&7Hide Players").build()); + } + + public static int getMeetupCount() { + ServerData data1 = ServerData.getByName("UHCMeetup-1"); + ServerData data2 = ServerData.getByName("UHCMeetup-2"); + ServerData data3 = ServerData.getByName("UHCMeetup-3"); + ServerData data4 = ServerData.getByName("UHCMeetup-4"); + ServerData data5 = ServerData.getByName("UHCMeetup-5"); + ServerData data6 = ServerData.getByName("UHCMeetup-6"); + ServerData dataLobby = ServerData.getByName("UHCMeetup-Lobby"); + + int count1 = data1 != null ? data1.getOnlinePlayers() : 0; + int count2 = data2 != null ? data2.getOnlinePlayers() : 0; + int count3 = data3 != null ? data3.getOnlinePlayers() : 0; + int count4 = data4 != null ? data4.getOnlinePlayers() : 0; + int count5 = data5 != null ? data5.getOnlinePlayers() : 0; + int count6 = data6 != null ? data6.getOnlinePlayers() : 0; + int count7 = dataLobby != null ? dataLobby.getOnlinePlayers() : 0; + + return count1 + count2 + count3 + count4 + count5 + count6 + count7; + } + + public static void setupLoading() { + new BukkitRunnable() { + public void run() { + if(loading == "Loading") { + loading = "Loading."; + } else if(loading == "Loading.") { + loading = "Loading.."; + } else if(loading == "Loading..") { + loading = "Loading..."; + } else if(loading == "Loading...") { + loading = "Loading"; + } + } + }.runTaskTimerAsynchronously(Hub.getInstance(), 20L, 20L); + } + + public static int getPriority(Player player) { + if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("TrialMod") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Mod") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Mod+") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("SeniorMod") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Admin") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("SeniorAdmin") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("PlatformAdmin") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Owner")) { + return 0; + } else if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Xenon") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Partner") + || VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Media")) { + return 1; + } else if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Krypton")) { + return 2; + } else if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Titanium")) { + return 3; + } else if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Nitrogen")) { + return 4; + } else if(VituzAPI.getRankName(player.getName()).equalsIgnoreCase("Hydrogen")) { + return 5; + } + + return 6; + } +} diff --git a/Hub/src/secondlife/network/hub/utilties/Manager.java b/Hub/src/secondlife/network/hub/utilties/Manager.java new file mode 100644 index 0000000..07c4dd9 --- /dev/null +++ b/Hub/src/secondlife/network/hub/utilties/Manager.java @@ -0,0 +1,16 @@ +package secondlife.network.hub.utilties; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import secondlife.network.hub.Hub; + +/** + * Created by Marko on 07.07.2018. + */ + +@AllArgsConstructor +public class Manager { + + @Getter + protected Hub plugin; +} diff --git a/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileStorage.java b/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileStorage.java new file mode 100644 index 0000000..6b936a1 --- /dev/null +++ b/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileStorage.java @@ -0,0 +1,61 @@ +package secondlife.network.hub.utilties.profile; + +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.OfflinePlayer; + +import java.util.HashMap; +import java.util.Map; + +public class BukkitProfileStorage { + + private Map realplayers = new HashMap<>(); + + public BukkitProfileStorage() { + BukkitProfileUtils.getPlayers().forEach(player -> { + if(player.getName() != null) { + if(!hasRealPlayer(player)) { + addRealPlayer(player); + } else { + if(player.getLastPlayed() >= realplayers.get(player.getName().toLowerCase()).getLastPlayed()) { + addRealPlayer(player); + } + } + } + }); + + Bukkit.getOnlinePlayers().forEach(this::addRealPlayer); + } + + public boolean hasRealPlayer(OfflinePlayer player) { + return realplayers.containsKey(player.getName().toLowerCase()); + } + + public void addRealPlayer(OfflinePlayer player) { + realplayers.put(player.getName().toLowerCase(), new PlayerData(player)); + } + + public boolean isPlayerReal(OfflinePlayer player) { + if(hasRealPlayer(player)) { + PlayerData playerdata = realplayers.get(player.getName().toLowerCase()); + return playerdata.getName().equals(player.getName()); + } + + return false; + } + + public String getRealPlayerValidName(OfflinePlayer player) { + return realplayers.get(player.getName().toLowerCase()).getName(); + } + + @Getter + private class PlayerData { + private String name; + private long lastPlayed; + + PlayerData(OfflinePlayer player) { + name = player.getName(); + lastPlayed = player.getLastPlayed(); + } + } +} diff --git a/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileUtils.java b/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileUtils.java new file mode 100644 index 0000000..5feb213 --- /dev/null +++ b/Hub/src/secondlife/network/hub/utilties/profile/BukkitProfileUtils.java @@ -0,0 +1,43 @@ +package secondlife.network.hub.utilties.profile; + +import lombok.Getter; +import lombok.Setter; +import org.bukkit.Bukkit; +import org.bukkit.OfflinePlayer; + +import java.io.File; +import java.util.LinkedList; +import java.util.UUID; + +public class BukkitProfileUtils { + + @Getter + @Setter + public static boolean enabled = true; + + public static LinkedList getPlayers() { + LinkedList players = new LinkedList<>(); + + for(File file : getByPlayersDataFolder().listFiles()) { + if(file.getName().endsWith(".dat")) { + String uuidstring = file.getName().substring(0, file.getName().length() - 4); + + try { + players.add(Bukkit.getOfflinePlayer(UUID.fromString(uuidstring))); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + return players; + } + + public static File getByPlayerFile(OfflinePlayer player) { + return new File(getByPlayersDataFolder(), player.getUniqueId().toString() + ".dat"); + } + + private static File getByPlayersDataFolder() { + return new File(Bukkit.getWorld("world").getWorldFolder(), "playerdata"); + } +} diff --git a/Hub/src/secondlife/network/hub/utilties/profile/RemoveThread.java b/Hub/src/secondlife/network/hub/utilties/profile/RemoveThread.java new file mode 100644 index 0000000..7e20b32 --- /dev/null +++ b/Hub/src/secondlife/network/hub/utilties/profile/RemoveThread.java @@ -0,0 +1,21 @@ +package secondlife.network.hub.utilties.profile; + +import secondlife.network.hub.Hub; +import secondlife.network.vituz.utilties.Msg; + +public class RemoveThread extends Thread { + + @Override + public void run() { + Msg.logConsole("&cStarted with cleaning duplicated datas!"); + + BukkitProfileUtils.getPlayers().forEach(player -> { + if (!Hub.getInstance().getStorage().isPlayerReal(player)) { + Msg.sendMessage("&cRemoved data &l" + player.getName() + "&c."); + BukkitProfileUtils.getByPlayerFile(player).delete(); + } + }); + + Msg.logConsole("&aFinished with cleaning duplicated datas!"); + } +} diff --git a/Hub/src/utilities.yml b/Hub/src/utilities.yml new file mode 100644 index 0000000..cd39766 --- /dev/null +++ b/Hub/src/utilities.yml @@ -0,0 +1 @@ +SPAWNS: \ No newline at end of file diff --git a/MeetupGame/src/config.yml b/MeetupGame/src/config.yml new file mode 100644 index 0000000..e69de29 diff --git a/MeetupGame/src/kits.yml b/MeetupGame/src/kits.yml new file mode 100644 index 0000000..e69de29 diff --git a/MeetupGame/src/plugin.yml b/MeetupGame/src/plugin.yml new file mode 100644 index 0000000..e69de29 diff --git a/MeetupGame/src/secondlife/network/meetupgame/MeetupGame.java b/MeetupGame/src/secondlife/network/meetupgame/MeetupGame.java new file mode 100644 index 0000000..2599031 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/MeetupGame.java @@ -0,0 +1,34 @@ +package secondlife.network.meetupgame; + +import lombok.Getter; +import org.bukkit.plugin.java.JavaPlugin; +import secondlife.network.meetupgame.managers.GameManager; +import secondlife.network.meetupgame.managers.InventoryManager; +import secondlife.network.meetupgame.managers.VoteManager; +import secondlife.network.vituz.utilties.config.ConfigFile; + +/** + * Created by Marko on 11.06.2018. + */ + +@Getter +public class MeetupGame extends JavaPlugin { + + @Getter private static MeetupGame instance; + + private GameManager gameManager; + private InventoryManager inventoryManager; + private VoteManager voteManager; + + private ConfigFile mainConfig, kitsFile; + + @Override + public void onEnable() { + instance = this; + } + + @Override + public void onDisable() { + + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/layouts/ScoreboardLayout.java b/MeetupGame/src/secondlife/network/meetupgame/layouts/ScoreboardLayout.java new file mode 100644 index 0000000..7fc8166 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/layouts/ScoreboardLayout.java @@ -0,0 +1,67 @@ +package secondlife.network.meetupgame.layouts; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.meetupgame.scenario.ScenarioManager; +import secondlife.network.meetupgame.tasks.StartingTask; +import secondlife.network.meetupgame.tasks.VoteTask; +import secondlife.network.meetupgame.tasks.WinTask; +import secondlife.network.vituz.scoreboard.ScoreGetter; +import secondlife.network.vituz.scoreboard.ScoreboardConfiguration; +import secondlife.network.vituz.scoreboard.TitleGetter; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.StringUtils; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 12.06.2018. + */ +public class ScoreboardLayout implements ScoreGetter { + + private MeetupGame plugin = MeetupGame.getInstance(); + + public static ScoreboardConfiguration create() { + ScoreboardConfiguration sc = new ScoreboardConfiguration(); + + sc.setTitleGetter(new TitleGetter("§5§lSecondLife")); + sc.setScoreGetter(new ScoreboardLayout()); + + return sc; + } + + @Override + public String[] getScores(Player player) { + List board = new ArrayList<>(); + add(board, "&7&m----------------------"); + switch(plugin.getGameManager().getGameState()) { + case VOTING: + add(board, "&fOnline: &d" + Bukkit.getOnlinePlayers().size()); + add(board, "&fVoting ends in &d" + StringUtils.formatInt(VoteTask.seconds)); + add(board, ""); + add(board, "&5&lScenario votes"); + for(Scenario scenario : ScenarioManager.getScenarios()) { + add(board, " &f- " + scenario.getName() + "&7: &d" + plugin.getVoteManager().getScenarioVotes().get(scenario.getName())); + } + break; + case WAITING: + add(board, "&fOnline: &d" + Bukkit.getOnlinePlayers().size()); + add(board, "&fStarting in &d" + StringUtils.formatInt(StartingTask.seconds)); + case WINNER: + add(board, "&fWinner: &d" + plugin.getGameManager().getWinner()); + add(board, "&fStopping in &d" + StringUtils.formatInt(WinTask.seconds)); + } + add(board, ""); + add(board, "&dsecondlife.network"); + add(board, "&9&7&m----------------------"); + + return board.toArray(new String[] {}); + } + + private void add(List list, String text) { + list.add(Color.translate(text)); + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/listeners/GameListener.java b/MeetupGame/src/secondlife/network/meetupgame/listeners/GameListener.java new file mode 100644 index 0000000..08d7161 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/listeners/GameListener.java @@ -0,0 +1,59 @@ +package secondlife.network.meetupgame.listeners; + +import org.bukkit.Material; +import org.bukkit.entity.Arrow; +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.player.PlayerItemConsumeEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; + +/** + * Created by Marko on 12.06.2018. + */ +public class GameListener implements Listener { + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(!(event.getEntity() instanceof Player)) return; + + Player entity = (Player) event.getEntity(); + + if(!(event.getDamager() instanceof Arrow)) return; + + Arrow arrow = (Arrow) event.getDamager(); + + if(!(arrow.getShooter() instanceof Player)) return; + + Player shooter = (Player) arrow.getShooter(); + + if(entity.getName().equals(shooter.getName())) return; + + double health = Math.ceil(entity.getHealth() - event.getFinalDamage()) / 2.0D; + + if(health > 0.0D) { + shooter.sendMessage(Color.translate("&d" + entity.getName() + " &eis now at &d" + health + Msg.HEART + "&e.")); + } + } + + @EventHandler + public void onItemConsume(PlayerItemConsumeEvent event) { + ItemStack item = event.getItem(); + + if(item == null) return; + if(item.getType() != Material.GOLDEN_APPLE) return; + if(item.getItemMeta() == null) return; + if(!item.getItemMeta().hasDisplayName()) return; + if(!item.getItemMeta().getDisplayName().contains("Golden Head")) return; + + Player player = event.getPlayer(); + + player.removePotionEffect(PotionEffectType.REGENERATION); + player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 200, 1)); + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/listeners/PlayerListener.java b/MeetupGame/src/secondlife/network/meetupgame/listeners/PlayerListener.java new file mode 100644 index 0000000..62606a7 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/listeners/PlayerListener.java @@ -0,0 +1,131 @@ +package secondlife.network.meetupgame.listeners; + +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.block.BlockBreakEvent; +import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.player.PlayerBucketEmptyEvent; +import org.bukkit.event.player.PlayerDropItemEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.player.PlayerData; +import secondlife.network.meetupgame.state.GameState; +import secondlife.network.meetupgame.utilities.MeetupUtils; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.ItemBuilder; + +/** + * Created by Marko on 11.06.2018. + */ +public class PlayerListener implements Listener { + + private MeetupGame plugin = MeetupGame.getInstance(); + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + + PlayerData data = PlayerData.getByPlayer(player); + + plugin.getInventoryManager().loadInventory(player, plugin.getGameManager().getGameState()); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + Player player = event.getPlayer(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + + event.setCancelled(true); + + if(plugin.getGameManager().getWhitelistedBlocks().contains(event.getBlock().getType())) { + event.setCancelled(false); + } else { + player.sendMessage(Color.translate("&cYou aren't allowed to break this block!")); + } + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + Player player = event.getPlayer(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + + int max = 90; + if(event.getBlock().getY() > max) { + event.setCancelled(true); + + if(player.getLocation().getY() > max + 2) { + Location finalLocation = player.getLocation(); + finalLocation.setY(max + 1); + + if(finalLocation.getBlock().getRelative(0, 1, 0).isEmpty()) { + player.teleport(finalLocation); + } + + player.sendMessage(Color.translate("&cSky basing isn't allowed!")); + } + } + } + + @EventHandler + public void onBucketEmpty(PlayerBucketEmptyEvent event) { + Player player = event.getPlayer(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + } + + @EventHandler + public void onPlayerDropItem(PlayerDropItemEvent event) { + Player player = event.getPlayer(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + if(!(event.getEntity() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + } + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(!(event.getEntity() instanceof Player)) return; + if(!(event.getDamager() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + + if(MeetupUtils.isState(player)) { + event.setCancelled(true); + return; + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/listeners/VoteListener.java b/MeetupGame/src/secondlife/network/meetupgame/listeners/VoteListener.java new file mode 100644 index 0000000..b80b3ba --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/listeners/VoteListener.java @@ -0,0 +1,51 @@ +package secondlife.network.meetupgame.listeners; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +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 secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.player.PlayerData; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.meetupgame.scenario.ScenarioManager; + +/** + * Created by Marko on 12.06.2018. + */ +public class VoteListener implements Listener { + + private MeetupGame plugin = MeetupGame.getInstance(); + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + Player player = (Player) event.getWhoClicked(); + Inventory inventory = event.getClickedInventory(); + + ItemStack stack = event.getCurrentItem(); + + if(stack == null || stack.getType() == Material.AIR || !stack.hasItemMeta()) return; + if(stack.getItemMeta() == null) return; + + if(inventory != null) { + if(inventory.getTitle().equals(plugin.getInventoryManager().getVoteInventory().getTitle())) { + event.setCancelled(true); + + String optionName = ChatColor.stripColor(stack.getItemMeta().getDisplayName()); + Scenario scenario = ScenarioManager.getByScenario(optionName); + + if(scenario != null) { + if(plugin.getVoteManager().getScenarioVotes().containsKey(scenario.getName())) { + return; + } + + plugin.getVoteManager().getScenarioVotes().put(scenario.getName(), plugin.getVoteManager().getScenarioVotes().get(scenario.getName())); + plugin.getVoteManager().getUsers().add(player.getUniqueId()); + } + } + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/managers/GameManager.java b/MeetupGame/src/secondlife/network/meetupgame/managers/GameManager.java new file mode 100644 index 0000000..aa6ec38 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/managers/GameManager.java @@ -0,0 +1,79 @@ +package secondlife.network.meetupgame.managers; + +import lombok.Getter; +import lombok.Setter; +import org.bukkit.Material; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.player.PlayerData; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.meetupgame.scenario.ScenarioManager; +import secondlife.network.meetupgame.state.GameState; +import secondlife.network.meetupgame.state.PlayerState; +import secondlife.network.meetupgame.utilities.Manager; +import secondlife.network.vituz.utilties.Msg; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 11.06.2018. + */ + +@Getter +@Setter +public class GameManager extends Manager { + + private int initial = 0; + private String winner = ""; + private GameState gameState = GameState.VOTING; + private List whitelistedBlocks = new ArrayList<>(); + + public GameManager(MeetupGame plugin) { + super(plugin); + + whitelistedBlocks.add(Material.LOG); + whitelistedBlocks.add(Material.LOG_2); + whitelistedBlocks.add(Material.WOOD); + whitelistedBlocks.add(Material.LEAVES); + whitelistedBlocks.add(Material.LEAVES_2); + whitelistedBlocks.add(Material.WATER); + whitelistedBlocks.add(Material.STATIONARY_WATER); + whitelistedBlocks.add(Material.LAVA); + whitelistedBlocks.add(Material.STATIONARY_LAVA); + whitelistedBlocks.add(Material.LONG_GRASS); + whitelistedBlocks.add(Material.YELLOW_FLOWER); + whitelistedBlocks.add(Material.COBBLESTONE); + whitelistedBlocks.add(Material.CACTUS); + whitelistedBlocks.add(Material.SUGAR_CANE_BLOCK); + whitelistedBlocks.add(Material.DOUBLE_PLANT); + whitelistedBlocks.add(Material.OBSIDIAN); + whitelistedBlocks.add(Material.SNOW); + whitelistedBlocks.add(Material.YELLOW_FLOWER); + whitelistedBlocks.add(Material.RED_ROSE); + whitelistedBlocks.add(Material.BROWN_MUSHROOM); + whitelistedBlocks.add(Material.RED_MUSHROOM); + whitelistedBlocks.add(Material.HUGE_MUSHROOM_1); + whitelistedBlocks.add(Material.HUGE_MUSHROOM_2); + } + + public int getAlivePlayers() { + int i = 0; + + for(PlayerData data : PlayerData.getPlayerDatas()) { + if(data.getPlayerState().equals(PlayerState.PLAYING)) { + i++; + } + } + + return i; + } + + public void startGame() { + String scenarioName = plugin.getVoteManager().getHighestVote(); + ScenarioManager.getByScenario(scenarioName).setEnabled(true); + + Msg.sendMessage("&d" + scenarioName + " &ehas been chosen as this game's scenario with &d" + plugin.getVoteManager().getScenarioVotes().get(scenarioName) + " votes&e."); + + // TODO BorderTask (100, 75, 50, 25) + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/managers/InventoryManager.java b/MeetupGame/src/secondlife/network/meetupgame/managers/InventoryManager.java new file mode 100644 index 0000000..56135f1 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/managers/InventoryManager.java @@ -0,0 +1,47 @@ +package secondlife.network.meetupgame.managers; + +import lombok.Getter; +import net.minecraft.server.v1_8_R3.PacketListener; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.meetupgame.scenario.ScenarioManager; +import secondlife.network.meetupgame.state.GameState; +import secondlife.network.meetupgame.utilities.Manager; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.ItemBuilder; + +/** + * Created by Marko on 11.06.2018. + */ + +@Getter +public class InventoryManager extends Manager { + + private Inventory voteInventory; + + public InventoryManager(MeetupGame plugin) { + super(plugin); + + voteInventory = Bukkit.createInventory(null, 9, Color.translate("Vote for scenarios")); + } + + public void loadInventory(Player player, GameState state) { + if(state.equals(GameState.VOTING)) { + player.getInventory().setItem(4, new ItemBuilder(Material.NETHER_STAR).name("&d&lVote for scenarios").build()); + } else if(state.equals(GameState.WAITING)) { + + } + } + + public void updateVoteInventory() { + voteInventory.clear(); + + for(Scenario scenario : ScenarioManager.getScenarios()) { + voteInventory.addItem(ScenarioManager.getScenarioItem(scenario)); + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/managers/VoteManager.java b/MeetupGame/src/secondlife/network/meetupgame/managers/VoteManager.java new file mode 100644 index 0000000..3165ccb --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/managers/VoteManager.java @@ -0,0 +1,36 @@ +package secondlife.network.meetupgame.managers; + +import lombok.Getter; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.utilities.Manager; + +import java.util.*; + +/** + * Created by Marko on 13.06.2018. + */ + +@Getter +public class VoteManager extends Manager { + + private Map scenarioVotes = new HashMap<>(); + private List users = new ArrayList<>(); + + public VoteManager(MeetupGame plugin) { + super(plugin); + } + + public String getHighestVote() { + String highestScenario = null; + int highestVote = 0; + + for(Map.Entry entry : scenarioVotes.entrySet()) { + if(entry.getValue() > highestVote) { + highestScenario = entry.getKey(); + highestVote = entry.getValue(); + } + } + + return highestScenario; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/player/PlayerData.java b/MeetupGame/src/secondlife/network/meetupgame/player/PlayerData.java new file mode 100644 index 0000000..46b083b --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/player/PlayerData.java @@ -0,0 +1,160 @@ +package secondlife.network.meetupgame.player; + +import com.mongodb.client.model.Filters; +import com.mongodb.client.model.UpdateOptions; +import javafx.util.Pair; +import lombok.Getter; +import lombok.Setter; +import org.bson.Document; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; +import org.json.simple.JSONObject; +import org.json.simple.parser.JSONParser; +import org.json.simple.parser.ParseException; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.state.PlayerState; +import secondlife.network.meetupgame.utilities.database.MeetupDatabase; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.URL; +import java.net.URLConnection; +import java.util.*; + +/** + * Created by Marko on 11.06.2018. + */ + +@Getter +@Setter +public class PlayerData { + + @Getter private static Set playerDatas = new HashSet<>(); + + private UUID uuid; + private PlayerState playerState = PlayerState.WAITING; + private Map votes = new HashMap<>(); + private String name; + private int kills = 0; + private int totalKills = 0; + private int wins = 0; + private int deaths = 0; + private int killStreak = 0; + private int played = 0; + private int rerolls = 0; + + public PlayerData(UUID uuid, boolean cache) { + this.uuid = uuid; + + load(); + + if(cache) playerDatas.add(this); + } + + public void saveAsync() { + new BukkitRunnable() { + public void run() { + save(); + } + }.runTaskAsynchronously(MeetupGame.getInstance()); + } + + public void save() { + Document document = new Document(); + document.put("uuid", uuid.toString()); + + if(this.name != null) { + document.put("recentName", this.name); + document.put("recentNameLowercase", this.name.toLowerCase()); + } + + document.put("kills", this.totalKills); + document.put("wins", this.wins); + document.put("deaths", this.deaths); + document.put("kill_streak", this.killStreak); + document.put("played", this.played); + document.put("rerolls", this.rerolls); + + MeetupDatabase.profiles.replaceOne(Filters.eq("uuid", this.uuid.toString()), document, new UpdateOptions().upsert(true)); + } + + private void load() { + Document document = (Document) MeetupDatabase.profiles.find(Filters.eq("uuid", uuid.toString())).first(); + + if(document != null) { + if(document.containsKey("recentName")) { + this.name = document.getString("recentName"); + } + + if(document.containsKey("kills")) { + this.totalKills = document.getInteger("kills"); + } + + if(document.containsKey("wins")) { + this.wins = document.getInteger("wins"); + } + + if(document.containsKey("deaths")) { + this.deaths = document.getInteger("deaths"); + } + + if(document.containsKey("kill_streak")) { + this.killStreak = document.getInteger("kill_streak"); + } + + if(document.containsKey("played")) { + this.played = document.getInteger("played"); + } + + if(document.containsKey("rerolls")) { + this.rerolls = document.getInteger("rerolls"); + } + } + } + + private static PlayerData getByPlayerr(Player player) { + for(PlayerData data : playerDatas) { + if(data.getUuid().equals(player.getUniqueId())) return data; + } + + return new PlayerData(player.getUniqueId(), true); + } + + public static PlayerData getByPlayer(Player player) { + if(player != null) return getByPlayerr(player); + + return new PlayerData(player.getUniqueId(), false); + } + + public static PlayerData getByUuid(UUID uuid) { + Player player = Bukkit.getPlayer(uuid); + + if(player != null) return getByPlayerr(player); + + return new PlayerData(uuid, false); + } + + public static Pair getExternalPlayerInformation(String name) throws IOException, ParseException { + Document document = (Document) MeetupDatabase.profiles.find(Filters.eq("recentName", name)).first(); + + if(document != null && document.containsKey("recentName")) { + return new Pair(UUID.fromString(document.getString("uuid")), document.getString("recentName")); + } + + URL url = new URL("https://api.mojang.com/users/profiles/minecraft/" + name); + URLConnection conn = url.openConnection(); + conn.setDoOutput(true); + + BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); + JSONParser parser = new JSONParser(); + JSONObject obj = (JSONObject) parser.parse(reader.readLine()); + UUID uuid = UUID.fromString(String.valueOf(obj.get("id")).replaceAll("(\\w{8})(\\w{4})(\\w{4})(\\w{4})(\\w{12})", "$1-$2-$3-$4-$5")); + + name = String.valueOf(obj.get("name")); + reader.close(); + + return new Pair(uuid, name); + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/Scenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/Scenario.java new file mode 100644 index 0000000..8766bb9 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/Scenario.java @@ -0,0 +1,46 @@ +package secondlife.network.meetupgame.scenario; + +import lombok.Getter; +import lombok.Setter; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.event.HandlerList; +import org.bukkit.event.Listener; +import secondlife.network.meetupgame.MeetupGame; + +/** + * Created by Marko on 11.06.2018. + */ + +@Getter +@Setter +public abstract class Scenario { + + private String name; + private String[] features; + private Material material; + private boolean enabled; + private int votes; + + public Scenario(String name, Material icon, String... features) { + this.name = name; + this.features = features; + this.material = icon; + this.enabled = false; + this.votes = 0; + + ScenarioManager.getScenarios().add(this); + } + + public void toggle() { + if(!this.enabled) { + Bukkit.getPluginManager().registerEvents((Listener) this, MeetupGame.getInstance()); + + this.enabled = true; + } else { + HandlerList.unregisterAll((Listener) this); + + this.enabled = false; + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/ScenarioManager.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/ScenarioManager.java new file mode 100644 index 0000000..12e0651 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/ScenarioManager.java @@ -0,0 +1,67 @@ +package secondlife.network.meetupgame.scenario; + +import lombok.Getter; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.scenario.type.*; +import secondlife.network.meetupgame.utilities.Manager; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +/** + * Created by Marko on 11.06.2018. + */ +public class ScenarioManager extends Manager { + + @Getter private static Set scenarios = new HashSet<>(); + + public ScenarioManager(MeetupGame plugin) { + super(plugin); + + new BowlessScenario(); + new DefaultScenario(); + new DoNotDisturbScenario(); + new FirelessScenario(); + new NoCleanScenario(); + new RodlessScenario(); + new TimeBombScenario(); + } + + public static ItemStack getScenarioItem(Scenario scenario) { + ItemStack item = new ItemStack(scenario.getMaterial()); + ItemMeta meta = item.getItemMeta(); + + meta.setDisplayName(Color.translate("&a" + scenario.getName())); + + List lore = new ArrayList<>(); + + lore.add(" "); + lore.add(Color.translate("&eVotes: " + MeetupGame.getInstance().getVoteManager().getScenarioVotes().get(scenario.getName()))); + lore.add(Color.translate("&eDescription")); + lore.add(" "); + + for(String text : scenario.getFeatures()) { + lore.add(Color.translate("&9&l" + Msg.KRUZIC +"&9 " + text)); + } + + meta.setLore(lore); + item.setItemMeta(meta); + return item; + } + + public static Scenario getByScenario(String name) { + for(Scenario scenario : scenarios) { + if(name.equalsIgnoreCase(scenario.getName())) { + return scenario; + } + } + + return null; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/BowlessScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/BowlessScenario.java new file mode 100644 index 0000000..80c2578 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/BowlessScenario.java @@ -0,0 +1,50 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.CraftItemEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 11.06.2018. + */ +public class BowlessScenario extends Scenario implements Listener { + + public BowlessScenario() { + super("Bowless", Material.BOW, "Bows can't be crafted/used!"); + } + + @EventHandler + public void onCraftItem(CraftItemEvent event) { + Player player = (Player) event.getView().getPlayer(); + + if(event.getRecipe().getResult().getType() != Material.BOW) return; + + event.getInventory().setResult(new ItemStack(Material.AIR)); + + player.sendMessage(Color.translate("&cYou can't craft bows while &lBowless&c scenario is active.")); + + event.setCancelled(true); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + ItemStack item = event.getItem(); + + if(item == null) return; + + if(item.getType() != Material.BOW) return; + + player.setItemInHand(null); + player.updateInventory(); + + player.sendMessage(Color.translate("&cYou can't use bow while &lBowless&c scenario is active.")); + } + +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DefaultScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DefaultScenario.java new file mode 100644 index 0000000..2e04068 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DefaultScenario.java @@ -0,0 +1,15 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +import org.bukkit.event.Listener; +import secondlife.network.meetupgame.scenario.Scenario; + +/** + * Created by Marko on 11.06.2018. + */ +public class DefaultScenario extends Scenario implements Listener { + + public DefaultScenario() { + super("Default", Material.INK_SACK, "Basic game, no scenarios!"); + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.java new file mode 100644 index 0000000..9fe78db --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/DoNotDisturbScenario.java @@ -0,0 +1,61 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.vituz.utilties.Color; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +/** + * Created by Marko on 03.06.2018. + */ +public class DoNotDisturbScenario extends Scenario { + + private Map hashMap = new HashMap(); + + public DoNotDisturbScenario() { + super("Do Not Disturb", Material.BED, "Once you hit a player your fight can't be interfered with", "Your tag lasts 30 seconds whenever you hit the player."); + } + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(!(event.getEntity() instanceof Player)) return; + if(!(event.getDamager() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + Player damager = (Player) event.getDamager(); + + if(hashMap.containsKey(damager.getUniqueId())) { + if(!player.getUniqueId().equals(hashMap.get(damager.getUniqueId()))) { + event.setCancelled(true); + damager.sendMessage(Color.translate("&cYou can't hit that player, he isn't linked to you!")); + return; + } + } else { + hashMap.put(damager.getUniqueId(), player.getUniqueId()); + hashMap.put(player.getUniqueId(), damager.getUniqueId()); + + new BukkitRunnable() { + public void run() { + hashMap.remove(player.getUniqueId()); + hashMap.remove(damager.getUniqueId()); + + if(player != null) { + player.sendMessage(Color.translate("&8[&6&lScenarios&8] &eYour &fDo Not Disturb&e status has been removed!")); + } + + if(damager != null) { + damager.sendMessage(Color.translate("&8[&6&lScenarios&8] &eYour &fDo Not Disturb&e status has been removed!")); + } + } + }.runTaskLater(MeetupGame.getInstance(), 25 * 20L); + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/FirelessScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/FirelessScenario.java new file mode 100644 index 0000000..74d648f --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/FirelessScenario.java @@ -0,0 +1,28 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.entity.EntityDamageEvent.DamageCause; +import secondlife.network.meetupgame.scenario.Scenario; + +/** + * Created by Marko on 11.06.2018. + */ +public class FirelessScenario extends Scenario implements Listener { + + public FirelessScenario() { + super("Fireless", Material.FIRE, "You can't take fire damage!"); + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + if(!(event.getEntity() instanceof Player)) return; + + if(event.getCause() == DamageCause.FIRE || event.getCause() == DamageCause.FIRE_TICK || event.getCause() == DamageCause.LAVA) { + event.setCancelled(true); + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/NoCleanScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/NoCleanScenario.java new file mode 100644 index 0000000..fb14af7 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/NoCleanScenario.java @@ -0,0 +1,92 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +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.entity.EntityDamageEvent; +import org.bukkit.event.entity.EntityDeathEvent; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.vituz.utilties.Color; + +import java.util.HashMap; +import java.util.UUID; + +/** + * Created by Marko on 11.06.2018. + */ +public class NoCleanScenario extends Scenario implements Listener { + + public static HashMap noClean = new HashMap(); + + public NoCleanScenario() { + super("No Clean", Material.DIAMOND_SWORD, "When player dies he will be invincible for 30 seconds!"); + } + + @EventHandler(priority = EventPriority.HIGHEST) + public void onPlayerDeath(EntityDeathEvent event) { + if(!(event.getEntity() instanceof Player)) return; + + Player killer = event.getEntity().getKiller(); + + if(killer == null) return; + + applyCooldown(killer); + + killer.sendMessage(Color.translate("&a[No Clean] Your No Clean invincibility has been added.")); + } + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(event.isCancelled()) return; + + if(!(event.getEntity() instanceof Player)) return; + if(!(event.getDamager() instanceof Player)) return; + + Player target = (Player) event.getEntity(); + Player damager = (Player) event.getDamager(); + + if(isActive(target)) { + damager.sendMessage(Color.translate("&c[No Clean] That player has No Clean invincibility.")); + event.setCancelled(true); + return; + } + + if(isActive(damager)) { + removeCooldown(damager); + damager.sendMessage(Color.translate("&c[No Clean] Your No Clean invincibility has been removed.")); + } + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + if(event.isCancelled()) return; + + if(!(event.getEntity() instanceof Player)) return; + + Player player = (Player) event.getEntity(); + + if(isActive(player)) event.setCancelled(true); + } + + public static void applyCooldown(Player player) { + noClean.put(player.getUniqueId(), System.currentTimeMillis() + (30 * 1000)); + } + + public static boolean isActive(Player player) { + return noClean.containsKey(player.getUniqueId()) && System.currentTimeMillis() < noClean.get(player.getUniqueId()); + } + + public static void removeCooldown(Player player) { + noClean.remove(player.getUniqueId()); + } + + public static long getMillisecondsLeft(Player player) { + if(noClean.containsKey(player.getUniqueId())) { + return Math.max(noClean.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + return 0L; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/RodlessScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/RodlessScenario.java new file mode 100644 index 0000000..bae142a --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/RodlessScenario.java @@ -0,0 +1,50 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.CraftItemEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 11.06.2018. + */ +public class RodlessScenario extends Scenario implements Listener { + + public RodlessScenario() { + super("Rodless", Material.FISHING_ROD, "Fishing Rods can't be crafted/used!"); + } + + @EventHandler + public void onCraftItem(CraftItemEvent event) { + Player player = (Player) event.getView().getPlayer(); + + if(event.getRecipe().getResult().getType() != Material.FISHING_ROD) return; + + event.getInventory().setResult(new ItemStack(Material.AIR)); + + player.sendMessage(Color.translate("&cYou can't craft fishing rods while &lRodless&c scenario is active.")); + + event.setCancelled(true); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + ItemStack item = event.getItem(); + + if(item == null) return; + + if(item.getType() != Material.FISHING_ROD) return; + + player.setItemInHand(null); + player.updateInventory(); + + player.sendMessage(Color.translate("&cYou can't use fishing rods while &lRodless&c scenario is active.")); + } + +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/scenario/type/TimeBombScenario.java b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/TimeBombScenario.java new file mode 100644 index 0000000..c30ada8 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/scenario/type/TimeBombScenario.java @@ -0,0 +1,158 @@ +package secondlife.network.meetupgame.scenario.type; + +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.World; +import org.bukkit.block.Block; +import org.bukkit.block.Chest; +import org.bukkit.block.Skull; +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.ItemStack; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.UHC; +import secondlife.network.meetupgame.handlers.UHCHandler; +import secondlife.network.meetupgame.handlers.data.UHCPlayer; +import secondlife.network.meetupgame.scenario.Scenario; +import secondlife.network.meetupgame.scenario.ScenarioHandler; +import secondlife.network.meetupgame.utilties.UHCUtils; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.holograms.Hologram; +import secondlife.network.vituz.utilties.holograms.HologramAPI; + +/** + * Created by Marko on 11.06.2018. + */ +public class TimeBombScenario extends Scenario implements Listener { + + public static boolean clearDrops = false; + + public TimeBombScenario() { + super("Time Bomb", Material.TNT, "When player dies,", "their loot will drop into a chest!", "After 30s, the chest will explode!"); + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + if(UHCHandler.started) { + Player victim = event.getEntity(); + + if(clearDrops) { + event.getDrops().clear(); + } else { + if(ScenarioHandler.getScenario("BareBones").isEnabled()) { + event.getDrops().add(new ItemStack(Material.GOLDEN_APPLE, 2)); + event.getDrops().add(new ItemStack(Material.DIAMOND)); + event.getDrops().add(new ItemStack(Material.ARROW, 32)); + event.getDrops().add(new ItemStack(Material.STRING, 2)); + } + + this.spawnHead(victim); + } + } + } + + public static void onDeath(Player victim, UHCPlayer uhcplayer, Location where, World world) { + if(ScenarioHandler.getScenario("Time Bomb").isEnabled()) { + clearDrops = true; + + where.getBlock().setType(Material.CHEST); + Chest chest = (Chest) where.getBlock().getState(); + + where.add(1, 0, 0).getBlock().setType(Material.CHEST); + where.add(0, 1, 0).getBlock().setType(Material.AIR); + where.add(1, 1, 0).getBlock().setType(Material.AIR); + + chest.getInventory().addItem(UHCUtils.getGoldenHead()); + chest.getInventory().addItem(uhcplayer.getArmor()); + + for(ItemStack itemStack : uhcplayer.getItems()) { + if(itemStack == null || itemStack.getType() == Material.AIR) { + continue; + } + + chest.getInventory().addItem(itemStack); + } + + Hologram hologram = HologramAPI.createHologram(chest.getLocation().clone().add(0.5, 1, 0), Color.translate("&a31s")); + + hologram.spawn(); + + new BukkitRunnable() { + private int time = 31; + + public void run() { + time--; + + if(time == 0) { + hologram.despawn(); + + this.cancel(); + return; + } else if(time == 1) { + hologram.setText(Color.translate("&4" + time + "s")); + } else if(time == 2) { + hologram.setText(Color.translate("&c" + time + "s")); + } else if(time == 3) { + hologram.setText(Color.translate("&6" + time + "s")); + } else if(time <= 15) { + hologram.setText(Color.translate("&e" + time + "s")); + } else { + hologram.setText(Color.translate("&a" + time + "s")); + } + } + }.runTaskTimer(UHC.getInstance(), 0L, 20L); + + String name = victim.getName(); + + new BukkitRunnable() { + public void run() { + + if((where.getBlockX() < 101 && where.getBlockZ() < 101) + || (where.getBlockX() < -101 && where.getBlockZ() < -101) + || (where.getBlockX() < 101 && where.getBlockZ() < -101) + || (where.getBlockX() < -101 && where.getBlockZ() < 101)) { + for(int x = where.getBlockX() - 3; x < where.getBlockX() + 3; x++) { + for(int y = where.getBlockY() - 3; y < where.getBlockY() + 3; y++) { + for(int z = where.getBlockZ() - 3; z < where.getBlockZ() + 3; z++) { + Location location = new Location(world, x, y, z); + if(location.getBlock().getType() == Material.CHEST) { + location.getBlock().setType(Material.AIR); + } + } + } + } + + Msg.sendMessage(Color.translate("&8[&6&lTimeBomb&8] &f" + name + "'s &ecorpse has exploded!")); + + where.getWorld().createExplosion(where.getBlockX() + 0.5D, where.getBlockY() + 1, where.getBlockZ() + 0.5D, 10.0F, false, false); + where.getWorld().strikeLightning(where); + } else { + where.getBlock().setType(Material.AIR); + + Msg.sendMessage(Color.translate("&8[&6&lTimeBomb&8] &f" + name + "'s &ecorpse has exploded!")); + + where.getWorld().createExplosion(where.getBlockX() + 0.5D, where.getBlockY() + 1, where.getBlockZ() + 0.5D, 10.0F, false, true); + where.getWorld().strikeLightning(where); + } + } + }.runTaskLater(UHC.getInstance(), 600L); + } + } + + private void spawnHead(Player player) { + player.getLocation().getBlock().setType(Material.FENCE); + player.getWorld().getBlockAt(player.getLocation().add(0.0D, 1.0D, 0.0D)).setType(Material.SKULL); + + Skull skull = (Skull) player.getLocation().add(0.0D, 1.0D, 0.0D).getBlock().getState(); + + skull.setOwner(player.getName()); + skull.update(); + + Block block = player.getLocation().add(0.0D, 1.0D, 0.0D).getBlock(); + block.setData((byte) 1); + } + +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/state/GameState.java b/MeetupGame/src/secondlife/network/meetupgame/state/GameState.java new file mode 100644 index 0000000..58cee11 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/state/GameState.java @@ -0,0 +1,9 @@ +package secondlife.network.meetupgame.state; + +/** + * Created by Marko on 11.06.2018. + */ +public enum GameState { + + VOTING, WAITING, PLAYING, WINNER; +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/state/PlayerState.java b/MeetupGame/src/secondlife/network/meetupgame/state/PlayerState.java new file mode 100644 index 0000000..08d3b0c --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/state/PlayerState.java @@ -0,0 +1,9 @@ +package secondlife.network.meetupgame.state; + +/** + * Created by Marko on 11.06.2018. + */ +public enum PlayerState { + + WAITING, SPECTATING, PLAYING; +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/tasks/GameTask.java b/MeetupGame/src/secondlife/network/meetupgame/tasks/GameTask.java new file mode 100644 index 0000000..93cdc5e --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/tasks/GameTask.java @@ -0,0 +1,55 @@ +package secondlife.network.meetupgame.tasks; + +import org.bukkit.Bukkit; +import org.bukkit.Sound; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.meetupgame.player.PlayerData; +import secondlife.network.meetupgame.state.GameState; +import secondlife.network.meetupgame.state.PlayerState; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.ServerUtils; + +import java.util.Arrays; + +/** + * Created by Marko on 11.06.2018. + */ +public class GameTask extends BukkitRunnable { + + private MeetupGame plugin = MeetupGame.getInstance(); + public static int seconds = 0; + + public GameTask() { + runTaskTimer(MeetupGame.getInstance(), 20L, 20L); + } + + @Override + public void run() { + // 1500 = 25min + if(seconds > 1500) { + for(Player player : Bukkit.getOnlinePlayers()) { + ServerUtils.sendToServer(player, "Minigames"); + } + + cancel(); + return; + } + + seconds++; + + if(plugin.getGameManager().getAlivePlayers() == 1) { + for(PlayerData data : PlayerData.getPlayerDatas()) { + if(data.getPlayerState().equals(PlayerState.PLAYING)) { + data.setWins(data.getWins() + 1); + + plugin.getGameManager().setGameState(GameState.WINNER); + plugin.getGameManager().setWinner(data.getName()); + + new WinTask(); + } + } + } + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/tasks/StartingTask.java b/MeetupGame/src/secondlife/network/meetupgame/tasks/StartingTask.java new file mode 100644 index 0000000..25075ed --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/tasks/StartingTask.java @@ -0,0 +1,42 @@ +package secondlife.network.meetupgame.tasks; + +import org.bukkit.Bukkit; +import org.bukkit.Sound; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.vituz.utilties.Msg; + +import java.util.Arrays; + +/** + * Created by Marko on 12.06.2018. + */ +public class StartingTask extends BukkitRunnable { + + public static int seconds = 30; + private MeetupGame plugin = MeetupGame.getInstance(); + + public StartingTask() { + runTaskTimerAsynchronously(MeetupGame.getInstance(), 20L, 20L); + } + + @Override + public void run() { + if(seconds < 0) { + plugin.getGameManager().startGame(); + cancel(); + return; + } + + if(Arrays.asList(30, 25, 20, 15, 10, 5, 4, 3, 2, 1).contains(seconds)) { + Msg.sendMessage("&eThe game will begin in &d" + seconds + " second" + (seconds > 1 ? "s" : "") + "&e."); + + for(Player player : Bukkit.getOnlinePlayers()) { + player.playSound(player.getLocation(), Sound.ORB_PICKUP, 1F, 1F); + } + } + + seconds--; + } +} \ No newline at end of file diff --git a/MeetupGame/src/secondlife/network/meetupgame/tasks/VoteTask.java b/MeetupGame/src/secondlife/network/meetupgame/tasks/VoteTask.java new file mode 100644 index 0000000..b2fa9eb --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/tasks/VoteTask.java @@ -0,0 +1,44 @@ +package secondlife.network.meetupgame.tasks; + +import org.bukkit.Bukkit; +import org.bukkit.Sound; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.vituz.utilties.Msg; + +import java.util.Arrays; + +/** + * Created by Marko on 11.06.2018. + */ +public class VoteTask extends BukkitRunnable { + + private MeetupGame plugin = MeetupGame.getInstance(); + public static int seconds = 30; + + public VoteTask() { + runTaskTimerAsynchronously(MeetupGame.getInstance(), 20L, 20L); + } + + @Override + public void run() { + if(seconds < 0) { + new StartingTask(); + cancel(); + return; + } + + if(Arrays.asList(30, 25, 20, 15, 10, 5, 4, 3, 2, 1).contains(seconds)) { + Msg.sendMessage("&eVoting ends in &d" + seconds + " second" + (seconds > 1 ? "s" : "") + "&e."); + + for(Player player : Bukkit.getOnlinePlayers()) { + player.playSound(player.getLocation(), Sound.ORB_PICKUP, 1F, 1F); + } + } + + plugin.getInventoryManager().updateVoteInventory(); + + seconds--; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/tasks/WinTask.java b/MeetupGame/src/secondlife/network/meetupgame/tasks/WinTask.java new file mode 100644 index 0000000..c2af710 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/tasks/WinTask.java @@ -0,0 +1,45 @@ +package secondlife.network.meetupgame.tasks; + +import org.bukkit.Bukkit; +import org.bukkit.Sound; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetupgame.MeetupGame; +import secondlife.network.vituz.utilties.Msg; +import secondlife.network.vituz.utilties.ServerUtils; + +import java.util.Arrays; + +/** + * Created by Marko on 13.06.2018. + */ +public class WinTask extends BukkitRunnable { + + public static int seconds = 10; + + public WinTask() { + runTaskTimer(MeetupGame.getInstance(), 20L, 20L); + } + + @Override + public void run() { + if(seconds < 0) { + for(Player player : Bukkit.getOnlinePlayers()) { + ServerUtils.sendToServer(player, "Minigames"); + } + + cancel(); + return; + } + + if(Arrays.asList(10, 5, 4, 3, 2, 1).contains(seconds)) { + Msg.sendMessage("&eThe game ends in &d" + seconds + " second" + (seconds > 1 ? "s" : "") + "&e."); + + for(Player player : Bukkit.getOnlinePlayers()) { + player.playSound(player.getLocation(), Sound.ORB_PICKUP, 1F, 1F); + } + } + + seconds--; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/utilities/Manager.java b/MeetupGame/src/secondlife/network/meetupgame/utilities/Manager.java new file mode 100644 index 0000000..6f7f369 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/utilities/Manager.java @@ -0,0 +1,16 @@ +package secondlife.network.meetupgame.utilities; + +import lombok.Getter; +import secondlife.network.meetupgame.MeetupGame; + +/** + * Created by Marko on 11.06.2018. + */ +public class Manager { + + @Getter protected MeetupGame plugin; + + public Manager(MeetupGame plugin) { + this.plugin = plugin; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/utilities/MeetupUtils.java b/MeetupGame/src/secondlife/network/meetupgame/utilities/MeetupUtils.java new file mode 100644 index 0000000..cf77417 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/utilities/MeetupUtils.java @@ -0,0 +1,23 @@ +package secondlife.network.meetupgame.utilities; + +import org.bukkit.entity.Player; +import secondlife.network.meetupgame.player.PlayerData; +import secondlife.network.meetupgame.state.PlayerState; + +/** + * Created by Marko on 12.06.2018. + */ +public class MeetupUtils { + + public static boolean isState(Player player) { + PlayerData data = PlayerData.getByPlayer(player); + + if(data == null) return false; + + if(!data.getPlayerState().equals(PlayerState.PLAYING)) { + return false; + } + + return true; + } +} diff --git a/MeetupGame/src/secondlife/network/meetupgame/utilities/database/MeetupDatabase.java b/MeetupGame/src/secondlife/network/meetupgame/utilities/database/MeetupDatabase.java new file mode 100644 index 0000000..6638228 --- /dev/null +++ b/MeetupGame/src/secondlife/network/meetupgame/utilities/database/MeetupDatabase.java @@ -0,0 +1,56 @@ +package secondlife.network.meetupgame.utilities.database; + +import com.mongodb.MongoClient; +import com.mongodb.MongoClientURI; +import com.mongodb.MongoCredential; +import com.mongodb.ServerAddress; +import com.mongodb.client.MongoCollection; +import com.mongodb.client.MongoDatabase; +import org.bukkit.configuration.file.FileConfiguration; +import secondlife.network.meetupgame.MeetupGame; + +import java.util.Arrays; + +/** + * Created by Marko on 11.06.2018. + */ +public class MeetupDatabase { + + public static MongoClient client; + public static MongoDatabase meetupDatabase; + public static MongoCollection profiles; + public static boolean devMode; + + public MeetupDatabase() { + devMode = false; + + FileConfiguration config = MeetupGame.getInstance().getMainConfig().getConfiguration(); + + if(devMode) { + String url = "mongodb://VISUAL:kurac@cluster0-shard-00-00-ishpi.mongodb.net:27017,cluster0-shard-00-01-ishpi.mongodb.net:27017,cluster0-shard-00-02-ishpi.mongodb.net:27017/admin?replicaSet=Cluster0-shard-0&ssl=true"; + + MongoClientURI uri = new MongoClientURI(url); + + client = new MongoClient(uri); + } else { + if(config.getBoolean("DATABASE.AUTHENTICATION.ENABLED")) { + client = new MongoClient( + new ServerAddress( + config.getString("DATABASE.HOST"), + config.getInt("DATABASE.PORT")), + Arrays.asList(MongoCredential.createCredential( + config.getString("DATABASE.AUTHENTICATION.USER"), + config.getString("DATABASE.AUTHENTICATION.DATABASE"), + config.getString("DATABASE.AUTHENTICATION.PASSWORD").toCharArray()))); + } else { + client = new MongoClient(new ServerAddress( + config.getString("DATABASE.HOST"), + config.getInt("DATABASE.PORT"))); + } + } + + // uhcmeetup + meetupDatabase = client.getDatabase("uhcmeetup"); + profiles = meetupDatabase.getCollection("profiles"); + } +} diff --git a/MeetupLobby/src/config.yml b/MeetupLobby/src/config.yml new file mode 100644 index 0000000..52d5404 --- /dev/null +++ b/MeetupLobby/src/config.yml @@ -0,0 +1,5 @@ +REDIS: + HOST: localhost + AUTHENTICATE: false + PASSWORD: password + PORT: 6379 \ No newline at end of file diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/MeetupLobby.java b/MeetupLobby/src/secondlife/network/meetuplobby/MeetupLobby.java new file mode 100644 index 0000000..8b6816b --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/MeetupLobby.java @@ -0,0 +1,121 @@ +package secondlife.network.meetuplobby; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.plugin.java.JavaPlugin; +import redis.clients.jedis.JedisPubSub; +import secondlife.network.meetuplobby.jedis.JedisController; +import secondlife.network.meetuplobby.jedis.JedisPublisher; +import secondlife.network.meetuplobby.jedis.JedisSubscriber; +import secondlife.network.meetuplobby.managers.InventoryManager; +import secondlife.network.meetuplobby.managers.QueueManager; +import secondlife.network.meetuplobby.party.PartyManager; +import secondlife.network.meetuplobby.queue.QueueAction; +import secondlife.network.vituz.utilties.config.ConfigFile; + +import java.util.UUID; + +/** + * Created by Marko on 10.06.2018. + */ + +@Getter +public class MeetupLobby extends JavaPlugin { + + @Getter private static MeetupLobby instance; + + private JedisController controller; + private JedisPublisher publisher; + private JedisSubscriber subscriber; + + private InventoryManager inventoryManager; + private PartyManager partyManager; + private QueueManager queueManager; + private RequestManager requestManager; + + private ConfigFile mainConfig; + + @Override + public void onEnable() { + instance = this; + + mainConfig = new ConfigFile(this, "config.yml"); + + setupRedis(); + } + + @Override + public void onDisable() { + + } + + private void setupRedis() { + this.controller = new JedisController(mainConfig.getString("REDIS.HOST"), mainConfig.getBoolean("REDIS.AUTHENTICATE") ? mainConfig.getString("REDIS.PASSWORD") : null, mainConfig.getInt("REDIS.PORT")); + this.publisher = new JedisPublisher(this.controller, "meetup-lobby-to-proxy"); + this.subscriber = new JedisSubscriber(this.controller, "meetup-lobby-to-bukkit") { + @Override + public JedisPubSub getConnection() { + return new JedisPubSub() { + @Override + public void onMessage(String channel, String message) { + JsonObject object = new JsonParser().parse(message).getAsJsonObject(); + JsonObject payload = object.get("payload").getAsJsonObject(); + QueueAction action = QueueAction.valueOf(object.get("action").getAsString()); + + if(action == QueueAction.ADDED_PLAYER) { + JsonObject playerJson = payload.get("player").getAsJsonObject(); + + Player player = Bukkit.getPlayer(UUID.fromString(playerJson.get("uuid").getAsString())); + + if(player != null && player.isOnline()) { + queueManager.addToQueue(player, true); + } + } else if(action == QueueAction.REMOVED_PLAYER) { + JsonObject playerJson = payload.get("player").getAsJsonObject(); + + Player player = Bukkit.getPlayer(UUID.fromString(playerJson.get("uuid").getAsString())); + + if(player != null && player.isOnline()) { + queueManager.removeFromQueue(player, true); + } + } else if(action == QueueAction.ADDED_PARTY) { + JsonObject partyJson = payload.get("party").getAsJsonObject(); + UUID leader = UUID.fromString(partyJson.get("leader").getAsString()); + + Player player = Bukkit.getPlayer(leader); + + if(player != null && player.isOnline()) { + queueManager.addToQueue(player, false); + } + } else if (action == QueueAction.REMOVED_PARTY) { + JsonObject partyJson = payload.get("party").getAsJsonObject(); + UUID leader = UUID.fromString(partyJson.get("leader").getAsString()); + + Player player = Bukkit.getPlayer(leader); + + if(player != null && player.isOnline()) { + queueManager.removeFromQueue(player, false); + } else { + JsonArray playersJson = partyJson.get("players").getAsJsonArray(); + + for(int i = 0; i < playersJson.size(); i++) { + JsonObject playerJson = playersJson.get(i).getAsJsonObject(); + + Player partyPlayer = Bukkit.getPlayer(UUID.fromString(playerJson.get("uuid").getAsString())); + + if (partyPlayer != null && partyPlayer.isOnline()) { + queueManager.removeFromQueue(partyPlayer, false); + } + } + } + } + } + }; + } + }; + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisController.java b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisController.java new file mode 100644 index 0000000..ea1e33d --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisController.java @@ -0,0 +1,28 @@ +package secondlife.network.meetuplobby.jedis; + +import lombok.Getter; +import redis.clients.jedis.JedisPool; + +public class JedisController { + + @Getter private final String address; + @Getter private final String password; + @Getter private final int port; + @Getter private final JedisPool pool; + + public JedisController(String address, String password, int port) { + this.address = address; + this.password = password; + this.port = port; + this.pool = new JedisPool(address, port); + } + + public JedisController(String address) { + this(address, null, 6379); + } + + public boolean hasPassword() { + return password != null; + } + +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisListener.java b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisListener.java new file mode 100644 index 0000000..eed6e76 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisListener.java @@ -0,0 +1,47 @@ +package secondlife.network.meetuplobby.jedis; + +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import redis.clients.jedis.Jedis; + +import java.util.List; + +public abstract class JedisListener { + + public abstract void respond(String channel, JsonObject data); + + private final JedisController controller; + private final String channel; + + protected JedisListener(JedisController controller, String channel) { + this.controller = controller; + this.channel = channel; + + listen(); + } + + private void listen() { + new Thread() { + @Override + public void run() { + while(true) { + Jedis jedis = null; + try { + jedis = controller.getPool().getResource(); + + if (controller.hasPassword()) { + jedis.auth(controller.getPassword()); + } + + List messages = jedis.blpop(0, channel); + respond(messages.get(0), new JsonParser().parse(messages.get(1)).getAsJsonObject()); + } finally { + if (jedis != null) { + jedis.close(); + } + } + } + } + }.start(); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisPublisher.java b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisPublisher.java new file mode 100644 index 0000000..3e641ad --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisPublisher.java @@ -0,0 +1,41 @@ +package secondlife.network.meetuplobby.jedis; + +import redis.clients.jedis.Jedis; + +public class JedisPublisher { + + private final JedisController controller; + private final String channel; + private final boolean urgent; + + public JedisPublisher(JedisController controller, String channel, boolean urgent) { + this.controller = controller; + this.channel = channel; + this.urgent = urgent; + } + + public JedisPublisher(JedisController controller, String channel) { + this(controller, channel, false); + } + + public void write(String message) { + Jedis jedis = null; + try { + jedis = controller.getPool().getResource(); + + if (controller.hasPassword()) { + jedis.auth(controller.getPassword()); + } + + if (urgent) { + jedis.rpush(channel, message); + } else { + jedis.publish(channel, message); + } + } finally { + if (jedis != null) { + jedis.close(); + } + } + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisSubscriber.java b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisSubscriber.java new file mode 100644 index 0000000..93dd88e --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/jedis/JedisSubscriber.java @@ -0,0 +1,48 @@ +package secondlife.network.meetuplobby.jedis; + +import lombok.Getter; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.JedisPubSub; + +public abstract class JedisSubscriber { + + public abstract JedisPubSub getConnection(); + + private final JedisController controller; + private final String channel; + private final Jedis jedis; + @Getter private JedisPubSub savedConnection; + + protected JedisSubscriber(JedisController controller, String channel) { + this.controller = controller; + this.channel = channel; + this.jedis = new Jedis(controller.getAddress(), controller.getPort()); + + authenticate(); + connect(); + } + + public void close() { + if (savedConnection != null) { + savedConnection.unsubscribe(); + } + } + + private void authenticate() { + if (controller.hasPassword()) { + jedis.auth(controller.getPassword()); + } + } + + private void connect() { + savedConnection = getConnection(); + new Thread() { + @Override + public void run() { + if (savedConnection != null) { + jedis.subscribe(savedConnection, channel); + } + } + }.start(); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/layouts/ScoreboardLayout.java b/MeetupLobby/src/secondlife/network/meetuplobby/layouts/ScoreboardLayout.java new file mode 100644 index 0000000..74caf1c --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/layouts/ScoreboardLayout.java @@ -0,0 +1,56 @@ +package secondlife.network.meetuplobby.layouts; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import secondlife.network.meetuplobby.MeetupLobby; +import secondlife.network.vituz.scoreboard.ScoreGetter; +import secondlife.network.vituz.scoreboard.ScoreboardConfiguration; +import secondlife.network.vituz.scoreboard.TitleGetter; +import secondlife.network.vituz.utilties.Color; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 11.06.2018. + */ +public class ScoreboardLayout implements ScoreGetter { + + private MeetupLobby plugin = MeetupLobby.getInstance(); + + public static ScoreboardConfiguration create() { + ScoreboardConfiguration sc = new ScoreboardConfiguration(); + + sc.setTitleGetter(new TitleGetter("§5§lSecondLife")); + sc.setScoreGetter(new ScoreboardLayout()); + + return sc; + } + + @Override + public String[] getScores(Player player) { + List board = new ArrayList<>(); + add(board, "&7&m----------------------"); + + int soloQueue = plugin.getQueueManager().getSoloQueue().size(); + int duoQueue = plugin.getQueueManager().getDuoQueue().size(); + int inLobby = Bukkit.getOnlinePlayers().size() - (soloQueue + duoQueue); + + add(board, "&fIn Lobby: &d" + inLobby); + add(board, "&fSolo Queue: &d" + soloQueue); + add(board, "&fDuo Queue: &d" + duoQueue); + if(plugin.getQueueManager().isInQueue(player)) { + add(board, ""); + add(board, "&a&o&lQueued for game..."); + } + add(board, ""); + add(board, "&dsecondlife.network"); + add(board, "&9&7&m----------------------"); + + return board.toArray(new String[] {}); + } + + private void add(List list, String text) { + list.add(Color.translate(text)); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/listeners/InventoryListener.java b/MeetupLobby/src/secondlife/network/meetuplobby/listeners/InventoryListener.java new file mode 100644 index 0000000..ed5f4d4 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/listeners/InventoryListener.java @@ -0,0 +1,40 @@ +package secondlife.network.meetuplobby.listeners; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import secondlife.network.meetuplobby.MeetupLobby; + +/** + * Created by Marko on 10.06.2018. + */ +public class InventoryListener { + + private MeetupLobby plugin = MeetupLobby.getInstance(); + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + Player player = (Player) event.getWhoClicked(); + Inventory inventory = event.getClickedInventory(); + + ItemStack stack = event.getCurrentItem(); + + if(event.getCurrentItem() == null || event.getCurrentItem().getType() == Material.AIR || !event.getCurrentItem().hasItemMeta()) return; + if(event.getCurrentItem().getItemMeta() == null) return; + + if(inventory != null) { + if(inventory.getTitle().equals(plugin.getInventoryManager().getInventory().getTitle())) { + event.setCancelled(true); + + if(stack.getItemMeta().getDisplayName().contains("Solos") || stack.getItemMeta().getDisplayName().contains("Duos")) { + String name = stack.getItemMeta().getDisplayName(); + + plugin.getQueueManager().addToQueue(player, name.contains("Solos") ? true : false); + } + } + } + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/listeners/PlayerListener.java b/MeetupLobby/src/secondlife/network/meetuplobby/listeners/PlayerListener.java new file mode 100644 index 0000000..c70627c --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/listeners/PlayerListener.java @@ -0,0 +1,153 @@ +package secondlife.network.meetuplobby.listeners; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.block.*; +import org.bukkit.event.entity.CreatureSpawnEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.entity.FoodLevelChangeEvent; +import org.bukkit.event.inventory.InventoryAction; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryMoveItemEvent; +import org.bukkit.event.inventory.InventoryType; +import org.bukkit.event.player.PlayerDropItemEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.event.weather.WeatherChangeEvent; +import secondlife.network.meetuplobby.MeetupLobby; +import secondlife.network.meetuplobby.utilities.OfflinePlayer; +import secondlife.network.meetuplobby.party.Party; +import secondlife.network.meetuplobby.utilities.MeetupUtils; +import secondlife.network.vituz.utilties.Color; + +import java.util.Iterator; + +/** + * Created by Marko on 10.06.2018. + */ +public class PlayerListener { + + private MeetupLobby plugin = MeetupLobby.getInstance(); + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + + MeetupUtils.resetPlayer(player); + + plugin.getInventoryManager().loadInventory(player); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + Player player = event.getPlayer(); + + Party party = plugin.getPartyManager().getByUuid(player.getUniqueId()); + + if(party != null) { + if (party.getLeader().equals(player.getUniqueId())) { + plugin.getPartyManager().getParties().remove(party.getLeader()); + + for(Player partyPlayer : plugin.getPartyManager().getPlayersFromParty(party)) { + partyPlayer.sendMessage(Color.translate( "&eThe party has been disbanded.")); + } + } else { + Iterator iterator = party.getPlayers().iterator(); + + while(iterator.hasNext()) { + OfflinePlayer offlinePlayer = iterator.next(); + + if(offlinePlayer.getUuid().equals(player.getUniqueId())) { + iterator.remove(); + break; + } + } + + for(Player partyPlayer : plugin.getPartyManager().getPlayersFromParty(party)) { + partyPlayer.sendMessage(Color.translate( "&d" + player.getName() + " &ehas left the party.")); + } + } + } + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + if(event.getPlayer().isOp()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + if(event.getPlayer().isOp()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onClick(InventoryClickEvent event) { + InventoryAction action = event.getAction(); + + if(action == InventoryAction.HOTBAR_SWAP || action == InventoryAction.SWAP_WITH_CURSOR) { + event.setCancelled(true); + } + + if(event.getSlotType() == InventoryType.SlotType.OUTSIDE) return; + if(event.getCurrentItem().getType() == Material.AIR) return; + + if((event.getCurrentItem().getType() == Material.INK_SACK) || (event.getCurrentItem().getType() == Material.WATCH) || (event.getCurrentItem().getType() == Material.STAINED_GLASS_PANE)) event.setCancelled(true); + } + + @EventHandler + public void onBlockFade(BlockFadeEvent event) { + if(event.getBlock().getType() != Material.ICE + || event.getBlock().getType() != Material.SNOW + || event.getBlock().getType() != Material.SNOW_BLOCK) return; + + event.setCancelled(true); + } + + @EventHandler(priority = EventPriority.HIGHEST) + public void onWeatherChange(WeatherChangeEvent event) { + if(!event.toWeatherState()) return; + + event.setCancelled(true); + } + + @EventHandler + public void onCreatureSpawn(CreatureSpawnEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onPlayerDropItem(PlayerDropItemEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onInventoryMoveItem(InventoryMoveItemEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onBlockBurn(BlockBurnEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onFoodLevelChange(FoodLevelChangeEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + event.setCancelled(true); + } + + @EventHandler + public void onBlockForm(BlockFormEvent event) { + event.setCancelled(true); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/managers/InventoryManager.java b/MeetupLobby/src/secondlife/network/meetuplobby/managers/InventoryManager.java new file mode 100644 index 0000000..a015d7c --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/managers/InventoryManager.java @@ -0,0 +1,45 @@ +package secondlife.network.meetuplobby.managers; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import secondlife.network.meetuplobby.MeetupLobby; +import secondlife.network.meetuplobby.utilities.Manager; +import secondlife.network.vituz.utilties.ItemBuilder; + +/** + * Created by Marko on 10.06.2018. + */ +public class InventoryManager extends Manager { + + public InventoryManager(MeetupLobby plugin) { + super(plugin); + } + + public void loadInventory(Player player) { + if(plugin.getQueueManager().getSoloQueue().contains(player.getUniqueId()) || plugin.getQueueManager().getDuoQueue().contains(player.getUniqueId())) { + player.getInventory().setItem(0, new ItemBuilder(Material.INK_SACK).durability(10).name("&c&lLeave Queue").build()); + player.getInventory().setItem(8, new ItemBuilder(Material.WATCH).name("&b&lSpectate Match").build()); + } else { + player.getInventory().setItem(0, new ItemBuilder(Material.INK_SACK).durability(8).name("&a&lJoin Queue").build()); + player.getInventory().setItem(8, new ItemBuilder(Material.WATCH).name("&b&lSpectate Match").build()); + } + } + + public Inventory getInventory() { + Inventory inventory = Bukkit.createInventory(null, 9, "Select queue"); + + inventory.setItem(2, new ItemBuilder(Material.SKULL_ITEM).name("&cSolos").build()); + inventory.setItem(6, new ItemBuilder(Material.SKULL_ITEM).amount(2).name("&cDuos").build()); + + for(int i = 0; i < inventory.getSize(); i++) { + if(inventory.getItem(i) == null) { + inventory.setItem(i, new ItemBuilder(Material.STAINED_GLASS_PANE).durability(15).build()); + } + } + + return inventory; + } + +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/managers/QueueManager.java b/MeetupLobby/src/secondlife/network/meetuplobby/managers/QueueManager.java new file mode 100644 index 0000000..a7fbc40 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/managers/QueueManager.java @@ -0,0 +1,90 @@ +package secondlife.network.meetuplobby.managers; + +import com.google.gson.JsonObject; +import lombok.Getter; +import org.bukkit.entity.Player; +import secondlife.network.meetuplobby.MeetupLobby; +import secondlife.network.meetuplobby.party.Party; +import secondlife.network.meetuplobby.queue.QueueAction; +import secondlife.network.meetuplobby.utilities.Manager; +import secondlife.network.vituz.utilties.Color; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +/** + * Created by Marko on 10.06.2018. + */ + +@Getter +public class QueueManager extends Manager { + + private List soloQueue = new ArrayList<>(); + private List duoQueue = new ArrayList<>(); + + public QueueManager(MeetupLobby plugin) { + super(plugin); + } + + public void addToQueue(Player player, boolean solo) { + if(solo) { + if(!isInQueue(player)) { + JsonObject object = new JsonObject(); + object.addProperty("action", QueueAction.ADD_PLAYER.name()); + + JsonObject playerJson = new JsonObject(); + playerJson.addProperty("username", player.getName()); + playerJson.addProperty("uuid", player.getUniqueId().toString()); + + JsonObject payload = new JsonObject(); + payload.add("player", playerJson); + + object.add("payload", payload); + + plugin.getPublisher().write(object.toString()); + soloQueue.add(player.getUniqueId()); + } + } else { + Party party = plugin.getPartyManager().getByUuid(player.getUniqueId()); + + if(party.getLeader().equals(player.getUniqueId())) { + JsonObject object = new JsonObject(); + object.addProperty("action", QueueAction.ADD_PARTY.name()); + + JsonObject payload = new JsonObject(); + payload.add("party", party.toJson()); + + object.add("payload", payload); + + Bunkers.getInstance().getPublisher().write(object.toString()); + } else { + player.sendMessage(ChatColor.RED + "You must be the party leader to do that."); + } + } + } + + public void removeFromQueue(Player player, boolean solo) { + if(solo) { + if(soloQueue.contains(player.getUniqueId())) { + soloQueue.remove(player.getUniqueId()); + } + } else { + Party party = plugin.getPartyManager().getByUuid(player.getUniqueId()); + + party.getPlayers().forEach(players -> { + if(duoQueue.contains(players.getUuid())) { + duoQueue.remove(players.getUuid()); + } + }); + } + } + + public boolean isInQueue(Player player) { + if(soloQueue.contains(player.getUniqueId()) || duoQueue.contains(player.getUniqueId())) { + return true; + } + + return false; + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/party/Party.java b/MeetupLobby/src/secondlife/network/meetuplobby/party/Party.java new file mode 100644 index 0000000..c149c52 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/party/Party.java @@ -0,0 +1,63 @@ +package secondlife.network.meetuplobby.party; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import lombok.Getter; +import lombok.Setter; +import secondlife.network.meetuplobby.utilities.OfflinePlayer; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +@Getter +@Setter +public class Party { + + private UUID leader; + private List players; + private List invited; + + public Party() { + this.players = new ArrayList<>(); + this.invited = new ArrayList<>(); + } + + public OfflinePlayer getLeaderPlayer() { + for(OfflinePlayer offlinePlayer : this.players) { + if(offlinePlayer.getUuid().equals(this.leader)) { + return offlinePlayer; + } + } + + return null; + } + + public boolean hasPlayer(UUID uuid) { + for(OfflinePlayer offlinePlayer : this.players) { + if(uuid.equals(this.leader)) { + return true; + } + } + + return false; + } + + public JsonObject toJson() { + JsonObject object = new JsonObject(); + object.addProperty("leader", this.leader.toString()); + + JsonArray players = new JsonArray(); + + for(OfflinePlayer offlinePlayer : this.players) { + JsonObject player = new JsonObject(); + player.addProperty("username", offlinePlayer.getUsername()); + player.addProperty("uuid", offlinePlayer.getUuid().toString()); + players.add(player); + } + + object.add("players", players); + return object; + } + +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/party/PartyManager.java b/MeetupLobby/src/secondlife/network/meetuplobby/party/PartyManager.java new file mode 100644 index 0000000..510ef9f --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/party/PartyManager.java @@ -0,0 +1,49 @@ +package secondlife.network.meetuplobby.party; + +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import secondlife.network.meetuplobby.utilities.OfflinePlayer; + +import java.util.*; + +public class PartyManager { + + @Getter private Map parties; + + public PartyManager() { + this.parties = new HashMap<>(); + } + + public Party getByUuid(UUID uuid) { + if (parties.containsKey(uuid)) { + return parties.get(uuid); + } + else { + for (Party party : this.parties.values()) { + for (OfflinePlayer offlinePlayer : party.getPlayers()) { + if (offlinePlayer.getUuid().equals(uuid)) { + return party; + } + } + } + } + + return null; + } + + public List getPlayersFromParty(Party party) { + List players = new ArrayList<>(); + + for (OfflinePlayer offlinePlayer : party.getPlayers()) { + Player player = Bukkit.getPlayer(offlinePlayer.getUuid()); + + if (player != null && player.isOnline()) { + players.add(player); + } + } + + return players; + } + +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/party/command/PartyCommand.java b/MeetupLobby/src/secondlife/network/meetuplobby/party/command/PartyCommand.java new file mode 100644 index 0000000..5b91978 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/party/command/PartyCommand.java @@ -0,0 +1,233 @@ +package secondlife.network.meetuplobby.party.command; + +import com.google.gson.JsonObject; +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.meetuplobby.MeetupLobby; +import secondlife.network.meetuplobby.party.Party; +import secondlife.network.meetuplobby.queue.QueueAction; +import secondlife.network.meetuplobby.utilities.OfflinePlayer; +import secondlife.network.vituz.utilties.ActionMessage; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Msg; + +import java.util.Arrays; +import java.util.Iterator; + +/** + * Created by Marko on 16.06.2018. + */ +public class PartyCommand extends Command { + + private MeetupLobby plugin = MeetupLobby.getInstance(); + + public PartyCommand() { + super("party"); + + setAliases(Arrays.asList("team", "p", "f", "faction")); + } + + @Override + public boolean execute(CommandSender sender, String s, String[] args) { + if(!(sender instanceof Player)) return false; + + Player player = (Player) sender; + Party party = plugin.getPartyManager().getByUuid(player.getUniqueId()); + + if(args.length < 1) { + sendUsage(player); + } else { + switch(args[0]) { + case "create": { + if(party != null) { + player.sendMessage(Color.translate("&cYou already have a party.")); + return false; + } + + if(plugin.getQueueManager().isInQueue(player)) { + player.sendMessage(Color.translate("&cYou can't create a party while in the queue.")); + return false; + } + + party = new Party(); + party.setLeader(player.getUniqueId()); + party.getPlayers().add(new OfflinePlayer(player.getName(), player.getUniqueId())); + + plugin.getPartyManager().getParties().put(player.getUniqueId(), party); + + player.sendMessage(Color.translate("&eYou have created a new party.")); + break; + } + + case "show": + case "info": { + if(party == null) { + player.sendMessage(Color.translate("&cYou aren't in a party.")); + return false; + } + + Player leader = Bukkit.getPlayer(party.getLeader()); + + StringBuilder players = new StringBuilder(); + + for(OfflinePlayer offlinePlayer : party.getPlayers()) { + players.append(offlinePlayer.getUsername()); + players.append(", "); + } + + players.setLength(players.length() - 2); + + player.sendMessage(Color.translate("&7&m---------------------------------------")); + player.sendMessage(Color.translate("&eParty of &d" + leader.getName())); + player.sendMessage(Color.translate("&ePlayers: &d" + players)); + player.sendMessage(Color.translate("&7&m---------------------------------------")); + } + + case "inv": + case "invite": { + if(args.length < 2) { + sendUsage(player); + return false; + } + + if(!party.getLeader().equals(player.getUniqueId())) { + player.sendMessage(Color.translate("&cYou must be the leader to invite players.")); + return false; + } + + if(plugin.getQueueManager().isInQueue(player)) { + player.sendMessage(Color.translate("&cYou can't invite players to your party while in the queue.")); + return false; + } + + Player other = Bukkit.getPlayer(args[1]); + + if(Msg.checkOffline(sender, args[1])) return false; + + if(party.hasPlayer(other.getUniqueId())) { + player.sendMessage(Color.translate("&cThat player is already in your party.")); + return false; + } + + if(party.getInvited().contains(other.getUniqueId())) { + player.sendMessage(Color.translate("&cThat player has already been invited to your party.")); + return false; + } + + party.getInvited().add(other.getUniqueId()); + + player.sendMessage(Color.translate("&eSuccessfully sent invite to &d" + other.getName() + "&e.")); + + ActionMessage actionMessage = new ActionMessage(); + actionMessage.addText("&eYou have been invited to join &d" + player.getName() + "'s &eparty. Type &a/party join " + player.getName() + " &eor "); + actionMessage.addText("&a&lclick here").setClickEvent(ActionMessage.ClickableType.RunCommand, "/party join " + player.getName()).addHoverText(Color.translate("&aClick this to join!")); + actionMessage.addText(" &eto join."); + actionMessage.sendToPlayer(other); + } + + case "accept": + case "join": { + if(args.length < 2) { + sendUsage(player); + return false; + } + + if(party == null) { + player.sendMessage(Color.translate("&cYou aren't in a party.")); + return false; + } + + if(plugin.getQueueManager().isInQueue(player)) { + player.sendMessage(Color.translate("&cYou can't join that party while in a queue.")); + return false; + } + + Player other = Bukkit.getPlayer(args[1]); + + if(Msg.checkOffline(sender, args[1])) return false; + + Party otherParty = plugin.getPartyManager().getByUuid(other.getUniqueId()); + + if(otherParty == null) { + player.sendMessage(Color.translate("&cThat party doesn't exist.")); + return false; + } + + if(!otherParty.getInvited().contains(player.getUniqueId())) { + player.sendMessage(Color.translate("&cYou have not been invited to that party.")); + return false; + } + + if(otherParty.getPlayers().size() < 2) { + if(plugin.getQueueManager().isInQueue(other)) { + player.sendMessage(Color.translate("&cYou can't join that party while they are in the queue.")); + return false; + } + + otherParty.getInvited().remove(player.getUniqueId()); + otherParty.getPlayers().add(new OfflinePlayer(player.getName(), player.getUniqueId())); + } else { + player.sendMessage(Color.translate("&cThat party is full.")); + } + } + + case "leave": { + if(party == null) { + player.sendMessage(Color.translate("&cYou aren't in a party.")); + return false; + } + + if(party.getLeader().equals(player.getUniqueId())) { + plugin.getPartyManager().getParties().remove(player.getUniqueId()); + } + + Iterator iterator = party.getPlayers().iterator(); + + while(iterator.hasNext()) { + OfflinePlayer offlinePlayer = iterator.next(); + + if(offlinePlayer.getUuid().equals(player.getUniqueId())) { + iterator.remove(); + break; + } + } + + if(plugin.getQueueManager().isInQueue(player)) { + JsonObject object = new JsonObject(); + object.addProperty("action", QueueAction.REMOVE_PARTY.name()); + + JsonObject payload = new JsonObject(); + payload.add("party", party.toJson()); + + object.add("payload", payload); + + plugin.getPublisher().write(object.toString()); + } + + for(Player partyPlayer : plugin.getPartyManager().getPlayersFromParty(party)) { + partyPlayer.sendMessage(Color.translate( "&d" + player.getName() + " &ehas left the party.")); + } + + player.sendMessage(Color.translate("&eYou have left the party.")); + } + } + } + + return false; + } + + public void sendUsage(Player sender) { + sender.sendMessage(Color.translate("&7&m---------------------------------------")); + sender.sendMessage(Color.translate("&9&lParty Help")); + sender.sendMessage(Color.translate("&7&m---------------------------------------")); + sender.sendMessage(Color.translate("&9General Commands:")); + sender.sendMessage(Color.translate("&e/party create &7- Create a new party")); + sender.sendMessage(Color.translate("&e/party info &7- See your party information")); + sender.sendMessage(Color.translate("&e/party invite &7- Invite players to your party")); + sender.sendMessage(Color.translate("&e/party join &7- Join parties")); + sender.sendMessage(Color.translate("&e/party leave &7- Leave parties")); + sender.sendMessage(Color.translate("&7&m---------------------------------------")); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/queue/QueueAction.java b/MeetupLobby/src/secondlife/network/meetuplobby/queue/QueueAction.java new file mode 100644 index 0000000..a2b4c68 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/queue/QueueAction.java @@ -0,0 +1,18 @@ +package secondlife.network.meetuplobby.queue; + +public enum QueueAction { + + REQUEST_INFO, + UPDATE_INFO, + UPDATED_INFO, + ADD_PLAYER, + ADD_PARTY, + ADDED_PLAYER, + ADDED_PARTY, + REMOVE_PLAYER, + REMOVE_PARTY, + REMOVED_PLAYER, + REMOVED_PARTY, + SETUP_TEAMS + +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/tasks/CheckTask.java b/MeetupLobby/src/secondlife/network/meetuplobby/tasks/CheckTask.java new file mode 100644 index 0000000..fe6f970 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/tasks/CheckTask.java @@ -0,0 +1,39 @@ +package secondlife.network.meetuplobby.tasks; + +import org.bukkit.Bukkit; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.meetuplobby.MeetupLobby; + +/** + * Created by Marko on 10.06.2018. + */ +public class CheckTask extends BukkitRunnable { + + private MeetupLobby plugin = MeetupLobby.getInstance(); + + public CheckTask() { + runTaskTimer(plugin, 5L, 5L); + } + + @Override + public void run() { + Bukkit.getOnlinePlayers().forEach(player -> { + if(plugin.getQueueManager().getSoloQueue().contains(player.getUniqueId())) { + if(plugin.getQueueManager().getSoloQueue().size() == 16) { + plugin.getQueueManager().getSoloQueue().remove(player.getUniqueId()); + + + } + } else if(plugin.getQueueManager().getDuoQueue().contains(player.getUniqueId())) { + if(plugin.getQueueManager().getDuoQueue().size() == 32) { + plugin.getQueueManager().getDuoQueue().remove(player.getUniqueId()); + + } + } + }); + } + + public void sendToServer() { + + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/utilities/Manager.java b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/Manager.java new file mode 100644 index 0000000..e66ce05 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/Manager.java @@ -0,0 +1,16 @@ +package secondlife.network.meetuplobby.utilities; + +import lombok.Getter; +import secondlife.network.meetuplobby.MeetupLobby; + +/** + * Created by Marko on 10.06.2018. + */ +public class Manager { + + @Getter protected MeetupLobby plugin; + + public Manager(MeetupLobby plugin) { + this.plugin = plugin; + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/utilities/MeetupUtils.java b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/MeetupUtils.java new file mode 100644 index 0000000..d77b8ff --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/MeetupUtils.java @@ -0,0 +1,24 @@ +package secondlife.network.meetuplobby.utilities; + +import org.bukkit.GameMode; +import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer; +import org.bukkit.entity.Player; +import org.bukkit.potion.PotionEffect; + +/** + * Created by Marko on 10.06.2018. + */ +public class MeetupUtils { + + public static void resetPlayer(Player player) { + player.setCanPickupItems(false); + player.getInventory().clear(); + player.getInventory().setArmorContents(null); + player.setHealth(20.0); + player.setFoodLevel(20); + player.setFireTicks(1); + player.getActivePotionEffects().stream().map(PotionEffect::getType).forEach(player::removePotionEffect); + ((CraftPlayer) player).getHandle().getDataWatcher().watch(9, (byte) 0); player.getInventory().setHeldItemSlot(3); + player.setGameMode(GameMode.ADVENTURE); + } +} diff --git a/MeetupLobby/src/secondlife/network/meetuplobby/utilities/OfflinePlayer.java b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/OfflinePlayer.java new file mode 100644 index 0000000..997adb9 --- /dev/null +++ b/MeetupLobby/src/secondlife/network/meetuplobby/utilities/OfflinePlayer.java @@ -0,0 +1,29 @@ +package secondlife.network.meetuplobby.utilities; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.Setter; + +import java.util.UUID; + +@AllArgsConstructor +@Getter +@Setter +public class OfflinePlayer { + + private String username; + private UUID uuid; + + @Override + public boolean equals(Object object) { + if(object != null && object instanceof OfflinePlayer) { + OfflinePlayer other = (OfflinePlayer) object; + + if(this.username != null && this.uuid != null && other.getUsername() != null && other.getUuid() != null && this.username.equals(other.getUsername()) && this.uuid.equals(other.getUuid())) { + return true; + } + } + + return false; + } +} diff --git a/Overpass/.idea/artifacts/Overpass_jar.xml b/Overpass/.idea/artifacts/Overpass_jar.xml new file mode 100644 index 0000000..eae7ab4 --- /dev/null +++ b/Overpass/.idea/artifacts/Overpass_jar.xml @@ -0,0 +1,8 @@ + + + $USER_HOME$/Desktop/All/Export + + + + + \ No newline at end of file diff --git a/Overpass/.idea/compiler.xml b/Overpass/.idea/compiler.xml new file mode 100644 index 0000000..a1757ae --- /dev/null +++ b/Overpass/.idea/compiler.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Overpass/.idea/misc.xml b/Overpass/.idea/misc.xml new file mode 100644 index 0000000..e208459 --- /dev/null +++ b/Overpass/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Overpass/.idea/modules.xml b/Overpass/.idea/modules.xml new file mode 100644 index 0000000..9f99b04 --- /dev/null +++ b/Overpass/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Overpass/.idea/workspace.xml b/Overpass/.idea/workspace.xml new file mode 100644 index 0000000..be8d1aa --- /dev/null +++ b/Overpass/.idea/workspace.xml @@ -0,0 +1,755 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /register + kickPlayer + you can find + dele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1530111286788 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file://$PROJECT_DIR$/src/secondlife/network/vituz/commands/arguments/staff/NotesCommand.java + 101 + + + + file://$PROJECT_DIR$/src/secondlife/network/vituz/punishments/redis/PunishSubscriber.java + 24 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Vituz:jar + + + + + + + + No facets are configured + + + + + + + + + + + + + + + 1.8 + + + + + + + + Vituz + + + + + + + + 1.8 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Vituz/.project b/Vituz/.project new file mode 100644 index 0000000..51cd6a8 --- /dev/null +++ b/Vituz/.project @@ -0,0 +1,17 @@ + + + SL - Vituz + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Vituz/.settings/org.eclipse.core.resources.prefs b/Vituz/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..4ee83c7 --- /dev/null +++ b/Vituz/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding//src/secondlife/network/vituz/handlers/runnables/RebootRunnable.java=UTF-8 +encoding//src/secondlife/network/vituz/utilties/Msg.java=UTF-8 diff --git a/Vituz/SL - Vituz.iml b/Vituz/SL - Vituz.iml new file mode 100644 index 0000000..0500429 --- /dev/null +++ b/Vituz/SL - Vituz.iml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Vituz/bin/META-INF/MANIFEST.MF b/Vituz/bin/META-INF/MANIFEST.MF new file mode 100644 index 0000000..31ea32f --- /dev/null +++ b/Vituz/bin/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: Vituz + diff --git a/Vituz/bin/config.yml b/Vituz/bin/config.yml new file mode 100644 index 0000000..5ed06cf --- /dev/null +++ b/Vituz/bin/config.yml @@ -0,0 +1,9 @@ +SERVERNAME: "Test" +HEALTH_BAR: false +CRATES: false +DATABASE: + HOST: "127.0.0.1" + AUTHENTICATION: + ENABLED: TRUE + USER: "user" + PASSWORD: "password" \ No newline at end of file diff --git a/Vituz/bin/crates.yml b/Vituz/bin/crates.yml new file mode 100644 index 0000000..3ad1b81 --- /dev/null +++ b/Vituz/bin/crates.yml @@ -0,0 +1 @@ +View/Player Distance, Reboot, \ No newline at end of file diff --git a/Vituz/bin/items.csv b/Vituz/bin/items.csv new file mode 100644 index 0000000..56c277d --- /dev/null +++ b/Vituz/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/Vituz/bin/plugin.yml b/Vituz/bin/plugin.yml new file mode 100644 index 0000000..cabd100 --- /dev/null +++ b/Vituz/bin/plugin.yml @@ -0,0 +1,240 @@ +name: Vituz +main: secondlife.network.vituz.Vituz +version: 1.0 +description: SL Essentials. +author: SecondLife Development Team +depend: [ProtocolLib] +commands: + crate: + description: CrateData Command + aliases: [crates, keys, key] + altview: + description: Altview Command + aliases: [alts, dupeip, alertnateaccountview, av, aw] + ban: + description: Ban Command + blacklist: + description: Blacklist Command + checkpunishments: + description: CheckPunishments Command + aliases: [c] + clearpunishments: + description: ClearPunishments Command + aliases: [cp, clearp, cpunishments] + ipban: + description: IPBan Command + aliases: [banip] + ip: + description: IP Command + kick: + description: Kick Command + mute: + description: Mute Command + aliases: [tmute] + tempban: + description: Tempban Command + aliases: [tban] + unban: + description: Unban Command + aliases: [pardon] + unblacklist: + description: Unblacklist Command + aliases: [unbl] + unipban: + description: Unipban Command + aliases: [unib, unbanip, uib] + grant: + description: Grant Command + grants: + description: Grants Command + aliases: [viewgrants] + rank: + description: Rank Command + aliases: [ranks] + addpermission: + description: AddPermission Command + aliases: [addperm] + listpermissions: + description: ListPermissions Command + aliases: [listperm, permlist] + removepermission: + description: RemovePermission Command + aliases: [removeperm] + unmute: + description: Unmute Command + bungeecommand: + description: Bungee Command + broadcast: + description: Broadcast Command + aliases: [bc] + ignore: + description: Ignore Command + message: + description: Message Command + aliases: [msg, w, tell, whisper, m] + reply: + description: Reply Command + aliases: [r] + socialspy: + description: Socialspy Command + aliases: [spy] + sounds: + description: Sounds Command + aliases: [] + togglechat: + description: ToggleChat Command + aliases: [tc, hidechat, hidechatmessages] + togglepm: + description: TogglePM Command + aliases: [tpm, toggleprivatemessages] + adventure: + description: Adventure Command + aliases: [gma] + creative: + description: Creative Command + aliases: [gmc] + gamemode: + description: Gamemode Command + aliases: [gm] + survival: + description: Survival Command + aliases: [gms] + crate: + description: CrateData Command + aliases: [crates] + clear: + description: Clear Command + aliases: [clearinv, clearinventory, ci] + craft: + description: Craft Command + enchant: + description: Enchant Command + enderchest: + description: Enderchest Command + aliases: [ec] + give: + description: Give Command + giveyourself: + description: GiveYourSelf Command + aliases: [i] + invsee: + description: Invsee Command + aliases: [inv] + more: + description: More Command + aliases: [stack] + rename: + description: Rename Command + repair: + description: Repair Command + aliases: [fix] + back: + description: Repair Command + teleportall: + description: Teleportall Command + aliases: [tpall] + teleport: + description: Teleport Command + aliases: [tp, tele] + teleporthere: + description: Teleporthere Command + aliases: [tphere, telehere, s] + teleportposition: + description: Teleportposition Command + aliases: [tppos, telepos] + top: + description: Top Command + warp: + description: Warp Command + world: + description: World Command + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + day: + description: Day Command + exp: + description: Exp Command + aliases: [setxp] + feed: + description: Feed Command + aliases: [eat] + fly: + description: Fly Command + aliases: [flight] + freeze: + description: Freeze Command + aliases: [portalfreeze, ss] + god: + description: God Command + heal: + description: Heal Command + kickall: + description: Kickall Command + killall: + description: Killall Command + kill: + description: Kill Command + aliases: [slay] + lag: + description: Lag Command + aliases: [mem, gc] + lore: + description: Lore Command + night: + description: Night Command + notes: + description: Notes Command + playerdistance: + description: Playerdistance Command + aliases: [pd] + protocol: + description: Protocol Command + aliases: [checkver, vercheck, checkversion, versioncheck] + playtime: + description: Playtime Command. + aliases: [pt] + settings: + description: Settings Command. + aliases: [options] + reboot: + description: Reboot Command. + spawner: + description: Spawner Command + speed: + description: Speed Command + staffjoin: + description: StaffJoin Command + aliases: [sj] + status: + description: Status Command + aliases: [serverstatus, st] + sun: + description: Sun Command + tasks: + description: Tasks Command + viewdistance: + description: Viewdistance Command + aliases: [vd] + challenge: + description: Challenge Command + aliases: [challenges] + color: + description: Color Command + donate: + description: Donate Command + aliases: [buy, store] + list: + description: List Command + aliases: [who, online, players] + ping: + description: Ping Command + aliases: [pong, latency, ms] + prefix: + description: Prefix Command + aliases: [prefixes, symbols] + seen: + description: Seen Command + teamspeak: + description: TeamSpeak Command + aliases: [ts] \ No newline at end of file diff --git a/Vituz/bin/ranks.yml b/Vituz/bin/ranks.yml new file mode 100644 index 0000000..52014c9 --- /dev/null +++ b/Vituz/bin/ranks.yml @@ -0,0 +1,181 @@ +NORMAL: + NAME: "Normal" + PREFIX: "&d" + DEFAULT: TRUE + PERMISSIONS: + - -bukkit.command.me + - -bukkit.command.bungee + - -bukkit.command.tell + - -essentials.list + - essentials.joinfullserver + - essentials.signs.use.* + - essentials.signs.use.kits + - essentials.signs.use + - essentials.sign.use + - essentials.recipe + - essentials.kits.food + - essentials.msg.url + - -bukkit.command.me + - -bukkit.command.tell + - -bukkit.commands.me + - -minecraft.command.me + - -bukkit.me + - essentials.chat.url + - essentials.kit + - essentials.kits.list + - essentials.kits + - essentials.signs.use.buy + - essentials.signs.use.sell + - essentials.kits.starter + - essentials.msg + - -essentials.me + - essentials.message + - essentials.r + - essentials.reply + - modifyworld.* + - essentials.rules + - essentials.pay + - essentials.balance + - essentials.tell + - essentials.who + - -essentials.afk + - essentials.list + - essentials.helpop +BASIC: + NAME: "Basic" + PREFIX: "&9" + INHERITANCE: + - DEFAULT + PERMISSIONS: + - queue.priority.5 +ELITE: + NAME: "Elite" + PREFIX: "&b" + INHERITANCE: + - DEFAULT + - BASIC + PERMISSIONS: + - queue.priority.4 +SPARTAN: + NAME: "Spartan" + PREFIX: "&e" + INHERITANCE: + - DEFAULT + - ELITE + - BASIC + PERMISSIONS: + - queue.priority.3 +MEDIA: + NAME: "Media" + PREFIX: "&7[&dMedia&7]&d" + INHERITANCE: + - DEFAULT + PERMISSIONS: + - queue.priority.3 +FAMOUS: + NAME: "Famous" + PREFIX: "&7[&dFamous&7]&d" + INHERITANCE: + - DEFAULT + - SPARTAN + - MEDIA + PERMISSIONS: + - queue.priority.3 +HELPER: + NAME: "Helper" + PREFIX: "&7[&3Helper&7]&3" + INHERITANCE: + - DEFAULT + PERMISSIONS: + - ares.mute + - ares.unmute + - ares.tempban + - queue.priority.0 +MODERATOR: + NAME: "Moderator" + PREFIX: "&7[&5Mod&7]&5" + INHERITANCE: + - DEFAULT + - HELPER + PERMISSIONS: + - secondlife.staff +SENIORMOD: + NAME: "Senior Moderator" + PREFIX: "&7[&5Senior Mod&7]&5" + INHERITANCE: + - DEFAULT + - MODERATOR + - HELPER + PERMISSIONS: + - ares.checkpunishments + - essentials.tp.others + - essentials.tphere +ADMIN: + NAME: "Administrator" + PREFIX: "&7[&cAdmin&7]&c" + INHERITANCE: + - DEFAULT + - SENIORMOD + - MODERATOR + - HELPER + PERMISSIONS: + - ares.modmode.admin + - essentials.tphere + - essentials.tp.* + - ares.unban.other + - icarus.rank.view + - essentials.joinfullserver + - essentials.gamemode + - essentials.god + - essentials.invsee +SENIORADMIN: + NAME: "Senior Administrator" + PREFIX: "&7[&cSenior Admin&7]&c" + INHERITANCE: + - DEFAULT + - ADMIN + - SENIORMOD + - MODERATOR + - HELPER + PERMISSIONS: + - icarus.rank.grant + - ares.unblacklist.other +PLATFORMADMIN: + NAME: "Platform Administrator" + PREFIX: "&7[&cPlatform Admin&7]&c" + INHERITANCE: + - DEFAULT + - ADMIN + - SENIORMOD + - MODERATOR + - HELPER + - SENIORADMIN + PERMISSIONS: + - icarus.rank.grant + - ares.unblacklist.other +DEVELOPER: + NAME: "Developer" + PREFIX: "&7[&bDeveloper&7]&b" + INHERITANCE: + - DEFAULT + - SENIORADMIN + - ADMIN + - SENIORMOD + - MODERATOR + - HELPER + PERMISSIONS: + - queue.priority.0 +OWNER: + NAME: "Owner" + PREFIX: "&7[&4Owner&7]&4" + INHERITANCE: + - DEFAULT + - DEVELOPER + - SENIORADMIN + - ADMIN + - SENIORMOD + - MODERATOR + - HELPER + PERMISSIONS: + - "*" + - secondlife.op \ No newline at end of file diff --git a/Vituz/bin/secondlife/network/vituz/Vituz$1.class b/Vituz/bin/secondlife/network/vituz/Vituz$1.class new file mode 100644 index 0000000000000000000000000000000000000000..756a1b3cd83c7a2a4579054643d90724da8ae422 GIT binary patch literal 895 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/VituzAPI.class b/Vituz/bin/secondlife/network/vituz/VituzAPI.class new file mode 100644 index 0000000000000000000000000000000000000000..d006e510d56c742e5fc297c14ce061f8dd6886ae GIT binary patch literal 6374 zcmbVQ349z?9sXX9o!!l(O}0%hDfCQ}w8;{B+LqcRO(8WYv1x;}NSGv(WZKQ{vOAkL zRS*!l6y#8(h={1IC}21Y;SfO-5ET{g`@S!{Q7icUXC}MbG`mgB@0U08-oE#~|Nr}+ zyU)M!=o0`|siGj(;c`FT7Q_{Jdk|ORsvxe$H33|Uclhy6d0ywo_40g|A2(>YF$f(u z1#mOo9mIQZO9|eKTZ1@++x&Q65NmO}4Da{jjvzjOJLQuP25}cY6vT(|ksuD^NDv>z z-F|#bo*$Rto*?eUeKLGP4v%QKKZr%RTqY05+k=Agki2ojCovkt!x)pdM`UNCSp)7~FT>Es7i zEUHjf)f!9mhr3hz_E~n=jM|nx9ClA`nDlaA+__d^Uhabm8fA0=LX%3^VH-XB+Kjlv zf`;dKf>O0peueq@M4}-wENn4sLt%5(@etLy`Aph|ol1sX9_0oy=1V%PlB!HfU1cm?}?T>?py7E9U(oPH4PR0yrv7&COWu-MJ> zTZcgnUsmv2$wng@HG63vzDDSC5sOT7u35>pl=Bv}k}d7y+sYE=U~I^2Hxq+a(skf) z9(SC?@fc{qc-HZ0WYuAN+%t;%X);?Ok5);SD%Z5m_V8J9h{g>_n0P)WAtTf&wB?a8 zUnpebWV=v_ce9&j1hXU6=lHdMV^73OcfpQWD$!$Zb)36&JWbU}Leg<2m=J><%{w}q zcWiHHYu4};9bd(Z8os9E>o`lpH*|ax-_r1H9pAxs>8tg1YwK3)_?}FBGO0gZ$Mi92S5t&}naghuO8Im%*O7~StR|Tq2$9^<(y2b1>QW0CnB?9?ctkj&|I@~q38the^G~@0~ z_X-VpvrN9Ly(^f%7EfUto2Ryx?afU)8n*82s_$CcwOV0m>l6<1{<33F)}PMQpS{F9 zBBY<~)D4ANc2I1$!h>wqoSZ^Wl>RC_o>ZEhj>v0>6so7ZnRPhsv@-(NIP7Lp$*a4f z)%TDYlPGuq`HUlgf zF>JOeQm`6&Y-`ALYL3Ecikb7KJf$jk5al|=qBv!&bS@xgQV8AlVeQGE_sCi~H5Jpa zE*{&6=E1l<>@@$orN@p(EauK-lLhmnd8x#Xu^~$|BoYR1DXOa8!@g~1R(4CbYp&-u z4$F3hxm8WolXrEDcsn+pv3*87Zbs=#wUbG7T%z>KlE~d166H2neO7Hf13KiMZxYch%^=>TWSHgAt zN?eG5R8+nNq^LSi)>S@dK}n;-@pYVq`D8PJ;+lt{?&nJZHgohji{)tGyY6m4Bbqo1 zU<;bLB8N|PKH=_A!59ihxWX?s9Np7%xOXeg^7gLe(*c?{hN28mkbuA`D8l?>z|Qt$ zZoxM1f*ZM0_SUP`nlThV0N-H*LR#w)EO6(3nFly8bLYXs6s)9mxyV)M$h8Q5zAxZ4 zi>TFNgs_CrOF65=3M?ZTHI5LoTp+w2t=wP0^)_s$80T;nMB!0{G_+6Gsoxv0!xL{c zpQ2w$&6ChaQTh<3-QyhI%+V#JE=$7_@A3dTu+zI@51*o8DdnHuy8KxbtC1|}LnH|} z1I1WH+gTu6?~6i&IV3!c=Qi5H6QecTGfvuPbb|t~CCfKzn1(uu=SnWix>j`!P!EQP! zFdHe)X6Mr_BuZwD+pJttQr+@L5H7&EnUdl<{4GSg6&3s)RUCeSd(tzS1i+A!(d9?r zPKHqdy<>kmhKGqLNDI?QNfsfY(ERUk#QQXmiTkgmnwcHXnR9l={`u?s4*-wxsDvUKMHJ91z*4@Y%zb4xmDw`D z4Lo2dNH2_R&k+o(?NB(r*LUTC;GT%y`@xW($SD5EyUK1e7>71J7Xd?Sc5xg@HIG}?YJ;JtV_lo3yHJcV?G*B8O|yNlOV zqRRsjy*%H?dZRg8&!3Hy2$Ig3Ve@~8jJ4EcxO-tSbB!jgM)gfKGb~cyjQz}0&HluS zN*zBA9I-3aoU0Rq+EQQ>bv!gtLYV<3s#q{lQ|1yXCMD)c|I8OK9pgXaCyu|O_IgLc zi5N(IS6ibuyhtBH9&{0uDPoEs@x+#R;!iwDAa77b9gAcy)5$@O{=l;J4a{ntA!pU* z&Y&eWZ&9d!p~pE~A-e>fY#kcGij@GISVu}! zvz{oih;@|264tj#EM*-nQOA0c#B#hgT#ON8qhg%IN`@y(G_sDDXl9)taWU&ei3IB@ z602AzNvvUgyTn@7$r9^XPnEcob&AAB*3%?3)~OOn*3%_))-xp1tY=CXtkWdASkIE^ zX04F0Sf@*DVXc(Nvd)mmvCfp($~sG;pLMpxcGkGW4%RsmJ6X?`xQg{0iECKTmDt5P zS7JBoc@j6Uo-eVN^#X~TSm#OH!g`^^ZLISpZfC8MxRZ5(#5-9plGw*uE%9#Fg%a;! zT_kZY>tc!fS(iw>pS4EfgRDy>9$>AN_y}vA#K%~dNqn4jxx^<~>m?p!T_N#sK6Ay& z5u!mf@}H)tXqI?hv`9QIE|#KIB&28)tE5;h)<|)QSQ{1V_}u#8VuQGJgt$y>u%TWHmyBFWORd-)H16z+u+|t7%kpbAYR(|psvxK zoKAy6aL)fxuvnkv6ts+PbESGRxwK&lOetNuP$z*C5{{PaYSeo2KIhxPh>Fb=Y0E4c z7U-yGuQ^mbqM3d+Y3w@;vx!4IHR@e8E&b3QmM{Rv^6_T(LQMqw|)#2`Z;Uql<11#MSMkIZs`oQHAl~SvE`q|`$R=1Cb|W+XHCiC z+5W7fcgK5jrjhOJ)=kGXm5ndXII9hPtJ|6jeOXzedHGQ5&q9VWEkhA;Jz4C_PEDtt z>~d|CPVu2)Qj^g&yTyx^YtElb^(|_6s(n?fzQuK7kuL))4J9o8Of=@)tn-^~ZF+Z4 zyOJyZ0=mjnZ7lN@53+Go#`)_(t4!mtIxX?(Pq!N0s$&_kHM2|U#>?op*L4>7DV=pQ zY<`)=Tgex<@X9g^_t;hkjhyktsZ@(@cN^KPp*&oU*@2IU!+dPNo7K`}!?v_kQv1Kg%OT9v zr%lWDTq&KqL)d66xKvZ9ut4e2We6j!dQYa`HQ_5H2`g!6nQV_|rmWT(h%7zLX@cpx zQu=W=L~YuvbULHgbZTCoEIqg!(@smH>rLt2HHek0qjhw|(^@xWZ;E?ZFFpHdcI;YP zQBLL^VXem2HOJ_EYm6-``uLW3mdM$?Mz5AB8jA`mCVIpcf#u~_*DyI|mfauEPYPWB zj?a{>b$E&4qY*r>YRzP)I`TIjPZeu#I_*Tde&$(r4dNd!8XKZOL z&9W1Ero(N6`s1-!Z}w)DG5EOZ*{BYo$K_S4Zc(o`$Fd!I zF;*szK2ppz)K;{pWd?eufRFq?%AQ-x(hvA#seC=kSf{QGk*&uOwt?FASXskSXEkL# zQwqJx^U~^ZYkNFxx<<1-Lq5{qb!d%cXHu?9Wj(nIRVzFuO~RDGCIBYyS-~(IS-i{D`RJjESq5UmX+Ih-(GT z8gv~c|IMfvj>39IOzaZ5sJJdBcH`BkxIQLs5PM=`uhCkbn*l)%^uWx=MoeY2i)s(7jB?2@;lw`E=k%f^>#j>Zd0ZXF`Y z{3?rpAOph;*MV^r(+fArFEtK0MvF$#PA%J{_pvh-eAAGb|1oCZ`ur+V(J5NJO6yL& zNuw$~7irOoE-LBc!19}p(S4nD}Bbs=if)wr1 zMz+qf3-gUtS-siJ^b4F>GNx|MHfGbbWY^TZv8K5x(cDlwcqEGM7W!L05@xFSowI~X zl%yw6)x2-S^qUey{T(UPj!w|+TWVVy>l2Ck<|fJ{J>N;Fw)2Jxa&a|tkafuEt8p4_ zC3yh?U#9;7UQi_cDs4Fl;A`|>@De2beHj>5hYJBSleep6GLutPGKI-$Dw)dUbd{XJCDws@HNhOmRDw)Y-mP%$b ziK}D|le1NF4wG|LGMCADDmkCY1uB`xsOj=ZOF_Tu6B$%|RWEGRuDp|wi z5|ylFvQ8!InQTzWrA#hU$wnrdRH89yS4omdN+mjz4wa;tbgIN)vRNfvOfo9zW@4(u zV$!3MElg~cWSKZB$ua3w$yO$PD(PpkO(olzT&|KGOs-JLP9|5XRq_!gA63c6nCw@{$C-RW zC7)#SDV03PB>D5KC~8Xv0F$fkmPZi^U$)h8 zG1wlShRehAup_(zSA;iUXV}D*;VW@f_#L=9`~h4OK7d`}=Wt#4``8_R4cCX?zzva6 z*b|wGy^*=NF;a({BT3v6v2kl8M_UKKNs*s|Ah8qiEsAK6=L7f-zDt~szK8GAY~cs= zV?2UyQb+<({4k0i0j~!?7sV@wXwRs?kMR@wOLGb_l`KT*>YY5Y=d)pcctW_C4_$mz zNQn87nFsKh36XqCJhcyvGoHa`_hB59r}tsxjEC^dK|C8kX#WgmpF4=p2XHq|$^RJr zg#-BF-TAA&RJ>|JWX6Qh0X!Gl|G=BKh4zyR`Q)OMiP7;LG%dQ5(&#QMq^WE|B-`IjR=)li=R?ZB3z+?pwQ9J@N=pzvv1)SG^ygF rU*c5`9v%IPk}{MJ*;s^M#|Vnj>!^<6H)kHg@I(1I*l+2=0DkvBcW#u! literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand$1.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2186431be1d9cff3f6badb9976b071b0f1e70010 GIT binary patch literal 2922 zcmbtW>vt1X5dYmY?WUUrN}xa$BtR*BNS6vCwxvQ_u*I}R3RMsvo8&fGy4j8UC=?Y? z@ht)Zf^U4HAN6Qyssy2GIKn zPczgcj%eeW>bbh19yrk7OIl%5%lWSPCx&Kb)M3}w&5VdVZ|P*7f%P*)(pJj9j$ug= z2gfqi-ja~CtIG=Xhu}pC-Erx-QYXxhF)W)6!bH9d#QK19;y<19+|osc77V*uYHUEu z`v4MqB#cvDhb_-e@!h%rx^^xgts*)~$u2WxSPn%uz}>8smT*+TF|;UXM3aJMY?d&g z;5c5B@VbIGa6-aK1*h;PLmlx$%~@u~N+;EB&Cyf6-9yPEJVm^EOTpVXEeyP);9a~& z5X}I+)3&t<5s-rS@d3lanIj=(XlUT#g}jQlZHng&ZGziQ{HX3`<2lQ5d_!d_c ze24E9{D2=Bmd_lN2CWf}VTFO#)Acq{a zS97(b=J39vfGC+N7oa#|s80mRk}`CvQguLZr^li~O}V;d5|h{7TZ_;hrNSX>8k^=b zx|FOK%@5kWc8CLY0F3*UrDNzgc_|PcTvM_Ro2Klj} zF(5AWlYpdHHywUwax9zN=_>VBL0#&5;{-Edw=(rz8!_=uPhSt)>ev1o$U2=1- zm^{5}x`nQ*bLy^^At+Yu+M4MYnoA9)VV?McNKCiTc!1KBn>z;#LsU$o0q!_jMzpT^ zEYnbl=+j(ZMpU@71_*U2t2u-G7{N(h|B&eI{$^=e-|y}v>?t1Ne9_N2@szU@NZ52d zf#xL!2=(1j+sc*A)X(R9z}M2uDR!yi)GbywO$_p8Xmr$|nYq{RfDDfYbLs!JDL8;< zX;bto0#MI7BVfq*pg-qkV=*0;ObXNdo<-hyz$huwl@TJ{h$sdhaT=0UT0T$NWY~Cj zBmy(G)MClf%Gs4vbZq80;#x%!HqnRH2Kwe=H8o;r(OZaq&1eAu=6{QYe2LuL@+VmH zb%cKNbvDvkMLNJ4w9=~h?=n=h(T?FUY%W@0c~l}ovRl8SqJS`^MlPT-gd3ZCmaR}kuE z6v`FcBp(GdeURvEm_BPCCn#Jzjjecsz&nKwY{QdudYC>;+i4dj?OP=X+h`_tVmpDj z6DQC`dLg>42z2pmhkphvLg+U7By=+gJ^#W(1$s#_gk9K8&oEusM|lRhO_fPcAo4%E C&N0gX literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/ChallengeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..cd0613febd17f010368d0305787ce7c7868955aa GIT binary patch literal 4934 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 Xi;x7OjLQVQlGd|La$cp+9IpKVn^PBy literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/ListCommand$1.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/ListCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..176a840e0af8e1c3b3a5ae7893887cd2123d077f GIT binary patch literal 3199 zcmbVO`&SfI9RJ+iWoKOmT?j=?4HR*Cj;Q$n(-bwa<&h|+W;N_ymXX;RoCkuv%QAad z_EanFZT-*>os$dLsngG$(+~YQc|6+p&JMC1Tr&2+eSY7c&%Jm4ynW+$02}e+0<6Jf zqS+^!jwoueU&7;26k&f9B}hcki7wG}i>9X-PvC%PdL^;b_j7(&O#5`I0s_QbKZ7zGTwOWK<)iwCDO> zPlhzY&Y))3tYg@kuzAunQo1(46@xpcOlwFP(H!@*;_KRqYNg!_`LvaUW;?zqVPuF3r#wO^-|vV@sb^*+_o#N1yD ziL@Ey4#VJ9yROadqAv08#l ztR*TELwZfuO7gv$C`~L6#%5ui>bJ*8>ZVQBJGnDxrX-BWIE7Ie4QQ0H7I7JMsF%@% zO$-$ULXt6t(-NMO@jPCT@giQ5@iJbaIApwv*JPZ*>kLXk#@)LlGTy*hs%Y&%W0j0I zaZbitcw53dGTy~`8SjbaeVmtYLBrpWj~1Qe{RI_7O3r(;wwr@2p2O$)>7 zyeRGDAWykEx0GGpQ9s}shREH(Njo-+ zgl&TEku-M%X^HP;@w%Lh7oi{+@pCODucS>gt#j`-F%9Z;ohKcoBa?9*k(m&st0ZX- zk97|)?2PA`Y0n93rqNcHxKCT;R2_vl@+**c;wk$A zCr)@J5O%8$9pcU8s30NkeYS)m+1M}-HHL-cnIJN)9*YlXqYN`M&D~ahgk5w~5n&uN zx5`kO$NC)C>0%;--G)wAdG2W=UM-y}p2w>^LXfxV6EVHcuw;ft9z4|rlk5}k-Oe6D zK@?LknxS*Xv6%TZ{qHhU5n|H_<|sgr^OLTsQ<97GA@>O)2oz4LMlYwjt(Yqq5-g># z_qw_+syqco^IST!_(Tz|Em$8>dq?9oeMS)43=153qHJ9i*GFxB>^|hP=}P9S@&NZQ z#hITa^qz@tm`-lnYMLz1sLGUO@#NduY1&>M@0jgp`fV(sl60!0K9NvGpL@0R4H%5Y z#A^mnPY;^c(-TKK0s3!3Gw6Y$(LS1os4uT?xDHm|cpZWIrt1jSk0bQ6C%ul^Fi8U| z(L(JK&q6uY(|4x$m5Zm7_8A_=rkqvwH-eA=7W)-NN5&CO_vWOjS@bxM~S(Ii`Mr;1?0UBmeE`%nqcoIt(T8k=+ ze2aU;$TL~d8mOoc+d}{rX=Js0>eHS%AVQX%vzV3X|9Fj9?#8y^AO`Zi&(I7-c_o9^ADnw9? z7*yKSGF(zJ$CPG3asl=oNV|*I6V_CbMB{Q=~ef3}X zFMJRaO^DC_CSyFiZA?)MiP_}ro|!Y>_nph^_n%)*0o=u%9CDcJ#e5(7u;5_P!HpcU zxS1pWR{WKBP;gLWaJQ9`dNUBlNW;*x?knFuW?0CVjr2lQ4gA-VD{0?`y3UV$8@=Ou zu`Lz$7&4n-RWb~feI<9I#=g|MVn3jjk#gvXU{7d2_S=gYd*BntgYL*)*k}kOs0G!_j|$CE7((YKF;9C`!_|P5wNH_b9`G ziWOe{nK(>}M!jRmRl-Pna?6h^JKRx_)mX9%7Xw5cP@!BbVVPl~Bil3hRQ#@8J-_yg zYcbD?i&bzJx3R`>??0g!RxUodA&hJ{h&tKU7SGjRU1B&sXI9V8s?@y`ojYxiKPD!= z0R1&-x0SI%dDNTveBt7;9Mh576{h~gG?jOtLls6QXfixHGo-CKr?H5~y;SH_W4r@d zjRL9pMl#SbSP64`AY7KP(C05@_F|&| literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/PingCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/PingCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..373f394344a2db31514feda20951133584456e18 GIT binary patch literal 2004 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 XZ4r_{lyQ@ww~~6cNzU8!nZcbuMC=+} literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/console/BungeeCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/console/BungeeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3523d3e30cb7ec947fa8d339d725321acad1ca6b GIT binary patch literal 1654 zcmah}$x;(h6g@8qbP}2&VRAO0LLdq4fH(wEh$v_V%P5xR!s;Z?*wX2ydO*vyU*Xb? zYpoKeDyrQ274H25s~qm@G%AM3=1qO>x#ymDUw{7bVH3bKZbT8oL>QA1^dTi79YF?D zT~Kg5j1y6u#3>2WQABWB3^QSz5%XCwoQvW-vJz$`Twv&&)eOypt`+q`NTHC=na z6@xpEO>0$I*Btk$vLeRp#0oq`@|It}M7lo%381kR_#Sx?9%_hD3Y1rcefnKjBr^ zAzf#adDE&Z6?b)2bBNnZr}(U8Zq&Gyy_bKauB(c!8g-@YSejAyYGoP&TV{w5RQ<9TZF?rL!Lvn`hvZGd43+kF@BwZy#v~0Rom0!_3x3`%y zCFIM9qn{$1V*Ns8%;6%#_>LBMHg9u6!X+8=xF}&kMh=%5M#ieQZMDwNC&)r^A3kwn z)?ds?Sd?)ER~d%?bkD5E5@%(v}4Kg+KD!I0UVV?njI z`iWY^rxvaIuW-7|V{PeNN7EgR+e*Q%li$VC{Tqun3(Mv5a;Zqoxuexy*EPG1p-c2h zf!o4YhQVZOdhyc6cNdT|b#-rsSh$|GKN zvJ)+Fe|mize(TNr2OoCKCW>Jo*-A`?x4*yNhL^du&aKD literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/BroadcastCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/BroadcastCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..779f3017fca04b20ef472a88cedc814258af6d8f GIT binary patch literal 1580 zcmb7E+foxj5IvKu8&*)0HbZu6#1>bE zn0O{Cflt&X@+HTu8B4+Pvh zIjZ>UNFmLTSo+;M9p^9|!+9MSFsLz&^ymIC_^88D2t zhbeMTgafAGh3HD8>uaH@6}E&6d};Yoc*cTo>(cY2L(=QIvG8Ew^3C#`Y0ll4r?E8t zxjfPyYsRr0muBR<-1aQ41e(ilMY3uNEmkJH)T55z7b`whJ*Ce>Y+ax5CM$`X|g-%WYRf8YkGKO1#CDK zd57rmTWIgF?M*W{LpBACY!|kn8=VA{BB);S^tL`lA9m4+K+uof1kA7pd&2}@5T)-Z zQDN;RdPY(mtB8F-Jc8FKenR5z3X=2DQ(8tVti3|tXd$DWc#qDMPUg-FjlKT)HH=Di zk!$olw$nm(72S$p6pG*g;$$Opk qQAO`h5hnF&fXFM~AsnU>2Wh_pTKYSZG33}c?EXdtGaMm*1o>Y~Mx)yR literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/IgnoreCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/IgnoreCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f66f9b1ae734bcafc77ad0daee5cd3b1d01cc84a GIT binary patch literal 3667 zcmbVO`*$0~75+w+v}<`yY!MPW1hR=8MYbi2BotHI7~)5Wifx5BP8(7h*3wwsc(p6E zs|2Ni()asa+9rL_QXmbbrEwd_3e<(ZI0yO{_4GjRtlqXv&gn0+Gjs3U``vrLxwG$m zaBCgF{rFb^hw(`npK8S+oEF0q63zthX*?;0&&W6%z*ErL;KPE9WB@5}35x-=BQ0Y| zeDyY*!*VMOWW>^xVTo^6>^vWqe00zANK<6233t2MqpE z-PD~ihMw@W&6AdyGW10rGr4oY$}Pvv>rVb+?35Ts`c5%;C#)1_*fy=3d^Vq1;JK69 zfbANUlr)3q?3mCjgPEi$0g`o*I0}NHqZC-)(T&)&ZaXC1(O9QKwo)KF3FGTE;$-%IViHN z(2e>Sh3tam3Vwp0D!7a*3|)2gYDhMDQt&hUT){8!ONN0^a$XQ+SdEp8sH0jcbt%U) z)_H!(pm4|3(X3mhF$pg!_!WMw;3fQqyq1&*sDhXA3d7Eg1Q^fj22n$xe3gO;@zYjb z)pA@_a23C$fE6ThO~Pvmeuvk^=Iv=DU2FQ zk#dL+Ql$k>1=q2{aBnDC@j`~wstZ7}SMWf)Kc!Qy@Cf1A`*HVR= zifv^$MXZ`yhNo19BU?76@-@3{`(TLP-p06QSK1B3!7cT-x_VS&mqpdvMxCmT%1t{0 zUD1uqqvlms6-{-clx|?hqLnLkpLv@nOryZSo?vLBRyAHI2^bO$ZLi@Pjr9FrZAI9R zS365E+_#}$5V8YX=1kv<*#k=umiblx5@f9ho8&opz@5IxyVT z>=?aJ9sKFMX4o!NK0zhjLX}e15*AOIU(066Fj1tL#ZB1Coq@t_K#*8C$CJ)TADP`= zSM`Y{%_+y+a$;)I?Z36>s469E4c;r(KEk`~Sf#g$99D|am@nU>C#I%miBGycmB~89 z6AGB{d2Rh7WrY@ThTY-#=497m>=ChOSuMH5-N(~1?fQ3ep6W`^nfII}9_G<<0^J)x zQ5%#I-7-fuML`s7LhR1Eyp6l>H4%kaSK;(v)B4mMYNR>C{@e3$#-?Xdq3Dv!iN!^O z{%RP88tzWhd)q7|ky+hNWEmp2_j{b@GP-S3c8IZaCyyLGdiMC#iJAD^Ts%P~YhTjr zdX@IsM1x$Sw9Ha>q@F{wN!=FjoY=r#`Y%09|EqupOuVr)K0vF-Y3-qJXaB%Wu>PRu z23q>PH{iYQst(Z@gqOzc^nJx8a+OuE9U-?e?xh8umrjub?v;l-JN&M8Jcq>{_JdP_S(k%4IwoS@*t#ZFS=7 z(Kpe4`X=rOZd*l1w=d#7R79tT{tfOf3sw+Z#htpkqj^=J`&3|FwL+rNVTA_hbX z+6Pt;DMHA*eck>dq6|e03Q@G0x0t|3vik(w&5@(Os(J7uH3c)g5X^WEduY6eYP^S- zv6qgO+6+Y7J z2zh4i-UKFztv>cHrbw>^ZR{N!#iJBQkln&D#3_bPP%H}Rmv$bbooU*63hf_Yzl0eH zvl0@!Kg2=!B^;OVxP%kceR$mI+=p~gnu%LVVhJZzb!7K{5u|nJp5gycrWoeQj|Zpz E2Pl2)bpQYW literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/MessageCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/MessageCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ea7ef96b9b53aa9f81e8025a7a07ed9c3c9ffcc7 GIT binary patch literal 2357 zcma)8T~ixX7=BI&*^q1tgaS=l+W-Z^N7xpt)C5w6wi*o|Z3+ri+hubSmTY$8?gqqv zqL*IibuVgBXBe;jNlwS{J)3R28OY!;IpLgr-{-u~`|)i4{`Zd)0C!--Fo-)*jP>9W zJ`l@?5*DJk8^cG)#?g&j42xKbA&+}ed>q3kSdL)@_a!`t;UXT2$DhXW846lvZJVWwOQw;>nL^ZIBJzEtF7;q zmPL+2Z5Yj}ZZf1guO6t1 zp_)~t1b5HNBw=Y9eo*Mbp&{ zrNmwGPBc6mpX`GJvSV24OmL5~WpLY3xG;76FoNzPQ;x@rVKf-{+1#n7#FAngI3o*Q z(gjb3q4okFHQp3?rk&Gb@XGdF)2qp9H?m971SFO+NNlqY)Yv+)zo4uz4_FlU!}Z+M=~CxB;yG-C2Yy~ z5?@K!ma&7U4A&>LZL68mRCCfz`97&53NYnxqcSJqYZ>3*TM5r(Jcr7V>o_&%mr4-Z zm7$?5fy=0%Dq|12jD6G?mOCQ*l{|lH7&7OBEUOOp=YhJ}$7blOSaz$)Hyyri8b=Il zhhefKpy+B>=MD{*VNu8QxVCCKhAO6TB7J%`rcNI*#6|1+J-{${mK(`Xf1m-Dy~(EQ zXjEJAGR&Rj*SRqn#?NQ9>QotIZI5fU^-9Gc0c2SCAL4SFN$XG?U?dO9CoxnAgG_Y-r~EjiYX)~M0wl42CsjV4 z4;Ij-du{C61})d}e`_3o^96KAye|5@nh4ciRZW^o>WZ=SRIm^&O(z)(7?Die2o(4% z6QV<}8^hPjtL=dbWmLRJo{YzJXGJwNPPr&Ebfrc5!=lZ+%@#)Jl{!eTS|9|{ISkW! znRbt8AENL6>6uqx(}~babWMj}BK*QLP12e`nAS`54jw|B9Q(-e3Y`qK9B~!bXh#ru z57!Bnh#}R2X9YwMrDumTf1!JA_N4n~^k)*0V@SUv8p5x5KHD{ajGk;bRDy;Z zithnIA`C$yk6v1@5sB+W;s%|K(BBwlF^+jmUteIn#FOgL#sWPSKHF^8BUWagdC5O#=sZ1NsO7u^EL h^sI%U5XLP!p_IQSCb<0?30nLA!2;RL(~}V1{|_NdkFfv% literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand$1.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..f9c7e3309e91a1e33741e0dadad7eacf36af830b GIT binary patch literal 3053 zcmbtWSyL2O7(LAl)5FlRi3*zFsE8w5i-}8spaC?H02&YzG+Q%VXBv9C$LSsrv+ptc z^5$b+tW=&%MTA(fe9}~^l3$cqId`VPMxl6cs^;FleZPC|_nmL+zwZBj8^F`}u?!73 zDTn9fFc8B|461mc3@>7+9HkhJVFagCoQ~loj7BjQ!x@arowF)lj-djBQM@AO3HkC| z6zApQ)hJ$z;dQ(b!<#TvOvX@$q{Nsihrk87Ovxdw!c;M>AU11Qjjph#L{7o(At#s8 zC-XBirl%*JOvbRM^uFReR*>mZ5S1s4T*_6j`TWqdF>C0SVW;#lFK5~*3PilL={6ov z&^zRcq+?H6<^`eK!kcq)Gy1IQ_o)NBVq=Y^yvevwRsYL5GZPV*f za5?e#a2wmVhDH0&DhT&EQ$j)IkZFsNd}dPQ&KQ#x-_#5_Ny9p8Gc$}b{#ylfAGi+oF{4!6N7%FB|SPXH-@R*a&CB;coI;1)n zKkd>8y6uFWv>cb=IV`-iGo>P$fvFWfRm^F)gn0$Knv!SIA}8Xe8@HW!k(s#X#B(yl`OvQ7vWB!&zW92uHikrui*oH$lz!a?HWFk zkK3D)<1(!}<9hMd?u;njU5X11RUcg(_$*m$kBTXumz~Y0Pr;U;k;}(q6*aP1 z$|-1DOCUf@@r<98)V_j-_nWRv>=7eF#cG#XU)>R-o>M&P$FPw#7`}xj=-6(seU8&= z*4FT}W3tFMCxSua`=D=da7|kq7i0<4&rUG%1wd5|Ve?W)?@7zFyVZrWe z`E6#$YDHy3(F9K&bg9!q*GZ`#DA^4dOO)+*&}WMGM-v;z`+f zxUZlcdJ$Fmg(p<*{nPv#O75U^=vPEqmY^zFK=cmEhFkA(aSdwgB4Q&H3f&I>gpt;} z=xMu$>Xw@FMQBUdRDx?b(sBzG6E{&=Q?-EVwk6a^l^VWRCL z_ECO2FHrIs-Vxy)pltL%#8q^wc(#wzzu3t!5kuvDaLuN9Or-)LDj>t67k!+=ROJNK M2V%Uqfir*q1L?h($ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ReplyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3cc56bfdc936cc909fbf1619f6ad22020e4c3491 GIT binary patch literal 1233 zcmbu8YflqF6o%g^g+f^_rQ!utu4*s9XyONxs?j!*kTi;d81&Py9hSA*Su(SWmVf03 zAkoAh;Eyt%**1z1ED4+JnLRr*&z#FUKYo7w4&Wi~XOYFNLEIj~5N52I&0sEze#~dd zS+HM=8QjU>E`zhCl+?9A7$XhCz++$e(Nl(nLfuF=RE@yjm0Zc_Q>dH#z>nfXzGZEt zxW$mJg$>CtR`->B8Mk(%-V{3l{h6qTt_Ze-_O0LjnU3~+I-`0%*$rDQp&Et@?Zqvr zBEwtK7~x6&M(zjgT4%mOf$j&f=PQQU^J$$p88Y&-bmNG^dQ_-~+T%NMv*|~?dm8Uj zH>7GvUHMS|C=LV}vZ!qBg6#t!bG;Gl>S74F=QT(EA74=lUvU6!y6 z(Cx(t*-`Rdlb@n7S1O-?l_pY0=qsgl0siVw15psO1mIckswIgMyp9%NU64pgbDC(U}#I$Kn)wAc^-I+V{+~?kT?(Cnhe*GQ5EE-9SU^b3-6F7(W z5_liC)Yk{f+}2S@;toDk=B_gLbbORV3isnEs`p$R^KmT1QBtFillTOSDd_lA$7edq z3?g~#P@_%1gs zZa2)T?@GH7raRz;ZidSzLr`%j2}*bP7_g8#-xDsw`EDr6So(YBiluy%p;qTUXSmrv zzild)C0x%`D?1zK>611OR()REsqj`<{_un=IwnaZI+jQnI+hudRVQ$3q9oO+ojY3O z8C3=YqZngIcz>UOffYQ^@z6jO4-Bj-^9Uq|v97`%N`(R%_#9stSjUEe$9TdpdbGsF zKw4CM74A!hR7R{j!NfM-6%z)&!c$_9;S09XQ=NEcYV*?T3 z-GIOr!+c*c{|Cu2OrH!>f-Ve6};8$-*VixNFRA(*|zo=*an?h zL-@tLwu52$P@^5vLm~IS6rGY@TcOn!MT};16w~m8-!-XaH`K*MKC%P6)uN82bIbM? zCD$|65g?T-?mO+aXE>YfT}Uggo?Os5$8xB_6TZuB&*JLt$^0uG1fNnjO{IPHQC}Xn zZ4H;`&L5$_0uTZ96UNAn)949}BlI52PrU%krz6i1&HoJTIbwM-13!g3&XXNMjO;10 zL-ap5gET#(7{-Or7h>QIT%-}9;Z3|n5lGb(IgG?65e*S4Q-45TntqA+ZEc*MeI$N_ zu04Ym-A8izH>B2Iz(^17<5cMU0rB+dXNaYTXeNDz%s$dDG5ib8Mxf|L@ejRG3NcRf zE)bE6C=&@qZ?+xyHN6Th;|kFNDtH@{RDc-$-7>gJSSb{dMGhMBPx# literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/SoundsCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/SoundsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e3a2c95686e5d61ea4f5798b14626f9036b96501 GIT binary patch literal 1857 zcmbVMYjYDf6g{%n(c0cLiOGXNA1(o7Cr!4L@F=FVIN{M^Cs2di1ZYRGg|lS6>)A)z z^q;hUfY1FvpzTbjpZlYlUhNttiQ|D`cIMjBk&ezix>x`H_vhaL7V%>SR+`81AU zQH2W}7c;no%PM@X!WE8k25DT?@rC-mrsGQ;U+K86MwJYfu$)B-H#lx`++rBIYB^SL zjbWx(^<~p_TDJ8>nvM*9a=k5c+X}*8%!Z2PQiDNTa$AyNq-r^GCG2cS@4ncuX(m^7 zo5F4g&r;*wq!w&iKEu*r=BC@}2&d(n!fS^e=>)#nk-jh5(yY570ZZ|MGAZraVcT*T z@`LGOp$uI9ESq6Kx-J*1uGcm(T%*1uJ<;_3{?on*Hjf8-!NpzRIe#-TG5pqaCkv^U|<51B-f9; zH*g1412wEL9N*{S0o}xIU=?=_+{3p9>bTD^b=c2JXxZenqJO}UEyy)D%x{WqnK#hD zcMR!*xZ$YEX_3f6bJ_A=4e|vUt64DcJ=QqZ4Lrmn1CQ|o!}WnR`?i(EF#l$bituHx zW~l!5S#e}RF`OGnIp_u%Mh}}tW!$4z?R6NXD<6I0dU5eQ@a3vw?=Y}+vbQaR%1#V0 ztR85916Nlry;G&>mLFFRL$X++1Jk|?Ud?F5b@fgVKygTPyVOHuaj{>2sc))RC6t*S zxN##gj2HVC(u%VK9S#G_4lL-S{|#Jw1}(V@ef}?` z*Ipo#%kIL6z+a)~hMysodyi&vBNTQq`VwP*AeVrWmV}Zv8Iey=oFZw{bo@zFDJpr3 z@xia<)sQC_m=c3im?7~g+{S4riCI)oz*$PPNO%|89#Nz?N*uEsa~z*=%!5(bBfJkt e5Ww~*{i6`ty0Ay*_F>70c7ekr^i$$Z;N1TaZ{gYi literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ToggleChatCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/ToggleChatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9f0d2842f9cf093b89301e8770dcd2699a00b057 GIT binary patch literal 1888 zcmbVMZC4vb6n-Yzuz6VoQV6B>C6<~dAgr~hwW+NJXsb=2H8cwK0Lfc7$JjSpSaians?hWj3X6 zyH-^1ND#RhE<7KCxz0hxqTeiBk!a$c7RUZsY zp+KQBx`Q^|fq}cI8)#sS;p~xa9^+4046Ngxf&2K}Koc7b(81f3MCy4ggm;dmABLwAt%`p-s{ox zqE?p&>!=KD^@T$frll9ZQHII#U?4?Y8rtbl+K#kEK=0r2=rv}f&)vY`YEYD3hzG&v z)L3Z5gNkA5v|}y2NfUaKCO41(1))H8npXE|ouJ=|x%sDHbNR#*BH+`+9|{baSrEcMG$xuuMsT6>v$uEXKx`%=YYoipGd7OJj2K}ZHB%B z=s!c(9z#nWAieNAGMi74&F2naM9!a(&W}DuD*p=Y-enmb3MJ)+Mtq_4v zk)0-LGnD>3>SPtYr8x1w^cpBq7nmZ03z#MHDcr$DD2h4MP{JiDv`qdUv_pbO>8R+K t(=o5(Z5<0>WDdzc;7E{z9a8zHdFbfkA>|$LB_r5H9VU6-A>0Hm{{yXB?D+ry literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/message/TogglePMCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/message/TogglePMCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a34f8cd73df331773b31fd4a9ea14254e4ce3d1e GIT binary patch literal 1881 zcmbVMYjfK~6g_Lpksk_4+&r3=hiSmI6B1Dxpwy)WCn*K&B*m#ADUaFMTV;tXdGrW` ze*%A?pZU^g4$!x1wtF{@m6}KxG#v0NQ>tSzKcw2nerkP^H z?QpxzJ*mdYq!#Q+pJ8n{a>woUxYPAb?pa|^IDv2Wgzs}pm|L!8*9EW8fjaHt-F;Wmp;N z;TLxr!{YN%>f9HJhscj7WI5Mh4A+K24m(kX@v{PwtrK{4;m&5s0^^TdFE-NyUu-z` zAp_eXsVx!I590*G#;FT&>KJR)|K+@b^kXMAeTyMosZveD7r}{1t+J!u56V#-;r%|{ zEE2jh*hO_k$fbP;ob#~t4$OEHvRhzG$J z)QixJUnqvD^R~6|Iz7#k^kf4m&>~DzoT1Tu8mH)YVt(N%*nBbd1nGJ03AA6Mr57m{ zp-~*A7kUf@jMF!PS(=%SH{ud5(}*DOGF~BAhF9@g4A0&~n)U(Bg};zlUwnp$Pu04j9K0V!HAMSBU>DOj7;$*nkkM^IKucdO#Fso3W{19irRDp zK1FecsLfLO%Vv23IggAi8{6Hc_33g2FpO>MnOUG1qAeW9{mvoqveVcGoxb`oars^*M literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ChatControlCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ChatControlCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d43f3a68b591dcf4aab9744526d5edb173ee883b GIT binary patch literal 3059 zcmb7GTWl0n82(PTWvAO|DO)ZDdKoTVdZSygT%@H)Z%}AUW!owj#p&+pcIfO(nVID# zpdu!m;e9H_kZU< z|Cw+9{&E~Z13nI*20JCRFii38NB@`C<8CGc0J*49#g~SX0?$^QdXWbZv--4ep#Ut ?%}JgP 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FeedCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FeedCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..365d3de39db3e1b358d687189e77699d33776093 GIT binary patch literal 3545 zcmbVPTTmO<8UBtWvx`^=2x3F*IEo!(Kn69bT_@n!0c>0vkO*>c?X*c2aS&@3Ezz#9 zox17GaohBoG`--a_Y3JQt=-0kb|%xlcBXHA=~E^%nLPESedvSBH2u!56iZmtGabzw zojsTT`~L60X!Ym+{QeC9`|;Z-?#Gyp@p`-usd}U_p=OV1n2ho}qvJ#rk7KFf&4jESzb;JZv>A=*X)* zN5`VNbyCMO_53cVv#wh4bQEq(C|qO zpAx7$WaTaIu)yxFF;`}t{EThQ%4A-8XPv@)a>??F&nBnTIM6*M5E*u6q`)0xR$iux z3)8Z2!ko6b5*u@}rafgAEcIMkjCgaFD{y3U%UNe(!OYLNNwbhEF37y+CSA{*olTBN zIWrt=4v^)dUCdc|f%xX80+IrnJSVe7kDMOt8gmM{(r;U1_^=2jAv%&$IV4wOlFvdPYXn6DNH~>;O;61tJ$e&MKeyZkd-5ricoWf zq(%WB`I7|M=kNjEtm3k#O(S`K?cbLPb0$jDO@$0o-|GnvtJiiy8ivA_5B z=7t?x@v8Ryki&D*18gs_+TiS?d~0v8AGzhWv&^;_My6PTqBF z8FV9oL|1q1#^IkTsak4XOwuk@<#p!bA}KI7wXkoYT&g_ktPwwDE|7H_VQU0J_ne?7 z3hcSPh~sXKlx&CN!K%hoiuQ)idn=%Frg1 z8s|*6Dplxl+VAW^!(sDnFT3vNC=E7Gf~SJS$Yos-%5 z^z3Z#i}ruUhEBvQKx)R6ewTUJ3y5qTY3u5dYo0~}+BaBRjF&Kl6l zu?-*K%GTg24&p&R(Fh(wKMe~E;7|Y%zD&S68psrH)V?<^N*-@P1kTo?;4r~IEl4zxQ5s&T31BhzVHLFwrjX^887r+#nv@! z3t<_BRkW|6L!dv>5n01sf@|$+wq1aL{aboEwh(RQ-M7mSI|7Ki1Bjhvh+3B6}$Q)z5ZnPG9p)cIwC~th?K$Zs|^)|`6u>^ z4jd4V;GigAK)5(8&f$o-ghBBlhQw`@MTw@s}5AhHsfc zonoA(R3m6fG`FpxH-tp2Zw<*1-)YKipo!{&e};6NVlz1Hdla;QmNGvot^80e;6whs GNB;{)BdE^+ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FlyCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FlyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..8a04b5b938267a548338dd4d49582b44b885bf97 GIT binary patch literal 3615 zcmbVPYf}?f7=BKOWC@Exyx(ZNArK(7S8vq{g=&R>4Pw={b_tuXW!a_KjfidS#olkW zw$|GI06)u&DD8~Xe(m>u?EmNp)9G_|6Wt(Dro+t1*>m2@^E~H0?=FA-`|BM5PvMs+ z+VG-+!!=0YNDW@XQ90|4pfAeblw9erMKuPZIEI&_NMlfL9IxSQNN$`^@JbXXajF)l zaYC-VDu>q;ysqGk^m-!#EsC`mR*;duBXVC?kd+?%&B?`48QM_rrh+jArZgE>V97ML zf(Zq0Dab2uB5)%p2vqMkEW8Zl_u$~{(hE1--dhLv64rzHqJ{K3m?x^7i9H<;QV~>w()`*kT^0~se zZn;j6X+3`-zhIg*c2AflhsGX$aiQ`2R z*cvonJR>z^Y^t(yk=z1xX;;gP^=T8Hge)I{nyfkH=M>mn#;F{TJRfO0Sj2v?%yw}! zLA(z}i>B>DKBM;-@`P91Kavh9nu>OG2vjkninExE;GBvnOsY7KNr80%?aLyoID}3W zZ%fN}@NNVbRJ@1xBltkYhq$Ps3ooenNN#_OPXyL9WsW;qPTw0(GF5#4geU)j2tHNu z89tBT3l(4DD-~bk8-Yzt`boPGAJxw4@utiRh9k>yq)Cs{muNQzx3z97xU1q4z7<%z zup&AOhRIrye7|FT`9~2~aT(vM_yJc0w(oQp-^h)+@p0Y{W_RMlx^BfsiuvQiQ*i;& zq2fneQE?SN3AA`n@+HT6K4qxs*EB+rn{Cy82V;{@!k4 z`dOaWwn{#_FOpB8xf1ArmPO3*AlksTJVXzyKw=3wOE3lYSL{#4+J0CU5omw3d#C2; z#s0v9E=HBTZDC39^0!qCS8xr}HFPIApy$U8$1!Y6pgui#sHf-5K=;diN7Csd{V9Ry zL}0(Jf1qr$j`a}qU)}s5h?Y|V4S{Rc>2*3b0k*DE!{}Jdukx)I*zssyeNIk5&5Y`q zvHmRU-ePxnb}7x~0U0HOx>SD|^IF+V`*cU%d4WZFv(fE*G|VpBwAq|%+`MKvrY2tr zO^d4W04%;}0pO>^*(pl~-SPnOzlAXDp=3Tbs*rx8kdszO> zEy0txpU1N*7Gm*5<%MUMYHebI`mmgrM5WlfSg#T0Pif;6VHMLZLRoQb{|(4grp*)n zpGQiNQW~~i*{S`Mk>V}J7Jl=z@rwxvgB;MoG0CSiLi__(wkB>tw8la=QPnz)@J%ec z!Q~Jh=NO|CP>*Gt)nX;bRoKOqHNGpJz>|Dp5Ppz7&A>r) zzNgDM?8AQQA=jRxZ-{xotjavrNAUbS8aduYjdGV-&!fS6T1E%HuzeYEkxufQb|q#J z6O?LQqG}c^LrBC{c`8tr>sXx#7Z+ET7Vq=lK+GVz8X~PHqDErbK_rheiR9#;=B|6F zcX^zIhc%2)V*{b^6Tt@*x=glYDdyXJKy1uKK;AiDyp1)#VeQFVSQlGAgAKIWD8NZ< z69_0W~X$Fto=FykTx0D%dEgA5n$uUu~+QxMT-R_48TFH74xr+IBlmeD#oJJEj zV!=R5Pltcnio$#3FH}svlQ|wrzBy>%3A2EA3k@pshFvjrD;*aoEt5Th_e0a&udSDO z7l3ZoRu60IF#jJq!tp39-lD5W;a3dcZyXcV7!-9F602}RbmOGR;*_|ASH(157k}Z5 sm_x>^#kgNvrCJp8r5nVVymS5yT8{7>uFk=l!)J3CV`X*|MF>6r0n%xw)&Kwi literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FreezeCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/FreezeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e055b7fac62fdf496bcfc2876b69314cb0d03c0b GIT binary patch literal 3043 zcma)8TT>KA6#g1kXITc7B`6v%iw5MjOf(P;paxNd1X$t<#!F&`rFR(^W|p~t5OXyb zlW1<{2D#~z<)c?@CXhT;Sin_vvx5YmeAqHkpPaOvltSN`Oy_XH=Yv5o)(gxBJ`rK z2od!A@r;lh4$tCT7C{ zaKyzjA(kT&Gzp^&YuhwKa}F}>s_C(L%ru5|EzT8#J5#1Lrc7#%JEIJWv9)%P!Pj99 zbB6Ujn!)?r@gZ)VP=|Dq1bfVwst>A`Ce~@8&l%BdhW7l(F>`!eHHK|PwG!?)Hym5B z9W@?TIxWs;ct>ixmHbTVZbCB{Lixc`ZZb&xJde2!d9}Z$$Fvg4kUKV}IZE1?l17bk zW0+g5XL?4}NmbERBcVhcOEVH)q-z~=i8~BiG9k!A&6!sEb#L%4^kz=Wbt*hdKRoATaxOSz8 zp;%m$UP>v|7(;n3HEJ&#{u@4t_=KzKc6Y)sE#5)2<x?Y@arZPb3&_q5`_q2q%X9qLt5(q=B!psv2 z)mM&`XB0|gXq3mC)Ei?{2cTy(@#ZLYUwpWbB5DJSmzq4rW56& zGcZ(T1(>@@3!8GbT4_eChrO4C?f~T_b%_`nb3~Svr>s^>$&zCuJT?}I$8~x|8TS1T zw=$SodZVb|eVQFfdQ8#6@0h9fNDoZvxJbRyrP?F(mZWQGz|baK-aSmMhHA;XZQiMY zf$k%8r1XI#tw-odmtH}7Ngv$Jbh1`TGHWG$h`7>>Nut2CsMCZp>vvhMbT6GCA4<$5 zHX*tn8aHAMjb${JqnK7fY@%NU>byM<1NCU26`>)FMzTN^j7L+J*pDdm z5bo9g1gWoKaSo;7pno1k3kVe827Yf?^j*Vm4TXDy#djgkqBVRQB@0+rfH{=Ve7$$@ z)@^JEmWCG)WSB?UT|6|8@^EnD1E5O+ViQ5kVV#&(cxd5#Xq#sdsGrA{8;H=~!#B`H zO7qy-;tP9|ZL{#*+U#4vc81w(M|O}KAqKHYe|J%Nl8o$Jz^($E6vP!m5I2e~G;XEf zwh+JO3WcjMn6fSM4?I~P7#3@iNec7;1%q}RXj#4G~+t<<0e}0 z9on#n1NfP=e?dF`KnMQ9F)tZSWa%dD?IArMS-!WNmV1QKMClN+W;{-bUxPofkIoem hu1H(pJ}M+UQC(SHF0Z|hAkEAE#x~Mvq5T51{tGz8Wu*WB literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/GodCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/GodCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f7633717eaf425f84fe006a246cf131d0990efd2 GIT binary patch literal 3820 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 K2Pg{R;C}(Wc{3;g literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KickallCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KickallCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..41a0698128ff0ca3b84586b8a8cdac05392ca67b GIT binary patch literal 2497 zcmai0OLr4x7=FHFlF4OCX-a9+iiBGTP1*rez_eD{(qbh|Dk()ktJS%mgTk zF1&2qxbwi$4K4-cQay*GE6;Hu=eYA1;Ko1D1LFHlQkv5Cbo0)4dFOeb_d4^(e?LD2 z@G3qFVF%Iy3hm^U^0v> za$HRDx8DiFkJDT$&sWm{oZ-)z0L}*RZV2Zv79??A#03%WG57~HLvw~0_9Qa4S}={G zuFb2mp*mMgt1MsEoZ2;chRcBiGYrD0SyUNXGn%1hYn3_GnpWm?I*DY=f}+nTmd5vu zL&3SI*$g8aBNxm{MKOxDtXQR5MKv5-wjE`DUOuH2%8IU!*6#<1XjQM3G=m|wFY}Yo!?q<;S`BBs< zIuytDb(k`=Z!C(5Y^yR7AYb5Xzf1tDuf+JU{KL1KQ7Bmhdum67_OD))GFz ztcVXKD43NnhgpWMrs%D5nZgk-oZ%j)V{!u^HfX7eZ5l%&3KEJ?Ma)Ym;UYuliy>~r zgj3KYTtbU7>aecI>N$#4 z-E`QoE2^c&I4iXnn_GxU_ypG&g0Z+dZ(6ZR7-J8Dhsh;j`!1x5u@@+ZD@nzIGSq9Q>si#GL{RTT7~wbDO%}zSLS>iG~+$LdbDl zEjScJ3i`H{M6H}N1hnT_+rH}MQ%?};ym@S;cm7q>$@W-H+P9_k@nX7 z^ziujs*JS|Kyyad4H5wd9J4;Ti0&%z#yq3k^KPiS%dmw4a6+?rw`7$HrFGxt#V~1? z$f40(HlNFkVHbU)cF+e5@PP3#LNZ3XJncR7Z0}9p2kVV^?!w!92f|(WZoA66NJb!# zY=sYP2-7ZtcI>8;?e$l&2YYEpAlQdE0W<7JqHe%*9bSk4JCpnk{u}rq`78X{)We%- zOGd;82rMG#!7Y6I3qt4aBb*kzM|>T=)Wh%46%|q)zQgw*MOsLl{ldp?J$w8BTNcsE zkoHA=i`dF=1O0r}#z4qvf7E{mkwvt7a1)WJKPueAHrGrCnR)hS!%Sp5A@(hzlY!%R zk#IHnCQ8D6sr&X?p5HV8vfd*?hrnre_N6+6CYA!R{O37KAu2Rj_VHDNC2?P2*%tNn zts?oTndBYxEHmUK-8NlIFYlI2jk zKBq)|MYlg9iJ#DqMacLahwzBB|HdnLOwWIDgtg!(>&7vbK$;~n$fhymrhcA&Sdvsz z2hdApQKD56Df(|o;A`{|ogy!I4fkvJ`(=Lv!$jviWqX9=k#s?eth)vvniR|nlIUWCU8!GqWT E2bP_PQ2+n{ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4d8a713e688afeb647ab4d0b4144a5a7c2adff90 GIT binary patch literal 2563 zcmbVO-BS}+6#v~MWS6jf1;0>)R4W8R*w)&Dpr8b-)DS39TD8?K;S$ztcGK(z#rj&` z`)H@{ed>eGh|tb3?Q5rRzW1g7g~N1u?ru^R2z92(%+0-L&-tC-`MR6m|NeO!zy&;s zAcl)FMjO$Cu|{0NWw9HVFd^eg1XnTHgcPPCn8vjTKF0M3J)V*9Nd(QfAtNn*XPXd4 zM#h{t%!|X6j8BElf{d&<-;{An#-c#@tdW+_W!x6>I}+|n_<|vPNjG(8oZ)OdZS$OE zE*ts^S559bw8{l_O?N7f)kU$6^)E7nQr0qOXie)T&s2&_ynItzGDs3lTRF{G)XKUz zSA`*GRks-?4oA*e#iC{|+p1R1SBl(pY}IzOl@;}dZWt-=;TW+j8I`P9?bVseaQmd$0ZZ7lk*xmF4ZB0`R&CIJ=r>vWKH_os_gt)_S z(houWbZ1?iH?(y!b!mwmZEP2f;f!CszDG(TVN+T<>iA}8&N^DIFsqf^98y0pL<*D) z&nd&{JwfedBq|iiT9tB+U(-cZ+I(po5`ijs2WN;49oypy3|F317nY zU^5)=&E2xKJRgmz!a8=T7-)=vt z*}U48#J&nEW@>-VsOJU`g{wHa;pp5}=XtrP+qP~|UfZrt&CX=*&rdJR&SbMQa~bN8 zlJ9xn+u>4{VNn_zow8=yh9)MfH-3;>|3MMWtFNExjsruJn4MW}i{4^5S`V4py4?pf z=?*k8q6w{y#ZWyv|1j?9X3FEaw+B9J=NXjTD$f<>R#ptU@)(Bqj9=Z5#ttT;{|>co zT#RQ}E0ri-YKyvr_ZPf6B*eFcf}PTBF?1QNNKB5z>t1mHOf8W!c^e+ExsOVy#GqS@TJ&NahXrE4fY)xSvd-$O4$ z@d<*7`-#@Gbjl(?U!Y?k@d|7p8hDA|zzc+4qTxA-19+F#C_=Qhp@DWy=%Doo&XMGp zXNq3*(TPA1M?V2G3?Sh-2y~Id27t{cena>fUM7A;I5W8YJ=zmdX%q4m8Uy$dKMV%X zZz3`pO1hh-X9ztX=nQQ@=?wjX=G(8(5^dc;TXGBS477Ajo=(=#Pdz_K_NhlUlkjm(64ie>2&OO4MeBZ=iJEsovwkp? zk9{n6X`SAsMfnc8)mflw04E@!6ADhD9bHuHZmLNP=c&*mq;;R_^^_!=RGBR#v5g`8 zf%ov5H2$Q&N`KMYBaC4-h>L6vV{UcF=`TzlzQZ8thY0y6vPqK9*LdQ}f}*Om+S5)Y zJm$*YC)5BwAXeRwcF-f?!VaRezQMO|sGWAu?jA~{Pwy?SQ*ec_MJvjQmMwG#vD<$U ZS3XV=PWbvxuK9-SG826_O!fhc`~%4anu7oU literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillallCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/KillallCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9cc53c17471783454edf831be67a4f4621066faa GIT binary patch literal 3221 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/LoreCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/LoreCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c100c2348c3d92af8f420cc321b47bbf932aa10a GIT binary patch literal 2370 zcma)8OH&(15dKE2v>+`u76BvM!5d?Pc&Dbw#wIK{!_&bhUFt#nf{KQz5c4}~y zL78>3g5hM^vc*EVv@YCxe7#63@w8*|;wpD7Ij=1$e%|sJZXAznI;9e~v!21-T)8A{ z-!nX)Z)_N8#}%_x=M-hRRV?Q$n?XMws+uH&Dt3ig_9>@pNkYjP>*Yeh@{QV2Mh!J1 z?5uF79;P?>HaCjg&KViswd`ELGvWnqh70e9AXO-P;@Q~*EXbW#gv)TI9*U@1e#KZS zN*^%{6K%5~3D%`-+1nK7xD_Mii&92LP^eN8K4-YtJW@J?@Oc`@XkYC5@_vr+BwvwK zX6UH;%Dz=J(w67buI|R`tZeOH>BV6tlWT0_)a>UZK?;Zu`3L=)yMhawvV? z7%|YWiGqrvh7xR|qrt(Jh95w;+ZpH^Xn50gc|{5-iFiaJD+5wi}-&(P+(-1drG_KyDK(ZU`)y2KEZonl^ivhJt?n{A`M z*`5==e8VaGF10(7GC7!Ts%HH|kJUEGmn<_nW=q2b(A(>iz=Q?sd5Q?6>Bdz3cuY)KB1v??W7oyRG;##@%HCz+Dpj25c! zca*7}6JU7z7@alk4*QVYP5K7PRYe$RXz7Pl+Ni|mVb7Z>_CfiB23o)9-2~lEx82ADV^x{0t2n{-& zNcDyb=&PQ@EGTFt-_zkgp)QQPQGUV6(Rk}?wCy1p!t>ER#26-(gz}ekXa|mj@)GTn z;gJr#W#r9koFKOY9~ BdshGe literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NightCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NightCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..7a06c8ba1313bbb7ecd266bf7f0862dfe94f9be4 GIT binary patch literal 1653 zcma)6e{T~<5PfSqImbT0aR4VkTLZ0eoFCT$qc?7sW(?;8M@@g#u^CgPYJz)4sG z_!i&ke;2j6WZ-fV2EOm3Pw98%?n7AIt5Bfc&oi`G=iRn0IwC7d=w=t`C z77g4naF?O~hIFKwW;mZO`=ahT4O^}Y%Mt3S>up+FQU%YfnzmD;HHKKxZ3u>AW$B1Y z&{`ATGGDXFlPCL;NA?fg)1Z@@3a+T5G}Prc_opm(@kB3a25wsYm7C`4+cq z?li5c@}$!Y3+?yAFvGdSAxIXYPlXQc0~T`U+rncw)eA+nO0{h***ZoQ9;qr`-(2AB zP&;ZcL!#;iUR{)=7I?5%kx9+j#4tt}`W!8li4x`v{Agkxb0+R-^ApMp!#xW8FQu}gdi_~5pLsGdbl+G)Xq*R7-J12(W!r{6VUE8HYFrYl{_%_$) zGxu4PiEC1y#s%T~yh+;?J?Wcr^|EP~TyPeNa)N6Ds;#30i2WH5v?VJyVJ7xr3{Snp6h1%3sJ-< zHaGSbMrHiXpO~50MVu7Iz%G(eOuUA<`VvRdM|W_n6WT?JVF!ccNTZT%!+Cs7gop;dL5@o6!z?Z!PgtYmjf1^M$)J4< JW3-N7{38=3uwwuK literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NotesCommand$1.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/NotesCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4f6486aff109f60436fbfe87fe0378aa839289b5 GIT binary patch literal 2047 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

nv%h2)N~@{|5bRg>)Qp=K zRtKPM$Ne>dd3!Owt|U_OERK$p3?d{@7m%G&fu?@My$yO@FcKWVgeNeOi|kE$0+YE~ zRu`-ehxcO2AdXV7I}+H7a)0a8=P)r6JZXSJxqVvoK19~;!7<_K1DGLart%v;mdyZ; zE1chlnQN;eL2?nT8o==bn6;)~2}!WCJ+S}$P{HOA)dfrDtL19V{#}?B3D%UW^CYqp z*sQrm75#_akZ6w^z=?ILZ=M#>2w$3~dFF96Y+j7#BBXYX6jC7vaJ#|zi8+nYRj0COc#dogdm zR<7cn{ z@EPnCImd3sP90it0m|@(P(%sJ#H->U!>5b^!axzVIFDg46G22V5wjRBF-G1TwiSq@ zlBa7JIJIcxs1>JB(#cqdxiB#g?U;{lEIm{;D16i;C@ExZtmWT75u^QQ5?Ye ze7rZ~Wwh{hx(07yE#AgDq2OYoSua#vD8jf%Oo1V0piRV(6sPf9k9M&XouUzzXu(FY z4qajcY;g;E#7=Ay4xK=60b;_~0UYU&>lnUIa%*9Pg18!E%#I4G?*ru$+?Me&oP}*>pvI*Ojt+-pc z3HK=5uv2-8Ph}<%aXHypKxPwI&Nj{ja~>@YaBT{$ZX%bhL#vI@^Q-IFTZvU%Z6_!G zS=sZ?9*;Z8*7;05-JEGATS2@&B<1BH9d8wMkii0iw+lMRW?qMwi5Wz(8Y-E+*VpFt zd~FB#E5g%8&hO-{T!0|iws|+pd7=>=9s*6gQqVze^H!4Gyp`lPkAQ6Ftt8iZ1Z4YB zU$58m^zx?O_Vw}}9`vmw>s#niL`v=*tY=S?$+wWA*}D)IF*VD%i?M+T{A2XkD0TaM z8)V97g}ppFIoHNr&!c?eJE#U!Brj5tI)n)bs^AZ)b`>2eI#pO)0{(-Dij9Zp?&F4* zf%kRvAWBs_=f5%iAZB|aDQETnF2{#()Ippe#Ee5Ut{4gJ=MQziK(TcB6;Q7Z*A?=` oaOn$qCGG*&B>(^b literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/PlayerdistanceCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/PlayerdistanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..41f17d7c79342a2e62d2a7cf587ae646ab0753a8 GIT binary patch literal 3313 zcmb7H>vt689e&bf_C|g64vJ@5D(#h_dWytQ#Iy0L9 zZNYo%t<_$%XfN7YqqbG)!9d!hhYx<}spt5ye};d6N5$uz-OX+!0eVi(WZpNw+xtAv z@Appr`}My*2CxNZV@TsW5!@fe1`I{9AH(WxM8jwV-;Ln_vT=lQFoy5pP#h27!8jhm zVfA=e!}m4(Ackf5VH8L3BMoK@35-RMQ@`_ZEQO3Ry6Vgw}>(vHJX zA;T!g7~+vATzG2f$56qfhN&oS#_ zGK)vfIi-?m=RL!83zd?zeb4ZGb9~$wEt)5!o42^Kb8@h1wv+Xii}&1il$vKvc7BCh2X@k-c(Ly zQ~qArDmZ>AXJmty2OPJUA9U<-tH8?I2v{*6Akjz_nDCF9@0z&@=?e4?5nH1~{Bo{2 z?i-$TC#7plZa%W($bs99y|!=pCk|Gv>8RHnx$mA3*!+KZ2QCUS$1XCRz?x5xA+@X<_6j3(`lTS1f>GK$+rFU`f^|2>Z=)AP=^LhMx$;vQEX# z$$Kp&qcscizDY5oqZ>T}OUv_=q2s4GrQx)WM{!EWV>l(Sx{2#~#}w#D$yBkLBY96v zT&eB-8Xnj21fJCK6rR@bGaWz2Ga8=N@f@CKl{#L)FLeA8FA6MgiXPA_(A~5Zuv!yZ zozy|abYQFFCHzXmuXX$eTLo5qTXF*xt4J}bv;J0~C6&|hGG5W~JDd?{O{Q`hUe)m$ z_Ne{e>-YoCX!xU!KjC$OwW(aSCzGX$=O@P`fBY#a?c}X}+qUR<1Ao@=7aecnuR7ks zw1&5Jyn}aj{0)EC@DCmD;e7$s{MRVZKw>&Rz#f6Fl&k?;S5nfGe$sbXwZMIg4wssy zu5kni^j$sDfa%po2KzCCEK}H_}FYr<#FmHYA&|eOXY$HBvTRPjb142sqQ1v+$ANE~qvtd0${MZNUY^W)T|6!RRjVMS-f9(uJHw3%v`(#^ z$gG~e^uG&OJBxKJyy3QI&Mn+ew^`hv4xy@_L9(B|=WwIizDZTR{vvMfk90;NZ~Y@evTZ!OqO3E zQRhj}C#2?6lJgmf`5apWc;m0cHqnLcVjb=fyRb8$^dxk~GWg%aR(`2(#V%~ac4qqo zTCk@v8vVEzW{fWEz#Y&SNkcy)L>Rk|KD+6A8Xw_K>`~GYyXz9++g-Su(olN?7^HyO x#17m;k5=sE$+{8y3O8uDSHpc@;9$#_SRvwHA{s1v>o0r1;PD0a(V+#IZvddcm7D+o literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ProtocolCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ProtocolCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4158449803caefe1964953f12e069c815b618be2 GIT binary patch literal 3230 zcmcImTXPgu5dO|yGLy|9$tD4UpbN;75XcZTEM^f+BGG7WvKSTAIN3}#LpD3>%xna_ zE8g#S!5d!ltW{#rD$8fze6z|bAN>s$Wf{LSy9v7_F}_$^)qAE-cb`7r*WEKe|NZ@s z0ItKA5o|}Vid(924Q{PQA8wPY+g0>OFo3}t3}INs9T6NxDuN@pvj!u$s|I)D9x0A0 zI2OUZxUU-bV^oRigEdGN-?1#qheAnEfvRAOv!-R2&R!!VXMeT@E{x& zt^!X%L7?h@m9xBq0^6GVT{CUx#aoX7fwlcs z&KxXEkD1O9V=PNewBJq}*%8CBlcpoEu{;EGw7ir0u)oK&!V{L`dIF-4DHai= zk{5TzsqlC&le^rJM+s~#kF|U{M44X1t$vxr1lFWHBRw@>4Ugjq1v46+#8XUN>Y0Lur*T@rGa8=7a|)i<@B&_Bjv8LV%Nkz6 zs{$L!n5lqO!D|{`#~TXX)bJMG*6@xL@8WHN^_O$iU9hr*R^I15ZpRbH;vMm9dt0Kd zBc8Y~79ZbzkV3=zI3vYbvJ)$~l8Y+;-_`H|K4dm!p6z?eTm>2zxAvFmHGG7R6?~%M z96l8Y#7TG)kFs3GWf8?@OvknCTr8ewj*lz&OvC5+LLeAVvz?ZE(_OTCd!Lzb@pJzITXA`K}%Q0t%mHcJrU%tz(*tKG2GPGxzu0Cu! z)0Qg%;sL26UA?`d!-ozJ^rcdLLxZf~eA)hv)x-7JS($3J=NLIRYslV@H!n@CWvNP_ zMt0|b>B?Fs+snCe_SKpX7L2Uhm&w_V*+X1cFg+?zR|a&qKYHlSK`@lda&Q)B2OE4t zb15AkZ{8qlrab~e02?mxa7oX0wH8TPSK+)s7G0G|!yPnFaOwn`TbN8J=RY(o*!y#C zXzV!8qIGq2;RmK2RjM%E;$g2<)rnDqu21@t?BQhvRf#fjSiLz0+>C&ho;1@_ zLlYCS1_cro)Ga#>l1uKKlm)eA#RL8KuU{<@-e|E(c%>EdUkY3jTljsnogYs?0IX2# zpls$-iq8T5*Y9lo4q|6C@GXKnzd`6*gunKUTPULlQ8prs^{BxHJ~v?}HS3D5XvHo* zF$i{}je!Mp>?s})_?^BgAbNKFcouc7(W*Hp7oY|(EB5XR?u}NTN8}9t2p$aX3kCOu z=TLJ2nm}h&Q`H5m5jcZxxw=B&C#>yMnv^-zeuKKNP<=WmX0f%Th)P9>in@}b{wq|S z4vX3O?^}OB!#&@jF}m(N)^9$K4Vy#fphlZ!5sq%8>O8Jo$Z64Z6ZMTD+BSw(H)hQB zjbUjVUeS0KH}kf0xN5M~|G)YSLSHW)7h?pfDWh8`cF$p}TyLW&%T5v!ge2rBp$9gT zkgEuKjB*R*R&3)hF29W_?;yu_k>fFXOp-2_G|iBplO*R0((?=2@i+Dgfop||4pEPU z=tiec>|s*YOPhA=g~G_c<63@p2O0f0bZ`}7{9mz;t1x{#k)T~rlDtp~TE9k1dh&2}xn8!v`m75^oTX)YhV&z7# fxS^nDo|#wf{a;RhqV_M;G2M%PwcpH(1#sve4lY$X literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/RebootCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/RebootCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..61f7420009b254a258839e8aad1d03bb2a6a0ad0 GIT binary patch literal 2191 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 StTuPx4=O3cI5i=HqkjXFLV!pB literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpawnerCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpawnerCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b4452fa2c13446501ee193f5bbedf8f263439f29 GIT binary patch literal 2665 zcmai0>r>QL6#rdVHp>!G7nQ}T#0M)NkQQyVKz)GNqP)uT@L3ynFH0nwY?B)V`>@*g z>kqIWJJWHd-*iTlcE<5rJDvIub(~Jm%?4ax8QI|^x%b@j`2Ef~$>0C|{uID5{20f6 zoQdIRH8k{AqYr20UB49P6ucY5dvOfld<_&_h+_~#aSUTb!Ki}w2tE2Ve6o2^I<lPEQNhv~xkKjE?Ut z+3H`&@PaTMn}VsDww%lyL$cI*u%`FQ9a4!?GNxD@Uo4QFeWiNE4ZVMLpR^UPm@mVD zQq`i#K9?K9cX^131j7qLU#DF@JtB?3B^v6=BpTpqEOM7&cd6qr#!*Y|k;5%%VPxip zj6%RH)o4(RIZ89__-=-uGi4Fft!1r4;;P~R4yu@iso;i+IhZOeDe@pPlO^n|@yXDb z%1n4hj(2H#2#(eh-bheSDsWU3@R14^o&ur5$Gn1@Di*LvvAiU8l{tp`m#ampdwtWQ zB9KwuqHI!`Fa=G;$M}R{o0fIBXCD?CUobu4b*T6h^8`p>$QP!ir#bol47VBfr!tou zU(5TR(5AU&InEqalV%7l47@`@PQ~ZAqu{QJFYu*`ukbb1bO{V)Ial!wzE$xZz9;1r zmtJO#d9L||tRZ-I#l9vSEtQp_|G-e0;vEd9H|^@MTwc|C4DGKr(Q9}->?(#`8?p(S zf~q`pDaXZnBB;pPHuWQM7AE)fQSRnV&!a9RYR;S;8W_Gl+CMflkWLSb3=@Ba()}67 zEf(;E$46|7ih^BcIQ(iaeU9Z&M^p>fusw?aW=J(}jJRdv5<`t_%^~i|(xm}X?ikI{ zZR^vggTk38Q2c!aCBu&9vex&MK)Yd%5Ww?>z(Bsm+9~|Q>e08&iJT7Vc1#X zy{wJ(k%t{b{KbS*Y$}G@92es>cDM+sZw+m&bWHa^OKCL4q7QV*kRne9gR`DsC`oyU zxS%(TMLKn5mI=h6k>2a+(KA!S{bO=`mr;^|l6@LzlGnzy4ocz(6iB(&BjsQ^XNxiI zU-M4cz(Vlyh!z`@ny|TrYHkgZBhxo{Ms#oFcLhoMI?(7}{#AfxJPwjPL{C@gxq`0A z)+3L>S`!tIP}%wrkw>U%B@ulPoM^=d+a=Vk9D2~so?%C989OV{6={h4iLLF4U8}ndk!92~JVf%>wHvFR zx~im31H&`y?us@<8>*J^S_K-S%hbn@e8`} z8+z~$P6aTJAx1V1(TNTM^CARvIvFATQ*^qMeBQ%R`W-`50=-JdbF%psMJm^h;{*|2 og}=yt7scF7tM!P!KvF@^pn`XrUSO|+lgWSSdy$c0Suv;o2UtwmZ2$lO literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpeedCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SpeedCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fd84a594dd700cebf38a2b0c9db0fce3c0cf7a59 GIT binary patch literal 2313 zcmb_eNmCnF5dNMJXb@uq0-41&OzcD!>j3f25*sj%60yVr9K6ICq$e>jnh~>rN#&eN zjyc)4q*CQeE>0ELPO4naF)8Pod-4PF15&P3`i)o=Kt&FLs(xF)ue-nQexqOh{^2En z^VkSO!DR_os?mo5CK15Q& zWN`TP>tBV^R0z{yG-5`=M`FAsL`uS}80RF+OSmocK9;Z$!krNAGE@!ertXd~oQ)?P zp0>=4p=Y^ja(CUbSJXA#^*&SQg&gddX9$j28O~6f)J;C+WW&6wA0 zU97h^gYJ^b5O)8#Tqv47UgGCYQA}O*J$#r>0z6H*8r{K*n1*!%*o6-elav{SZEp@c{Q_d@6*7MTX`QI{syoLW`y6 z94*JMDyom63}uat&(}3$WkebBcc>=QGBV&YvdA%1kU|JcGIT5xPuUPwWEf)J8cWYo z=9RqXxXL0|G*i({m*=?M8$w=&35%gImiD7i3_Y*A3aR(^^~xwN+qVJsEP`u=UK}xmfW1fr%hvn$hpIC?r1AxmSIsIs$E+%9YYhn7KzejKrm7OH2p87Z5CV2vtBx_05qXrTBZ$J}$T;B1|d?w6I{puQ&}JxBEmgadfOr0$A=NX-`H$2cyg$7uQp%iY0& z=Q#ctwLOvA9p$I~X5GbLG#LCE;b^cf{H;)^-&N>|2ET|zmS3PDfSw=GxbO_o$cZg9 zMT1*tjD z_}M_|8>0k{6ZJ_Ve1XW$5ZxTzSVb?sBCYSxhfVb36$bDVF5qWe!f$l*cU-|A7{Z?z zW_1{04fJ_wBQ%l35mXW0O+x8GkZ$bEC}lf|rCBebGm%EJ&`+gP$y&+AyX5nE!Z;22 b4O&9D5N&*eMpp9|`u1jFx_FV40=V=KH9}J! literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/StaffJoinCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/StaffJoinCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2ac6db5e7def08c66168accb6f00628b77237766 GIT binary patch literal 1414 zcma)6ZBNrs6n^eDRyK;j0G%i@Kw%pjRYXOGFMyI@#vl&%K}}5A?&f7(OWF>_Kj44x z5BOOVBKm>&+23T0=XR5TW5F~z?LGJQdCqyB)BgPZ{RqG;mcr=9cqguhpyEad6PT1w zaTyW{lAV|eBZYJq6ikPq;iiIH3T7CB3&IrcLx%Bq*5O6VEE%HAHIut7&{+=q@fn5+5R)YyxR4BZZiy> zgra_hyRU5+a*sOfrml4$XgC%aA@FWJz~;(=>9oi7m&j#W{vlTe!L_3|DYR+u(LhIF7JroO<({ ziz_RyH=aIUTg~TJ*K?%$?#cbKWj8F^a`?Jw>@%$KeH^DoBGXz_qJUBQ zp>)$P2k?Q(xue)it5>x4(LI`+`U;ke_zvJtenH>>9Z3qo&)yq-6fdHKVh_bWbRj}l zKQ3W_?sCt=pv(ZR2n~ajBf05Bw8``VegtSQHuVEaE_L(~ed$Q&Awu5}_Tdx4>6Cxw z5M7edPaJ<4qr^CbFs=~NFh=N-jL8PpF=Gsu=@gUrbn+_I(?R!PTqCRz%7)vI!T6#v~c?QYYpv?&EDuRtZF>0<$3*kXaSfYCOsq*MVBw#hauO?J!frWC}t zfDgpCyi`O*)cS&vLS=^0FMjYZaU4H6;|Cw3p1YgG);3cnGk5o#dmg{@yXT(GkAHuA z1Hc`)j0T zfk&~s0(+qFWk5heK+=b~P(=*#XNsHc6`}FxKCT%Ok>)~1gwCIah++QR&k>j+EN*0T zO|~2(I3QwF#6cep;V}`1MLaIz2@y|ngQrA1E#Mge&oX$D35L3^eaeU;+v=z-cd7|3 zqog+*W=65w7|PaZx@NaC)Q7q(HDTz9x@sRV%prM1v$Kcfe!jLf^fP!njHJpi zr%Th-ST-}DntjSZnl%0{BcY`G6;tDKPU*GxY8J!B;*k?ZCZp&{OIFNOHlymcC0n*K zI4H+$#m-tC?l#9coX(~+ogq*>me$(qBo9EtPca6UPzv&&O5ET0_~ zaZQ{Mdo?ovWT+&95<}g}utT+g=NNo(BWotq&6;x_QwVI~U?l48I~nE|X$FSU`udjo zdTw?^!W!Jp0XsEHIEsjXV-lW6M8XS*Ff0xxwpmI_Z4K}fBO(Ip+}aN->2$k*7bU!e z;{slmZ~{jdN=Pl>6$!86H3_fd4FPXTcnfb6b_pkOO2TQJVF(xPLO0DMzVo$AA~}-P z(!?;Y;VgB3Fe%|3yer{7oFmSHgto)T>UJQQ3`uw&=lS*r3`~~rA-&1+uJQstmT(cDkYj^{PjODdXBZRkxr8q`H(;oxFitB3a_ks`71;srRAutnu={uE7yjmcRHUGLJkF8p`vMcC|gr4xmPtanq_GQUGU1D-rc>MwsuG3 z@n}zs+Io1>=E~V)br@-mtK2pf-AXHb3rrJUL72#+Hm6lR%w@c`rSBDy0NDjeql~3o&{}?9)gQyjFpEt!ke;(u` z>{YB7je6>_Py;3L>W(lsZ|~feo`HR8f@dHbI;=8fc$mtfmbfXVa<_~pqY7e5hH9J| zKQ~B;4Ki?hx;L#HR81gq>@L z-MF134mzJUPI~9`1Qc1c4Hq5t2)RZMy7)KDSb5QQn>LIn@`|F?g+}kTQiLE9-LktY z8r#IMtf-6gG27TnOjQy}w@dg(#^s#P1uUa~A*<;x3k^CxuIbG~?=<9Ty^EwIyrcmF z;l`_A;p^~h_m^CS_X3p zCQ!u?Yo0(gqq)DIUi=K-p{CW_cpY=MUq!8d-Z zX1mbBjzVT9u!^0ep5q8LaE{X=gZ=%l{kx=q+j eow|i$RH3xyFVqOQ?+=W4{={!&5hc9`_x}r~P$G^1 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SunCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/SunCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..50fd1cecf4af2f4e59a6533c2bfb96f488e43088 GIT binary patch literal 1734 zcma)6ZFAd15Pr^fBF9!6*J+cqKrv}?9p^>76euJF8n*#c=Y=YEnzxpVeQ}P+l1DlP z!cXB}z)VvDGaWv|Ut$>cWK&F$fBgOHa{#x|NMQt1NlXu57}fyZ z!MpnOo)+&LxSfW957PJ$A8Bz%i;oR_l7fkuBxd#dQ>~m!;WK=m#9ghKPoac++V#GH z1p{9&^v_CHsyT)mg-Rgmp4)KbuCQF8zVrNj>p-gT2dk##%y^9f_V|Iw1w!TW4MLR{IqBwTSe!=A{^k^P4_Uhe*g(oZbA1;<{ySz-Sr`o;tUC;0IxEhFM z*EwWh8w|;&P-~hohRcQV-nodhgd@|_yY81sqTE)V-=cvlZ0Kdol4f-;)PsC4^tp;4 zB?{$#ZEJ$7y`(C-$A zf%XMgNnWGd7Tsg?9xYBh11n}@PZ2NvjKov)6-o5}6nVTxau|IiFOtk4jZ4VVGlC(! z9@(N8cmvnzM$zyla+HBl-mz|`KM_ZQY}*sR!&sVp{v)bW$4Jt;9AhAc7w1&ZIZfx^ zV6H#Ih3v&640b*`Muy=Cmq?M#k~qT9FSvY+D=}!eacH>L>DLbe*hi(NsMKN7juF^t xvTPAJ4ZGL@^aA!aZr~=tC6IU32X>LRD8SpvKe-EW|?^t z5GikZ^bRM>vdV)V1dD)L#UJ3szrZRFTs>N)mL>MvA4yDDqh8*;?&e;w2nYyO(twk6{=iop=Rl9k0f40w-fQh0z#Z!X=sBOB&wPaG7DxuB`2fb73Vf{3)JyNE6R` z1@269-&S%%*)HeofZ;@Iicql0g$UMIn?F)UjmN^GjAfESGI*HO{gcs5#*lg+Dx#y~gLc<#4xT<)m-BrCOrQ zW?&gQIH;L1>|Ps+=%F+y;Z4r~Wmun+yigwJ)doAUoEQ29aoSe=buUkNP=#c`#4d&o zshBWu1v47nGVnHL47`IGhM`2^V!%t{xM|gF%n`}+w}XP`i@eAE;%%2#gyf|lZH|Q1 zB9|hq;i`dm!8PO!6i{S{kdFpoU=}3}a|Uc&(@-|xphQt63K@5vJ9g1@Yt#g>8Tc#ejO0T(HTEh|Yq71|Ebt&;LIR1I7Q2>~R-&e1s{UldIW z#jFQv+O8Bn9c)U^RA!-C<_+AyO@`P~jt1US$0eE&OK+Zq#Gp4hF>p&crd#&>zv@he z18W1E;(=)N95rVHS53@Hj;PO5E#X3GJJJ?`H7Wdx9R#*V)3APG^6KQ+h4D--mzg+6 z%v6`X+_yH?sONY-Lsa_Q4IJtaqB6NUuKlZ3G>L1C7DJ~Ro^cVVE@jyKEM&SA> zRN{KboghbPXTJ(>9@I9+;m5K1Mv+K>+1urz!1#Es^xDG|Hq z+qRQFd_Wthc}S)^m82ZWZS>sKKkyK&Ki>8Lk^cK=e}ImAHRC?r>_>n7fVLDO%9~lK#~q)ddmz5<5wvfhx8ZZvmx>I%qB3)r%N z=j!lytl*#jpYU5(z;9axe^tS6ufb3K=ji*^fLG*4pveD-Y6Wb?I&35Q`>2XLh;9=W z>5o$lhl&1^q{$Nb<3#&;q)^2He1JiGh=ceThj0f&xQiqB1V`}&{px&4o?l@EKhRIk zk4WPQ{p9>iD8JHw&TkmQQ=DcooMD|f%es(dgP5olJWWv~a25k}MugCtyC;h~Ds;0Q nXm@~OV5;~O?LlgmLzKxj#CrZff_49ny(^x($#{rN+VJ9E95a(9 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand$1.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a78e078b169b0952fc5ea03bfb44298fbd8a81a1 GIT binary patch literal 1469 zcmb_c+foxj5IqxOmL!W@L_`Epi5kLX0l6uNO1PLZfMqNm^l7sh!oV_1?ap%X!T<0J ze6~tde6W1>EBp@2QhPVyR;A@jQk9;WPG8RH?)0}`pT7VY#p5`VNCo0%0y=Iba2x3) zdXY(@5B-4{&@h-pJ&Xi~Fsxxj!yN{F$Fx%=;VDyEoPp&SVrpG@sUe2NyvHp^mTa-c z4awE6<8B%|Liw)@%h}p8Wyv#4x9o3msXT*1tgRWVg6|%M%T|o0DCD$|Ld`HdN!KW5 zu6LConsrJ9x-l;#U-q|(+xtq03&*SvW)do;% zm}u6yz9g9ru*Do{6D)>~yyKRQqQAK*ltGmeYTtNjoBP})kA{LWt<5EKJH)7Alp#@Y zeAnU&A|TTKmwFCvm^&u1o|l&GctVz!xLS8g8pd>tV?swGnshYaypCpcXqeP-7xy$w z>6pfS%AsQh4|F`lBTDcua5`o&r(s^l0v2f&YBCC`VTPVl89i&AmwcPM#%x%hXTFrx z4hAF*UkTgDDejueaT(@o0)j!~d))FB)ps&|x;xdWHmZYL;Ic$rdYKQg*rqHS1?5t~ zr-BAIpW;zL&(KunY9;J@rNcB|?djf%f5;{4*fzJ6a3nRq^@QVzo}peG6K*@>d{hW> z)z(dKneVA^+FsB3-z6W3@H>9m<5O-;ch0(8QXXA%DcjK_&= literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/ViewdistanceCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3332dde1b1a7ce5b1dd612beed79bc1f059a280a GIT binary patch literal 2898 zcmb_e+fx%)82_CRvLRUo13|D};-wJ~T+yNy)K>783V|Am_0rNMIfRwXZrt5~*o(cl zYVQ|2ZC^X%TW9PjNS$$f@Tr~YV`uu-xBd@~m40WFKoF>PrkTvybH4q~_x;ZAyPW;y z!Oyn=JcTO(Y{Y&)IxDaNT@^ThgJO0_!eKv-1Q5e>LHKYqfNt~z5l3$jeRy6B$0Q^q z^aoIh7b-A-;}TvBAcPZsoD|PfK`h5sq! zG!8I$yUY}4sO;7Z9?xZlxYe%?=_Cntn@Lq4P%TZY3qr3mqLGioOIuEwnT%?rY(=%w zxePZPTd^H=c$i%B@svh$Bgwn+N*#nYtLM_1!4O&6WF9Po#Lw|$&LM2O8@f#^tqkQx zM>R(&xKs*O6WmB~tK(Gn8Ffrmbk#^J3CGfmw0qt%dps$;iT!p~OPfw6sU+OVansUM zU8XUtr3qO%(WR$c9_C!RD)iD{JP8Af(J5@#C&PwE<08t58X~cJ5ri%w>IAnKR+X9} z9yMn|>C?qK^1m$MsL9bDHS5NOGEjof5J;FgE6EROB7Sv?5WZDVBI8L!DQ(6|0wN;= zLxL$I3q!_PP(5)BSGxpDh7CtX4r3C=Wt_u=g!3|9#cPC5 z#_M=P#s$2|P*q~v<&>eZM3l7DVW$w?vDU%egU5C#T|(yS%6JQJOL#}dyJ%%t`EZ;& zbDB;WAkO(7gD1*mypIoLe29w-Wszu7!X+7((I(^{$@mx-C43^|Q+&p-CYsEbK_rv2 zoyZWUzcbFc5!u$#x|33W$(nkc%-_^1(0wlB3w$Z#D}2pRALTBi#mtJ>+=)0Q!DTr3 zzc^)Rd9@5cZfDD#MQV^#1Ir^+rw>J zP1CmUV%w-gt|&>&PPgNbyEM<|BGqxIpbt$HcjydH3Ks&y5o)!f*qcd(I=qshF76hOVsmSZTS~Ed z+`>t?GTPekUv;TXOw(^6B6dQnjysV4^?Q;3~L41 zOZVkM+bVV)hSd$Rg`u7E=XcD!X$s?9uEq?9r$vwTXI0DQv|J+k)Y^~!%Psmi72gpP zw{4KlA2afoAl()ewIwsWcxONM3~mKXe3E(ek+==g;rz)&1fOR3|pb(9k9P>ubUp|dm2AYLdily&5>LyV?iB(10S7&~_ic8I9+i&8Do!+qbdj!JXs;VDQ*%De^ zRJt~cfP57YM8&Ltz*p~^Lm<^lVPdB4>df!Au;xTl*gJ)_O_NwRiOBI;bn6KYd8M%g zj3BcNg3LJ41gt_iRzrN-g|QB8h@g`qbe3W?PSLqQvAImzSBU0sh}0>f^)6BRE4JY` zY{wtijX%+j2iW5V;xsB~zd~65gLq}#EBJluuk$|SN-crpQgZ;;~shFAk=$E8iD_Btdp=;!oGXx_uNM{3*JYCyKKHkzCCz`^gMVL Oo9G!JTWjb^zkdKakS7NK literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/AdventureCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/AdventureCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6ab4c084680580ba6c14895a0329cd09970bfb27 GIT binary patch literal 3090 zcmbVO*>e;{82@#$WG0)zB%6aI2pNdvPF7F^5)PA1fJk-|*boI&oZanghV1Sva|8mO zcwcxcLE*`gM+>TepjDKA`NQ#?D8M=&9GN#Iq!eJR{ z8JSXIFeGFpoMtH5t!H$5FGEx7u*Ks>CXv!7cre55Gln@8oYrmUTyR{hy=~(RzL1gN z4CTXmhDV%qjGJRxEJY`QVI!`k#x+wHbpFt1PwEy!cy-NjBc0YV2`i|XNhi%SwiUE& zZDJyr)Y3dnwt{_$X*zaH9?G%y66S2mN$ME}b#=u#$P5xc%j1qs2zRy)8)h;XbEc+r zJD4{d%xjJEOoE%eCx%aH(^@d4Wsvf4u@VL#;P^f}n>Gn);G^Ndus0&N% zXk)qB7&aHOuWXS*O1ddXRV&zLSR1vq_*7WSx)G%+V(>=|$Bgs+x(IvC((rT(2NZOm zlc7}eVyD1_CBatUz)~;`GFVp-jYY0VIHTY!W*CZ(9t=r1r{FwZRPYjBW~gtDA2S>^ zu4P(mRf{Ie`osYfR%wsd8 z?`t<`gr1?%RY87E^LZcVy>~HGla%ZAyc*Z-Zy0Ku<3}wm$$QjbGOek*vu=e^kJg1o zBGHlI!DSvPxFS+|Xw?qR7vF#AGls4QYwOo6uP-V1c_U&NEKL)&N9U^Q99vJ>I=6zO z+)V41r5n`S6@3HYp~%V6!6V_JXmn^KLY1E_xZkv@I=A)vMu(_-sA;3zoaSbP#tB1p zYuif5Dwd+97UriNEkz-%X)TZ#iJjtcySME)Rgi9tWT``11<|r9mU-7gM#`YkP->f6 z#!6AiGc*^f_NGmNwfqr7nV2VGZi$*$g2)r2(Ogx~&j-leusf+s`v%4bBV$L843cEw zIPzF1Go;`4NGh^LbJ9C^=U`=liGFvEl1CKdT-Pylujo;M(4sj*mbW}OaA7OSpu{J6 zd}?H3B1Qilh8>F_t~^+m2U29Jg3yMHjAf*FZsap`P*D^>T+rrng>rwL{QtpCIK{d| z%VsGj)FUf;ytJP3Ly8=h$bPOC%V_5Xm*(1H5Z(nzEVAGg;4|xDD1G zD7uN__8ais#G30ab2qI4_}q03J!r~MLv$^IbW)oW#iQ6t6e+2M5 zG1dU=YRAtgnZ@rNKcOTt2Pq)mLg_5(y6(Wwa2e%YfwDO$cd)hy*E{cCMnl&PJah-; zMd%7tcsJMZeP{8uIaK!eI^0cQ7QXBCK96+{RX?Ko*lpAVYHwj3DX(LoO`x8ZdfzIqP}!0xn@$hPKOtA;8{1E3JWlLb~A3QlON*Vu)PFP)BP6B&>&m z4N$R>%B7JCW;12E2|d_CFXtAFQbC=d8%|~P9aY1xR0V%f_W#5axQ87~#x7QlUe5^s_7U2p6@pm)^sp_?EbLP<1Kz4LfO9OfnbUvtm&*US-j47g=WRSub`| m-R&VAjgar7Q^MZ$_Yt7aJzTm+)p{S5E^&bb_7PhVp8Ol8=uUJ1 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/CreativeCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/CreativeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..37595acb80d46563c8d98d2dc8ab9745ecc952dd GIT binary patch literal 3083 zcmbVO>vI!T6#v~ebhqhZ+Z0M$gf3LlN7}9+%A-7NLxEzN7E-E!iksv%U7BRW?xs-i ziSHM_m7?&;k&h0{07YjQ{pyT=h##HNFAU>&?k3x&FHyhTz4z{U{LVSQb9R6E>xa7l zw&JQE9q5(OSBZ9nE3ps#Vz*zy0Y466K*k|IoW($nusGW+tO&leVT?seFcK z9b2;r~stK z3PR{)kQ2qsDX?Hma1`WWE0_eiYbeRZyg($JQE(Ph4CO};h9#U+a2_uzcnL2vGzJsL z%)FY=v#pM*$MZH<$GOGTo$V4{QSd5WQ*Z&VOL#-Un|MpX+jxgzbC8pkrFtb*$8}qc zbDmZ6xuov!r0SSzFzJO7iKDij;yYC>l}V_(axS~5JsZM9(b!O=e^ERN zu84vjTDEzM#QXOx#?bX(V|}{qwIpS}=tGQwg*Bqi=v>xZ-Z9dS!EJ4rTN%T)4U^is zrgz`qK=kBr|B=CgSZrV@N~F(~yx*{_Ik)S3hX<%}s9$5;n&eiL1_?DvTl-STY8IlU z?&YWRdYUr2x~)WGD1M43oSydML?6Q*%29i?i9_qMSY|^Dn`x7#LZxHrSvyU9X9$*> z_6ALfx8fB;l^7+1+!mBrfXGv$p={DDi4ur&)?BG@;d@j3GPw1oR9EP^9F>GxWXXsZ z(y2J0C}4^F7pPc8J1@C3)8>QlUXaE-4<7#(1vlqGcFY1N2y5D;-2KmFQIro6#C?V> zhED;rx@4Z*Pq&v%sW_mpf&O_j6#%;$`WY3| z_&xL!Dxx!x0`e_XPNSjg4*U$4QQZ}&nt^f$E6Z@b^X_Fdb=|;2cTio1u0W0V<{G~5 zEZ;JN+MT|Ty9rFgcfHZ)iO!(zN31$_8><8Lx3GqcH!#p9&`3+8Z}!+!JgyaQ9}cXe z<1MV8L35+e(^u(^^fwgrH+m8UgdtC=rD&)q_DG4?reYwqp+L~ZPZ!s4senIP0)IBp z67;PF??vci*`H6Gjs2Hu#0%Nn`|^gzK>1` cd)D4ZfFAd7=^nB5K5E^=1ya~cVr6*pZ(lu22><{9 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/GamemodeCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/GamemodeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0e6bd5adad2e2552539fa9ea2b2427d1264b04ce GIT binary patch literal 4922 zcmb_gZFCe@8Gi20Y<9Al23Q~^Kw*HgBqWJpu9t-1(I9!1; z98sW$(T9{+^ef;B2E@y>f};wIavZ~;c$HBwq#&!nR4^=dA6H;0uoXB8a$;jd!SOJj zz=<%P#8W~#8N#VB*5PRd&xqgC!qKw|&M5ej5T6s9&ntLA{C-)Oy{O}A6zN+AB z3cjx3Wd+|*@QQ+OD)?3fzAaFGr<|0(8^ZTO_&!5flaV!?T@34L+H9UOv;7%kfXB1k zIc{2m@e#wxJsIy6&mFbB406Kk=L`$lj4bcS4fS#Bpx&3Eok*LR(lfofWr(%6DLY3E zo1txX&na_gNYD1$aotMihIrPo3!v-`~> zW(e^ocq-=*z^yfHrj?HODEX!uEuJAZ!(B;7PYt%~!)`%| zgAC!MnX^*-AwyJs$&~6e2>dE`VK;-~mr%tIFdD*H73VOj;)fVzSXNStNr{B;BNac! zs|-@l{zM4pRr~}$Rq->t#!wwi9WrxTO3!X^G`%lpbL}X%xVF7EgrBSU1um%gC0-{o zMN>Vtp61)N!a-_HiId5b&AYUwVYgyLIhIoK2HqrL6TwYcTz8BS9>T9w{2CWk{05g8 zHbptbv@|~(?Wk^ReVk{t+;G3{@P5rPwP=6BvySox@<#<__mNLKXN?#mdPc=%T%5PB zq-T})rIW8lhH|}sgesM@xQZ*nS>ybGHT!1dErhpJyp5|NjH$SWaTV9`4#VA3S+^%= zWQdRAAa4+d^Ayum+{ABHOo+o-q}kjl*2Emph)JRnD&EB{q4^%cZcy<%ysF~&c%NbO z{P6mP)S|ra1iAZz%LTU-t6dLt03*Cm{KB!g5Ehfw^y8RkWWVhB$aE!qXZ{Np!~^q7 zqfmC=+Y;Yf;f?EV&73?9;g57*5}h5%&bF3mWmj=q+@}Mx_D=8K&%eVl#O8LkN4L4x zyNDoO4AF(BQi&Q<{jBbCj*)Q;ZpXX0HDuVfVNzFJ*u1yBwc~JCOLu!~GTGYMK|N=< z7PZSHw???tLG7FRR88$n$QDjTOU;u%p3^gQf0x#jSakLs<0)rH zE%iUyusesTJJpEAhFP%`QcIW_lbUk5W9eBtLk)u=TI$;G^Ci)|Ertrw$=kUtTG8xq-1RcyQs)ToON!t~zyWO3pN}{`^`Cw~r3mKM<3}1uJkdQe3lGr$D zmihbctWuIa-My{7&25x&^WNT;j)Ohj_X2@%CSVP~tJLzK>2!M%i33`5pR!Le1 z=y&nPx@%w?BY~@sHeP{z6~W7{ax*<6klkkxOHhHOw64M)+NsK$B7wcMA}46UL*$rY zANJ=1gx-LJAP{`F?md)^N`rN`P}VVyP(&F+`6!mft|QEF77JpLigBpdaaRDB>nF}) zQ7lsFZ(NWX>nG&%c(Yz=j4T+#!n3Fr;v!e96k>$LQ7n&L!Q$&!5np4$DB)h@7$b5(J+eDan36!Y0k(C#>&2d3nM zzs_;Gm@S|DiGPauZ22VlJUBI<%2;Hp&%yi^s`IYUwg4^!cDtn9HWw++k!e~aC?mo(O608yBz!70?z-<}((5cRl<82*9={0;ZvpJ>Fta6emu&1@yMunpMC zHeoxn(8NZulik8D_ILW5_aA6xA0iQ8XbJ4WzJP)KfmhHPcpC=-H_;ZjjgG(v=#nDn zmbM`&9l=21$K+iYl>3m8 z4P<2p!}2Lu@FSrA7 zfM(fByoOdBfK13eiEw%nRKoUIdMgo*mt8%HqIwd=@FX!X{jo|?8`^1{ioFhW($MXq y6L=V_K1O{A4@aU^8vToYj0mkh!Z~dQDf|(QaZ*|2syt6B)1)wk=qASjB>xA)ogVZ6 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/SurvivalCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/gamemode/SurvivalCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5b8cd988881cebb9ae6223d61c94e71f4fd49fdd GIT binary patch literal 3083 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 L$~{Q39t{5jIesYn literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/CraftCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/CraftCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4aa1cbacc5c61b00a484b54a186bdee916181863 GIT binary patch literal 1388 zcmb7EYflqF6g^WYg?4!rv498#6iT723MyJep^=Cwk60`bP0X~NmXYl)*+&uol_o^- zgYmOJ%6O+OPy&RQO>TSdojK<|&hDSTKYsz3!*UQE7;VK^8`^QF4R#6UvfP%+uLqmmUFk5qz8X1imCM{LI6AjWURju~ zqdP7y7IkS>$g}K2J!SKvo2s2lQo;L%SCS?}^lH>vy$k{IS>!#J%A1d+ExV-WyuCf? z>UCDVj+zl>LD%NaELB@>ajI#C(d!{-K-37e+;a(7wRV0eY=(hG zDC$$Xhx(?Wa@1ikV|jL7tVlK2?#A|KRDl{g(Z%4;tGQ@+fY|`%G(5zthDXXg#ymq` zL%Zh)G(5pm4M{98433L;mKWXS6%n=eg((VAwe_4Z^Sd(vJkzj<=NevMiQ(0i>iEwc zG9<2tTIP@cXHY7;up)-(E8#p>8m<(MzA5aobR21sZn`pCODiiMH($P4Tg_xv zH`Zz5`;GacW!HA`))5<~amc`S7(ylCDvi5UkVtH@afK%d+FrXF)%R*D0Ho4CHYlx0|?sW#WG-<5m-+oj?qf5+A-Riu$>48e;{-W x&4)9>aP@eE2>XfT7KSibC5zW!PRWKbKv|}s>BMa+#ZQqT@|q|brMM3x{{TZ3cT@lX literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnchantCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnchantCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..79460bbace74784438a6a49ee53c6a0ad3fa372f GIT binary patch literal 3172 zcmbVONpllN6#m+lJd!*ZuraoQz!-w?$`C>f*p34>21L97UI<&rSZd2-k7ksakwK7s zBRg5h0wHUq!X+1|!a!0*<&;D2`7b%RsJzxlLb9zurBv0L?tWW;-+Qn7ulv8<1F!?% zhp-ua0qhInar6hV9|y$OK`}%m917ss5C$+<2?;}D7!Khujs$TOBLR$tFoy8}j)m|X zjt6i;NSqAdR0yZ>dE+w0!WCtDZ!GE zWT@!YP2KHb*wi%O@Tg_R41JQTCU?(T_KZ5KyQ%Z)xEQ;d#~FNmR*W+&AJ9!cluAr+ zdsLe+Xr+3OBu zx4TXbOlz~6YG`I$9dT{ljC+UHU7ir`3Jg4mFG8Cmt`?o4(EJ9UplE4sGps2zMXq%>tsXYS9>upT6X>9p%n(HB zC*eg2q!k*mQg)Q@*9Dg~#gK0mk;@2Ui@?)6lne(Q5?mQ6bjX+$!&#hTs4u{%$UDQ9 zaCFSk;=EH)vsRSu0*rc;?hJZ864Elx?FG%$@mx-BwUj52|kta89tYB8DB8eEzFGGlx|Qu3dp}?Xbf|4)G2M2D>hG9vpkkN zS%S(`3CCo7g|CT58CP(Xp*$>t`$l}Wg!$-{=6dMFEbfTVsK{N74(#O35K)SZYxtI7 zU4geOe&jEMuIK1GhC?MAMK*OGy_^}^A8xEyb9lB;8P*ph*b+s^uwo&cl(pHo7}`pD zOS!t?>fBKeb336sj&4zhS+RHDU}Wgb;r^q8k&%(e@DNo>vT%RWvc2LObNH}nq^a~z zP^LfJOP^&}RChtw)=bCHM28ADE$$J`i^B{Ft z>M>2tg{@%;?5IIVq%@jNlG(aq@j(iadb>d~H3bahmMQD@MvhW2g)VZNq*I#ZJnr6g zGDb8|lMCuj#4E`X2PBkNJ|H?T8%S!l!)aPVjry`rcZTWWD{pEh8;=l|cM)Xcsv>*} z+5%mh1z=?B#krF*hTS;|s-j!Yl`CsaU z9f3xfRiP!5l!1ial1F(!iw9k{ol*Fet~Exgb{`cq!z#+Kg|Z|Ra4k=dB(zv;%yhI# zUKDWiqn$S*Vl4`Bcw(AI-LA!Mb0MOUo@JZq;Rcj}DiT|0Y@*pInwQakeM{?Yu$Jnw zTPSb23EwUFTWF}bklw zYy*7s#sk~d`Uj+;wtN1cu(G{6a0kJ=2$kVFYiPfVN`_8fgYQpNHTdQr-^8+Cu)Mvx zDkpWL&A0symR}W%D~cCacKB=k*ThD3exugELi!o?WVnVQqqHi&*H%uJYC9`x{a2A_ z@HJH2!Rk5GUBS-$r2bg@?`SxF8*8f9&S4#C%;7Qms9sOQ95&=^UB~IXpz_~>JF>=W z{c~u{D{UmD%z@{yX`yk!Ksf{h(^x~}I$~fwF|dJNyN&eQgeQpGZesUoVst-A9wAPS z5(6g){WFCBG)c_Rll=moqIW_EE}|2cNaHeT{D>a>iaq!ny||Bl7Qz9h;!uXwgTz-O zt0L{~#N7#!d6KO7N%se`)PV}YW{z|E+KFAnwOHFt9?IZnt>_{@<>UtxZ*U$B5_;xQ cC*hgORr9E4Yv(a2VNcUPnKao;VrA(47uq6urvLx| literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnderchestCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/EnderchestCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..52961ea137f24cec0031998f12b3f4a4e5164f5f GIT binary patch literal 2655 zcmbVOYjYD-7=BI~nl#-M2$ym<+)6K`tAKJTBDAzx&83o3s0hMjkHqf)Gvr0u!7>luZDZrXEfIhA>R)XvLFZbrJ^ zNNw^ES(mM9(X<8PtGlj|76{4PGFSD;@kDRZsTB3;>g=rP>2+wm?lmhF&d}B54P(yG zEyFJAS+8Q+MStJz9tlcMU`L}1GBmw;eZn&4xsGa6UPBlJb%*nW-D)aGWuY)1XXfSa@ z!z`>2N*Zi90^Kj`K3p{|Mnv%{Gm15l;~H*)eJ&V_ZbG;%5HwWbg)pb#7H(^pSH$n& z6Aho@GYy~Pu7-Q~Lc^E%iW&58WaCbOh+iwPwjMc1@m9jAIRau(!#9`~NUd5$^*s1b zxh{}c+uyL^%6cd%R2@c@0@x~9YW+HmfCYCL^?V)R04 zJewWQq?sY*#_@tvsYT|ZD>Jq=PbIDh99kP?#IYQvcZXLoY}YbWefIROWZbv1OQ2KL zSxUODQRK2Mt(GzCH#Vf{uwV1s4~uxjv0cZKwSpHI=#0onL&Q%TC9>X3*cR~#drs}x5jeQEh$)xl*k(Dj$D7W8dJ?>JxUB?K zn~7#7ngSeURW;^7OMMyS4(_EEdx620Iy3~J>71Yt8jqOVY^G4Kc$55Z_GA$yi&1rS zkEknxM{jdDm+z7Br5lClQFSc6=nxod60g;orW|Q8Vak-Z=(vk)&YNzTH$pAU(R8Lk zT;A||`4OOgZQz}Y1GER(x`qJ%z_$K@ClLLyz$3KvKSb~m*7ei0Kj2sZJ+xb~j&=iW z44v3SyBXcsf8SK(;slMKk*phM66>0 zkwtU{umJ66L@z%2jVzO@spH&lA>RyWF-pq9VPme0{upb{=}=kkjJ=k5)}+W zM^K6NLegiP@fxL6eMfMVL0N}C_;IHb`E~Zj5PXiaA-wS%duacH8Rl$Wi#7Q%#uX|^ jT>}FR@+^lp;*TEXx81RZkaoSm@A9!!NKevB0H^)|mdDZ; literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/GiveCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/GiveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..85c5e719396471a37e9264fa1a6518c7e44d76e6 GIT binary patch literal 5224 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 KLz*^1nEMYte;o4w literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/MoreCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/MoreCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..53630624c4f804299392fcad2d1c0f6cc50ba1d9 GIT binary patch literal 1840 zcmb7EU31%15Ixs+BY!B3ahk7|P|<*EJBbBpD5WWB(zHzlwiDviq_ogc>}y9vmORo` ziupIZ@ZQd(P#zebc;KJ#BVgF8*sVKBCd120cUODP?&{qA>)+pg2e62zNnF5u9K{4i zp(pSWK9+9_(p*!pn1X^&lDLjf6S#rT;<%Z_5^hQN=hD3#$8Gssk)G8!?kHGOaF=1| zmgQJtnPDbZ@_F5L8n)Hsy2HgY*W1?*ED`*u*Q8y_*BD}JZi6$7lq`o=g7z-=w#{9e zJeiVPH|?6~S@PU-#>AfGGZ?2M*WGs8bQ->Hdaa<%9pUS~Fq=)?at`R^dR@KjdVKBZ zvn8sxV+SqEVbD$oJt~($;Xm+tAgH<M#n_RFn20nAS_#0+}Ag`*S37$a_MHISMQdM%G1qzTV3TG(F$F=TVc$Cp3uVo1qLUFN=TwkU1vq%>M~ z32JV&?FNpZa&viuJpLO`EN94#I1+RkL~iu=RrqNQ@6%$wK&u;wfEX}Nc7je%=p3Qv zWMTFfutFwsh-l#jVuv_ah#q3-d6+Rtb{yx(rpacIBD4(QO%T#l7z;6Q5tryhXm}UX z#6ViZ`$DZioHbQ1(H8wWImJn73wPtNAO&_&!<;@ zlHQR4Z+hh=(gg4hNk5Z$9U$x|F#`)w$xad5B@9y?(^N%{>d4~?u3-kt_yD(Ym9|YD zCCt)|p9{NKJgVg7A51IAD=4JKC}ozM H5zPGugM8@l literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RenameCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RenameCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..96213c055c998292772e3027b58f26a99d5ea1ca GIT binary patch literal 2491 zcma)8-E$LF6#v~e&8A68OG;_O=kj6cCyOA6Z3Ur#MEYe5MLq<#$!)qc*^RrKmY|3_ zJ~+Pn;-e2RBTq0x5uIUt^1*+^zd;8-es_~d+NOik>B-)E&OPUMe&?LK``h0?JqPdx zzKCKc-j3izGj`x)Gv2`|^>kW^Q4MDzI2*+|yc@%Lq+-zUUKAHF){JpXL@=p#QW~bB zXv6zTOh+)IEH0|Wr5I*$SuH;oez+(5RD<0FT&i;I?TRKgk+uQSrlNO$W{<&1Bp7YQ+>5DO&N`8!>-aw-x{^3pd2_Sbi&l!o#+&IgsV z7a$baTWeoG3;HIRq`kdPJ^_7ZNxA~tYF&|Q%P$#IIi+L3mLQdJvk+90eW>9k+e{!j z;}qSrJZA+(UsaofioG~?VK<|=LDk~;2&RU)IMSdhqlCn~KvxZit6~ducBe0SW>yaA zM%jrzqUb!KAsfd6EDg8fSVS(4JZ!>>!$CpA$8oq|)`z>(SDd1rFM7Vd;N&v8s+w-i z>m}|ko3^j}jxO!=f_hXs?;vBYEqtX=DjPqJB9_8x7>=CJUMCSN@V}4z=2nX7xzs13> zVW9443B=SKj!RGVr$9$N&%7jCveH+>o3hWd+#K4T-r8BK!!G&Lc<5rOK)0Q%&BvJq zZ`B-a+G`M2x7jo7fza6&^)RnvOlnnifP07#-;*ZgCAFYFlO@UQw10Ma1 zwkuDud8n!JShyoR@cespC7T91!iQIoNVHR2{wgdU{PVjyzGWz!3@4jb&=DNp+JIyz z8D2r>Wk%{EgB53qB+n_kZHeuCs@kh?gxg5!z%Q81lu0JP9Z^!*MGAHP9in!a6pS$8 zvrKl9>E7UP2K~I_2XF@m@g)p=jo0x5js#>)Bf^iN9q2_L!u0VCZ3htId5J;VH}T|2 zo;gG<>H3eZ<}cdFn3 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RepairCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/inventory/RepairCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e80233355a9e7c1c3b20ab4a04c5a317bdc0e3e1 GIT binary patch literal 3443 zcma)8>vtQ)75|MTdDrqfG4dl)0%4OFM}9@ETasWK7r#i<$d5!$Xb2@;OJjNC)vmL< zvLi}M3$z9LqAdj+9;Ingw}eL%8V9%MePQqnss$zCV+2}kGLnYlA_ z@9*CGo4fkt%YWPe@J(C~qa84}1F)KzxMqY*~!3tvs=7g2AwXorcO}7>W z%!}oMn4ObR6yp=M_&%N#;s+9bDB~#!Ka%ichUz}u)ZKoDJ@J&oGnSb(^l6?jxw~N5 zvx#}#Ej*DpA!Kjc35MX1mE{auQ@Y8=3i&B+Pij*JX(A~rqZubOTNmrHGU(3e4#Sbn zEoZEJUNf^!LbG#)JU3k@;kerLbV4`hX=T~P#4$dn>Gn|RU@sw_GYUD~WKcIZTLR1= z@pC*=a0%bRc*?SKiK)WutnMbtZWCpzX>Mk@-Fqr^Mw{0XhGymxY1h`xTq$PV<$2-G zXJ8Fpk~Y(>mYF4Ja$a*eWx!x)@}C|ptLaEcv-6fsqcBRjsW15~xVn)@>5eM`bUZi= zyZtschD;Tq%#odj4ZwT3(u$niZTFj^#OiJ_F=2>3a@f4ScE!0${km@f*XOsgQ40FW zTAi1TQEkp60db!QC*f(2aL-71NW!xcej?$g4B@m@urvH&-DA+YLhlo$P|$%+io*6N zpx|eCPQvpFUchq-elEl>@JoiMuQ2OkW7yG}IqqmV-lHZ;M%2C;;@gv&Vf0J*m4aX6 zMFqdXZz+*tL&EPAyoBE?cp0xKcomBTUBP+0rr>ovpx_N5-W1{wcuT<_ae<+`HFMG` zsQH59sxy|6RYh%8eOfJ&c0n^;)wNV^X2^l-?K%4t{7Kx5w`K%?RNWM3ZB;-}bw||< zn`_ykTEfh;bp9ePF|@XF;b}&j=c{{VZ$1nA7y=X^k;3D%$E^X|){25)BBy^=u!O%z z_^X1qaaqATc$cc8;61#r;BP{61#c0DTQg%;39yKu1csno#RpVA1%DSAxQ1nhoxTce zzzc@X&44?rv9I1E_{mLMQTZ8s<%Yq~b!S_Hn#0SjfRg5mrSfp;_4~9NK1GHtYuOfw zX4rM=PVa^K=GrA*BwW!Y0ED4g5wS!H;p0#dz4}CoxKcMhJah++M4MY)Z~bv@!Ju% z-L7J&6(QxF(DdHuCr3vq1G1|NFJkhH8DQvWm!2io*Et*J3TNl zks6_@>dv5HWoA9Igs$E*dv3U3Yg4*G9ogGRmtgy~bq;s^>tH-BzQqKNq#|Ohd@QM> zY!+gv!mB3 z8J=-_+serq5TD95*Ob4J{G3RWObxdDRGP{D?N5lJlV&t$jGv=t7&N`1v2xOTOl4Qt zMSsxR=`S2m1tvZ>B)e$!7_F;ljJ9`N2WyX1T|=P#DuUM#Y7bmP^%d{NK9bD{k!&E@ zgj!lfu#J9EB)mP(2EK-`(~7L28{Z%gjQ%p-U-A@aAwM+$`=H|^NMoHh&f~7Gi2NaH zRuHbj5__XF&>g8=hO&r-t`*cV^aNwUWo-EnTYEyW(8uVEg|4Fh5?aJ~*CpI7#>gc! z#zMes;5#loT<5L`9G7ho`_OmGZ zST7!AN6^oX)BF?$8OIQt!!SFGL+nKyW-lYj7IB1KM2an8lwHMyN4#l5(E*(-9w3DG z<1`N90YdjFhCQ83mbasac4e|t?dhrs!Dr}2AKf52R!B>;2hmSt6}oTXA);%Dy@vq| zB7h-^TA{tt&0)GZLYkwf{{m475C0F}mT*YI;o64J&~TFyAWKL}LVJX^C8Q(*O{V{g hqyItZOEh}xy)qli?~%{2$`OpXmSq literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/BackCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/BackCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5f80aa0a5d9f7f7ef9c53ea64ae392fa1541010e GIT binary patch literal 1749 zcmb7ETW=dx5dO~Qvc7DR)=5Js6qc5zj#GQN6bQI2G^TDs9LJ4Qhf*YTY#%$@taq*5 zvxe|b_ys&use#H@E%kpWpuga0^coSVAU-^*9!B zGmb2B>X)U&dph2a;{$w{gpONDe1wmc_(aEsvV5wP&tk|Ya2t1&-a*)J%-ua zwrk6~4A;`7Kr}qJ>DVn{xk7&L`Nvkzmf??9P09RPjbXarH3h>$$#z9K?9_#S!0QfK zQYEj!of`LTr4NkL^2iPtwk9JtyiSL^&A{S*JM0Ko238<>t7S>yh_2^LYm+yQ3;kDl zqT6-Cw(T;QlQH{j8FcZ3XoQl;ZKO+{-?r-E@v$wfK~8IcS`}_n`1vQLr@Y54hr4a7 zDt+5+M+MIYk(=S_`4H3|DuW7MJOeD^&QFBTaCsDpYPRKxRdJM$Dx9lIs(6=oqaM;| z84^`5^c$jRt43cKX-G~{HgE~cl)6q~1~yU9@uh+LC>SUz@c>&4D1;arG;V0o)5Ii12I?y+L-~qTIiSd zf#K#vxKP@Tv_)W5gx|4)fLcYfsvg`c7Qd_9-{0M?R=4-cG|TR&zvcP;!9NPbp6i@2 zFzU`^(noYFj_`x%Dz^Fx!+bYdp5chpc}Cn7CyO?Twn}dcS>_$upQZHLS(VL=MKC1k zQy{tR20MaST}qF{?A4!&hRm-K(wSUt=8asWeYxFxiZV<$PJ9)ZsKqT}_5>W%Ze zUGN-_E-Eg4?gkE5$3Dhpc*!Gd1|}*|o%XH>0^X*uu@Z-2HM~O~*d_V|0~+WNmPx)w z+P9=@^nWF@{wr7}r9H<~<{74+V6wxV43`(g-6lRFdG7-uVl{-XZhni5swTN)0Pvt+thcL;@ i6g^y}HyV|>k9TpMFjvVMhxRviblgbLqcj;bto;iz9My#Y literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ec54ac526376671a506801f2505e05157d72e5ba GIT binary patch literal 1930 zcma)7ZBr9h6n<_J*pRFO0VHT^w^%U=gl#RY3Y01+Etmvq0E^n{O>z^qY<4rdH?;Jh zw11$V?Tjz9GmfAAA^i~@r_*yc!3l4JlbMtIa_)1UbMABQzWML3R{*9^iD4L%QJ6hA zhfjO(8Lq0)=gLfJ_#%ogW4MOvacH;^!!%}Mn8jCWI;YIn8g9nWi(665tN#VHcsq(a zYO<)|8x7wwbkACjCFd9}rEFFhok?#nL>AnNVCcvo0Lzo4(}Lswssn z8m=eJwf114sxzth>qugRA-Z2e9ZOi&a92kT z%R2JP6tKdO>?p{AY#4^d%IiL_iD|=>4P&+uBsr&HRmXR@r=y594eL5Ka9_jsIyUh@ z$3r~QVd4jd;lp*DZ(250SW)|t;o_LsbeqN&-w{Sh2*=o`Dk_F_4IPj1LXz?YE-AOK zxOQuC@$u@Nd-&!clv)_%ci$cdoM~4oHn^clq?J@_vm$ zFK>zR_DZ#C)8oT%?L8X$XqIUzW1QHk=Sl{5F`PwHLW*8xRo@S3| z9-{wbX8Z+MCJ}muaOO`$o}nv4ru%7d;sV)o=px%kHi0+>$PNuN zd<26cFp4|cj`R=00RkU?4XrTo>UZ>K6VaFG*+VRZKX7*-y%Ww OU;6G+Gt)*0+5Z7uCkrJ2 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportallCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/TeleportallCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d7d2e7f0bd1099535f2ad6e3af3363a71b1e1b81 GIT binary patch literal 1886 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 PDQI|?>cx literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WarpCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WarpCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..feeb2d0f234428a3da9fd0fabdb08d026490aa0d GIT binary patch literal 5704 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WorldCommand.class b/Vituz/bin/secondlife/network/vituz/commands/arguments/staff/teleport/WorldCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6bc3607018c9cc8af049e1e39af2e7561356760f GIT binary patch literal 2192 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/AutoRestartHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/AutoRestartHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..17a2a4ee7beeb9746c87cf16ca8e6664112c90a3 GIT binary patch literal 937 zcmbVKYm3uB6g`u^G#mGA>-yZ6npSXJSOlpky0F-#ETX02$26U7$7CmxnN;vs>6cwl z@CW###5+kpEJ`algqhqsbI&<5=l=Zl?FWE;_%2*rcX1gvYPjj5gj+VaU7=kXroT+{ZW@NyV@^8==s~PzlE(j2KG3)#<)XvNRNj(rRn`4gT;$FbOyc8l-XN z<>yG;-Lnuo9(Hlp!#&(**#93KhUUz&%*fbCq51S#7&el0#0OavNyEiND8su_8$qrz zJelL-oQve%E{uffD6&9>^l00D^WTr|rJ3plI_k+&%l_Q&UeH#U$6x0jwvUdQ7dJK8 zHO$C*{xZLbMQLM;TGs``0=2F~EBQn75=Dm;JG8p32j^g|GdN%KGs`qDQi}u2s9=@q z*RVoSy*N#oHHxSX>$pl-%-TK0?4U}2K;t_~?_1|66KrK2Rr=0w>D`|Mbpn4x<$F1S WSCmc(99$zH2OIEmGU`KGY5WEPy7XQE literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/BackHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/BackHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..299cc6b8023f303fcb137d22b4814e3bcb0e71f1 GIT binary patch literal 2776 zcmbVOYf~Fl7=BIyEJ>DfDN?{zuv{80?Y350T5jc5sST6@g2hW+!f99t8{BMg@Pog= z89(a}==atcD>~!oSAUb^_?+E@?3QF0%uM#&-t)fC`@EOkzyJO14*(y+iK7*FHH^j) z!MzwR;(i=s7*AjVlL<`WK^)VViD4FVYBrxh6CSFAkJM~I%^t<^F&=A3#j&Uarm&>p ziH2njPX#Uw95WsODiU`!ykYGrKGEjUtOG<-VlFSDkd zF;-p2vNL0;oRcxO3VVB&Ym~H(O;SzWxMf@Jq(DzHm6z$9y`8mQNW+%yH#uj|IJDft zx5m19jt#5})Xe6#X|OS6*>b6{za^bDb1Tc87Ns@2ZaS7)7dLC%9V;(jRM)&?(x7zm z#*CTXTksbO)j_t9vFLYq^{YN80d3pL`xv501+gh-FMI5*$*ercIj+FXWYB+kC~ep9 z88*VA^XkZRwAPanxPGpi9&!~qfzHrH+qK-IqA~i{uwdTOtj927j zD@?%+0QVvPvTCPL9kd+m07krs!yeBq*T^wVseZ zug)6E!DHYAYSUS166;U^g*>BR1?uVStXar2OBzaLUtH^tY;rW4HS>8%s1soh&QjeQ z(nfafodZ|+vOr>fX>NYy`SSeq3UfO|%(-#Iyzu(1=JH!Uz13_qiY}S^zwG3mKyLyO!(5I2{ YAb}COrn2!4zTg<=tyzAXe*U22KXiHDEC2ui literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/ChatControlHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/ChatControlHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2f945e27ada69586a0c8af0b81fa9d18ebcea72f GIT binary patch literal 2084 zcmah~TT>iG7(LA_Om-O{fIxymxJcaHAmfF^=prT|iLfjI<~ld28TDl5OP;XmPT7`Q z!gPfHunce{+zD!%!d>H=Hd%T~b&J~@+?8q_8&iH& zQuJ4vBUd>Q3fD8|!h{{)t=sdFO$E1W2Nmfsj5J4xVq?(D(u+dTvMSOJzPoGhzp5d_ zP_|TeE9Pdfvm<>|IKK4v%@wM+aKp@qOU)Suo1bGiBfaaEFZU?p*8);MJ63&e?NF!U zV)Ryoza(v2MrHO&V$1&@lp;fBwH~;ZxGhzY2ToRLN(sZj1&kONz&QiwG04z;LN4k^ z&cK^^OUH_VFYu*-Rjlb)H?V=b2EIa0$2|l0@wJX`419|R2EN1h1~@hiSSTA1*kb4m zu@6;bpn?ZFss<#s8K#?x=ryfo$Tf9Sn)jvfNcW*s7|tjAxJR8dOVaa&qng*9*t-$7 zn&B)JekByr5_fn-9UIT)l3k8uMru%Miw}|f+R1Uj@qF%BRQxgWX&U7#6<$d2pN2~1 zb45jk>)ukK)9tu=T$slaDm0BU)NHF|3r^{rORyeOc9g@qBYz0Q0=+Xml*5rU!bgGX zbJWn)eTu9`WwZja=vt8;^*wF}VwrT%n=Qs*hgzVTX}bZbnsPbVtpt`F@E(Yyu2Xr(z_JQ_#IQX`KR`cC98 zJpE}=! literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/ChatHandler$1.class b/Vituz/bin/secondlife/network/vituz/handlers/ChatHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4830923032ac8b556a49121f169d77afd4a2fb7e GIT binary patch literal 778 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 XVkUR+=adt`w{RQFC?zgs38?=CQp#*g literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/CustomMovementHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/CustomMovementHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..49cb5b644a5e643ab4432a3dfd7f4e162ff6fe41 GIT binary patch literal 1100 zcmb_bO>Yx15Pg%R*)#-NLd!?^CK?uaf9*<|<8^0NU{r33_fKA*gB8SUGT)|Zj*F3CvxK7AFR*|w# z2-&su1|helTavI)SCM=f_nOkY_M0Jl%5@$1VZ%4dol|Gd9;gA~QGFl-9koK$mLih& zoi<%DR5m^m2R^%{8HlZTV0G_>9?G7K?6a}EMpzn0yy>@mD;f@6aFmCFJ3GSS{fOZW12+V-pFB4o!r9)Df?mhcd8)jUbGhiS*oV zG3cv~wv%BH$EJY5o%z%JY#S+$WI8we#_`xVB*N4GGA!#2tRl;QgfPb+Cd)hP!)t+0 zf_LJ5?)FE}2R1U8=QW==3n;Q(8VBGMTVVS%&hYAz-!hnk^fvC^`Gm}m^diH!#5@N( zh|O_W3c(3jz+wXH;VjBYw1;zSWgQ%ru$>38eNRFxmU2!woOkEGyT14C``xFn zzyIPZ07vkz0PetaJ#L37<6;0ausAa-!{*eHkqzK}xSa9$;LFHywK>i_Amc#^mjc*? zha@~4fQm=>{G&21OL$DiF9T@8uVg$f;|UqRmT^9S-{7|reiuLsp5z8k@!@GcJi|?& zmGN8yp2rKEc~Qno0lbV?IPCQ#Zca_>mSxzPRddC-Bd&A7v<#17U&Xjlhm2Fc z>DUyxK}0@BqfbVKJXV}Y#XK15OF59%n)nP-+L#-3(zIB158o!9Ejg>nIxg)N8=%je zXSfV%{GvXmYnEa-$hN{UZxjAmyrhk&5tt0LkDaTG* z<^@Bu4WE=|v^mqyJ*18Eu{StQUZNs_TjHi|4CQ903^%DyS(K6*cT&1FuDd4Zi<8wk z*J7a2WZ1c8qgI{f*ysS?ppDW!(qBU(QtRUx`mKHZXpXcvSnCCk~dsW zTRy`6!UP%DWvyJsv>93}n->hoC5`?a6-XZuDO?M#!71}uO8v*{ak$ySC1~Eae3|2JgZusIOTMXTeS!) zfs*A+7`iJ0UL`1D2v)S=VC9>Jrxjs`5~!#vu;zynC^_S8MvFT31v66sjQWh>7eJk% zz2j!258gaQc)GqJQ1$r^?Wh}ZUHuZFYe$fGg8(@{<2aU~6IO01=bbuF*?H;>yF1DN zqG;G0;(7PjL?BO1E4u0u#L5J@c?FZvU>V;fH*^^bD-;bwEQwl0o$m48!LYw$a+S;B zsf$$6y~TZ6-C~-`qdLMKdfnYYuUHlJ95v~y zo`aE~1SEnIE(l6jSWvq7f)X|fN(dt;fsCL8A%fB^7nCqUQ0iQQQoABr#rvnA)Efn* zb|@&dIimDrB7jWNI7Z4>QHL6ud?|Eb5iGRXeCisiLTdFAYObL+q}GWKDWuBuaUJ#7 z5U5^2gQ_fH!vZ$u(J+r)>MeseuxaApA~p}*fI88+h+7xX_zC9KEu=S(2jwr(G*KP; z47KW38Ust%mYAp!{Pq%GEBNLTUnlq-C0-Kz&SicHyC|$WaRV(AG{>b?i`Y$Bw2I(6 z%Lo^-hh%v)s#~vP?*iKLXjAunj{Q~CU)t55ETMx7w+mq~kDwYV3J-8*S@WRUS=4M6 zn&CXcC84Hv6@@#5use_LlJJmvSO_=Hqm@V6DO8T+aYVhX80n~bj8v}DQPp6a#*Y!C zu?4l*1_j%(18I$-K%~7f0=ad`$ u(bv7Wj|x#IMj=|znj)1US=td)FG zbydxg?*vmKICH%wYsnz|z#5#)!t+_t_jNpX{FiN$26!fw44xY}$n}MAb#Ze?1`=Ct zO&Ca*q!N4K$+7Sb`LRQmv65Tm&Jp*d);q?8zKj8DM=9ZLIh@KRb-kauvdeV0xECst zIbF$!9q?+i%uhSHQnnjsxv$AsKYd{$*v3cFrDVt;C?scct+qnaoHt;8B_ zq5m4vpvKT{i}X0H>HPc!jC|n&vHVxWKShq$Ne+@Du!}L0nJ74o8yF{zf+9$RJTjQ* z0G^SLj#$lqLF_XU-!TxwM~rmTZy0Rv%-#c&4s_BubkYn4NR}u;8B?erhgVpE9Tj1< j;X6f4l3xO`sY!~QqJ0e0xE0xM;|^}pE=B%Bw9@wntEXG> literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler$2.class b/Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler$2.class new file mode 100644 index 0000000000000000000000000000000000000000..3ecd22d3f993e56da416b75053de76fbd00ca7f9 GIT binary patch literal 1102 zcmbVMT~8B16g|^cR+hyU5Cr^|s-+;Ks4)hk(SnhrDnY@-x9xUp2evafyIU;&DvfCL z!5`p{GTzxG5rV#Slbt(r=bp27?zywSe*gFh;0|sL!ofK^oOf{&7X~qni$l1C%Py{9 z#zEP^RR*`~hvl8n?+L>&UDu|?8_D*zjJZ&;jC*`7-CJT9h}$wM-(?T8@rkjGHSeHt? zNIDH+Ui*!ZJfn3T_~E8+q+K643-&M!-l|f<)Iy)qrRBYT@+vRV+43e)G*)aT?kk;` zKs=T9>l4Q+v9RTLeM)pi1)+|lYCRWmTQ?nC^Kcy%4@2-g48rv=j0q33s5+SQFpnD! z7CdlR4f>FvyvQ(fNZ=@Fi)KP{@h7R`>xoiX$!_<-&M>7_)+{yM>5%GcM(h|Jh=?kC zzj8#qE;R?wy6&LCj$u}8%#y8VG06C8T8B-&OLZQv+ZysDmLY#^jNhxvC?*vq51sBv z`!Wo*M7*Ko`$ViZsV6G4hbT5SR+kAq_776(S|d8TOG=JcGDzsF7Ju2;5&@<6mM)Y- z*9*v%N>((0EGcL`^bX?`=ma#Y(K=7ISe@GktIqEuSN(?kr!=rc;{XK$A234WL<%lq z6sKuLpp=qP#5nC`gpVl3B1S%=Q2m13cbs7Oih(zODczK24<&p|X}t_^K%2)Ig6A-a TDY6CnKb*xF&0LCd$kOu%nf4{g literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/EssentialsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..84b92188f1de50a314f87317ae00cc34aef2f9b1 GIT binary patch literal 9360 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 U{tjKl3i^--hA!nf?B|OA2XKHu3IG5A literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/FreezeHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/FreezeHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..b01fcabca94e6ae8042f7c4e866826cc089d1503 GIT binary patch literal 13391 zcmb7L31AfE^?z@2%w#hpal;kP1tf%o5N?qG5|RL0l8|OOjJDz?nItQlUEBi-VoO`K zwYRmc4ZW>mPpeR4QYh74_HMO@J+yagFWcJFD(e6D=GdLtYzTi_XTJHq_kHg^zPIrk zFMjSE5v@^{`)HU;Rn|40qH&qVjVm>ts_`_9rI<3 z&qr@(LmvG?&47;w1$t2SMPw9_(RF-49_A=2Bn$~LF?qyg;h@OvdO0^CvPr6(5(3il zaY#mopJY<|6NYir=wq7Jc3t>TxFMa2 zL>rnCiSUuONHW#PR1%5|#KNg`!eCmG4`!ola?hS%OXFtj(xc&Isx96dPDSD|rb-vg zj&O3YJ$w*A8^+I$JFG397-;B8A2<+6H8|&)7_?M;n@Ky<+KV|S%Uy=Z;{HVZr~&d| zUsMu_9Wr96c;X0Cz>PIC-w<>lKzm{DP+t;^U2WlxhGPQ_p;RIg8^B`m#z-uZ+RU`5 zrY&jo#$$caNWak#Gg61+i31IXBB}JzhQ0D^T)G!$HOKoP-SW0b%;-oD^%#lW;hrdF z{K9c`Z#WT=Z+jAEOB}?m)L;Y@tehCbU>JyvM6$sW)DG)Y=sOrq4@AItVB*adc}!D6 zsc`QBD9l7}n$A72o4!cWqOqVxSSX9fI-}tuMxryGNQI+J%WK>+G(@xw2Th0uH(;wQ zm_jHrVVLUvANx#B1S``l&$d`9k~(4|YDCats_IH(a>&>lNk$;crdTYVGK~`=obTCd zl4{bG71;E6tkpcTB|H=!Ft#4CzL?hKVG|q)_Iw+%?D`HS;@26y@HXgqo`(RN_{=&K zrX~mD@s#kn+5>9RIw?Mg=}-iyhD2{B0|`WArV2-C!5GdC_okRu>&nL4aowPv*Mb9k52n-aEl<+B}SDRUV!_0U!&U#f)5@&FdD+7u;iN z6^4UY|MGMMfoj=gSOqMLZ|NlXvd~OgB)QEl4CZ>VcpPLYiU!>(pF&3BkOb$&9&p=< z8*FzB8L>ViVdlExq&a3<=q4*aJfd1U=0#H;?(4JitWyEidl1_Z%Mw?kt2i<%A92^> zR5&qUK#Uc+tCCX96pjiK3QrhAh!kFAs$JWmW&$A&2_;D*bx~pidfhtK*;*P&Zas1^ zoJ^v6LWBy%(}`YVo0%E?7L1*VmrF3z=@axxP@WqYnFcux-Y2*Zdomf2;HF`1d+LCETCo2Xy`e z|54{ZL3I3Q{tHSLou8)1bp9(nrt;r){wM!S=YR8mRQ|8d8sYt{&i~^lb$(88bA!&$ z^LeDSjBrFY>7)^myFkDWAYQrX`~ttI^GkRrxWuZ8qACTdQm89MO0lk}AWP9eky4`g zbfr|$b!CcDrYq$@t5ooLUAaW@BM4+;XV2Iy@de9jmu&#oV$=a25$1RQq*hK5jZz-~*6c ziB%<_D+~B>RavMji5ss)YZFag_nQO=l`hybK7sz3}}t}BcAC%RHCJTFmdbY-bh z3x~3~Gb#5V>JxHwrA{TpH`=~(6{xyi~&a!445EUFHR zB@ZH?S>nnIJHt(u#kfh2sSYY&gPnYtV}5F2@Wgjk;Db3u9-*-PMQJc2@;VbV!0X{DIu2W(wd;V zoN|dZbDl^-+qE?mYza1XU@vN*P~<2$Ll*-r75TQ#S|n0(SwX(TP#%SLHw8OdTlQ~n zYYK(-cQ$oEIkWOBAs7 zNkliH*qzSJd>8%sPDM~p7z5%p3A0efrFFfBcB?LT{K|79^qgn)Z+cN6ft{r;toaIi zv$!3J5`TqR0bIgaE!cYdem<08G)ybquz$VJ*DjsF zia1Dz849L48t~#rSJuK~u^n>SR&`zxWt(5ghR#g+WEK8EQ#Vc_R>@~~^gKN%%Qd!x zsCKi9I>U>}S-`38i0VwkYMQ%Rn|25H!gD>{3kL!li;e5k;V8^X*x!BRAS9cEB@=2v zO>0L>YuEnH)}}7B*u=uECKb~HFJ+cedbAMB?3%STWv$btk z^G;Q%&zHhX!@RW1NT#C*^Tp0U55|xbn{j7L8epNYrM07b;+ChqACy$URrVwe35UU$ zq+N+R?vQBF@5XAzf${#I$C=DsOlvNzXZzxu?W)<^#Gx`aUYd%x#SeqSa1wg)Awnin z$$gR3-~{H6TYDk)Uunkt7V86ZTFQtTQcUG$QKtYi<45&4g7bE);IJ10%yyB`p&SS3 zN;OWF%l3;HL_L^*#v>|LUFQKwmd`mD$56tKbI#gdM!#gn8s$uKyNJ{$P6_%p~2V(Jr zVJWl#t2yz{iRZ3b#GZoLTb%`@w%%wQ*6ZMr-!a^|deRu?Vmj)?R-tY(k|QzyGzM32M* zl`|0cD*KG2`SV<)|A^z#C|2?a!9%$N3On^h;{(m{STZh_T7b@%jO^rkTW z0RA{Zp%3C4Evd}+NAQjAROb7m_(r1&uqD!!GWVeOh4&1=paqBLr-=AwQmFv5|E{fj zkhr$O_jyvf3;YG4?m~ZIsJqBt6zVSa7l*o4zZ&Y+{935HqS#-8r|S3NsrgIsEb;51 z2WZL}D(ilb%1=|p8M*``|7ohsjHVWxrfFO;+dqAjW}K#(r)XwH=^3i(K1H)0q}hcd zG{--8gyxOV{4oj?kgS(m>kFLqg|792O>+P;MvEAX*I_tkj4oB^5vr2$8Cr~ks|zd2 zAEYJbc{eG1&r9DOrJCB>5n4J%wFPuP7%!ktL8O2_g}01O(`O;@ z2QZ#W1ux;VK&26t9%Q2W=YX|@Mrq7a3Dx5*|4cbW6(hn~XmfVm2-UY^|FSVcGhu`pPEg_fb&&CjEYE%_1nA3vy^W@U<5{#T z!v~JYP(Pc_(&vGuh^EsyaIctrXvF7fno1AR!#JfF>tDp1=}Yuwix_1KNKr9$1&CSs zFs(947@^hK;mU_-RXbK!l!=VE(06Ak%oZ4DbIg7yXmCNw&9Ve(9<8F+*?--`i+PX2iN}+vOwyYR_AI$-o zYv2PLVMSS;Z88Z3HrhnLM81-|vWb3;krl&>s9??v71O_=-`XlVZrjrm;JrFWMdK~# z6}gm*f%P*eTh1adopVvLBqPQpSo@tRMz{5pkaC_Db~nUJzSTs&oeq(51dDI1|tq*5M$%=Tw}aR0^l;I-Hj{wmFqml>UU?xrc$ zN3R{cFyAN9OJ=P&hLJHw{b;12mRdJL1H<&R729T=q&`^IDVpkJ{y`-FVX9u{o_dHP zqja5X=D@ytXwi6(s0RcmqD^}b-Dsg&aPg>Oo^$e|ihDpDRDKK9!IM_Nx>mgW+N@?{ zs8R^ESSd0?CE{rVBI+9YK2qcl5OaTo^!H;p_D|^;ocR_w@B5JE?u9d+gEu@1FZemk z{wY}FGxU2drl*ji{=iG=PrQ--%t87qchTSY74&xw(?7W%Rh$zbplZjSF*-|shSgN^ zZaXaW;wLpLwo6=`PvuTroJ$Dj64jrlJ@d8ascF7emK!Ypf-F4V-mjn3-V<4=STRAW zO1Kog0DFIFLVN$~#oPPe=^Zz8y50;ANrSRV#|sV(i&JDi5A5^iMo-ajc%T1Or|8Hi9d+JL=D7hG2PfKf+ObSs z>4kQ7W%*tX3nkXUcNtCPa`5h_l{}R;qr}?AGpK`SQVQ00jAzkJJliFcn;ko&n_*}F zGG%hywllG=Ox!Hb$vFR}{{UDr&Sj8^1pX=Rj3Wz*d7Y5Top_#!Q?~%k^X2US(zEs< zSJ{Wu6yg%+h~q{G06FZ{R+;^pj5tQ=xbSYBZ(dh;Arn!(C6_3cIn52zKx$Vf@Yemf@-*S=k}iYb9^7h<~dkq_<^=w`?ZYMwY`yR^ZRV zSCOAr(+pli3wbTBxa(;JUrx>3NIQ8Gy#{4@CKjO-mzq-kIZiLa*QL(90cDQd)XE4y zMIh2yWp^p@3ucL?LI5T5d%rD?I$Ip~nc{H!hUqt%Yvkc9|04vSs>z6Bga#j?x8oA$ z^08dOyaUW<-RCxsVBVP{m}QPMZ=V3nya;B+XO`&P1o1V)#aiHE+aa10v2i`tn{6`6Y<7c*1{U3_ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler$1.class b/Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3873cbd56b19c313fe05ab4eb312fbeaed71eb7e GIT binary patch literal 1133 zcmb7E-)|B@5dIb@2%Lp#t;JTY7Arqmw%ESa_)w_T1dUNcV&cnjtgv$KC3kz6`d^t? z8#U2)pZtrAvj>TX52kE#GdHs{-_Ff^dq01F{SIIs`&s00(};~6^0<}5ZER*xPXG8t z`?PXcz@0p{a5sZW233aa*mlceER<%bbUc5+d*Ns#HIIC}=X%bF9~$}0wH{u2**=>SH2Nk3H{#lM|>=G_<;{?atlA;$F9`Q@X^FH$@is_`T@i1%G}xK zEwS2VNVUAaU?_B?5>LZ-J>kE!doFn{bv(y*yS6WlJ$0tcCox!$l@fl-wSz#Axi@cx z1 z)TDoWPGp89PyIt8hWferX4<$FtL#7ABt{Q}Ca#_cpJBaHogs|UQlIe2t|4Nj-EJH3 z)i`)Oh#?;c-4%2JD3f7rrsi1h52{^k(EZBOElU)OW@rFunxOH}Q^XR8di2&JJ4w1w ztDl0^woj3$ogw)#3cO4*O@TlS%OqE#`x>BTc#_=0Q#f1z^`+zur-B6w?(IE7E*8Xb|q8rDgta2+?O0Q27<9+Rf^2V4v( A$^ZZW literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/GlitchHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..d4bb58e04b2ed384ff7ff95271f30d16d2e9b584 GIT binary patch literal 6093 zcmb7I349dQ8UMfC%}%lzLVzR~j&MT`!g>*bC=y5@(GX&SiSeion;{vqnTfNrU~H{c zsd%7PMQyZdwFZH{2rk3rx!8eEMsNjo%HhgfT!pJ6xCXoA^4eTnhpQ#+dIg_~ zAQv~t#f=JXiXacWBe)s2WKpI37m}n~Blt816x^1J+dW0Dj?d)a4%{hecje-7I=TXV^n4CQ>XHUrCNh$vI@ESJ`ApH27-Yon? ziXxf5A%~~r@J%^9Ez|KWIec3#p9!D*s>iJ0Sq0xw@SK3!V4AwUF0LgKdO{$4qG1}& zYJml%jR`$wnVoTCs~$CVXS-$hM7J4E@}g*)9IMOP1VZbqPF-Mfqhabz$=)rxy;<85 zCuM4*71QEvnr+B+iWqXb4ca(nV$Ize4eE9xx*={jvF>_rSxvwC;>j+<6qq})u;-S* z6w6#2w_-ibaV@6TZPQIhprW+Vvb&;Nl07|!6V)X#xTO2CUDQ#YKtDp@ZYOwN!FLtBpx}G#ObWhFv#nOr zj_Kf#Y^~sf*-1Q89!3+V--KaPgVR3Kc`9+zrZWhtKye< zRmE%g6?LolHGU&d+n^ z@Mi^oQSn#2nQ1U}6l*QbQSg?Ezv1r+{-NTZ_?L=*<81}+sQ8ZzUARgow16){B>Q^hn@6yOzA6yg;E$Y;ujM2Rz16d|sP>2f$q4#jeqA%~e_mMUh8 z5>?D$3}UXBr;7Pvfhrb?MXFfLvk*(lsEPru~$|$SNk4oRJ zyiyKd9&6n@L?FLQcbeT>X`^OpUDEvprDc8t-krsgmseMciB{(Ll#RzCkZ0>%GAFj% z%~<0r#%X6GS*xDVq}$dO`>c8C_C>~Cn7$%&jl??5jOp>XY$L(aGIpCBH%70U&B_dJ zOg|&*;Y?4@WFFaI^it*8IB(t#*NALhBNPHYQ_SZnC9|DWkLSr}^qaA6+cK?WBF-1X>WpYJ5LSIk20#Z7xyNZK-kv~~em?IgPhqWLbMD^Uqaf=C7kLRoA8$0{ zWc;id$CAb~-@Ufp%a@#2B<+?RXK5B>X4$3E_0ZZ)HGBeQmPR@evMBO>=bF+rrPH?h z`Jb<)VQGPOP_Gxc696JJpaGsNl6$}x%fu)=H;bxpN(E$24Z)wDDUjMIWXtSb7E zC5z4CHx{={#+lW$sbzCLzpa~2m)}rbjr=(gYIlECgj(ww*L!`cMUV5vDgjxQff8S* zc3;66VDN3yc2Mgih-Z}6*4AclrGdsDG)AJ1k6U6fL`S`gqLvF*6BnVi*jbk1;fD+2h#bjz~;i|}!K`SQ>#W->kLWm+^%8OAKBX!a0FhB3#>0kzNNJJU5YZ)8Gy z2Qj~65DWHW;V>2j;mgH*WYfngL~sHRYXvH?5+`C6x^WUNz-rut8ecwkr}MF!`G_%I znU636@1nchO-Puub4U~Dgr3U8-6_zt(6PmCCQgyFVWdO$=IM~VrN=|>)68Q+K76J{ z%rq(g{+SgrOCX>c|)jj!E}PaZ78fHb;abaA=U_ItM;P6r4*n#P1{$PHGqCs zx&S9-%9p0d)qe5-rc_ksQH4ibwa;Z5WqCyMigaigo)5f+tRvR9-;X9tE*H-z;=*w9`W&hNbY(4%|Vj;a)j)!d0`p1}gt z$7pmfmZjHB$J!9tCRQgMOKDiQ)6-D97e{*zb4?Akh01LxIg*a0sSYNKwB0?D!-#zm z#}l!epc1D=#OX}pa{(LUVzi-*jWNa+(?_IU%)WCu0eS^#yVzrHV2|0uF7psM4zR|a zB9@;aV4p<~UO=2b=zB#3rpUzw;sn^D770;@?V<@6igxsi^YBp-!^gx9Tr76t5^*Cg z75CsWaX&5>4`8Qw5Lb#JTqT~yHR2`g5-;Og@fxlZZ{Y^pPC0qq?DK_#; QF5Yb3zlX6;OkPv`KiHn4j{pDw literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/GodHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/GodHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..4841861f666af0e6d97819bf258521cbb7a811ec GIT binary patch literal 2803 zcma)8Yj+b>6y3K;J8d$hkkXc7l}NEo+R}(9BB>Sn;GyXQN{iIzB)Np4lbJFzDF#&h zf{Pk1 z#n6Gd9=wM67#6S?$7NhmYgc2qhL7Xu#V2Z-Q^QgW%UIE{s-D+lxPcWl1aE5^ZpM(n zTsPL$b3+}y)s0Wp~T1Hj6*DIzkFqO(VZYh(mY;Bo- zM(#-4&uj<#nY!7cS`PGe1{MP81D^`mDm;PXO^0mX^s6-xYU*9{jl$NFu^q&QIUz87 zqe7#y+%P?pLAzwzj&Jy;V>4zantTPc1D5q59dhi&0As-@8zo-BbPK7}rC2l?*2PZl z$7pLWFxZSYR}GyCoI4oq-hn#)*#qG>pHmke=w-ZPYfi;2$jhcmz`lA0O{)UYaT22f z{Vj?`ZB6NT11B_mt;0ZGLqSIoQpX)kX(;Kq3sc8EZ0WF2)?uTp!O^je`vS)rGpg~L zb-3^}_&O@eZYaRE47-$B^Ig*}%~edRs4^uwRv5E%?BIcpZ%`E&NsbjvFIlL#F0a6< zCQUoZYEPC~Zqqs*qN?GMj&Jduj_>i9dEK^HTa*;@xvjbCBfcrUOf9pRmW}d)%u^jk z+KTv*hP}Ch zEY7#cwLNy(#&l}(7nXLxk_NerH=xS@=m+emfv~W)N17GY>LhF-loF@ux^3RC$ZKrT z2^!b)F6gxa-E6MDVXERDNQK)$YOLh%$pX92COe5M%gzpyIlYf#yTS}v?v-L|mfYnuH4Z9#MOOj?ZwW&JhnS+2eRUu1{dc(fMh;|v<+tQ}P(~Y{ql+V^8vA+t)N28Zz zqfEg^_afF{M}uzP3ElA8{y&4~9m^q|9^W-=&oX@a9Xk*sb%7ogEJ@D`T4~b-?Frey zoBY`yfxzqh?@|4O&m=z&I=IuxcXk|(r?|3-2v>pQ6O&INUZCUlQ$&72^cgxQCZD4# zf+xYbw>Tyc*D@7J_X*#`5LJoYoyX7rT>9m zMMb^-j^2F~C#myLo!TJ5Kz(sS_Y-uKkSRjd>7`%MOVj290{1htb$UJMh`+?pets8_ zt?~PdI@KNJNvf~Tudf}y!?Zh6w>v_+<aU=s8vj_zWBK_65>A4m*w*u}AD7=Di9 z9YI!vF+a(;ff0)10twGh*er!zq`W!uTHvqNVjyxNWcEsAo+4)gkt;QkS?+zv+lU0W S5ksUVx9?x~F-yD-eDn{-3);c} literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/InvseeHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/InvseeHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..745bf771170c441157dfdbae287dfdd1ca78d0ba GIT binary patch literal 7756 zcmb7J349dSdH;WVXhy4%5DNkX2E-)ZF*+q(f z-XFYq?|t9ItdiA|$o(Hf}J{p3JGa;PC!zDO}M?!cMLmD1a&o73s0$(b|pWtyd zdqNFQD!`XZa2`+TxDdiu@N@_Z@uzBgxC9q*NykVDf_O&5vms2zbH(^7o>#N4>3Bgs zUsT|i)a=g`->+-Ud94eN!ntsta@x9S;&DK3)72K>}(B>QbbOri-piu`VH9 zN^~)FDb=M+mkGL*>oQT7u#OX&OwwesCKZCBwRY4_-YA$?)0VJ$V$t4+eZZ=ZTFE1^ zcz^w2JDECOzg>-ui?#~_&9PofFrm$kS{}TJc1EYxHo!vNpNPM#?o9N%h%LLDl$&U9kk^u_%vQ(PS)stT|%$^b1zh zw8i3m_1&rdemhxjDPX;w!BNaS*ez<|Xcu%4142 zRslO{4Je&F!g<6Zuq$cy^b@nxnY5dOjwu;abV5Pp))XlYSljJ{O*1z|qp_r!v|~|P zdA66RtFfb5&Zb76mCULxSe+GTQX=z2U9ep zQ1(z)EEVsuHrP)1@m_QBvsCdl(2s~Fm4-~08Jb*U$V{1~$!tTaWR75($EGw~&P@%O zEAtGQFAFrOHe{jH7_vwf8?r=d4XKl*)WDE>Stc;5EthXq>_C+!*BY{1Rv5BUt}|qn ztk&duL)Iw7U~?pvuncJsnrUjGRo12KNUs&Az(Vt^HRJ}l(U6~le8Lg3pwFF*=$IgQo3C_4A~+z%x7fm z=7_51oNEtMJDc^-Hj5+!I;1Oy^}LbEp|#_wzov9VAnRNU%QD#V=v#9VcKeyMTFaYo6;aalSwd8vn+Yn?Id z;8cBw87n9C+Ho-EY+1d6Ir&PZbKRyC^KFZh_oz}C&ormvaRODgVEE)8^04&OXpN_~ zv1Tx(<)gQo)ZI2Cq&&$Zer8+XZ))AjEbrAk1LT>KgJwdB(QYM8;?^wM%{}tU?N#UV z%ZWF@BTkx7XBB&;m}-fv-qxJcjIUh=hevg#ot;$GWir_nraodUe19izjzyIJ6({3n zG!da$1l2WH(;Ab!Q`1db^)@rSXPOV1@hQTh+MOo1=B)B<{;Y{ z%2el7U`zKQwnL3qE1j-VJeY@{Zlrz_zH&uZ0rpKUKD+duxJ8qDl-ZLPhdHZcQ8vX? zC2njT>xw)&j&V|H+uXFZvxRkUS{|FMXDdU7dQ)+;+m5i`5G+@1&igx&^81`={99XS z@@B6=vj+O0w1VBL^x?`-y+gs$pNlj_HFL<0%?I5Pu7jV~2`!msLp(?;V>5$fL5JmoxN zs-WPR_b7$mK*Z$6?juu9)5{9xJw!H5lyu4|dl;>QAM+N4B z+*RlHDVd#U85mSOY ztx-@1#%R`5eIh|`G8_ksT;moKVGnO&y;t_UeCu)Ky#1?_6S~YGbI_{qi46?!t<`-|+!2fS-o|d7W)Jn4gLabboAL+szS=Y}$PW^>>P}P%T+i&` zzHlxZkD7WvuFv3Yh{XrYWSV#x+fc4DFcz?yTRi$?v&a~wuBda%w$?2jf@{WlGs`8X zlFr-OJ2$s>?C)%)cPRx_qw4gj>`c_VZ8ic08}ibmC)H%D@OTcMLD+6vM;bAQUyp1E z4)LR0fKR^naU9^P4Sx9eEML6jBIFW$iL=d-9o4KHK5dJIFm0R0h^x{Kmd2t4IZ zL$A2gk`Z?E2$x<$*)S%Y#M~u;VU*VmBQ%1E1cWny;@S~R5=UsiBXl*2$$Bny%tI*_ z@Jn1ZR-*=+u?U@5f?n<%LcOERVpq(pGW|G=BUD94502s()hNY29LJqB#9gFXhQPa6 zqT$0D?nY=iKEk~s;(wISV%&p|aZUpiB}su&_}`H7RnKDbu8XL+fGNY68lEuO+1T_R1nh-xEO@8vRz@ z$&aa%=a9PUWKTtKl~$pZPkb1~C$t$un4=cwP|nAUvudw+2&HOq21O^dpVd}qBUtIf z%b3hhpA{P2={mvb(Vq^%pIJSGQlfcKqijQlW3UgjTh_CB5E!Z@BFe+SOJE2fDe-eQ5MkIZ<3~wiG&KMnXz{5_-6E2y4=e zGmu+V>}(Bpk+NqiaGKcLh7b(j=CaI;b1Q?cuQn9bmalZVZZG5--r-W?i+wOc>J-^? zgSF+?r7wRm-D4N+sB&b$NjI+T_z{mj}=x4`GX(#a4L&U2-1Vhv(nGK6wlKeF5zAh0yJ*M2~MFdVQ;5`8J}@XLB!xe&10yxPJyx{!ikF|79HYe;ddBuQSo99RD~|>`H{4#8)I0OrO7n6Z|W}5$wgi zoN1KWN<+8c<7w!dSnAFw$2u44D@AvD?^UeFefVwYlwuF9^t;ehg5>FAXF8|L8Ij#iJ}Ng(L}uPs0NmPL85(Ot9YtI~aT)D3D1J2xKudoEoJLV47r{O`ka7p>rq-?>-;i);4{j|Lrr`BEu|R8Q$XtOWW5^ z09U3BjsAc*Ckk-(dU5V@aOCF&I3M!hyl1#L_ZQ&o^WqFDobui?n3)N3Lc{yhC@1jw zq0t{sFW+4NzdZ|o)PXNAfSXzPYYx1o0N$O2zwW?81@N9M{1*n9cc$DBJ=T&exndV70FJRwcu{uY^B801IY!J&_$;qTeLxmZMrvYx-b7sf4`>oJ8u?d2Bwi8-1VGu&-u=|=iJBZ|9$0E z0Eh6e0J`xW4et%04AWKU!ubFU%v2+ch^(0bJc4L7>M$!)OPUJ-%podGtQzyMs}V;+ znu{8e0XT4Fl9JJaa6Vd%$FL~V$E)xJo|Ltx0(c*umgfDk@c|hk%_(o9?6Woj)#rd zl##S#o>}y{vzDW9u(ae^g9n;PCpcm{juACarstwqB9@9;wn9s3?zCPCTEueFYLvH& zmU`SCj~R<*@^s2_6}sDp{GZ^@8SI6HlQB8Nx(4CVJAkaT1V)f!+7XE$zawz6Pe|{jgi8v6P&}0kn}e2I zwk?IXWxpf`9S3o*LfyJVAsf9q_9Lj_1s#{Mq~VH=FXBr&UPP~kFYEXUzN+JE__~g7 z;F~(Wg>P%Ps^dHOu7>aF7{T`mpN=2kB^^J+j}*4$U#NVfiLs6!V_Ago)N8n|<0p7o z!-|d@BKsy@(y*%I72MMCQ~XTBB^|HI`9GKD7jnce@hgS9+rnq#sg_w|!E8w+tp&q1 zTjtYQ!fA2i(P+$!?AP#X9lybEb^H#mDct2*A2aM|FytmJJ9;c-#fYko-{WN+f57Vs zyIb1AvxZY7le9UZI{qlse-c&xjK663tB$|n?>hd0e<~a(nI?0QQs^FLl9DWv(Ot`Q znAN>R$b^uOtas;!Eyp!&361(S=VtE+?|Vt%Iem(*szT43^OTHL##o+;$GoJfu$k#& z+{@S_hRsAyZCl$5GH5!V^ZH0y&k*s3@5&Rl5s5-g(u@iON$;{TFCN|?!(~D0$ErHXm}%xSQRnC9~pL`sHA zu$JfyWeSJRan7j(BCF_#Lm+g=bO#JOY{r;2>7({@@=)6Q=GqU$V^W{1+@xVUF(%=n zsLU#}krmZa(=y4hDB81ZRHBA@AGaKNDx|$qVI&e{RM?jv{#lN72W4_R{Z{G5(^T@b za9A;}0v=Pi4@th%FPlP9Lfhx$jy#8JfrWU3OiGt`Ce z%$(%)Y=eUxQ~U<#;%5tu$9EswdiaEr5}HwqooK=?yp1c3X$g2c4s#|H_v46nau0el=d`ky zAMF}^E6_wJKP=eF_Y$xN6%dl6=;K@zdxCvA`_`@%RF06Vdlgj*D+pYHZ#i#X{h$ad z_k^W2+)E8R&_E3K5Cze&B`qqaVJqH&2Y8&HR`lZ-j~XCVCDeb=py4=9a8|+nLG}vo z#L2W$>VEbWTw9=0`Usm%tEf>J-M5Nbg(aNlV6);wqwa{Wi5S)&@i+NjgU;nG3RiKo z$-jcFw4^~{6^&(N$?ffyy}OoBarO4~?rYe#iYD3jEoYc-zbJP4JUfq|hT{X&{~$ea z2-~>YO6xj_e2~~5Mh{LA`$@t%O-p06F-f~pv`p~m^WYxC5Z8U=I*E6Y-Y=HrFj^o+ z!yZN#GZ@t(%IDfBu^c0%&b{=?I9CL}9njuDE%DQE`VF*ugNYph{onAH6+s%JYM!6f zLp)X>y-YN>3#2q)jx(FM=qJTCG71}`9za{z75fqj`^pYgzc zp1cx}0e-nlXqNMw=P2=Na8|=P4{ahp!Czj%wx%M)A0|f` G-u*w;%%lMT literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler$1.class b/Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..1b4b2552a1c6d458c7685c9c494234eb456fcbf3 GIT binary patch literal 1490 zcmbVM*>2N76g|_Vbufmep_H8lNNJK5OxU5UO$)RHT2WL4hzHjhlA-QQdL>UzWRTJG9 z&S6CFqnmLAM{}@sa7-g=I&(aS6DGAdW#F`dGYsak<{ zp}-Z~+$?cIZ0Wb7ae&3w^2^kA&CM<1!aK$6fS95Ed<5 z!es+jEL_DnL%vvdR8TDcrckj^$GC+FOj@{x>vZ~u2ObqCxaxFxvuNOkg(*zaY&SgG zQjOuz3fly3n>Qmefju7k=uRYMGK|`WdlOA169Y~wK{Ah)R~ccMJZdNAO?|3ilR7=7 z=h3%stBb@T(es-KW~7Xx?E+CxC#C3e#~5Eu7i5B5<+MR7|; zi2WE$8@`}+x?=V-vft2s{}Xx&#z*9;@6q)In;7W2VAAptn?J+4r}LRF*wTgH=&fte yF|hX!qXM$j{}qPu8a2GZ4Bp1uwWA6#m9evSwL`F%Z%lY>Fwi6IcjP+J>eOHx#HHOpH?X!jH*%u%}t?SbK3r zU!f;sP!jSTs@4CzteoSs!01;C(Gz)fOKV@S%y1uw>wxfsYx?A@|Ay zk3SLt!`A|5%h`v+7mNS%5 z{JqoTq!vNww1pc7NMEeQ{Y??v=bIjB zN)6?5Z-WO?%b9XQUxdNB?fW9AdpryUiC6ZIs=P?|$_KGeYenNY)Q-5j)#QULli5~r z;EJ14V>z~?Cg;E9Lr$Pqeb-Z=^t(+F^;E~evV~7@-NFn`SU85`7G^QWz-k6=SXe>b zz^4{ganrzO7H;7-!wDVB@wnf0+EGBUR$}RObW6=mk05z6jBE>c@VSKsnhZs|&Q)kv zUSXkk9|LF-Nk*!rj{x{rRyCfsVNJUG1?4?(N0SBjMds~RjZeD_hv_M zjgg-k+v8#D-!d>9uQYa6e5v{s!`z;rH}rhmXi=|uj*+85nb&w< zlbjOnstiLRQYkNq?;RNqc;xo7>~NdLQYlPI8|1>Dv4gn#qMH$km=9|65}C z7Ohic2>gJzX`M-&r|}L>kwi{ONSb9zH z6ux|h110k*4r={#SPb-CIz-D;9NxzC7q4uJJ8Y8UBN|>F8r}>hX?={t_>pe+6PEEa rzQHdETq^~V!F`wPCc*xp<2+82kV6?~XrI7)IE$0?Ws*aQcKW>pe;L!& literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/SecurityHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..78ca70a2ccbd2732ad14a7a0b9b711c970e9ba4f GIT binary patch literal 7288 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 F{{!+-V*UUC literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/data/ChallengeDataHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/data/ChallengeDataHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..17ed17ac54dc74fa7e5b764c53eb988ecc0bdd09 GIT binary patch literal 2894 zcmbVOYgg1(6x{(N!w^wW5Uk=TR(XuZTAxL&@+!#i5Cp4jrD5heL_#tq87%f;-|zl` z{tNvuN?og~pW3zhBl=5RUEMdCfs8P;_RD?bo^$Tr`<{Dl{`~uwUjdxLPjR&4d>n6} zH;(+ka6vvym9EXZ4D*9yKFPj0`4Ax-?Z%Kn;6(ezM$JIKFA|*#-F^tQ8LN=4q z=9+Ywk|Q=Mre$+oHZyU|;zm8*#^rk4#4Q!?sCZY!dkShVn6~L(Qqa+v@~-#+ad>BTW47wF0CP|!A&w|#R-%$lA_p|9As;~T!|*wp#JMvMWGbtN^&4u!dv zH+==k%A%~Bt!vS>F@90P7p)bjIoG*k%FKvQJ9#%PhJs1kW=DMduCZ)rNZ_D~+ZyKZ zz6JyHD$*J<5Gw9y$YMc*iMt9;RZP<@#FWt&HCR~EV8c<7)8N6^kjJuuJraO!8Fp5m z_FdD?_T^10BV6f4+xr?mz>0dwG8Dx@4_)fxdj7(yM>=Nlx;(EuW*+&{a#wQvc z;!_Qu$^aUIZU*anjUu*aV->Udd#rGP1z>f-g{|~L=$tvio=$-dX%QuCmui3V3 zxCklJ^Mx&31&xulzTmDX*qIgnWN-t=4BN;`vyRTPTnO){US`Dft*7IN?fHhCW*!`( zPeqia>w6%w|7KAYG`J!w;krRyGV9N6lEfuKz0r&=e;oA>f! zB*UslPC@QSmGzmKkpa@KBkjJGnY>AZ;m#M=w-8~A{AJi(8$+=m$4oE9G!)#cy0hyR zYmUsyV8Ye2FH7+7l<@KvOG9mGppDqfjDE}TJVCYNqa*#Ja}(Ex2d5OAkIMU>1T4lU zod!?%L2WK=bYYWoES8r_6}l8nzD&C#R9R&Fe#df{snt`10}5KAK-X4@qSnaegiXDU z71a%jz{LDrk!Jl5&u(K~pktYRSTwe@kNHk$MWm&qi3BbRGHSBi3(w;%<5L!eRN8_} zRp!^Yu|x}%8iu19&sgS%MlO|ASe{s8X}cgt`IvC8qY<&n&h3Rl9wu}6QNcb&iaPQk z@>h84?7rs=B)is9r@)H6HPE6*|~9(1<43hGsOO1&29n3El82j&LSdkD`-7SxnK* zH5vRb`bp2Zo&vT#MeSJf5A1jb^`@LZL2N8pK;6$!*~P=*;hx8+FF@;ghV3_>py4rg z6tJ_Yv4Exmb``Mu5$&28CCLyi1?=IpRRXOJfS%#M9IzKL?1M(mtz>$DTssK4n^0dP z*sBCO%Gnfpa0^M?#_@nqB80j|XpZYi(uv^)j?tzHI%C(P<~dqboQNN7VmP3dCMVe| zc%6T!A@61Ol6U)4v=QgtRlK5L75l328`QDn?*Zco>?YLE`Xtpog*Kcf@Usy}?Q4+Q o3F$O#?h{ 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/data/PlayerDataHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/data/PlayerDataHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..cb9c60e82a30141f1f3025cc7f4a9334fb5de7de GIT binary patch literal 2873 zcmb7GX;Tze6g>?{4?~Lzf)Eu(A+l<_Zy2L&5g8UiFq%Zt%shvdrhDuKgW31}59D9y zhf!lyDxZ?7{D}M#E0y!QXP^VNkF^M;EDG3#qRSd{}P&Pxd8Lq(y-jV`WRE#FE9an2GhO``wCom!VN!d(EnQKyI zT8`MLn32tO*~}&}ha0tc8<%Qv6Sq{nqvBl^?3)is=Ur^f}q~ch4!P8g#Nk!H%?Pi-}-)LAckA1&b^7X(wY?bB1fmd2zAIUo<@h z=gV7OGymmujj+F^eyCv<$lO^TPUjF_^YeaRg#i|6Xju-BTv@bXM7{G zG;ZWWPckkPv`h!KZ!U{D(=+Mf%eL+KhHpAHJ>0e#V8~+KjhbUeUbz;SzJk8;9$6P# zcSQGQ`$hk~D6K%vyUra`#zb<)3EYer2`5dFWbAT}+%;AV4JjN@aa+SY-q&DYK}AMG z7DB}x4LK}oFmYGGv9i%w&W+Oak_HRQ8f-W!@)|t&8Um~+*dtHZEyK>~Grnuuxq-m6 zvci>Gl)bOv1FULzfDh^35rZ7EDc?z1j*(5Rl2??CBUZ{fZvZ{e^TD~bfeNDDyQ}Cxv z&lk3E73_-b4TSljU}sMFQ(@MP8@7>?V(ncULLkaX=BrH2q7b9DmWrdc=Nop0*ME>Y zWl@$=wk>x4R#p|%xgsawx?wmn*w1beyCp*X@j%^RFHGp8vD3ob{;x6+ahkQwdx03u zvdocF7&y|)`t0oJ5NX$t_Q2|FU{YYX>&5+-IH6qR(q_YEJ1oBm(@Qe|1rMt1>b}Jy zBjYigaQDosvg?=@USP2tRF?+YsLik#v<%M^bairUbZ~5b^7@tGX$9xvzWra`E7~WW zI#2jvF)kf+VT(&FmXvZOxnxbgL%U;C2Nw;0(6JnbY320rkbVbfoS zi{1^>e{$ij$gto?7q_`0P;rBNR4!gBpYWYXibzWl6Ej?N$e76zFFcPa#Co=jfXuF_dybn^A!L7g#AZMd`-Dt8pd(V~KVv=mq5 z%j2&W-)9*Ydt*(fIfG{vLn$RiWA(z=fx!);Ez!&SakWvRLP$21KWd~O>$nr zzM-f0F_b5$=;G;+jG~8o z()i!hlbZ9r1#EkQ>hZomvEv!kn{xgbiSfPyYJP#rE*T9wdLN;-0Il~Kw%>e=x<}Yi zz|Q(z1=JVNP{8holxw7wKALDMU=OFw5@=-z^fZ6lfEFaM7aI1VnT*@Www+%OVIL#h zs{}kokkeebgHqdxgE^-TDMA#QEA&>{aj-`zr7|)bYMQLdG%J^{ArsF?#j{!Jp)1osL0jU4zt0 oNT+yGBWfs7f|P*r9Qz4r1D*<;q0I`Mh08uktr7mj-n-QDFW5vPiU0rr literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/events/PlayerMessageEvent.class b/Vituz/bin/secondlife/network/vituz/handlers/events/PlayerMessageEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..d947bd7b2b6d84d758dc197ef99ac54b60594a0e GIT binary patch literal 4352 zcmbtXTX!2*8QsT{HIh7u8#nhjsnR5>tk_YSrlF0Kl*EaNz?O~Wq$Guuu{@C{9?z&V zqckpeXbY74opPsK%B4V?){fn*#o~zvc;G+urEmOz!UFc08Ovi?HeRr_)||_Hx3j~Hj!f4%uf0LO7RjUHS}A%`dBPu1)ikDHByl5!X_y^o$4nX) zYz4J6I&m$Dr{w6!H*ON1T-4LJiKpextt4jCcm^Noz(?`14tyM+kdIHM@hN;-K0cGe zvv^L5KA*&AllWX3pT`SHd_lVZqJl4_k;OFyUsmuH1z#0NPHEPpsXMN~z9HMG7AES` z(}q{jZ|as;xEQ<~GF-1;AXU+5iYkUXrq|3_nm%P%hIdBbvE16W0~2-6 zFbief>tAj0YR_eX_<%i0hn+))rI+e66S_05O_+WNc11HUYmOn;;bz>MGKj_LAy=>1 zM8>$T7cAX-+IFT3Hw~};OkoMI03tU$=x}hb3lcV-B;7bPjdeB!DzJTMh3nbclKaCe zMNh4L_%jmPvQf1(ukP?PPiz>db&akCqD-|wEGH3dx6f;yCh*V(K$@gv2$57`&Z8z;cx`Ue;-fLglbj zyPIq_6{||ovE_PAa~WnRQwWGhz_L(9eXCD;AIuR!mkzlM#XRO3ad=T?=Y<5_xOW?S5>@*+bUkiu!1*K z%*hkZ;|}X6dn}jL%H`~_o(x@OvYKbp+JcHjyh*0YWc9r7{4jcX)+ln#Wh&7Be~<~u zVwG{9WmoDXuA55Pfi=OWA0Ho>z6?>*owe6~@7dV}5}c0SV01h zL|ulqBDY{Yhe!WA(&2pwX@;3LHJ8_~W*V}u-5WUaQM;(QQ=}(ymgJ>Nmhn_wFH)v! zi3ohDOP7l0DY9i5?NE<&S*sJlgjTEh?AaGRSJ?ETumxLT$hXW(3VIAp7XyC1nyyQBR-P{ zG{ZFRT!9PS%d%pIX>aQ?I?MY!kkKg2?JJa*3YMzMl;)Q7TLdz0`NK*cZq(X?Ya-I< z*iFqS$m_Y;-~a+6>+$se)a%%d%67%j%yNw%HN9&_*vQ$a?#vjjOVEgLdHn3);FF^l z#)gaKa&e@@mPst4A}zZEJKp{^JzbXHFlR@LL09BGyl&hQII`}^n@PDJ`}sB51A#me zNP!f{k6N!KeBK5BU=Z@PD(zE6KKP`xOxdOeyjr7{2hpVYz}St!*ht` zd&L6ce?t2l68XM4DEV#iIV4}BWDJk+xep4T8N{)R5$wli+>hNjfctO|hxmJxZ;uC- zaT5Jp(T8kz^e$(oaGDXwnT#&x&t!aYoZ(z;NIgcWcXOu=XSsI{1AH=W@mEU5ITrJ8 zAl8*yK>Bgc5?vi~b{nePUc@Fs#9ek%`WgcCD^1XsR zsjF)%AM@C@fbGE>C0H+FN1N}ZNq=V`#V9tQzkpqf*ex)0coBO9JG0A4w*WIR+`E9i zrM`LWdl6TAZ{xm2WZEcE>RpO-f3v6igN?)j4urEt5C?;eFm|5B5C7$Vzp$Lz6WBz+ zbC7?jwz9bTSYCrn&GSs(pZO*77E|^%llym;(K|RHF5ppdkx7;*&oGs5;~LK60%vcb zLd~Nx(V`fZ!FwpR8L@xjZwfB{1NC?KR-lOY28pE~{<)z{{5B4~%CXHaw}iiU+V>F@ zM?AEb!uuM!-M-YaE?XHb1iG?(hA_;hEc*gS>7|_+ZhNK4&8~=>_Rx($2_r3(W6d${ zX{kKgQaRDA+}%?7{TOTES!q_@+fw;>%QGjN&%Cdtav9^H=aWo?yswG;9&&^%mS|$O z`P$n9i4ZXfyksN^^d($gWk=G?M(qT=A@F!>JBf|jk&Gzg`2eo8ibvU~9m!eJ&ehiV s_&m80d?e$s3*(6;UL%7_l!1=B$dZj7cpZmiP|-@>$<+tB*M<-M2V9#O2mk;8 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/runnables/FreezeRunnable.class b/Vituz/bin/secondlife/network/vituz/handlers/runnables/FreezeRunnable.class new file mode 100644 index 0000000000000000000000000000000000000000..8abae4ee5283dab29858f56f33df4d5ca1e718de GIT binary patch literal 1970 zcmb7FTUQ%Z6#fpOOh|^(hJZ+Iozj{n+@=bO7Hs8egCStK)Yj`sa*`Y}nZcO}HT(qs zL0^3JxjrEH;PTPsKk%=(Twb7z+_B;zPB4Ka2-q zd=$n~7|UU-Xjs*-#?ZGYZRy`<2qjbd481E(K`;zvq%E?wYEHPjJZI5PEaT+4wa;Ct z^yX%-UzQ%jV#X7B$1Yg1C`?=U&m6a69!bA;Y?e7~3)eHiu6rk`_iwQ+rcxk9oX@CzOu;=0|Xk@8KR!B3!B38c!_Xc zPj+`#1x9w9nwuBvQWZ6H5zEX0KjJ!G$C!qXbv#5`#|A#pkkPS;tcEQe+xV2S>Ue}5 z9lO|L80`jE!@iEk_)NzWJk{{IjxX?~j<=9tm`}_ns?)E2Y4}RV*Z4+-;S4DwA)Yuj zqs)(lkrTo;imr1^w_M%ehUfEQ(WnY_j11F;LDuP_Q74Cj^ytKFk@o}jnY1kOHxhFR zYk4V~U0Y>HkiGKQwgmTt(K7cPgF0yVf>*sm!7B{60>g&&eA4%3+H9Cs!@YKtSLGBz>NpcGUlxTLkR5`NmI-r9Mh(0DS{o&A9av386YzRSJJuB-}o$*bG>vg_DR&9mwZ z4=ynF(5jWBO@vpsg^i6=C!Jp|Ma87>S39b0)W~p!P;S{4y~d4qhhEcBg4(Wl#jz|p ze(Bg0A^v~+3}JcRmXQn2t#*;CR_0z-eCG!f z(Re2xHUG2EN?!g|KLc2@j2vhWHh!W-z j!g-TWO;LB|sW;1{Z4%lRdP32}tRz(jqu(9!??LiErNH%X literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable$1.class b/Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable$1.class new file mode 100644 index 0000000000000000000000000000000000000000..bb6b48046626a7f90325ccf9ea4c91c99dcc7987 GIT binary patch literal 950 zcmbtTU2oGc6g_TBvxPvrmTwpgR-oM^%+L^sO+}&t390a~q9O5?CZ;t_ZDcz`;$QKA zn0Vj^@S_mdX%Iu=X-gD4_vV~)KYa7^*Y_U)wsChEbzBY+;7W+AxVD5`EnF zpW$iuBtpG?hT1@Zww#w03<$;YjBu5ig`qqWy2__ddi2F(vz4C7HHTOtIuj$IQehZ2yS?ENWTNMD8XR7t1`BfmrUo}sX+Op;nU)_I9(Dgu zFJwyI(6^gsv6}FaGt};#-aD+(hzB(7tl9MKrnd?`Ax?wlg5LUM7oLsHuV5SBQ2A0| z&d^#X4DbMFX}wVL8dxFAD|j_VcMI)O>oH+GBRoX4RXfC~w|}+5g1=3ihlO6WKw_a+ Y#W~_taGv4-HC)6cG>a(o_s~w)Z^eoHEdT%j literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable.class b/Vituz/bin/secondlife/network/vituz/handlers/runnables/RebootRunnable.class new file mode 100644 index 0000000000000000000000000000000000000000..e3dde44ddf5a62977be6067899fdb5c21dbd690d GIT binary patch literal 2502 zcmbVNTXPge6#hE9u)D(q;u4aWP;t3!Ho;^Aa*-r*3!)o0+!7Lrf=qUY&5+rdFf*G7 zctI_nd^8VASr)H8Sx6ZWs?27F%1VzwSPLF5fxb^Yh>L zzXz}fA89y%(;CiTWDOVOuTjH`7)?=}m10baak=(-q!If=&dy0O5iNBzM4<1p2-JEb z@bym-`14{2#4kUFpzeoE2x4E|2toYQUqg`Uh;-^7+zMCHCnKGv-!FzMZF7f{ctgXR zIIrOX-b&!2hHe;AOeRrEpsZmRPA6f?@sfrLrX;eGxSYUr0=9r&a2(Scv<=@keSw5; zmRzSyB!)QiYK~($70xCE)_Ufo>jnY?#Zb$(E}4194CY*KIzMX#wQKn)!ztUQ=jY`~ zW70PL{26uXOf>JOodL_Sf`bC_+)(Ejhe5Y&3T!A^j(MV1oix2sc~T%z8vN3DuID$d~RUHmo9W%J1;}8z(=*NJLmvB%=5d|Hu zN#UU&(3;(owMR^E*7P!#p9v`>r9C}83HUk!)DoE0F^9KF?9=nQeV2^ws*Y>8E|ATZ ze!F>#uB+Xv{FH(~v&<@Q8%`xZ5_pX3Xw91mBbDgVqu{yy{ZDn_j8vgVsd(AuIUv)}Tp6j?Z-@YnvC|7(auo=5n zv7G!VHS`Y+bw0egGHPj4UWAY#fsR#UuLYJJSiD7puI;iaslYQF-!=lKkj)iWRn|^=9?@E48qDe7e-Zh=cr<2a z7`Z_A<3fIfk*LL4fL>WZW5!@pN$(fkbq{roi1ELGHRD}(u=cq-NW||T*|mVwZK~Db7-c&Wl#PgE6Vhl# z6I#%UXSv>nt=Np0x!Xitn#FPDRH9cH4xfI!ibCjIq-jA=>;5-LG(t1!j3_mK6C3DI zkA;rw!`=BW5WlV9`uQ*Mu|f^=pX0hhX`(9%H4;@6Y9czXPz%wBLajsvg*Fo%QmCD1 zuR{QqGpA%L}4&FhL~97B&ImYl4u|UjSQrjZ4!%M!#=t-8kg{;*pYw7)qc4eKHZMU)`!KR6`M^mI>J?Y&@ zi_L7HWgjh(k0eek`PiXajvb$3BP|*gsydq5YM{|)h)&W$9ZsQ-qsFkhIr8@pR<2p) literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/settings/SettingsHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/settings/SettingsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..549e638eb26e7e4ed057680bea42b4d25617216a GIT binary patch literal 7671 zcmbtY349dib^kwUcW1O3Kwc2A*oHNRMIeN@gl&m{g(P4>m$l-Mu#HFBK^j=?%DW># zj-A#iO>@*v<2Y?x*GZZ-5cfziX%`5Mdn8Sov`t<2PMe-dk2Jl~rgejB`u}G3)B&_L zKdibZFO_S5RfE6A*K6?&{EcG%TOEI=X z>iBjL!}vEH|E>hTqvJnx{AUn#ctgj3Df8d;Ge-Px$3?|(UB{cs;D4*dTRLv&0zQi9 zQl(2Z1;nR|Uzb2oG||;ojV?i5YBe#GB}Q~u7HG0Ch(~0RE_Lef9qK1kD~n}`CiOv# z%A#6XD$8_Pu1mN^R>+--<1St9)@7wGt8|Gd?t7H7)rz02_v*4nm$kY?by=rNgC^@W z*&qn)v{SaTOK^8XcRDlHJTi6alDm{pnBO(vHr#h1M=&6`vO$c_~BvR#m+69N2m7J@!ZCHh}#xAS{ zky}X!7TVbXdu-fsU9b`Y85U^DrF53@uWnE}H8YX$+-40zk{vDvisw|2+pSZ5uT_E`!A`b6HGpuSvF(F^7#Wlqp*|7kNh#lJo~bs{ZT zJclpboUl|L*OaR&MOAIOq3z)V6X#2&Gt^k;IX30k$>wf5>u_gjB}Atu3ou7PShxV_R7_EqkWyWWvg5 zveA&OcwQ;lX2^DFA%Y_YJ|sH~xlislh(K5hooPx6F*-jtMK9HOC0>NY+)b+razrLz+BjNW1JYq(j+Q zl(*62GF!CLsjP%%sLWan&SFoam5rRpq$eV2XWXJ4-Rn)+-G+22jkS4=gG`bkdu1P6 zYMwO0#%EcnNWz?su(w50s+u<`x6T`~-xcnk8exNpbc~yhAu;7j{iH`4B`H$yfW{7Z zAu>lID({gP%g2y|uJf$Rj2Te{6-lR5Xy|5*L(U{QDcY?>7e-s+R_3&oiFBk{Faj|B z(S+MvBC2bvP^KrXluIsFo9nohupOo%n#g(@MwN!_CQW(_>6JcB`VDzV1`NC?aZLsd zIfUmlIc&%gIcms|G9Qe#^k=LS_F0S9!{TUS(p}K$eDmI9$gtuwqNCAdiF0Libcm@= zq*Lph$hdjhqCe9SPuR**=op?eGqdv&4Pm zL^|V!g!&(mM|mH4h%)539A)EmCV3lFceW21@|Ys{dt>|d^VFt{7&0pC)X}J=+;$!2 zJ?G{m;t(M!$k9Zv0z%ZH`iF#|IUysgxz4V=?T5Mt1r0YB?zB#rQ%O&J49~Jn-h$tp zrYS*{Giu1V*n*973gq$Pd3e}N*~z5o3O3!Ey_21o4JAQ-O->qeN)>fd7^Z-iD+bBU zh+t*ev{B4{>83O!CA=4w%`E$TQ(-evN3M#t7&0l38iNxSYCD;_)ruV>wsryj}H{qmrOyUg2U(E(Q6p8o+w2 z6l1YvUb&*t850ttTb8-P#V%M~MlG4DxTD#8N{Lb3OR%}(60Mv%XWyGKHR;rjSziVwEOdb>K0@9S=l$B*~7_jU=ESC}cB+8vC8iK&b^VkbE-3$`}I zZeq2V3pJ_bk<9U=qha<@|Myz_BkI0oA{uUImN>z(7TjBLtWw%a1FMR-!HCBS4f-e7TzK(+|06Xhl=I*r0>2;psFUYe3Sv}r3yQU#F_xM-oqrbnsziWW# zu(RH++mjum7xC^`58Y_*?)HvxB%MhnysBKnIL+)XYKn}<_VtpvphsQF1a4Pv$Nu)- zLBe8BUmuU;=f25S~`=ln;D;BPXp%TkQ*1Q7Zr)-n z0>{0!)UBQ|Q`sbkZIzC)!Ozt+hwAn@m~L&Y5~dq(Ezn=QJ2{B;4|MH~9X-yp^u*%v zSRbRhysSx76g#KBaWh*kUO!h+5IR0D{tE}XI^%%EOw!;eh+*7oF=+bD^*{Yo!wT;gnZOM%^am3Iklb`13Wminq<1n_?e#O!pmI zjedpUr;btSG3``YaW7D#U)g%^d>x`ts|0dcQp;LMf#I-ioguhY+g5l|FKZl(Dzi`$ ztGF;I7BDC25R=h#TcIm8RozK@@3~AYgVkwg)xh5CzI;~mWtkIpxyC|O5@BoSjb*V6 z-R2TFIB;k<*1@+K{(o0P$Lw}e@<#PD#)$}8oVV(>3a?z%rN;eIbk@xi^vd9@AI3fW zJa*Ro02SaEKaD5&`*yDP@Pk(s{{}ZShNQ0PGOAwTstQjkn!6K54OZYOu9te8cn7|R zE4BZ6q)wo!SwQSmp$hXSEZ@hfP)g3UQ>;qhH}8ZTk%Rcx!m3)t-*GvaC5t~9k!Q{Hk( z(~j9nF5td$+5432{gln0&6Ry%wis=<=52Sn@~b`DZ7NYgm8hL_Iq!fTHpo5LAWdi#8%^>OHp|P{ zBHv`_R-(lPX2gSB0hm>*^1$?0t-$x;9AW$Yw6OrbH^tWQu5H)Ry^W~-0lb^Ptb(co ztO9_U1~>xdZ$Od^E{po z`-s0#XAWI2V0G9R+MC0^#wFNaeH90MXbc^^g6^y6slo+(!{a3fc_ZZQRlGF?&b|`o zHII|~*D zwuznmI=+joWjCUD5S!6X${yyw195cn6L%L9TxGD2?PfpTg&3a20sI&a;$?K>B6^TR zFFuccd<75Ts~Eu7Dful7;@e=O#8CaFqo#UCus&E{^KmqX z_4?q}*4nUE&~$=Y!nI|pl;F9bT)6RCNzvUe;Qo@x7`ZQDJO?{;a)uy9PPq;#Ef>(j zb+WjgQ^Uke4S}$B6{#wO{oz0k=_6tPMF!31HjKTvgU=@kpi_LBz$T<|A6rH{vN#5Z zH&K>}JHv$W#hx6l@yd zyFu*MYWS#zk7@XE(eQB%KcV3#HGG24LaT3J>vineLU;M;FOP|Hc}yh!ADGBtat=f^ z-3k#(%*Dg&3J+@4ly7gl=S=A1#e}*BwNQot$UkQDj~DRXCe<0)&8Q^g6gdj0EQ8q8 zOnoIKT}`TGQpwH=C1n=p(0960-_77Qg5^xwyP4|uFv;&D+@4`V-_Ne~0Splsr}_6u zLgXAF@eDz6kubPMAbg1+c%3l#8eU>PKOzh9QCWtM$!aFNiAnCqC-|N7yqNf85sE{& zy9mWZ5sHZ-6ca@#CU|u`r*1t-6rd=>1t?0q07Y7Qk^0M^=u%$JLvbtoH`q=~P$U}5 a!1z-|FmC3Jc^#eCS!9BrW<09!Gyek+Q6!Q8 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/ChallengeLeaderboardEntry.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/ChallengeLeaderboardEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..6c75639428513aa2c36e519718eaab0c840a26e4 GIT binary patch literal 1243 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/Colors.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/Colors.class new file mode 100644 index 0000000000000000000000000000000000000000..16e2e60ba72010ccb5e4d1336e4c7b3f7d07ca21 GIT binary patch literal 3931 zcmb7HTX+-475>MPthKxjX1N+05MYeGfCYpAwSgjRW2*?;ST>Fz1lIOqFBXy`t)P(R z(uQ7A+CtJxn$k<+lG5}_OkyAunkH@9gr@oW)V}q(4}Iusn}+_gTFElkFZ+F(ne)$? z+d2O^GkX8yH?IR&kG}-ajJO|r11Lef4EykiZ0%R@sH_i24;loC@G;__~C?A&b-HID_Y8 z@w_a)DaU_H!MCOG9Y0?10VZt_uBr~3b|iV!OxmgRae<}v4bfD3I5dzQ z9kuL`mG21^bU4Q697JGlv1-eRVLP)@q0CX}G>$miy~A0BB_JYHEG!@pES{}^Pg}Sm zW*dW}yNogC)PB6^#}<0TkM9X6JczTtfL?#QeWx9(c(2Ol!Gvr0KrEF_51KnHY36cg zvP`4gy^5{)w7|SuPqIC0C5Fs2*H>{C9V)($9|%C!KUDD}bkKh-BdJuz3>rblCXFgy z!pnY)tN1a_so0Dy^n7&oI4_5Jw2;@mO(NwzX2!IGj&W2>NNCZW31gc_9Crz5kHz z-u9kwoN3Deb8R&mY47MQX!zQD+S)p)8Q$F&mIEBKczW8TahzdJvoziojdu0R2$S=> zgM9rRkzOt{tH?&XXc(sY1n27S>WXrw#g@tU(y;TVnXJ$u?-G5Ap|{)$g#heNr4oIN zMu7#qK#rPeyFjMilqCge(?aGD8}*JG)XiCP&()$;n{D|mW1I3uK*+)#o95eT~*n(F%G zXY&on%i>-)Y(8OfUB59jBuyi*fjcc?LlK_~>TZ}ho9i$#BfKBw6ub{()(P&O?+JQG z%DE|*N!Q$GPCheYz2Qh_TkC=LXgC%-&>ik1G5yS(xk+m4Blnx5VGow@>DJ6=A45i7 zb!>Ur=4Hxq8>J9yUYPLdmmpqaqXc1=r4Cq$?QE+#1+<`*QW@H?gUB|j{tE$WLfjCQ z+EtXqFTpbb?<9O$=_LFUP-L@=%}E3E0K4J%*-R2L|!K{E04^U$T*QXd1S6c&JdZGN9If9Ng`Ew zWPwByM5^;hjYRemS(rx_Nu-0w;yeVD5Q6HZ`!zJidzROrSiB+!Us(iFo6|E<&HHp=w*U%XEXrWl#Tdbk2$!WymKK5P4 z+DWXN#DlRbSYLwvlOA#Y<8z+P)%q1YBruM(di51-DB<0?M6b@Ry^(8co47(HS6aof zSMVthP6~1U<_-MlvFwR#sumCGiLk=w@cNU`^L3EK*aV&*_Wf(;*GFXl$P{&vL z3Y_Mc7tny0q2pDo#6_&aRjlUq-G~p!wZCBv{(-glC)VNLco6@^dg0+lE3iS#!A7wd zn?x-(i;aAg9miJj6vE;e%Fm)koJOlSi#G8Jc8GV_eh;5<=&6&@TSSz5>wphUq6-oB zc*S$rgq?_zsw>1f>_R6`)5YH=Xg9eHuOHoh>=q>d|FFo99zS9;r@jYn;xGhtfR7-= z+W&CwGW4P^M}2XMfl|WR{wkunOWy$L8$FM=beFu8y_7HLE_EqulwZVX`Hb$; zmhxQ6PwOseDbJ@orn{7-ynymS-6bsL8p_?eOION^C~wnUvQiFGUZcBIrM#4KPjeEC&w|wN3zMM>mib37;j^Q4>}7UBH=i6ZqBfd z8)ZKF&~dGBoHrX4A3>w5W=wr56z(LS&@9qHe!D9xasgDq0MaUDxXg^jOSM_CxL=zS zi!0i^SiG`St77Tbs#z-9LY8IPVwM4I3CnVA8B0}L9=ixtCP!XGEOW_Gqts8S1P}io DB2xCn literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/Prefixes.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/Prefixes.class new file mode 100644 index 0000000000000000000000000000000000000000..76bbc5dcc8aedb1a2fbf0b256477fa630d7ec674 GIT binary patch literal 7263 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/ServerColors.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/ServerColors.class new file mode 100644 index 0000000000000000000000000000000000000000..43ddc2aa18c618422fb546a6cb047685ef17b02f GIT binary patch literal 5045 zcmb7I34Bz=8UIhR$J@;#B#%P_0hcQz8q-+keV7kyYY?5cPWZ8{-pkNgb z6mRiDk=i02X|=W(HGtHkShZE#YVBd~T6F))z?Ra|$k0aFLX^x^Xcsap5dn zs^Bs==3tu~ak+vkWW8O%m9oA{!PT<9M!~hRzD~jQvc5sV4q4x*;3iq$tl$;}x60;D z1-Hrib_Kg+eTRbGvi`h+J7xU^C%)*!9vAMyUN_2dw;T81UfH@&7K2WFNx_#D+^^sP zH@<=gCHhrad@T?A@Q^HqWbv?6@rZ&)r7-NK>a7a)OYne#gR*{1!65}-SMa!kCloxX z;3);)P;gkm(+a++;28zaDtJ!8x19L46VD4cx?_=8JRvYWUE2{ITv(G3*aLtMMCS5F#3 zQ*@IaO~&Gz1?HC?yUQ|vEZ*zuO7-`LlfJMu)|Z(@Rd(Z)0^_rX*7b!<{T!ejt5!gS z`Pal#M?)KVMps6+fG1l~1|PBJs6aB*-QOGzKib(K-Mp*cp04n&VZiugc2V5pU2p>itpnU zCw`#fhxn0-09KQZ`cS;zQyWR?Dt?StRs2LwbsK17T-T#2eku`jT+O*D?&xO{P>dn% zdXI{qOF7Sw+fwm?2vz+;Lbk?Ogx$Y1+wst56~B^gQ&*z_{MzW0>(jr|3%+Jx=32jz z?ObD-*JV@nhkN^y9&4T7O3V?|Bazs7Dt;%W$sg~>NqwW?N&*$f4Wv{u97%@tgs+LC zGZy~6ia+2DNyHzWcvHn&_>+o1<1Z?@@mG4`N2#F~mMkjSSaHH1oxd&;?(X*_W1a+g zl0j~=Bq`fWpCE5e6RC9KZ54mRJ1YK;f2epD|6~-X_!s`I;y-v##eea>iVyIHKyk@} zl1PGKu2&vCW@S2GsQ3^^NL^iDESAtKD^+?7=j6*dGLSq*qELm9Xn{lnM$R#D@^E-? zj#17v%1;>Oe4|`olnae=kx?!-%8*fZ8D+Oo_82AUo_BPEr<~A6n7g%WgWjDyF5^}X z6BwK25}9D8f7bffG|+uQ0|R=L+p5S8UsHK?*)b_C?H5dUBgUtb{fWlgYFqvFG=DN? zC5*95S08mBnX|L@TWe%w-WJ_)J(Se5a^1Splcdj;3_m?y-E`~{r;sESUN%Yk1h1Zn z*><7*;sO2KlpgKYtIO8PXs&5r)oGg2ZL}NP8yZ@yj+(R9)W~ch2emiw_<2UNZB2Wd zpT@T}8aA;tw$}u$DQ4TAR%0_YKo z%#i9bUWx9WR6Nubj)arEl;@Tq1Pb|w_Xd7pnv{!7NHO@A- z$}XxLMRqNJ7^8O~ZwLidjzPRhq|ib%iM&c=jD?Jq$g@PoS;%;aJVN9&3prgPdx;cT z$OMV(ATrTHiY0Opkx3RZSt1c4XIO|$B5R3wEM$sARuY+NA=4zXkjQiknIVzsL`p1V zrbIL%r3Ru5p{&YLZhIWwVD2H52Zu0gKPrkG2T(Z-U)rukw5YwvZkliyvmK9PPB2%S z8wlF6M`-gbYtJ`_27-1DI)DYkSU8MDfrD6_gN|)BG5F#3+@;0k2f@2|FXogNA4F9S zp2L*#VsjJK+=RA-OBIkcALky#(p+rI5raowDBnj<$Td9Wet6lQfY~U<3QR&1&Y+`t z=qpp8V=6Xc8o!jLV=HFhDwNR9oQoPCb+wdFSJRf#6iC%mboeYH)Vgq-(9(Hj6ixEN>{h$8K_t|=$YBn|W@Du{) zP+E>LM^FX36TMFKIT02NoDbkJo7SvQ*u&6PAodSirG;sJL`|UZdA2tld6Z{R_IT5AM|mdY0&hC%n4QY}S#G=qlO-EG_B!M-#c51(6X_&V=_ciL zhPiZ(YPv@)U1JqZ)=sxrN4MxgFInwF9AR954Y-ujHDviFnsYY|x)(7#fB_8QTpZ%4 z!}N?7kmUDNieE#U_*t{rAY;5~aE@NjedG|A4r)5yIOM+%&4~@8vwkWW8=z7njfVP<+JV%cZTLc&|m5OKYUK(_+h|t)#f!BFm*UQ9R$`%B6jh zV%Va}rLCg4)?&(Bca=qyOY^gLiN%vkYo=IX(d5!vC{DIma%rs;M_VL0w6$5p3WXR`d z{qmrYa_g#%8F2`76y%%9JD4Qqj&} n>C!wb-P%-^dD?WAs#d~slvWye7^CFnEwV0ejZ(t!rR4trg}@!o literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler$1.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..928918dfc4d7f4d78a2233d87d3ac1f60cb807a0 GIT binary patch literal 3390 zcmbtXNpKWZ82(-o)00kPhNy@ejuK-QO(ziCf?EQT=md}u5L`PwFOz0E-D5AoaRYb7 zeb>0+R;4!%B4CxCEUPRJ-o02Jy?F6xso(3KkVz2{A*sCXe((Fge|i7^zn35WI`R#G zetgn|i*db~J$iaC0+mL0-owHmYHhhRr&f6sifgs+lc1#;`SmaUI*R zU7>HwV24`SsfOFta7PArs^?v5xLXbPWMHZ1gc@u$6f%(NIjM%C8m2OEH0;t)5@?L3 zoUpA|;QD+hZQm=n&ZIOw8SVCik~!l<@%`qM#c3IYW@HsPRLasEnzCG1dPNxyr;7um zTI+aDbe+Ip$0>4kZWCx2@(WU+CGU80V>~?}gRRzt%bC`^Z(Hs*D{$0zb+SRZAz+Mn zo(zUuD-0z+Z#*?S+WP2KeGq#bJCsd^YfVoStTs-mkX_J`_k*H25tm9%WJ)h`qKdiM zwJI_gQ1E)s-z|{M@3LkrGmaeBTxUg6MXH>D1kU|;0!E- z4pW0~pp1Lz-JtJBVH8;96dSfQBFI8LqAdCh#F){r+rWLOXt>|N19*_87sE5MKV5cZBnvrv zE+=z+xsL5pmU4Za8lE=r4E7m#7S9QED4xx(v_hE+r0W-RkIHo3Czcv0A6 z;Cbvd@Pe}BMLhn$Em(Eb0s}88rk54dD<{FUx`ydh#q^qDdi^Ar`fHfpP)u(srngRl zY0Xh4_Kj0&8*P08D{G1Wk8kZKdF@a`!Htsq1#&V><-n+n@@$r#$w4jNQ!OD2-5HMV;ELrb7+4j}wgxmY> zW`3~u?i9#S%P=dHq2oG+PWJK!syEChp?opmD*blBU^{A)}?c=lxv+u4K=x2FN639*5XlY;N55=p2BT-8h7%NV`Cq0 zY0pyXMWSBf%*(vMyuu5^tN4K97d-0^@bEc;S$vCk@EzX8Ppr|Ou^+$UBm9Ps@jE`j zANUl1<1?Y-^JE)yv}*+|TZPqXgGDp{ty!Z|MDTKoE4igt@oNbh|3r(1tFP?q?d@T9 qT*Jva4A4~Y>sn^wWqfPpoN`b7yidg+;2aF`UFFI;Dq4@5u;Cxo4YrQ} literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ChallengesHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..f14b862680127312bd09db7cee1a0922061b0515 GIT binary patch literal 5840 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 AhyVZp literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ColorsHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ColorsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..8f69f5b2b4cea614980cd6e0bbf41b80dfd94d75 GIT binary patch literal 3982 zcmbVPX?q*h6@ITRdt`Z>#R&x4F;NmQcD#rLO2H;Tyo8uqj)`5|G^*VmzJkIymus7BO`^BFLyordC$2s?|uBr zIRIDVgBW@-8N(F5+=yx17Q+i{1wxHAR=Ga6EAo>ha4;Vz^b zFb7ku4y$3l5f(D)_D;33qi~djg&6LJ8-oYG0a+YrL?iCeaBmE4SX9c6s?~i_d_&F0 z)HQ8r!~HRQ6W>zX2cmdT@jn#B!%;kh8(}|hv{JiNWq`FI(MUq4r@rb$%ysQi81QP!zuRznJZ=~jv z#zG+iEeEo;Z)W7Q>6whn9@}<&!#5q9VcGI&>46C)*Vl#I8M4gOyuei#=1)LfawuXO znIK7rjUz_FGVF9>(sxZe&G<%U4d0;P>d{?ElA=sZSjM7shq)y4m7n&ZLUcpc1o>0~ z1X{~@876Y{phf=t5UP>Ox>pT_r>ZHER1eqCNJ!<%_hVN;3Lc@~+u}LTE zrsQ5TKyexP`c$-ZBygpM6FQ#4_ci=L#}Dx%4NvR%F`l6)9Vc;0!?QYmqUI-b{1iXa z@pJq_!!LC_hhGU?60)BdD>39*p(ePUxFX3e!zr*i!`~iQ|@FyLo z)#eONQIr_7!SX$Di>R4S&^v%)Q-|?nEO^2ga|IqPI<<-A*yoIwm-o`ruwQs)2%XihXtwSDU_~NYI_?+Rz zXQZ^_p7i6s6DMJZ?9=g{B7~0jaZcd6lHIF%%nHb=bOM2{s=Qg>w0u)~i9+cJw1gub z6#ba#`O;RnyEJrH0Zmm2iWm}Dw>pdhJF6PE;@GO{5m+BGWH4w@6rGm-M9}b(hHa#k zz1usx!Ud3ThpZIU6$?bHfGr_ml}H5ExH7GR;0Aqx4d~hmy`&hXfvPHl4%r*h7BtKA zHdO(gZjBb(uE4f(mnvj|9%Dm&tKn#xLxXYd=IGdwmBy_QgXJIJ6>o8 z`?49s9tj!)-P%B&0z)WdYt(7hb;&YHB%UvZMW7a9IK@|$rC+W&X%GmeVJUqfr;5ic z-aVrS7@jZ;ikIYRWVI_Zl2W}LwVf(tjkK_I)={pnl;R9o5=AJU)mEg-u6TLgA&X z2tnoZ;9~ws6xd&0P~lEL(Dk|A*Pf~nU+H-h(#@Ej$8QRDkIAV$d-vWkF>)X|IypJI zf1C(p@kM~xGIrC40cqEL8ag^iS@?9g0u_kG>_P=dmGELdtSH zxl)?giXQ$JusQG_p_Vhh7dYb;sU7 zW0JEz&Y`J4qQkAGe5ykqq#%k4Zm{|6&gY3D*<&H-<1w zfDi~p3~|+u5rQQuj$touCSaPxz1W9QLS}<-aSOhLNPw{Ih<=Qn8pbpvHH;&+`+sQF YuwTQ(M>zHo%>PhHIRbB`do?)l2}WpqhyVZp literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/type/PrefixesHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/type/PrefixesHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..6db917190cb445a4ae9b0d0e0a3f27a6445746f6 GIT binary patch literal 5649 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 I8YLwD2OxA(iU0rr literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ServerColorsHandler.class b/Vituz/bin/secondlife/network/vituz/handlers/tags/type/ServerColorsHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..80a9880cf6c8e5c76a012c7eabfd9a9421a14aba GIT binary patch literal 3928 zcmbVPS#%TE8UC&GY6`T_v3!vSk7vxx$Y4sB z1RByMOBdQg7rGHbk}gmxK>H4lBxL!R=Sb2yy-cV;Awd?YyJ<<4FH{r~>| z-nswq&D#Jr;lB|iurGon_SfOF7>?ioJ}2Rz_#P6&;RrsDFVx})j*8hA#h}(<1SuJ# z5pWz6ROvd5L6dPjf^p~(Ou&#~MlgvJV#ktTN3aNvjEwkBiIbCJc1p&yjMHNJr3lX8 z%XO&1SH$pD8DA5;&&YUIke?OG&dKuczo-&P5T|34T26s-H)_7t{b26tB!(!}g8Dx*7!co&SOi%Jel3P>U>NR!KvUhpMon+^vo=Iy4 zL#(ne&rF87rZHelal0Vt+jWcYF51LjwF_IY{*PH|whY2lDlPIO`7pI=LqpG74 zb7hqU`vqlUudYsWtBlh5e$_!XDdEMVKm)I(#B2D2TM)oeZgyZjK515?++>l7yEf ze21ZFUxrMX;KQ1&5fHi!!*ocJmxwRmE@iS97X?4YPZazVKO=(`T*l8O{6fJm@hb(t z#uWvx;3|2e;8k2>kdoYqsdkLqQt%pHSMUaYBjL9SekYC>+XOG(QLLE`zh)>B3Vx64 z5^gB?18y?R^CbXU3jQu6 zH~N+(-OBfDQ}7RAQ@oN=&ts3)Q~OU5)w{UI5OG~}YnKW@EEN0;|5k7x|6x#kHU4?n zTQYQcBFi+MLU}#1JutLXl#p>W-O;$6@Igih4Z_211cRFGa6{D8^1xY{N~uVYuMdU| z6)h?FGOJZkznYzXf=s}W9=B-`S(-b0-7Yw!8fseDyE@(ytSPTYQWp@d(kG&lT@esg zj)bAX;%N~C%dJN$)y-x4Wj;)u6;--Tvm>C*EAldtblbA4j5-SWbzsbNxA-W-%2KEN z65f@WP>p`KoXMp|;_(><@@<@9RVil~y~NreSTmMIatA1HkK)RwmAEA0+E3RL6>F)I zA(g_Wsk$&K;CX(V3b1=%AH#xR(DH}GQ#YpC!i*szq$Kvq2>&=ze#oC@H~9;{k%+G1W@)6B%x#c&D&Hu_;C>t#n;vBosd+ zF8@^l|0$alc)#O7;^mR|P7eCSceDw>;si%Nax@ionlat(_Ft?W@3#7@D z?%xfRPK6@tYVZQRzASsW=n!v-u012id5WGqkI*GMX5P7V6=PIrw!YuBj-?v5P8C9+ zw#mmKZrjwkC}Jtyw0WR(8whbp_ZISbMYj_n4A6uLqN+~dEs1B|c!KS`d_V$Bn;sXH zB9aSS6rXyNa#Gk}*inMpay%uSxD3It#!q%)B|7L2f?j^~J5fbnddbkZkyeAKrX67J z`qo=uIaIB0ok4XquDg_*Xlx(~U@^VpmtYQ-;^VYh=<(na_#~}}8=LVINo3f9PC6sW zRcDD$0@%6MEJAlsGeqC;ZW^R5Au-;?67k7GzJb~+sP`6;O9)-}rgisd+I|=Bwa-AI zw|;#V4Hxmh)=(C6nrNt-!Ccy&=Wf@!+t=H2h;FHAsu8S3nj9LpgncRVUGn~>nx=3L z3$j?)_7)Z$yoJTlrYx3-&81m*O7>p~CfLmwMPKjYZJPGToJi_f^I*+qD;aDzCu z5t`1^lXyG25EdB8BZ+38LO0<^W@pfYUcyp6$>>8r+26=cUl5eY*dV6bZ2GVCV8Fp1kkUxvLjR^jRY17sRZ3WmBj+_!Fy1cx#f+-hwdLxXP!pw1p5xpE&-urw3CT!t9UPUyv|-qgvasEfY3(pcIdpch3*qy<4a5c literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/NametagProvider$DefaultNametagProvider.class b/Vituz/bin/secondlife/network/vituz/providers/NametagProvider$DefaultNametagProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..ac318fcf1ad80ae665833bab0c4bdc60e805d425 GIT binary patch literal 927 zcmb_a!EO^V5Pi;uWV58SETzx@C6#(eIj~ZNxCC)2iWIS`DvEkV&So|-+1i!Y8`ORk zoIo7-06q#an=Cz)Rsw`9*)!w!o@d7M{m0jD0G^@i<6eLU?)%sba08tt9yIY#pz%U! z|Ws$i9c|uN3 z4y~E1Fz@z^ z>=HIG+>_wQ6gHuOD!aOVsoJOSBR3a(-44OVZKBue`eg_&fFAe*xP(%ncrKpa#KR@_BEu_Z%Kufd3>E z-e=T4Ef4|k0V9D;#&&R%t@aYf=PG;LeB7=y28{GL=7(PBeL?*r+coBcUo5q^7X0oK eQ}G#%5O*rgb+&4}?k<=cxW#9{cV*5iX#E6-v;Z*x literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/NametagProvider.class b/Vituz/bin/secondlife/network/vituz/providers/NametagProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..52e03b248e5478d8a570b97b1dbcaecb87031096 GIT binary patch literal 1214 zcmbtTU2hUW6g>lU5xSJtB7U{D)vB-o7sU{f0GZI z*l2w42l%6mcgIB&pb5roGJALC-ZN*9v1FqaW9Me zSyULx&xOZ_zTV@uUzqpgK?JPCtQT2rJD{_1yMwFp%06ftLErJ@EONP`ekORGX3LghAJro^S)9 zPeV0uM^X>pyC(_5$c-5h<;YDgYXn|MYziGExE6mHysb=gp5FPN8#DE=OWG8hG7x*i z%OEO?98J|^55e| zk{~&Pf0J}5U8z!!tS2&%`YCmPhBl3Aiy?m)4pm3IknwMnCNLky9>}6jp5N8t(yR3SpI9P{q~XQkeM3)jf7cvY>C{mQeGFCuyL-Avi30O|;E7(Vqze=k`=fEmT zw3aC+-nnA%;;2j!O%|@=T7u)6Z@R_#jMOAd!NAy*LJ7Ez8}w$liM1KU=?`?6qMOGY zmSz^O<5p7qin7y`U39)6p^eYN&fbbd5=tw;Cs`r8W?3+JGz$;lp^RWmjLl?=j72)qc5%{i@$LOB-glxsOElUD3@c?i!*lW>{noMUH|&bNeV zY-*dyPL)EKe|jQo8g&%A>T$xllFaC1sZPRL+|}5E8|CU7U%p_)e>uYJH?&XBlDRQ~ SFz9{*QD69A@@m z*1~xkE&9Q90<_q`+3l=V0_}0P|hM{?> zq+Vdim!@kB1K0e9U>L4QC03%=h6vX9hDVaIieKkmjR(@4Q{jMqCPRjWN+{~SYIyRg zaFx(M`@yE$mOA>?-3t7+Y=|IqJsE1D%-0HU3C)|8R8VGce0AI7FGO(Dmx^JgRPlqR zyAf?}O6`iaP}<#!@7H=CldL>ZpS(iB88f5174c(R(HKih=W-Dh5k^;nYcQ~7oY+$C_gzk0{!=+Nj zK~)D*HOtwV+UdZqN!)xfM$x=ZrVibN9_^z^Pe3N0<}q*r;rYDLRUb}{tNIzeJd1wt z&N}W48$&S=Ex#?gq~a9yGWV7^`jckZ*i^nX!CUmuP+_Qgv3;ba=aPuBZjplNJ{sok zZQSRncY3J$Ea<&XNYMyqliICHCeNt|lNh7l2l=OeNuG9k9ccZKPA=_?_QA6+!Tz9+ z91hbu6blQOpl>Hpz!7{zCu(OLB`st88|md}zt}kTS@#S2tC z@Bw@jV!R0rX+Vv{i^nsbIdeJVA3wi+2XG&EeR#O)V-;&Yu3_EB_2F&9!wnBNJ=|g_ zJ&;P;hYa~zy~R*?qC0|Nu_={!mG;}hybIegSt?B(g>fr1(&-~(!G4el!)`MXkyf2p zz872x`%#-7A4r>i;)g~LWJj2U$1<@(x!ZoEjcDu8bebdE4nv^T>o`0T=B1X3VY}AU zrpw!DuO}@R1EDNG%-;Ff?U^(0xU!3x2Sa`4D2D3WR9V>Qb0L>wS|-J43zBZCvkJb&kCm{C%C8NIaL0hL!2z-8%>eVSqAx54Qu{!KQ~= zfI1o;wgPOU!SLum31T?!vhX-mUB1^o5E1oUonq)WpA4H*Z+~Zxq1+XANGZc=ZE`Tg zk3AX@PBVWxLl?=(a`Bei!126B+|kNMMue7zxi-0E6WQEWozcVzNd##`Uk?N}P@+G_ zFh?ISPm)NX^BifMBqLdDd7k}hNz%R|2r21THPC5paC(Jt4e40#zVKPZeD1qc5LcnhO!yT)W6H{sFRAmR#7bX zM5u)MsFP7RmL~fY?k9RIBax(GEK?(t-M!raCvdrAgxR}uMk%+pkmyS*@1e~S)XOfp4l!_slz z>MZGtXVOxr&0Nl%_k7HW=Z@;fI+behQkbER9QYn?;+6*&OCC<5;=#j;gAET2G#vyU zHqoN7EIJi`i(!362WfvOqAVs6Jk5piCR1v1V-FT>K^Lmkk)#+}jsKeA#tglG$&}PR z5N6VdVYM-@Z)K!8m@1p5a{m~oF}xRct+Z)S&pBycB-DdP(cd0x^9Px0(d^QHSEj!Z zDAa0pbO2eJqm9t#;S?B7)2>Z^k!&^CJOm3`hbRQ!Q2d-HR%tC$B3081oXd-=ID=*K zs3?bIlyMd-Q^1F0ZN*aX1% KQdXHPJ%0es_c=KL literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/listeners/TabListener.class b/Vituz/bin/secondlife/network/vituz/providers/listeners/TabListener.class new file mode 100644 index 0000000000000000000000000000000000000000..7ad806d62a6f24f7ee3425e546f2cd28d37b17b8 GIT binary patch literal 1553 zcmbVMZBG+H5Pr54PR^48zE%MRQCdI_6%i;QQKAuS@Qu{?aoa9s>9I%d_G<87`2~n3 z{s4cJarRnhOM?>b!_Cg#%=665K6}6a{P+c64$C%d+_iAeMgpTY#&F-P#%(;nLmLyw z*vMki!jy$+3y&C_HKjzb>hUlXAw$oyR8p@nbY-#yhUBVW77VGpRAM9AEs9{17d_e; z%=;zo6?hjG1dx2k*Wf6p~CqpfWIdmyG z-*9qNkFVZ)d|w3XzElj;nYg|pr7_#TiVn~0C zl$N`qAVW#Lyim&5TuWb3D|b6_VzM`!+7m%*y&oc}&rz=lYu5X}I-Ai9_9s6IO5(LN z^Y3q&+RP5GaR*n>N3*}^=*J%$gc%F2gISRC1Wzr@Ie3P73(p-aV9~;ogB%ta7A{Id zm78i^kE@FNuDBygG_-Wb5g!YJVJmZSHFX}|Kcq8qW=jPlU53jQq1RNXxhl~CjAgQC z7Zzt2aRiatwFnqi+Qhu)MHQ(?#>V8<+oTYdwnaH2g}ElcJ!h)QiuB(>}P#`Pi4`7;}D-d4?vZrl{fuAzO?o!Iqj;+ST*tvkArEiC44 z&YqLUD4Xy55ecKG&VW($(tnMPfPQjaWJ&7uPLb!5Wn{Z255d0EB7uH-_r#kH259Zn z12BlIx$Yy6#gd0&8pG0+U@;juNt-aQz&IiVY_8v!R`t!!v2iOXlFMjl01#fId{|nMA0#{*bl|%$##L=R4o|X6EOw?>_)MLo|Ffk6izE7;R0gq&a;c~ThktIWh654YKrQMmUSR`9Yups0V948Orek8b`u4cZ0zC*b-qR+ck6)af#vi z8ckLSO;h}Nnn%4;ZqvIh J_-;Jhz26w?Bg+5) literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/nametags/NametagUpdate.class b/Vituz/bin/secondlife/network/vituz/providers/nametags/NametagUpdate.class new file mode 100644 index 0000000000000000000000000000000000000000..76d70cca061526e37392fd6a8ac8b7397b5b1ad0 GIT binary patch literal 920 zcmbVKO>fgM7=GNQ%bKP8C}p&R!Qj*tgfB=46>&k@g=m|$vAdgknb$0y9JgrvDv&@3 z4*URq6ykLnQ4O^mCQJ5f=Y2l>#J_(3_zBQ z()4#v8N9c8C>howmC60_D_VlF_Zjju>A4$M0gCyGfWxdos(Y)!m(! zQiHn69E+fWV?8#p+*8G!Z&-cqLJkq&k&m4akI@R@V>v_}%M7n>9Rb7o?DriEE@W&O zs$F-7_M(5q;FED@k9^eVnE(|UWT&Xe5v?BR6<~$tkaq8i4q&bK4XpR{J1PucQT<#1 z8Z@t>N^?lC2Gwo=n*<^VjdfaGC2eGZ7C(9 zX2|1MklAdKe0TZ;#P%5_%`G|WVSAqAcdnkO$`5rc zRq#@nzV10FxhSLJB8R+-DryeuE-v5!!{Zs+Jk=G8TxQst0r~F%VJJ?QnPDYyO_hw{ z$$w^}T#*Q5Y((^Dx)`?S8cMrjxj>k=LI!=4EFDe4I*qy)XdQ&YBXyt^Es7jSBS#|k zTFTH;Wy-BqrGEz&?|*0GIA;;w+&+x;qZQc@)WF zwik3;@C%BzbZ-3w3pF}lk@`gTX^v{bu{MsIa9GZZSV?$YTq13uxJSH~C%oGfZFvjT r+7G1bbWV_&CO-YR!h|@DD@poQTutOPTql{v4cx>MY4)$PB!R`>AZ=DE literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/nametags/VituzNametagHandler.class b/Vituz/bin/secondlife/network/vituz/providers/nametags/VituzNametagHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..e7795b85e60821773aedebc78abf9d4e1291fed6 GIT binary patch literal 8065 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/packets/PlayerInfoPacketMod.class b/Vituz/bin/secondlife/network/vituz/providers/packets/PlayerInfoPacketMod.class new file mode 100644 index 0000000000000000000000000000000000000000..6b4a41c10cc37db586f29cf8395fecaf09f7ee9a GIT binary patch literal 2175 zcmcgt?M@Rx6g@*rS89h_nv#to&Ea#!)E|vxD&^I3|Sbqa50WHjF`tI z3p|b(E_Wb;(KxQ)s)aEN*BD}xwrlGthDa*?lp&f`CCSj0w_W+LRw+pDi6}T^>CLO6 zaGna!Hv6VAs#k2EVLI>2qH;@)y)3ya^-JZg@w%;RuX)u|b-N@zpI1e3O=_PnI^vb| za_+KP3@i^+DZ|j|OSkmXVBtE$p*go!X`P-aYFoJsiJa?7FY5^3m%fE@vY3PSL`7DD z+`pyr$}96iZEelgT)NuUubNRadCHDgh+EMU%bNSrt4oj9N0-Kz9$n>)_$K5+O}8Qs zZkI?VUsM%dQLDl&b5YYPj$Pm;iA7H>+m6iS!ec#Co>O`(wYJ@|A4J$>uuGD;?26E{ z!k1Z9sVbNFWlZB@)u65neLJ(KQ=(bL`{CK`sS*qpwb_tn7}%{WB(W+{W?(snedV8B zn+Q)Rq+EpP5)8v=IK(!EGi3`z$Z$Q}d540Ka^sIx%`3{g0sUhw)igXv-IrEHT_lh| zC&Sp^=#L>C>NXchyb;;NnMmL!D6`QmV-V=QITD+4Z;nRRjKZe(ByJ@zh1(XU6PUp) z!_>dcHbb}J&mA)-3x!o#)C{>$K0DNU+cC6|Ww;Rvx3hE@UZ?)5?c1i3c@d7awN1gu zc8OByiE1f^;Z16{@%hiUN=I4hc|kWjjn_yjy$6ES_iAt>Wfk4m&0B|u12js}av%+l zgtqo~2b#v#cZ4DJN8Js2F%%l-7YX4s%s1BjwSm4q=%nWX+HqPLt?fe_VDEyTyXYAU zjB#|+d!lgwJ?N!f2M!`h7UTRD?XYM~e?;5!;m9XMHW0lTOU5qtC!@*sbwd4u*gCBD z*q5ZWqZObRQF81gm@b0rL5jdlu=xfc`f!|f1dS8u4-!b@Bu-KG#x_8FBEj1koDGoD m7{obB=K%Sg#|0wLMwo_e8b@gDrME-$e|S2Hqqu=%)5#wqE|m5F literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/packets/ScoreboardTeamPacketMod.class b/Vituz/bin/secondlife/network/vituz/providers/packets/ScoreboardTeamPacketMod.class new file mode 100644 index 0000000000000000000000000000000000000000..9a3e79bb108e37ea9edb19c091f2bf29b4635268 GIT binary patch literal 3266 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 Z7%vQmK10lzIq?hGB&NKunQbe2=RafS7lHr) literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/scoreboard/TitleGetter.class b/Vituz/bin/secondlife/network/vituz/providers/scoreboard/TitleGetter.class new file mode 100644 index 0000000000000000000000000000000000000000..432923c4a8908a4d68a72aa470ce10c49c98c0d2 GIT binary patch literal 792 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/scoreboard/VituzScoreboardHandler.class b/Vituz/bin/secondlife/network/vituz/providers/scoreboard/VituzScoreboardHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..038cb6fa62c9b148f73a6e1c9d4e26e5bf326af9 GIT binary patch literal 2463 zcmb_e?^E1V6g_WuA&^aBfg%Vkv{VpK8?`FcrBq9y&@L2Rq*8xovtdbDlAUaVga3*D zg_fDN$c*DBKln#Eo|jEGStv@U?uVE6?z_3?ymRk;*}wk&?RNklU`xdyW;!u|>k2+r zk;aT1K2ed!tb!XV6ls~m%`85}XVUSO9OkpQjRggZD!OndizO_};jSF+Nn1hARurtN z=*NtL`wG?s&Y7;WWmf{v@NL%-xKpTGG?lCNmZdwE|D)^e=zF#w{G``Bch4?cUR|%7 zu4k28!z=5>=5#(8C@;_+I@ATa3y+LFLl1nrs;?L|Zgm#zievbJX9<*AcV`>Rs^L`h zqVL&GCI6C)HYC}YR(?(b+K%nphHsSx#6xnMm4-Qi^yJirKxW=8lS+5NcC6K4w`6(i zMyX0mZ^1Q<>W1Ojavd2n{e_vm#8vFE?Y};$$Twv&QKPI;58|Du6j#%e{TAATvVHn7>cHKQ9<|>xol0Jdu z$*Gq-UmUq56c3oIp9p_<@_&jh1?iYIt5H7Hq8oUowP?%i4Ie9oNb;+)95r0Vn1)eY z63CySB!i69R?t>8Ni-{S`j21*)Clr>mV4;}1~iMU^R z6_|nNu?Tf$HJUCN^=%fG!0lIJ5~YLn5#og{f4}s|GJS!zx^H-V_9QytR@e}YYF(=a z728=c9HU}+0#{hA3C~)%%brO%u?|O0r5kD_kYyh%JA`&jme1I~wLtg=V~+j@tU#A% zRb+O(g+0p1i{pB0e@mVh~Wsebv|{@AKpxD;iy*yb$87hRI9U z0t!qrv2R2D{7FkPVB|!#SRB4#JN0|kzCiyA0!{I%O_LW(>P5RJad;;+t|=Dj0KbFa zmrs=~z?mw$0K6VKPho^>HZSKLT(OtAbA>CNPr+x~^izmmIZ5FSj_skbALE>B4F^o% zO|CjI*?f6{aPoIKbAZ$l(wk3_d4jfQXg`9&MaMIA9zsn+1{Pu9USv2Q@XQ! zV8|&!M6Az5E8IBY z^d{U~1eZ%hKc8xxqanCT4=_YGImbbBQP57ji}xahWKQKTLxq0fv!QDvVL76{k86=< zoZACrkLNa*fN6_Lri1^do)^ZokPy%(`0^3@naBxf>nAVVMoNYVz%Wila|Kq&#D1})Ju2iT3oG4p$*XVw%gU}dRy;W@4D;#ez(@v=Y7wa3nbLC>VNX% z_nh;6=lkCGdEf87e3LJ{^WrN2wiv+xI`D%5^x~;%zI{^QQvsaE(-!v2;L`#85T2H| zX9O+?{II}hWap0r@S}J(fFHw;%kU=zE(Y-&E?Kx7z*0P4jTbO0(^o89wQwzf6?n>z z7v(u8@RA=d%kz~0>hY={uley=8Gp{g>jB(>rvm80=jH7uT%J z_&pgsW#RYz_yY@n7{G2B{ZRmWW;!|IWOGsKhz=C=s4=!PF`1unMNo05Oie7A%Tx2(8>SXeEncZS-rqa0&w$Zy zplV-V|GoR@6+aaoj88a}EU$;@0lro|z%{;PPRuq=aQV(;I+^d{T=+!GF+O@SBRs2` zSTgM#oSHc0WXUk&^9MC1x66u5b}V{o>dcvBKFS10=4YaZQ}G!m+bIjHCiUIGs++Gf z5FB&zt_j_)Y5gq=5wGSlIXqcZN!2YpK>u_+l^luZX>1jzPPE8L=8`E=@fLAn(U_BV zvRu?BVaDJOFDO5d$fPpap7D5=9<)wPB~uJn11slo+2ejG=+$~x*bGpu$e zvW}8E7{0mTEni8nRMDYKPgU6R1Y12`q{xQ!v4uo1(4c03zj#-G@@&l?<* znWGr6F(_~x_uF_Fk68Fq8-IpBx9}G>{t|y>;~{*VjY)jK!e86?8$4oQQ&}P;vhmTp zmlV@<^2sB27Lub!KDilU<8SeI7XIEwR+K%2Z!oZ?l(7A&lrt7jb!W$>CK%3rXA{n3 zKAA}~gG-CtwDAJcfPJ>PYge-t!RD}yf51Nq{1XGU#l}D55plr3Fd=4SnOh&5!%XD( zslJ^6ubE;MtjnIyP;-bIV;@@7}gug#0V(vg*~AcO;%3$xPVzH~hPe zx9}e}-o}60IE=5d@Q#glNyRXjMV?;|;Gktx*oGu@mQlsyGc2*= zt8K$?RNHvMsI>7Be20zi5$MBSs*ppSGy*pIvDZLriTHops|#k96-@(RZ!O8#7tf8e zHZ!D4bKTi&d`6npb^F~EC@fTw1LN7ugKj6OOr$bthU)e8$V;1o9Cf!!m%5(IWT|0! zxI9a|4N`YD+|;WgCZBY2(H<#sypQCw@pLYwMQVL`UWw~mutKgVi}CAEJ;ks zeA~zHkR)tlZQ(T_I>9EYNfFIC*=Z*mEo4QXwhXUh7-)Ili&+5Ulao$*M3lTA`lX`X z7+#>ils^0O88@p8)GZ{LZf*?s%=b@8LKWN3Sbkh96zi0gcFyMer6KvKnG;nB_8946 zGVWoiDut07L4HPQKAueT#IK`JIBAwWGd@Do7nOEuKn4pN_dC+Zc@hS$JKchWGLIGG zjc4%_aC|QTZCGF2KG7YZiXKzkq7_SbGV9O9+mKmJPoY(C<2YDewa9#&cL} zb~QzwNA)Y`u~ME*S9!tYi``@%ddxH~y!$1Yy^6&`+=LKsr*DDVNu-&+SdH~qL%*(N zqg+SNtmm2yaQJ=(t?XVK)wl>($G9g!&zWLC(afA@rp%4d;0o>qe`8g>i&Zc!jIvc2 ze7p;PVOYVTg{or<&5pedzws7sqr=9L^v>XZ>J+WDVoSrutEf>E8_Ywc<5;XKqCA!k zEWsva-R$lva;?Q_@@L6MEv-wDt7w_zqffn9 ziHap`afaMRJdz9*MjWss($L7D2|Wqlb2sH%seCI-d@JjG>N1z`awXQuaM(q{_t0^> zu^rt?y35s4B)y|ZdPkA;4v#e1$Tf$|)}c=6S1SD~n8A?8zu@FS>XZy%Y&W)HF|tB^d=@ib0Ux`m{n;D%3{d_t^11(i#)sEvkIxtB z9r4dF6Dsg2v^G77b#tg6n!}2rD_B{(Y8LWk7LBz{e4WK@S8)5Q=CjPY;CWQ~p1pBH zvu+5^+fX!Q4TA_Q;TB7HkOi%cH95-SwT&*@iBZlZ%ZwW?I(xY2?BU{x598}u)?8;- z!PjQ^*U>KC=soN9(l(RY{5*XIbV%G;p@p`JD?o|T9o$mnFKY4^HTgYF0r@rJ$$Zn3 zdAxS@e$PuWb5~=?e;(^wm*B!I)GKbwhZ=>v?dtLTFZ5{6fY*VfKf&utL-Xgx z=%f$fTZ^1ombriM651kKUap~Cyv!IbPDCs48aiS;h)u2Zyf;6Gj-kj^Y`%g!uVIUc z_%*_F;Qx#Cz!C;%7d3RT$H~(z!Vz8> zfKQU{dD4BFt3J)YSUmv6Rj+`MAJ%|m!{fz9TPMSA4|oBjB{LZLF{+Qon7!*kfls=MnlwiVwx zLpxta*N|Cz&(R^DK&3#HfFX;-8pV*}62)4@rHacG z>lBwO)+?@1T&cK9u|cs>u}SeZ#oHB|6;~^+QM^NOt>QYx^@0t^WAG_4H6^r)t@y*rj-n z;%>!m#XX8WioJ?`ihC9BRoti8uXvy0e#MyL0mXxghlrQqo5ODASNCPK&0!DUdM+be zbs2%svdaicyE61@vvk++7gNZ17)#7y)S9QU)XbyKJj+YH!QLbFF9j1xyMO2vT2g6PB>B+0AS=DE2WX%Xq&J)A&Hahbp>}lEaLOk1(s^W89Z#a|%9DkX8|uSEHC$pzj&+J;lobG~OerBtTq zmi4lGAVo&a-?y!T{=g`kYo5Dj*=A~%7Q1IG$MR1J9OYKCG1srng}f zY)XbQZqcywhG)rrLm2V*t*SsWQ#FgOvuj&>rtX;jx2|`nA6b6wd%fbhN7ky`9E?eNg@b<^=J|5#tMjbqbGB_1)nO0X6f`ENaeXwEl^ zhlHpZY{~Rjy|iZa zf;A1FVO`+*#e9(_avCTH%yTBu}i42blK&H3+eT_#f_ch4qwUG zC9OwWXa=B#nFh0N=T#jF5hytYu!d5VClQ+_6nhV3>~Q%{`-L%jz^O3M4uZx3hQIQEL92Z42Cp z2d}c^x+UAxX`$>ooNSv^(X(`6mDzJ;6AJT+z;p)~+wi#v*dE9H&d<0`DQL4R?C|lG zl|&wIvHK76lOmwXm&o}w?m~DSU0n0Qa(sglowMNFHE{~@I8eF9u{#h(ah+?eu7Ec& z%3Uu_zfFm}yg-BU^5Dc7LQfF>5lZAIM8ZE)7Dmg?P@A1W#PAN!$N29;sQ*4cJ@Uae zO#XlfuL5_UATse3T_OB|?(F2Bh@GQ*`zE7QvXdw1IYaLW)Gets`4oL&Y)$_1%@3@{zg*4tsubLjR04m za77yv=g_v#5#2sT{|N?Kt5Xb~;fjnV)P_N<4TI5!=N`h}EJTdj^4E8cA)0*YS43nv R_#NX|FUJ6P?{XJH@?RpZBUJzZ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/tab/VituzTab.class b/Vituz/bin/secondlife/network/vituz/providers/tab/VituzTab.class new file mode 100644 index 0000000000000000000000000000000000000000..b303219b6d9a249385814f63b7defe20177e59eb GIT binary patch literal 9015 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 E0m=NGhyVZp literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/tab/VituzTabHandler.class b/Vituz/bin/secondlife/network/vituz/providers/tab/VituzTabHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..e1aaa80be8556bf46dd4b88dc2493285b7c915c7 GIT binary patch literal 4278 zcmbVPX;&N98GZ%{4~)iO*znIj4W3|05rA`rOeV4TqtD2+qu1-ut}!``-D_+pql-z##si zAP&6|y+|s2q-3NOgrSRvp&)~-jClnOV#UPW2o{hN)cFVsuw)b!G~tB^Y?Q>q5s$K1 zTNI;vGG1)Jl7g4;kp_HJ!BKon#>X4+34F2vpHgrFpH}c0d^Up5;qzkqWdZ&L1&`v3 zV)P|3`m&6#h{;!Fd`--C8DCe>Ekx?YH)MQM#`dF%qM0^q2?L3ek+KTu zoS8ASg5lh=>;-MnbjmMjMUSYYCAJ+JkFw{*w>GF$sMwnSJ z3le$~DJ!q#t-C@hz3j~A%%m`>u#ah!G@q#`(t%N7(aRD-UEQ-3eauSJ3e5?#U`&Bf|;XB=&EYc#X%9FZc~nuHWEYdBW}aw?*yoU#ajT$$q5FIL{s zoe98fXF-thZ3!*J+MdA@F4DU1Ch=QJJF$kk-UXBhp@z{^&I@~G#wyz><0;pHN4C<+ z3()hTj;I*HsER&ZP%(oE34?o(-;WTZmK>vC z*e*)Ko5=WqiXY-fGJdS$C-|v~AzYI2GZjC_FC=Jtz;%4}LnwDu#xGU;3cptI8~j$q zE4Z)XcS7gi%JslLI1_+bB~3-QMWGyQQro$Tuy7#dDy zE)2=|gNi@mPmH&uUf^Hpg|eO&?EfrbB!IoyW(%09*FDB%d@t{K&9))EfZTue{0 zi5AN=FomhndiR2zD}F$ah}PnL#nH_|X~I}yF%AIg=B+10xfowTyF2-?V^(@02bHcz z`_<&Wb?e$y2};Jc@)fn1(0*V~S5I2^P9=`eO&uOtZOzAg>lmwTg&D7S;_C4t)oPf! z{`~Zf>(9+G?kY#Bn?BguS}<&HK=$t1F?p>>u_8OhE`3lqEwJtHrGpLzNb-*7=w03k za^BT|FYkUPVXP~tmHSHW$eln@{S*vMkR@kI6TBtl#PI>IZcTSw^jCc<-Ts9(i_b;z4&;G}UK$_64K2yh7k{1~MN zH3{P^zmv`(iVi+I2|b3Zq!DsGMH(Sj>oU~X1`bNtMAICFY~H}35N_8*Rj4iaadR9o zpSZ1fk{CkVr>mGcDFtR{6>|eEb!^?oeGAb#ypE<-92OixuDngInsKzy;vKYh%_yB7 zmvNU?>L9yoRd$y>c87fEN9uNpK7eLAtp<9?164#9^33rvjTI&nZ4*c5qQ};8JleX3 zhbA_0Vs04^N88qLGSRb&QYX$9_=;kQ40(BidD>z$Arl{+J Vhxu%yyH3&^rzpqsgs8)Z{|6GUmxOuq*c`5kPR%o?^*Q*t4OOQ%|N@}3gP_+0`mt-3*gqzIG4Hm!q zBm4#Zs_hIdI^+1+zu-S{9P!zkgd`n0!$@YbchA|gd!BR7b9Vpy_t)P6Okq2W8&M2k zI*NWIBOGR8_!zS>+{7m_%;AQmAtmZRuF z%EU?(eYk64)x=m+JYscY^&{YN!j=nek?c_ zZUBLSbv+S&x`i+BrHKa?Ht-b_VBu?gW8qso6u9xf z8^pwS79=(;WN|^DH)zYCU5=??A%_bll!ZsgTiAjlaIs-`5}O3BH2RyZo2_`Ba(#RL zc)BFZTP%qVlWwn{0{@AfB=A}TNi}n9+J^5sUD;-drgCL`kGD}$w|=Co`~|6Yi)=?D zv7uF+js1kk%VJ0EXOvHtwXlaOP0WUIU=wzZ`=-CeybgtX%q>}7QIB~dub&P2bpxTV zZXe|T?&h}2Y7aM0k(}ec59n0m(vswzso20VSt=Fwt2d&+Y~lP0lp~$QO$jR-=x%r zw_tEi!f?Du%`A0-Uu(2SJV)DT=m4Q#0?W5K#u4J!jSfCYG4x`Pl2x^*hf9%ujrZLVYX<-xX2gG=d z+Bqb+^9rBeVWcn;#4&|-+8B6;>mlyx;rcMWEe5&-XK^HHI~v5BriG4ojDMYh>e@JG z6VwdD#6RdXF?mGKArm&ICfIk&) lTDd+%m;uy_b(uT$FZLVy9z4gnXE1cFS~m)OL|q%M{|D&cMk)XR literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/threads/ScoreboardThread.class b/Vituz/bin/secondlife/network/vituz/providers/threads/ScoreboardThread.class new file mode 100644 index 0000000000000000000000000000000000000000..c1c16a8d33bf3f05a527be8e99d52b7c6e789fa5 GIT binary patch literal 1512 zcmbtUT~`}b6x}xoOc(}AX+T;@8>C7;N=M^orPNZOLJc2nVs!QGCb`0tVJ2(l23z0# z5&Z=`>jP3<%jH_W`4jvTzISzrdnS~itE@hltlZ2wbM85NpR@1%oRa6``DS%+fFDj zUkO#y_gb#=jj}zZzx9J1d(Y9G@9cKq?>Q|Mgtp!elx&4|wdn_{;me>^i#>BJ9dtYa z!75{wM{-ZvuJpF-<;P9c){gHnqTlyiA`-Y%@q;b9(b?H?w5>et=qL83E1#%bvn^dRmAaLOo z?XXbAxP=Mhg zbCIM5LZz3a+Vwf(RQ_S)I)ADIcj8&H%$Cv{@szvsq^>6Ng>K5Y(xUIWs(CDkObe8@Xgp#qMo*pDyI2Sdo2#V5jLTsd z$x*uDlGM~mHh;EK3#__yX5QYB2~UoS9T)3KZbkC6DK>qi({4$vdT(A+naw}f=4f<$ z4r+mHQtQLLLN#ZX4nb0Vp{rCo8ri)<9aFq_GVwK%07s2+u5Zx3g~$f1;;8ruiDL2q z$scGZFu`>gNv?zFhsAXW7o*5-JTBo)S^|?Nx&A_mUtr}Bsb}aDsFa?eU*IXG`CthA zhVGjzISo=qR{)nOPGZ=ObF|vR3d!=-M(fy-eh++~mD6)1L^SI4> zFB#)169s5ZlGQYM&CpvUjuJW9L|NvWd0gR+EYI_0Eb}?SUL?K}e_8sH@$M_gvC2a1 rn~IsO95Z{1@mUynfwY0?7swj8%A4Ws=SV$AV$Hxi44+|80{MRcq*{T2 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/providers/threads/TabThread.class b/Vituz/bin/secondlife/network/vituz/providers/threads/TabThread.class new file mode 100644 index 0000000000000000000000000000000000000000..efd55ad03fb81dc3887e3e034a9d3631e02bd713 GIT binary patch literal 1459 zcmbVMT~k|C6kR6?oDeRwg%q)p8l*}-O0UL>R!S`eD%9{{q0#BvNpgf+F85~cJ;By@ ze?)%)&-#E=XPnOX=1=fX_}=M=>)ud^Gi97HjQEi zS(GvuMmdA4nCizh*!}nrA4Q@f@o|QZpJXtNPbEIfpdUB-X!*Q{5u#5e3NRyaGlL7b zAu%g)OQ83r<2itczU(HTi3y+s=KrdRsDu?YbtOe{n(f?+fFDj zT@7`^_nNNrowhw~zW0M2d(ScLAM94(?>S8!gtplZv}%Snk8Z}x8RiVyo`7KZi`7SJ zPuZ^Ww(P~n4c#)1@6n^z_gq2|xK#CnExX>{*>Q}mJ>!@s_PVQ{=zw1NuG7n&(LvB| z8Qts-G_YY*V`oLRV(1cIuwX0`%OQ~2@Y_K{-*qCQgC_v5MUcq67BR_B<++jXK(}xa zw=K-!j>No$1uRP3weTgD7}&xx?pgQ>Re{m7KufGxSjC#ex`nTCUtst(1+cJz5eu7m zV4;R@1TLRCy^g2A^*8B+!1>d-9fqVGo7%>4?PXR}89!i~3SE`nFoEN3%|v6<7izPh z^sdi#rV0-u(}gbTcjC4&&6YN6aYH+;q1A*;53kc7e2W0%znu zhhM?uK*((suIk4o9_xq1Pa*l2 z*++VH>HyaM(O*Af;KwWmokN`8Kl-CuKETla(QiaChDnr|yMkHV<`b5TaaD){7~*ag z6J#?0zUHvVb%eb{d}aP})RWvB#=FQf%Uo<5kC`nUGkcHz hIY_)jT4LfQauQc~^WT4g)C(k5BtD?~B%Kl{{0m2lYdin| literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/Server.class b/Vituz/bin/secondlife/network/vituz/status/Server.class new file mode 100644 index 0000000000000000000000000000000000000000..847f1ff83f4278d5f8799c714c03168b8f78a5fe GIT binary patch literal 1713 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 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler$1.class b/Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..fc57e4a0c357058e3113bc48b4012fb97d7f35f3 GIT binary patch literal 819 zcmbtSOHUL*5dM01+}Rxm8S%kG6ok>h#R<`Pkr)*rt}e@A2p%}~_Oxs-V>jvPSrY${ zXEia#7=D01%2+dy5D&(vNmtjS>+AX|Ro{PnJpu3lcLQ9*^$uE??vOQ8xwAgzeBAJH zlVLqhkChX{ZGIFNQW%}(>Wz%GbjQXX#$)BmcX8pkD~os}GgZVdtNW>N%4mkhewU%W zE^?)nd(6;WS>0psHcTcNCVNWDe))DF?JghW6q)K7!Sg+CRpp-rCsN17ArYv3;>Hl9 zrnEwCsR}gzoI9SDgF;w!RF!?fiKVpnMtsbv%BB{%DU?3gmTqV=AGdrggjmGw5N&iq zEMYlBj5`c-6(q^IK1li|EyZw4$voS%)>wvT=lv&V{U>$*$!Y(|@U(7`{Dx4x#t?S3 zmUbiOMIj4@=)B<0U?hcOc=Eqx7}oyuMLntHmr1q8JTEIs4_8+Adw>1GBbsWjo9;5) z|0l3-Y^F5N>lNuni?onFEhvj-su@)l=>Qi=hvfCqBnz1R0(SB(_=LvC>NG#Y^LF0D zd-Z{yJGhEzT%gnmN^RAE2$#rikW7;JXuS3jfl@Bl;VE1p?GX@|CkY7DB8{m16M+%n AsQ>@~ literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler.class b/Vituz/bin/secondlife/network/vituz/status/handlers/DataSubscriptionHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..bce77ca9d807a1052348876148279bd3a6ca8e64 GIT binary patch literal 2722 zcmbVOTXPge6#hEd>`XS3kSy1Qgn+KH0m6ugmk?uaToN}4vLQ&o%Vf8+nPhfmnVC%p ziZ{Gp@Q&j3kq3RzhXuv5e6g(JANb^}RZ`_2pv2QX8#a`STUt}q-QVeRPM=$!o-2QS z|095V@MQ#dVn{`I1jBeZf@UNm7{RED9s$P0aIhW;JR-=4RHOuDJc7fRXuuIXDu$y9 zCROZ?U?q+zI4w4yUtr3sA^V}6w zhSq=MCckVWC%u?8<_+C4?5v*hUDM9e$t69)G=}X}eM!kv1vkkuQrcGW=)D%taoZ=J z(5$pDY@~(947;ixG0QWirw@yHE4Gme4f9yga1x88Qo|`crQvCu*6<9T)$kmi*YE<)FepLH ziT_2sq~K)@ui#ZWU&CvH`*pm*u%S}kO5xD(Cf;J$TCHHpK^7LCCHHfVpV9EPST{Mg zMfKU4w~R$9Dh==8jD~md9u;oRIBDhzx$@rog50n$WBS}OJ)e`34}_^7;vCWG8u*=s zJjIr4_y`|sIFC>0GWdB?`zb!t@HxI<=&fdNwE|~oE>~Vq!wfyuv@WZI3YUg1UNr^P z%!==1*jY`n3kND4Si&kNJqTP%ZEK7FGNvb$$OSv^MY$SVb z9Us!t9ZxNoetL#(alC9rywo}4vUA3R&KZ}%k1uNl3^m7w$UDc)n6?p^LAdFL8GWv6 zEK*mxg%xs}jEGe-u_UX~Whv!t%~Ei0$|uPyGlnA5A=@jShmp~PUv1UBOi`f*^`LVpo8G*dICaXTTMW=3<}){9`@$n8!V!;)B!9kkX0 z24cO75Zxr)O(O}jKT(T%qFvnoVHcn+VRiId)Nd~$vg0d~ z`9bOu`hb?sXoD2difHT##X{eqiBX3zCjL30oy>D`KOB?GkP(VzY#|NqBn^ z@e9|dMT}}8Vzdt}G&a)LM1gHaFQUlMkI)=eVF9b@Nn49ESckLNK;69+U!x6|u@P6$ zj$g3}zf)TNpu~t69|HYK;WT#9PhOa$PhdChg+e-JaUbrd-3+~i51y)a4c&Nzqlajs1-%Cp^j$+tj*SZXuhVwDf&n7Xt{nRn49dk` eg?z(x97kw52dS&UemNdM2h9;WI6*U-)xQCRa^A%N literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler$1.class b/Vituz/bin/secondlife/network/vituz/status/handlers/ServerSubscriptionHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..20bca6a9ed423a9f1fa1951c1b916bbaaabf57fc GIT binary patch literal 827 zcmbtSTWi!n6#iy6Cc80pW4-jE)~Zq37ei5eu?V%@;_7xQq}GQ%%}&PdY~xIsBwO$g z`K*G7NPmDoN<2vm#Rm};=FGXw`R06_bH4xhdJNzp?)kWat8KWLX_GZuxpN-oJzVo} zgJCsFj#ME=Tl_G}r7$|p)EgOTSsWRA5KUB3zKimL7iAueWvcS%d3CReLK)4_*y}O0 zRz;??DxNSjmzH-KoOP2*hE88;IVj%_rQPAfj3U#0BY3vUt*ZRf;8ap@aX|tU9a;KjXwx+WTWZ;Z&!qMP_oP_qSv*GO33J4>toW;#Pnb z+5v9kPJjq^8RjcUoN>J$4@^>u(Wa7F+O^hLhK;ih#HSsI>kh;x9f(IKb@TYQl%f@e zpr^I8>lx2;nKOiECAWuTDGG+C|6hn<kl3?xUXJr ztnG9e9{dyBGd5M4XZ5P|!bMt4j~11Mv(=<3i?omPqyzE>Xp#lYeE~cE=6^!tV|ALJ z;W*px;k@`j&uv`B49-#N6s5W~po0r!H%K}p9vZJbgrJm*b$A+=NIL`su9Nr#a!Dg> F{RDQV2DK96#q?PXC1SF#D!9GgwPsr0%1$jiv&_g0wlpsC=Q{49!%_sGhw~!?vW6B z(2L&psaEROwo*T}9}FrI>bFW&`GYFas&96kIt5d!)k-t-X5KyT{bqmt^QY?o9>f=M z?8I;k`{NkFkvNXxSRA7mi(xYFN;4 zo!GPIpf;M278xU|5%tmYDEMv%;C;vnK5%GIpMu)7+7Y zu5L!Wc}Y4(GOozmR>72W!mxz5WIN}LMd|q$4cFtI?;7)*PKDzdIpHh{C+E+)c}JE# zX5G&u5B6PG)&Geh`cutcx&-e;M)RUxBe(s2RHIxgZl9na$h9WUY%Lr57zWub|^~wO(smCY4=p+2qSqD>~j#PQHn^ zs2)rFf-L!^+S%J`d(G0k^n@v0vZv!672>;iPs95(2YF?zOkeCV}F%?2$ zD!7HzDo9{xIy*+u*-k-PJamKTR&rx#c_IM1L;ow@S_4y{8|tYb;BVpOvakvaz4aJw zyM}7Zlfsy1uiV#;TFkdR1HLCsPYTz_x2*H4mB0Z)czeBNyVDR^m9taNEq>mFEuO*h#HDFMpXO!rwp3N;2WRyr--gg`- z%qdwCS!oiI1h+pdaj{uCKwT19~E51S}zQZb72TZ9A5(!Tm56?UEF%-mOtYDkkt}{HrNf7%O=!Wyze-u+ zj7GE1{!zyJ3UMs@MP8Hl^4>k~o^#K;{rT(b4**p>PC>?|ihH=PU`4?L6&ea+Dkib4 zQm`lxr6e+9-BR$7K{ocx7Q+)GaBSb}y8PJDJtutc58vry9*#cfL1=}eK<_(U9_X*c z+^|FLdo_l{;p^v(R+B;5Y&VRY<_gL}^YXwY$n zEvw_wi4vtgIA(ZRF#6Wm(p}5z>1H_OUawYMNN&#XZOd(2LoPUGM6zcMh%fgy2{~2g z9uKz}^8e7VS8UTmgl{?3pE7yRBg2Q3Nh*jyvTnPx%gwpeO>Z=)FCc!K-c2?A(a?5Y zaN$pO?oG?W9}QX2J}Vj?q0CVE@6OPWhpyo|)-^06ts#RnL;Bo%p`9UayS_&PE*FY( zbscp2jvbQ7r}Iwjx>gX>=3sxG?_$>4PK8=qqyItLSry~}t;7#x*F;?uk&!|Umq5(4 zyF;rO>ICdFVrP&((vIN@&50-`5k8NrGkg`X=v2+gr7wt|K^FMf1^hKS(WWS@Vl9f3 z8-x;!6-e{}N@;8T6p2q!c%JV3x`G=*I&Mao4J2_38#5vMREQYmZ;+32igb$P2~yEU sm7~p4{5yrD2{qM`Ji(HA0w&m|#ib(=aWW}E5+xEhWw}k3h=T6^1{)#;Y5)KL literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/jedis/JedisChannel.class b/Vituz/bin/secondlife/network/vituz/status/jedis/JedisChannel.class new file mode 100644 index 0000000000000000000000000000000000000000..f2dac8fd84da07ba815e89ce6089bb1110705d3e GIT binary patch literal 464 zcmb7=%SyvQ6o&ul{oY#dOLr>hfOMz0uvVxIRcP&gl8o&%<3y541>ee*;KB#+p~RCQ z*sYt7^Pe;GpUcb3U2?ckM%hb-{Nd4zq0kR~$ljamC;nVnlfD{ z^n{*?NTvEWS+ENgGxVHTdZF>PdX(Hq`w~V0Un!fsa%yjrm@lQTVt$*lzYxYqP2<%j zVG?=rMy386>&4S_nFea8Go1b3o1yb}jXQTKJurbt literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/jedis/JedisPublisher.class b/Vituz/bin/secondlife/network/vituz/status/jedis/JedisPublisher.class new file mode 100644 index 0000000000000000000000000000000000000000..3fb6b27c8bb14047c566c8e0076864ed0b3c98e0 GIT binary patch literal 2818 zcmbVOYjYD-7=BKhvh8+Dp)?>@LA10DB~UJ6i$yGjQUerPTR~B`n?thgb~o&92;db& z#4Dei5oet7TR%G^LF|nB$q)V|9qMy7p(&Cw6Fbv$ec$JO&+}fge?9#5Hvs!^rwPwt zxEUufqE@fzNa3W8Q#h?wqiQ&#<1EIM$hd~rHB9Je#$+Ro=+N$d zryQQNr98`YCQRQ}`|@FL?FMOLI`C+3Q_AvYlNry;I5L^xQF4UC>8WXHg^GlT8-a}} zU(u7a99z2KW0X-!(6g;28XVKjBu}`Z^!mdu5==Ta;dW^D%KKrQZ$=BFGx z$V#93En}f+&73rI(YrNFYnX|mZqd<#Z-;av-MPe%vCwA@^w(nVh!r{eG*(oAG%IVm zu5?sHqV$N~UA8B%!i-=9_WlpsBr0u&CQ%OAt{n~t9PF$G=27bRD@XM)FYjCOn60vB zO_bw{l69IW0{d!s&?1Wht18yVv%WOb0_&G87e?VRaj#IS z?AD4)Wv(`qdu^OPA^|K zq`00Y1bVAMSJNAEpG8Z{JhxCU;jF^skRiY*sCDW8Lhie z&viEv9CrfZ7We9l;m7WuAs(Pk;CtK>Demfvh!xRLUaq){)i6Yj`VO3v@ z8%=H2$9`|eGrwTN+`>$X2b<;=Ec&?;1@<-Y|7JAb!MFI1A2;>r;pqh89M{6YI!bQ9 zdTb&Sn~~&qPCt1W=5CanTp%kMG7^%J0(p3kJlx=XoAVv?5_3OM_u?+U+kW7B7g6_- zqha265Unmk*^NDsN7t#bmt5XOj8gl#B9}OT7dao~e+M-DgIyY4`WwebH1s`06L{9Q zKp>&fGYo4uM7@_WP>KmmtRNZ?SH#XkKbP3qb03=@U`rh)f8s@5^kAJc(1&({C?~s1 zN@e3z$6>q@ITXhcyc$WzF&H^6*w=^3=FadT3Mt-wAJ2BrV=Lpg?H)vT;vVWN=2lV+ eXrYnSXyvR-t}TO>-m6Tioa46*j`6k*$NvR%$Na_s literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/jedis/JedisQueue.class b/Vituz/bin/secondlife/network/vituz/status/jedis/JedisQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..e8a95c553a5df20eab00476b12dc75420dad1175 GIT binary patch literal 3261 zcmbVNZBr9h6n<{9o85#>#3*8vDz>x@Nie?G20>BLVgV7!DmcHlZHgA8>a3_Xtm^$Y9ThvkFuchOz zjxviC)-yHO0$QtVS&A~4ac*WtO@77UAO0})|lhC zp6S`HQy1u-th!6{?qYu0b*3BDDm{ppMZOd`I$5`hu2ZVocdfi*c@Ny$V*bAEHGa(3 z$v~r?U$9DcJ%5SUG5--gS4yU53iM4D-KBilb<0&NU#`1O{t_*h=NGJ^M_RG6<(&)S z-kBck6uENFEm;EFCT+)>ZY<4PwW}t@&p6$pS-o!7Y~D8y6|Z6wpd;@S^p%Fyuqc`+ zMI!+S9H(GD1h+;u&il~!k%c#dudf5&lirMd@VY>J&NGXPQ|59L-@wK^&X_fG$?~jP zTSB8`JAiT`{Q*eWw?;-Jmi_5BL1Ep9b+2JoiTO4l%|s906cBEEWvUtHcCSY*p z2G*)L?jN`IUH)}Yl!m+wwo(65mRw9;@rF9g?+v|ZI^!IlfL<}{6aXHaEgHzxDhoKFF_@+W1Nc~AUuz(6ch9)CLj^PbuxKrFj~kdmUf|Gs z)VuG@z&U(j;1diOIKff|Spzu?88{E3w72C}5_Yy>S4&on{VfUXXoa0_rhUYK11gkg zu3xh5A1qTT=K7iZ5z5n`fk_O|%xYPewbXVLWa#jFfEsH~ygggDtpHUGm%F*VY&j)? zp$>`PJjR;9X~wka2ko(`^#gtM)1Sc}`a20D#7Tv~N3@I3cOQL2oa0Srl=2N{U9_hx zk^ZOjDo;B>Up4a^#8cnQXSA|Wz`*DJ>MJ0PLE5c%DLBa;423otioewm6-oy~;f;n8 zZ#8s~AW3Lfe4>Dz*;k0afN~?LK1bxwO!gVXuY@Fw7E;}}yNh0ueiJE6lIBCcwn*SG z2^tf|gwr1jj&A8o3w(v%)t5})R=$qm_?Eu(z*qQPeaW)e$`|!7p`-E;C&_1&us+IW zeu1hy$^MP#Pf){8vVS2umCLLk=5I;pn$FQuP=;QiE2X@|_Qx=WQpyU9KqFpINhMy0 zq*T_4yhQRb;wd#1S*MgJXrz=V=qZhr^rn)Q(gP*siJy**$-5;3T}$30oWz#|qX!RB zpwbOd&D$8JvoMuy5vNE}a1j?ULXt{j=nO_lil9n^@-#^rYE%GcNYcSnWnpOgzes2p zdyQQh&eBg8ud!Q-(e)ykrgS1D$GCU|;EGvXkH~>rCpX zbl40lj9H@VB88)3249gBLJVJHfB=FP$=}OxpuQR_QYqex}I>&(xn89eqbL&yi{$KDl5N`Qw2yCkNA7 z1B*=V8A6$%XV}!rQGY~bq~*0b8EuXz^5)NfF0)boqo){{{9c4tk@U&da9P8QhATik U?vJt^VZtCs+4^;s-i0vtKgLvy2LJ#7 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/jedis/JedisSettings.class b/Vituz/bin/secondlife/network/vituz/status/jedis/JedisSettings.class new file mode 100644 index 0000000000000000000000000000000000000000..d0a87b1200dc8d9f938e642a180c1290bdde724a GIT binary patch literal 1185 zcmbVK%Wl(95Ir|>>Lzj8l9mFcP|BlCTv{)H6$tT=kcvWy6ch<|PJBt720OBEio}+W zVZ#EXMwLKf$%2nUoa;O&O#~9MG;?P>bLPzB$Ima{0NjR?Ll)Pwn8gh(Hni9@QOY5M zvNmiJTPAJ_n6BqVGL8j`m9~56IvqD?IW-meLF=x7(G4RdAa(_2yKWr64I@t=+m@am zSHrL)uvUq*;WRtG3{>nSznrI|0AkGC^8;Vq7buk`OYBa%%5~O#9C}h%T#MFt zECTDq_}AoewXhd8YJV_qW-qFjla0c5Ja>!e-P_QtEyuhWu!s?tI3-eeIxb+|N z5?J_sC(j#g+2nn&UoLHV+J4J*tn=Wqyh{T`&6TgBrkiLoPBi&Y&p?n~k#dpNdtR$S zy=fmq*js(1?A1Qf_I4kJ{S}#)_7Po2NFQUS5A!oaQ&^&0ArLqWgKcIBJV($)ejEII zmVfL4ES7PO77HY_MDo(aQprnGOOwiZTo@91M6II=ENXm*X?%c@{zykUDXZCokh+95 z2ppDJp(le>{(;WFh*e76phK-wGP;pZd<^IhaIzZF3#hE zi;K8qNq-14s5-bjh%1;qgsU#T!!-xj9o!HYFdJc7o)NfKOI4ubMil;}{8*Wvb@JTb z4o&-4KQ+>{Q-4!6!qi`~>sq^>21!^~$s8eWg>h)+1#VV)#F$za$S>%I5;$B7W3|$5 z5&D^|M?5)F(}9fEWfEGtbC|bg3wV#>SS1UQOjAYjMsNDdReCX~<7JhmvPqTaDz#0y zE&WKwO@GZKVceYi^u$^{pzE6|Fal$>K)3v+*3C%y%~Z$!5|<|#m*|41<*p*DGD+3q zFM--Jp^ho)1RIiGMb`6AtRTDf-paz7k-_t2xs}C)2^MhIbUO*ugU|-<*#A;>$)YjB zi*XR?ls+vhv!NRfZh9zU&cjzYY|q5@SdTrGW4S6Y zo@9j@M4^h!zOr3y*IBs&S9`)1_^n%Ad=8c}hH+2ldZ^Q^JRV9mD4WifUSGwot_%Ve zM0sY0J$$M%b#RT@RvkGoYl%RAmI8rl7caZxE=H=w7!!E38*qosl4~k+Fa6LE2V1(= zFz@}UTEAZOJXpRo&;s+Hli%I3_;IQP3T$U4ZEv`YSGwk?{qr_*Uz!yXmi?;W<%kfvl*Wm2o zZl1I~ai`D!1u^|MaxXKPqg)3l1B~Dp*Au%^IF6H~D4(Hm=wTS&bg+J>OrE^S*XX;j zgZvKqSEm1jc#VOJ|G>%N4|prDFnGk>!O+VLd>ErRgg#hxBUA{S!Vrxf#u;)>V+<20 z^J`6*ML&53%8l~I81IeYTkfcE&#Xz_AJ32{i84-uPLuB-_oIUetLO~L904c!pXbYY Oj-FX>_|EX3pZ@@{G#+07 literal 0 HcmV?d00001 diff --git a/Vituz/bin/secondlife/network/vituz/status/jedis/JedisSubscriber.class b/Vituz/bin/secondlife/network/vituz/status/jedis/JedisSubscriber.class new file mode 100644 index 0000000000000000000000000000000000000000..a4373fb483108d206d873edfe4ce8d75f5a11377 GIT binary patch literal 3607 zcmbVPYgg1(6y0~2nGBgAI4Jl)t%?@LN3cH7Vy!^6LI*{LV$rrXlZi8dkWBMHvF~?l z+aJ(>(HF3muJ&U;boGz)PqaNZ2@sgT>HurqSI*gYpL5UM7ykU`>F)r};rnLn$7{SP zi0Hx?AKm25Edk>q(zwkh69S4NCh21Bkeqs%L^p_mo9=-Rqjq0bpdb6pw|?D>MDsg_wb z^aq-3YVJeJo|Wfy*Ly5GuHt%*JfoF$M;_&EF?1t{l)ucdzhL{{RYTWIcbzp^rE6ZP z=#>}_Z*Dg3n~-t4AWhMRSK&>StF^Z+*_F8p&p*8i*AcZLf?ngyWYM z!vO->s+O9`G^iDZqg&ao7E}i(S)YA|p$7TZV^BgRLzyd;m2Oje*xg52Q&d%RobJ9p znjEAJw!EM#)@Qi&LQg~43)t{eZ7l1tQ6wG_fy`yPzQGj{iQ@@^s;>)% z7q?xKp@0mQ%QjsHdW!h9wQLH7)MbRBBSwQqxa?%BiZf1+9lbzwVq||=5iQH+`R~|@Nw^*67YqDFY%3pAzr{o)^3At&ResZT<~>^E`stv zQC-Vkpghm5%>;Z)PiDcgX1yB2U(pytfZz@VFSOGgSPs-viL9)1oLs1BQS<-*G1ziz z-)JR-$is?Z6m?e{5bzztvATrB#X}mtwH*#qX?4*bb!qJ5Vo0MLmqNcMHS~LuC+ZVi z+5DcAllm+e$;}CBPtxpfq>!Y(lwU?u{=_1Z`IC!CVIyKjN__{1K0?31?`$8|+^KND6pC zz*zz31e~X3#x*qzTcMr<93aw}Km3p~OW4gr2xcuy=vZUiL0JM}6C$xaPdi+o>|gZR zNdZvEj_;pDVn++DUc@D8d6s4B`F1JVAo(K=5`H4m{$gtcCKbYv24Wz_IknNbE!O!m zUW##U+3378*7*uvj&aUxbk4;(U&UaIGu!CgUhmwN;F1wK4^mU9U^k>QP8m@b;@5Jmqu#!ez3ae*i;G?|7j5@m!Chyp47vP?GXm|f&u8;PS)Z~zX4SSNLw zr(eu}GjqM2F94=^Dp8hrBn-cm+tsp?5R?(Z>v*aCo{jgW7B;~

0AQo$@M)e2}i4?>kg99&vPV532i+m2SaN>%%x~-R84y zR7n8(;P$ulJ8X)7udQ;MhHZb3aSeL-HJ%~7{SrsYUsY9W)3h1dbo{gNofwA*$YT|J J9-q%|`7cMJE0X{K literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager$PotionLimit.class b/Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager$PotionLimit.class new file mode 100644 index 0000000000000000000000000000000000000000..cbbeb3b4a4f2957db69efdddc06a6cb9b45730b0 GIT binary patch literal 1352 zcmbVL%Wl&^6g`tTcIp@!%A-JewGFM4(o8EMA)x9e3Q{EVkf^%o&PgU=8pp0|C%`|k z0Er5T1s}jiA?`S)je-|ZHgo4*-*bG=nVH{ze*OaR6#Gliv2DVDt#(zl)YP(LVAnvM zL5n}135JRjgnix~4F)piXF)6jpTA2&v)2=y_=vh*G88;979Im@F%-q8SomGhrSybB zk3Yz$vd8e;i9{#xyPoU`?u+*jvUJP^`u7p`hoOie8_NM zFU(RsCRL4~ORAO~>5Dg`VOxYpZrh{EiW78P@7N8c%G08zMrSBZ1ScagSS{ZdVZ(Ey zNYKaTqVrUySV^JL7m1k+TXuCm(~AUgCcfwGDmib;sCnT%mB@V~`bWEM&%>%rDiS8; z)$Eq4l&Esatl1~3Xuc0dVMn}@%D>eqHR-X{Pu;O=;VPCbl))_&v1GwS$%2I|2IxvO z7Q7MD-Z7NbkGSXheg3w6N|%y>#M6Y&7No~Iy##|EiiVt;nszxgcoJ!Lpj=kEC^ta= z$2D44C_ALS97VIXa}HMff!wzQbDdV5dVo4^(0Xgqg`2od8TBV@^j>fWcT+A-Q6UPo z@5q0pO%9hdJfX2B4Ji%78t!F)wJ$T^y-e_ZJjehSX2JWJ;D>mWf?uQ-=*oipto+?6 z`TB)?Juz9yUB||MJZtCB=H*d`qJ%@%cBmNk&?%Wbz4}aXi`PT6FNNh7uK#5 Az5oCK literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/PotionLimitManager.class new file mode 100644 index 0000000000000000000000000000000000000000..a42173ecb0c6edb406f00134fe79f5f306d1a81f GIT binary patch literal 3422 zcmb_fX?GK46n@@xnKqp+h5~|s6biKIGPnY!g0vK=qy-HWTSa}FOwyr~nK+pgiu;QD zu3!BNdX5$g=lBCW{s(`E=XiYH$&^kP;wi^3lX;hW?{lBKP5$`j*6#ow#Sd}p#*-S3 z#}UJcX6(XKaXwC}x8XQOaH*l3Kjnf>$6l%xK68w48T+%XQLL(eefKF~>2z5nGna zW|_;<$|08>=__(x8WrENjkHzvQv%HytKdk#;+X=M)*KI|%VySfa<-K>4afAay55{I zZ)KIevQdvOD5g_hErkJ)3la7p`8ge>Jv&CIKoa-q7(T-qP_l-qGEG_U!llQZe=`}jb|hq$5PBOM>(6M-Z5Xj)*PmZa)d zmT#G5BaDzhcdh%&<;l>qn#QH&REtgEFw15`NxyPEXo`WA>TQ)DthD~k+-JOKaih{^ zTzWPrh)tFhiP}^{VJ{+{v*tq3N2a5VgdHmt$EWyAU~3fFxtS|$Ml4k|$39EWwVt8Rf7TNTUZs_8FYoWKCZK1+LtLDL7>;^5ri85)`rr4)@ z#uVbX0^_>2DLEuJWM!J8m13h|w^5SQO0sPw#;O-{ zW8`V2ms-xeJ7*f{VA8P<%e>6`uD3v|#g&zY@0b{A*PTF8V`z3n+IEI>DW&0ifdlIZ*~lM(J+<$li>+ceKWzm+ zf;krXyN|0F_M@Kf9He|6PZv#lzOUL?7q8Z~(Xqa4GbiOZphuH-LhT!fZrT10cYuWkwP7?ORr&;l$$ zk731J8%03;t$2{=lMz#0p{Z6vFmRYA1Rlb}grU4Kf;G@UQ}sV_BL;=Ok=vkvLaYbx z4WXJUDUWo-R66oRDfx@ODsTP1+h`>lZT*XAPjv9Hi2Ih1h#~ePrfy@)6gldg80h~E zTNkly;I7vfv3>R7{mZ&`#IT5+3hclV9*E(RqM$CoyayWJ_mYGzqS{Y3yK$Cbo8@Vl z=#?)?;yj3PJdPs)Vg8*s_#rv;0!ML-JUqes4G@1*xDF{UVi+R3Dzq{Ff7yjSbpI=S Ti?12pXSlD3I?KCh8kqPOPWj%O literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/SellWandManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/SellWandManager.class new file mode 100644 index 0000000000000000000000000000000000000000..a32ba3330e1c06015273c3d196d56b2870e92f8a GIT binary patch literal 2626 zcmb7G3s)Oe5dLlgSqMuBDGwi&Vx={N$D&e1L#q;7!G=-|4_oWwCb>zLYfjz7TTZ}K>IcQG3tIVI<0_ujcP^Ua-^Z<4?NeeoB7Mf{S)7(P(2m_!V>`!R~8 zBt1TqtK}p< z(@ln3T|N9CA;UnO92lY~T(89t&&Ze+x}CfVgI2KYnpW}}4c*n~##O!M*<7A!`RJ|~ z7|2Z5g!?G0!*FK0GuL#!d|LME`5!TOvsB?zk%*@j7)CRZdW9AAGw&X>{5<>35Unpm zuiq*RY@H!lv^={k?(4EDBd2mYFO5~aiE9kQ?XFtmPMtbS9^6zhj@ML7$<+dN6j3*4KRm*Z6*XFGa;nuB+GnBx$DLfrg@LdYCD!#`L3Vu|(wd4fKlS5Zbqg+NtB4Rr;&iaj(G7%G~e>MeHb(u=x?VXm8*B$e*!!Xak) zZOAayP5-3T7zU{`Hn?sEjl-}&op7$D>pl0m>!SqPvN+T{vzO7Q6cXZjZOV{8uV*gZ z>vNYP2NjOuc_0pm;OWehC^d+Exg;zQ13S8Tv$RLVqB$amfpU_@L{VC~uhE?SM1NCsxwg3PC literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/managers/TeleportManager.class b/Factions/out/production/Factions/secondlife/network/victions/managers/TeleportManager.class new file mode 100644 index 0000000000000000000000000000000000000000..872acd6997e585599592bf0b298ed10517c52e09 GIT binary patch literal 949 zcma)4U279T6g`t{vQ4_0CaG3!{irRHM0630FDZRdq(bUTlYrpMG#%5??QYnet$#~F zDJb{@{88fBNoZrxMHVjioS8ZI-m~}TuWvs9>|nbJ7aJ~aS5d&73d*>fg?lbGUECK~ zG7~vSRGbLZdhg|#^i!h)|3FT<0+mBO4y8$BCGh0W)7?2Z7`%GXUBr8Q?@@eT#cEcd zysJZP_5|9kUZO@(cpT_=$`6(K7{wp_Gd(go3KM@gOS$X8BrAhw62DdZgmM zJPOD(deKM*LmBG~&q&9dXpZtMSN~Loa?Fwaz6#VNip{~4V8`W2kdAdI@E}*=qCM&59_V=oDowOpDuF$9bW@VQj!*yp9sH6*RGqHPkI*HOMxJ zsD@QsV+FyxYt+vw`4$7E&KEeJNE9dmwk;SNR>re=CZ5Sm2e?7*=3hlhiz3Zjkz2Op F`fqWO+ywvt literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/player/FactionsData.class b/Factions/out/production/Factions/secondlife/network/victions/player/FactionsData.class new file mode 100644 index 0000000000000000000000000000000000000000..101c561353c95a6ab60f5002bf713b5ea9169400 GIT binary patch literal 15312 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 literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/utilities/CustomLocation.class b/Factions/out/production/Factions/secondlife/network/victions/utilities/CustomLocation.class new file mode 100644 index 0000000000000000000000000000000000000000..df8193a79a4146536f35f902c98dd8cac6c7eb53 GIT binary patch literal 5958 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 AP5=M^ literal 0 HcmV?d00001 diff --git a/Factions/out/production/Factions/secondlife/network/victions/utilities/Manager.class b/Factions/out/production/Factions/secondlife/network/victions/utilities/Manager.class new file mode 100644 index 0000000000000000000000000000000000000000..3a9e0cd11b24ce899baa774518287192b674d0bb GIT binary patch literal 658 zcma)(%SyvQ6o&taX=`h&_e-_`3J~nD_u~NkpRx4PmV4a~njMKhU4BJ5>BCUF{ycNC@ z_EDP$egU2^hA5dp_cRS8$rA zLql1UMpl~(qldy|AOe&|JWi>tYG2rkVl&NVYhok6c2m33sfomi%trHyzV@gP554xVCy|JJ`Gc4t* { + try { + Bukkit.getPluginManager().registerEvents((Listener) clazz.newInstance(), this); + } catch (InstantiationException | IllegalAccessException e) { + e.printStackTrace(); + } + }); + } +} diff --git a/Factions/src/secondlife/network/victions/VictionsAPI.java b/Factions/src/secondlife/network/victions/VictionsAPI.java new file mode 100644 index 0000000..342e9df --- /dev/null +++ b/Factions/src/secondlife/network/victions/VictionsAPI.java @@ -0,0 +1,128 @@ +package secondlife.network.victions; + +import com.massivecraft.factions.*; +import com.massivecraft.factions.event.PowerLossEvent; +import com.massivecraft.factions.zcore.util.TL; +import com.sk89q.worldedit.Vector; +import com.sk89q.worldguard.bukkit.WorldGuardPlugin; +import com.sk89q.worldguard.protection.ApplicableRegionSet; +import com.sk89q.worldguard.protection.flags.DefaultFlag; +import com.sk89q.worldguard.protection.managers.RegionManager; +import com.sk89q.worldguard.protection.regions.ProtectedRegion; +import lombok.Getter; +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.entity.Player; +import org.bukkit.plugin.Plugin; + +import static com.sk89q.worldguard.bukkit.BukkitUtil.toVector; + +/** + * Created by Marko on 18.07.2018. + */ +public class VictionsAPI { + + @Getter + private static WorldGuardPlugin worldGuard; + + public static void hook() { + Plugin worldGuardPlugin = Bukkit.getPluginManager().getPlugin("WorldGuard"); + + if(worldGuardPlugin == null || !(worldGuardPlugin instanceof WorldGuardPlugin)) { + worldGuard = null; + } else { + worldGuard = (WorldGuardPlugin) worldGuardPlugin; + } + } + + public static boolean isPvPEnabled(Player player) { + Location location = player.getLocation(); + World world = location.getWorld(); + Vector vector = toVector(location); + RegionManager regionManager = worldGuard.getRegionManager(world); + ApplicableRegionSet region = regionManager.getApplicableRegions(vector); + + return region.allows(DefaultFlag.PVP) || region.getFlag(DefaultFlag.PVP) == null; + } + + public static ProtectedRegion getByProtectedRegion(Location location) { + for(ProtectedRegion region : worldGuard.getRegionManager(location.getWorld()).getApplicableRegions(location)) { + if(region != null) { + return region; + } + } + + return null; + } + + public static Faction getByFaction(Player player) { + return FPlayers.getInstance().getByPlayer(player).getFaction(); + } + + public static Faction getFactionAt(Location location) { + return Board.getInstance().getFactionAt(new FLocation(location)); + } + + public static boolean isWilderness(Location location) { + return Board.getInstance().getFactionAt(new FLocation(location)).isWilderness(); + } + + public static boolean isWarzone(Location location) { + return Board.getInstance().getFactionAt(new FLocation(location)).isWarZone(); + } + + public static boolean isInOwnClaim(Player player) { + return FPlayers.getInstance().getByPlayer(player).isInOwnTerritory(); + } + + public static boolean isInAllyClaim(Player player) { + return FPlayers.getInstance().getByPlayer(player).isInAllyTerritory(); + } + + public static boolean isInEnemyClaim(Player player) { + return FPlayers.getInstance().getByPlayer(player).isInEnemyTerritory(); + } + + public static void updatePower(FPlayer fplayer, Location location) { + Faction faction = Board.getInstance().getFactionAt(new FLocation(location)); + + PowerLossEvent localPowerLossEvent = new PowerLossEvent(faction, fplayer); + + if(faction.isWarZone()) { + + if(!Conf.warZonePowerLoss) { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_NOLOSS_WARZONE.toString()); + localPowerLossEvent.setCancelled(true); + } + + if(Conf.worldsNoPowerLoss.contains(location.getWorld().getName())) { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_LOSS_WARZONE.toString()); + } + + } else if(faction.isWilderness() && !Conf.wildernessPowerLoss && !Conf.worldsNoWildernessProtection.contains(location.getWorld().getName())) { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_NOLOSS_WILDERNESS.toString()); + localPowerLossEvent.setCancelled(true); + } else if(Conf.worldsNoPowerLoss.contains(location.getWorld().getName())) { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_NOLOSS_WORLD.toString()); + localPowerLossEvent.setCancelled(true); + } else if(Conf.peacefulMembersDisablePowerLoss && fplayer.hasFaction() && fplayer.getFaction().isPeaceful()) { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_NOLOSS_PEACEFUL.toString()); + localPowerLossEvent.setCancelled(true); + } else { + localPowerLossEvent.setMessage(TL.PLAYER_POWER_NOW.toString()); + } + + Bukkit.getPluginManager().callEvent(localPowerLossEvent); + + if(!localPowerLossEvent.isCancelled()) { + fplayer.onDeath(); + } + + String str = localPowerLossEvent.getMessage(); + + if(str != null && !str.isEmpty()) { + fplayer.msg(str, fplayer.getPowerRounded(), fplayer.getPowerMaxRounded()); + } + } +} diff --git a/Factions/src/secondlife/network/victions/VictionsConfig.java b/Factions/src/secondlife/network/victions/VictionsConfig.java new file mode 100644 index 0000000..b8871e2 --- /dev/null +++ b/Factions/src/secondlife/network/victions/VictionsConfig.java @@ -0,0 +1,16 @@ +package secondlife.network.victions; + +import lombok.Getter; + +/** + * Created by Marko on 18.07.2018. + */ +public class VictionsConfig { + + @Getter private static boolean tntExplosion = Victions.getInstance().getMainConfig().getBoolean("tntExplosion"); + @Getter private static boolean tnTExplosionDamage = Victions.getInstance().getMainConfig().getBoolean("tnTExplosionDamage"); + @Getter private static boolean creeperExplosion = Victions.getInstance().getMainConfig().getBoolean("creeperExplosion"); + @Getter private static boolean creeperExplosionDamage = Victions.getInstance().getMainConfig().getBoolean("creeperExplosionDamage"); + @Getter private static boolean waterSponge = Victions.getInstance().getMainConfig().getBoolean("waterSponge"); + @Getter private static boolean lavaSponge = Victions.getInstance().getMainConfig().getBoolean("lavaSponge"); +} diff --git a/Factions/src/secondlife/network/victions/commands/BalanceCommand.java b/Factions/src/secondlife/network/victions/commands/BalanceCommand.java new file mode 100644 index 0000000..3dbf5b8 --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/BalanceCommand.java @@ -0,0 +1,40 @@ +package secondlife.network.victions.commands; + +import org.bukkit.entity.Player; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 18.07.2018. + */ +public class BalanceCommand { + + @Command(names = {"balance", "bal"}) + public static void handleBalance(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + player.sendMessage(Color.translate("&eYour balance is &d$" + data.getBalance() + "&e.")); + } + + @Command(names = {"balance ", "bal "}) + public static void handleBalancePlayer(Player player, @Parameter(name = "name") Player target) { + FactionsData data = FactionsData.getByName(target.getName()); + player.sendMessage(Color.translate("&eBalance of &d" + target.getName() + " &eis &d$" + data.getBalance() + "&e.")); + } + + @Command(names = {"balance set", "balance give", "bal set", "bal give"}, permissionNode = "secondlife.op") + public static void handleBalanceSet(Player player, @Parameter(name = "name") Player target, @Parameter(name = "amount") int amount) { + if(amount > 100000) { + player.sendMessage(Color.translate("&cBalance limit is 100000!")); + return ; + } + + FactionsData data = FactionsData.getByName(target.getName()); + + data.setBalance(data.getBalance() + amount); + + player.sendMessage(Color.translate("&eYou have set balance of &d" + target.getName() + " &eto &d$" + data.getBalance() + "&e.")); + target.sendMessage(Color.translate("&eYour balance is now &d$" + data.getBalance() + "&e.")); + } +} diff --git a/Factions/src/secondlife/network/victions/commands/DonatorCommands.java b/Factions/src/secondlife/network/victions/commands/DonatorCommands.java new file mode 100644 index 0000000..ceda18c --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/DonatorCommands.java @@ -0,0 +1,66 @@ +package secondlife.network.victions.commands; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import secondlife.network.victions.Victions; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 14.07.2018. + */ +public class DonatorCommands { + + private static Victions plugin = Victions.getInstance(); + + @Command(names = {"jellylegs", "jl", "jellyl", "jlegs"}, permissionNode = "secondlife.jellylegs") + public static void handleJellyLegs(Player player) { + plugin.getPlayerManager().handleToggleJellyLegs(player); + } + + @Command(names = {"nightvision", "nv", "nightv", "nvision"}, permissionNode = "secondlife.jellylegs") + public static void handleNightVision(Player player) { + plugin.getPlayerManager().handleToggleNightVision(player); + } + + @Command(names = {"tntcraft"}, permissionNode = "secondlife.tntcraft") + public static void handleTNTCraft(Player player) { + plugin.getFactionsManager().handleCraftTNT(player); + } + + @Command(names = {"harvesterhoe"}, permissionNode = "secondlife.op") + public static void handleHarvesterhoe(CommandSender sender, @Parameter(name = "name") Player target) { + plugin.getPlayerManager().handleGiveHarvesterhoe(sender, target); + } + + @Command(names = {"infusion"}, permissionNode = "secondlife.op") + public static void handleInfusion(CommandSender sender, @Parameter(name = "name") Player target, @Parameter(name = "type") String type) { + plugin.getPlayerManager().handleGiveInfusion(sender, target, type); + } + + @Command(names = {"factionfly", "ffly", "facfly"}, permissionNode = "secondlife.factionfly") + public static void handleFactionFly(Player player) { + plugin.getPlayerManager().handleToggleFactionFly(player); + } + + @Command(names = {"potionstack", "ps", "pstack", "potions"}, permissionNode = "secondlife.potionstack") + public static void handlePotionStack(Player player) { + plugin.getPlayerManager().handlePotionStack(player); + } + + @Command(names = {"sellwand", "sellwands"}, permissionNode = "secondlife.op") + public static void handleSellwand(CommandSender sender) { + sender.sendMessage(Color.translate("&cUsage: /sellwands give ")); + } + + @Command(names = {"sellwand give", "sellwands give"}, permissionNode = "secondlife.op") + public static void handleSellwand(CommandSender sender, @Parameter(name = "name") Player target, @Parameter(name = "uses") int uses) { + plugin.getPlayerManager().handleSellwand(sender, target, uses); + } + + @Command(names = {"chunkbuster give", "buster give"}, permissionNode = "secondlife.op") + public static void handleChunkBuster(CommandSender sender, @Parameter(name = "name") Player target, @Parameter(name = "amount") int amount) { + plugin.getPlayerManager().handleChunkBuster(sender, target, amount); + } +} diff --git a/Factions/src/secondlife/network/victions/commands/HomeCommand.java b/Factions/src/secondlife/network/victions/commands/HomeCommand.java new file mode 100644 index 0000000..69c97d6 --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/HomeCommand.java @@ -0,0 +1,89 @@ +package secondlife.network.victions.commands; + +import org.bukkit.entity.Player; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.victions.utilities.CustomLocation; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 18.07.2018. + */ +public class HomeCommand { + + @Command(names = {"home"}) + public static void handleHomeUsage(Player player) { + player.sendMessage(Color.translate("&cUsage: /home ")); + } + + @Command(names = {"home list"}) + public static void handleHomeList(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.getHomes().size() > 0) { + StringBuilder builder = new StringBuilder(); + + data.getHomes().keySet().forEach(home -> { + if(builder.length() > 0) { + builder.append("&f, "); + } + + builder.append("&d").append(home); + }); + + player.sendMessage(Color.translate(builder.toString())); + } else { + player.sendMessage(Color.translate("&eYou don't have any homes set yet.")); + } + } + + @Command(names = {"home"}) + public static void handleHomeGo(Player player, @Parameter(name = "home") String homeName) { + FactionsData data = FactionsData.getByName(player.getName()); + + data.getHomes().forEach((home, location) -> { + if(!home.contains(homeName.toLowerCase())) { + player.sendMessage(Color.translate("&cHome '" + homeName.toLowerCase() + "' doesn't exist.")); + return; + } + + data.applyHomeCooldown(player, location.toBukkitLocation()); + }); + } + + @Command(names = {"sethome"}) + public static void handleSetHome(Player player, @Parameter(name = "home") String homeName) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.getHomes().size() > data.getHomeLimit()) { + player.sendMessage(Color.translate("&cYour home limit is &l" + data.getHomeLimit() + "&c")); + return; + } + + data.getHomes().forEach((home, location) -> { + if(home.contains(homeName.toLowerCase())) { + player.sendMessage(Color.translate("&cHome '" + homeName.toLowerCase() + "' already exist.")); + return; + } + + data.getHomes().put(homeName, CustomLocation.fromBukkitLocation(player.getLocation())); + player.sendMessage(Color.translate("&eYou have set your &d" + homeName + " &ehome.")); + }); + } + + @Command(names = {"deletehome", "delhome"}) + public static void handleDeleteHome(Player player, @Parameter(name = "home") String homeName) { + FactionsData data = FactionsData.getByName(player.getName()); + + data.getHomes().forEach((home, location) -> { + if(!home.contains(homeName.toLowerCase())) { + player.sendMessage(Color.translate("&cHome '" + homeName.toLowerCase() + "' doesn't exist.")); + return; + } + + data.getHomes().remove(homeName); + player.sendMessage(Color.translate("&eYou have deleted your &d" + homeName + " &ehome.")); + }); + } +} diff --git a/Factions/src/secondlife/network/victions/commands/KitCommand.java b/Factions/src/secondlife/network/victions/commands/KitCommand.java new file mode 100644 index 0000000..8231b4a --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/KitCommand.java @@ -0,0 +1,329 @@ +package secondlife.network.victions.commands; + +import net.md_5.bungee.api.ChatColor; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import secondlife.network.victions.Victions; +import secondlife.network.victions.kit.Kit; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.StringUtils; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +public class KitCommand { + + private static final String NO_KIT = Color.translate("&cThat kit doesn't exist!"); + private static Victions plugin = Victions.getInstance(); + + private final static String[] HELP_MESSAGE = new String[] { + ChatColor.DARK_GRAY.toString() + ChatColor.STRIKETHROUGH + "----------------------------------------------------", + ChatColor.YELLOW + "Kit Commands:", + ChatColor.LIGHT_PURPLE + "(*) /kit create " + ChatColor.GRAY + "- Create kit", + ChatColor.LIGHT_PURPLE + "(*) /kit delete " + ChatColor.GRAY + "- Delete kit", + ChatColor.LIGHT_PURPLE + "(*) /kit enable " + ChatColor.GRAY + "- Enable kit", + ChatColor.LIGHT_PURPLE + "(*) /kit icon " + ChatColor.GRAY + "- Set icon", + ChatColor.LIGHT_PURPLE + "(*) /kit setinv " + ChatColor.GRAY + "- Set inventory", + ChatColor.LIGHT_PURPLE + "(*) /kit getinv " + ChatColor.GRAY + "- Get inventory", + ChatColor.LIGHT_PURPLE + "(*) /kit save save " + ChatColor.GRAY + "- Save kits", + + ChatColor.DARK_GRAY.toString() + ChatColor.STRIKETHROUGH + "----------------------------------------------------" + }; + + @Command(names = "kit") + public static void handleUsage(Player player) { + if(player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(HELP_MESSAGE); + player.sendMessage(""); + } else { + player.sendMessage(Color.translate("&cUsage: /kit ")); + } + + StringBuilder builder = new StringBuilder(); + + plugin.getKitManager().getKits().forEach(kits -> { + if(builder.length() > 0) { + builder.append("&f, "); + } + + builder.append("&d").append(kits.getName()); + }); + + player.sendMessage(Color.translate("&eCurrent Kits: " + builder.toString())); + } + + @Command(names = "kit") + public static void handleGive(Player player, @Parameter(name = "name") String name) { + FactionsData data = FactionsData.getByName(player.getName()); + Kit toGive = plugin.getKitManager().getKit(name); + + if(toGive == null) { + player.sendMessage(NO_KIT); + return; + } + + if(data.isKitActive(player, toGive)) { + player.sendMessage(Color.translate("&cYou can't use " + toGive.getName() + " &cfor another &l" + StringUtils.formatInt(toGive.getDelay()) + "&c!")); + return; + } + + toGive.applyToPlayer(player); + } + + @Command(names = "kit create", permissionNode = "secondlife.op") + public static void handleCreate(Player player, @Parameter(name = "name") String name) { + Kit kit = plugin.getKitManager().getKit(name); + + if(kit == null) { + plugin.getKitManager().createKit(name); + player.sendMessage(ChatColor.GREEN + "Successfully created kit " + name + "."); + } else { + player.sendMessage(ChatColor.RED + "That kit already exists!"); + } + } + + @Command(names = {"kit enable", "kit disable"}, permissionNode = "secondlife.op") + public static void handleToggle(Player player, @Parameter(name = "name") String name) { + Kit kit = plugin.getKitManager().getKit(name); + + if(kit != null) { + kit.setEnabled(!kit.isEnabled()); + player.sendMessage(kit.isEnabled() ? ChatColor.GREEN + "Successfully enabled kit " + name + "." : + ChatColor.RED + "Successfully disabled kit " + name + "."); + } else { + player.sendMessage(KitCommand.NO_KIT); + } + } + + @Command(names = {"kit setinv", "kit setinventory"}, permissionNode = "secondlife.op") + public static void handleSetInventory(Player player, @Parameter(name = "name") String name) { + Kit kit = plugin.getKitManager().getKit(name); + + if(kit != null) { + if(player.getGameMode() == GameMode.CREATIVE) { + player.sendMessage(ChatColor.RED + "You can't set item contents in creative mode!"); + } else { + player.updateInventory(); + + kit.setContents(player.getInventory().getContents()); + kit.setArmor(player.getInventory().getArmorContents()); + + player.sendMessage(ChatColor.GREEN + "Successfully set kit contents for " + name + "."); + } + } else { + player.sendMessage(KitCommand.NO_KIT); + } + } + + @Command(names = {"kit getinv", "kit getinventory"}, permissionNode = "secondlife.op") + public static void handleGetInventory(Player player, @Parameter(name = "name") String name) { + Kit kit = plugin.getKitManager().getKit(name); + + if(kit != null) { + player.getInventory().setContents(kit.getContents()); + player.getInventory().setArmorContents(kit.getArmor()); + player.updateInventory(); + player.sendMessage(ChatColor.GREEN + "Successfully retrieved kit contents from " + name + "."); + } else { + player.sendMessage(KitCommand.NO_KIT); + } + } + + @Command(names = {"kit save"}, permissionNode = "secondlife.op") + public static void handleGetInventory(Player player) { + plugin.getKitManager().loadKits(); + player.sendMessage(ChatColor.GREEN + "Successfully reloaded the kits."); + } + + @Command(names = {"kit setdelay", "kit delay"}, permissionNode = "secondlife.op") + public static void handleGetInventory(Player player, @Parameter(name = "name") String name, @Parameter(name = "delay") int seconds) { + Kit kit = plugin.getKitManager().getKit(name); + + if(kit == null) { + player.sendMessage(NO_KIT); + return; + } + + kit.setDelay(seconds); + player.sendMessage(Color.translate("&eYou have set kit delay of &d" + kit.getName() + " &eto &d" + kit.getDelay() + "&e.")); + } + + /*@Override + public boolean execute(CommandSender sender, String alias, String[] args) { + if(!(sender instanceof Player)) return false; + + Player player = (Player) sender; + + FactionsData data = FactionsData.getByName(player.getName()); + Kit kit = this.plugin.getKitManager().getKit(args[1]); + + if(args.length == 0) { + if(player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(HELP_MESSAGE); + player.sendMessage(""); + } else { + player.sendMessage(Color.translate("&cUsage: /kit ")); + } + + StringBuilder builder = new StringBuilder(); + + plugin.getKitManager().getKits().forEach(kits -> { + if(builder.length() > 0) { + builder.append("&f, "); + } + + builder.append("&d" + kits.getName()); + }); + + player.sendMessage(Color.translate("&eCurrent Kits: " + builder.toString())); + } else { + if(args[0].equalsIgnoreCase("create")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if(args.length < 2) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit == null) { + this.plugin.getKitManager().createKit(args[1]); + sender.sendMessage(ChatColor.GREEN + "Successfully created kit " + args[1] + "."); + } else { + sender.sendMessage(ChatColor.RED + "That kit already exists!"); + } + } else if(args[0].equalsIgnoreCase("delete")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if(args.length < 2) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit != null) { + this.plugin.getKitManager().deleteKit(args[1]); + sender.sendMessage(ChatColor.GREEN + "Successfully deleted kit " + args[1] + "."); + } else { + sender.sendMessage(KitCommand.NO_KIT); + } + } else if(args[0].equalsIgnoreCase("enable") || args[0].equalsIgnoreCase("disable")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if(args.length < 2) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit != null) { + kit.setEnabled(!kit.isEnabled()); + sender.sendMessage(kit.isEnabled() ? ChatColor.GREEN + "Successfully enabled kit " + args[1] + "." : + ChatColor.RED + "Successfully disabled kit " + args[1] + "."); + } else { + sender.sendMessage(KitCommand.NO_KIT); + } + } else if(args[0].equalsIgnoreCase("setinv")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if(args.length < 2) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit != null) { + if(player.getGameMode() == GameMode.CREATIVE) { + sender.sendMessage(ChatColor.RED + "You can't set item contents in creative mode!"); + } else { + player.updateInventory(); + + kit.setContents(player.getInventory().getContents()); + kit.setArmor(player.getInventory().getArmorContents()); + + sender.sendMessage(ChatColor.GREEN + "Successfully set kit contents for " + args[1] + "."); + } + } else { + sender.sendMessage(KitCommand.NO_KIT); + } + } else if(args[0].equalsIgnoreCase("getinv")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if(args.length < 2) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit != null) { + player.getInventory().setContents(kit.getContents()); + player.getInventory().setArmorContents(kit.getArmor()); + player.updateInventory(); + sender.sendMessage(ChatColor.GREEN + "Successfully retrieved kit contents from " + args[1] + "."); + } else { + sender.sendMessage(KitCommand.NO_KIT); + } + } else if(args[0].equalsIgnoreCase("save")) { + if(!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + this.plugin.getKitManager().loadKits(); + sender.sendMessage(ChatColor.GREEN + "Successfully reloaded the kits."); + } else if(args[0].equalsIgnoreCase("setdelay")) { + if (!player.hasPermission(Permission.OP_PERMISSION)) { + player.sendMessage(Msg.NO_PERMISSION); + return false; + } + + if (args.length < 3) { + sender.sendMessage(this.HELP_MESSAGE); + return true; + } + + if(kit == null) { + player.sendMessage(NO_KIT); + return false; + } + + if(!NumberUtils.isInteger(args[2])) { + sender.sendMessage(ChatColor.RED + "Invalid time!"); + return false; + } + + int delay = Integer.parseInt(args[2]); + + kit.setDelay(delay); + player.sendMessage(Color.translate("&eYou have set kit delay of &d" + kit.getName() + " &eto &d" + kit.getDelay() + "&e.")); + } else { + Kit toGive = plugin.getKitManager().getKit(args[0]); + + if(toGive == null) { + player.sendMessage(NO_KIT); + return false; + } + + if(data.isKitActive(player, toGive)) { + player.sendMessage(Color.translate("&cYou can't use " + toGive.getName() + " &cfor another &l" + StringUtils.formatInt(toGive.getDelay()) + "&c!")); + return false; + } + + toGive.applyToPlayer(player); + } + } + + return true; + }*/ +} diff --git a/Factions/src/secondlife/network/victions/commands/LogoutCommand.java b/Factions/src/secondlife/network/victions/commands/LogoutCommand.java new file mode 100644 index 0000000..1d00b7a --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/LogoutCommand.java @@ -0,0 +1,25 @@ +package secondlife.network.victions.commands; + +import org.bukkit.entity.Player; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.command.Command; + +/** + * Created by Marko on 18.07.2018. + */ +public class LogoutCommand { + + @Command(names = {"logout"}) + public static void handleLogout(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.isLogoutActive(player)) { + player.sendMessage(Color.translate("&cYou are already logging out.")); + return; + } + + data.applyLogoutCooldown(player); + player.sendMessage(Color.translate("&e&lLogging out... &ePlease wait &c30 &eseconds.")); + } +} diff --git a/Factions/src/secondlife/network/victions/commands/TeleportCommands.java b/Factions/src/secondlife/network/victions/commands/TeleportCommands.java new file mode 100644 index 0000000..d55c017 --- /dev/null +++ b/Factions/src/secondlife/network/victions/commands/TeleportCommands.java @@ -0,0 +1,170 @@ +package secondlife.network.victions.commands; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.entity.Player; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.ActionMessage; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Tasks; +import secondlife.network.vituz.utilties.command.Command; +import secondlife.network.vituz.utilties.command.param.Parameter; + +/** + * Created by Marko on 28.07.2018. + */ +public class TeleportCommands { + + private static Victions plugin = Victions.getInstance(); + + @Command(names = {"tpa"}) + public static void handleTpa(Player player, @Parameter(name = "name") Player target) { + if(plugin.getTeleportManager().getTpaUsers().containsKey(player.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsKey(target.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsValue(player.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsValue(target.getUniqueId()) + + || plugin.getTeleportManager().getTpaHereUsers().containsKey(player.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsKey(target.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsValue(player.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsValue(target.getUniqueId())) { + + player.sendMessage(Color.translate("&cYou or " + target.getName() + " has already a pending request.")); + return; + } + + plugin.getTeleportManager().getTpaUsers().put(target.getUniqueId(), player.getUniqueId()); + + player.sendMessage(Color.translate("&eYou asked to teleport to the &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&d" + player.getName() + " &ehas asked to teleport to you.")); + + ActionMessage actionMessage = new ActionMessage(); + actionMessage.addText("&aClick here to agree") + .setClickEvent(ActionMessage.ClickableType.RunCommand, "/tpaccept"); + actionMessage.addText("&cClick here to disagree") + .setClickEvent(ActionMessage.ClickableType.RunCommand, "/tpdeny"); + + actionMessage.sendToPlayer(target); + + Tasks.runLater(() -> { + if(plugin.getTeleportManager().getTpaUsers().containsKey(target.getUniqueId())) { + plugin.getTeleportManager().getTpaUsers().remove(target.getUniqueId()); + + player.sendMessage(Color.translate("&d" + target.getName() + " &edidn't answer your teleport request.")); + target.sendMessage(Color.translate("&eYou didn't answer &d" + player.getName() + " &eteleport request.")); + player.sendMessage(Color.translate("&eYou asked to teleport to &d" + target.getName() + "&e.")); + } + }, 35 * 20L); + } + + @Command(names = {"tpaccept"}) + public static void handleTpaccept(Player player) { + Player target; + + if(plugin.getTeleportManager().getTpaUsers().containsKey(player.getUniqueId())) { + target = Bukkit.getPlayer(plugin.getTeleportManager().getTpaUsers().get(player.getUniqueId())); + + if(target != null) { + target.sendMessage(Color.translate("&d" + player.getName() + " &ehas accepted your teleport request.")); + player.sendMessage(Color.translate("&eYou have accepted &d" + target.getName() + "'s &eteleport request.")); + + player.sendMessage(Color.translate("&eYou will be teleported in &d3 seconds&e.")); + FactionsData.getByName(player.getName()).setNeedToTeleport(true); + + Tasks.runLater(() -> { + if(target.isOnline() && player.isOnline() && FactionsData.getByName(player.getName()).isNeedToTeleport()) { + target.teleport(player); + plugin.getTeleportManager().getTpaUsers().remove(player.getUniqueId()); + FactionsData.getByName(player.getName()).setNeedToTeleport(false); + } + }, 60L); + } else { + player.sendMessage(ChatColor.RED + "No player with the name '" + target.getName() + "' found."); + plugin.getTeleportManager().getTpaUsers().remove(player.getUniqueId()); + } + } else if (plugin.getTeleportManager().getTpaHereUsers().containsKey(player.getUniqueId())) { + target = Bukkit.getPlayer(plugin.getTeleportManager().getTpaHereUsers().get(player.getUniqueId())); + + if(target != null) { + target.sendMessage(Color.translate("&d" + player.getName() + " &ehas accepted your teleport request.")); + player.sendMessage(Color.translate("&eYou have accepted &d" + target.getName() + "'s &eteleport request.")); + + player.sendMessage(Color.translate("&eYou will be teleported in &d3 seconds&e.")); + FactionsData.getByName(player.getName()).setNeedToTeleport(true); + + Tasks.runLater(() -> { + if(target.isOnline() && player.isOnline() && FactionsData.getByName(player.getName()).isNeedToTeleport()) { + player.teleport(target); + plugin.getTeleportManager().getTpaHereUsers().remove(player.getUniqueId()); + FactionsData.getByName(player.getName()).setNeedToTeleport(false); + } + }, 60L); + } else { + player.sendMessage(ChatColor.RED + "No player with the name '" + target.getName() + "' found."); + plugin.getTeleportManager().getTpaHereUsers().remove(player.getUniqueId()); + } + } else { + player.sendMessage(Color.translate("&eYou don't have any pending teleport requests.")); + } + } + + @Command(names = {"tpahere"}) + public static void handleTpaHere(Player player, @Parameter(name = "name") Player target) { + if(plugin.getTeleportManager().getTpaUsers().containsKey(player.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsKey(target.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsValue(player.getUniqueId()) + || plugin.getTeleportManager().getTpaUsers().containsValue(target.getUniqueId()) + + || plugin.getTeleportManager().getTpaHereUsers().containsKey(player.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsKey(target.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsValue(player.getUniqueId()) + || plugin.getTeleportManager().getTpaHereUsers().containsValue(target.getUniqueId())) { + + player.sendMessage(Color.translate("&cYou or " + target.getName() + " has already a pending request.")); + return; + } + + plugin.getTeleportManager().getTpaHereUsers().put(target.getUniqueId(), player.getUniqueId()); + + player.sendMessage(Color.translate("&eYou asked to teleport here &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&d" + player.getName() + " &ehas asked to teleport to you.")); + + ActionMessage actionMessage = new ActionMessage(); + actionMessage.addText("&aClick here to agree") + .setClickEvent(ActionMessage.ClickableType.RunCommand, "/tpaccept"); + actionMessage.addText("&cClick here to disagree") + .setClickEvent(ActionMessage.ClickableType.RunCommand, "/tpdeny"); + + actionMessage.sendToPlayer(target); + + Tasks.runLater(() -> { + if(plugin.getTeleportManager().getTpaHereUsers().containsKey(target.getUniqueId())) { + plugin.getTeleportManager().getTpaHereUsers().remove(target.getUniqueId()); + + player.sendMessage(Color.translate("&d" + target.getName() + " &edidn't answer your teleport request.")); + target.sendMessage(Color.translate("&eYou didn't answer &d" + player.getName() + " &eteleport request.")); + player.sendMessage(Color.translate("&eYou asked to teleport to &d" + target.getName() + "&e.")); + } + }, 35 * 20L); + } + + @Command(names = {"tpdeny", "tpadeny", "denytpa"}) + public static void handleDeny(Player player) { + Player target; + + if(plugin.getTeleportManager().getTpaUsers().containsKey(player.getUniqueId())) { + target = Bukkit.getPlayer(plugin.getTeleportManager().getTpaUsers().get(player.getUniqueId())); + plugin.getTeleportManager().getTpaUsers().remove(player.getUniqueId()); + } else if(plugin.getTeleportManager().getTpaHereUsers().containsKey(player.getUniqueId())) { + target = Bukkit.getPlayer(plugin.getTeleportManager().getTpaHereUsers().get(player.getUniqueId())); + plugin.getTeleportManager().getTpaHereUsers().remove(player.getUniqueId()); + } else { + player.sendMessage(Color.translate("&eYou don't have any pending teleport requests.")); + return; + } + + target.sendMessage(Color.translate("&d" + player.getName() + " &ehas denied your teleport request.")); + player.sendMessage(Color.translate("&eYou denied " + target.getName() + "'s &eteleport request.")); + } +} diff --git a/Factions/src/secondlife/network/victions/handler/CustomMovemomentHandler.java b/Factions/src/secondlife/network/victions/handler/CustomMovemomentHandler.java new file mode 100644 index 0000000..4c66a8b --- /dev/null +++ b/Factions/src/secondlife/network/victions/handler/CustomMovemomentHandler.java @@ -0,0 +1,44 @@ +package secondlife.network.victions.handler; + +import club.minemen.spigot.handler.MovementHandler; +import net.minecraft.server.v1_8_R3.PacketPlayInFlying; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 18.07.2018. + */ +public class CustomMovemomentHandler implements MovementHandler { + + @Override + public void handleUpdateLocation(Player player, Location to, Location from, PacketPlayInFlying packetPlayInFlying) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data != null) { + if(data.isHomeActive(player)) { + data.cancelHome(player); + player.sendMessage(Color.translate("&eTeleport canceled because you moved.")); + } + + if(data.isLogoutActive(player)) { + data.cancelLogout(player); + player.sendMessage(Color.translate("&eTeleport canceled because you moved.")); + } + + if(data.isNeedToTeleport()) { + data.setNeedToTeleport(false); + player.sendMessage(Color.translate("&eTeleport canceled because you moved.")); + } + } + + Victions.getInstance().getGlassManager().handleMove(player, from, to); + } + + @Override + public void handleUpdateRotation(Player player, Location location, Location location1, PacketPlayInFlying packetPlayInFlying) { + + } +} diff --git a/Factions/src/secondlife/network/victions/kit/Kit.java b/Factions/src/secondlife/network/victions/kit/Kit.java new file mode 100644 index 0000000..9f4cc16 --- /dev/null +++ b/Factions/src/secondlife/network/victions/kit/Kit.java @@ -0,0 +1,34 @@ +package secondlife.network.victions.kit; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.Setter; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; + +@Getter +@Setter +@AllArgsConstructor +@RequiredArgsConstructor +public class Kit { + + private final String name; + private ItemStack[] contents = new ItemStack[36]; + private ItemStack[] armor = new ItemStack[4]; + private ItemStack icon; + private boolean enabled; + private int delay; + + public void applyToPlayer(Player player) { + player.getInventory().setContents(contents); + player.getInventory().setArmorContents(armor); + player.updateInventory(); + player.sendMessage(Color.translate("&eYou have received &d" + name + " &ekit.")); + + FactionsData data = FactionsData.getByName(player.getName()); + data.applyKitCooldown(this); + } +} diff --git a/Factions/src/secondlife/network/victions/kit/PlayerKit.java b/Factions/src/secondlife/network/victions/kit/PlayerKit.java new file mode 100644 index 0000000..7ddc517 --- /dev/null +++ b/Factions/src/secondlife/network/victions/kit/PlayerKit.java @@ -0,0 +1,39 @@ +package secondlife.network.victions.kit; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.Setter; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.Victions; +import secondlife.network.vituz.utilties.Color; + +import java.util.stream.Stream; + +@Getter +@Setter +@AllArgsConstructor +public class PlayerKit { + + private final String name; + private final int index; + + private ItemStack[] contents; + private String displayName; + + public void applyToPlayer(Player player) { + for (ItemStack itemStack : contents) { + if (itemStack != null) { + if (itemStack.getAmount() <= 0) { + itemStack.setAmount(1); + } + } + } + + player.getInventory().setContents(contents); + player.getInventory().setArmorContents(Victions.getInstance().getKitManager().getKit(name).getArmor()); + player.updateInventory(); + player.sendMessage(Color.translate("&eGiving you &d" + displayName + "&e.")); + } + +} diff --git a/Factions/src/secondlife/network/victions/listeners/ChatListener.java b/Factions/src/secondlife/network/victions/listeners/ChatListener.java new file mode 100644 index 0000000..b5c9a90 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/ChatListener.java @@ -0,0 +1,62 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.command.ConsoleCommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.AsyncPlayerChatEvent; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Permission; +import secondlife.network.vituz.utilties.StringUtils; + +/** + * Created by Marko on 19.07.2018. + */ +public class ChatListener implements Listener { + + @EventHandler + public void onAsyncPlayerChat(AsyncPlayerChatEvent event) { + if(event.isCancelled()) return; + + String message = event.getMessage(); + Player player = event.getPlayer(); + + event.setCancelled(true); + + if(Vituz.getInstance().getChatControlManager().isMuted() && !player.hasPermission(Permission.STAFF_PERMISSION)) { + event.setCancelled(true); + + player.sendMessage(Color.translate("&cChat is currently muted.")); + return; + } + + if(Vituz.getInstance().getChatControlManager().getDelay() > 0 && !player.hasPermission(Permission.STAFF_PERMISSION)) { + if(Vituz.getInstance().getChatControlManager().isActive(player)) { + event.setCancelled(true); + player.sendMessage(Color.translate("&cYou can't use chat for another &l" + StringUtils.getRemaining(Vituz.getInstance().getChatControlManager().getMillisecondsLeft(player), true) + "&c.")); + return; + } + + Vituz.getInstance().getChatControlManager().applyCooldown(player); + } + + for(Player recipient : event.getRecipients()) { + recipient.sendMessage(this.getFormat(player, message, recipient)); + } + + ConsoleCommandSender console = Bukkit.getConsoleSender(); + + console.sendMessage(this.getFormat(player, message, console)); + } + + private String getFormat(Player player, String message, CommandSender viewer) { + if(player.isOp()) { + return Color.translate(player.getDisplayName() + " &6» &f" + message); + } else { + return Color.translate(player.getDisplayName() + " &6» &f") + message; + } + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/ChunkBusterListener.java b/Factions/src/secondlife/network/victions/listeners/ChunkBusterListener.java new file mode 100644 index 0000000..1ff548a --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/ChunkBusterListener.java @@ -0,0 +1,63 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.World; +import org.bukkit.block.Block; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.Victions; +import secondlife.network.victions.VictionsAPI; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 19.07.2018. + */ +public class ChunkBusterListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + if(event.isCancelled()) return; + + Player player = event.getPlayer(); + + ItemStack item = event.getItemInHand(); + if(item == null || item.getType() == Material.AIR) return; + if(!item.hasItemMeta()) return; + if(!item.getItemMeta().getDisplayName().equals(Color.translate("&dChunk Buster"))) return; + + event.setCancelled(true); + + if(VictionsAPI.getByFaction(player) == null) { + player.sendMessage(Color.translate("&cYou aren't in a faction.")); + return; + } + + Block block = event.getBlockPlaced(); + + int blockX = block.getChunk().getX() << 4; + int blockZ = block.getChunk().getZ() << 4; + + Bukkit.getScheduler().scheduleAsyncDelayedTask(plugin, () -> { + Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, () -> { + for(int x = blockX; x < blockX + 16; ++x) { + for(int z = blockZ; z < blockZ + 16; ++z) { + for(int y = 0; y < 255; ++y) { + World world = block.getWorld(); + Block blockAt = world.getBlockAt(x, y, z); + + if(!blockAt.getType().equals(Material.BEDROCK)) { + blockAt.setType(Material.AIR); + } + } + } + } + }, 0L); + }, 10L); + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/EntityLimiterListener.java b/Factions/src/secondlife/network/victions/listeners/EntityLimiterListener.java new file mode 100644 index 0000000..da9c5b1 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/EntityLimiterListener.java @@ -0,0 +1,22 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntitySpawnEvent; +import secondlife.network.victions.Victions; + +/** + * Created by Marko on 18.07.2018. + */ +public class EntityLimiterListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + @EventHandler + public void onEntitySpawn(EntitySpawnEvent event) { + if(!plugin.getEntityLimiterManager().getDisabledEntities().containsKey(event.getEntity().getType())) return; + if(!plugin.getEntityLimiterManager().getDisabledEntities().get(event.getEntity().getType())) return; + + event.setCancelled(true); + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/FactionsListener.java b/Factions/src/secondlife/network/victions/listeners/FactionsListener.java new file mode 100644 index 0000000..d74fb0f --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/FactionsListener.java @@ -0,0 +1,386 @@ +package secondlife.network.victions.listeners; + +import com.massivecraft.factions.Board; +import com.massivecraft.factions.FLocation; +import com.massivecraft.factions.FPlayer; +import com.massivecraft.factions.FPlayers; +import com.massivecraft.factions.listeners.FactionsBlockListener; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.World; +import org.bukkit.block.Block; +import org.bukkit.entity.*; +import org.bukkit.entity.minecart.ExplosiveMinecart; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.block.BlockBreakEvent; +import org.bukkit.event.block.BlockFromToEvent; +import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.entity.CreatureSpawnEvent; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.EntityDeathEvent; +import org.bukkit.event.entity.EntityExplodeEvent; +import org.bukkit.event.inventory.PrepareItemCraftEvent; +import org.bukkit.event.player.PlayerCommandPreprocessEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.VictionsAPI; +import secondlife.network.victions.VictionsConfig; +import secondlife.network.victions.utilities.FactionsUtils; +import secondlife.network.vituz.utilties.Color; + +import java.util.List; +import java.util.stream.Stream; + +/** + * Created by Marko on 18.07.2018. + */ +public class FactionsListener implements Listener { + + @EventHandler + public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { + Player player = event.getPlayer(); + Material material = player.getLocation().getBlock().getType(); + + String[] commands = new String[] { + "home", "sethome", "warp", + "warps", + }; + + for(String command : commands) { + if(material.equals(Material.STATIONARY_WATER) + || material.equals(Material.WATER) + || material.equals(Material.LAVA) + || material.equals(Material.STATIONARY_LAVA)) { + if(event.getMessage().toLowerCase().startsWith("/" + command.toLowerCase())) { + event.setCancelled(true); + player.sendMessage(Color.translate("&cYou can't use this command in lava/water!")); + } + } + } + } + + @EventHandler + public void onCreatureSpawn(CreatureSpawnEvent event) { + if(event.getSpawnReason().equals(CreatureSpawnEvent.SpawnReason.SPAWNER_EGG)) { + Block block = event.getLocation().getBlock(); + + if(block.getType().equals(Material.COBBLESTONE)) { + event.setCancelled(true); + } + } + } + + @EventHandler + public void onPrepareItemCraft(PrepareItemCraftEvent event) { + Material item = event.getRecipe().getResult().getType(); + + if(item.equals(Material.HOPPER)) { + event.getInventory().setResult(new ItemStack(Material.AIR)); + } + } + + @EventHandler + public void onEntityExplode(EntityExplodeEvent event) { + if((event.getEntity() instanceof TNTPrimed) || (event.getEntity() instanceof ExplosiveMinecart)) { + if(!VictionsConfig.isTntExplosion()) { + event.setCancelled(true); + } + + if(!VictionsConfig.isTnTExplosionDamage()) { + event.blockList().clear(); + } + } + + if(event.getEntity() instanceof Creeper) { + if(!VictionsConfig.isCreeperExplosion()) { + event.setCancelled(true); + } + + if(!VictionsConfig.isCreeperExplosionDamage()) { + event.blockList().clear(); + } + } + } + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(event.getEntity() instanceof Player) { + if((event.getDamager() instanceof TNTPrimed) || (event.getDamager() instanceof ExplosiveMinecart)) { + if(!VictionsConfig.isTntExplosion()) { + event.setCancelled(true); + } + + } + + if(event.getDamager() instanceof Creeper) { + if(!VictionsConfig.isCreeperExplosion()) { + event.setCancelled(true); + } + + } + } + } + + @EventHandler + public void onBlockFromTo(BlockFromToEvent event) { + World world = event.getBlock().getWorld(); + Block blockFrom = event.getBlock(); + Block blockTo = event.getBlock(); + + int blockX = blockTo.getX(); + int blockY = blockTo.getY(); + int blockZ = blockTo.getZ(); + + boolean isLava = (blockFrom.getTypeId() == 10) || (blockFrom.getTypeId() == 11); + + if(VictionsConfig.isWaterSponge()) { + if(blockFrom.getType().equals(Material.WATER) || blockFrom.getType().equals(Material.STATIONARY_WATER)) { + int radius = 3; + + for(int x = -radius; x <= radius; x++) { + for(int y = -radius; y <= radius; y++) { + for(int z = -radius; z <= radius; z++) { + Block block = world.getBlockAt(blockX + x, blockY + y, blockZ + z); + + if(block.getType().equals(Material.SPONGE)) { + event.setCancelled(true); + } + } + } + } + } + } + + if(VictionsConfig.isLavaSponge()) { + if(blockFrom.getType().equals(Material.LAVA) || blockFrom.getType().equals(Material.STATIONARY_LAVA)) { + int radius = 3; + + for(int x = -radius; x <= radius; x++) { + for(int y = -radius; y <= radius; y++) { + for(int z = -radius; z <= radius; z++) { + Block block = world.getBlockAt(blockX + x, blockY + y, blockZ + z); + + if(block.getType().equals(Material.SPONGE)) { + event.setCancelled(true); + } + } + } + } + } + } + + if(isLava) { + event.setCancelled(true); + } + } + + @EventHandler + public void onBlockBreak(BlockBreakEvent event) { + if(event.isCancelled()) { + return; + } + + ItemStack item = event.getPlayer().getItemInHand(); + + int size = 1; + int amount = 2; + + if((item.getType() == Material.DIAMOND_PICKAXE) && (item.getItemMeta().hasLore()) && (item.getItemMeta().getLore().contains("Breaks blocks in 3x3"))) { + for(int x = event.getBlock().getX() - size; x <= event.getBlock().getX() + size; x++) { + for(int y = event.getBlock().getY() - size; y <= event.getBlock().getY() + size; y++) { + for(int z = event.getBlock().getZ() - size; z <= event.getBlock().getZ() + size; z++) { + Location loc = new Location(event.getBlock().getWorld(), x, y, z); + + if(loc.getWorld().getEnvironment() == World.Environment.NETHER) { + return; + } + + if((FactionsBlockListener.playerCanBuildDestroyBlock(event.getPlayer(), loc, "BUILD", false)) && (VictionsAPI.getWorldGuard().canBuild(event.getPlayer(), loc)) && (isBreakable(loc.getBlock().getType()))) { + loc.getBlock().breakNaturally(); + } + } + } + } + } + + if((item.getType() == Material.DIAMOND_PICKAXE) && (item.getItemMeta().hasLore()) && (item.getItemMeta().getLore().contains("Breaks blocks in 5x5"))) { + for(int x = event.getBlock().getX() - amount; x <= event.getBlock().getX() + amount; x++) { + for(int y = event.getBlock().getY() - amount; y <= event.getBlock().getY() + amount; y++) { + for(int z = event.getBlock().getZ() - amount; z <= event.getBlock().getZ() + amount; z++) { + Location loc = new Location(event.getBlock().getWorld(), x, y, z); + + if(loc.getWorld().getEnvironment() == World.Environment.NETHER) { + return; + } + + if((FactionsBlockListener.playerCanBuildDestroyBlock(event.getPlayer(), loc, "BUILD", false)) && (VictionsAPI.getWorldGuard().canBuild(event.getPlayer(), loc)) && (isBreakable(loc.getBlock().getType()))) { + loc.getBlock().breakNaturally(); + } + } + } + } + } + + if((item.getType() == Material.DIAMOND_HOE) && (item.getItemMeta().hasLore()) && (item.getItemMeta().getLore().contains("You don't need to pickup sugarcane"))) { + if(event.getBlock().getType() == Material.SUGAR_CANE_BLOCK) { + event.setCancelled(true); + + Location currLoc = event.getBlock().getLocation(); + + while(currLoc.getBlock().getType().equals(Material.SUGAR_CANE_BLOCK)) { + currLoc = new Location(currLoc.getWorld(), currLoc.getBlockX(), currLoc.getBlockY() + 1, currLoc.getBlockZ()); + } + + currLoc = new Location(currLoc.getWorld(), currLoc.getBlockX(), currLoc.getBlockY() - 1, currLoc.getBlockZ()); + + while(currLoc.getBlockY() >= event.getBlock().getY()) { + currLoc.getBlock().setType(Material.AIR); + + handleGiveItem(event.getPlayer(), Material.SUGAR_CANE); + + currLoc = new Location(currLoc.getWorld(), currLoc.getBlockX(), currLoc.getBlockY() - 1, currLoc.getBlockZ()); + } + } + } + } + + @EventHandler + public void onBlockPlace(BlockPlaceEvent event) { + if(event.isCancelled()) { + return; + } + + Player player = event.getPlayer(); + Block block = event.getBlock(); + FPlayer fplayer = FPlayers.getInstance().getByPlayer(player); + Location location = block.getLocation(); + FLocation Floc = new FLocation(location); + + if(Board.getInstance().getFactionAt(Floc).isWilderness() || fplayer.isInOwnTerritory() || fplayer.isAdminBypassing()) { + if(block.getType() == Material.SPONGE) { + int blockX = block.getX(); + int blockY = block.getY(); + int blockZ = block.getZ(); + + int radius = 3 - 1; + + for(int x = -radius; x <= radius; x++) { + for(int y = -radius; y <= radius; y++) { + for(int z = -radius; z <= radius; z++) { + Block blockAt = block.getWorld().getBlockAt(blockX + x, blockY + y, blockZ + z); + + if(blockAt.getType() == Material.WATER || blockAt.getType() == Material.STATIONARY_WATER) { + blockAt.setType(Material.AIR); + } + + if(blockAt.getType() == Material.LAVA || blockAt.getType() == Material.STATIONARY_LAVA) { + blockAt.setType(Material.AIR); + } + } + } + } + } + } + } + + @EventHandler + public void onEntityDeath(EntityDeathEvent event) { + handleEntityDeath(event.getEntity(), event.getDrops()); + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Block block = event.getClickedBlock(); + Player player = event.getPlayer(); + + if(VictionsAPI.isPvPEnabled(player) || event.getAction() != Action.RIGHT_CLICK_BLOCK) { + return; + } + + if(block.getType().equals(Material.ANVIL)) { + block.setType(Material.ANVIL); + } + } + + private boolean isBreakable(Material material) { + if(material.equals(Material.CHEST) + || material.equals(Material.TRAPPED_CHEST) + || material.equals(Material.BEDROCK) + || material.equals(Material.WATER) + || material.equals(Material.LAVA) + || material.equals(Material.MOB_SPAWNER)) { + return false; + } + + return true; + } + + private void handleGiveItem(Player player, Material m) { + if(player.getInventory().firstEmpty() != -1) { + player.getInventory().addItem(new ItemStack(m)); + } else if(getSlot(player, m) != -1) { + player.getInventory().addItem(new ItemStack(m)); + } else { + player.getWorld().dropItem(player.getLocation(), new ItemStack(m)); + } + } + + private int getSlot(Player player, Material material) { + for(int i = 0; i < player.getInventory().getSize(); i++) { + if((player.getInventory().getItem(i).getType().equals(material)) && (player.getInventory().getItem(i).getAmount() < player.getInventory().getItem(i).getMaxStackSize())) { + return i; + } + } + + return -1; + } + + private Material[] shit = { + Material.RED_ROSE, + Material.BOW, + Material.SULPHUR, + + Material.CHAINMAIL_BOOTS, + Material.CHAINMAIL_CHESTPLATE, + Material.CHAINMAIL_HELMET, + Material.CHAINMAIL_LEGGINGS, + + Material.GOLD_BOOTS, + Material.GOLD_CHESTPLATE, + Material.GOLD_HELMET, + Material.GOLD_LEGGINGS, + + Material.LEATHER_BOOTS, + Material.LEATHER_CHESTPLATE, + Material.LEATHER_HELMET, + Material.LEATHER_LEGGINGS + }; + + private void handleEntityDeath(Entity entity, List drops) { + if(!(entity instanceof Player)) { + drops.forEach(drop -> Stream.of(shit).forEach(shit -> { + if(drop.getType().equals(shit)) { + drops.remove(drop); + } + })); + } + + if(entity instanceof Creeper) { + if(FactionsUtils.random(1, 3) == 1) drops.add(new ItemStack(Material.TNT)); + } + + int emerald = FactionsUtils.random(1, 10); + + if(entity instanceof Silverfish) { + if(emerald >= 9) { + drops.add(new ItemStack(Material.EMERALD, 3)); + } else if(emerald >= 6) { + drops.add(new ItemStack(Material.EMERALD, 2)); + } else { + drops.add(new ItemStack(Material.EMERALD)); + } + } + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/MobStackListener.java b/Factions/src/secondlife/network/victions/listeners/MobStackListener.java new file mode 100644 index 0000000..5af21d7 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/MobStackListener.java @@ -0,0 +1,22 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.ChatColor; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.LivingEntity; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDeathEvent; +import secondlife.network.victions.Victions; + +public class MobStackListener implements Listener { + + @EventHandler + public void onEntityDeath(EntityDeathEvent event) { + if(event.getEntity() != null) { + LivingEntity entity = event.getEntity(); + if(entity.getType() != EntityType.PLAYER && entity.getType() != EntityType.VILLAGER) { + Victions.getInstance().getMobStackManager().handleUnstackOne(entity, ChatColor.RED); + } + } + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/PlayerListener.java b/Factions/src/secondlife/network/victions/listeners/PlayerListener.java new file mode 100644 index 0000000..6327085 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/PlayerListener.java @@ -0,0 +1,179 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import org.bukkit.event.Event; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.event.inventory.ClickType; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryType; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.StringUtils; + +/** + * Created by Marko on 18.07.2018. + */ +public class PlayerListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + @EventHandler + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.isNightVision()) { + if(!player.hasPotionEffect(PotionEffectType.NIGHT_VISION)) { + player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0)); + } + } else { + if(player.hasPotionEffect(PotionEffectType.NIGHT_VISION)) { + player.removePotionEffect(PotionEffectType.NIGHT_VISION); + } + } + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + Player player = event.getPlayer(); + FactionsData data = FactionsData.getByName(player.getName()); + + data.save(); + + if(plugin.getPlayerManager().isSpawnTagActive(player) && !player.hasMetadata("LogoutCommand")) { + player.setHealth(0.0D); + } + + data.cancelHome(player); + data.cancelLogout(player); + data.cancelPearl(player); + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + Player player = event.getEntity(); + FactionsData data = FactionsData.getByName(player.getName()); + + data.cancelPearl(player); + } + + @EventHandler + public void onEntityDamage(EntityDamageEvent event) { + if(event.getEntity() instanceof Player) { + Player player = (Player) event.getEntity(); + + FactionsData data = FactionsData.getByName(player.getName()); + + if(data != null) { + if(data.isHomeActive(player)) { + data.cancelHome(player); + player.sendMessage(Color.translate("&eTeleport canceled because you were damaged.")); + } + + if(data.isLogoutActive(player)) { + data.cancelLogout(player); + player.sendMessage(Color.translate("&eTeleport canceled because you were damaged.")); + } + + if(data.isNeedToTeleport()) { + data.setNeedToTeleport(false); + player.sendMessage(Color.translate("&eTeleport canceled because you were damaged.")); + } + + if(data.isJellyLegs() && event.getCause().equals(EntityDamageEvent.DamageCause.FALL)) { + event.setCancelled(true); + } + } + } + } + + @EventHandler + public void onPlayerInteract(PlayerInteractEvent event) { + Player player = event.getPlayer(); + FactionsData data = FactionsData.getByName(player.getName()); + + if(player.getGameMode().equals(GameMode.CREATIVE)) { + return; + } + + if(!event.hasItem()) { + return; + } + + if(event.getAction().name().startsWith("RIGHT_")) { + ItemStack stack = event.getItem(); + + switch (stack.getType()) { + case ENDER_PEARL: { + if(data.isPearlActive(player)) { + event.setUseItemInHand(Event.Result.DENY); + player.sendMessage(Color.translate("&cYou can't use this for another &l" + StringUtils.getRemaining(data.getPearlMillisecondsLeft(player), true) + "!")); + } else { + data.applyPearlCooldown(player); + } + break; + } + } + } + } + + /*@EventHandler + public void onPlayerPickupItem(PlayerPickupItemEvent event) { + Item item = event.getItem(); + ItemStack stack = item.getItemStack(); + Player player = event.getPlayer(); + + if(stack.getType() == Material.POTION) { + event.setCancelled(true); + + if(player.getInventory().firstEmpty() == -1) { + player.getInventory().addItem(stack); + item.remove(); + } + } + }*/ + + @EventHandler(ignoreCancelled = true) + public void onInventoryClick(InventoryClickEvent event) { + Inventory inventory = event.getView().getTopInventory(); + + if(inventory != null && inventory.getType() == InventoryType.BREWING) { + if(event.getClick() == ClickType.NUMBER_KEY && (event.getRawSlot() == 0 || event.getRawSlot() == 1 || event.getRawSlot() == 2)) { + event.setCancelled(true); + return; + } + + if(event.getClick().name().contains("SHIFT") && event.getCurrentItem().getAmount() > 1) { + Player player = (Player) event.getWhoClicked(); + ItemStack stack = event.getCurrentItem(); + ItemStack newStack = new ItemStack(stack); + + newStack.setAmount(stack.getAmount() - 1); + stack.setAmount(1); + + Bukkit.getScheduler().runTask(plugin, () -> { + if(player.getInventory().getItem(event.getSlot()) == null) { + player.getInventory().setItem(event.getSlot(), newStack); + } else { + stack.setAmount(newStack.getAmount() + 1); + } + + player.updateInventory(); + }); + } + } + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/PotionLimitListener.java b/Factions/src/secondlife/network/victions/listeners/PotionLimitListener.java new file mode 100644 index 0000000..87de9cb --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/PotionLimitListener.java @@ -0,0 +1,154 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.entity.ThrownPotion; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PotionSplashEvent; +import org.bukkit.event.inventory.BrewEvent; +import org.bukkit.event.player.PlayerItemConsumeEvent; +import org.bukkit.inventory.BrewerInventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.Potion; +import org.bukkit.potion.PotionEffect; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.victions.Victions; +import secondlife.network.victions.managers.PotionLimitManager; +import secondlife.network.vituz.utilties.Color; + +public class PotionLimitListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + @EventHandler + public void onBrew(BrewEvent event) { + BrewerInventory brewer = event.getContents(); + + ItemStack ingredient = brewer.getIngredient().clone(); + ItemStack[] potions = new ItemStack[3]; + + for(int i = 0; i < 3; ++i) { + if(event.getContents().getItem(i) != null) { + potions[i] = brewer.getItem(i).clone(); + } + } + + new BukkitRunnable() { + public void run() { + for(int i = 0; i < 3; ++i) { + if(brewer.getItem(i) != null && brewer.getItem(i).getType() == Material.POTION) { + for(PotionEffect potionEffect : Potion.fromItemStack(brewer.getItem(i)).getEffects()) { + for(PotionLimitManager.PotionLimit potionLimit : plugin.getPotionLimitManager().getPotionLimits()) { + int maxLevel = potionLimit.getLevel(); + int level = potionEffect.getAmplifier() + 1; + + Potion potion = Potion.fromItemStack(brewer.getItem(i)); + + if(maxLevel == 0 || level > maxLevel) { + brewer.setIngredient(ingredient); + + for(int item = 0; item < 3; ++item) { + brewer.setItem(item, potions[item]); + } + + return; + } + + if(potion.hasExtendedDuration() && !potionLimit.isExtended()) { + brewer.setIngredient(ingredient); + + for(int item = 0; item < 3; ++item) { + brewer.setItem(item, potions[item]); + } + + return; + } + } + } + } + } + } + }.runTaskLater(plugin, 1L); + } + + @EventHandler + public void onPlayerItemConsume(PlayerItemConsumeEvent event) { + Player player = event.getPlayer(); + ItemStack item = event.getItem(); + + if(!item.getType().equals(Material.POTION)) return; + if(item.getType().equals(Material.POTION) && item.getDurability() == 0) return; + + Potion.fromItemStack(item).getEffects().forEach(potionEffect -> { + plugin.getPotionLimitManager().getPotionLimits().forEach(potionLimit -> { + if(potionLimit.getType().equals(potionEffect.getType())) { + int maxLevel = potionLimit.getLevel(); + int level = potionEffect.getAmplifier() + 1; + + Potion potion = Potion.fromItemStack(item); + + if(maxLevel == 0 || level > maxLevel) { + event.setCancelled(true); + player.setItemInHand(new ItemStack(Material.AIR)); + player.sendMessage(Color.translate("&cThis Potion Effect is disabled.")); + return; + } + + if(potion.hasExtendedDuration() && !potionLimit.isExtended()) { + event.setCancelled(true); + player.setItemInHand(new ItemStack(Material.AIR)); + player.sendMessage(Color.translate("&cThis Potion Effect is disabled.")); + return; + } + } + }); + }); + } + + @EventHandler + public void onPotionSplash(PotionSplashEvent event) { + ThrownPotion thrownPotion = event.getPotion(); + + thrownPotion.getEffects().forEach(potionEffect -> { + plugin.getPotionLimitManager().getPotionLimits().forEach(potionLimit -> { + if(potionLimit.getType().equals(potionEffect.getType())) { + if(thrownPotion.getShooter() instanceof Player) { + Player shooter = (Player) thrownPotion.getShooter(); + + int maxLevel = potionLimit.getLevel(); + int level = potionEffect.getAmplifier() + 1; + + Potion potion = Potion.fromItemStack(thrownPotion.getItem()); + + if(maxLevel == 0 || level > maxLevel) { + event.setCancelled(true); + shooter.sendMessage(Color.translate("&cThis Potion Effect is disabled.")); + return; + } + if(potion.hasExtendedDuration() && !potionLimit.isExtended()) { + event.setCancelled(true); + shooter.sendMessage(Color.translate("&cThis Potion Effect is disabled.")); + return; + } + } else { + int maxLevel = potionLimit.getLevel(); + int level = potionEffect.getAmplifier(); + + Potion potion = Potion.fromItemStack(thrownPotion.getItem()); + + if(maxLevel == 0 || level > maxLevel) { + event.setCancelled(true); + return; + } + + if(potion.hasExtendedDuration() && !potionLimit.isExtended()) { + event.setCancelled(true); + return; + } + } + } + }); + }); + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/SellWandListener.java b/Factions/src/secondlife/network/victions/listeners/SellWandListener.java new file mode 100644 index 0000000..052fe19 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/SellWandListener.java @@ -0,0 +1,168 @@ +package secondlife.network.victions.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.block.Chest; +import org.bukkit.enchantments.Enchantment; +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.block.BlockBreakEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.victions.utilities.GlowEnchantment; +import secondlife.network.vituz.utilties.Color; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 18.07.2018. + */ +public class SellWandListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + @EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST) + public void onPlayerInteract(PlayerInteractEvent event) { + if(event.isCancelled()) return; + + if(event.getAction() == Action.RIGHT_CLICK_BLOCK || event.getAction() == Action.LEFT_CLICK_BLOCK) { + Player player = event.getPlayer(); + + if(player.getItemInHand() == null + || !player.getItemInHand().hasItemMeta() + || !player.getItemInHand().getItemMeta().hasLore()) { + return; + } + + ItemStack stack = new ItemStack(Material.DIAMOND_HOE); + ItemMeta meta = stack.getItemMeta(); + + List lore = new ArrayList<>(); + lore.add("&fRight click chest with"); + lore.add("&fthis item to sell it's contents."); + + List playerLore = new ArrayList<>(); + playerLore.addAll(player.getItemInHand().getItemMeta().getLore()); + + List itemLore = new ArrayList<>(); + itemLore.addAll(lore); + + itemLore.forEach(iLore -> { + if(playerLore.contains(iLore)) { + playerLore.remove(iLore); + } + }); + + int uses = -1; + + if(!playerLore.isEmpty() && playerLore.get(0).startsWith(Color.translate("&fUses: &d" + uses))) { + lore.add(playerLore.get(0)); + + String toModify = ChatColor.stripColor(playerLore.get(0)); + + toModify = toModify.replaceAll("[^\\d.]", ""); + uses = Integer.parseInt(toModify); + } + + meta.setLore(lore); + meta.setDisplayName(Color.translate("&dSell Wand")); + stack.setAmount(player.getItemInHand().getAmount()); + stack.setItemMeta(meta); + + if(!player.getItemInHand().equals(stack)) { + return; + } + + event.setCancelled(true); + + Block block = event.getClickedBlock(); + + if(block.getType().equals(Material.CHEST) || block.getType().equals(Material.TRAPPED_CHEST)) { + BlockBreakEvent toCall = new BlockBreakEvent(event.getClickedBlock(), player); + + Bukkit.getServer().getPluginManager().callEvent(toCall); + + if(toCall.isCancelled()) { + return; + } + + Chest chest = (Chest) block.getState(); + Inventory inventory = chest.getInventory(); + + int slot = 0; + int totalSale = 0; + + for(ItemStack stackInChest : inventory) { + if(stackInChest == null + || stackInChest.getType().equals(Material.AIR) + || stackInChest.getType() == null) { + slot++; + } else { + String type = stackInChest.getType().toString().toLowerCase(); + type = type.replace("_", ""); + + String dataCode = String.valueOf(stackInChest.getData().getData()); + + if(plugin.getSellWandManager().getPrices().containsKey(type)) { + chest.getInventory().setItem(slot, new ItemStack(Material.AIR)); + totalSale = totalSale + plugin.getSellWandManager().getPrices().get(type) * stackInChest.getAmount(); + } else if(plugin.getSellWandManager().getPrices().containsKey(type + ":" + dataCode)) { + chest.getInventory().setItem(slot, new ItemStack(Material.AIR)); + totalSale = totalSale + plugin.getSellWandManager().getPrices().get(type + ":" + dataCode) * stackInChest.getAmount(); + } + + slot++; + } + } + + FactionsData data = FactionsData.getByName(player.getName()); + data.setBalance(data.getBalance() + totalSale); + + player.sendMessage(Color.translate("&eYou have received &d$ " + totalSale + "&e.")); + + if(uses > 0) { + uses--; + + if(uses <= 0) { + player.setItemInHand(new ItemStack(Material.AIR)); + player.sendMessage(Color.translate("&cYour sell wand has no more uses left.")); + } else { + ItemStack toReplace = new ItemStack(Material.DIAMOND_HOE); + ItemMeta toReplaceMeta = toReplace.getItemMeta(); + List toReplaceLore = new ArrayList<>(); + + toReplaceLore.add("&fRight click chest with"); + toReplaceLore.add("&fthis item to sell it's contents."); + + Enchantment enchantment = GlowEnchantment.getGlow(); + + toReplaceMeta.addEnchant(enchantment, 1, true); + + toReplaceLore.add(""); + toReplaceLore.add("&fUses: &d" + uses); + + toReplaceMeta.setLore(toReplaceLore); + toReplaceMeta.setDisplayName(Color.translate("&dSell Wand")); + + toReplace.setAmount(player.getItemInHand().getAmount()); + toReplace.setItemMeta(toReplaceMeta); + + player.setItemInHand(toReplace); + + player.sendMessage(Color.translate("&eYour &dSell Wand &enow has &d" + uses + " &euses left.")); + } + } + } + } + } +} diff --git a/Factions/src/secondlife/network/victions/listeners/SpawnTagListener.java b/Factions/src/secondlife/network/victions/listeners/SpawnTagListener.java new file mode 100644 index 0000000..4e82f09 --- /dev/null +++ b/Factions/src/secondlife/network/victions/listeners/SpawnTagListener.java @@ -0,0 +1,122 @@ +package secondlife.network.victions.listeners; + +import com.massivecraft.factions.FPlayers; +import com.massivecraft.factions.Faction; +import com.massivecraft.factions.struct.Relation; +import org.bukkit.entity.Player; +import org.bukkit.entity.Projectile; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.event.player.PlayerCommandPreprocessEvent; +import org.bukkit.event.player.PlayerToggleFlightEvent; +import secondlife.network.victions.Victions; +import secondlife.network.victions.VictionsAPI; +import secondlife.network.vituz.data.PlayerData; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 28.07.2018. + */ +public class SpawnTagListener implements Listener { + + private Victions plugin = Victions.getInstance(); + + private String[] commands = { + "f home", "fhome", "f stuck", + "fstuck", "logout" + }; + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if(event.getEntity() instanceof Player) { + if(event.getDamager() instanceof Player) { + Player victim = (Player) event.getEntity(); + Player damager = (Player) event.getDamager(); + + Faction victimFaction = FPlayers.getInstance().getByPlayer(victim).getFaction(); + Faction damagerFaction = FPlayers.getInstance().getByPlayer(damager).getFaction(); + + if(victimFaction.isPeaceful() || damagerFaction.isPeaceful()) return; + if(victimFaction.equals(damagerFaction) && !victimFaction.isWilderness()) return; + if(!VictionsAPI.isPvPEnabled(victim) || !VictionsAPI.isPvPEnabled(damager)) return; + if(PlayerData.getByName(victim.getName()).isFrozen() || PlayerData.getByName(damager.getName()).isFrozen()) return; + //if(FactionsManager.getInstance().getVanishHandler().isVanished(victim) || FactionsManager.getInstance().getVanishHandler().isVanished(damager)) return; + if(victimFaction.getRelationTo(damagerFaction) == Relation.ALLY) return; + + plugin.getPlayerManager().applyTagger(damager, victim); + plugin.getPlayerManager().applyOther(damager, victim); + + } else if(event.getDamager() instanceof Projectile) { + + Projectile projectile = (Projectile) event.getDamager(); + + if(projectile.getShooter() instanceof Player) { + + Player shooter = (Player) projectile.getShooter(); + + if(shooter != event.getEntity()) { + Player player = (Player) event.getEntity(); + + Faction playerFaction = FPlayers.getInstance().getByPlayer(player).getFaction(); + Faction shooterFaction = FPlayers.getInstance().getByPlayer(shooter).getFaction(); + + if(playerFaction.isPeaceful() || shooterFaction.isPeaceful()) return; + if(playerFaction.equals(shooterFaction) && !playerFaction.isWilderness()) return; + if(!VictionsAPI.isPvPEnabled(player) || !VictionsAPI.isPvPEnabled(shooter)) return; + if(PlayerData.getByName(player.getName()).isFrozen() || PlayerData.getByName(shooter.getName()).isFrozen()) return; + //if(FactionsManager.getInstance().getVanishHandler().isVanished(player) || FactionsManager.getInstance().getVanishHandler().isVanished(shooter)) return; + if(playerFaction.getRelationTo(shooterFaction) == Relation.ALLY) return; + + plugin.getPlayerManager().applyTagger(shooter, player); + plugin.getPlayerManager().applyOther(shooter, player); + } + } + } + } + } + + @EventHandler + public void onPlayerToggleFlight(PlayerToggleFlightEvent event) { + Player player = event.getPlayer(); + + if(plugin.getPlayerManager().isSpawnTagActive(player)) { + player.setAllowFlight(false); + event.setCancelled(true); + } + } + + @EventHandler + public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { + Player player = event.getPlayer(); + + if(plugin.getPlayerManager().isSpawnTagActive(player)) { + boolean sendMessage = false; + + for(String command : commands) { + + if(event.getMessage().toLowerCase().startsWith("/" + command.toLowerCase())) { + event.setCancelled(true); + + sendMessage = true; + + } + + } + + if(sendMessage) { + player.sendMessage(Color.translate("&eYou can't use this command while you are spawn tagged.")); + } + + } + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + Player player = event.getEntity(); + if(plugin.getPlayerManager().getTagged().containsKey(player.getUniqueId())) { + plugin.getPlayerManager().getTagged().remove(player.getUniqueId()); + } + } +} diff --git a/Factions/src/secondlife/network/victions/managers/EntityLimiterManager.java b/Factions/src/secondlife/network/victions/managers/EntityLimiterManager.java new file mode 100644 index 0000000..61b9958 --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/EntityLimiterManager.java @@ -0,0 +1,37 @@ +package secondlife.network.victions.managers; + +import lombok.Getter; +import org.bukkit.configuration.ConfigurationSection; +import org.bukkit.entity.EntityType; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; + +import java.util.HashMap; +import java.util.Map; + +/** + * Created by Marko on 18.07.2018. + */ + +@Getter +public class EntityLimiterManager extends Manager { + + private Map disabledEntities = new HashMap<>(); + + public EntityLimiterManager(Victions plugin) { + super(plugin); + + handleSetup(); + } + + private void handleSetup() { + ConfigurationSection section = plugin.getMainConfig().getConfigurationSection("potion-limiter"); + + section.getKeys(false).forEach(type -> { + EntityType entityType = EntityType.valueOf(type); + boolean enabled = section.getBoolean(type); + + disabledEntities.put(entityType, enabled); + }); + } +} diff --git a/Factions/src/secondlife/network/victions/managers/FactionsManager.java b/Factions/src/secondlife/network/victions/managers/FactionsManager.java new file mode 100644 index 0000000..1754c3e --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/FactionsManager.java @@ -0,0 +1,78 @@ +package secondlife.network.victions.managers; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; +import secondlife.network.vituz.utilties.Color; + +/** + * Created by Marko on 18.07.2018. + */ +public class FactionsManager extends Manager { + + public FactionsManager(Victions plugin) { + super(plugin); + } + + public void handleCraftTNT(Player player) { + Inventory inventory = player.getInventory(); + + int sandCount = countItems(inventory, Material.SAND, 0); + int sulphurCount = countItems(inventory, Material.SULPHUR, 0); + int sandDivided = sandCount / 4; + int sulphurDivided = sulphurCount / 5; + + if(sandDivided == 0 || sulphurDivided == 0) { + player.sendMessage(Color.translate("&eYou don't have enough &dSand &eor &dGunpowder&e.")); + return; + } + + int maxTNTAmount = Math.min(sandDivided, sulphurDivided); + int sandExtra = sandCount - (maxTNTAmount * 4); + int sulphurExtra = sulphurCount - (maxTNTAmount * 5); + + removeInventoryItems(inventory, Material.SAND, sandCount - sandExtra); + removeInventoryItems(inventory, Material.SULPHUR, sulphurCount - sulphurExtra); + + inventory.addItem(new ItemStack(Material.TNT, maxTNTAmount)); + + player.sendMessage(Color.translate("&eYou have crafted &d" + maxTNTAmount + " &eTNT.")); + } + + private int countItems(Inventory inventory, Material material, int durability) { + ItemStack[] items = inventory.getContents(); + + int amount = 0; + + for(ItemStack item : items) { + if(item != null && item.getType() == material && (item.getDurability() == (short) durability)) { + amount += item.getAmount(); + } + } + + return amount; + } + + private void removeInventoryItems(Inventory inventory, Material material, int amount) { + for(ItemStack item : inventory.getContents()) { + if(item != null && item.getType() == material) { + int newAmount = item.getAmount() - amount; + + if(newAmount > 0) { + item.setAmount(newAmount); + break; + } else { + inventory.removeItem(item); + amount = -newAmount; + + if(amount == 0) { + break; + } + } + } + } + } +} diff --git a/Factions/src/secondlife/network/victions/managers/GlassManager.java b/Factions/src/secondlife/network/victions/managers/GlassManager.java new file mode 100644 index 0000000..e31b077 --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/GlassManager.java @@ -0,0 +1,128 @@ +package secondlife.network.victions.managers; + +import com.sk89q.worldguard.protection.flags.DefaultFlag; +import com.sk89q.worldguard.protection.flags.StateFlag; +import com.sk89q.worldguard.protection.regions.ProtectedRegion; +import org.bukkit.Location; +import org.bukkit.block.Block; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import secondlife.network.victions.Victions; +import secondlife.network.victions.VictionsAPI; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.victions.utilities.Manager; + +import java.util.*; + +public class GlassManager extends Manager implements Listener { + + private Map> locationsWorldGuard = new HashMap<>(); + + public GlassManager(Victions plugin) { + super(plugin); + } + + public void handleMove(Player player, Location from, Location to) { + if(plugin.getPlayerManager().isSpawnTagActive(player)) { + for(ProtectedRegion protectedRegion : VictionsAPI.getWorldGuard().getRegionManager(from.getWorld()).getRegions().values()) { + if(protectedRegion != null && protectedRegion.getFlag(DefaultFlag.PVP) == StateFlag.State.DENY) { + if(protectedRegion.contains(to.getBlockX(), to.getBlockY(), to.getBlockZ())) { + to = from; + } + + renderGlassWorldGuard(player, to, protectedRegion); + } + } + } else { + this.removeGlass(player); + } + } + + private void renderGlassWorldGuard(Player player, Location location, ProtectedRegion protectedRegion) { + if (protectedRegion == null) return; + + int closestX = this.closest(location.getBlockX(), protectedRegion.getMinimumPoint().getBlockX(), protectedRegion.getMaximumPoint().getBlockX()); + int closestZ = this.closest(location.getBlockZ(), protectedRegion.getMinimumPoint().getBlockZ(), protectedRegion.getMaximumPoint().getBlockZ()); + + boolean updateX = Math.abs(location.getX() - closestX) < 8; + boolean updateZ = Math.abs(location.getZ() - closestZ) < 8; + + if(!updateX && !updateZ) return; + + ArrayList list = new ArrayList(); + if(updateX) { + for(int y = -4; y < 5; y++) { + for(int z = -7; z < 8; z++) { + if(this.isInside(protectedRegion.getMinimumPoint().getBlockZ(), protectedRegion.getMaximumPoint().getBlockZ(), location.getBlockZ() + z)) { + Location location1 = new Location(location.getWorld(), Double.valueOf(closestX), Double.valueOf(location.getBlockY() + y), Double.valueOf(location.getBlockZ() + z)); + if(!list.contains(location1) && !location1.getBlock().getType().isOccluding()) { + list.add(location1); + } + } + } + } + } + if(updateZ) { + for(int y = -4; y < 5; y++) { + for(int x = -7; x < 8; x++) { + if(this.isInside(protectedRegion.getMinimumPoint().getBlockX(), protectedRegion.getMaximumPoint().getBlockX(), location.getBlockX() + x)) { + Location location2 = new Location(location.getWorld(), Double.valueOf(location.getBlockX() + x), Double.valueOf(location.getBlockY() + y), Double.valueOf(closestZ)); + if(!list.contains(location2) && !location2.getBlock().getType().isOccluding()) { + list.add(location2); + } + } + } + } + } + this.updateWorldGuard(player, list); + } + + private int closest(int player, int... array) { + int current = array[0]; + for(int i = 0; i < array.length; i++) { + if(Math.abs(player - array[i]) < Math.abs((player - current))) { + current = array[i]; + } + } + return current; + } + + private boolean isInside(int a, int b, int c) { + return Math.abs(a - b) == Math.abs(c - a) + Math.abs(c - b); + } + + private void updateWorldGuard(Player player, List list) { + if(this.locationsWorldGuard.containsKey(player.getUniqueId())) { + + for(Location location : this.locationsWorldGuard.get(player.getUniqueId())) { + + if(!list.contains(location)) { + Block block = location.getBlock(); + + player.sendBlockChange(location, block.getTypeId(), block.getData()); + } + } + + for(Location location2 : list) { + player.sendBlockChange(location2, 95, (byte)14); + } + + } else { + for (final Location location3 : list) { + player.sendBlockChange(location3, 95, (byte)14); + } + } + + this.locationsWorldGuard.put(player.getUniqueId(), list); + } + + private void removeGlass(Player player) { + if(this.locationsWorldGuard.containsKey(player.getUniqueId())) { + for(Location location : this.locationsWorldGuard.get(player.getUniqueId())) { + Block block = location.getBlock(); + player.sendBlockChange(location, block.getTypeId(), block.getData()); + } + this.locationsWorldGuard.remove(player.getUniqueId()); + } + } +} diff --git a/Factions/src/secondlife/network/victions/managers/KitManager.java b/Factions/src/secondlife/network/victions/managers/KitManager.java new file mode 100644 index 0000000..281b95c --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/KitManager.java @@ -0,0 +1,92 @@ +package secondlife.network.victions.managers; + +import lombok.Getter; +import org.bukkit.configuration.ConfigurationSection; +import org.bukkit.configuration.file.FileConfiguration; +import org.bukkit.inventory.ItemStack; +import secondlife.network.victions.Victions; +import secondlife.network.victions.kit.Kit; +import secondlife.network.victions.utilities.Manager; + +import java.io.IOException; +import java.util.*; + +public class KitManager extends Manager { + + private Victions plugin = Victions.getInstance(); + private Map kits = new HashMap<>(); + + @Getter + private List rankedKits = new ArrayList<>(); + + public KitManager(Victions plugin) { + super(plugin); + + this.loadKits(); + + this.kits.entrySet().stream() + .filter(kit -> kit.getValue().isEnabled()) + .forEach(kit -> this.rankedKits.add(kit.getKey())); + } + + public void loadKits() { + FileConfiguration fileConfig = plugin.getKitsConfig(); + ConfigurationSection kitSection = fileConfig.getConfigurationSection("kits"); + + if (kitSection == null) { + return; + } + + kitSection.getKeys(false).forEach(name -> { + ItemStack[] contents = ((List) kitSection.get(name + ".contents")).toArray(new ItemStack[0]); + ItemStack[] armor = ((List) kitSection.get(name + ".armor")).toArray(new ItemStack[0]); + + ItemStack icon = (ItemStack) kitSection.get(name + ".icon"); + + boolean enabled = kitSection.getBoolean(name + ".enabled"); + int delay = kitSection.getInt(name + ".delay"); + + Kit kit = new Kit(name, contents, armor, icon, enabled, delay); + this.kits.put(name, kit); + }); + } + + public void saveKits() { + FileConfiguration fileConfig = plugin.getKitsConfig(); + + fileConfig.set("kits", null); + + this.kits.forEach((kitName, kit) -> { + if (kit.getIcon() != null && kit.getContents() != null && kit.getArmor() != null) { + fileConfig.set("kits." + kitName + ".contents", kit.getContents()); + fileConfig.set("kits." + kitName + ".armor", kit.getArmor()); + fileConfig.set("kits." + kitName + ".icon", kit.getIcon()); + fileConfig.set("kits." + kitName + ".enabled", kit.isEnabled()); + fileConfig.set("kits." + kitName + ".delay", kit.getDelay()); + } + }); + + try { + fileConfig.save(plugin.getKitsConfig().getFile()); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public void deleteKit(String name) { + this.kits.remove(name); + } + + public void createKit(String name) { + this.kits.put(name, new Kit(name)); + } + + public Collection getKits() { + return this.kits.values(); + } + + public Kit getKit(String name) { + return this.kits.get(name); + } + +} diff --git a/Factions/src/secondlife/network/victions/managers/MobStackManager.java b/Factions/src/secondlife/network/victions/managers/MobStackManager.java new file mode 100644 index 0000000..0c105e2 --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/MobStackManager.java @@ -0,0 +1,130 @@ +package secondlife.network.victions.managers; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.World; +import org.bukkit.entity.*; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 08.07.2018. + */ +public class MobStackManager extends Manager { + + private List mobList = new ArrayList<>(); + private String[] mobs = new String[] {"BLAZE"}; + + public MobStackManager(Victions plugin) { + super(plugin); + + handleLoad(); + handleStartTask(); + } + + public void handleOnDisable() { + if(!mobList.isEmpty()) mobList.clear(); + + for(World world : Bukkit.getWorlds()) { + for(LivingEntity entity : world.getLivingEntities()) { + if(entity instanceof Monster && entity.isCustomNameVisible()) { + entity.remove(); + } + } + } + } + + public void handleLoad() { + if(!mobList.isEmpty()) mobList.clear(); + for(String entityName : mobs) { + EntityType entityType = EntityType.valueOf(entityName.toUpperCase()); + + mobList.add(entityType); + } + } + + public void handleStartTask() { + new BukkitRunnable() { + public void run() { + int radius = 5; + + List entityTypes = mobList; + + for(World world : Bukkit.getServer().getWorlds()) { + for(LivingEntity entity : world.getLivingEntities()) { + if(entityTypes.contains(entity.getType()) && entity.isValid()) { + for(Entity nearby : entity.getNearbyEntities((double)radius, (double)radius, (double)radius)) { + if(nearby instanceof LivingEntity && nearby.isValid() && entityTypes.contains(nearby.getType())) { + handleStackOne(entity, (LivingEntity)nearby, ChatColor.RED); + } + } + } + } + } + } + }.runTaskTimer(plugin, 100L, 100L); + } + + public void handleUnstackOne(LivingEntity livingEntity, ChatColor color) { + String displayName = livingEntity.getCustomName(); + int stackSize = getAmount(displayName, color); + if(stackSize <= 1) return; + --stackSize; + String newDisplayName = color + "x" + stackSize; + LivingEntity newEntity = (LivingEntity)livingEntity.getWorld().spawnEntity(livingEntity.getLocation(), livingEntity.getType()); + + newEntity.setCustomName(newDisplayName); + newEntity.setCustomNameVisible(false); + livingEntity.setHealth(0.0); + + if(newEntity instanceof Ageable) { + ((Ageable) newEntity).setAdult(); + } + + if(newEntity instanceof Zombie) { + ((Zombie) newEntity).setBaby(false); + } + } + + public void handleStackOne(LivingEntity target, LivingEntity stackee, ChatColor color) { + if (target.getType() != stackee.getType()) return; + + String displayName = target.getCustomName(); + int oldAmount = getAmount(displayName, color); + int newAmount = 1; + if(isStacked(stackee, color)) newAmount = getAmount(stackee.getCustomName(), color); + stackee.remove(); + if(oldAmount == 0) { + int amount = newAmount + 1; + String newDisplayName = color + "x" + amount; + target.setCustomName(newDisplayName); + target.setCustomNameVisible(true); + } else { + int amount = oldAmount + newAmount; + String newDisplayName = color + "x" + amount; + target.setCustomName(newDisplayName); + } + } + + public int getAmount(String displayName, ChatColor color) { + if(displayName == null) return 0; + + String nameColor = ChatColor.getLastColors(displayName); + if (nameColor.equals('§' + color.getChar())) return 0; + String name1 = displayName.replace("x", ""); + String name2 = ChatColor.stripColor(name1.replace("§f", "")); + name2 = ChatColor.stripColor(name2); + if(!name2.matches("[0-9]+")) return 0; + if(name2.length() > 4) return 0; + + return Integer.parseInt(name2); + } + + public boolean isStacked(LivingEntity entity, ChatColor color) { + return getAmount(entity.getCustomName(), color) != 0; + } +} diff --git a/Factions/src/secondlife/network/victions/managers/PlayerManager.java b/Factions/src/secondlife/network/victions/managers/PlayerManager.java new file mode 100644 index 0000000..5a02f50 --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/PlayerManager.java @@ -0,0 +1,241 @@ +package secondlife.network.victions.managers; + +import com.massivecraft.factions.FPlayer; +import com.massivecraft.factions.FPlayers; +import lombok.Getter; +import org.bukkit.Material; +import org.bukkit.command.CommandSender; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.Potion; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.victions.utilities.GlowEnchantment; +import secondlife.network.victions.utilities.Manager; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.item.ItemBuilder; + +import java.util.*; + +/** + * Created by Marko on 14.07.2018. + */ + +@Getter +public class PlayerManager extends Manager { + + private Map tagged = new HashMap<>(); + + public PlayerManager(Victions plugin) { + super(plugin); + } + + public void handleToggleJellyLegs(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + data.setJellyLegs(!data.isJellyLegs()); + player.sendMessage(Color.translate("&eYou have " + (data.isJellyLegs() ? "&aEnabled" : "&cDisabled") + + " &ejelly legs.")); + } + + public void handleToggleNightVision(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + data.setNightVision(!data.isNightVision()); + player.sendMessage(Color.translate("&eYou have " + (data.isNightVision() ? "&aEnabled" : "&cDisabled") + + " &enight vision.")); + + if(data.isNightVision()) { + if(!player.hasPotionEffect(PotionEffectType.NIGHT_VISION)) { + player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0)); + } + } else { + if(player.hasPotionEffect(PotionEffectType.NIGHT_VISION)) { + player.removePotionEffect(PotionEffectType.NIGHT_VISION); + } + } + } + + public void handleGiveHarvesterhoe(CommandSender sender, Player target) { + sender.sendMessage(Color.translate("&eYou gave &dHarvester Hoe &eto &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&eYou have received &dHarvester Hoe&e.")); + + Enchantment enchantment = GlowEnchantment.getGlow(); + target.getInventory().addItem(new ItemBuilder(Material.DIAMOND_HOE).name("&dHarvester Hoe").lore("&fYou don't need to &dpickup sugarcane").enchantment(enchantment).build()); + } + + public void handleGiveInfusion(CommandSender sender, Player target, String type) { + if(!type.toLowerCase().contains("5x5") || !type.toLowerCase().contains("3x3")) { + sender.sendMessage(Color.translate("&cPlease choose &l5x5&c or &l3x3&c!")); + return; + } + + sender.sendMessage(Color.translate("&eYou gave &dInfusion Pickaxe " + type + " &eto &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&eYou have received &dInfusion Pickaxe " + type + "&e.")); + + Enchantment DIG_SPEED = Enchantment.DIG_SPEED; + Enchantment DURABILITY = Enchantment.DURABILITY; + + target.getInventory().addItem(new ItemBuilder(Material.DIAMOND_HOE).enchantment(DIG_SPEED, 5).enchantment(DURABILITY, 3).name("&dInfusion Pickaxe").lore("&fBreak blocks in &d" + (type.equals("5x5") ? "5x5" : "3x3")).build()); + } + + public void handleToggleFactionFly(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(isSpawnTagActive(player)) { + player.sendMessage(Color.translate("&cYou can't use this command while &lSpawn Tag&c is active.")); + return; + } + + FPlayer factionPlayer = FPlayers.getInstance().getByPlayer(player); + + if(data.isFactionFly()) { + data.setFactionFly(false); + player.setAllowFlight(false); + player.setFlying(false); + } else { + if(factionPlayer.getFaction().isWilderness() && !factionPlayer.isInOwnTerritory()) { + player.sendMessage(Color.translate("&eYou must be in your &dfaction's &eteritory.")); + return; + } + + data.setFactionFly(true); + player.setAllowFlight(true); + player.setFlying(true); + } + + player.sendMessage(Color.translate("&eYou have " + (data.isFactionFly() ? "&aEnabled" : "&cDisabled") + + " &efaction fly.")); + } + + public void handlePotionStack(Player player) { + Map potionMap = new HashMap<>(); + + for(int i = 0; i < player.getInventory().getSize(); ++i) { + ItemStack item = player.getInventory().getItem(i); + + if(item != null && item.getType() == Material.POTION && !Potion.fromItemStack(item).isSplash() && item.getDurability() != 0) { + ItemStack contains = null; + + for(ItemStack stack : potionMap.keySet()) { + if(stack.getDurability() == item.getDurability() && stack.getItemMeta().equals(item.getItemMeta())) { + contains = stack; + break; + } + } + + if(contains != null) { + potionMap.put(contains, potionMap.get(contains) + item.getAmount()); + } else { + potionMap.put(item, item.getAmount()); + } + } + } + + if(potionMap.isEmpty()) { + player.sendMessage(Color.translate("&cYou don't have any potions to stack.")); + return; + } + + ItemStack[] items = player.getInventory().getContents(); + + for(int j = 0; j < items.length; ++j) { + if(items[j] != null + && items[j].getType() == Material.POTION + && !Potion.fromItemStack(items[j]).isSplash() + && items[j].getDurability() != 0) { + + player.getInventory().clear(j); + } + } + + potionMap.entrySet().forEach(entry -> { + ItemStack stack = entry.getKey(); + stack.setAmount(entry.getValue()); + + player.getInventory().addItem(stack); + }); + + player.updateInventory(); + player.sendMessage(Color.translate("&eYour potions are now stacked.")); + } + + public void handleSellwand(CommandSender sender, Player target, int uses) { + ItemBuilder builder = new ItemBuilder(Material.DIAMOND_HOE); + Enchantment enchantment = GlowEnchantment.getGlow(); + builder.enchantment(enchantment); + builder.name("&dSell Wand"); + + List lore = new ArrayList<>(); + lore.add("&fRight click chest with"); + lore.add("&fthis item to sell it's contents."); + + if(uses > 0) { + lore.add(""); + lore.add("&fUses: &d" + uses); + } + + builder.lore(lore); + + target.getInventory().addItem(builder.build()); + + sender.sendMessage(Color.translate("&eYou gave &dSell Wand &eto &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&eYou have received &dSell Wand&e.")); + } + + public void handleChunkBuster(CommandSender sender, Player target, int amount) { + ItemBuilder builder = new ItemBuilder(Material.DIAMOND_HOE); + + builder.amount(amount); + builder.name("&dChunk Buster"); + builder.lore("&fPlace it down to start busting chunk."); + + sender.sendMessage(Color.translate("&eYou gave &dChunk Buster &eto &d" + target.getName() + "&e.")); + target.sendMessage(Color.translate("&eYou have received &dChunk Buster&e.")); + } + + public boolean isSpawnTagActive(Player player) { + return tagged.containsKey(player.getUniqueId()) && System.currentTimeMillis() < tagged.get(player.getUniqueId()); + } + + public void applyTagger(Player tagger, Player other) { + if(!tagged.containsKey(tagger.getUniqueId())) { + tagger.sendMessage(Color.translate("&eYou have spawn tagged &d" + other.getName() + " &efor &d20 seconds&e.")); + tagger.sendMessage(Color.translate("&cIf you logout while &lSpawn Tag&c is active you will die!")); + } + + this.disableFlyAndInvisibility(tagger); + + tagged.put(tagger.getUniqueId(), System.currentTimeMillis() + (20 * 1000)); + } + + public void applyOther(Player tagger, Player other) { + if(!tagged.containsKey(other.getUniqueId())) { + other.sendMessage(Color.translate("&eYou have spawn tagged &d" + tagger.getName() + " &efor &d20 seconds&e.")); + other.sendMessage(Color.translate("&cIf you logout while &lSpawn Tag&c is active you will die!")); + } + + this.disableFlyAndInvisibility(other); + + tagged.put(other.getUniqueId(), System.currentTimeMillis() + (20 * 1000)); + } + + public long getSpawnTagMillisecondsLeft(Player player) { + if(tagged.containsKey(player.getUniqueId())) { + return Math.max(tagged.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + + return 0L; + } + + private void disableFlyAndInvisibility(Player player) { + if(player.isFlying()) { + player.setFlying(false); + } + + if(player.hasPotionEffect(PotionEffectType.INVISIBILITY)) { + player.removePotionEffect(PotionEffectType.INVISIBILITY); + } + } +} diff --git a/Factions/src/secondlife/network/victions/managers/PotionLimitManager.java b/Factions/src/secondlife/network/victions/managers/PotionLimitManager.java new file mode 100644 index 0000000..ad818d5 --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/PotionLimitManager.java @@ -0,0 +1,51 @@ +package secondlife.network.victions.managers; + +import lombok.Getter; +import lombok.Setter; +import org.bukkit.configuration.ConfigurationSection; +import org.bukkit.potion.PotionEffectType; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 18.07.2018. + */ + +@Getter +public class PotionLimitManager extends Manager { + + private List potionLimits = new ArrayList<>(); + + public PotionLimitManager(Victions plugin) { + super(plugin); + + handleSetup(); + } + + private void handleSetup() { + ConfigurationSection section = plugin.getMainConfig().getConfigurationSection("potion-limiter"); + + section.getKeys(false).forEach(type -> { + if(section.getInt(type + ".level") != -1) { + PotionLimit potionLimit = new PotionLimit(); + + potionLimit.setType(PotionEffectType.getByName(type)); + potionLimit.setLevel(section.getInt(type + ".level")); + potionLimit.setExtended(section.getBoolean(type + ".extended")); + + potionLimits.add(potionLimit); + } + }); + } + + @Getter + @Setter + public class PotionLimit { + private PotionEffectType type; + private int level; + private boolean extended; + } +} diff --git a/Factions/src/secondlife/network/victions/managers/SellWandManager.java b/Factions/src/secondlife/network/victions/managers/SellWandManager.java new file mode 100644 index 0000000..e7501ae --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/SellWandManager.java @@ -0,0 +1,35 @@ +package secondlife.network.victions.managers; + +import lombok.Getter; +import org.bukkit.configuration.ConfigurationSection; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; + +import java.util.HashMap; +import java.util.Map; + +/** + * Created by Marko on 18.07.2018. + */ + +@Getter +public class SellWandManager extends Manager { + + private Map prices = new HashMap<>(); + + public SellWandManager(Victions plugin) { + super(plugin); + + handleSetup(); + } + + private void handleSetup() { + ConfigurationSection section = plugin.getMainConfig().getConfigurationSection("prices"); + + section.getKeys(false).forEach(type -> { + int price = plugin.getMainConfig().getInt("prices." + type); + + prices.put(type, price); + }); + } +} diff --git a/Factions/src/secondlife/network/victions/managers/TeleportManager.java b/Factions/src/secondlife/network/victions/managers/TeleportManager.java new file mode 100644 index 0000000..2edca8f --- /dev/null +++ b/Factions/src/secondlife/network/victions/managers/TeleportManager.java @@ -0,0 +1,24 @@ +package secondlife.network.victions.managers; + +import lombok.Getter; +import secondlife.network.victions.Victions; +import secondlife.network.victions.utilities.Manager; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +/** + * Created by Marko on 28.07.2018. + */ + +@Getter +public class TeleportManager extends Manager { + + private Map tpaUsers = new HashMap<>(); + private Map tpaHereUsers = new HashMap<>(); + + public TeleportManager(Victions plugin) { + super(plugin); + } +} diff --git a/Factions/src/secondlife/network/victions/player/FactionsData.java b/Factions/src/secondlife/network/victions/player/FactionsData.java new file mode 100644 index 0000000..f7c6a17 --- /dev/null +++ b/Factions/src/secondlife/network/victions/player/FactionsData.java @@ -0,0 +1,265 @@ +package secondlife.network.victions.player; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.mongodb.client.model.Filters; +import com.mongodb.client.model.UpdateOptions; +import lombok.Getter; +import lombok.Setter; +import org.bson.Document; +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.metadata.FixedMetadataValue; +import secondlife.network.victions.Victions; +import secondlife.network.victions.kit.Kit; +import secondlife.network.victions.utilities.CustomLocation; +import secondlife.network.vituz.Vituz; +import secondlife.network.vituz.VituzAPI; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Permission; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +@Getter +@Setter +public class FactionsData { + + @Getter + public static Map factionDatas = new HashMap<>(); + + private String name; + private String realName; + + private int kills = 0; + private int deaths = 0; + private int balance = 0; + + private boolean jellyLegs = false; + private boolean nightVision = false; + private boolean factionFly = false; // Ne treba save + private boolean loaded; + private boolean needToTeleport = false; + + private Map kitCooldown = new HashMap<>(); + private Map homeCooldown = new HashMap<>(); + private Map logoutCooldown = new HashMap<>(); + private Map pearlCooldown = new HashMap<>(); + private Map homes = new HashMap<>(); + + public FactionsData(String name) { + this.name = name; + + factionDatas.put(name, this); + } + + public void save() { + if(!loaded) return; + + Document document = new Document(); + + JsonArray homeElements = new JsonArray(); + + homes.entrySet().forEach(home -> { + JsonObject homeDocument = new JsonObject(); + + homeDocument.addProperty("home_name", home.getKey()); + homeDocument.addProperty("home_location", CustomLocation.locationToString(home.getValue())); + + homeElements.add(homeDocument); + }); + + document.put("name", name.toLowerCase()); + document.put("realName", name); + document.put("kills", kills); + document.put("deaths", deaths); + document.put("balance", balance); + document.put("jelly_legs", jellyLegs); + document.put("night_vision", nightVision); + document.put("homes", homeElements); + + Vituz.getInstance().getDatabaseManager().getFactionsProfiles().replaceOne(Filters.eq("name", this.name.toLowerCase()), document, new UpdateOptions().upsert(true)); + + loaded = false; + } + + public void load() { + Document document = (Document) Vituz.getInstance().getDatabaseManager().getFactionsProfiles().find(Filters.eq("name", this.name.toLowerCase())).first(); + + if(document != null) { + new JsonParser().parse(document.getString("homes")).getAsJsonArray().forEach(element -> { + JsonObject homeDocument = element.getAsJsonObject(); + + if(homeDocument.has("home_name")) { + setHome(homeDocument.get("home_name").getAsString(), + CustomLocation.stringToLocation(homeDocument.get("home_location").getAsString())); + } + }); + + this.realName = document.getString("realName"); + this.kills = document.getInteger("kills"); + this.deaths = document.getInteger("deaths"); + this.balance = document.getInteger("balance"); + this.jellyLegs = document.getBoolean("jelly_legs"); + this.nightVision = document.getBoolean("night_vision"); + } + + loaded = true; + } + + public boolean isPearlActive(Player player) { + return pearlCooldown.containsKey(player.getUniqueId()) && System.currentTimeMillis() < pearlCooldown.get(player.getUniqueId()); + } + + public void cancelPearl(Player player) { + if(pearlCooldown.containsKey(player.getUniqueId())) { + pearlCooldown.remove(player.getUniqueId()); + } + } + + public void applyPearlCooldown(Player player) { + pearlCooldown.put(player.getUniqueId(), System.currentTimeMillis() + (15 * 1000)); + } + + public long getPearlMillisecondsLeft(Player player) { + if(pearlCooldown.containsKey(player.getUniqueId())) { + return Math.max(pearlCooldown.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + + return 0L; + } + + public boolean isLogoutActive(Player player) { + return logoutCooldown.containsKey(player.getUniqueId()) && System.currentTimeMillis() < logoutCooldown.get(player.getUniqueId()); + } + + public void cancelLogout(Player player) { + if(logoutCooldown.containsKey(player.getUniqueId())) { + logoutCooldown.remove(player.getUniqueId()); + } + } + + public void applyLogoutCooldown(Player player) { + logoutCooldown.put(player.getUniqueId(), System.currentTimeMillis() + (30 * 1000)); + + Bukkit.getScheduler().runTaskLater(Victions.getInstance(), () -> { + if(isLogoutActive(player)) { + player.setMetadata("LogoutCommand", new FixedMetadataValue(Victions.getInstance(), true)); + player.kickPlayer(Color.translate("&cYou have been safely logged out from the server!")); + cancelLogout(player); + } + }, 30 * 20L); + } + + public long getLoogutMillisecondsLeft(Player player) { + if(logoutCooldown.containsKey(player.getUniqueId())) { + return Math.max(logoutCooldown.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + + return 0L; + } + + private void setHome(String home, CustomLocation location) { + homes.put(home, location); + } + + public boolean isHomeActive(Player player) { + return homeCooldown.containsKey(player.getUniqueId()) && System.currentTimeMillis() < homeCooldown.get(player.getUniqueId()); + } + + public void cancelHome(Player player) { + if(homeCooldown.containsKey(player.getUniqueId())) { + homeCooldown.remove(player.getUniqueId()); + } + } + + public void applyHomeCooldown(Player player, Location location) { + int cooldown = 5; + + if(player.hasPermission(Permission.OP_PERMISSION)) { + cooldown = 0; + } else if(player.hasPermission(Permission.XENON_PERMISSION) || player.hasPermission(Permission.PARTNER_PERMISSION)) { + cooldown = 3; + } + + homeCooldown.put(player.getUniqueId(), System.currentTimeMillis() + (cooldown * 1000)); + + Bukkit.getScheduler().runTaskLater(Victions.getInstance(), () -> { + if(isHomeActive(player)) { + player.teleport(location); + player.sendMessage(Color.translate("&eYou have been teleported to home.")); + cancelHome(player); + } + }, cooldown * 20L); + } + + public long getHomeMillisecondsLeft(Player player) { + if(homeCooldown.containsKey(player.getUniqueId())) { + return Math.max(homeCooldown.get(player.getUniqueId()) - System.currentTimeMillis(), 0L); + } + + return 0L; + } + + public boolean isKitActive(Player player, Kit kit) { + if(kit.getDelay() == 0 + || player.hasPermission(Permission.OP_PERMISSION) + || !kitCooldown.containsKey(kit.getName())) { + + return false; + } + + long value = kitCooldown.get(kit.getName()); + + return value == -1L || System.currentTimeMillis() < value; + } + + public void applyKitCooldown(Kit kit) { + kitCooldown.put(kit.getName(), (kit.getDelay() == -1) ? -1L : (System.currentTimeMillis() + kit.getDelay() * 1000)); + } + + public long getKitMillisecondsLeft(Kit kit) { + if(kitCooldown.containsKey(kit.getName())) { + return Math.max(kitCooldown.get(kit.getName()) - System.currentTimeMillis(), 0L); + } + + return 0L; + } + + public int getHomeLimit() { + switch (VituzAPI.getRankName(realName)) { + case "Xenon": + case "Partner": { + return 10; + } + + case "Krypton": { + return 7; + } + + case "Titanium": + case "Media": { + return 6; + } + + case "Nitrogen": { + return 5; + } + + case "Hydrogen": { + return 3; + } + } + + return 1; + } + + public static FactionsData getByName(String name) { + FactionsData data = factionDatas.get(name); + + return data == null ? new FactionsData(name) : factionDatas.get(name); + } +} \ No newline at end of file diff --git a/Factions/src/secondlife/network/victions/providers/ScoreboardProvider.java b/Factions/src/secondlife/network/victions/providers/ScoreboardProvider.java new file mode 100644 index 0000000..e761bbb --- /dev/null +++ b/Factions/src/secondlife/network/victions/providers/ScoreboardProvider.java @@ -0,0 +1,105 @@ +package secondlife.network.victions.providers; + +import org.bukkit.entity.Player; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.providers.ScoreProvider; +import secondlife.network.vituz.providers.scoreboard.ScoreboardConfiguration; +import secondlife.network.vituz.providers.scoreboard.TitleGetter; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.StringUtils; +import subside.plugins.koth.adapter.KothClassic; +import subside.plugins.koth.adapter.KothHandler; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Marko on 18.07.2018. + */ +public class ScoreboardProvider implements ScoreProvider { + + public static ScoreboardConfiguration create() { + ScoreboardConfiguration sc = new ScoreboardConfiguration(); + + sc.setTitleGetter(new TitleGetter("&5&lSecondLife")); + sc.setScoreGetter(new ScoreboardProvider()); + + return sc; + } + + @Override + public String[] getScores(Player player) { + List board = new ArrayList<>(); + + FactionsData data = FactionsData.getByName(player.getName()); + + if(data == null) { + return null; + } + + if(isActive(player)) { + board.add("&7&m----------------------"); + } + + if(data.isHomeActive(player)) { + board.add("&9&lHome: &9" + StringUtils.getRemaining(data.getHomeMillisecondsLeft(player), true)); + } + + if(data.isLogoutActive(player)) { + board.add("&4&lLogout: &f" + StringUtils.getRemaining(data.getLoogutMillisecondsLeft(player), true)); + } + + if(data.isPearlActive(player)) { + board.add("&e&lEnderpearl: &f" + StringUtils.getRemaining(data.getPearlMillisecondsLeft(player), true)); + } + + if(Victions.getInstance().getPlayerManager().isSpawnTagActive(player)) { + board.add("&c&lSpawn Tag: &f" + StringUtils.getRemaining(Victions.getInstance().getPlayerManager().getSpawnTagMillisecondsLeft(player), false)); + } + + if(data.isNightVision()) { + board.add("&b&lNight Vision: &aEnabled"); + } + + if(data.isJellyLegs()) { + board.add("&e&lJelly Legs: &aEnabled"); + } + + if(data.isFactionFly()) { + board.add("&2&lFaction Fly: &aEnabled"); + } + + if(!KothHandler.getInstance().getRunningKoths().isEmpty()) { + for(int i = 0; i < KothHandler.getInstance().getRunningKoths().size(); i++) { + KothClassic koth = (KothClassic) KothHandler.getInstance().getRunningKoths().get(i); + String time = koth.getTimeObject().getTimeLeftFormatted(); + + board.add("&9&l" + koth.getKoth().getName() + ": &f" + time); + } + } + + if(isActive(player)) { + board.add("&1&7&m----------------------"); + } + + return board.stream().map(Color::translate).toArray(String[]::new); + } + + private boolean isActive(Player player) { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.isHomeActive(player) + || data.isLogoutActive(player) + || data.isPearlActive(player) + || Victions.getInstance().getPlayerManager().isSpawnTagActive(player) + || data.isNightVision() + || data.isJellyLegs() + || !KothHandler.getInstance().getRunningKoths().isEmpty() + || data.isFactionFly()) { + return true; + } + + return false; + } +} diff --git a/Factions/src/secondlife/network/victions/tasks/FactionsTask.java b/Factions/src/secondlife/network/victions/tasks/FactionsTask.java new file mode 100644 index 0000000..66aaa9b --- /dev/null +++ b/Factions/src/secondlife/network/victions/tasks/FactionsTask.java @@ -0,0 +1,51 @@ +package secondlife.network.victions.tasks; + +import com.massivecraft.factions.FPlayers; +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.scheduler.BukkitRunnable; +import secondlife.network.victions.Victions; +import secondlife.network.victions.player.FactionsData; +import secondlife.network.vituz.utilties.Color; +import secondlife.network.vituz.utilties.Permission; + +/** + * Created by Marko on 14.07.2018. + */ +public class FactionsTask extends BukkitRunnable { + + public FactionsTask() { + runTaskTimerAsynchronously(Victions.getInstance(), 20L, 20L); + } + + @Override + public void run() { + Bukkit.getOnlinePlayers().forEach(player -> { + FactionsData data = FactionsData.getByName(player.getName()); + + if(data.isHomeActive(player)) { + player.sendMessage(Color.translate("&eYou will be teleported in &d" + DurationFormatUtils.formatDurationWords(data.getHomeMillisecondsLeft(player), true, false) + "&e.")); + } + + if(data.isLogoutActive(player)) { + player.sendMessage(Color.translate("&eYou will be logged out in &d" + DurationFormatUtils.formatDurationWords(data.getLoogutMillisecondsLeft(player), true, false) + "&e.")); + } + + if(player.getAllowFlight() && !player.hasPermission(Permission.STAFF_PERMISSION)) { + player.setAllowFlight(false); + player.setFlying(false); + player.sendMessage(Color.translate("&eYour flight has been disabled because you are in end.")); + } + + FPlayers.getInstance().getAllFPlayers().forEach(fPlayer -> { + if(fPlayer != null && data.isFactionFly() && !fPlayer.getFaction().isWilderness() && !fPlayer.isInOwnTerritory()) { + data.setFactionFly(false); + + fPlayer.getPlayer().setAllowFlight(false); + fPlayer.getPlayer().setFlying(false); + fPlayer.getPlayer().sendMessage(Color.translate("&dFaction Fly &edisabled due to leaving your faction's teritory&e.")); + } + }); + }); + } +} diff --git a/Factions/src/secondlife/network/victions/utilities/CustomLocation.java b/Factions/src/secondlife/network/victions/utilities/CustomLocation.java new file mode 100644 index 0000000..4149a9b --- /dev/null +++ b/Factions/src/secondlife/network/victions/utilities/CustomLocation.java @@ -0,0 +1,136 @@ +package secondlife.network.victions.utilities; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.Setter; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.World; + +import java.util.StringJoiner; + +@Getter +@Setter +@AllArgsConstructor +public class CustomLocation { + + private final long timestamp = System.currentTimeMillis(); + + private String world; + + private double x; + private double y; + private double z; + + private float yaw; + private float pitch; + + public CustomLocation(double x, double y, double z) { + this(x, y, z, 0.0F, 0.0F); + } + + public CustomLocation(String world, double x, double y, double z) { + this(world, x, y, z, 0.0F, 0.0F); + } + + public CustomLocation(double x, double y, double z, float yaw, float pitch) { + this("world", x, y, z, yaw, pitch); + } + + public static CustomLocation fromBukkitLocation(Location location) { + return new CustomLocation(location.getWorld().getName(), location.getX(), location.getY(), location.getZ(), + location.getYaw(), location.getPitch()); + } + + public static CustomLocation stringToLocation(String string) { + String[] split = string.split(", "); + + double x = Double.parseDouble(split[0]); + double y = Double.parseDouble(split[1]); + double z = Double.parseDouble(split[2]); + + CustomLocation customLocation = new CustomLocation(x, y, z); + + if (split.length == 4) { + customLocation.setWorld(split[3]); + } else if (split.length >= 5) { + customLocation.setYaw(Float.parseFloat(split[3])); + customLocation.setPitch(Float.parseFloat(split[4])); + + if (split.length >= 6) { + customLocation.setWorld(split[5]); + } + } + return customLocation; + } + + public static String locationToString(CustomLocation loc) { + StringJoiner joiner = new StringJoiner(", "); + joiner.add(Double.toString(loc.getX())); + joiner.add(Double.toString(loc.getY())); + joiner.add(Double.toString(loc.getZ())); + if (loc.getYaw() == 0.0f && loc.getPitch() == 0.0f) { + if (loc.getWorld().equals("world")) { + return joiner.toString(); + } else { + joiner.add(loc.getWorld()); + return joiner.toString(); + } + } else { + joiner.add(Float.toString(loc.getYaw())); + joiner.add(Float.toString(loc.getPitch())); + if (loc.getWorld().equals("world")) { + return joiner.toString(); + } else { + joiner.add(loc.getWorld()); + return joiner.toString(); + } + } + } + + public Location toBukkitLocation() { + return new Location(this.toBukkitWorld(), this.x, this.y, this.z, this.yaw, this.pitch); + } + + public double getGroundDistanceTo(CustomLocation location) { + return Math.sqrt(Math.pow(this.x - location.x, 2) + Math.pow(this.z - location.z, 2)); + } + + public double getDistanceTo(CustomLocation location) { + return Math.sqrt(Math.pow(this.x - location.x, 2) + Math.pow(this.y - location.y, 2) + Math.pow(this.z - location.z, 2)); + } + + public World toBukkitWorld() { + if (this.world == null) { + return Bukkit.getServer().getWorlds().get(0); + } else { + return Bukkit.getServer().getWorld(this.world); + } + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof CustomLocation)) { + return false; + } + + CustomLocation location = (CustomLocation) obj; + return location.x == this.x && location.y == this.y && location.z == this.z + && location.pitch == this.pitch && location.yaw == this.yaw; + } + + @Override + public String toString() { + return new ToStringBuilder(this) + .append("x", this.x) + .append("y", this.y) + .append("z", this.z) + .append("yaw", this.yaw) + .append("pitch", this.pitch) + .append("world", this.world) + .append("timestamp", this.timestamp) + .toString(); + } + +} diff --git a/Factions/src/secondlife/network/victions/utilities/FactionsUtils.java b/Factions/src/secondlife/network/victions/utilities/FactionsUtils.java new file mode 100644 index 0000000..fe5e3ab --- /dev/null +++ b/Factions/src/secondlife/network/victions/utilities/FactionsUtils.java @@ -0,0 +1,15 @@ +package secondlife.network.victions.utilities; + +import java.util.Random; + +/** + * Created by Marko on 28.07.2018. + */ +public class FactionsUtils { + + private static Random random = new Random(); + + public static int random(int min, int max) { + return random.nextInt((max - min) + 1) + min; + } +} diff --git a/Factions/src/secondlife/network/victions/utilities/GlowEnchantment.java b/Factions/src/secondlife/network/victions/utilities/GlowEnchantment.java new file mode 100644 index 0000000..af40569 --- /dev/null +++ b/Factions/src/secondlife/network/victions/utilities/GlowEnchantment.java @@ -0,0 +1,71 @@ +package secondlife.network.victions.utilities; + +import org.bukkit.enchantments.Enchantment; +import org.bukkit.enchantments.EnchantmentTarget; +import org.bukkit.enchantments.EnchantmentWrapper; +import org.bukkit.inventory.ItemStack; + +import java.lang.reflect.Field; + +public class GlowEnchantment extends EnchantmentWrapper { + + private static Enchantment glow; + + public GlowEnchantment(int id) { + super(id); + } + + @Override + public boolean canEnchantItem(ItemStack item) { + return true; + } + + @Override + public boolean conflictsWith(Enchantment other) { + return false; + } + + @Override + public EnchantmentTarget getItemTarget() { + return null; + } + + @Override + public int getMaxLevel() { + return 10; + } + + @Override + public String getName() { + return "Glow"; + } + + @Override + public int getStartLevel() { + return 1; + } + + public static Enchantment getGlow() { + if (glow != null) + return glow; + + try { + Field f = Enchantment.class.getDeclaredField("acceptingNew"); + f.setAccessible(true); + f.set(null, true); + } catch (Exception e) { + e.printStackTrace(); + } + + glow = new GlowEnchantment(255); + Enchantment.registerEnchantment(glow); + return glow; + } + + public static void addGlow(ItemStack item) { + Enchantment glow = getGlow(); + + item.addEnchantment(glow, 1); + } + +} \ No newline at end of file diff --git a/Factions/src/secondlife/network/victions/utilities/Manager.java b/Factions/src/secondlife/network/victions/utilities/Manager.java new file mode 100644 index 0000000..97510eb --- /dev/null +++ b/Factions/src/secondlife/network/victions/utilities/Manager.java @@ -0,0 +1,16 @@ +package secondlife.network.victions.utilities; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import secondlife.network.victions.Victions; + +/** + * Created by Marko on 14.07.2018. + */ + +@AllArgsConstructor +public class Manager { + + @Getter + protected Victions plugin; +} diff --git a/HCF/out/production/HCF/META-INF/MANIFEST.MF b/HCF/out/production/HCF/META-INF/MANIFEST.MF new file mode 100644 index 0000000..7427cc4 --- /dev/null +++ b/HCF/out/production/HCF/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: HCF + diff --git a/HCF/out/production/HCF/config.yml b/HCF/out/production/HCF/config.yml new file mode 100644 index 0000000..a4c0e9e --- /dev/null +++ b/HCF/out/production/HCF/config.yml @@ -0,0 +1,49 @@ +SERVERNAME: "Test" +SCOREBOARD: + TITLE: "&5&lSecondLife &d(Map 14)" +ECONOMY: + SIGN: + BUY_TEXT: + - "&a[Buy]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" + SELL_TEXT: + - "&c[Sell]" + - "%ITEM%" + - "%AMOUNT%" + - "$%PRICE%" +DEATH_SIGN: + SIGN: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "%TIME%" + ITEM_STACK: + NAME: "&aDeath Sign" + LORE: + - "&c%KILLED%" + - "&ewas slain by" + - "&a%KILLER%" + - "&d%TIME%" +kitmap: false +coords: +- '&7&m-----------------------------' +- ' &e&lImportant coordinates (x,z)' +- ' &7- &aSpawn&7: 0 , 0' +- ' &7- &3Towers Koth&7: 500 , 500' +- ' &7- &3Islands Koth&7: -500 , 500' +- ' &7- &3Moon Koth&7: 500 , -500' +- ' &7- &3End Koth&7: -80, 90 (End)' +- ' &7- &3&lConquest&7: -500 , -500' +- ' &7- &cEnd Portal&7: 700 , 700 (All quadrants)' +- '&7&m-----------------------------' +help: +- '&7&m-----------------------------' +- ' &7- &6/faction &7- Use to see all factions related commands.' +- ' &7- &6/koth &7- Use to see all koth related commands.' +- ' &7- &6/lives &7- Use to check your lives amount.' +- ' &7- &6/mapkit &7- Use to check this map kit.' +- ' &7- &6/coords &7- Use to see all important coordinates.' +- ' &7- &6/logout &7- Logout countdown for safe logout.' +- '&7&m-----------------------------' \ No newline at end of file diff --git a/HCF/out/production/HCF/factions.yml b/HCF/out/production/HCF/factions.yml new file mode 100644 index 0000000..1df0584 --- /dev/null +++ b/HCF/out/production/HCF/factions.yml @@ -0,0 +1 @@ +factions: \ No newline at end of file diff --git a/HCF/out/production/HCF/limiters.yml b/HCF/out/production/HCF/limiters.yml new file mode 100644 index 0000000..79fe08e --- /dev/null +++ b/HCF/out/production/HCF/limiters.yml @@ -0,0 +1,107 @@ +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable enchantment ### +### Use other values to limit enchantment level ### +############################################################## +enchantment-limiter: + ARROW_DAMAGE: 4 + ARROW_FIRE: 0 + ARROW_INFINITE: -1 + ARROW_KNOCKBACK: 1 + DAMAGE_ALL: 1 + DAMAGE_ARTHROPODS: -1 + DAMAGE_UNDEAD: -1 + DIG_SPEED: -1 + DURABILITY: -1 + FIRE_ASPECT: 0 + KNOCKBACK: 1 + LOOT_BONUS_BLOCKS: -1 + LOOT_BONUS_MOBS: -1 + LUCK: -1 + LURE: -1 + OXYGEN: -1 + PROTECTION_ENVIRONMENTAL: 2 + PROTECTION_EXPLOSIONS: -1 + PROTECTION_FALL: -1 + PROTECTION_FIRE: -1 + PROTECTION_PROJECTILE: -1 + SILK_TOUCH: -1 + THORNS: 0 + WATER_WORKER: -1 + +###################### INSTRUCTIONS ###################### +### Use -1 for no change ### +### Use 0 to disable potion ### +### Use other values to limit potion level ### +### Change extended to false to disable extended potions ### +############################################################## +potion-limiter: + SPEED: + level: -1 + extended: true + SLOW: + level: 1 + extended: false + FAST_DIGGING: + level: -1 + extended: true + SLOW_DIGGING: + level: -1 + extended: true + INCREASE_DAMAGE: + level: 0 + extended: true + HEAL: + level: -1 + extended: true + HARM: + level: 0 + extended: true + JUMP: + level: -1 + extended: true + CONFUSION: + level: -1 + extended: true + REGENERATION: + level: 0 + extended: true + DAMAGE_RESISTANCE: + level: -1 + extended: true + FIRE_RESISTANCE: + level: -1 + extended: true + WATER_BREATHING: + level: -1 + extended: true + INVISIBILITY: + level: 0 + extended: true + BLINDNESS: + level: -1 + extended: true + NIGHT_VISION: + level: -1 + extended: true + HUNGER: + level: 0 + extended: true + WEAKNESS: + level: 0 + extended: true + POISON: + level: 1 + extended: false + WITHER: + level: -1 + extended: true + HEALTH_BOOST: + level: -1 + extended: true + ABSORPTION: + level: -1 + extended: true + SATURATION: + level: -1 + extended: true \ No newline at end of file diff --git a/HCF/out/production/HCF/plugin.yml b/HCF/out/production/HCF/plugin.yml new file mode 100644 index 0000000..65552bd --- /dev/null +++ b/HCF/out/production/HCF/plugin.yml @@ -0,0 +1,114 @@ +name: SecondLife +main: secondlife.network.hcfactions.HCF +version: 6.0 +description: SL HCF Core. +author: SecondLife Development Team +depend: [Vituz] +commands: + faction: + description: Faction Command + aliases: [f, fac, team, t] + master: + description: Master Command + ultimate: + description: Ultimate Command + ultra: + description: Ultra Command + balance: + description: Balance Command + aliases: [bal, eco, economy] + block: + description: Blcok Command + aliases: [cobble, filter, blocks, cobblestone] + bottle: + description: Bottle Command + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chat: + description: ChatControl Command + aliases: [chatcontrol, chc] + chest: + description: Chest Command + aliases: [pv, playervault] + coords: + description: Coords Command + aliases: [coordinates] + crowbar: + description: Crowbar Command + deathban: + description: Deathban Command + aliases: [db, dban, deathb] + endportal: + description: EndPortal Command + aliases: [lightportal, lighportal] + eotw: + description: EOTW Command + event: + description: KoTH Command + aliases: [game, koth, conquest] + firstjoinitems: + description: FirstJoinItems Command + aliases: [fji] + focus: + description: Focus Command + glowstone: + description: Glowstone Command + aliases: [glow, glowmountain, mountain, glowstonemountain] + help: + description: Help Command + aliases: ["?"] + lastdeaths: + description: LastDeaths Command + aliases: [ldeaths, lastd] + logout: + description: Logout Command + mapkit: + description: MapKit Command + pay: + description: Pay Command + pvp: + description: PvP Command + aliases: [prot, timer, pvptimer, lives] + reclaim: + description: Reclaim Command + aliases: [claimlives, claimkeys] + regen: + description: Regen Command + savedata: + description: SaveData Command + aliases: [sd] + set: + description: Set Command + sotw: + description: SOTW Command + spawn: + description: Spawn Command + staff: + description: StaffMode Command + aliases: [mod, staffmode, modmode] + stats: + description: Stats Command + aliases: [status, ores] + sumo: + description: Sumo Command + tellcoords: + description: TellCoords Command + aliases: [tl] + togglelightning: + description: ToggleLightning Command + vanish: + description: Vanish Command + aliases: [v] + togglebroadcasts: + description: ToggleBroadcasts Command + aliases: [togglefd, tfd, fo, fd, foundore] + secondlife: + description: SecondLife Command + aliases: [core] + deathlookup: + description: Deathlookup Command + aliases: [dl, deathl, dlookup, deathlook, lookdeath] + lastinventory: + description: Lastinventory Command + aliases: [li, lastinv, lastinventory, restoreinv, restoreinventory, ri] \ No newline at end of file diff --git a/HCF/out/production/HCF/schedules.yml b/HCF/out/production/HCF/schedules.yml new file mode 100644 index 0000000..b307ffe --- /dev/null +++ b/HCF/out/production/HCF/schedules.yml @@ -0,0 +1,9 @@ +# Add more koths in the same day by adding a splitter '#' after each event + +schedule-monday: "6:00PM/Temple/15" +schedule-tuesday: "6:00PM/Temple/15" +schedule-wednesday: "6:00PM/Temple/15" +schedule-thursday: "6:00PM/Temple/15" +schedule-friday: "6:00PM/Temple/15" +schedule-saturday: "6:00PM/Temple/15" +schedule-sunday: "6:00PM/Temple/15" diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/HCF$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/HCF$1.class new file mode 100644 index 0000000000000000000000000000000000000000..ff5310a1420cf995e61e6eba30144104e629d2fc GIT binary patch literal 1704 zcma)7|5h7C6#j;!Y*ZA zd;tG2rS%*iz=!JbPJW!GMYgj$w5`b+q@c*Bv*<89`5j1+V74qZQ(F@8%l||7;>!zeO~S#Yi5zqrQ$@< zn746RNbe?tTZxi55Np!L%+M(czw$#)fL2uyMp~+RS(rvtbFk`R4bvXZ;k<_nn0D}$ zhjnZ)oUU3QEW^;|ky1e^801f%3RPpcnlJU(wU}I*`=6*oF6Hy)>7W{%%2mYL-x766Ama75 zfEca|v!S%%DiDTQs9osftsAJP{3*zl zV@`1>P4djQfQ%H{f{KW%Aro_@LvAQIb&a2G8lwzd!(7WSbx}0&UheE0+OHvwQ%Fz)N@Ew- uu}A-dhtyym^+4tw$Z0&rCCm`i6fTp^0A_K8<}~t{!$n%Tv^PdGJ^ukt2*Q2< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/HCF.class b/HCF/out/production/HCF/secondlife/network/hcfactions/HCF.class new file mode 100644 index 0000000000000000000000000000000000000000..7883d9d63b6ccf1e0aa73a6951771e68a83bd1a7 GIT binary patch literal 11599 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 BiPQi9 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/HCFConfiguration.class b/HCF/out/production/HCF/secondlife/network/hcfactions/HCFConfiguration.class new file mode 100644 index 0000000000000000000000000000000000000000..b56a49bbae761419266aa70beb1a895588e990ef GIT binary patch literal 3268 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 JCHy=B{|nsXZFT?v literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a662e62b4efabbd06376c49287ba81f791370f57 GIT binary patch literal 4094 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 bJneq+1gPH_pFw_DKY)+&O{LrzpZxnD3X#96 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Bard.class new file mode 100644 index 0000000000000000000000000000000000000000..f0c27dddec2f8726a6b755080eb75dd2616a9507 GIT binary patch literal 12869 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 literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Miner.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/Miner.class new file mode 100644 index 0000000000000000000000000000000000000000..83fb558a158ebde519a4af358054f72eac912e7a GIT binary patch literal 2128 zcmb7FTT|Os5dMyDvW*;qNdSis2qmq#s+S~fLrMb1V70zb>_C&IrLui&3v9`e1Re6y z|IzohFL?>mX@+*Dk394@WlHzRK;#beG9K%!cE7!z-PIp|{`xzB+i=2oKY|Z%JBkGE zL@i}w>|z-j0!t$(rmgzPqWv&9{TF|S?S*rO0kYhO_v-f|<{s%4O+Jbr}C`(W_S`5?w<9-?L{x|flqc?43(Q27i zN;C*V!jnB0RadgQ?Qm)uhRbgfE;<$!ySrHD+!DjwKL?UYt)xt&rq_2ZO_Z8CfEte4 zl7Ue>3?#FE_c^bM{=3wsX!Skbxf6=Jw*wRjDMjv3dyIQBIp-cr`)%q8d1bL!+FDju zSJnI~!-Ti%E>I%VlU>ts5l(d@jkyV&#zix(RjUkFy@?gd+tgU|la#QWS64HotqrxP z7V^}k#kF*LnPJG2OV==xMx8tA>3lFGlat;Y-rPxNc+ZfO#e~P`g*aLZcEfWtskFPA2FI|T> z=s7^27oZn?^h+X+2k6HJu3(h7awi0gQJ}y${fFT@Mhq+jUr54R$HXGqFKC(`v2#x1 zUx1H(Kxk_E6=K4j55is4qFK;mE`c!YQ& z=!yq_gcP8%`(KcEzZ?HJ!bFcyX-4U;Zc>!v^g*7W5AZE)Qsh0{Ger4G_YP)>3Xt{y=7hWU@KT+?W`tURSyci|;6CX~+pL+3U_=TeWyci$gFMM41 zFV*UQRgAyJFMYTKf8)X5`tW!7m74VT#rOyOqkH2#3dJAy#xra}b^lsDexu=^d^iOk zdhpNc{V!_Pzk2X*s`2lt@mnwc1OKV0-+Ay~9{gUz5hcZcD=9uw{YNRffRqSDmI5Wk zJLQ0AMfPr3?-P%Bed3d1_0YXCLuRT+iE5UrM;X_YavnuysWpFDEEO_aJ?0cqSJsbD z=E^*eRQluuIng8YDS#|ckCW82g+8g0MT$CEOQtYcCa1gVo&a3+e7HC6y23h+d*d3L@W~l+rh8-C2bt~*sxn0Q zu?!Ju%Mh^-Gen{>L!@n!P*<`>lTRs~eW=Mv5)ITQ62@p#B$-+#@ODH7Vn!;RFa=BV@vL`rc6Egs z)@|UdlH`bK_Vr|!PYOsYHC285lN30-deB7n|W!Q#>}%Y>aTq>fERLQCc3??+27Bl1yxP)#6X}oJv0^aDuo2y6BqFMv z>2#$ABh*YyQ_>8_V|~#`zZr;`son9!P+&0JZ-kY=$v`-2B$H+`&>kO1n-qCQN6H8f zQEApPnrsxziN}JmR3tUpU8qt!|Gm?nJ6V&oFQEdZQ%xxJCrHAI$mQZJFJE?fALpct;A&=qg69sH- zgkmW(L5Nt3Stj!)%wdCYj14GEInQc|c%0c(QarYWzC`FolC>iv(MVY7WK*05S&%D< zZ9`jzb<1{e>Yy1NHtB7?@SvGYahntY?}?fN0~Ce$F6xcPQ+#{-A_=-BF)dhmyhZJR z5;bB2fx6L@g1je@(LQ~#fd+^g!@YgRlKiM&vif6$4qCEXy7H_KM>C%5>xiclVRKVN z`KixxvQ;V+QgExGNxjZZgF0@OO}cEBMncJ<-8^wclaS7su~krJ1y$=P%3uR#LM_vz zNwY33(yB|FY}Msl*{VsqE*;XTOPA37<~cUVK-E^cF5R+Clk;@hE<1ENUoOz)Livm) zJ-S>ZhAzDl)}&7tlWXAzcv{C7@I_)-Z(Y^EpLHhOA}FZlz6nX{l9DvJtE$aG zBU#l;m!;qK_L_ZFqw(}2U3N)Ym)&xSCZoFSk28~^2&ZKJkLt(YK zC|B=!++LTT zkwL~4^`xQ>Dr!PePbun<7@B-vmmkQ}nmnV+v+|rS&nryK%9H*Dr{pGWnsd;Zxf|JL zBGTjqU0#%zbU7?9>+*`cBv|pkNNUVepNv~oCrOqk!|_DD%8JB{(^0HAr|K3nrcz1i zbhzgAD?2I(<~vuiquf+>5Ue`BgpKu^>f^Eg$Ur(_r3uDG79G?LBNl_?9KR!|*}k(b zr1I>{5gsG5%d`s;9;n1oPIZ{70z26uSe{_hIXc3?Rn*ZI3^Ft>aR&a6;pUpla^mmD z@r5iAXG|f30uiZ3A02YG^F($nXQczzmagVD2EK;c=Gx7{p7vlzsH3yCr9LP))o~Cz z6J|o2Z30`{+1ka*Ypl;A$$BFeHltCM6#Y`xsHYWsfPnjq5 zagxSKHW=pSvNtm$v+#_PXO_bR*=}lSb8AyWPe*raI}tS7sn0AArZo>tGUH|$8Lb?g>7p=6GuGE^CX=j|r(roejn1in z)@T~h)Sv}DD#zt-P+sdzP7SyX;z1dy<`Zq6NtqdYwHU+Pzap!QTp>NFxGjvWJavVz ztEXx9%?@zQQipw6*C?@kq0V4)PhESkmh}klAyYRZi-D88tl360+_{C>$*CcTDyrkhMG3Vg^fuyXL_E%Wd$Lfn>xaV z%fDmUHlMsIuklNVyw2r$8Ds9{_XbZrDTB4HKo7;3HY~?BiNKbeopJ-qvV5*R4W6Aw zawxeZyFAtW2_S9FQRQwr)})-)y1@OBi>t&!J zQ!ntUHEg81RDHuJ%_5Pl>{xd^(Z}Ao{w+IpFALcLD%<1oTaLIX z503JDWw5hRuaW2r*fmKzFLm*RnV3q0bgoRN&B4r?&sQ>O&>1@N`l|{fBWa4BQzT^! zutjNF+Z3$rYz)$nI!_wP-uDImT>MQ%6MOGTPC{mh1BM^VXQR6@bD=G*Z>$ZqG}nfj zdK!aG&B0DPG1oh;xfN3^^^L)f&bFr7&R`~7PhNn_rUAAHh0j+c@pb7LV!(; z*R{5Ga?qKkvoV+zC8umRc3U>y#L{u9yj9m^s%e*kXKO#_`|F%Q$=ssd{6N6ZZ*&Tnl}Rd#beG?@R&%JOt25Z4$(y>oCGY5X z4$spM^5E~dA(Lg#)Cp;__>dWBvM&C-y&3BB7{B>Y*Zla9ZE5lz)zlP^52aanzu`>C znFZ{NpN-`ti)F>R?%3Mg(UUV#)mKjTPd;dGdHlIfn`Ks3`J*Gkk06@7&+FJR3dwgK z-jk2dhef!Oe^3y79vZyr0|DtT@sn}^u4bE8+R65{Z1cLA)8^Hbyk2z!wcfm)T5n!P z`Sy_aX57N(t!$0KO$z8)y4TX%Lp&ZP_SH9qI??;t=8$`F7bt8othuCNWK;WqZ_wg~t-Zf9#Re@{fgQOtn2 zQQ+2a$5D2XE>tuxY`7D5Q5TfIU?1i8aPWo|J$nLk1ZuUFYNC62rE45>msh&^ zR6JvtS2KZ1!8lIXi*mJk`H2THe*y~%@OY(rtyZZ`;3P(a+wWG(+l>k=WV5tVtH7cO zEH1=;%&yFGa&TY*OA1lxK7>=YKZ)w{rQ`4`L6@n0{N>B}7{`k2HkIy5_XJi7jaj4X z6IfM*N}A4|8ci_E1Yf^!#Vpf!=^Sqh@X(E&0xCDLTLSicwTX5aXf~G zl@nlYo4}?5F5NJJ&2;fQ;H^L-;gvgn5L?W;Mc!NQ!OE3cq--TL7P;scO(e>jbAhrS zom@WSDC1~x-HW-LnTwtMD5<0$so}nHw5}XO+d-Vmot2=LaNKtc?ZyN;TsUtEBpdj* zKp;+4??fdMjDIPDBaO9$!7xUV!?>;4#%T~AfsNR!<}lifm--Aa?) zMw8u6lkKI+?xZ>HrVj6+$?m1e?x)H2(PR((@l5t44$^SU6*8CJro3#=iV2*j9A&$p zdF5fuSZR6G4!U~bBiXU@dBd#XSdBGyLC)BP%oj`{hcQ!S1E!15EtlVGuh;# z2cfx`Rtq2D?shsnS%oAjMklc5GaC5mvS$&oLE^KU68BL&l^QqL5>Fy{kA+(n+K7>3 zp9)SDl*O8P6`d(^}MR_wLO0CaqqN-J8tzrmbF|-J8z# z_F27_u=3cXDRxjcEqjJHcq-V--+=C9DUkSrIP9Ml55tUrt@U$ngTa lBwyvb90hVM|5eFX++KNG-jyG+)KVdxClVJ5rAXXT^apU0-{JrO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClass.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClass.class new file mode 100644 index 0000000000000000000000000000000000000000..1d9952cde7dbb7a495f7fdabd91d60ce3fa84638 GIT binary patch literal 3109 zcmbVOX?qh@6n<}-bg~Szgi>gw5O^STp+p4PMW7TZG^Ns(r7k#4rtQ$lB+N|8=7xfb z`+^HDh<@o8J}8u8<#~Mk?C2G1&ZE({gjK|C*?M}l}E1Pudn zkqRO$pL!UB7?SG4axfw|iUVPUF(N&ia+V3hLRQXlQstN&>>!*FT;v0cPJV)6u0|Cc zS8zh0Can)@dDA_T(M}vm=WWe3vX+3@BQQIsIgT-^w+{~LDc2FG>O88AYKgpSn28?U z-7FC5F@`M7&D*-b>eAgUomqP*F_0e_G2BEhE8Ql#y+^^{=B>2%TUv&u(SoU|Swo2) z*EXyn?nRDkb|#4i=ZcqOpkt2yRK4Qxu?pNrZc{c{`== zGGvXbW=gY45>>@&B$>(#X?JVRFo~<83C${6u}Vb(k19B&;xt|)geqRb%PL;Ms{)Je z&tC;+RJ?}Q1?GDP6eX}DZP@s2~@=5>lM7A;!V6IMdw+^SX^tj zB=YIFzC^{_=uq&Eig)pziudt>iVyLTf{#^vg1stMpi#vIe5&9x6`$h^6&I!WOBwf9 z_?p)?7EkRooI4H`e52wLzEyD<-wCYye_R)+p2>3Gz)>~?UfUUDJ6xTuLo#R9jF3>X zX2$eZ?VVzK9psLQyhg*C)1{xFHp@yr`Ymr!N{+&*)Lu|jn379D3TWwcagz~PR&p=P z-M4=4dTP0xZlwiU%e0m$+TUAY2D7{jo}-4FKjpOx*I?gBIzzl}d-wPCceJsQ@wc$C z?S4LkZnn?`1y(%ReOuO)xQAR@vm8@%c@yFfl?0=YI7~XJJB~I)vw7vrc*|;e8@GGi zq8M9t&IKg}WgsSb!JbLaH8V7rk@G;h+ByA}k$s@|WX_AYskqmbsgu;B-=#&x{|_zM zY>(wNlL3}wG({j;ZdGQKVaFRZ zC6%{rGBnX^Wb{71y2$ioM^|5Odyl~4qF!1?m8p^jNy9YdE6U%vr)iIW3E%T^zQO$n z$u_{5ke!TU3+Fzp$ zsqN=pfAcu}lTZYbD<=^Y>|1r5gam#?xT~d=dyxtp9J~E{%T1^ZZB}&l1gdBi;3Hbi z;VR}#AR3*^=>%$i!n{e;`ryAp?-fN+FGK^saV#P_F&x5@>8Kls+$L=H;_si1zaLxh z1f$(bKN0x;LRi6*w`eY~4ciN8h;2-wk_zMZrr{Q)F^TyClUN|I$zR8myga+*tdQuY zKpoSmJ9icJ7cOC~Ts+ds-vkz3#B#Z8;IiQ|>RKkTNP<+|BKIe;*oQGxj@`a8cKiH; z5Q>!|B+FU=sG0u_K^jSTwvj}`q|q_Lbec4JnPogf`kZA6uaP#g)XmI#8-dwD&;qnd zPs2Ap4c~YXeDw$v;QJek6|@n@Khg6Ce7E593+%*3`V?r#E|Nr2GQpK3PC%mi11AOc zReHjx7lK+)m^!Y&^rtA>jSh}?I|SO2!O{sVyM}s+w(#g!NTZsoF3<74e*rdY{KEhM literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/ArmorClassHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2d3b9df6966b90fd08b22f8fda5620c86a42490b GIT binary patch literal 4144 zcmcInS#uOs6#ni^lFoFR5CVzpVU5X5U_cSUL?8(u(F`DvU_jB%q?t6CbcdcEFzzev z`-=MpxL_4Z6%eUXlq#+A!FT_P58`+4Ofo%2NR)CO=5FVld(L;ZzQ6wY-S+@i;cFdH z?2VuicWSsxM;QAma5wJJVCpEtJ`KG(%H^2Up<|zpK3F=*_g5f=eo1Rr-~a~XUs}VU z21jnXQshtt4#L&pAtPD*3S@Ce?j4rPd*y6cM>X!#aKDcEctFa0Q0_b=&mPwBh>pd0 zK*OUtmP#ca({ZgFAJ_1NK$UecYYz=seeG#8lS!CE0#iE=n1{@G*0yz^nRu%= z=z8kr=5@SB%b!xMfY?qug$177*oII)F2))y1XL2To8zdrATxWaQ9JaiTmg)Bk zENkd=y;Qt6J1}7TaqE!f@Za%me>fhX+a&iDqNR#NAUb(Afmu7U6gg;h+Zmg1w>pmN zn<}&f>c$IFw-un!QGYXYa?F726pxA%at8ovn%8bL{f4Pd` zSw33XIBiL$^ZBmtbhBR4+HA|ztu54_e2grYrO&{1xZXeWzDvzseyOVW*~+p4ex1q-@pg>&_EZu8Gi;o!p8pasvW-N znZE2=GlTvNRt+YwqEDMnD!#4v01Ku-&RVs#tKV}E=XykCL2%Ceu-V5juW88D+<=5; zSs11Tu542sgmlSyNmlRm&R<{pQOms=8mfJqCAeQMVa&12xiEn73N@5@U8; zf>h$D#f(wqbUXCRWvpP>{6+6xvtC)J=vm^!v*FRLtWI#^B8wI_Q9;x zLAO?qs-(Ue)rTOJrZn}1_4k-zZyUG8?-b7(bPv&C5!cCQu)w@xgoDATV2tqFE1gfp zImNWf8|p|=YObU5b^@7%IXsl5-t_G_CCBglgC$tVFY_pv7ziOEYai#!_*4jCIoE6} zW9yZC7YNyH_`eDe<$OGpkn%`0b{67Wgw7+}a~35dC=Fq^T9x$g^ z9E@o645o~rG7K`0V5&f(X#`b*1%C-A(*!P{dh4H0@ej7R1-MA+?hRG?>sG|)%oj>tEI)YgO zBbXhMzKC5sm55zz`hjF+1bjA0XA^8W=3J4pbPZ3}a`z^swxKSp!&Yn~orJX-;u4QT z8n$b=9YUj=#@Yuy3xiFVXZfW;HP?=P}yOV}4Jx=`89-upq=1y(-3og-6j8 zlWHBqk}-D1^cUrSJW J$PmJwzX0hXcS8UG literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/BardData.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/BardData.class new file mode 100644 index 0000000000000000000000000000000000000000..59488ed4de453d138c1a4e07d96b8b8f0312489c GIT binary patch literal 1436 zcmbVLU31e$6g`{7a;zw^aY72T1PD+ZwMA`7KWI{L9YevBz)a&|h6g6ImN&MLEHRQ? zn!mtHUi#Gkz;rs(&`clt1Nx&nJu3+(<*}ae-Mv?L&z^hk-M|0&^DhAFcxYk~w<@S( z-Do~#h(GOpVKfh$6YonCU*T&VzirZdqjwu7Hu0@?@95oKqj@dMM;XmBz7tqhp^66w zdoNVHH}ZnOOOzXheF4!HFh}yIy*xo+F5m2?GEVuqBVhH$`};g() zcBq1WS0=u|mF*}VIK8p&d#RJSL)9M#Dt1~~K&Na77@J<`rFR6T8*5JlX11cf5~yx_ zp?WkP^;F!Iy?~MWcI3+7iHtq%7r~iy=p_Oh+j$9rx38Q~r7xq{cZTl1bW<-16UPl? zlBmQPr(TdaJsJ0%7EN2Gk_@VeN?ZRaYo^iBT#Q^DfwKdZ{-8#ZOv8arZL2^YWR$7N zVxslAmxCB#k=)g6%sTF zsb15`$!Re_5j0dzs4^k6HYs_Xbab9!FTBCryJXIj?uAnb#sq=$QBZis!ZpGwDOi=C ze?h78n%i0ar^rZ0)hqw-81tIjG%nLFWFlN-sVkTx{t3s`;)aj1Tro%JkMT)y)n-v` z-F}0GS8Ppmj4Ib!^efX(mwo*dWPL)KV_qOVV8?VHYPt_ZFmCt*_SSk=fHhS46g0iO U8?^$9C-Eu8)!q0kyZiHh0b*JOZ2$lO literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectData.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectData.class new file mode 100644 index 0000000000000000000000000000000000000000..e77d9a30f89466823936d158977d87ee8b37c41c GIT binary patch literal 1191 zcmbtS%Z?I36g>q!&8v}-8Sybb=Aj1KM{Qg=>V_F32~iUb`=TkJhPK;uHyZ!Rg(eac z7k+>rWxThW3^)=oaZ^?I);;H*d#Zl?{PrEd1Kcjd#*Gp-u*=IHFZ%@?6mV0Z?pr+ps~rwVRjq3R{e1eSucOyl=Xy8vl;2a4;dq|3lCg;e9(QByg~7l# zLoEZHybq&^9D76M@i?*cd=5JfPC0OJ z%Rw0x2L%)zlu#5n{11-=HknxZDj3NZ{S*2Z0yJX}d-Sht`f+&(?nNj1Uh|yCqD*%wMK`jFQ%mgB2p;#!YMv#l|IWiU XGS3dK{-K8-?_c#~Pb6?Ho&NeSb=ueU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a4512847068f3504f098a3b6c67986ba44292790 GIT binary patch literal 1206 zcmb_c&2G~`5dJm}2~ABKN}(nE1sWhtfu$0HL!k$%RG|u}DyT@kIrb)5;_gOkJJ1K< zfsk4uIPd^G6k^tigeyhj5=)-(?#z6oH*Dj9Dxe67z4G@Hozq_dW3DXt$fg7QdD>BKS6b{O2|1}M}>4AH*k~A0cAon HO`4v+%3M(s literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/bard/EffectRestorerHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..319c5345f13dcfe26a5cd85fc036ac60e4d605b0 GIT binary patch literal 5310 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 S%6D*2y7f-dJdAhY;r{~Dxgfj% literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassEquipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..9c700e15663be82153bca85a93ba539b90b074ac GIT binary patch literal 1160 zcmbVL+iuf95IyT$oY-yx;nqu1QUWLmsD9xA(FzGwg(6u9REWf*<8GTJu3hYPQU8jo zDuKiY@KK0a$26{>ky<~DcV^C+**UxW>-YDc03P730UgU#lyOs;wvH78McmTS(Q%uh zGIE0*pGPsnvJ*yo_AnWbg|zu052U>{Njf5yYYc`P?T68Z@5Y3F=)~L$i7R%w9dP*} zjK=oJ+jTuD!XUOi1>>=uNa4r!lM^P@DX)t_$j1zCx~EzOQph9wrSBf`Xzilqdjp2z zM!3Tn>W&Ebi)4Suqu1`xr%1yIJ=Y(&kx+gXEXt9ffu5hMW2#SnuFdy}IM`IGsR<9# zAs80V9+087$7N1ohIY4i3jd!oFsB^a^Bj3oX&D|-feRl?W!>|$gDG^CjK+4DL>_-C zlynQzKGRWG-?@jb1q*j97%(kVP-SS&xbdQPNVZ=Z=4`k$x~JSBDEZ{ zm3Fo!`K&X;JQgUThOjekss9z4YLh3|bL3J+u3!;M8M#Af^_f3Ve0z-27Zj8N`JF1U JniSK}`UAl?9rOSI literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class b/HCF/out/production/HCF/secondlife/network/hcfactions/classes/utils/events/ArmorClassUnequipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..995ef5fd38b691adf3d3e9ba634eb2db4cd2cf31 GIT binary patch literal 1166 zcmbVL+iuf95IyTSabl+l4Y$%HB_#zV0o5-&AX*`z3IxJJAZR2W9e3L-aqVKSi~3hw zRS6_MfR94VI;L?2L~8vo_RO3!vvX$s^Vhc@0Pf6VG!G%g7Mf+r0`?=;R%!Klr}{m*>6!OS^;k!pX+Bk3d{*Xc6 z3U@d|-4OwQp6ri!^x7Ty6lpl2=lVl863Wklx*Q7{=-HV%ruyXP+79@;L>xR)x~Ult z(lHp8|34x_ZI8>G#tfZa{}lcoTd-yvI`sm1GjSR2Q-O0Yro8F-*=h@^;d@IcW`X>}V5Qc6t*-{!^B75}&xlW#{@&~Eq zknOZ{b(+sQGc4g6Mbr>>#w`xMKvQk<bfqmOF0eHfl(MF(3imE8YNp=cs&w;2yTAgQr|fHv zH3t_~Ry_1afg|^nzVyn43)|3O6E!?BQA9}qCMuXWQPt)O$|e(Y9OC~UW^$+h?1Dsp zmF;(qr4tEogtoEF&%eNbNfw+2B}PKC#GaI~r-;~72YsFuH7w9x<;g*YFR;}74$)jc zL#A1sIfD_~Y?EQ`D}T=58to!-v^5xn7nmvII-A^NevuKFiCf_YbNX3gz64}-Lbmx0nJ)~+6uCHQ#_h~;LDEj(F77d-RbK?>C&6>6;APxT0p~tXFzb=@ g;$ms%%qw`10yZX@E2-esRB(0@Jf8|)i}gMH1FF0ZZU6uP literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/CommandHandler.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/CommandHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..ab0159461b8d070a0fba7afce106e31be090c1ba GIT binary patch literal 4778 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 Yu5q%)5&auO8d8HJI=M}dDT2v=0k4j!9smFU literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/CoordsCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/CoordsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f1ca1efa3c471c3bb4e895e2e5610e8ad05d63c3 GIT binary patch literal 1383 zcma)6%Tg0T6g`~;29im@@K6**9zqf%qo{}k5s6Y*6>t%Yg|0f2&d?;8p=LTr`5UhM z0@p4q!G-18zwkFKOT9A*h(HlHJ#)KnpL6cHcjnu#&tCxC#nUKsjCEnW8!=2oaRZYv zOd%CR8X13?)^Ib58DwKHa7)8&4YLfLi_(^AiD5ET@Pz5u<(jMr!xrkb<5rC=v%*a! z9osY3@~gS@CPO6elm$aiLE2)YQ7;Mi1uxZTCs}YzUfblZ^yAiML~TirVYv;s>D24o zE_()dtwvqg$}{qg^WJBK>JPh%o z;%0T7?*yJ{xWf=FIt|wpt1>Y5A1kuH7#(pWNQ4=fq*MQgG~ClMhx;1lbv(cV;poU= zQO842e|t~Xpy82@Wjxlfq9czd3`^$^K)W6>%>F093im|Ie{wev)=;u$JX6Bu%5kZC zEi#6=^D+HWrS5EU@mpoE6 zm^yypP^~{~Tin|ad&Ck>rC(CJ?I7qs%n#=3d1+giKE>1-CGASpcw-z@lXq&q4c*G+ zwpZi+7}E!OvW2;poa1B5aJ}8MGsOJiT^F9mEkYhR3waZx^dr&f-vWd{Ly82gJru1` z9HOV5nf?TpNrpZm{2|Edr8R*tt#NcvZVbJ+K+#|`A4&94L^sio0YYPRaF;1%w@;wI3sdoFUv9 xLiV{cv_C>hE@3Fh$R4T4;xeufJ8@zdSBd``y~hyxiI|3wA7lWTNn0U|{sE-SaR2}S literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EOTWCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d0e61fee0ab53761ce00db267783ab6d05869c78 GIT binary patch literal 279 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 F|FekxSepO< literal 0 HcmV?d00001 diff --git a/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EventCommand.class b/HCF/out/production/HCF/secondlife/network/hcfactions/commands/arguments/EventCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..face43b61037aa912f1a669d202e58d20198c9f0 GIT binary patch literal 12671 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