├── UHC ├── .idea │ ├── .name │ ├── copyright │ │ └── profiles_settings.xml │ ├── vcs.xml │ ├── modules.xml │ ├── inspectionProfiles │ │ ├── profiles_settings.xml │ │ └── Project_Default.xml │ ├── artifacts │ │ └── UHC_1_9.xml │ ├── encodings.xml │ └── compiler.xml ├── bin │ ├── .gitignore │ ├── de │ │ ├── alpha │ │ │ └── uhc │ │ │ │ ├── Core.class │ │ │ │ ├── GState.class │ │ │ │ ├── kits │ │ │ │ ├── GUI.class │ │ │ │ ├── KitManager.class │ │ │ │ └── KitFileManager.class │ │ │ │ ├── timer │ │ │ │ ├── Timer.class │ │ │ │ ├── Timer$1.class │ │ │ │ └── Timer$2.class │ │ │ │ ├── utils │ │ │ │ ├── Cuboid.class │ │ │ │ ├── Stats.class │ │ │ │ ├── BlockUtil.class │ │ │ │ ├── HoloUtil.class │ │ │ │ ├── MapReset.class │ │ │ │ ├── Regions.class │ │ │ │ ├── Spectator.class │ │ │ │ ├── ArmorStandUtil.class │ │ │ │ ├── LobbyPasteUtil.class │ │ │ │ ├── Cuboid$CuboidIterator.class │ │ │ │ └── Cuboid$CuboidDirection.class │ │ │ │ ├── aclasses │ │ │ │ ├── ATeam.class │ │ │ │ ├── AWorld.class │ │ │ │ ├── ATablist.class │ │ │ │ ├── AWorld$1.class │ │ │ │ ├── AScoreboard.class │ │ │ │ └── AScoreboard$1.class │ │ │ │ ├── border │ │ │ │ ├── Border$1.class │ │ │ │ ├── Border$2.class │ │ │ │ ├── Border.class │ │ │ │ └── BorderManager.class │ │ │ │ ├── files │ │ │ │ ├── DropFile.class │ │ │ │ ├── TeamFile.class │ │ │ │ ├── CommandsFile.class │ │ │ │ ├── ScoreboardFile.class │ │ │ │ ├── DeathMessageFile.class │ │ │ │ ├── SpawnFileManager.class │ │ │ │ ├── HologramFileManager.class │ │ │ │ ├── MessageFileManager.class │ │ │ │ ├── OptionsFileManager.class │ │ │ │ └── PlayerFileManager.class │ │ │ │ ├── commands │ │ │ │ ├── UHCCommand.class │ │ │ │ ├── CoinsCommand.class │ │ │ │ ├── StartCommand.class │ │ │ │ └── StatsCommand.class │ │ │ │ └── Listener │ │ │ │ ├── ChatListener.class │ │ │ │ ├── CraftListener.class │ │ │ │ ├── DeathListener.class │ │ │ │ ├── LobbyListener.class │ │ │ │ ├── MotdListener.class │ │ │ │ ├── SoupListener.class │ │ │ │ ├── GameEndListener.class │ │ │ │ ├── InGameListener.class │ │ │ │ ├── MiningListener.class │ │ │ │ ├── PlayerJoinListener.class │ │ │ │ └── CustomDeathListener.class │ │ └── popokaka │ │ │ └── alphalibary │ │ │ ├── mysql │ │ │ ├── Pair.class │ │ │ ├── MySQLAPI.class │ │ │ ├── MySQLDataType.class │ │ │ ├── MySQLManager.class │ │ │ └── MySQLFileManager.class │ │ │ ├── UUID │ │ │ ├── PlayerUUID.class │ │ │ └── UUIDFetcher.class │ │ │ ├── file │ │ │ ├── SimpleFile.class │ │ │ └── SimpleFile$1.class │ │ │ ├── item │ │ │ ├── ItemBuilder.class │ │ │ ├── data │ │ │ │ ├── ColorData.class │ │ │ │ ├── ItemData.class │ │ │ │ ├── SkullData.class │ │ │ │ ├── PotionData.class │ │ │ │ ├── FireworkData.class │ │ │ │ ├── SimplePotionEffect.class │ │ │ │ ├── WrongDataException.class │ │ │ │ └── SimpleFireworkEffect.class │ │ │ └── LeatherItemBuilder.class │ │ │ ├── nms │ │ │ ├── SimpleTitle.class │ │ │ ├── SimpleActionBar.class │ │ │ ├── SimplePacketMod.class │ │ │ ├── SimpleTablist.class │ │ │ ├── REnumPlayerInfoAction.class │ │ │ └── SimpleTitle$TitleAction.class │ │ │ ├── command │ │ │ └── SimpleCommand.class │ │ │ └── reflection │ │ │ ├── PacketUtil.class │ │ │ ├── SaveField.class │ │ │ ├── SaveMethod.class │ │ │ ├── PacketUtil$1.class │ │ │ ├── ReflectionUtil.class │ │ │ └── PacketUtil$EquipmentSlot.class │ └── plugin.yml ├── src │ ├── de │ │ └── alpha │ │ │ └── uhc │ │ │ ├── Core.java │ │ │ ├── kits │ │ │ └── GUI.java │ │ │ ├── utils │ │ │ ├── Stats.java │ │ │ ├── Regions.java │ │ │ ├── Spectator.java │ │ │ ├── LobbyPasteUtil.java │ │ │ └── BlockUtil.java │ │ │ ├── aclasses │ │ │ ├── ATeam.java │ │ │ ├── AWorld.java │ │ │ └── ARanking.java │ │ │ ├── files │ │ │ ├── RankingFile.java │ │ │ ├── SpawnFileManager.java │ │ │ ├── CommandsFile.java │ │ │ └── ArmorStandFile.java │ │ │ ├── Listener │ │ │ ├── ChatListener.java │ │ │ ├── GameEndListener.java │ │ │ ├── PlayerJoinListener.java │ │ │ ├── RankTriggerListener.java │ │ │ ├── MotdListener.java │ │ │ └── SoupListener.java │ │ │ └── commands │ │ │ ├── CoinsCommand.java │ │ │ ├── UHCCommand.java │ │ │ ├── StartCommand.java │ │ │ └── StatsCommand.java │ └── plugin.yml ├── .settings │ ├── org.eclipse.core.resources.prefs │ └── org.eclipse.jdt.core.prefs ├── AlphasLibary │ └── de │ │ └── popokaka │ │ └── alphalibary │ │ ├── UUID │ │ └── UUIDFetcher.java │ │ ├── file │ │ └── SimpleFile.java │ │ ├── mysql │ │ ├── MySQLAPI.java │ │ ├── MySQLManager.java │ │ ├── MySQLDataType.java │ │ ├── Pair.java │ │ └── MySQLFileManager.java │ │ ├── item │ │ └── data │ │ │ ├── ItemData.java │ │ │ ├── WrongDataException.java │ │ │ ├── SimplePotionEffect.java │ │ │ ├── SkullData.java │ │ │ ├── PotionData.java │ │ │ ├── FireworkData.java │ │ │ └── SimpleFireworkEffect.java │ │ ├── nms │ │ └── REnumPlayerInfoAction.java │ │ └── reflection │ │ ├── SaveMethod.java │ │ └── SaveField.java ├── .project ├── .classpath └── UHC-1.9.iml ├── UHC-Remake ├── ideas.uhc ├── .gitignore ├── .idea │ ├── markdown-navigator │ │ └── profiles_settings.xml │ ├── dictionaries │ │ └── MaxHe.xml │ ├── vcs.xml │ ├── kotlinc.xml │ ├── codeStyleSettings.xml │ └── libraries │ │ ├── AlphaLibary.xml │ │ ├── Maven__junit_junit_4_10.xml │ │ ├── Maven__org_avaje_ebean_2_8_1.xml │ │ ├── Maven__org_yaml_snakeyaml_1_17.xml │ │ ├── Maven__com_google_guava_guava_17_0.xml │ │ ├── Maven__com_google_code_gson_gson_2_2_4.xml │ │ ├── Maven__commons_lang_commons_lang_2_6.xml │ │ ├── Maven__org_hamcrest_hamcrest_core_1_1.xml │ │ ├── Maven__javax_persistence_persistence_api_1_0.xml │ │ ├── Maven__com_googlecode_json_simple_json_simple_1_1_1.xml │ │ ├── Maven__org_spigotmc_spigot_1_11_2_R0_1_SNAPSHOT.xml │ │ ├── Maven__net_md_5_bungeecord_chat_1_10_SNAPSHOT.xml │ │ ├── Maven__org_bukkit_craftbukkit_1_11_2_R0_1_SNAPSHOT.xml │ │ └── Maven__org_spigotmc_spigot_api_1_11_2_R0_1_SNAPSHOT.xml ├── src │ └── main │ │ ├── resources │ │ └── plugin.yml │ │ └── java │ │ └── de │ │ └── alphahelix │ │ └── uhc │ │ ├── interfaces │ │ └── ITimer.java │ │ ├── util │ │ ├── MapUtil.java │ │ ├── LobbyUtil.java │ │ ├── RankingUtil.java │ │ └── TablistUtil.java │ │ ├── listeners │ │ ├── scenarios │ │ │ ├── EntropyListener.java │ │ │ ├── NoFurnaceListener.java │ │ │ ├── BloodyLapisListener.java │ │ │ ├── PvCListener.java │ │ │ ├── BloodyDiamondsListener.java │ │ │ ├── BirdsListener.java │ │ │ ├── NoNetherListener.java │ │ │ ├── SheepLoversListener.java │ │ │ ├── CaptainsListener.java │ │ │ ├── CompensationListener.java │ │ │ ├── NotShinyEnoughListener.java │ │ │ ├── WebCageListener.java │ │ │ ├── FalloutListener.java │ │ │ ├── DamageCycleListener.java │ │ │ ├── DimensonalInversionListener.java │ │ │ ├── SkyHighListener.java │ │ │ ├── GoToHellListener.java │ │ │ ├── CatsEyesListener.java │ │ │ ├── BombersListener.java │ │ │ ├── ChickenListener.java │ │ │ ├── EnderDragonRushListener.java │ │ │ ├── BenchBlitzListener.java │ │ │ ├── BiomeParanoiaListener.java │ │ │ ├── EveryRoseListener.java │ │ │ ├── HorselessListener.java │ │ │ ├── DamageDogersListener.java │ │ │ ├── TimberListener.java │ │ │ ├── ErraticPvPListener.java │ │ │ ├── ArrowListener.java │ │ │ ├── HashtagBowListener.java │ │ │ ├── BlitzListener.java │ │ │ ├── LiveWithRegretListener.java │ │ │ ├── CertainCircumstancesListener.java │ │ │ ├── PuppyPowerListener.java │ │ │ ├── LightsOutListener.java │ │ │ ├── NoSprintListener.java │ │ │ ├── CityWorldListener.java │ │ │ ├── HalfOreListener.java │ │ │ ├── GoldenFleeceListener.java │ │ │ ├── SharedHealthListener.java │ │ │ ├── EnderDanceListener.java │ │ │ ├── FlowerPowerListener.java │ │ │ ├── FoodNeophobiaListener.java │ │ │ ├── NoGoingBackListener.java │ │ │ ├── DoubleOrNothingListener.java │ │ │ ├── PyrotechnicsListener.java │ │ │ ├── SwitcherooListener.java │ │ │ ├── InventorsListener.java │ │ │ ├── GunsNRosesListener.java │ │ │ ├── LongshotListener.java │ │ │ ├── XtrAppleListener.java │ │ │ ├── TripleOresListener.java │ │ │ ├── VeinMinerListener.java │ │ │ ├── RealTimeListener.java │ │ │ ├── JackpotListener.java │ │ │ ├── RandomStarterItemsListener.java │ │ │ ├── BlockedListener.java │ │ │ ├── EightLeggedFreaksListener.java │ │ │ ├── BlockRushListener.java │ │ │ ├── DiamondlessListener.java │ │ │ ├── CraftableTeleportationListener.java │ │ │ ├── NineSlotsListener.java │ │ │ ├── SoulBrothersListener.java │ │ │ ├── MoleListener.java │ │ │ ├── TheHobbitListener.java │ │ │ ├── RiskyRetrievalListener.java │ │ │ └── OneHealListener.java │ │ └── SchematicListener.java │ │ ├── files │ │ ├── LobbyFile.java │ │ ├── TablistFile.java │ │ ├── SpectatorFile.java │ │ ├── UnitFile.java │ │ ├── ConfirmFile.java │ │ ├── BorderFile.java │ │ ├── TimerFile.java │ │ ├── StatusFile.java │ │ └── MOTDFile.java │ │ ├── enums │ │ ├── GState.java │ │ └── ArmorBar.java │ │ ├── events │ │ ├── timers │ │ │ ├── LobbyEndEvent.java │ │ │ ├── InGameStartEvent.java │ │ │ └── DeathMatchStartEvent.java │ │ └── armor │ │ │ └── ArmorType.java │ │ ├── inventories │ │ ├── PreviewInventory.java │ │ ├── CrateInventory.java │ │ ├── AchievementInventory.java │ │ ├── KitInventory.java │ │ ├── ConfirmInventory.java │ │ ├── TeamInventory.java │ │ └── ScenarioAdminInventory.java │ │ ├── timers │ │ ├── SkyHighTimer.java │ │ ├── FalloutTimer.java │ │ ├── DamageCycleTimer.java │ │ ├── BestPvETimer.java │ │ ├── EntropyTimer.java │ │ └── GoToHellTimer.java │ │ └── commands │ │ ├── InfoCommand.java │ │ ├── StartCommand.java │ │ ├── RanksCommand.java │ │ └── StatsCommand.java ├── achievement_help.uhc └── changelog.uhc ├── UHCConfigEditor ├── src │ └── main │ │ ├── resources │ │ └── plugin.yml │ │ └── java │ │ └── de │ │ └── alphahelix │ │ └── uhcconfigeditor │ │ ├── lists │ │ └── MaterialList.java │ │ ├── AlphaRadioButton.java │ │ ├── AlphaButton.java │ │ ├── frames │ │ └── BorderFrame.jfd │ │ ├── UHCConfigEditor.java │ │ └── ui │ │ └── ButtonUI.java └── .idea │ ├── artifacts │ └── UHCConfigEditor_jar.xml │ └── libraries │ └── Maven__org_bukkit_craftbukkit_1_11_2_R0_1_SNAPSHOT.xml └── UHC-Remastered └── src └── main ├── resources └── plugin.yml └── java └── de └── alphahelix └── uhcremastered └── UHCRemastered.java /UHC/.idea/.name: -------------------------------------------------------------------------------- 1 | UHC -------------------------------------------------------------------------------- /UHC-Remake/ideas.uhc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /UHC/bin/.gitignore: -------------------------------------------------------------------------------- 1 | /de/ 2 | -------------------------------------------------------------------------------- /UHC-Remake/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Core.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Core.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Core.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/Core.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/GState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/GState.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/kits/GUI.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/kits/GUI.java -------------------------------------------------------------------------------- /UHC/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/kits/GUI.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/kits/GUI.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/utils/Stats.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/utils/Stats.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/timer/Timer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/timer/Timer.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Cuboid.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Cuboid.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Stats.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Stats.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/utils/Regions.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/utils/Regions.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/ATeam.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/ATeam.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/AWorld.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/AWorld.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/border/Border$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/border/Border$1.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/border/Border$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/border/Border$2.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/border/Border.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/border/Border.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/DropFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/DropFile.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/TeamFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/TeamFile.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/kits/KitManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/kits/KitManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/timer/Timer$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/timer/Timer$1.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/timer/Timer$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/timer/Timer$2.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/BlockUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/BlockUtil.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/HoloUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/HoloUtil.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/MapReset.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/MapReset.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Regions.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Regions.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Spectator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Spectator.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/aclasses/ATeam.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/aclasses/ATeam.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/aclasses/AWorld.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/aclasses/AWorld.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/utils/Spectator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/utils/Spectator.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/ATablist.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/ATablist.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/AWorld$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/AWorld$1.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/aclasses/ARanking.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/aclasses/ARanking.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/files/RankingFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/files/RankingFile.java -------------------------------------------------------------------------------- /UHC/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//src/de/alpha/uhc/aclasses/AScoreboard.java=UTF-8 3 | -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/AScoreboard.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/AScoreboard.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/border/BorderManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/border/BorderManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/commands/UHCCommand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/commands/UHCCommand.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/CommandsFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/CommandsFile.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/ScoreboardFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/ScoreboardFile.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/kits/KitFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/kits/KitFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/ArmorStandUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/ArmorStandUtil.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/LobbyPasteUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/LobbyPasteUtil.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/ChatListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/Listener/ChatListener.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/commands/CoinsCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/commands/CoinsCommand.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/commands/UHCCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/commands/UHCCommand.java -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/utils/LobbyPasteUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/utils/LobbyPasteUtil.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/ChatListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/ChatListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/CraftListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/CraftListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/DeathListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/DeathListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/LobbyListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/LobbyListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/MotdListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/MotdListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/SoupListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/SoupListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/aclasses/AScoreboard$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/aclasses/AScoreboard$1.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/commands/CoinsCommand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/commands/CoinsCommand.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/commands/StartCommand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/commands/StartCommand.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/commands/StatsCommand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/commands/StatsCommand.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/DeathMessageFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/DeathMessageFile.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/SpawnFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/SpawnFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/mysql/Pair.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/mysql/Pair.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/files/SpawnFileManager.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/files/SpawnFileManager.java -------------------------------------------------------------------------------- /UHC-Remake/.idea/markdown-navigator/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/resources/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UHC-Remake 2 | author: AlphaHelix 3 | version: 2.8 4 | main: de.alphahelix.uhc.UHC 5 | depend: [AlphaLibary] -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/GameEndListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/GameEndListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/InGameListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/InGameListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/MiningListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/MiningListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/HologramFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/HologramFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/MessageFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/MessageFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/OptionsFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/OptionsFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/files/PlayerFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/files/PlayerFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/mysql/MySQLAPI.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/mysql/MySQLAPI.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/GameEndListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/Listener/GameEndListener.java -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/interfaces/ITimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.interfaces; 2 | 3 | public interface ITimer { 4 | void run(); 5 | } -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/PlayerJoinListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/PlayerJoinListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Cuboid$CuboidIterator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Cuboid$CuboidIterator.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/UUID/PlayerUUID.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/UUID/PlayerUUID.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/UUID/UUIDFetcher.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/UUID/UUIDFetcher.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/file/SimpleFile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/file/SimpleFile.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/ItemBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/ItemBuilder.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/SimpleTitle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/SimpleTitle.class -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/PlayerJoinListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/src/de/alpha/uhc/Listener/PlayerJoinListener.java -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/Listener/CustomDeathListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/Listener/CustomDeathListener.class -------------------------------------------------------------------------------- /UHC/bin/de/alpha/uhc/utils/Cuboid$CuboidDirection.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/alpha/uhc/utils/Cuboid$CuboidDirection.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/file/SimpleFile$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/file/SimpleFile$1.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/ColorData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/ColorData.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/ItemData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/ItemData.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/SkullData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/SkullData.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/mysql/MySQLDataType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/mysql/MySQLDataType.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/mysql/MySQLManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/mysql/MySQLManager.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/SimpleActionBar.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/SimpleActionBar.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/SimplePacketMod.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/SimplePacketMod.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/SimpleTablist.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/SimpleTablist.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/command/SimpleCommand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/command/SimpleCommand.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/PotionData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/PotionData.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/SaveField.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/SaveField.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/SaveMethod.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/SaveMethod.class -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/UUID/UUIDFetcher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/AlphasLibary/de/popokaka/alphalibary/UUID/UUIDFetcher.java -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/file/SimpleFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/AlphasLibary/de/popokaka/alphalibary/file/SimpleFile.java -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLAPI.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLAPI.java -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/LeatherItemBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/LeatherItemBuilder.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/FireworkData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/FireworkData.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/mysql/MySQLFileManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/mysql/MySQLFileManager.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil$1.class -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLManager.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLManager.java -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/REnumPlayerInfoAction.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/REnumPlayerInfoAction.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/ReflectionUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/ReflectionUtil.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/SimplePotionEffect.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/SimplePotionEffect.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/WrongDataException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/WrongDataException.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/nms/SimpleTitle$TitleAction.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/nms/SimpleTitle$TitleAction.class -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/resources/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UHCConfigEditor 2 | version: ${project.version} 3 | main: de.alphahelix.uhcconfigeditor.UHCConfigEditor 4 | authors: [AlphaHelix] 5 | -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/item/data/SimpleFireworkEffect.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/item/data/SimpleFireworkEffect.class -------------------------------------------------------------------------------- /UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil$EquipmentSlot.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HelixOW/UHC-Spigot/HEAD/UHC/bin/de/popokaka/alphalibary/reflection/PacketUtil$EquipmentSlot.class -------------------------------------------------------------------------------- /UHC-Remake/.idea/dictionaries/MaxHe.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | minecraft 5 | 6 | 7 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLDataType.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.mysql; 2 | 3 | public enum MySQLDataType { 4 | VARCHAR, CHAR, TEXT, INT, BIGINT, SMALLINT, TINYINT 5 | } 6 | -------------------------------------------------------------------------------- /UHC/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /UHC/bin/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UHC 2 | author: AlphaHelix 3 | version: 1.6 4 | main: de.alpha.uhc.Core 5 | softdepend: [WorldEdit] 6 | 7 | commands: 8 | uhc: 9 | usage: /uhc 10 | description: The Basic UHC Command. -------------------------------------------------------------------------------- /UHC/src/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UHC 2 | author: AlphaHelix 3 | version: 1.6 4 | main: de.alpha.uhc.Core 5 | softdepend: [WorldEdit] 6 | 7 | commands: 8 | uhc: 9 | usage: /uhc 10 | description: The Basic UHC Command. -------------------------------------------------------------------------------- /UHC-Remastered/src/main/resources/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UHC Remastered 2 | version: ${project.version} 3 | main: de.alphahelix.uhcremastered.UHCRemastered 4 | depend: [AlphaLibary] 5 | authors: [AlphaHelix] 6 | website: https://alphahelixdev.github.io 7 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/lists/MaterialList.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhcconfigeditor.lists; 2 | 3 | import javax.swing.*; 4 | 5 | public class MaterialList extends JList { 6 | public MaterialList() { 7 | 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/kotlinc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/ItemData.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import org.bukkit.inventory.ItemStack; 4 | 5 | public abstract class ItemData { 6 | public abstract void applyOn(ItemStack applyOn) throws WrongDataException; 7 | } 8 | -------------------------------------------------------------------------------- /UHC/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /UHC/.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /UHC/.idea/artifacts/UHC_1_9.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | H:/1.9-server/plugins 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/codeStyleSettings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 9 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/WrongDataException.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | @SuppressWarnings("serial") 4 | class WrongDataException extends Exception { 5 | public WrongDataException(ItemData data) { 6 | super("Exception while trying to apply the DataType: " + data.getClass().getName()); 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /UHCConfigEditor/.idea/artifacts/UHCConfigEditor_jar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | H:/servers/1.11-server/plugins 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /UHC-Remake/achievement_help.uhc: -------------------------------------------------------------------------------- 1 | //since BETA 2.5 2 | 3 | Slayer - Kill 500 People 4 | Winner - Win 50 times 5 | Dragonslayer - kill the ender dragon 6 | omg diamonds - find diamonds 7 | burn baby burn - kill someone with fire/lava 8 | highway to hell - go to the nether 9 | glowing in the dark - enchant your armor for the first time 10 | senor boom boom - blow someone up with tnt 11 | 12 | -------------------------------------------------------------------------------- /UHC/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /UHC/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | UHC-1.9 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/AlphaRadioButton.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhcconfigeditor; 2 | 3 | import de.alphahelix.uhcconfigeditor.ui.ButtonUI; 4 | 5 | import javax.swing.*; 6 | import java.awt.*; 7 | 8 | public class AlphaRadioButton extends JRadioButton { 9 | 10 | public AlphaRadioButton() { 11 | setBackground(Color.GRAY); 12 | setForeground(Color.WHITE); 13 | setUI(new ButtonUI()); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/AlphaLibary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/AlphaButton.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhcconfigeditor; 2 | 3 | import de.alphahelix.uhcconfigeditor.ui.ButtonUI; 4 | 5 | import javax.swing.*; 6 | import java.awt.*; 7 | 8 | public class AlphaButton extends JButton { 9 | public AlphaButton() { 10 | setFont(new Font("Segoe UI", Font.PLAIN, 16)); 11 | setBackground(Color.GRAY); 12 | setForeground(Color.WHITE); 13 | setUI(new ButtonUI()); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__junit_junit_4_10.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/frames/BorderFrame.jfd: -------------------------------------------------------------------------------- 1 | JFDML JFormDesigner: "6.0.0.0.84" Java: "1.8.0_112-release" encoding: "UTF-8" 2 | 3 | new FormModel { 4 | contentType: "form/swing" 5 | root: new FormRoot { 6 | add( new FormWindow( "javax.swing.JFrame", new FormLayoutManager( class com.jformdesigner.runtime.NullLayout ) ) { 7 | name: "this" 8 | "title": "Border" 9 | }, new FormLayoutConstraints( null ) { 10 | "location": new java.awt.Point( 110, 144 ) 11 | "size": new java.awt.Dimension( 586, 300 ) 12 | } ) 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_yaml_snakeyaml_1_17.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__com_google_guava_guava_17_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__commons_lang_commons_lang_2_6.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/nms/REnumPlayerInfoAction.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.nms; 2 | 3 | import de.popokaka.alphalibary.reflection.ReflectionUtil; 4 | 5 | public enum REnumPlayerInfoAction { 6 | 7 | ADD_PLAYER (0), UPDATE_GAME_MODE (1), UPDATE_LATENCY (2), UPDATE_DISPLAY_NAME (3), REMOVE_PLAYER (4); 8 | 9 | private final int index; 10 | 11 | REnumPlayerInfoAction(int enumIndex) { 12 | this.index = enumIndex; 13 | } 14 | 15 | public Object getPlayerInfoAction() { 16 | return ReflectionUtil.getNmsClass("PacketPlayOutPlayerInfo$EnumPlayerInfoAction").getEnumConstants()[index]; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/util/MapUtil.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.util; 2 | 3 | import java.util.*; 4 | 5 | /** 6 | * Created by AlphaHelixDev. 7 | */ 8 | public class MapUtil { 9 | 10 | public static > Map sortByValue(Map map) { 11 | List> list = new LinkedList<>(map.entrySet()); 12 | list.sort(Comparator.comparing(o -> (o.getValue()))); 13 | Map result = new LinkedHashMap<>(); 14 | for (Map.Entry entry : list) { 15 | result.put(entry.getKey(), entry.getValue()); 16 | } 17 | return result; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/mysql/Pair.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.mysql; 2 | 3 | public class Pair { 4 | 5 | private final K element0; 6 | private final V element1; 7 | 8 | public static Pair createPair(K element0, V element1) { 9 | return new Pair<>(element0, element1); 10 | } 11 | 12 | private Pair(K element0, V element1) { 13 | this.element0 = element0; 14 | this.element1 = element1; 15 | } 16 | 17 | public K getElement0() { 18 | return element0; 19 | } 20 | 21 | public V getElement1() { 22 | return element1; 23 | } 24 | 25 | } -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/reflection/SaveMethod.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.reflection; 2 | 3 | import java.lang.reflect.Method; 4 | 5 | public class SaveMethod { 6 | 7 | private Method m; 8 | 9 | public SaveMethod(Method m) { 10 | try { 11 | m.setAccessible(true); 12 | this.m = m; 13 | } catch (Exception e) { 14 | e.printStackTrace(); 15 | } 16 | } 17 | 18 | public Object invoke(Object instance , Boolean stackTrace , Object... args) { 19 | try { 20 | return m.invoke(instance, args); 21 | } catch (Exception e) { 22 | if(stackTrace) e.printStackTrace(); 23 | } 24 | return null; 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/EntropyListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 6 | import de.alphahelix.uhc.register.UHCRegister; 7 | import org.bukkit.event.EventHandler; 8 | 9 | public class EntropyListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onEnd(LobbyEndEvent e) { 13 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ENTROPY)) return; 14 | 15 | UHCRegister.getEntropyTimer().startDrainingTimer(); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__com_googlecode_json_simple_json_simple_1_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/utils/BlockUtil.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.utils; 2 | 3 | import org.bukkit.block.BlockFace; 4 | 5 | import de.alpha.uhc.Core; 6 | 7 | import java.util.ArrayList; 8 | import java.util.Collections; 9 | 10 | public class BlockUtil { 11 | 12 | 13 | public BlockUtil(Core c) { 14 | } 15 | 16 | public ArrayList getRelative() { 17 | ArrayList faces = new ArrayList<>(); 18 | 19 | Collections.addAll(faces, BlockFace.values()); 20 | 21 | faces.remove(BlockFace.SELF); 22 | faces.remove(BlockFace.UP); 23 | faces.remove(BlockFace.DOWN); 24 | return faces; 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_spigotmc_spigot_1_11_2_R0_1_SNAPSHOT.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__net_md_5_bungeecord_chat_1_10_SNAPSHOT.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/util/LobbyUtil.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.util; 2 | 3 | import org.bukkit.entity.Player; 4 | 5 | import java.util.LinkedList; 6 | 7 | public class LobbyUtil { 8 | 9 | private static LinkedList builders = new LinkedList<>(); 10 | 11 | public static void grandBuildPermission(Player p) { 12 | if (!builders.contains(p.getName())) builders.add(p.getName()); 13 | } 14 | 15 | public static void revokeBuildPermission(Player p) { 16 | if (builders.contains(p.getName())) builders.remove(p.getName()); 17 | } 18 | 19 | public static boolean hasBuildPermission(Player p) { 20 | return builders.contains(p.getName()); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_bukkit_craftbukkit_1_11_2_R0_1_SNAPSHOT.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHCConfigEditor/.idea/libraries/Maven__org_bukkit_craftbukkit_1_11_2_R0_1_SNAPSHOT.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate 4 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 5 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 6 | org.eclipse.jdt.core.compiler.compliance=1.8 7 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 8 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 9 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 10 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 11 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 12 | org.eclipse.jdt.core.compiler.source=1.8 13 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NoFurnaceListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.inventory.CraftItemEvent; 8 | 9 | public class NoFurnaceListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onCraft(CraftItemEvent e) { 13 | if (e.isCancelled()) return; 14 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NO_FURNACE)) return; 15 | 16 | if (e.getRecipe().getResult().getType().equals(Material.FURNACE)) e.setCancelled(true); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/util/RankingUtil.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.util; 2 | 3 | import de.alphahelix.uhc.register.UHCFileRegister; 4 | import org.bukkit.Location; 5 | import org.bukkit.entity.Player; 6 | 7 | public class RankingUtil { 8 | 9 | public static void updateArmorStands(Player p) { 10 | if (!UHCFileRegister.getLocationsFile().isConfigurationSection("Rankings")) return; 11 | for (String ranks : UHCFileRegister.getLocationsFile().getConfigurationSection("Rankings").getKeys(false)) { 12 | Location l = UHCFileRegister.getLocationsFile().getRankingArmorstandLocation(Integer.parseInt(ranks)); 13 | 14 | NPCUtil.spawnRanking(l, Integer.parseInt(ranks), p); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /UHC-Remake/.idea/libraries/Maven__org_spigotmc_spigot_api_1_11_2_R0_1_SNAPSHOT.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BloodyLapisListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | 9 | public class BloodyLapisListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onMine(BlockBreakEvent e) { 13 | if (e.isCancelled()) return; 14 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLOODY_LAPIS)) return; 15 | if (!e.getBlock().getType().equals(Material.LAPIS_ORE)) return; 16 | 17 | e.getPlayer().damage(2.0); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/PvCListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.entity.EntityDamageByBlockEvent; 7 | import org.bukkit.event.entity.EntityDamageEvent.DamageCause; 8 | 9 | public class PvCListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onDamage(EntityDamageByBlockEvent e) { 13 | if (e.isCancelled()) return; 14 | if (!Scenarios.isPlayedAndEnabled(Scenarios.PVC)) return; 15 | 16 | if (!e.getCause().equals(DamageCause.CONTACT)) e.setCancelled(true); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/SimplePotionEffect.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import org.bukkit.potion.PotionEffect; 4 | import org.bukkit.potion.PotionEffectType; 5 | 6 | class SimplePotionEffect { 7 | 8 | private int durationInSec = 0; 9 | private PotionEffectType potionType = PotionEffectType.SPEED; 10 | private int amplifier = 0; 11 | 12 | public SimplePotionEffect(int durationInSec , PotionEffectType type , int amplifier) { 13 | this.durationInSec = durationInSec; 14 | this.potionType = type; 15 | this.amplifier = amplifier; 16 | } 17 | 18 | public PotionEffect createEffect() { 19 | return new PotionEffect(this.potionType , this.durationInSec * 20 , this.amplifier); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BloodyDiamondsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | 9 | public class BloodyDiamondsListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onMine(BlockBreakEvent e) { 13 | if (e.isCancelled()) return; 14 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLOODY_DIAMONDS)) return; 15 | if (!e.getBlock().getType().equals(Material.DIAMOND_ORE)) return; 16 | 17 | e.getPlayer().damage(2.0); 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /UHC/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/LobbyFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.alphalibary.item.ItemBuilder; 5 | import org.bukkit.Material; 6 | 7 | public class LobbyFile extends SimpleFile { 8 | 9 | public LobbyFile() { 10 | super("plugins/UHC-Remake","lobby.uhc"); 11 | } 12 | 13 | @Override 14 | public void addValues() { 15 | setDefault("Enabled", false); 16 | 17 | setInventoryItem("Item", new ItemBuilder(Material.REDSTONE).setName("&cLeave").build(), 8); 18 | } 19 | 20 | public boolean isLobbymode() { 21 | return getBoolean("Enabled"); 22 | } 23 | 24 | public InventoryItem getItem() { 25 | return getInventoryItem("Item"); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/enums/GState.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.enums; 2 | 3 | import de.alphahelix.uhc.register.UHCFileRegister; 4 | 5 | public enum GState { 6 | 7 | LOBBY, PERIOD_OF_PEACE, WARMUP, IN_GAME, DEATHMATCH_WARMUP, DEATHMATCH, END; 8 | 9 | private static GState currentState; 10 | 11 | public static String getGameStateName() { 12 | return UHCFileRegister.getStatusFile().getStatus(getCurrentState()); 13 | } 14 | 15 | public static boolean isState(GState toCompare) { 16 | return toCompare == currentState; 17 | } 18 | 19 | public static GState getCurrentState() { 20 | return currentState; 21 | } 22 | 23 | public static void setCurrentState(GState currentState) { 24 | GState.currentState = currentState; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BirdsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.entity.Player; 9 | import org.bukkit.event.EventHandler; 10 | 11 | public class BirdsListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEnd(LobbyEndEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BIRDS)) return; 16 | 17 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 18 | p.setAllowFlight(true); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NoNetherListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.player.PlayerPortalEvent; 7 | import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; 8 | 9 | public class NoNetherListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onPortal(PlayerPortalEvent e) { 13 | if (e.isCancelled()) 14 | return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NO_GOING_BACK)) 16 | return; 17 | 18 | if (e.getCause().equals(TeleportCause.NETHER_PORTAL)) 19 | e.setCancelled(true); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/reflection/SaveField.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.reflection; 2 | 3 | import java.lang.reflect.Field; 4 | 5 | public class SaveField { 6 | 7 | private Field f; 8 | 9 | public SaveField(Field f) { 10 | try { 11 | f.setAccessible(true); 12 | this.f = f; 13 | } catch (Exception e) { 14 | e.printStackTrace(); 15 | } 16 | } 17 | 18 | public Object get(Object instance) { 19 | try { 20 | return f.get(instance); 21 | } catch (Exception e) { 22 | e.printStackTrace(); 23 | } 24 | return null; 25 | } 26 | 27 | public void set(Object instance , Object value , boolean stackTrace) { 28 | try { 29 | f.set(instance, value); 30 | } catch (Exception e) { 31 | if(stackTrace) e.printStackTrace(); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/TablistFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | 5 | public class TablistFile extends SimpleFile { 6 | 7 | public TablistFile() { 8 | super("plugins/UHC-Remake","tablist.uhc"); 9 | } 10 | 11 | @Override 12 | public void addValues() { 13 | setDefault("Header", "&b>> &cWelcome [player] &cat UHC &b<< \n &7Players:"); 14 | setDefault("Footer", 15 | "&b>> &cThere are currently &4[playercount] &cplayers online &b<< \n &b>> &cCurrent Gamestate: &4[gamestatus] &b<<"); 16 | } 17 | 18 | public String getHeader() { 19 | return getColorString("Header"); 20 | } 21 | 22 | public String getFooter() { 23 | return getColorString("Footer"); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/events/timers/LobbyEndEvent.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.events.timers; 2 | 3 | import org.bukkit.event.Event; 4 | import org.bukkit.event.HandlerList; 5 | 6 | public class LobbyEndEvent extends Event { 7 | 8 | private static final HandlerList handlers = new HandlerList(); 9 | 10 | /** 11 | * Gets a list of handlers handling this event. 12 | * 13 | * @return A list of handlers handling this event. 14 | */ 15 | public final static HandlerList getHandlerList() { 16 | return handlers; 17 | } 18 | 19 | /** 20 | * Gets a list of handlers handling this event. 21 | * 22 | * @return A list of handlers handling this event. 23 | */ 24 | @Override 25 | public final HandlerList getHandlers() { 26 | return handlers; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/SpectatorFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.alphalibary.item.ItemBuilder; 5 | import org.bukkit.Material; 6 | 7 | public class SpectatorFile extends SimpleFile { 8 | 9 | public SpectatorFile() { 10 | super("plugins/UHC-Remake","spectator.uhc"); 11 | } 12 | 13 | @Override 14 | public void addValues() { 15 | setDefault("GUI name", "§aTeleport"); 16 | 17 | setInventoryItem("Item", new ItemBuilder(Material.MAGMA_CREAM).setName("&cTeleporter").build(), 4); 18 | } 19 | 20 | public String getInventoryName() { 21 | return getColorString("GUI name"); 22 | } 23 | 24 | public InventoryItem getItem() { 25 | return getInventoryItem("Item"); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/events/timers/InGameStartEvent.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.events.timers; 2 | 3 | import org.bukkit.event.Event; 4 | import org.bukkit.event.HandlerList; 5 | 6 | public class InGameStartEvent extends Event { 7 | 8 | private static final HandlerList handlers = new HandlerList(); 9 | 10 | /** 11 | * Gets a list of handlers handling this event. 12 | * 13 | * @return A list of handlers handling this event. 14 | */ 15 | public final static HandlerList getHandlerList() { 16 | return handlers; 17 | } 18 | 19 | /** 20 | * Gets a list of handlers handling this event. 21 | * 22 | * @return A list of handlers handling this event. 23 | */ 24 | @Override 25 | public final HandlerList getHandlers() { 26 | return handlers; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/events/timers/DeathMatchStartEvent.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.events.timers; 2 | 3 | import org.bukkit.event.Event; 4 | import org.bukkit.event.HandlerList; 5 | 6 | public class DeathMatchStartEvent extends Event { 7 | 8 | private static final HandlerList handlers = new HandlerList(); 9 | 10 | /** 11 | * Gets a list of handlers handling this event. 12 | * 13 | * @return A list of handlers handling this event. 14 | */ 15 | public final static HandlerList getHandlerList() { 16 | return handlers; 17 | } 18 | 19 | /** 20 | * Gets a list of handlers handling this event. 21 | * 22 | * @return A list of handlers handling this event. 23 | */ 24 | @Override 25 | public final HandlerList getHandlers() { 26 | return handlers; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/SheepLoversListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.player.PlayerShearEntityEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | public class SheepLoversListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onShear(PlayerShearEntityEvent e) { 14 | if (e.isCancelled()) return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.SHEEP_LOVERS)) return; 16 | 17 | if (Math.random() < 0.05) 18 | e.getPlayer().getWorld().dropItemNaturally(e.getEntity().getLocation(), new ItemStack(Material.GOLD_INGOT)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CaptainsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.inventory.CraftItemEvent; 8 | 9 | public class CaptainsListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onCraft(CraftItemEvent e) { 13 | if (e.isCancelled()) 14 | return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CAPTAINS)) 16 | return; 17 | 18 | if (e.getRecipe().getResult().getType().name().contains("SWORD") 19 | && !e.getRecipe().getResult().getType().equals(Material.IRON_SWORD)) 20 | e.setCancelled(true); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CompensationListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.entity.PlayerDeathEvent; 7 | 8 | public class CompensationListener extends SimpleListener { 9 | 10 | @EventHandler 11 | public void onDeath(PlayerDeathEvent e) { 12 | if (!Scenarios.isPlayedAndEnabled(Scenarios.COMPENSATION)) 13 | return; 14 | if (!(e.getEntity().getKiller() != null)) 15 | return; 16 | 17 | e.getEntity().getKiller().setMaxHealth(e.getEntity().getKiller().getMaxHealth() + (e.getEntity().getMaxHealth() / 4)); 18 | e.getEntity().getKiller().setHealth(e.getEntity().getKiller().getMaxHealth()); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/UnitFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | 5 | public class UnitFile extends SimpleFile { 6 | 7 | public UnitFile() { 8 | super("plugins/UHC-Remake","units.uhc"); 9 | } 10 | 11 | @Override 12 | public void addValues() { 13 | setDefault("Seconds", "sec"); 14 | setDefault("Minutes", "min"); 15 | setDefault("Hours", "h"); 16 | setDefault("Days", "d"); 17 | } 18 | 19 | public String getSeconds() { 20 | return getString("Seconds"); 21 | } 22 | 23 | public String getMinutes() { 24 | return getString("Minutes"); 25 | } 26 | 27 | public String getHours() { 28 | return getString("Hours"); 29 | } 30 | 31 | public String getDays() { 32 | return getString("Days"); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NotShinyEnoughListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.inventory.CraftItemEvent; 8 | 9 | public class NotShinyEnoughListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onCraft(CraftItemEvent e) { 13 | if (e.isCancelled()) 14 | return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NOT_SHINY_ENOUGH)) 16 | return; 17 | 18 | if (e.getRecipe().getResult().getType().equals(Material.ENCHANTMENT_TABLE) 19 | || e.getRecipe().getResult().getType().equals(Material.ANVIL)) 20 | e.setCancelled(true); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/WebCageListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Location; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.entity.PlayerDeathEvent; 8 | 9 | public class WebCageListener extends SimpleListener { 10 | 11 | @EventHandler 12 | public void onDeath(PlayerDeathEvent e) { 13 | if (!Scenarios.isPlayedAndEnabled(Scenarios.WEB_CAGE)) return; 14 | 15 | Location m = e.getEntity().getLocation(); 16 | 17 | for (int xz = 0; xz < 5; xz++) { 18 | m.getWorld().getBlockAt(m.getBlockX() + xz, m.getBlockY() + xz, m.getBlockZ() + xz); 19 | m.getWorld().getBlockAt(m.getBlockX() - xz, m.getBlockY(), m.getBlockZ() - xz); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/FalloutListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.GState; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.register.UHCRegister; 9 | import org.bukkit.event.EventHandler; 10 | 11 | public class FalloutListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEnd(LobbyEndEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.FALLOUT)) 16 | return; 17 | 18 | UHCRegister.getDeathmatchTimer().setSeconds((45 * 60) + UHCFileRegister.getTimerFile().getLenght(GState.DEATHMATCH_WARMUP)); 19 | UHCRegister.getFalloutTimer().startDamageTimer(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/DamageCycleListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.GState; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.register.UHCRegister; 9 | import org.bukkit.event.EventHandler; 10 | 11 | public class DamageCycleListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEnd(LobbyEndEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DAMAGE_CYCLE)) return; 16 | 17 | UHCRegister.getDeathmatchTimer().setSeconds((45 * 60) + UHCFileRegister.getTimerFile().getLenght(GState.DEATHMATCH_WARMUP)); 18 | UHCRegister.getDamageCycleTimer().startCycleTimer(); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/DimensonalInversionListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Bukkit; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | 12 | public class DimensonalInversionListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onEnd(LobbyEndEvent e) { 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DIMENSIONAL_INVERSION)) return; 17 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 18 | p.teleport(Bukkit.getWorld("UHC-Nether").getSpawnLocation()); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/SkyHighListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.GState; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.register.UHCRegister; 9 | import org.bukkit.event.EventHandler; 10 | 11 | public class SkyHighListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEnd(LobbyEndEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.SKY_HIGH)) 16 | return; 17 | 18 | UHCRegister.getDeathmatchTimer().setSeconds((45 * 60) + UHCFileRegister.getTimerFile().getLenght(GState.DEATHMATCH_WARMUP)); 19 | UHCRegister.getFalloutTimer().startDamageTimer(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UHC/.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/GoToHellListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.GState; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.register.UHCRegister; 9 | import org.bukkit.event.EventHandler; 10 | 11 | public class GoToHellListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEnd(LobbyEndEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.GO_TO_HELL)) 16 | return; 17 | 18 | UHCRegister.getDeathmatchTimer().setSeconds((45 * 60) + UHCFileRegister.getTimerFile().getLenght(GState.DEATHMATCH_WARMUP)); 19 | UHCRegister.getGoToHellTimer().startDamageTimer(); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/mysql/MySQLFileManager.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.mysql; 2 | 3 | import de.popokaka.alphalibary.file.SimpleFile; 4 | 5 | class MySQLFileManager { 6 | 7 | private static SimpleFile getMySQLFile() { 8 | 9 | return new SimpleFile(MySQLAPI.getMySQLFilePath(), "mysql.yml"); 10 | } 11 | 12 | public static void setStandardMySQL() { 13 | SimpleFile cfg = getMySQLFile(); 14 | 15 | cfg.setDefault("username", "root"); 16 | cfg.setDefault("password", "password"); 17 | cfg.setDefault("database", "localhost"); 18 | cfg.setDefault("host", "localhost"); 19 | cfg.setDefault("port", "3306"); 20 | 21 | cfg.save(); 22 | } 23 | 24 | public static void readMySQL() { 25 | SimpleFile cfg = getMySQLFile(); 26 | 27 | MySQLAPI.setMySQLConnection(cfg.getString("username"), cfg.getString("password"), cfg.getString("database"), cfg.getString("host"), cfg.getString("port")); 28 | } 29 | } -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CatsEyesListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.entity.Player; 9 | import org.bukkit.event.EventHandler; 10 | import org.bukkit.potion.PotionEffect; 11 | import org.bukkit.potion.PotionEffectType; 12 | 13 | public class CatsEyesListener extends SimpleListener { 14 | 15 | @EventHandler 16 | public void onEnd(LobbyEndEvent e) { 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CATEYES)) return; 18 | 19 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 20 | p.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, 9999999, 1), true); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BombersListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.item.ItemBuilder; 4 | import de.alphahelix.alphalibary.listener.SimpleListener; 5 | import de.alphahelix.alphalibary.utils.Util; 6 | import de.alphahelix.uhc.enums.Scenarios; 7 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 8 | import de.alphahelix.uhc.util.PlayerUtil; 9 | import org.bukkit.Material; 10 | import org.bukkit.entity.Player; 11 | import org.bukkit.event.EventHandler; 12 | 13 | public class BombersListener extends SimpleListener { 14 | 15 | @EventHandler 16 | public void onEnd(LobbyEndEvent e) { 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BOMBERS)) 18 | return; 19 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 20 | p.getInventory().addItem(new ItemBuilder(Material.FLINT_AND_STEEL).setUnbreakable(true).build()); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/ChickenListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | public class ChickenListener extends SimpleListener { 14 | 15 | @EventHandler 16 | public void onEnd(LobbyEndEvent e) { 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CHICKEN)) 18 | return; 19 | 20 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 21 | p.setHealthScale(0.5); 22 | p.getInventory().addItem(new ItemStack(Material.GOLDEN_APPLE)); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/SkullData.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import org.bukkit.Material; 4 | import org.bukkit.inventory.ItemStack; 5 | import org.bukkit.inventory.meta.SkullMeta; 6 | 7 | public class SkullData extends ItemData{ 8 | 9 | public SkullData(String name) { 10 | ownerName = name; 11 | } 12 | 13 | private String ownerName = null; 14 | 15 | @Override 16 | public void applyOn(ItemStack applyOn) throws WrongDataException{ 17 | try { 18 | if(!(applyOn.getType() == Material.SKULL_ITEM)) { 19 | return; 20 | } 21 | 22 | applyOn.setDurability((short) 3); 23 | 24 | SkullMeta skullMeta = (SkullMeta) applyOn.getItemMeta(); 25 | skullMeta.setOwner(ownerName); 26 | applyOn.setItemMeta(skullMeta); 27 | 28 | } catch (Exception e) { 29 | try { 30 | throw new WrongDataException(this); 31 | } catch (WrongDataException ignored) { 32 | 33 | } 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/EnderDragonRushListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.player.PlayerPortalEvent; 7 | import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; 8 | 9 | public class EnderDragonRushListener extends SimpleListener { 10 | 11 | private boolean first = true; 12 | 13 | @EventHandler 14 | public void onPortal(PlayerPortalEvent e) { 15 | if (e.isCancelled()) 16 | return; 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ENDERDRAGON_RUSH)) 18 | return; 19 | if (!e.getCause().equals(TeleportCause.END_PORTAL)) 20 | return; 21 | 22 | if (first) { 23 | e.getPlayer().setHealth(e.getPlayer().getMaxHealth()); 24 | first = false; 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BenchBlitzListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.inventory.CraftItemEvent; 8 | 9 | import java.util.ArrayList; 10 | 11 | public class BenchBlitzListener extends SimpleListener { 12 | 13 | private ArrayList hasWorkbench = new ArrayList<>(); 14 | 15 | @EventHandler 16 | public void onCraft(CraftItemEvent e) { 17 | if (e.isCancelled()) return; 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BENCH_BLITZ)) return; 19 | if (e.getRecipe().getResult().getType().equals(Material.WORKBENCH)) 20 | if (hasWorkbench.contains(e.getWhoClicked().getName())) 21 | e.setCancelled(true); 22 | else 23 | hasWorkbench.add(e.getWhoClicked().getName()); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/UHCConfigEditor.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhcconfigeditor; 2 | 3 | import de.alphahelix.alphaapi.AlphaAPI; 4 | import de.alphahelix.uhcconfigeditor.frames.MainFrame; 5 | 6 | import java.util.HashMap; 7 | import java.util.Iterator; 8 | import java.util.Map; 9 | import java.util.Set; 10 | 11 | public class UHCConfigEditor extends AlphaAPI { 12 | 13 | @Override 14 | public void onEnable() { 15 | new MainFrame(); 16 | } 17 | 18 | public static Object[][] toArray(HashMap map) { 19 | Object[][] arr = new Object[map.size()][2]; 20 | Set entries = map.entrySet(); 21 | Iterator entriesIterator = entries.iterator(); 22 | 23 | int i = 0; 24 | while (entriesIterator.hasNext()) { 25 | Map.Entry mapping = (Map.Entry) entriesIterator.next(); 26 | 27 | arr[i][0] = mapping.getKey(); 28 | arr[i][1] = mapping.getValue(); 29 | 30 | i++; 31 | } 32 | 33 | return arr; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/ConfirmFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.alphalibary.item.ItemBuilder; 5 | import org.bukkit.Material; 6 | 7 | public class ConfirmFile extends SimpleFile { 8 | 9 | public ConfirmFile() { 10 | super("plugins/UHC-Remake","confirm.uhc"); 11 | } 12 | 13 | @Override 14 | public void addValues() { 15 | setDefault("GUI name", "&cConfirm!"); 16 | 17 | setInventoryItem("Accept", new ItemBuilder(Material.STAINED_GLASS_PANE).setDamage((short) 5).setName("§aConfirm!").build(), 0); 18 | setInventoryItem("Deny", new ItemBuilder(Material.STAINED_GLASS_PANE).setDamage((short) 14).setName("§cDeny!").build(), 0); 19 | } 20 | 21 | public String getInventoryName() { 22 | return getColorString("GUI name"); 23 | } 24 | 25 | public InventoryItem getItem(boolean accept) { 26 | return (accept ? getInventoryItem("Accept") : getInventoryItem("Deny")); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BiomeParanoiaListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.ChatColor; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.player.PlayerMoveEvent; 8 | 9 | import java.util.Random; 10 | 11 | public class BiomeParanoiaListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onMove(PlayerMoveEvent e) { 15 | if (e.isCancelled()) return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BIOME_PARANOIA)) return; 17 | if (e.getTo().getBlock().getBiome().equals(e.getFrom().getBlock().getBiome())) return; 18 | 19 | e.getPlayer().setPlayerListName(getRandomColor() + e.getPlayer().getDisplayName()); 20 | } 21 | 22 | private ChatColor getRandomColor() { 23 | int index = new Random().nextInt(ChatColor.values().length); 24 | return ChatColor.values()[index]; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/PotionData.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import java.util.ArrayList; 4 | 5 | import org.bukkit.inventory.ItemStack; 6 | import org.bukkit.inventory.meta.PotionMeta; 7 | import org.bukkit.potion.PotionEffect; 8 | 9 | public class PotionData extends ItemData{ 10 | 11 | private final ArrayList toApply = new ArrayList<>(); 12 | 13 | public PotionData addEffect(SimplePotionEffect... effects) { 14 | for(SimplePotionEffect effect : effects) { 15 | this.toApply.add(effect.createEffect()); 16 | } 17 | return this; 18 | } 19 | 20 | @Override 21 | public void applyOn(ItemStack applyOn) throws WrongDataException { 22 | try { 23 | 24 | PotionMeta meta = (PotionMeta) applyOn.getItemMeta(); 25 | for(PotionEffect effect : toApply) { 26 | meta.addCustomEffect(effect, false); 27 | } 28 | applyOn.setItemMeta(meta); 29 | 30 | } catch (Exception e) { 31 | throw new WrongDataException(this); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/EveryRoseListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.item.ItemBuilder; 4 | import de.alphahelix.alphalibary.listener.SimpleListener; 5 | import de.alphahelix.alphalibary.utils.Util; 6 | import de.alphahelix.uhc.enums.Scenarios; 7 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 8 | import de.alphahelix.uhc.util.PlayerUtil; 9 | import org.bukkit.Material; 10 | import org.bukkit.enchantments.Enchantment; 11 | import org.bukkit.entity.Player; 12 | import org.bukkit.event.EventHandler; 13 | 14 | public class EveryRoseListener extends SimpleListener { 15 | 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.EVERY_ROSE)) return; 20 | 21 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 22 | p.getInventory().addItem(new ItemBuilder(Material.GOLD_CHESTPLATE).addEnchantment(Enchantment.THORNS, 3).build()); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/PreviewInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.inventorys.SimpleMovingInventory; 4 | import de.alphahelix.uhc.instances.Kit; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.inventory.ItemStack; 8 | 9 | import java.util.ArrayList; 10 | 11 | public class PreviewInventory { 12 | 13 | public void fillInventory(Player p, Kit k) { 14 | ArrayList stacks = new ArrayList<>(); 15 | for (ItemStack is : k.getItems()) { 16 | if (is != null) 17 | stacks.add(is); 18 | } 19 | 20 | new SimpleMovingInventory( 21 | p, 22 | 9 * 5, 23 | stacks, 24 | UHCFileRegister.getKitsFile().getPreviewInventoryName(k), 25 | UHCFileRegister.getKitsFile().getNextItem().getItemStack(), 26 | UHCFileRegister.getKitsFile().getPreviousItem().getItemStack()); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/HorselessListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.entity.EntityType; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.entity.CreatureSpawnEvent; 8 | import org.bukkit.event.entity.EntitySpawnEvent; 9 | 10 | public class HorselessListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onSpawn(CreatureSpawnEvent e) { 14 | if (e.isCancelled()) return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.HORSELESS)) return; 16 | 17 | if (e.getEntityType() == EntityType.HORSE) e.setCancelled(true); 18 | } 19 | 20 | @EventHandler 21 | public void onSpawn(EntitySpawnEvent e) { 22 | if (e.isCancelled()) return; 23 | if (!Scenarios.isPlayedAndEnabled(Scenarios.HORSELESS)) return; 24 | 25 | if (e.getEntityType() == EntityType.HORSE) e.setCancelled(true); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/DamageDogersListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.entity.Player; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.entity.EntityDamageEvent; 8 | 9 | import java.util.Random; 10 | 11 | public class DamageDogersListener extends SimpleListener { 12 | 13 | private int amount = 0; 14 | 15 | public DamageDogersListener() { 16 | amount = new Random().nextInt(25); 17 | } 18 | 19 | @EventHandler 20 | public void onHurt(EntityDamageEvent e) { 21 | if (e.isCancelled()) 22 | return; 23 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DAMAGE_DODGERS)) 24 | return; 25 | if (!(e.getEntity() instanceof Player)) 26 | return; 27 | 28 | if (amount > 0) { 29 | ((Player) e.getEntity()).setHealth(0.0); 30 | 31 | amount--; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/TimberListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.block.Block; 7 | import org.bukkit.block.BlockFace; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.block.BlockBreakEvent; 10 | 11 | public class TimberListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onBlockBreak(BlockBreakEvent e) { 15 | if (e.isCancelled()) return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.TIMBER)) return; 17 | 18 | Block b = e.getBlock(); 19 | 20 | if (b.getType() != Material.LOG && b.getType() != Material.LOG_2) { 21 | return; 22 | } 23 | 24 | b = b.getRelative(BlockFace.UP); 25 | 26 | while (b.getType() == Material.LOG || b.getType() == Material.LOG_2) { 27 | b.breakNaturally(); 28 | b = b.getRelative(BlockFace.UP); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/ErraticPvPListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.InGameStartEvent; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.scheduler.BukkitRunnable; 10 | 11 | public class ErraticPvPListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onStart(InGameStartEvent e) { 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ERRATIC_PVP)) 16 | return; 17 | 18 | int temp = 1; 19 | 20 | if (Math.random() < 0.5) { 21 | temp = 3; 22 | } 23 | final int delay = temp; 24 | 25 | new BukkitRunnable() { 26 | public void run() { 27 | Bukkit.getWorld("UHC").setPVP(!Bukkit.getWorld("UHC").getPVP()); 28 | } 29 | }.runTaskTimer(UHC.getInstance(), 0, (20 * 60) * delay); 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/ArrowListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import org.bukkit.entity.Arrow; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.entity.ProjectileLaunchEvent; 9 | 10 | import java.util.ArrayList; 11 | 12 | public class ArrowListener extends SimpleListener { 13 | 14 | private static ArrayList hasShot = new ArrayList<>(); 15 | 16 | @EventHandler 17 | public void onShot(ProjectileLaunchEvent e) { 18 | if (!(e.getEntity().getShooter() instanceof Player)) return; 19 | Player p = (Player) e.getEntity().getShooter(); 20 | 21 | if (e.isCancelled()) return; 22 | if (!(e.getEntity() instanceof Arrow)) return; 23 | if (hasShot.contains(p.getName())) return; 24 | 25 | Util.cooldown(5, p.getName(), hasShot); 26 | 27 | p.launchProjectile(Arrow.class); 28 | p.launchProjectile(Arrow.class); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/HashtagBowListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.entity.EntityDamageByEntityEvent; 9 | 10 | public class HashtagBowListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onHurt(EntityDamageByEntityEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.HASHTAGBOW)) 17 | return; 18 | if (!(e.getEntity() instanceof Player)) 19 | return; 20 | if (!(e.getDamager() instanceof Player)) 21 | return; 22 | 23 | Player dmger = (Player) e.getDamager(); 24 | 25 | if (dmger.getInventory().getItemInHand() == null) 26 | return; 27 | if (!dmger.getInventory().getItemInHand().getType().equals(Material.BOW)) 28 | e.setCancelled(true); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /UHC-Remake/changelog.uhc: -------------------------------------------------------------------------------- 1 | Version 2.9: 2 | + own crates 3 | + mysql improvements 4 | + bug fixes 5 | + git repo now has every class 6 | + pregen is now default false 7 | + Kings of the Sky Scenario is now playable 8 | + general code improvements / code cleanup 9 | + If player leaves a villager will be spawned. 10 | + Chatspam has been reduced 11 | - custom Arenas 12 | 13 | Version 2.8.1: 14 | + important bugfix! 15 | 16 | Version 2.8: 17 | + added 1.8 and 1.9 jar in one 18 | + few little bugfixes 19 | 20 | Version 2.7: 21 | + /uhcadmin worlds command 22 | + ranks in tablist 23 | + important Stats fix with file 24 | + /ranks command 25 | 26 | Version 2.6: 27 | + games, killdeathrate statistic 28 | + more stats above statsnpc 29 | + little bugfixes 30 | + preconfigured configs for download 31 | + kits are now unlimited 32 | 33 | Version BETA 2.5: 34 | + Achievements (more to come) 35 | + custom ranks dependent on wins, kills, points 36 | + new winning statistic 37 | + scenario placeholder for holograms 38 | + little bugfixes 39 | + merged alphalibary in same package -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BlitzListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.DeathMatchStartEvent; 7 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 8 | import de.alphahelix.uhc.util.PlayerUtil; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | 12 | public class BlitzListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onEnd(LobbyEndEvent e) { 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLITZ)) return; 17 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 18 | p.setHealth(2.5); 19 | } 20 | } 21 | 22 | @EventHandler 23 | public void onStart(DeathMatchStartEvent e) { 24 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLITZ)) return; 25 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 26 | p.setHealth(20.0); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/LiveWithRegretListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.alphalibary.uuid.UUIDFetcher; 6 | import de.alphahelix.uhc.enums.Scenarios; 7 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 8 | import de.alphahelix.uhc.util.PlayerUtil; 9 | import de.alphahelix.uhc.util.StatsUtil; 10 | import org.bukkit.entity.Player; 11 | import org.bukkit.event.EventHandler; 12 | import org.bukkit.potion.PotionEffect; 13 | import org.bukkit.potion.PotionEffectType; 14 | 15 | public class LiveWithRegretListener extends SimpleListener { 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.LIVE_WITH_REGRET)) return; 20 | 21 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 22 | if (StatsUtil.getDeaths(UUIDFetcher.getUUID(p)) > 0) { 23 | p.addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 99999, 1)); 24 | } 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CertainCircumstancesListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | import java.util.Random; 14 | 15 | public class CertainCircumstancesListener extends SimpleListener { 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CERTAIN_CIRCUMSTANCES)) return; 20 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 21 | p.getInventory().addItem(new ItemStack(getRandomMaterial())); 22 | } 23 | } 24 | 25 | private Material getRandomMaterial() { 26 | int index = new Random().nextInt(Material.values().length); 27 | return Material.values()[index]; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/PuppyPowerListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.EntityType; 10 | import org.bukkit.entity.Player; 11 | import org.bukkit.event.EventHandler; 12 | import org.bukkit.inventory.ItemStack; 13 | import org.bukkit.material.SpawnEgg; 14 | 15 | public class PuppyPowerListener extends SimpleListener { 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.PUPPY_POWER)) 20 | return; 21 | 22 | ItemStack spawnEgg = new SpawnEgg(EntityType.WOLF).toItemStack(12); 23 | 24 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 25 | p.getInventory().addItem(new ItemStack(Material.BONE, 64), new ItemStack(Material.ROTTEN_FLESH, 64), spawnEgg); 26 | } 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/LightsOutListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockPlaceEvent; 8 | import org.bukkit.event.inventory.CraftItemEvent; 9 | 10 | public class LightsOutListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onCraft(CraftItemEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.LIGHTS_OUT)) 17 | return; 18 | 19 | if (e.getRecipe().getResult().getType().equals(Material.TORCH)) 20 | e.setCancelled(true); 21 | } 22 | 23 | @EventHandler 24 | public void onPlace(BlockPlaceEvent e) { 25 | if (e.isCancelled()) 26 | return; 27 | if (!Scenarios.isPlayedAndEnabled(Scenarios.LIGHTS_OUT)) 28 | return; 29 | 30 | if (e.getBlockPlaced().getType().equals(Material.TORCH)) 31 | e.setCancelled(true); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NoSprintListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.player.PlayerToggleSprintEvent; 9 | import org.bukkit.scheduler.BukkitRunnable; 10 | 11 | public class NoSprintListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onPlayerToggleSprint(PlayerToggleSprintEvent e) { 15 | if (e.isCancelled()) 16 | return; 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NO_SPRINT)) 18 | return; 19 | 20 | final Player p = e.getPlayer(); 21 | 22 | if (e.isSprinting()) { 23 | final int foodlevel = p.getFoodLevel(); 24 | p.setFoodLevel(5); 25 | 26 | new BukkitRunnable() { 27 | public void run() { 28 | p.setFoodLevel(foodlevel); 29 | } 30 | }.runTaskLater(UHC.getInstance(), 20 * 2); 31 | } 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/FireworkData.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import org.bukkit.FireworkEffect; 7 | import org.bukkit.Material; 8 | import org.bukkit.inventory.ItemStack; 9 | import org.bukkit.inventory.meta.FireworkMeta; 10 | 11 | public class FireworkData extends ItemData { 12 | private final List allEffects = new ArrayList<>(); 13 | 14 | public FireworkData(SimpleFireworkEffect... effects) { 15 | for(SimpleFireworkEffect effect : effects) { 16 | allEffects.add(effect.build()); 17 | } 18 | } 19 | 20 | @Override 21 | public void applyOn(ItemStack applyOn) throws WrongDataException{ 22 | try { 23 | if(!(applyOn.getType() == Material.FIREWORK)) { 24 | return; 25 | } 26 | 27 | FireworkMeta fireworkMeta = (FireworkMeta) applyOn.getItemMeta(); 28 | fireworkMeta.addEffects(allEffects); 29 | applyOn.setItemMeta(fireworkMeta); 30 | } catch(Exception e) { 31 | try { 32 | throw new WrongDataException(this); 33 | } catch (WrongDataException ignored) { 34 | 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/CrateInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.inventorys.SimpleMovingInventory; 4 | import de.alphahelix.uhc.instances.Crate; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.inventory.ItemStack; 8 | 9 | import java.util.ArrayList; 10 | import java.util.List; 11 | 12 | public class CrateInventory { 13 | 14 | public void fillInventory(Player p, List crates) { 15 | ArrayList stacks = new ArrayList<>(); 16 | 17 | for (String crateName : crates) { 18 | if (Crate.getCrateByRawName(crateName) == null) continue; 19 | stacks.add(Crate.getCrateByRawName(crateName).getIcon()); 20 | } 21 | 22 | new SimpleMovingInventory( 23 | p, 24 | ((crates.size() / 9) + 1) * 18, 25 | stacks, 26 | UHCFileRegister.getCrateFile().getInventoryName(), 27 | UHCFileRegister.getKitsFile().getNextItem().getItemStack(), 28 | UHCFileRegister.getKitsFile().getPreviousItem().getItemStack()); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/enums/ArmorBar.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.enums; 2 | 3 | import org.bukkit.Material; 4 | 5 | public enum ArmorBar { 6 | 7 | NONE(0), 8 | 9 | LEATHER_HELMET(0.5), 10 | LEATHER_CHESTPLATE(1.5), 11 | LEATHER_LEGGINGS(1), 12 | LEATHER_BOOTS(0.5), 13 | 14 | GOLD_HELMET(1), 15 | GOLD_CHESTPLATE(2.5), 16 | GOLD_LEGGINGS(1.5), 17 | GOLD_BOOTS(0.5), 18 | 19 | CHAIN_HELMET(1), 20 | CHAIN_CHESTPLATE(2.5), 21 | CHAIN_LEGGINGS(2), 22 | CHAIN_BOOTS(0.5), 23 | 24 | IRON_HELMET(1), 25 | IRON_CHESTPLATE(3), 26 | IRON_LEGGINGS(2.5), 27 | IRON_BOOTS(1), 28 | 29 | DIAMOND_HELMET(1.5), 30 | DIAMOND_CHESTPLATE(4), 31 | DIAMOND_LEGGINGS(3), 32 | DIAMOND_BOOTS(2.5); 33 | 34 | private final double points; 35 | 36 | ArmorBar(double points) { 37 | this.points = points; 38 | } 39 | 40 | public static ArmorBar getArmorBarByMaterial(Material m) { 41 | try { 42 | return ArmorBar.valueOf(m.name()); 43 | } catch (Exception e) { 44 | return ArmorBar.NONE; 45 | } 46 | } 47 | 48 | public double getPoints() { 49 | return points; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /UHC-Remastered/src/main/java/de/alphahelix/uhcremastered/UHCRemastered.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) <2018> 3 | * 4 | * This program is free software: you can redistribute it under the 5 | * terms of the GNU General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License. 7 | * 8 | * This program is distributed in the hope that it will be useful, 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | * GNU General Public License for more details. 12 | * 13 | * You should have received a copy of the GNU General Public License 14 | * along with this program. If not, see . 15 | */ 16 | 17 | package de.alphahelix.uhcremastered; 18 | 19 | import org.bukkit.plugin.java.JavaPlugin; 20 | 21 | public class UHCRemastered extends JavaPlugin { 22 | 23 | private static UHCRemastered instance; 24 | 25 | public static UHCRemastered getInstance() { 26 | return instance; 27 | } 28 | 29 | @Override 30 | public void onEnable() { 31 | instance = this; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC/AlphasLibary/de/popokaka/alphalibary/item/data/SimpleFireworkEffect.java: -------------------------------------------------------------------------------- 1 | package de.popokaka.alphalibary.item.data; 2 | 3 | import org.bukkit.Color; 4 | import org.bukkit.FireworkEffect; 5 | import org.bukkit.FireworkEffect.Type; 6 | 7 | public class SimpleFireworkEffect { 8 | 9 | private Type type = Type.BALL; 10 | private Color[] color = new Color[] {Color.WHITE}; 11 | private boolean flicker = false; 12 | private boolean trail = false; 13 | private Color[] fades = new Color[] {Color.WHITE}; 14 | 15 | public SimpleFireworkEffect (Type type) { 16 | this.type = type; 17 | } 18 | public SimpleFireworkEffect setColor(Color... color) { 19 | this.color = color; 20 | return this; 21 | } 22 | public SimpleFireworkEffect setFade(Color... fades) { 23 | this.fades = fades; 24 | return this; 25 | } 26 | public SimpleFireworkEffect setTrail(boolean trail) { 27 | this.trail = trail; 28 | return this; 29 | } 30 | public SimpleFireworkEffect setFlicker(boolean flicker) { 31 | this.flicker = flicker; 32 | return this; 33 | } 34 | 35 | public FireworkEffect build() { 36 | return FireworkEffect.builder().flicker(flicker).trail(trail).withColor(color).withFade(fades).with(type).build(); 37 | } 38 | } -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CityWorldListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | import java.util.Random; 14 | 15 | public class CityWorldListener extends SimpleListener { 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CITYWORLD)) 20 | return; 21 | 22 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 23 | for (int slot = 0; slot < 36 + 9; slot++) { 24 | p.getInventory().setItem(slot, new ItemStack(getRandomMaterial())); 25 | } 26 | } 27 | } 28 | 29 | private Material getRandomMaterial() { 30 | int index = new Random().nextInt(Material.values().length); 31 | return Material.values()[index]; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/HalfOreListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.block.BlockBreakEvent; 9 | 10 | import java.util.ArrayList; 11 | 12 | public class HalfOreListener extends SimpleListener { 13 | 14 | private static ArrayList miners = new ArrayList<>(); 15 | 16 | private boolean hasMined(Player p) { 17 | return miners.contains(p.getName()); 18 | } 19 | 20 | @EventHandler 21 | public void onMine(BlockBreakEvent e) { 22 | Player p = e.getPlayer(); 23 | 24 | if (e.isCancelled()) return; 25 | 26 | if (!Scenarios.isPlayedAndEnabled(Scenarios.HALF_ORES)) return; 27 | 28 | if (!e.getBlock().getType().name().contains("ORE")) return; 29 | 30 | if (hasMined(p)) { 31 | miners.remove(p.getName()); 32 | } else { 33 | miners.add(p.getName()); 34 | e.setCancelled(true); 35 | e.getBlock().setType(Material.AIR); 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/GoldenFleeceListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.entity.Skeleton; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.entity.EntitySpawnEvent; 9 | import org.bukkit.inventory.ItemStack; 10 | 11 | public class GoldenFleeceListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onSpawn(EntitySpawnEvent e) { 15 | if (e.isCancelled()) return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.GOLDEN_FLEECE)) return; 17 | 18 | if (e.getEntity() instanceof Skeleton) { 19 | if (Math.random() < 0.4) { 20 | Skeleton s = (Skeleton) e.getEntity(); 21 | 22 | s.getEquipment().setHelmet(new ItemStack(Material.GOLD_HELMET)); 23 | s.getEquipment().setChestplate(new ItemStack(Material.GOLD_CHESTPLATE)); 24 | s.getEquipment().setLeggings(new ItemStack(Material.GOLD_LEGGINGS)); 25 | s.getEquipment().setBoots(new ItemStack(Material.GOLD_BOOTS)); 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/BorderFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import org.bukkit.Effect; 5 | 6 | public class BorderFile extends SimpleFile { 7 | 8 | public BorderFile() { 9 | super("plugins/UHC-Remake","border.uhc"); 10 | } 11 | 12 | @Override 13 | public void addValues() { 14 | setDefault("effect", Effect.MOBSPAWNER_FLAMES.name()); 15 | setDefault("damage (hearts)", 2); 16 | setDefault("delay (min)", 10); 17 | setDefault("moving distance", 500); 18 | setDefault("size", 3000); 19 | setDefault("shrinks", true); 20 | } 21 | 22 | public int getDamageInHearts() { 23 | return getInt("damage (hearts)"); 24 | } 25 | 26 | public int getDelay() { 27 | return getInt("delay (min)"); 28 | } 29 | 30 | public int getMovingDistance() { 31 | return getInt("moving distance"); 32 | } 33 | 34 | public int getSize() { 35 | return getInt("size"); 36 | } 37 | 38 | public boolean doShrinking() { 39 | return getBoolean("shrinks"); 40 | } 41 | 42 | public Effect getEffect() { 43 | return Effect.getByName(getString("effect")); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/SharedHealthListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import de.alphahelix.uhc.util.TeamManagerUtil; 6 | import org.bukkit.OfflinePlayer; 7 | import org.bukkit.entity.Player; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.entity.EntityDamageEvent; 10 | 11 | public class SharedHealthListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onDamage(EntityDamageEvent e) { 15 | if (e.isCancelled()) return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.SHARED_HEALTH)) return; 17 | if (!(e.getEntity() instanceof Player)) return; 18 | 19 | Player p = (Player) e.getEntity(); 20 | 21 | if (TeamManagerUtil.isInOneTeam(p) == null) return; 22 | e.setCancelled(true); 23 | int count = TeamManagerUtil.isInOneTeam(p).getPlayers().size(); 24 | p.damage(e.getDamage() / count); 25 | for (OfflinePlayer teamMate : TeamManagerUtil.isInOneTeam(p).getPlayers()) { 26 | if (teamMate.isOnline()) 27 | teamMate.getPlayer().damage(e.getDamage() / count); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/EnderDanceListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.World.Environment; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.block.BlockPlaceEvent; 9 | 10 | import java.util.ArrayList; 11 | 12 | public class EnderDanceListener extends SimpleListener { 13 | 14 | private ArrayList alreadyHealed = new ArrayList<>(); 15 | 16 | @EventHandler 17 | public void onPlace(BlockPlaceEvent e) { 18 | if (e.isCancelled()) 19 | return; 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ENDER_DANCE)) 21 | return; 22 | 23 | if (e.getBlockPlaced().getType().equals(Material.JUKEBOX)) { 24 | if (alreadyHealed.contains(e.getPlayer().getName())) 25 | return; 26 | if (!e.getBlock().getWorld().getEnvironment().equals(Environment.THE_END)) 27 | return; 28 | e.setCancelled(true); 29 | alreadyHealed.add(e.getPlayer().getName()); 30 | e.getPlayer().setHealth(e.getPlayer().getMaxHealth()); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/FlowerPowerListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | import java.util.Random; 11 | 12 | public class FlowerPowerListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onBreak(BlockBreakEvent e) { 16 | if (e.isCancelled()) 17 | return; 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.FLOWER_POWER)) 19 | return; 20 | 21 | if (e.getBlock().getType().equals(Material.RED_ROSE) || e.getBlock().getType().equals(Material.YELLOW_FLOWER)) { 22 | double r = Math.random(); 23 | 24 | if (!(r < 0.2)) 25 | return; 26 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(getRandomMaterial())); 27 | } 28 | } 29 | 30 | private Material getRandomMaterial() { 31 | int index = new Random().nextInt(Material.values().length); 32 | return Material.values()[index]; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/FoodNeophobiaListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.player.PlayerItemConsumeEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | import java.util.HashMap; 11 | 12 | public class FoodNeophobiaListener extends SimpleListener { 13 | 14 | private HashMap food = new HashMap<>(); 15 | 16 | @EventHandler 17 | public void onItemComsune(PlayerItemConsumeEvent e) { 18 | if (e.isCancelled()) 19 | return; 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.FOOD_NEOPHOBIA)) 21 | return; 22 | if (e.getItem().getType().equals(Material.MILK_BUCKET) || e.getItem().getType().equals(Material.POTION)) 23 | return; 24 | 25 | if (!food.containsKey(e.getPlayer().getName())) 26 | food.put(e.getPlayer().getName(), e.getItem()); 27 | else { 28 | if (!food.get(e.getPlayer().getName()).getType().equals(e.getItem().getType())) { 29 | e.getPlayer().damage(2.0); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NoGoingBackListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.player.PlayerPortalEvent; 7 | import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; 8 | 9 | import java.util.ArrayList; 10 | 11 | public class NoGoingBackListener extends SimpleListener { 12 | 13 | ArrayList went = new ArrayList<>(); 14 | 15 | @EventHandler 16 | public void onPortal(PlayerPortalEvent e) { 17 | if (e.isCancelled()) 18 | return; 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NO_GOING_BACK)) 20 | return; 21 | 22 | if (e.getCause().equals(TeleportCause.NETHER_PORTAL)) { 23 | if (went.contains(e.getPlayer().getName())) 24 | e.setCancelled(true); 25 | else 26 | went.add(e.getPlayer().getName()); 27 | } else if (e.getCause().equals(TeleportCause.END_PORTAL)) { 28 | if (went.contains(e.getPlayer().getName())) 29 | e.setCancelled(true); 30 | else 31 | went.add(e.getPlayer().getName()); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/DoubleOrNothingListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | public class DoubleOrNothingListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onBreak(BlockBreakEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DOUBLE_OR_NOTHING)) 17 | return; 18 | 19 | if (e.getBlock().getType().equals(Material.IRON_ORE) || e.getBlock().getType().equals(Material.GOLD_ORE) 20 | || e.getBlock().getType().equals(Material.DIAMOND_ORE)) { 21 | if (Math.random() < 1) { 22 | ItemStack drop = e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])[0]; 23 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), drop); 24 | } else { 25 | e.setCancelled(true); 26 | e.getBlock().setType(Material.AIR); 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/SkyHighTimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.alphalibary.utils.Util; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.util.PlayerUtil; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.entity.Player; 8 | import org.bukkit.scheduler.BukkitRunnable; 9 | import org.bukkit.scheduler.BukkitTask; 10 | 11 | public class SkyHighTimer { 12 | 13 | private static BukkitTask damage; 14 | 15 | public void stopTimer() { 16 | if (damage != null) 17 | damage.cancel(); 18 | damage = null; 19 | } 20 | 21 | public boolean isRunning() { 22 | return damage != null; 23 | } 24 | 25 | public void startDamageTimer() { 26 | if (isRunning()) { 27 | if (Bukkit.getScheduler().isCurrentlyRunning(damage.getTaskId())) 28 | return; 29 | return; 30 | } 31 | damage = new BukkitRunnable() { 32 | public void run() { 33 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 34 | if (p.getLocation().getBlockY() < 101) 35 | p.damage(1.0); 36 | } 37 | } 38 | }.runTaskTimer(UHC.getInstance(), (20 * 60) * 45, (20 * 30)); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/FalloutTimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.alphalibary.utils.Util; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.util.PlayerUtil; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.entity.Player; 8 | import org.bukkit.scheduler.BukkitRunnable; 9 | import org.bukkit.scheduler.BukkitTask; 10 | 11 | public class FalloutTimer { 12 | 13 | private static BukkitTask damage; 14 | 15 | public void stopTimer() { 16 | if (damage != null) 17 | damage.cancel(); 18 | damage = null; 19 | } 20 | 21 | public boolean isRunning() { 22 | return damage != null; 23 | } 24 | 25 | public void startDamageTimer() { 26 | if (isRunning()) { 27 | if (Bukkit.getScheduler().isCurrentlyRunning(damage.getTaskId())) 28 | return; 29 | return; 30 | } 31 | 32 | damage = new BukkitRunnable() { 33 | public void run() { 34 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 35 | if (p.getLocation().getBlockY() > 60) 36 | p.damage(1.0); 37 | } 38 | } 39 | }.runTaskTimer(UHC.getInstance(), (20 * 60) * 45, (20 * 30)); 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/commands/InfoCommand.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.commands; 2 | 3 | import de.alphahelix.alphalibary.command.SimpleCommand; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.register.UHCFileRegister; 7 | import org.bukkit.ChatColor; 8 | import org.bukkit.command.CommandSender; 9 | 10 | import java.util.List; 11 | 12 | public class InfoCommand extends SimpleCommand { 13 | 14 | public InfoCommand() { 15 | super("informations", "Get informations about the current scenario", "scenario", "infos"); 16 | } 17 | 18 | @Override 19 | public boolean execute(CommandSender cs, String label, String[] args) { 20 | 21 | if (UHC.isScenarios()) 22 | cs.sendMessage(UHC.getPrefix() + UHCFileRegister.getScenarioFile().getCustomScenarioName(Scenarios.getScenario()) + ChatColor.DARK_GRAY + ": " + UHCFileRegister.getScenarioHelpFile().getScenarioDescriptionAsOneString(Scenarios.getScenario())); 23 | else { 24 | cs.sendMessage(UHC.getPrefix() 25 | + UHCFileRegister.getMessageFile().getScenariomode()); 26 | } 27 | return true; 28 | } 29 | 30 | @Override 31 | public List tabComplete(CommandSender cs, String label, String[] args) { 32 | return null; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/files/CommandsFile.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.files; 2 | 3 | import de.alpha.uhc.Core; 4 | import de.alpha.uhc.Registery; 5 | import de.popokaka.alphalibary.file.SimpleFile; 6 | 7 | public class CommandsFile { 8 | 9 | 10 | private Core pl; 11 | private Registery r; 12 | 13 | public CommandsFile(Core c) { 14 | this.pl = c; 15 | this.r = pl.getRegistery(); 16 | } 17 | 18 | private final SimpleFile file = getCmdFile(); 19 | 20 | private SimpleFile getCmdFile() { 21 | return new SimpleFile("plugins/UHC", "commands.yml"); 22 | } 23 | 24 | public void addCommands() { 25 | file.setDefault("Use start command", true); 26 | file.setDefault("Use stats command", true); 27 | 28 | file.setDefault("start command disabled", "&7Please use&8: &b/uhc start"); 29 | file.setDefault("stats command disabled", "&7Please use&8: &b/uhc stats"); 30 | } 31 | 32 | public void loadCommands() { 33 | r.getStartCommand().setUse(file.getBoolean("Use start command")); 34 | r.getStatsCommand().setUs(file.getBoolean("Use stats command")); 35 | 36 | 37 | r.getStartCommand().setErr(file.getColorString("start command disabled")); 38 | r.getStatsCommand().setEr(file.getColorString("stats command disabled")); 39 | 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/DamageCycleTimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.uhc.UHC; 4 | import de.alphahelix.uhc.util.PlayerUtil; 5 | import org.bukkit.Bukkit; 6 | import org.bukkit.scheduler.BukkitRunnable; 7 | import org.bukkit.scheduler.BukkitTask; 8 | 9 | import java.util.Random; 10 | 11 | public class DamageCycleTimer { 12 | 13 | private static BukkitTask cycle; 14 | 15 | public void stopTimer() { 16 | if (cycle != null) 17 | cycle.cancel(); 18 | cycle = null; 19 | } 20 | 21 | public boolean isRunning() { 22 | return cycle != null; 23 | } 24 | 25 | public void startCycleTimer() { 26 | if (cycle != null) { 27 | if (Bukkit.getScheduler().isCurrentlyRunning(cycle.getTaskId())) 28 | return; 29 | return; 30 | } 31 | 32 | cycle = new BukkitRunnable() { 33 | public void run() { 34 | String pName = PlayerUtil.getSurvivors() 35 | .get(new Random().nextInt(PlayerUtil.getSurvivors().size())); 36 | if (Bukkit.getPlayer(pName) == null) 37 | return; 38 | 39 | Bukkit.getPlayer(pName).damage(1); 40 | } 41 | }.runTaskTimer(UHC.getInstance(), 0, (20 * 60) * 5); 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /UHCConfigEditor/src/main/java/de/alphahelix/uhcconfigeditor/ui/ButtonUI.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhcconfigeditor.ui; 2 | 3 | import javax.swing.*; 4 | import javax.swing.border.EmptyBorder; 5 | import javax.swing.plaf.basic.BasicButtonUI; 6 | import java.awt.*; 7 | 8 | public class ButtonUI extends BasicButtonUI { 9 | 10 | @Override 11 | public void installUI (JComponent c) { 12 | super.installUI(c); 13 | AbstractButton button = (AbstractButton) c; 14 | button.setOpaque(false); 15 | button.setBorder(new EmptyBorder(5, 15, 5, 15)); 16 | } 17 | 18 | @Override 19 | public void paint (Graphics g, JComponent c) { 20 | AbstractButton b = (AbstractButton) c; 21 | paintBackground(g, b, b.getModel().isPressed() ? 2 : 0); 22 | super.paint(g, c); 23 | } 24 | 25 | private void paintBackground (Graphics g, JComponent c, int yOffset) { 26 | Dimension size = c.getSize(); 27 | Graphics2D g2 = (Graphics2D) g; 28 | g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); 29 | g.setColor(c.getBackground().darker()); 30 | g.fillRoundRect(0, yOffset, size.width, size.height - yOffset, 10, 10); 31 | g.setColor(c.getBackground()); 32 | g.fillRoundRect(0, yOffset, size.width - 5, size.height + yOffset - 5, 10, 10); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/PyrotechnicsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.entity.EntityDamageEvent; 12 | import org.bukkit.inventory.ItemStack; 13 | 14 | public class PyrotechnicsListener extends SimpleListener { 15 | 16 | @EventHandler 17 | public void onEnd(LobbyEndEvent e) { 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.PYROTECHNICS)) return; 19 | 20 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 21 | p.getInventory().addItem(new ItemStack(Material.WATER_BUCKET)); 22 | } 23 | } 24 | 25 | @EventHandler 26 | public void onDamage(EntityDamageEvent e) { 27 | if (e.isCancelled()) return; 28 | if (!Scenarios.isPlayedAndEnabled(Scenarios.PYROTECHNICS)) return; 29 | if (!(e.getEntity() instanceof Player)) return; 30 | 31 | if (!e.getCause().name().contains("FIRE")) e.getEntity().setFireTicks(20 * 8); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/BestPvETimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.alphalibary.utils.Util; 4 | import de.alphahelix.uhc.UHC; 5 | import org.bukkit.Bukkit; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.scheduler.BukkitRunnable; 8 | import org.bukkit.scheduler.BukkitTask; 9 | 10 | import java.util.ArrayList; 11 | 12 | public class BestPvETimer { 13 | 14 | private static BukkitTask best; 15 | 16 | public void stopTimer() { 17 | if (best != null) 18 | best.cancel(); 19 | best = null; 20 | } 21 | 22 | public boolean isRunning() { 23 | return best != null; 24 | } 25 | 26 | public void startBestTimer(final ArrayList bestList) { 27 | if (best != null) { 28 | if (Bukkit.getScheduler().isCurrentlyRunning(best.getTaskId())) 29 | return; 30 | return; 31 | } 32 | 33 | best = new BukkitRunnable() { 34 | public void run() { 35 | for (Player p : Util.makePlayerArray(bestList)) { 36 | if (p.getHealth() == 20.0 || p.getHealth() == 0.0) 37 | continue; 38 | p.setHealth(p.getHealth() + 1); 39 | } 40 | } 41 | }.runTaskTimer(UHC.getInstance(), 0, (20 * 60) * 10); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/TimerFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.uhc.enums.GState; 5 | 6 | public class TimerFile extends SimpleFile { 7 | 8 | public TimerFile() { 9 | super("plugins/UHC-Remake","timers.uhc"); 10 | } 11 | 12 | @Override 13 | public void addValues() { 14 | setDefault("Lobby", 120); 15 | setDefault("Period of peace", 600); 16 | setDefault("Warmup", 600); 17 | setDefault("Deathmatch warmup", 3600); 18 | setDefault("Deathmatch", 30); 19 | setDefault("End", 30); 20 | } 21 | 22 | public int getLenght(GState state) { 23 | switch (state) { 24 | case LOBBY: 25 | return getInt("Lobby"); 26 | case PERIOD_OF_PEACE: 27 | return getInt("Period of peace"); 28 | case WARMUP: 29 | return getInt("Warmup"); 30 | case IN_GAME: 31 | return getInt("In game"); 32 | case DEATHMATCH_WARMUP: 33 | return getInt("Deathmatch warmup"); 34 | case DEATHMATCH: 35 | return getInt("Deathmatch"); 36 | case END: 37 | return getInt("End"); 38 | default: 39 | return 0; 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/SwitcherooListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Location; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.entity.Projectile; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.entity.EntityDamageByEntityEvent; 10 | 11 | public class SwitcherooListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onEntityDamageByEntity(EntityDamageByEntityEvent e) { 15 | if (e.isCancelled()) return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.SWITCHEROO)) return; 17 | if (e.getEntity() instanceof Player) { 18 | Player p = (Player) e.getEntity(); 19 | 20 | if (e.getDamager() instanceof Projectile) { 21 | Projectile proj = (Projectile) e.getDamager(); 22 | 23 | if (proj.getShooter() instanceof Player) { 24 | Player shooter = (Player) proj.getShooter(); 25 | 26 | Location loc1 = p.getLocation(); 27 | Location loc2 = shooter.getLocation(); 28 | 29 | shooter.teleport(loc1); 30 | p.teleport(loc2); 31 | } 32 | } 33 | } 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/InventorsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.UHC; 6 | import de.alphahelix.uhc.enums.Scenarios; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.util.PlayerUtil; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.inventory.CraftItemEvent; 12 | import org.bukkit.inventory.ItemStack; 13 | 14 | import java.util.ArrayList; 15 | 16 | public class InventorsListener extends SimpleListener { 17 | 18 | private ArrayList hasBeenCrafted = new ArrayList<>(); 19 | 20 | @EventHandler 21 | public void onCraft(CraftItemEvent e) { 22 | if (e.isCancelled()) 23 | return; 24 | if (!Scenarios.isPlayedAndEnabled(Scenarios.INVENTORS)) 25 | return; 26 | 27 | if (!hasBeenCrafted.contains(e.getRecipe().getResult())) { 28 | hasBeenCrafted.add(e.getRecipe().getResult()); 29 | for (Player p : Util.makePlayerArray(PlayerUtil.getAll())) { 30 | p.sendMessage(UHC.getPrefix() + UHCFileRegister.getMessageFile().getFirstCraftedItem((Player) e.getWhoClicked(), e.getRecipe().getResult())); 31 | } 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/EntropyTimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.alphalibary.utils.Util; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.util.PlayerUtil; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.entity.Player; 8 | import org.bukkit.scheduler.BukkitRunnable; 9 | import org.bukkit.scheduler.BukkitTask; 10 | 11 | public class EntropyTimer { 12 | 13 | private static BukkitTask draining; 14 | 15 | public void stopTimer() { 16 | if (draining != null) 17 | draining.cancel(); 18 | draining = null; 19 | } 20 | 21 | public boolean isRunning() { 22 | return draining != null; 23 | } 24 | 25 | public void startDrainingTimer() { 26 | if (draining != null) { 27 | if (Bukkit.getScheduler().isCurrentlyRunning(draining.getTaskId())) 28 | return; 29 | return; 30 | } 31 | 32 | draining = new BukkitRunnable() { 33 | public void run() { 34 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 35 | if (p.getLevel() == 0) 36 | p.setHealth(20.0); 37 | else 38 | p.setLevel(p.getLevel() - 1); 39 | } 40 | } 41 | }.runTaskTimer(UHC.getInstance(), 0, (20 * 60) * 10); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/GunsNRosesListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | public class GunsNRosesListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onBreak(BlockBreakEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.GUNS_N_ROSES)) 17 | return; 18 | 19 | if (e.getBlock().getType().equals(Material.RED_ROSE) || e.getBlock().getType().equals(Material.DOUBLE_PLANT)) { 20 | if (Math.random() < 0.02) { 21 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.BOW)); 22 | } 23 | } 24 | 25 | if (e.getBlock().getType().equals(Material.RED_ROSE)) { 26 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.ARROW)); 27 | } else if (e.getBlock().getType().equals(Material.DOUBLE_PLANT)) { 28 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.ARROW, 4)); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/files/ArmorStandFile.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.files; 2 | 3 | import org.bukkit.Bukkit; 4 | import org.bukkit.Location; 5 | import org.bukkit.World; 6 | 7 | import de.alpha.uhc.Core; 8 | import de.popokaka.alphalibary.file.SimpleFile; 9 | 10 | public class ArmorStandFile { 11 | 12 | public ArmorStandFile(Core c) { 13 | } 14 | 15 | private SimpleFile file = getASFile(); 16 | 17 | public SimpleFile getASFile() { 18 | return new SimpleFile("plugins/UHC", "armorstands.yml"); 19 | } 20 | 21 | public void addArmorStand(Location l) { 22 | 23 | int id = file.getKeys(false).size(); 24 | 25 | file.setDefault(id+".x", l.getBlockX()); 26 | file.setDefault(id+".y", l.getBlockY()); 27 | file.setDefault(id+".z", l.getBlockZ()); 28 | file.setDefault(id+".world", l.getWorld().getName()); 29 | file.save(); 30 | } 31 | 32 | public void removeArmorStand(Location l) { 33 | for(String id : file.getKeys(false)) { 34 | int x = file.getInt(id+".x"); 35 | int y = file.getInt(id+".y"); 36 | int z = file.getInt(id+".z"); 37 | World w = Bukkit.getWorld(file.getString(id+".world")); 38 | 39 | if(l.getBlockX() == x && l.getBlockY() == y && l.getBlockZ() == z && l.getWorld().getName() == w.getName()) { 40 | file.set(id, null); 41 | file.save(); 42 | } 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/AchievementInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.uuid.UUIDFetcher; 4 | import de.alphahelix.uhc.enums.UHCAchievements; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import de.alphahelix.uhc.util.StatsUtil; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.entity.Player; 9 | import org.bukkit.inventory.Inventory; 10 | 11 | /** 12 | * Created by AlphaHelixDev. 13 | */ 14 | public class AchievementInventory { 15 | 16 | private static Inventory inventory; 17 | 18 | public AchievementInventory() { 19 | inventory = Bukkit.createInventory(null, ((UHCAchievements.values().length / 9) + 1) * 9, UHCFileRegister.getAchievementFile().getInventoryName()); 20 | } 21 | 22 | public void openInventory(Player p) { 23 | for (int slot = 0; slot < getInventory().getSize(); slot++) { 24 | try { 25 | getInventory().setItem(slot, UHCAchievements.values()[slot].getIcon(StatsUtil.hasAchievement(UUIDFetcher.getUUID(p), UHCAchievements.values()[slot]))); 26 | } catch (Exception ignore) { 27 | } 28 | } 29 | p.openInventory(getInventory()); 30 | } 31 | 32 | public Inventory getInventory() { 33 | return inventory; 34 | } 35 | 36 | public void setInventory(Inventory inventory) { 37 | AchievementInventory.inventory = inventory; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/LongshotListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.entity.Arrow; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.entity.EntityDamageByEntityEvent; 9 | 10 | public class LongshotListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onEntityDamageByEntity(EntityDamageByEntityEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.LONGSHOTS) || Scenarios.isPlayedAndEnabled(Scenarios.REWARDING_LONGSHOTS)) 17 | return; 18 | if (!(e.getDamager() instanceof Arrow) || !(e.getEntity() instanceof Player)) { 19 | return; 20 | } 21 | 22 | Player p = (Player) e.getEntity(); 23 | Arrow damager = (Arrow) e.getDamager(); 24 | 25 | if (!(damager.getShooter() instanceof Player)) { 26 | return; 27 | } 28 | 29 | Player k = (Player) damager.getShooter(); 30 | double distance = k.getLocation().distance(p.getLocation()); 31 | 32 | if (distance >= 75) { 33 | p.damage(3); 34 | if (k.getHealth() > 18) 35 | k.setHealth(20); 36 | else k.setHealth(k.getHealth() + 2.0); 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/SchematicListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.util.schematic.SchematicManagerUtil; 6 | import org.bukkit.Material; 7 | import org.bukkit.entity.Player; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.block.Action; 10 | import org.bukkit.event.player.PlayerInteractEvent; 11 | 12 | public class SchematicListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onDefine(PlayerInteractEvent e) { 16 | Player p = e.getPlayer(); 17 | 18 | if (p.getInventory().getItemInHand().getType().equals(Material.GOLD_AXE) && (p.hasPermission("uhc.admin") || p.hasPermission("uhc.region"))) { 19 | if (e.getAction().equals(Action.LEFT_CLICK_BLOCK)) { 20 | e.setCancelled(true); 21 | SchematicManagerUtil.putFirstLocation(p, e.getClickedBlock().getLocation()); 22 | p.sendMessage(UHC.getPrefix() + "You've set the first Location to your location!"); 23 | } else if (e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) { 24 | e.setCancelled(true); 25 | SchematicManagerUtil.putSecondLocation(p, e.getClickedBlock().getLocation()); 26 | p.sendMessage(UHC.getPrefix() + "You've set the second Location to your location!"); 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/XtrAppleListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.event.block.LeavesDecayEvent; 9 | import org.bukkit.inventory.ItemStack; 10 | 11 | public class XtrAppleListener extends SimpleListener { 12 | 13 | @EventHandler 14 | public void onDecay(LeavesDecayEvent e) { 15 | if (e.isCancelled()) 16 | return; 17 | if (!Scenarios.isPlayedAndEnabled(Scenarios.XTR_APPLE)) 18 | return; 19 | 20 | if (Math.random() < 0.4) { 21 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.APPLE)); 22 | } 23 | } 24 | 25 | @EventHandler 26 | public void onBreak(BlockBreakEvent e) { 27 | if (e.isCancelled()) 28 | return; 29 | if (!Scenarios.isPlayedAndEnabled(Scenarios.XTR_APPLE)) 30 | return; 31 | 32 | if (!(e.getBlock().getType().equals(Material.LEAVES) || e.getBlock().getType().equals(Material.LEAVES_2))) 33 | return; 34 | 35 | if (Math.random() < 0.4) { 36 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.APPLE)); 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/timers/GoToHellTimer.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.timers; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.UHC; 6 | import de.alphahelix.uhc.util.PlayerUtil; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.World.Environment; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.scheduler.BukkitRunnable; 11 | import org.bukkit.scheduler.BukkitTask; 12 | 13 | public class GoToHellTimer extends SimpleListener { 14 | 15 | private static BukkitTask damage; 16 | 17 | public void stopTimer() { 18 | if (damage != null) 19 | damage.cancel(); 20 | damage = null; 21 | } 22 | 23 | public boolean isRunning() { 24 | return damage != null; 25 | } 26 | 27 | 28 | public void startDamageTimer() { 29 | if (isRunning()) { 30 | if (Bukkit.getScheduler().isCurrentlyRunning(damage.getTaskId())) 31 | return; 32 | return; 33 | } 34 | damage = new BukkitRunnable() { 35 | public void run() { 36 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 37 | if (p.getLocation().getWorld().getEnvironment().equals(Environment.NORMAL)) 38 | p.damage(1.0); 39 | } 40 | } 41 | }.runTaskTimer(UHC.getInstance(), (20 * 60) * 45, (20 * 30)); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/TripleOresListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | public class TripleOresListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onBreak(BlockBreakEvent e) { 14 | if (e.isCancelled()) return; 15 | if (!Scenarios.isPlayedAndEnabled(Scenarios.TRIPLE_ORES)) return; 16 | 17 | if (e.getBlock().getType().name().contains("ORE")) { 18 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])[0]); 19 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])[0]); 20 | } else if (e.getBlock().getType().equals(Material.GRAVEL)) { 21 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])[0]); 22 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])[0]); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/VeinMinerListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.block.Block; 6 | import org.bukkit.block.BlockFace; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.block.BlockBreakEvent; 9 | 10 | import java.util.ArrayList; 11 | 12 | public class VeinMinerListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onBreak(BlockBreakEvent e) { 16 | if (e.isCancelled()) 17 | return; 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.VEIN_MINER)) 19 | return; 20 | if (!e.getBlock().getType().name().contains("ORE")) 21 | return; 22 | 23 | for (Block ores : getRelatives(e.getBlock())) { 24 | for (Block oores : getRelatives(ores)) { 25 | ores.breakNaturally(); 26 | oores.breakNaturally(); 27 | } 28 | } 29 | } 30 | 31 | private ArrayList getRelatives(Block b) { 32 | ArrayList tr = new ArrayList<>(); 33 | 34 | for (int rad = 1; rad < 5; rad++) { 35 | for (BlockFace bf : BlockFace.values()) { 36 | if (b.getRelative(bf, rad).getType().equals(b.getType())) 37 | tr.add(b.getRelative(bf, rad)); 38 | } 39 | } 40 | return tr; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/RealTimeListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.World; 9 | import org.bukkit.event.EventHandler; 10 | import org.bukkit.scheduler.BukkitRunnable; 11 | 12 | import java.text.SimpleDateFormat; 13 | import java.util.Date; 14 | 15 | /** 16 | * Created by AlphaHelixDev. 17 | */ 18 | public class RealTimeListener extends SimpleListener { 19 | 20 | private static Integer getTime() { 21 | SimpleDateFormat time = new SimpleDateFormat("HH:mm"); 22 | String[] args = time.format(new Date()).split(":"); 23 | Integer hours = Integer.parseInt(args[0]) * 1000; 24 | Integer minutes = Integer.parseInt(args[1]) * (1000 / 60); 25 | return hours + minutes + 18000; 26 | } 27 | 28 | @EventHandler 29 | public void onEnd(LobbyEndEvent e) { 30 | if (!Scenarios.isPlayedAndEnabled(Scenarios.REAL_TIME)) return; 31 | new BukkitRunnable() { 32 | 33 | @Override 34 | public void run() { 35 | 36 | for (World w : Bukkit.getWorlds()) { 37 | w.setTime(getTime()); 38 | } 39 | 40 | } 41 | }.runTaskTimer(UHC.getInstance(), 0L, 20 * 6); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/KitInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.inventorys.SimpleMovingInventory; 4 | import de.alphahelix.alphalibary.item.ItemBuilder; 5 | import de.alphahelix.alphalibary.uuid.UUIDFetcher; 6 | import de.alphahelix.uhc.instances.Kit; 7 | import de.alphahelix.uhc.register.UHCFileRegister; 8 | import de.alphahelix.uhc.util.StatsUtil; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.inventory.ItemStack; 11 | 12 | import java.util.ArrayList; 13 | 14 | public class KitInventory { 15 | 16 | 17 | public void openInventory(Player p) { 18 | 19 | ArrayList stacks = new ArrayList<>(); 20 | for (Kit k : UHCFileRegister.getKitsFile().getKits()) { 21 | stacks.add(new ItemBuilder(k.getGuiBlock().getType()).setLore(" ", "§e" + k.getPrice() + " Coins", " ", hasKit(p, k)).setName(k.getName()).build()); 22 | } 23 | 24 | new SimpleMovingInventory( 25 | p, ((UHCFileRegister.getKitsFile().getKits().size() / 9) + 1) * 18, stacks, UHCFileRegister.getKitsFile().getInventoryName(), 26 | UHCFileRegister.getKitsFile().getNextItem().getItemStack(), 27 | UHCFileRegister.getKitsFile().getPreviousItem().getItemStack()); 28 | } 29 | 30 | private String hasKit(Player p, Kit k) { 31 | return UHCFileRegister.getAchievementFile().getAchievementUnlockName(StatsUtil.hasKit(UUIDFetcher.getUUID(p), k)); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/RankTriggerListener.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.Listener; 2 | 3 | import org.bukkit.event.EventHandler; 4 | import org.bukkit.event.Listener; 5 | import org.bukkit.event.block.SignChangeEvent; 6 | 7 | import de.alpha.uhc.Core; 8 | import de.alpha.uhc.Registery; 9 | 10 | public class RankTriggerListener implements Listener { 11 | 12 | private Core pl; 13 | private Registery r; 14 | 15 | public RankTriggerListener(Core plugin) { 16 | pl = plugin; 17 | r = pl.getRegistery(); 18 | } 19 | 20 | @EventHandler 21 | public void onSignPlace(SignChangeEvent e) { 22 | if (e.getLine(0).equalsIgnoreCase("[UHC]")) { 23 | if (e.getLine(1).equalsIgnoreCase("[ranking]")) { 24 | if (e.getLine(2).equalsIgnoreCase("Place 1")) { 25 | r.getARanking().setFirstPlace(e.getBlock().getLocation().add(0, 1, 0)); 26 | r.getRankingFile().addSign(e.getBlock().getLocation(), 1); 27 | r.getARanking().update(); 28 | } else if (e.getLine(2).equalsIgnoreCase("Place 2")) { 29 | r.getARanking().setSecondPlace(e.getBlock().getLocation().add(0, 1, 0)); 30 | r.getRankingFile().addSign(e.getBlock().getLocation(), 2); 31 | r.getARanking().update(); 32 | } else if (e.getLine(2).equalsIgnoreCase("Place 3")) { 33 | r.getARanking().setThirdPlace(e.getBlock().getLocation().add(0, 1, 0)); 34 | r.getRankingFile().addSign(e.getBlock().getLocation(), 3); 35 | r.getARanking().update(); 36 | } 37 | } 38 | } 39 | 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/JackpotListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.util.PlayerUtil; 7 | import org.bukkit.Material; 8 | import org.bukkit.entity.Player; 9 | import org.bukkit.event.EventHandler; 10 | import org.bukkit.event.block.BlockBreakEvent; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | public class JackpotListener extends SimpleListener { 14 | 15 | @EventHandler 16 | public void onBreak(BlockBreakEvent e) { 17 | if (e.isCancelled()) return; 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.JACKPOT)) return; 19 | 20 | if (e.getBlock().getType().equals(Material.GOLD_ORE)) { 21 | e.setCancelled(true); 22 | e.getBlock().setType(Material.AIR); 23 | 24 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 25 | p.getInventory().addItem(new ItemStack(Material.GOLD_ORE)); 26 | } 27 | } else if (e.getBlock().getType().equals(Material.DIAMOND_ORE)) { 28 | e.setCancelled(true); 29 | e.getBlock().setType(Material.AIR); 30 | 31 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 32 | p.getInventory().addItem(new ItemStack(Material.DIAMOND)); 33 | } 34 | } 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/RandomStarterItemsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | import java.util.ArrayList; 14 | import java.util.Random; 15 | 16 | public class RandomStarterItemsListener extends SimpleListener { 17 | 18 | @EventHandler 19 | public void onEnd(LobbyEndEvent e) { 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.RANDOM_STARTER_ITEMS)) return; 21 | 22 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 23 | for (Material m : getItems()) { 24 | p.getInventory().addItem(new ItemStack(m, new Random().nextInt(64))); 25 | } 26 | } 27 | } 28 | 29 | private ArrayList getItems() { 30 | ArrayList items = new ArrayList<>(); 31 | int amount = 10; 32 | 33 | for (Material m : Material.values()) { 34 | if (amount <= 0) break; 35 | if (Math.random() < 0.07) { 36 | items.add(m); 37 | amount--; 38 | } 39 | } 40 | return items; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/ConfirmInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.alphalibary.item.ItemBuilder; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.Material; 8 | import org.bukkit.entity.Player; 9 | import org.bukkit.inventory.Inventory; 10 | 11 | public class ConfirmInventory { 12 | 13 | private Inventory i; 14 | 15 | public ConfirmInventory() { 16 | setInventory(Bukkit.createInventory(null, 27, UHCFileRegister.getConfirmFile().getInventoryName())); 17 | } 18 | 19 | public void fillInventory() { 20 | for (int slot = 0; slot < getInv().getSize(); slot++) { 21 | getInv().setItem(slot, 22 | new ItemBuilder(Material.STAINED_GLASS_PANE).setName(" ").setDamage((short) 7).build()); 23 | } 24 | 25 | SimpleFile.InventoryItem a = UHCFileRegister.getConfirmFile().getItem(true); 26 | SimpleFile.InventoryItem d = UHCFileRegister.getConfirmFile().getItem(false); 27 | 28 | getInv().setItem(11, a.getItemStack()); 29 | 30 | getInv().setItem(15, d.getItemStack()); 31 | } 32 | 33 | public void openInventory(Player p) { 34 | p.closeInventory(); 35 | p.openInventory(getInv()); 36 | } 37 | 38 | private Inventory getInv() { 39 | return i; 40 | } 41 | 42 | private void setInventory(Inventory i) { 43 | this.i = i; 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BlockedListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.block.Block; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.event.block.BlockPlaceEvent; 9 | 10 | import java.util.ArrayList; 11 | import java.util.HashMap; 12 | 13 | public class BlockedListener extends SimpleListener { 14 | 15 | private HashMap> placed = new HashMap<>(); 16 | 17 | @EventHandler 18 | public void onPlace(BlockPlaceEvent e) { 19 | if (e.isCancelled()) return; 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLOCKED)) return; 21 | 22 | if (placed.containsKey(e.getPlayer().getName())) 23 | placed.get(e.getPlayer().getName()).add(e.getBlockPlaced()); 24 | else { 25 | placed.put(e.getPlayer().getName(), new ArrayList()); 26 | placed.get(e.getPlayer().getName()).add(e.getBlockPlaced()); 27 | } 28 | } 29 | 30 | @EventHandler 31 | public void onBreak(BlockBreakEvent e) { 32 | if (e.isCancelled()) return; 33 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLOCKED)) return; 34 | if (!placed.containsKey(e.getPlayer().getName())) return; 35 | 36 | if (placed.get(e.getPlayer().getName()).contains(e.getBlock())) 37 | e.setCancelled(true); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/StatusFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.uhc.enums.GState; 5 | 6 | public class StatusFile extends SimpleFile { 7 | 8 | public StatusFile() { 9 | super("plugins/UHC-Remake","status.uhc"); 10 | } 11 | 12 | @Override 13 | public void addValues() { 14 | setDefault("Lobby", "&alobby"); 15 | setDefault("Period of peace", "&dperiod of peace"); 16 | setDefault("Warmup", "&bwarmup"); 17 | setDefault("In game", "&cin game"); 18 | setDefault("Deathmatch warmup", "&3DM - warmup"); 19 | setDefault("Deathmatch", "&4Deathmatch"); 20 | setDefault("End", "&8Restart"); 21 | } 22 | 23 | public String getStatus(GState state) { 24 | switch (state) { 25 | case LOBBY: 26 | return getColorString("Lobby"); 27 | case PERIOD_OF_PEACE: 28 | return getColorString("Period of peace"); 29 | case WARMUP: 30 | return getColorString("Warmup"); 31 | case IN_GAME: 32 | return getColorString("In game"); 33 | case DEATHMATCH_WARMUP: 34 | return getColorString("Deathmatch warmup"); 35 | case DEATHMATCH: 36 | return getColorString("Deathmatch"); 37 | case END: 38 | return getColorString("End"); 39 | default: 40 | return ""; 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/TeamInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.item.ItemBuilder; 4 | import de.alphahelix.uhc.instances.UHCTeam; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import de.alphahelix.uhc.util.TeamManagerUtil; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.inventory.Inventory; 11 | 12 | public class TeamInventory { 13 | 14 | private Inventory i; 15 | 16 | public TeamInventory() { 17 | setInventory(Bukkit.createInventory(null, ((TeamManagerUtil.getTeamAmount() / 9) + 1) * 9, 18 | UHCFileRegister.getTeamFile().getInventoryName())); 19 | } 20 | 21 | public void fillInventory() { 22 | for (int slot = 0; slot < getInventory().getSize(); slot++) { 23 | getInventory().setItem(slot, 24 | new ItemBuilder(Material.STAINED_GLASS_PANE).setName(" ").setDamage((short) 7).build()); 25 | } 26 | 27 | for (UHCTeam t : TeamManagerUtil.getTeams()) { 28 | getInventory().setItem(t.getInvSlot(), 29 | t.getIcon(UHCFileRegister.getTeamFile().getContentMaterial())); 30 | } 31 | } 32 | 33 | public void openInventory(Player p) { 34 | p.openInventory(getInventory()); 35 | } 36 | 37 | public Inventory getInventory() { 38 | return i; 39 | } 40 | 41 | public void setInventory(Inventory i) { 42 | this.i = i; 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/EightLeggedFreaksListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.entity.EntityType; 6 | import org.bukkit.entity.Monster; 7 | import org.bukkit.entity.Spider; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.entity.CreatureSpawnEvent; 10 | import org.bukkit.event.entity.EntitySpawnEvent; 11 | 12 | public class EightLeggedFreaksListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onSpawn(EntitySpawnEvent e) { 16 | if (e.isCancelled()) 17 | return; 18 | if (!Scenarios.isPlayedAndEnabled(Scenarios.EIGHT_LEGGED_FREAKS)) 19 | return; 20 | 21 | if (e.getEntity() instanceof Monster && !e.getEntity().getType().equals(EntityType.SPIDER)) { 22 | e.getEntity().getWorld().spawn(e.getLocation(), Spider.class); 23 | e.setCancelled(true); 24 | } 25 | } 26 | 27 | @EventHandler 28 | public void onSpawn(CreatureSpawnEvent e) { 29 | if (e.isCancelled()) 30 | return; 31 | if (!Scenarios.isPlayedAndEnabled(Scenarios.EIGHT_LEGGED_FREAKS)) 32 | return; 33 | 34 | if (e.getEntity() instanceof Monster && !e.getEntity().getType().equals(EntityType.SPIDER)) { 35 | e.getEntity().getWorld().spawn(e.getLocation(), Spider.class); 36 | e.setCancelled(true); 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/commands/StartCommand.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.commands; 2 | 3 | import de.alphahelix.alphalibary.command.SimpleCommand; 4 | import de.alphahelix.uhc.UHC; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import de.alphahelix.uhc.register.UHCRegister; 7 | import org.bukkit.command.CommandSender; 8 | import org.bukkit.entity.Player; 9 | 10 | import java.util.List; 11 | 12 | public class StartCommand extends SimpleCommand { 13 | 14 | public StartCommand() { 15 | super("start", "Short or strech the lobby time."); 16 | } 17 | 18 | @Override 19 | public boolean execute(CommandSender cs, String label, String[] args) { 20 | if (!(cs instanceof Player)) 21 | return true; 22 | 23 | Player p = (Player) cs; 24 | 25 | if (!(p.hasPermission("uhc.start") || p.hasPermission("uhc.admin"))) { 26 | p.sendMessage(UHC.getPrefix() + UHCFileRegister.getMessageFile().getNoPermissions()); 27 | return true; 28 | } 29 | 30 | if (args.length == 0) { 31 | UHCRegister.getLobbyTimer().changeTime(10); 32 | } else if (args.length == 1) { 33 | UHCRegister.getLobbyTimer().changeTime(Integer.parseInt(args[0])); 34 | } else { 35 | p.sendMessage(UHC.getPrefix() + UHCFileRegister.getMessageFile().getCommandNotFound()); 36 | } 37 | 38 | return true; 39 | } 40 | 41 | @Override 42 | public List tabComplete(CommandSender cs, String label, String[] args) { 43 | return null; 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/MotdListener.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.Listener; 2 | 3 | import de.alpha.uhc.Core; 4 | import de.alpha.uhc.GState; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.Listener; 7 | import org.bukkit.event.server.ServerListPingEvent; 8 | 9 | public class MotdListener implements Listener { 10 | 11 | public MotdListener(Core c) { 12 | } 13 | 14 | private String lobby; 15 | private String grace; 16 | private String ingame; 17 | private String restart; 18 | private boolean custommotd; 19 | 20 | public void setLobby(String lobby) { 21 | this.lobby = lobby; 22 | } 23 | 24 | public void setGrace(String grace) { 25 | this.grace = grace; 26 | } 27 | 28 | public void setIngame(String ingame) { 29 | this.ingame = ingame; 30 | } 31 | 32 | public void setRestart(String restart) { 33 | this.restart = restart; 34 | } 35 | 36 | public void setCustommotd(boolean custommotd) { 37 | this.custommotd = custommotd; 38 | } 39 | 40 | @EventHandler 41 | public void onPing(ServerListPingEvent e) { 42 | 43 | if (!custommotd) return; 44 | 45 | if (GState.isState(GState.LOBBY)) { 46 | e.setMotd(lobby); 47 | } else if (GState.isState(GState.INGAME)) { 48 | e.setMotd(ingame); 49 | } else if (GState.isState(GState.RESTART)) { 50 | e.setMotd(restart); 51 | } else if (GState.isState(GState.GRACE)) { 52 | e.setMotd(grace); 53 | } 54 | 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/util/TablistUtil.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.util; 2 | 3 | import de.alphahelix.alphalibary.nms.SimpleTablist; 4 | import de.alphahelix.alphalibary.uuid.UUIDFetcher; 5 | import de.alphahelix.uhc.enums.GState; 6 | import de.alphahelix.uhc.register.UHCFileRegister; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.entity.Player; 9 | 10 | public class TablistUtil { 11 | 12 | public static void sendTablist() { 13 | for (String pNames : PlayerUtil.getAll()) { 14 | if (Bukkit.getPlayer(pNames) == null) continue; 15 | Player p = Bukkit.getPlayer(pNames); 16 | 17 | SimpleTablist.setTablistHeaderFooter(p, null, null); 18 | 19 | SimpleTablist.setTablistHeaderFooter(p, 20 | UHCFileRegister.getTablistFile().getHeader() 21 | .replace("[player]", p.getDisplayName()) 22 | .replace("[playercount]", Integer.toString(PlayerUtil.getAll().size())) 23 | .replace("[gamestatus]", GState.getGameStateName()), 24 | UHCFileRegister.getTablistFile().getFooter() 25 | .replace("[player]", p.getDisplayName()) 26 | .replace("[playercount]", Integer.toString(PlayerUtil.getAll().size())) 27 | .replace("[gamestatus]", GState.getGameStateName())); 28 | } 29 | } 30 | 31 | public static void sortTablist(Player p) { 32 | p.setPlayerListName(StatsUtil.getUHCRank(UUIDFetcher.getUUID(p)).getPrefix() + p.getDisplayName()); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/BlockRushListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.Material; 6 | import org.bukkit.event.EventHandler; 7 | import org.bukkit.event.block.BlockBreakEvent; 8 | import org.bukkit.inventory.ItemStack; 9 | 10 | import java.util.ArrayList; 11 | import java.util.HashMap; 12 | 13 | public class BlockRushListener extends SimpleListener { 14 | 15 | private HashMap> hasBeenMind = new HashMap<>(); 16 | 17 | @EventHandler 18 | public void onBreak(BlockBreakEvent e) { 19 | if (e.isCancelled()) 20 | return; 21 | if (!Scenarios.isPlayedAndEnabled(Scenarios.BLOCK_RUSH)) 22 | return; 23 | 24 | if (!hasBeenMind.containsKey(e.getPlayer().getName())) { 25 | hasBeenMind.put(e.getPlayer().getName(), new ArrayList()); 26 | hasBeenMind.get(e.getPlayer().getName()).add(e.getBlock().getType()); 27 | 28 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.GOLD_INGOT)); 29 | } else { 30 | if (!hasBeenMind.get(e.getPlayer().getName()).contains(e.getBlock().getType())) { 31 | hasBeenMind.get(e.getPlayer().getName()).add(e.getBlock().getType()); 32 | 33 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), 34 | new ItemStack(Material.GOLD_INGOT)); 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/inventories/ScenarioAdminInventory.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.inventories; 2 | 3 | import de.alphahelix.alphalibary.inventorys.SimpleMovingInventory; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.inventory.ItemStack; 8 | import org.bukkit.inventory.meta.ItemMeta; 9 | 10 | import java.util.ArrayList; 11 | import java.util.List; 12 | 13 | public class ScenarioAdminInventory { 14 | 15 | public void fillInventory(Player p) { 16 | ArrayList stacks = new ArrayList<>(); 17 | for (Scenarios s : Scenarios.values()) { 18 | if (s == null) 19 | continue; 20 | if (s.equals(Scenarios.NONE)) 21 | continue; 22 | ItemStack ta = UHCFileRegister.getScenarioFile().getScenarioItem(s); 23 | ItemMeta meta = ta.getItemMeta(); 24 | List lore = meta.getLore(); 25 | 26 | lore.add("§4Enabled §7: §4" + UHCFileRegister.getScenarioFile().isEnabled(Scenarios.getRawScenarioName(s))); 27 | 28 | meta.setLore(lore); 29 | 30 | ta.setItemMeta(meta); 31 | 32 | stacks.add(ta); 33 | } 34 | 35 | new SimpleMovingInventory( 36 | p, 37 | 9 * 5, 38 | stacks, 39 | "§7Change §4Scenarios", 40 | UHCFileRegister.getKitsFile().getNextItem().getItemStack(), 41 | UHCFileRegister.getKitsFile().getPreviousItem().getItemStack() 42 | ); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/DiamondlessListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.Material; 8 | import org.bukkit.event.EventHandler; 9 | import org.bukkit.event.block.BlockBreakEvent; 10 | import org.bukkit.inventory.ItemStack; 11 | 12 | public class DiamondlessListener extends SimpleListener { 13 | 14 | @EventHandler 15 | public void onEnd(LobbyEndEvent e) { 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DIAMONDLESS)) 17 | return; 18 | 19 | Bukkit.getWorld("UHC").getSpawnLocation().getBlock().setType(Material.ENCHANTMENT_TABLE); 20 | } 21 | 22 | @EventHandler 23 | public void onBreak(BlockBreakEvent e) { 24 | if (e.isCancelled()) 25 | return; 26 | if (!Scenarios.isPlayedAndEnabled(Scenarios.DIAMONDLESS)) 27 | return; 28 | 29 | if (e.getBlock().getType().equals(Material.DIAMOND_ORE)) { 30 | e.setCancelled(true); 31 | e.getBlock().setType(Material.AIR); 32 | if (Math.random() < 0.5) { 33 | e.getBlock().getWorld().dropItemNaturally(e.getBlock().getLocation(), new ItemStack(Material.ROTTEN_FLESH)); 34 | } 35 | } else if (Math.random() < 0.5 && e.getBlock().getType().equals(Material.GOLD_ORE)) { 36 | e.setCancelled(true); 37 | e.getBlock().setType(Material.AIR); 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/commands/RanksCommand.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.commands; 2 | 3 | import de.alphahelix.alphalibary.command.SimpleCommand; 4 | import de.alphahelix.uhc.instances.UHCRank; 5 | import de.alphahelix.uhc.register.UHCFileRegister; 6 | import org.bukkit.command.CommandSender; 7 | 8 | import java.util.List; 9 | 10 | /** 11 | * Created by AlphaHelixDev. 12 | */ 13 | public class RanksCommand extends SimpleCommand { 14 | 15 | public RanksCommand() { 16 | super("ranks", "See all ranks!", "rank"); 17 | } 18 | 19 | @Override 20 | public boolean execute(CommandSender cs, String label, String[] args) { 21 | cs.sendMessage(UHCFileRegister.getMessageFile().getRanklist(filterEachRank())); 22 | return true; 23 | } 24 | 25 | @Override 26 | public List tabComplete(CommandSender cs, String label, String[] args) { 27 | return null; 28 | } 29 | 30 | private String filterEachRank() { 31 | String ranks = ""; 32 | for (UHCRank rank : UHCRank.getRanks()) { 33 | ranks = ranks + "\n" 34 | + " " + rank.getPrefix() + "\n" 35 | + " " + UHCFileRegister.getStatsFile().getColorString("Kills").replace("[kills]", Long.toString(rank.getMinKills())) + "\n" 36 | + " " + UHCFileRegister.getStatsFile().getColorString("Wins").replace("[wins]", Long.toString(rank.getMinWins())) + "\n" 37 | + " " + UHCFileRegister.getStatsFile().getColorString("Points").replace("[points]", Long.toString(rank.getMinPoints())); 38 | } 39 | return ranks; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/CraftableTeleportationListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.LocationUtil; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.util.PlayerUtil; 7 | import org.bukkit.Bukkit; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.block.Action; 12 | import org.bukkit.event.player.PlayerInteractEvent; 13 | 14 | public class CraftableTeleportationListener extends SimpleListener { 15 | 16 | @EventHandler 17 | public void onClick(PlayerInteractEvent e) { 18 | if (e.isCancelled()) return; 19 | if (e.getAction() == Action.LEFT_CLICK_AIR || e.getAction() == Action.LEFT_CLICK_BLOCK) return; 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.CRAFTABLE_TELEPORTATION)) return; 21 | 22 | Player p = e.getPlayer(); 23 | 24 | if (p.getInventory().getItemInHand().getType() != Material.ENDER_PEARL) return; 25 | if (!p.getInventory().getItemInHand().hasItemMeta()) return; 26 | if (!p.getInventory().getItemInHand().getItemMeta().hasDisplayName()) return; 27 | if (Bukkit.getPlayer(p.getInventory().getItemInHand().getItemMeta().getDisplayName()) == null) return; 28 | 29 | Player t = Bukkit.getPlayer(p.getInventory().getItemInHand().getItemMeta().getDisplayName()); 30 | 31 | if (!PlayerUtil.isSurivor(t)) return; 32 | 33 | p.teleport(LocationUtil.getRandomLocation(t.getLocation(), 25, 25, 25, 25)); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/NineSlotsListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import org.bukkit.event.EventHandler; 6 | import org.bukkit.event.inventory.CraftItemEvent; 7 | import org.bukkit.event.inventory.InventoryClickEvent; 8 | import org.bukkit.event.player.PlayerPickupItemEvent; 9 | 10 | public class NineSlotsListener extends SimpleListener { 11 | 12 | @EventHandler 13 | public void onPickUp(PlayerPickupItemEvent e) { 14 | if (e.isCancelled()) 15 | return; 16 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NINE_SLOTS)) 17 | return; 18 | if (e.getPlayer().getInventory().firstEmpty() <= 8) 19 | return; 20 | 21 | e.setCancelled(true); 22 | } 23 | 24 | @EventHandler 25 | public void onCraft(CraftItemEvent e) { 26 | if (e.isCancelled()) 27 | return; 28 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NINE_SLOTS)) 29 | return; 30 | 31 | if (e.getWhoClicked().getInventory().firstEmpty() <= 8) 32 | return; 33 | 34 | e.setCancelled(true); 35 | } 36 | 37 | @EventHandler 38 | public void onClick(InventoryClickEvent e) { 39 | if (e.isCancelled()) 40 | return; 41 | if (!Scenarios.isPlayedAndEnabled(Scenarios.NINE_SLOTS)) 42 | return; 43 | if (e.getClickedInventory() == null) 44 | return; 45 | 46 | if (e.getSlot() > 8 && e.getSlot() < 36 && !e.isShiftClick()) 47 | e.setCancelled(true); 48 | 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/SoulBrothersListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.nms.SimpleActionBar; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.entity.EntityDamageEvent; 9 | 10 | import java.util.HashMap; 11 | 12 | public class SoulBrothersListener extends SimpleListener { 13 | 14 | private HashMap soulBrotherhealth = new HashMap<>(); 15 | 16 | @EventHandler 17 | public void onDamage(EntityDamageEvent e) { 18 | if (e.isCancelled()) 19 | return; 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.SOUL_BROTHERS)) 21 | return; 22 | if (!(e.getEntity() instanceof Player)) 23 | return; 24 | 25 | Player p = (Player) e.getEntity(); 26 | 27 | if (!p.isSneaking()) 28 | return; 29 | if (soulBrotherhealth.containsKey(p.getName())) { 30 | if (soulBrotherhealth.get(p.getName()) > e.getDamage()) { 31 | soulBrotherhealth.put(p.getName(), soulBrotherhealth.get(p.getName()) - e.getDamage()); 32 | e.setCancelled(true); 33 | SimpleActionBar.send(p, "§7" + soulBrotherhealth.get(p.getName()).intValue()); 34 | } 35 | } else { 36 | soulBrotherhealth.put(p.getName(), p.getMaxHealth() - e.getDamage()); 37 | e.setCancelled(true); 38 | SimpleActionBar.send(p, "§7" + soulBrotherhealth.get(p.getName()).intValue()); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/files/MOTDFile.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.files; 2 | 3 | import de.alphahelix.alphalibary.file.SimpleFile; 4 | import de.alphahelix.uhc.enums.GState; 5 | 6 | public class MOTDFile extends SimpleFile { 7 | 8 | public MOTDFile() { 9 | super("plugins/UHC-Remake","motd.uhc"); 10 | } 11 | 12 | @Override 13 | public void addValues() { 14 | setDefault("Lobby", "&6UHC&8-&6Remake \n &aJoinable&8!"); 15 | setDefault("Period of peace", "&6UHC&8-&6Remake \n &dPeriod of peace&8!"); 16 | setDefault("Warmup", "&6UHC&8-&6Remake \n &3Warmup&8!"); 17 | setDefault("Ingame", "&6UHC&8-&6Remake \n &cIngame&8!"); 18 | setDefault("Deathmatch warmup", "&6UHC&8-&6Remake \n &eDeathmatch warmup&8!"); 19 | setDefault("Deathmatch", "&6UHC&8-&6Remake \n &4Deathmatch&8!"); 20 | setDefault("End", "&6UHC&8-&6Remake \n &5Restart&8!"); 21 | } 22 | 23 | public String getMOTD(GState state) { 24 | switch (state) { 25 | case LOBBY: 26 | return getColorString("Lobby"); 27 | case PERIOD_OF_PEACE: 28 | return getColorString("Period of peace"); 29 | case WARMUP: 30 | return getColorString("Warmup"); 31 | case IN_GAME: 32 | return getColorString("Ingame"); 33 | case DEATHMATCH_WARMUP: 34 | return getColorString("Deathmatch warmup"); 35 | case DEATHMATCH: 36 | return getColorString("Deathmatch"); 37 | case END: 38 | return getColorString("End"); 39 | default: 40 | return ""; 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/MoleListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.player.PlayerMoveEvent; 12 | import org.bukkit.inventory.ItemStack; 13 | import org.bukkit.potion.PotionEffect; 14 | import org.bukkit.potion.PotionEffectType; 15 | 16 | public class MoleListener extends SimpleListener { 17 | 18 | @EventHandler 19 | public void onEnd(LobbyEndEvent e) { 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.MOLE)) 21 | return; 22 | 23 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 24 | p.getInventory().addItem(new ItemStack(Material.IRON_SPADE)); 25 | p.getInventory().addItem(new ItemStack(Material.IRON_PICKAXE)); 26 | p.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 99999, 2)); 27 | } 28 | } 29 | 30 | @EventHandler 31 | public void onMove(PlayerMoveEvent e) { 32 | if (e.isCancelled()) 33 | return; 34 | if (!Scenarios.isPlayedAndEnabled(Scenarios.MOLE)) 35 | return; 36 | 37 | if (e.getTo().getBlockY() < 40) { 38 | if (e.getPlayer().hasPotionEffect(PotionEffectType.BLINDNESS)) 39 | e.getPlayer().removePotionEffect(PotionEffectType.BLINDNESS); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/Listener/SoupListener.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.Listener; 2 | 3 | import de.alpha.uhc.Core; 4 | import de.alpha.uhc.GState; 5 | import org.bukkit.Material; 6 | import org.bukkit.entity.Player; 7 | import org.bukkit.event.EventHandler; 8 | import org.bukkit.event.Listener; 9 | import org.bukkit.event.block.Action; 10 | import org.bukkit.event.player.PlayerInteractEvent; 11 | 12 | public class SoupListener implements Listener { 13 | 14 | public SoupListener(Core c) { 15 | } 16 | 17 | private double boost; 18 | 19 | public void setBoost(double a) { 20 | boost = a; 21 | } 22 | 23 | @EventHandler 24 | public void onSoup(PlayerInteractEvent e) { 25 | 26 | if (GState.isState(GState.INGAME) || GState.isState(GState.DEATHMATCH) || GState.isState(GState.PREDEATHMATCH)) { 27 | 28 | Player p = e.getPlayer(); 29 | 30 | if (p.getInventory().getItemInMainHand().getType().equals(Material.MUSHROOM_SOUP)) {//TODO: multi 31 | 32 | if (e.getAction().equals(Action.RIGHT_CLICK_AIR) 33 | || e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) { 34 | 35 | if (p.getHealth() == 20) { 36 | return; 37 | } 38 | 39 | p.getInventory().getItemInMainHand().setType(Material.BOWL);//TODO: multi 40 | if (p.getHealth() <= 19 - boost) { 41 | p.setHealth(p.getHealth() + boost); 42 | } else { 43 | p.setHealth(20); 44 | } 45 | 46 | } 47 | } 48 | 49 | } 50 | 51 | } 52 | 53 | } 54 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/commands/StartCommand.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.commands; 2 | 3 | import java.util.List; 4 | 5 | import org.bukkit.command.CommandSender; 6 | 7 | import de.alpha.uhc.Core; 8 | import de.alpha.uhc.Registery; 9 | import de.popokaka.alphalibary.command.SimpleCommand; 10 | 11 | public class StartCommand extends SimpleCommand { 12 | 13 | private boolean use; 14 | private String err; 15 | private Core pl; 16 | private Registery r; 17 | 18 | public StartCommand(Core plugin, String[] aliases) { 19 | super(plugin, "start", "Short the timer to 10 seconds", aliases); 20 | this.pl = plugin; 21 | this.r = pl.getRegistery(); 22 | } 23 | 24 | private boolean inUse() { 25 | return use; 26 | } 27 | 28 | public void setUse(boolean a) { 29 | this.use = a; 30 | } 31 | 32 | private String getErr() { 33 | return err; 34 | } 35 | 36 | public void setErr(String a) { 37 | this.err = a; 38 | } 39 | 40 | @Override 41 | public boolean execute(CommandSender cs, String label, String[] args) { 42 | if (this.inUse()) { 43 | if (cs.hasPermission("UHC.start")) { 44 | r.getTimer().changeTime(); 45 | } else { 46 | cs.sendMessage(pl.getPrefix() + Core.getInstance().getRegistery().getUHCCommand().getNoperms()); 47 | } 48 | } else { 49 | cs.sendMessage(pl.getPrefix() + this.getErr()); 50 | } 51 | return false; 52 | } 53 | 54 | @Override 55 | public List tabComplete(CommandSender cs, String label, String[] args) { 56 | return null; 57 | } 58 | 59 | } 60 | -------------------------------------------------------------------------------- /UHC/src/de/alpha/uhc/commands/StatsCommand.java: -------------------------------------------------------------------------------- 1 | package de.alpha.uhc.commands; 2 | 3 | import java.util.List; 4 | 5 | import org.bukkit.command.CommandSender; 6 | import org.bukkit.entity.Player; 7 | 8 | import de.alpha.uhc.Core; 9 | import de.alpha.uhc.Registery; 10 | import de.popokaka.alphalibary.command.SimpleCommand; 11 | 12 | public class StatsCommand extends SimpleCommand { 13 | 14 | private boolean us; 15 | private String er; 16 | private Core pl; 17 | private Registery r; 18 | 19 | public StatsCommand(Core plugin, String[] aliases) { 20 | super(plugin, "stats", "See your Statistics of UHC", aliases); 21 | this.pl = plugin; 22 | this.r = pl.getRegistery(); 23 | } 24 | 25 | private boolean inUs() { 26 | return us; 27 | } 28 | 29 | public void setUs(boolean a) { 30 | us = a; 31 | } 32 | 33 | private String getEr() { 34 | return er; 35 | } 36 | 37 | public void setEr(String a) { 38 | this.er = a; 39 | } 40 | 41 | @Override 42 | public boolean execute(CommandSender cs, String label, String[] args) { 43 | if (!(cs instanceof Player)) { 44 | cs.sendMessage(pl.getPrefix() + r.getUHCCommand().getNoplayer()); 45 | return false; 46 | } 47 | if (inUs()) { 48 | Player p = (Player) cs; 49 | r.getStats().sendStats(p); 50 | } else { 51 | cs.sendMessage(pl.getPrefix() + getEr()); 52 | } 53 | return false; 54 | } 55 | 56 | @Override 57 | public List tabComplete(CommandSender cs, String label, String[] args) { 58 | return null; 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/commands/StatsCommand.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.commands; 2 | 3 | import de.alphahelix.alphalibary.command.SimpleCommand; 4 | import de.alphahelix.alphalibary.uuid.UUIDFetcher; 5 | import de.alphahelix.uhc.UHC; 6 | import de.alphahelix.uhc.register.UHCFileRegister; 7 | import de.alphahelix.uhc.util.StatsUtil; 8 | import org.bukkit.Bukkit; 9 | import org.bukkit.OfflinePlayer; 10 | import org.bukkit.command.CommandSender; 11 | import org.bukkit.entity.Player; 12 | 13 | import java.util.List; 14 | 15 | public class StatsCommand extends SimpleCommand { 16 | 17 | public StatsCommand() { 18 | super("stats", "Check your or others stats", "records"); 19 | } 20 | 21 | @Override 22 | public boolean execute(CommandSender cs, String label, String[] args) { 23 | if (!(cs instanceof Player)) return true; 24 | 25 | if (args.length == 0) { 26 | StatsUtil.sendStats((Player) cs, UUIDFetcher.getUUID((OfflinePlayer) cs)); 27 | return true; 28 | } 29 | if (args.length == 1) { 30 | if (Bukkit.getOfflinePlayer(UUIDFetcher.getUUID(args[0])) == null) { 31 | cs.sendMessage(UHC.getPrefix() + UHCFileRegister.getStatsFile().getNoPlayerMessage()); 32 | return true; 33 | } 34 | StatsUtil.sendStats((Player) cs, UUIDFetcher.getUUID(args[0])); 35 | return true; 36 | } else { 37 | cs.sendMessage(UHC.getPrefix() + UHCFileRegister.getStatsFile().getErrorMessage()); 38 | } 39 | 40 | return true; 41 | } 42 | 43 | @Override 44 | public List tabComplete(CommandSender cs, String label, String[] args) { 45 | return null; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/TheHobbitListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.player.PlayerInteractEvent; 12 | import org.bukkit.inventory.ItemStack; 13 | import org.bukkit.potion.PotionEffect; 14 | import org.bukkit.potion.PotionEffectType; 15 | 16 | public class TheHobbitListener extends SimpleListener { 17 | 18 | @EventHandler 19 | public void onEnd(LobbyEndEvent e) { 20 | if (!Scenarios.isPlayedAndEnabled(Scenarios.THE_HOBBIT)) 21 | return; 22 | 23 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 24 | p.getInventory().addItem(new ItemStack(Material.GOLD_NUGGET)); 25 | } 26 | } 27 | 28 | @EventHandler 29 | public void onClick(PlayerInteractEvent e) { 30 | if (e.isCancelled()) 31 | return; 32 | if (!Scenarios.isPlayedAndEnabled(Scenarios.THE_HOBBIT)) 33 | return; 34 | if (!e.getAction().name().contains("RIGHT")) 35 | return; 36 | 37 | if (e.getPlayer().getInventory().getItemInHand().getType().equals(Material.GOLD_NUGGET)) { 38 | e.getPlayer().getInventory().setItemInHand(new ItemStack(Material.AIR)); 39 | e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, (20 * 30), 1), true); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/RiskyRetrievalListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.uhc.enums.Scenarios; 5 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 6 | import org.bukkit.Bukkit; 7 | import org.bukkit.Material; 8 | import org.bukkit.block.Chest; 9 | import org.bukkit.event.EventHandler; 10 | import org.bukkit.event.block.BlockBreakEvent; 11 | import org.bukkit.inventory.ItemStack; 12 | 13 | public class RiskyRetrievalListener extends SimpleListener { 14 | 15 | private Chest rr; 16 | 17 | @EventHandler 18 | public void onEnd(LobbyEndEvent e) { 19 | if (!Scenarios.isPlayedAndEnabled(Scenarios.RISKY_RETRIEVAL)) 20 | return; 21 | 22 | Bukkit.getWorld("UHC").getSpawnLocation().getBlock().setType(Material.CHEST); 23 | rr = (Chest) Bukkit.getWorld("UHC").getSpawnLocation().getBlock().getState(); 24 | } 25 | 26 | @EventHandler 27 | public void onBreak(BlockBreakEvent e) { 28 | if (e.isCancelled()) 29 | return; 30 | if (!Scenarios.isPlayedAndEnabled(Scenarios.RISKY_RETRIEVAL)) 31 | return; 32 | 33 | if (e.getBlock().getType().equals(Material.GOLD_ORE) || e.getBlock().getType().equals(Material.DIAMOND_ORE)) { 34 | rr.getBlockInventory() 35 | .addItem(e.getBlock().getDrops().toArray(new ItemStack[e.getBlock().getDrops().size()])); 36 | e.setCancelled(true); 37 | e.getBlock().setType(Material.AIR); 38 | } else if (e.getBlock().getX() == rr.getX() && e.getBlock().getY() == rr.getY() 39 | && e.getBlock().getZ() == rr.getZ()) 40 | e.setCancelled(true); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/listeners/scenarios/OneHealListener.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.listeners.scenarios; 2 | 3 | import de.alphahelix.alphalibary.listener.SimpleListener; 4 | import de.alphahelix.alphalibary.utils.Util; 5 | import de.alphahelix.uhc.enums.Scenarios; 6 | import de.alphahelix.uhc.events.timers.LobbyEndEvent; 7 | import de.alphahelix.uhc.util.PlayerUtil; 8 | import org.bukkit.Material; 9 | import org.bukkit.entity.Player; 10 | import org.bukkit.event.EventHandler; 11 | import org.bukkit.event.player.PlayerInteractEvent; 12 | import org.bukkit.inventory.ItemStack; 13 | 14 | import java.util.ArrayList; 15 | 16 | public class OneHealListener extends SimpleListener { 17 | 18 | private ArrayList healed = new ArrayList<>(); 19 | 20 | @EventHandler 21 | public void onEnd(LobbyEndEvent e) { 22 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ONE_HEAL)) 23 | return; 24 | 25 | for (Player p : Util.makePlayerArray(PlayerUtil.getSurvivors())) { 26 | p.getInventory().addItem(new ItemStack(Material.GOLD_HOE)); 27 | } 28 | } 29 | 30 | @EventHandler 31 | public void onInteract(PlayerInteractEvent e) { 32 | if (e.isCancelled()) 33 | return; 34 | if (!Scenarios.isPlayedAndEnabled(Scenarios.ONE_HEAL)) 35 | return; 36 | if (healed.contains(e.getPlayer().getName())) 37 | return; 38 | if (!e.getAction().name().contains("RIGHT")) 39 | return; 40 | 41 | if (e.getPlayer().getInventory().getItemInHand().getType().equals(Material.GOLD_HOE)) { 42 | healed.add(e.getPlayer().getName()); 43 | e.getPlayer().setHealth(20.0); 44 | e.getPlayer().getInventory().remove(Material.GOLD_HOE); 45 | } 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /UHC/UHC-1.9.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /UHC-Remake/src/main/java/de/alphahelix/uhc/events/armor/ArmorType.java: -------------------------------------------------------------------------------- 1 | package de.alphahelix.uhc.events.armor; 2 | 3 | import org.bukkit.inventory.ItemStack; 4 | 5 | public enum ArmorType { 6 | HELMET(5), CHESTPLATE(6), LEGGINGS(7), BOOTS(8); 7 | 8 | private final int slot; 9 | 10 | ArmorType(int slot) { 11 | this.slot = slot; 12 | } 13 | 14 | /** 15 | * Attempts to match the ArmorType for the specified ItemStack. 16 | * 17 | * @param itemStack The ItemStack to parse the type of. 18 | * @return The parsed ArmorType. (null if none were found.) 19 | */ 20 | public static ArmorType matchType(final ItemStack itemStack) { 21 | if (itemStack == null) { 22 | return null; 23 | } 24 | switch (itemStack.getType()) { 25 | case DIAMOND_HELMET: 26 | case GOLD_HELMET: 27 | case IRON_HELMET: 28 | case CHAINMAIL_HELMET: 29 | case LEATHER_HELMET: 30 | return HELMET; 31 | case DIAMOND_CHESTPLATE: 32 | case GOLD_CHESTPLATE: 33 | case IRON_CHESTPLATE: 34 | case CHAINMAIL_CHESTPLATE: 35 | case LEATHER_CHESTPLATE: 36 | return CHESTPLATE; 37 | case DIAMOND_LEGGINGS: 38 | case GOLD_LEGGINGS: 39 | case IRON_LEGGINGS: 40 | case CHAINMAIL_LEGGINGS: 41 | case LEATHER_LEGGINGS: 42 | return LEGGINGS; 43 | case DIAMOND_BOOTS: 44 | case GOLD_BOOTS: 45 | case IRON_BOOTS: 46 | case CHAINMAIL_BOOTS: 47 | case LEATHER_BOOTS: 48 | return BOOTS; 49 | default: 50 | return null; 51 | } 52 | } 53 | 54 | public int getSlot() { 55 | return slot; 56 | } 57 | } 58 | --------------------------------------------------------------------------------