From fa719cb6741c69f2e99aee9388fbf2f54cca4d87 Mon Sep 17 00:00:00 2001 From: steev Date: Wed, 4 Oct 2023 14:10:57 +0200 Subject: [PATCH] moved code to new structure --- Docs/allclasses-index.html | 4 +- Docs/allpackages-index.html | 2 +- .../interaction/Item_Recipy_Override.html | 4 +- .../bm/changes/interaction/Replanting.html | 4 +- .../changes/interaction/package-summary.html | 12 ++-- .../bm/changes/interaction/package-tree.html | 10 ++-- Docs/element-list | 2 +- Docs/index-files/index-10.html | 4 +- Docs/index-files/index-11.html | 10 ++-- Docs/index-files/index-4.html | 2 +- Docs/index-files/index-5.html | 6 +- Docs/index.html | 2 +- Docs/member-search-index.js | 2 +- Docs/overview-tree.html | 6 +- Docs/package-search-index.js | 2 +- Docs/type-search-index.js | 2 +- plugin.yml | 4 -- pom.xml | 6 -- .../bm/{main.java => BetterMinecraft.java} | 54 +++++++----------- src/main/java/de/steev/bm/Commands/back.java | 13 +++-- .../interaction => Interaction}/Death.java | 6 +- .../Item_Recipy_Override.java | 8 +-- .../replanting.java | 9 ++- .../de/steev/bm/Listener/BedListener.java | 53 +++++++++++++++++ .../InteractListener.java} | 17 +++--- .../de/steev/bm/Listener/KillListener.java | 44 ++++++++++++++ .../java/de/steev/bm/Manager/GameManager.java | 57 +++++++++++++++++++ .../de/steev/bm/Manager/PlayerManager.java | 41 +++++++++++++ .../de/steev/bm/Manager/RecipyManager.java | 41 +++++++++++++ .../java/de/steev/bm/changes/env/weather.java | 22 ------- .../java/de/steev/bm/events/BedEvent.java | 52 ----------------- .../java/de/steev/bm/events/DeathEvent.java | 26 --------- .../java/de/steev/bm/events/KillEvent.java | 47 --------------- src/main/resources/plugin.yml | 7 +++ 34 files changed, 329 insertions(+), 252 deletions(-) delete mode 100644 plugin.yml rename src/main/java/de/steev/bm/{main.java => BetterMinecraft.java} (59%) rename src/main/java/de/steev/bm/{changes/interaction => Interaction}/Death.java (89%) rename src/main/java/de/steev/bm/{changes/interaction => Interaction}/Item_Recipy_Override.java (86%) rename src/main/java/de/steev/bm/{changes/interaction => Interaction}/replanting.java (88%) create mode 100644 src/main/java/de/steev/bm/Listener/BedListener.java rename src/main/java/de/steev/bm/{events/InteractEvent.java => Listener/InteractListener.java} (81%) create mode 100644 src/main/java/de/steev/bm/Listener/KillListener.java create mode 100644 src/main/java/de/steev/bm/Manager/GameManager.java create mode 100644 src/main/java/de/steev/bm/Manager/PlayerManager.java create mode 100644 src/main/java/de/steev/bm/Manager/RecipyManager.java delete mode 100644 src/main/java/de/steev/bm/changes/env/weather.java delete mode 100644 src/main/java/de/steev/bm/events/BedEvent.java delete mode 100644 src/main/java/de/steev/bm/events/DeathEvent.java delete mode 100644 src/main/java/de/steev/bm/events/KillEvent.java create mode 100644 src/main/resources/plugin.yml diff --git a/Docs/allclasses-index.html b/Docs/allclasses-index.html index e4f54eb..5b3bf63 100644 --- a/Docs/allclasses-index.html +++ b/Docs/allclasses-index.html @@ -87,7 +87,7 @@ loadScripts(document, 'script');
handles block interactions
-
Item_Recipy_Override
+
Item_Recipy_Override
handles custom recipes
@@ -107,7 +107,7 @@ loadScripts(document, 'script');
handles block placing
-
Replanting
+
Replanting
handles the replanting mechanic
diff --git a/Docs/allpackages-index.html b/Docs/allpackages-index.html index 8a4f5fa..b35fb9f 100644 --- a/Docs/allpackages-index.html +++ b/Docs/allpackages-index.html @@ -62,7 +62,7 @@ loadScripts(document, 'script');
 
de.steev.bm.changes.env
 
-
de.steev.bm.changes.interaction
+
de.steev.bm.Interaction
 
de.steev.bm.Commands
 
diff --git a/Docs/de/steev/bm/changes/interaction/Item_Recipy_Override.html b/Docs/de/steev/bm/changes/interaction/Item_Recipy_Override.html index d424404..4af9ac1 100644 --- a/Docs/de/steev/bm/changes/interaction/Item_Recipy_Override.html +++ b/Docs/de/steev/bm/changes/interaction/Item_Recipy_Override.html @@ -7,7 +7,7 @@ - + @@ -72,7 +72,7 @@ loadScripts(document, 'script');
- +

Class Item_Recipy_Override

java.lang.Object diff --git a/Docs/de/steev/bm/changes/interaction/Replanting.html b/Docs/de/steev/bm/changes/interaction/Replanting.html index a5c809d..1ebe71c 100644 --- a/Docs/de/steev/bm/changes/interaction/Replanting.html +++ b/Docs/de/steev/bm/changes/interaction/Replanting.html @@ -7,7 +7,7 @@ - + @@ -72,7 +72,7 @@ loadScripts(document, 'script');
- +

Class Replanting

java.lang.Object diff --git a/Docs/de/steev/bm/changes/interaction/package-summary.html b/Docs/de/steev/bm/changes/interaction/package-summary.html index ee1a38c..5ccaf5c 100644 --- a/Docs/de/steev/bm/changes/interaction/package-summary.html +++ b/Docs/de/steev/bm/changes/interaction/package-summary.html @@ -3,11 +3,11 @@ -de.steev.bm.changes.interaction +de.steev.bm.Interaction - + @@ -52,10 +52,10 @@ loadScripts(document, 'script');
-

Package de.steev.bm.changes.interaction

+

Package de.steev.bm.Interaction


-
package de.steev.bm.changes.interaction
+
package de.steev.bm.Interaction
  • @@ -63,11 +63,11 @@ loadScripts(document, 'script');
    Class
    Description
    - +
    handles custom recipes
    - +
    handles the replanting mechanic
    diff --git a/Docs/de/steev/bm/changes/interaction/package-tree.html b/Docs/de/steev/bm/changes/interaction/package-tree.html index 2771644..aec8769 100644 --- a/Docs/de/steev/bm/changes/interaction/package-tree.html +++ b/Docs/de/steev/bm/changes/interaction/package-tree.html @@ -3,11 +3,11 @@ -de.steev.bm.changes.interaction Class Hierarchy +de.steev.bm.Interaction Class Hierarchy - + @@ -52,7 +52,7 @@ loadScripts(document, 'script');
    -

    Hierarchy For Package de.steev.bm.changes.interaction

    +

    Hierarchy For Package de.steev.bm.Interaction

    Package Hierarchies:
    • All Packages
    • @@ -63,8 +63,8 @@ loadScripts(document, 'script'); diff --git a/Docs/element-list b/Docs/element-list index 6ee523f..4bc64ef 100644 --- a/Docs/element-list +++ b/Docs/element-list @@ -1,6 +1,6 @@ de.steev.bm de.steev.bm.changes.env -de.steev.bm.changes.interaction +de.steev.bm.Interaction de.steev.bm.Commands de.steev.bm.crafting de.steev.bm.events diff --git a/Docs/index-files/index-10.html b/Docs/index-files/index-10.html index 4573e97..ed45f34 100644 --- a/Docs/index-files/index-10.html +++ b/Docs/index-files/index-10.html @@ -79,11 +79,11 @@ loadScripts(document, 'script');
      Variable for how many player got to bed
      -
      plugin - Variable in class de.steev.bm.changes.interaction.Item_Recipy_Override
      +
      plugin - Variable in class de.steev.bm.Interaction.Item_Recipy_Override
      plugin reference
      -
      plugin - Variable in class de.steev.bm.changes.interaction.Replanting
      +
      plugin - Variable in class de.steev.bm.Interaction.Replanting
      plugin reference
      diff --git a/Docs/index-files/index-11.html b/Docs/index-files/index-11.html index a42a526..b76425f 100644 --- a/Docs/index-files/index-11.html +++ b/Docs/index-files/index-11.html @@ -57,23 +57,23 @@ loadScripts(document, 'script'); A B C D I K L M O P R S V W 
      All Classes|All Packages|Constant Field Values|Deprecated API

      R

      -
      rec_item - Static variable in class de.steev.bm.changes.interaction.Item_Recipy_Override
      +
      rec_item - Static variable in class de.steev.bm.Interaction.Item_Recipy_Override
      the recipe shape
      -
      register_recipy(char[], Material[], String[]) - Static method in class de.steev.bm.changes.interaction.Item_Recipy_Override
      +
      register_recipy(char[], Material[], String[]) - Static method in class de.steev.bm.Interaction.Item_Recipy_Override
      registers custom recipes
      -
      replanting(Block, Location, Material[], int[]) - Static method in class de.steev.bm.changes.interaction.Replanting
      +
      replanting(Block, Location, Material[], int[]) - Static method in class de.steev.bm.Interaction.Replanting
      handles the replanting mechanic in a better way
      -
      Replanting - Class in de.steev.bm.changes.interaction
      +
      Replanting - Class in de.steev.bm.Interaction
      handles the replanting mechanic
      -
      Replanting(main) - Constructor for class de.steev.bm.changes.interaction.Replanting
      +
      Replanting(main) - Constructor for class de.steev.bm.Interaction.Replanting
      constructor
      diff --git a/Docs/index-files/index-4.html b/Docs/index-files/index-4.html index 95dd269..d69710b 100644 --- a/Docs/index-files/index-4.html +++ b/Docs/index-files/index-4.html @@ -61,7 +61,7 @@ loadScripts(document, 'script');
       
      de.steev.bm.changes.env - package de.steev.bm.changes.env
       
      -
      de.steev.bm.changes.interaction - package de.steev.bm.changes.interaction
      +
      de.steev.bm.Interaction - package de.steev.bm.Interaction
       
      de.steev.bm.Commands - package de.steev.bm.Commands
       
      diff --git a/Docs/index-files/index-5.html b/Docs/index-files/index-5.html index 3341a32..f601f63 100644 --- a/Docs/index-files/index-5.html +++ b/Docs/index-files/index-5.html @@ -67,15 +67,15 @@ loadScripts(document, 'script');
      returns if there is a thunderstorm
      -
      item - Variable in class de.steev.bm.changes.interaction.Item_Recipy_Override
      +
      item - Variable in class de.steev.bm.Interaction.Item_Recipy_Override
      the namepsace key
      -
      Item_Recipy_Override - Class in de.steev.bm.changes.interaction
      +
      Item_Recipy_Override - Class in de.steev.bm.Interaction
      handles custom recipes
      -
      Item_Recipy_Override(main, String, Material, int) - Constructor for class de.steev.bm.changes.interaction.Item_Recipy_Override
      +
      Item_Recipy_Override(main, String, Material, int) - Constructor for class de.steev.bm.Interaction.Item_Recipy_Override
      Overrides Vanilla Recipes
      diff --git a/Docs/index.html b/Docs/index.html index 0dffd70..b95c674 100644 --- a/Docs/index.html +++ b/Docs/index.html @@ -60,7 +60,7 @@ loadScripts(document, 'script');
       
       
      - +
       
       
      diff --git a/Docs/member-search-index.js b/Docs/member-search-index.js index 646382e..356fb39 100644 --- a/Docs/member-search-index.js +++ b/Docs/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"de.steev.bm.mechanics.autocrafting","c":"AutoCraftingTable","l":"AutoCraftingTable(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.Commands","c":"back","l":"back(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"BedEvent(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.events","c":"BreakEvent","l":"BreakEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.changes.env","c":"weather","l":"changeWeather(World)","u":"changeWeather(org.bukkit.World)"},{"p":"de.steev.bm.mechanics.chunkloading","c":"ChunkLoader","l":"ChunkLoader(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.crafting","c":"CraftItem","l":"CraftItem(String[][], String)","u":"%3Cinit%3E(java.lang.String[][],java.lang.String)"},{"p":"de.steev.bm.changes.env","c":"weather","l":"delay"},{"p":"de.steev.bm.events","c":"InteractEvent","l":"InteractEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.changes.env","c":"weather","l":"isThunder(World)","u":"isThunder(org.bukkit.World)"},{"p":"de.steev.bm.changes.interaction","c":"Item_Recipy_Override","l":"item"},{"p":"de.steev.bm.changes.interaction","c":"Item_Recipy_Override","l":"Item_Recipy_Override(main, String, Material, int)","u":"%3Cinit%3E(de.steev.bm.main,java.lang.String,org.bukkit.Material,int)"},{"p":"de.steev.bm.mechanics.autocrafting","c":"ItemPipe","l":"ItemPipe()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.events","c":"KillEvent","l":"KillEvent(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.changes.env","c":"weather","l":"lastThunder"},{"p":"de.steev.bm","c":"main","l":"main()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.Commands","c":"back","l":"onCommand(CommandSender, Command, String, String[])","u":"onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])"},{"p":"de.steev.bm","c":"main","l":"onDisable()"},{"p":"de.steev.bm","c":"main","l":"onEnable()"},{"p":"de.steev.bm.events","c":"KillEvent","l":"onEntityDeath(EntityDeathEvent)","u":"onEntityDeath(org.bukkit.event.entity.EntityDeathEvent)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"onPlayerBedEnter(PlayerBedEnterEvent)","u":"onPlayerBedEnter(org.bukkit.event.player.PlayerBedEnterEvent)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"onPlayerBedLeave(PlayerBedLeaveEvent)","u":"onPlayerBedLeave(org.bukkit.event.player.PlayerBedLeaveEvent)"},{"p":"de.steev.bm.events","c":"InteractEvent","l":"onPlayerInteract(PlayerInteractEvent)","u":"onPlayerInteract(org.bukkit.event.player.PlayerInteractEvent)"},{"p":"de.steev.bm","c":"main","l":"onPlayerJoin(PlayerJoinEvent)","u":"onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent)"},{"p":"de.steev.bm.events","c":"PlaceEvent","l":"PlaceEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm","c":"main","l":"playerdata"},{"p":"de.steev.bm","c":"main","l":"playerDataConfig"},{"p":"de.steev.bm","c":"main","l":"playerdatafilename"},{"p":"de.steev.bm","c":"main","l":"playerInBed"},{"p":"de.steev.bm.changes.interaction","c":"Item_Recipy_Override","l":"plugin"},{"p":"de.steev.bm.changes.interaction","c":"Replanting","l":"plugin"},{"p":"de.steev.bm.Commands","c":"back","l":"plugin"},{"p":"de.steev.bm.events","c":"BedEvent","l":"plugin"},{"p":"de.steev.bm.events","c":"KillEvent","l":"plugin"},{"p":"de.steev.bm.mechanics.autocrafting","c":"AutoCraftingTable","l":"plugin"},{"p":"de.steev.bm.mechanics.chunkloading","c":"ChunkLoader","l":"plugin"},{"p":"de.steev.bm.changes.interaction","c":"Item_Recipy_Override","l":"rec_item"},{"p":"de.steev.bm.changes.interaction","c":"Item_Recipy_Override","l":"register_recipy(char[], Material[], String[])","u":"register_recipy(char[],org.bukkit.Material[],java.lang.String[])"},{"p":"de.steev.bm.changes.interaction","c":"Replanting","l":"replanting(Block, Location, Material[], int[])","u":"replanting(org.bukkit.block.Block,org.bukkit.Location,org.bukkit.Material[],int[])"},{"p":"de.steev.bm.changes.interaction","c":"Replanting","l":"Replanting(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm","c":"main","l":"saveplayerdata()"},{"p":"de.steev.bm","c":"main","l":"version"},{"p":"de.steev.bm.changes.env","c":"weather","l":"weather()","u":"%3Cinit%3E()"},{"p":"de.steev.bm","c":"main","l":"world"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [{"p":"de.steev.bm.mechanics.autocrafting","c":"AutoCraftingTable","l":"AutoCraftingTable(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.Commands","c":"back","l":"back(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"BedEvent(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.events","c":"BreakEvent","l":"BreakEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.changes.env","c":"weather","l":"changeWeather(World)","u":"changeWeather(org.bukkit.World)"},{"p":"de.steev.bm.mechanics.chunkloading","c":"ChunkLoader","l":"ChunkLoader(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.crafting","c":"CraftItem","l":"CraftItem(String[][], String)","u":"%3Cinit%3E(java.lang.String[][],java.lang.String)"},{"p":"de.steev.bm.changes.env","c":"weather","l":"delay"},{"p":"de.steev.bm.events","c":"InteractEvent","l":"InteractEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.changes.env","c":"weather","l":"isThunder(World)","u":"isThunder(org.bukkit.World)"},{"p":"de.steev.bm.interaction","c":"Item_Recipy_Override","l":"item"},{"p":"de.steev.bm.interaction","c":"Item_Recipy_Override","l":"Item_Recipy_Override(main, String, Material, int)","u":"%3Cinit%3E(de.steev.bm.main,java.lang.String,org.bukkit.Material,int)"},{"p":"de.steev.bm.mechanics.autocrafting","c":"ItemPipe","l":"ItemPipe()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.events","c":"KillEvent","l":"KillEvent(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm.changes.env","c":"weather","l":"lastThunder"},{"p":"de.steev.bm","c":"main","l":"main()","u":"%3Cinit%3E()"},{"p":"de.steev.bm.Commands","c":"back","l":"onCommand(CommandSender, Command, String, String[])","u":"onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])"},{"p":"de.steev.bm","c":"main","l":"onDisable()"},{"p":"de.steev.bm","c":"main","l":"onEnable()"},{"p":"de.steev.bm.events","c":"KillEvent","l":"onEntityDeath(EntityDeathEvent)","u":"onEntityDeath(org.bukkit.event.entity.EntityDeathEvent)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"onPlayerBedEnter(PlayerBedEnterEvent)","u":"onPlayerBedEnter(org.bukkit.event.player.PlayerBedEnterEvent)"},{"p":"de.steev.bm.events","c":"BedEvent","l":"onPlayerBedLeave(PlayerBedLeaveEvent)","u":"onPlayerBedLeave(org.bukkit.event.player.PlayerBedLeaveEvent)"},{"p":"de.steev.bm.events","c":"InteractEvent","l":"onPlayerInteract(PlayerInteractEvent)","u":"onPlayerInteract(org.bukkit.event.player.PlayerInteractEvent)"},{"p":"de.steev.bm","c":"main","l":"onPlayerJoin(PlayerJoinEvent)","u":"onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent)"},{"p":"de.steev.bm.events","c":"PlaceEvent","l":"PlaceEvent()","u":"%3Cinit%3E()"},{"p":"de.steev.bm","c":"main","l":"playerdata"},{"p":"de.steev.bm","c":"main","l":"playerDataConfig"},{"p":"de.steev.bm","c":"main","l":"playerdatafilename"},{"p":"de.steev.bm","c":"main","l":"playerInBed"},{"p":"de.steev.bm.interaction","c":"Item_Recipy_Override","l":"plugin"},{"p":"de.steev.bm.interaction","c":"Replanting","l":"plugin"},{"p":"de.steev.bm.Commands","c":"back","l":"plugin"},{"p":"de.steev.bm.events","c":"BedEvent","l":"plugin"},{"p":"de.steev.bm.events","c":"KillEvent","l":"plugin"},{"p":"de.steev.bm.mechanics.autocrafting","c":"AutoCraftingTable","l":"plugin"},{"p":"de.steev.bm.mechanics.chunkloading","c":"ChunkLoader","l":"plugin"},{"p":"de.steev.bm.interaction","c":"Item_Recipy_Override","l":"rec_item"},{"p":"de.steev.bm.interaction","c":"Item_Recipy_Override","l":"register_recipy(char[], Material[], String[])","u":"register_recipy(char[],org.bukkit.Material[],java.lang.String[])"},{"p":"de.steev.bm.interaction","c":"Replanting","l":"replanting(Block, Location, Material[], int[])","u":"replanting(org.bukkit.block.Block,org.bukkit.Location,org.bukkit.Material[],int[])"},{"p":"de.steev.bm.interaction","c":"Replanting","l":"Replanting(main)","u":"%3Cinit%3E(de.steev.bm.main)"},{"p":"de.steev.bm","c":"main","l":"saveplayerdata()"},{"p":"de.steev.bm","c":"main","l":"version"},{"p":"de.steev.bm.changes.env","c":"weather","l":"weather()","u":"%3Cinit%3E()"},{"p":"de.steev.bm","c":"main","l":"world"}];updateSearchResults(); \ No newline at end of file diff --git a/Docs/overview-tree.html b/Docs/overview-tree.html index 81b395d..93316e2 100644 --- a/Docs/overview-tree.html +++ b/Docs/overview-tree.html @@ -57,7 +57,7 @@ loadScripts(document, 'script'); -
    • de.steev.bm.changes.interaction.Replanting (implements org.bukkit.event.Listener)
    • +
    • de.steev.bm.Interaction.Replanting (implements org.bukkit.event.Listener)
    • de.steev.bm.changes.env.weather
  • diff --git a/Docs/package-search-index.js b/Docs/package-search-index.js index c890dd7..23ee665 100644 --- a/Docs/package-search-index.js +++ b/Docs/package-search-index.js @@ -1 +1 @@ -packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"de.steev.bm"},{"l":"de.steev.bm.changes.env"},{"l":"de.steev.bm.changes.interaction"},{"l":"de.steev.bm.Commands"},{"l":"de.steev.bm.crafting"},{"l":"de.steev.bm.events"},{"l":"de.steev.bm.mechanics.autocrafting"},{"l":"de.steev.bm.mechanics.chunkloading"}];updateSearchResults(); \ No newline at end of file +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"de.steev.bm"},{"l":"de.steev.bm.changes.env"},{"l":"de.steev.bm.interaction"},{"l":"de.steev.bm.Commands"},{"l":"de.steev.bm.crafting"},{"l":"de.steev.bm.events"},{"l":"de.steev.bm.mechanics.autocrafting"},{"l":"de.steev.bm.mechanics.chunkloading"}];updateSearchResults(); \ No newline at end of file diff --git a/Docs/type-search-index.js b/Docs/type-search-index.js index fe4f4c4..1e0500f 100644 --- a/Docs/type-search-index.js +++ b/Docs/type-search-index.js @@ -1 +1 @@ -typeSearchIndex = [{"l":"All Classes","u":"allclasses-index.html"},{"p":"de.steev.bm.mechanics.autocrafting","l":"AutoCraftingTable"},{"p":"de.steev.bm.Commands","l":"back"},{"p":"de.steev.bm.events","l":"BedEvent"},{"p":"de.steev.bm.events","l":"BreakEvent"},{"p":"de.steev.bm.mechanics.chunkloading","l":"ChunkLoader"},{"p":"de.steev.bm.crafting","l":"CraftItem"},{"p":"de.steev.bm.events","l":"InteractEvent"},{"p":"de.steev.bm.changes.interaction","l":"Item_Recipy_Override"},{"p":"de.steev.bm.mechanics.autocrafting","l":"ItemPipe"},{"p":"de.steev.bm.events","l":"KillEvent"},{"p":"de.steev.bm","l":"main"},{"p":"de.steev.bm.events","l":"PlaceEvent"},{"p":"de.steev.bm.changes.interaction","l":"Replanting"},{"p":"de.steev.bm.changes.env","l":"weather"}];updateSearchResults(); \ No newline at end of file +typeSearchIndex = [{"l":"All Classes","u":"allclasses-index.html"},{"p":"de.steev.bm.mechanics.autocrafting","l":"AutoCraftingTable"},{"p":"de.steev.bm.Commands","l":"back"},{"p":"de.steev.bm.events","l":"BedEvent"},{"p":"de.steev.bm.events","l":"BreakEvent"},{"p":"de.steev.bm.mechanics.chunkloading","l":"ChunkLoader"},{"p":"de.steev.bm.crafting","l":"CraftItem"},{"p":"de.steev.bm.events","l":"InteractEvent"},{"p":"de.steev.bm.interaction","l":"Item_Recipy_Override"},{"p":"de.steev.bm.mechanics.autocrafting","l":"ItemPipe"},{"p":"de.steev.bm.events","l":"KillEvent"},{"p":"de.steev.bm","l":"main"},{"p":"de.steev.bm.events","l":"PlaceEvent"},{"p":"de.steev.bm.interaction","l":"Replanting"},{"p":"de.steev.bm.changes.env","l":"weather"}];updateSearchResults(); \ No newline at end of file diff --git a/plugin.yml b/plugin.yml deleted file mode 100644 index 504094c..0000000 --- a/plugin.yml +++ /dev/null @@ -1,4 +0,0 @@ -name: BetterMinecraft -main: de.steev.bm.main -version: 1.0 -api-version: 1.13 \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3a5c5ed..84ef005 100644 --- a/pom.xml +++ b/pom.xml @@ -28,12 +28,6 @@ 1.20.1-R0.1-SNAPSHOT provided - - - org.xerial - sqlite-jdbc - 3.42.0.0 - diff --git a/src/main/java/de/steev/bm/main.java b/src/main/java/de/steev/bm/BetterMinecraft.java similarity index 59% rename from src/main/java/de/steev/bm/main.java rename to src/main/java/de/steev/bm/BetterMinecraft.java index 94afa2d..7a92030 100644 --- a/src/main/java/de/steev/bm/main.java +++ b/src/main/java/de/steev/bm/BetterMinecraft.java @@ -1,14 +1,12 @@ package de.steev.bm; import de.steev.bm.Commands.back; -import de.steev.bm.changes.interaction.Item_Recipy_Override; -import de.steev.bm.events.BedEvent; -import de.steev.bm.events.DeathEvent; -import de.steev.bm.events.InteractEvent; -import de.steev.bm.events.KillEvent; +import de.steev.bm.Listener.BedListener; +import de.steev.bm.Listener.InteractListener; +import de.steev.bm.Listener.KillListener; +import de.steev.bm.Manager.GameManager; import org.bukkit.ChatColor; -import org.bukkit.Material; import org.bukkit.World; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.YamlConfiguration; @@ -22,7 +20,7 @@ import java.io.File; import java.io.IOException; import java.util.UUID; -public class main extends JavaPlugin implements Listener { +public class BetterMinecraft extends JavaPlugin implements Listener { // Global Variables that might come helpfull later public int playerInBed = 0; @@ -30,45 +28,34 @@ public class main extends JavaPlugin implements Listener { String version = "1.2"; // Custom Playerdata File - public File playerdata; - public FileConfiguration playerDataConfig; - public final String playerdatafilename = "playerdata.yml"; + private File playerdata; + private FileConfiguration playerDataConfig; + private final String playerdatafilename = "playerdata.yml"; + private static String prefix = ChatColor.GRAY + "[" + ChatColor.AQUA + "BetterMinecraft" + ChatColor.GRAY + "]"; + + private GameManager gameManager; // Handles initialisation public void onEnable() { // Messaging - this.getLogger().info(ChatColor.AQUA + "Plugin Startet"); + this.getLogger().info(prefix + ChatColor.WHITE + "Plugin Startet"); + this.getLogger().info(prefix + ChatColor.WHITE + "Initializing Gamemanager"); + gameManager = new GameManager(this); // Registers Events - this.getLogger().info(ChatColor.AQUA + "Lade Events"); - this.getServer().getPluginManager().registerEvents(new BedEvent(this), this); - this.getServer().getPluginManager().registerEvents(new KillEvent(this), this); - this.getServer().getPluginManager().registerEvents(new InteractEvent(this), this); - this.getServer().getPluginManager().registerEvents(new DeathEvent(this), this); + this.getLogger().info(prefix + ChatColor.WHITE + "Lade Events"); + this.getServer().getPluginManager().registerEvents(new BedListener(this.gameManager), this); + this.getServer().getPluginManager().registerEvents(new KillListener(this.gameManager), this); + this.getServer().getPluginManager().registerEvents(new InteractListener(this.gameManager), this); this.getServer().getPluginManager().registerEvents(this, this); - this.getCommand("back").setExecutor(new back(this)); + this.getCommand("back").setExecutor(new back(this.gameManager)); // PlayerData playerdata = new File(this.getDataFolder(), playerdatafilename); playerDataConfig = YamlConfiguration.loadConfiguration(playerdata); saveplayerdata(); - // More Messaging - this.getLogger().info(ChatColor.AQUA + "Erstelle Rezepte"); - - Item_Recipy_Override Saddle = new Item_Recipy_Override(this, "Saddle", Material.SADDLE, 1); - char[] s_ing = { 'L', 'S', 'I' }; - String[] s_rec = { "LLL", "LSL", " I " }; - Material[] s_mat = { Material.LEATHER, Material.STRING, Material.IRON_NUGGET }; - Saddle.register_recipy(s_ing, s_mat, s_rec); - - Item_Recipy_Override Wool = new Item_Recipy_Override(this, "String", Material.STRING, 8); - char[] w_ing = { 'W', 'F', }; - String[] w_rec = { " W ", "WFW", " W " }; - Material[] w_mat = { Material.WHITE_WOOL, Material.FLINT }; - Wool.register_recipy(w_ing, w_mat, w_rec); - // More Messaging this.getLogger().info(ChatColor.AQUA + "Ich bin Fertig :D"); } @@ -101,6 +88,9 @@ public class main extends JavaPlugin implements Listener { public FileConfiguration getPlayerDataConfig(){ return this.playerDataConfig; } + public static String LoggerPrefix(){ + return prefix; + } public void onDisable() { // Even more Messaging diff --git a/src/main/java/de/steev/bm/Commands/back.java b/src/main/java/de/steev/bm/Commands/back.java index dac0e67..4a16be8 100644 --- a/src/main/java/de/steev/bm/Commands/back.java +++ b/src/main/java/de/steev/bm/Commands/back.java @@ -1,6 +1,7 @@ package de.steev.bm.Commands; -import de.steev.bm.main; +import de.steev.bm.BetterMinecraft; +import de.steev.bm.Manager.GameManager; import org.bukkit.Location; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; @@ -8,10 +9,10 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; public class back implements CommandExecutor { - main plugin; + private GameManager gameManager; - public back(main plugin) { - this.plugin = plugin; + public back(GameManager gameManager) { + this.gameManager = gameManager; } @Override @@ -19,9 +20,9 @@ public class back implements CommandExecutor { Player player = (Player) commandSender.getServer().getPlayer(commandSender.getName()); Location lastDeath; try { - lastDeath = plugin.playerDataConfig.getLocation(player.getUniqueId() + ".death"); + lastDeath = this.gameManager.getPlugin().getPlayerDataConfig().getLocation(player.getUniqueId() + ".death"); player.teleport(lastDeath); - plugin.playerDataConfig.set(player.getUniqueId() + ".death", null); + this.gameManager.getPlugin().getPlayerDataConfig().set(player.getUniqueId() + ".death", null); commandSender.sendMessage("Du wurdest Teleportiert. Dein todespunkt ist nun entfernt worden."); } catch (Exception ex) { commandSender.sendMessage("Tot nicht gefunden!"); diff --git a/src/main/java/de/steev/bm/changes/interaction/Death.java b/src/main/java/de/steev/bm/Interaction/Death.java similarity index 89% rename from src/main/java/de/steev/bm/changes/interaction/Death.java rename to src/main/java/de/steev/bm/Interaction/Death.java index 80637c3..3e0a257 100644 --- a/src/main/java/de/steev/bm/changes/interaction/Death.java +++ b/src/main/java/de/steev/bm/Interaction/Death.java @@ -1,6 +1,6 @@ -package de.steev.bm.changes.interaction; +package de.steev.bm.Interaction; -import de.steev.bm.main; +import de.steev.bm.BetterMinecraft; import org.bukkit.Material; import org.bukkit.event.entity.EntityDeathEvent; import org.bukkit.inventory.ItemStack; @@ -14,7 +14,7 @@ public class Death { * @param drops the dropping items * @param plugin plugin reference */ - public static void onAnimalDeath(int[] amount, Material[] drops, main plugin, EntityDeathEvent event){ + public static void onAnimalDeath(int[] amount, Material[] drops, BetterMinecraft plugin, EntityDeathEvent event){ // Random Drop amount generation DO NOT TOUCH!!!! int i1_amnt = ThreadLocalRandom.current().nextInt(1, amount[0] + 1); diff --git a/src/main/java/de/steev/bm/changes/interaction/Item_Recipy_Override.java b/src/main/java/de/steev/bm/Interaction/Item_Recipy_Override.java similarity index 86% rename from src/main/java/de/steev/bm/changes/interaction/Item_Recipy_Override.java rename to src/main/java/de/steev/bm/Interaction/Item_Recipy_Override.java index a41d23e..6c0729b 100644 --- a/src/main/java/de/steev/bm/changes/interaction/Item_Recipy_Override.java +++ b/src/main/java/de/steev/bm/Interaction/Item_Recipy_Override.java @@ -1,6 +1,6 @@ -package de.steev.bm.changes.interaction; +package de.steev.bm.Interaction; -import de.steev.bm.main; +import de.steev.bm.BetterMinecraft; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.NamespacedKey; @@ -9,7 +9,7 @@ import org.bukkit.inventory.ShapedRecipe; public class Item_Recipy_Override { - main plugin; + BetterMinecraft plugin; NamespacedKey item; static ShapedRecipe rec_item; @@ -20,7 +20,7 @@ public class Item_Recipy_Override { * @param result the dropping item * @param amount the droprate */ - public Item_Recipy_Override(main plugin, String Item, Material result, int amount){ + public Item_Recipy_Override(BetterMinecraft plugin, String Item, Material result, int amount){ this.plugin = plugin; item = new NamespacedKey(plugin, Item); ItemStack itemStack = new ItemStack(result); diff --git a/src/main/java/de/steev/bm/changes/interaction/replanting.java b/src/main/java/de/steev/bm/Interaction/replanting.java similarity index 88% rename from src/main/java/de/steev/bm/changes/interaction/replanting.java rename to src/main/java/de/steev/bm/Interaction/replanting.java index 852ad2e..f73acc3 100644 --- a/src/main/java/de/steev/bm/changes/interaction/replanting.java +++ b/src/main/java/de/steev/bm/Interaction/replanting.java @@ -1,22 +1,21 @@ -package de.steev.bm.changes.interaction; +package de.steev.bm.Interaction; -import de.steev.bm.main; +import de.steev.bm.BetterMinecraft; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.block.data.Ageable; -import org.bukkit.event.Listener; import org.bukkit.inventory.ItemStack; public class replanting { - private main plugin; + private BetterMinecraft plugin; /** * event constructor * @param plugin plugin instance */ - public replanting(main plugin) { + public replanting(BetterMinecraft plugin) { plugin.getLogger().info("replanting handler Registered"); this.plugin = plugin; } diff --git a/src/main/java/de/steev/bm/Listener/BedListener.java b/src/main/java/de/steev/bm/Listener/BedListener.java new file mode 100644 index 0000000..adf6d9b --- /dev/null +++ b/src/main/java/de/steev/bm/Listener/BedListener.java @@ -0,0 +1,53 @@ +package de.steev.bm.Listener; + +import de.steev.bm.BetterMinecraft; +import de.steev.bm.Manager.GameManager; +import org.bukkit.Bukkit; +import org.bukkit.World; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerBedEnterEvent; +import org.bukkit.event.player.PlayerBedLeaveEvent; + +public class BedListener implements Listener { + + private GameManager gameManager; + + public BedListener(GameManager gameManager) { + gameManager.getPlugin().getLogger().info("Bed Listener Registered"); + this.gameManager = gameManager; + } + + @EventHandler // Adding to the Player Variable + public void onPlayerBedEnter(PlayerBedEnterEvent event) { + final World world = event.getPlayer().getWorld(); + if(world.getTime() >= 13000 || world.getThunderDuration() > 0) { + this.gameManager.getPlugin().playerInBed++; + // Checks if enough Players (currentSleeping >= OnlinePlayerAmount/2) are Sleeping + if(this.gameManager.getPlugin().playerInBed >= (int)this.gameManager.getPlugin().getServer().getOnlinePlayers().size()/2) { + // Delayed Task for detecting useless entries + Bukkit.getScheduler().scheduleSyncDelayedTask(this.gameManager.getPlugin(), new Runnable() { + @Override + public void run() { + if(gameManager.getPlugin().playerInBed >= (int)gameManager.getPlugin().getServer().getOnlinePlayers().size()/2) { + world.setTime(0); + world.setWeatherDuration(7 * 24000); + } + } + }, 20L); + } + } + } + + @EventHandler // Subtracting to the Player Variable + public void onPlayerBedLeave(PlayerBedLeaveEvent event) { + // Subtraction from the PlayerInBed variable + if(this.gameManager.getPlugin().playerInBed > 0) { + this.gameManager.getPlugin().playerInBed--; + // Failsafe to prevent integer underflow + }else if(this.gameManager.getPlugin().playerInBed > 0) { + this.gameManager.getPlugin().playerInBed = 0; + } + } + +} diff --git a/src/main/java/de/steev/bm/events/InteractEvent.java b/src/main/java/de/steev/bm/Listener/InteractListener.java similarity index 81% rename from src/main/java/de/steev/bm/events/InteractEvent.java rename to src/main/java/de/steev/bm/Listener/InteractListener.java index 702fa7d..8054c85 100644 --- a/src/main/java/de/steev/bm/events/InteractEvent.java +++ b/src/main/java/de/steev/bm/Listener/InteractListener.java @@ -1,7 +1,8 @@ -package de.steev.bm.events; +package de.steev.bm.Listener; -import de.steev.bm.changes.interaction.replanting; -import de.steev.bm.main; +import de.steev.bm.BetterMinecraft; +import de.steev.bm.Interaction.replanting; +import de.steev.bm.Manager.GameManager; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.block.Block; @@ -10,12 +11,12 @@ import org.bukkit.event.Listener; import org.bukkit.event.block.Action; import org.bukkit.event.player.PlayerInteractEvent; -public class InteractEvent implements Listener { +public class InteractListener implements Listener { + private GameManager gameManager; - private main plugin; - - public InteractEvent(main plugin){ - this.plugin = plugin; + public InteractListener(GameManager gameManager){ + gameManager.getPlugin().getLogger().info("Initializing Interaction Listener"); + this.gameManager = gameManager; } @EventHandler diff --git a/src/main/java/de/steev/bm/Listener/KillListener.java b/src/main/java/de/steev/bm/Listener/KillListener.java new file mode 100644 index 0000000..ca01c18 --- /dev/null +++ b/src/main/java/de/steev/bm/Listener/KillListener.java @@ -0,0 +1,44 @@ +package de.steev.bm.Listener; + +import de.steev.bm.Manager.GameManager; +import de.steev.bm.Interaction.Death; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.entity.Animals; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDeathEvent; +import java.util.UUID; + +public class KillListener implements Listener { + + private GameManager gameManager; + + public KillListener(GameManager gameManager) { + gameManager.getPlugin().getLogger().info("Mob Death events Registered"); + this.gameManager = gameManager; + } + + /** + * Implements drops on death and can handle other deaths + * @param event the parsed event on any death + */ + @EventHandler + public void onEntityDeath(EntityDeathEvent event) { + int[] amounts; + Material[] drops; + + if(event.getEntity() instanceof Player){ + Location death = ((Player) event.getEntity()).getPlayer().getLocation(); + UUID uuid = ((Player) event.getEntity()).getPlayer().getUniqueId(); + this.gameManager.getPlugin().getPlayerDataConfig().set("" + uuid + ".death", death); + } else if(event.getEntity() instanceof Animals) { + if(event.getEntity().toString() == "CraftPig"){ + amounts = new int[]{ 2,2 }; + drops = new Material[]{Material.LEATHER, Material.PORKCHOP}; + Death.onAnimalDeath(amounts, drops, this.gameManager.getPlugin(), event); + } + } + } +} diff --git a/src/main/java/de/steev/bm/Manager/GameManager.java b/src/main/java/de/steev/bm/Manager/GameManager.java new file mode 100644 index 0000000..2915b29 --- /dev/null +++ b/src/main/java/de/steev/bm/Manager/GameManager.java @@ -0,0 +1,57 @@ +package de.steev.bm.Manager; + +import de.steev.bm.BetterMinecraft; +import org.bukkit.Material; +import org.bukkit.entity.Player; + +/** + * Gamemanager controlls the plugins game logic + */ +public class GameManager { + + private BetterMinecraft plugin; + private RecipyManager recipyManager; + private PlayerManager playerManager; + + /** + * initilizes the Gamemanager and all systems beneath it + * @param plugin the plugin reference + */ + public GameManager(BetterMinecraft plugin) { + plugin.getLogger().info("Initializing Gamemanager"); + this.plugin = plugin; + + this.plugin.getLogger().info("Moving logger to internal plugin reference"); + this.plugin.getLogger().info("Initilizing other managers"); + + this.recipyManager = new RecipyManager(this); + this.playerManager = new PlayerManager(this); + + this.plugin.getLogger().info("registring Recipies"); + this.plugin.getLogger().info("saddle"); + char[] s_ing = { 'L', 'S', 'I' }; + String[] s_rec = { "LLL", "LSL", " I " }; + Material[] s_mat = { Material.LEATHER, Material.STRING, Material.IRON_NUGGET }; + this.recipyManager.RegisterNew(s_ing, s_mat, s_rec, 1, Material.SADDLE, "Saddle"); + + this.plugin.getLogger().info("String"); + char[] w_ing = { 'W', 'F', }; + String[] w_rec = { " W ", "WFW", " W " }; + Material[] w_mat = { Material.WHITE_WOOL, Material.FLINT }; + this.recipyManager.RegisterNew(w_ing, w_mat, w_rec, 1, Material.STRING, "String"); + + } + + public BetterMinecraft getPlugin(){ + return plugin; + } + + public RecipyManager getRecipyManager() { + return recipyManager; + } + + public PlayerManager getPlayerManager() { + return playerManager; + } +} + diff --git a/src/main/java/de/steev/bm/Manager/PlayerManager.java b/src/main/java/de/steev/bm/Manager/PlayerManager.java new file mode 100644 index 0000000..0deda7f --- /dev/null +++ b/src/main/java/de/steev/bm/Manager/PlayerManager.java @@ -0,0 +1,41 @@ +package de.steev.bm.Manager; + +import org.bukkit.Location; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; + +import java.awt.*; + +/** + * houses all functions controlling players + */ +public class PlayerManager { + + private GameManager gameManager; + + /** + * initilizes a player manager + * @param gameManager the Gamemanager reference + */ + public PlayerManager(GameManager gameManager) { + this.gameManager = gameManager; + } + + /** + * teleports a player to a location + * @param player the wanted player + * @param loc the wanted location + */ + public void teleportPlayer(Player player, Location loc) { + player.teleport(loc); + } + + /** + * gives a player a given itemstack + * @param player the players reference + * @param itemStack the items the player should receive + */ + public void givePlayerItems(Player player, ItemStack itemStack){ + player.getInventory().addItem(itemStack); + } +} diff --git a/src/main/java/de/steev/bm/Manager/RecipyManager.java b/src/main/java/de/steev/bm/Manager/RecipyManager.java new file mode 100644 index 0000000..4622b28 --- /dev/null +++ b/src/main/java/de/steev/bm/Manager/RecipyManager.java @@ -0,0 +1,41 @@ +package de.steev.bm.Manager; + +import de.steev.bm.BetterMinecraft; +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.NamespacedKey; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.ShapedRecipe; + +public class RecipyManager{ + + private GameManager gameManager; + + public RecipyManager(GameManager gameManager) { + this.gameManager = gameManager; + } + + public void RegisterNew(char[] ing, Material[] mat, String[] rec, int amount, Material result, String Item){ + + BetterMinecraft plugin; + NamespacedKey item; + ShapedRecipe rec_item; + + item = new NamespacedKey(this.gameManager.getPlugin(), Item); + ItemStack itemStack = new ItemStack(result); + itemStack.setAmount(amount); + + rec_item = new ShapedRecipe(item, itemStack); + + //Recipe shapes + rec_item.shape(rec[0], rec[1], rec[2]); + + for(int i = 0; i < ing.length; i++) { + // Material Definitions + rec_item.setIngredient(ing[i], mat[i]); + } + + // Add recipes to Server + Bukkit.addRecipe(rec_item); + } +} diff --git a/src/main/java/de/steev/bm/changes/env/weather.java b/src/main/java/de/steev/bm/changes/env/weather.java deleted file mode 100644 index afce37a..0000000 --- a/src/main/java/de/steev/bm/changes/env/weather.java +++ /dev/null @@ -1,22 +0,0 @@ -package de.steev.bm.changes.env; - -import org.bukkit.World; - -public class weather { - - static long lastThunder = 0; - long delay = 24000; - private static boolean isThunder(World world) { - return world.getThunderDuration() > 0; - } - - public static void changeWeather(World world) { - if(isThunder(world)) { - if(lastThunder + 24000 > world.getFullTime()) { - world.setClearWeatherDuration(1000); - }else { - lastThunder = world.getFullTime(); - } - } - } -} diff --git a/src/main/java/de/steev/bm/events/BedEvent.java b/src/main/java/de/steev/bm/events/BedEvent.java deleted file mode 100644 index e52faf0..0000000 --- a/src/main/java/de/steev/bm/events/BedEvent.java +++ /dev/null @@ -1,52 +0,0 @@ -package de.steev.bm.events; - -import org.bukkit.Bukkit; -import org.bukkit.World; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.PlayerBedEnterEvent; -import org.bukkit.event.player.PlayerBedLeaveEvent; - -import de.steev.bm.main; - -public class BedEvent implements Listener { - - private main plugin; - - public BedEvent(main plugin) { - plugin.getLogger().info("Bed events Registered"); - this.plugin = plugin; - } - - @EventHandler // Adding to the Player Variable - public void onPlayerBedEnter(PlayerBedEnterEvent event) { - final World world = event.getPlayer().getWorld(); - if(world.getTime() >= 13000 || world.getThunderDuration() > 0) { - plugin.playerInBed++; - // Checks if enough Players (currentSleeping >= OnlinePlayerAmount/2) are Sleeping - if(plugin.playerInBed >= (int)plugin.getServer().getOnlinePlayers().size()/2) { - // Delayed Task for detecting useless entries - Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { - @Override - public void run() { - if(plugin.playerInBed >= (int)plugin.getServer().getOnlinePlayers().size()/2) { - world.setTime(0); - world.setWeatherDuration(7 * 24000); - } - } - }, 20L); - } - } - } - - @EventHandler // Subtracting to the Player Variable - public void onPlayerBedLeave(PlayerBedLeaveEvent event) { - // Subtraction from the PlayerInBed variable - if(plugin.playerInBed > 0) { - plugin.playerInBed--; - // Failsafe to prevent integer underflow - }else if(plugin.playerInBed > 0) { - plugin.playerInBed = 0; - } - } -} \ No newline at end of file diff --git a/src/main/java/de/steev/bm/events/DeathEvent.java b/src/main/java/de/steev/bm/events/DeathEvent.java deleted file mode 100644 index 3d31820..0000000 --- a/src/main/java/de/steev/bm/events/DeathEvent.java +++ /dev/null @@ -1,26 +0,0 @@ -package de.steev.bm.events; - -import de.steev.bm.main; -import org.bukkit.Location; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; - -public class DeathEvent implements Listener { - - private main plugin; - - public DeathEvent(main plugin) { - plugin.getLogger().info("Death events Registered"); - this.plugin = plugin; - } - - @EventHandler - public void OnPlayerDeath(PlayerDeathEvent e) { - Player player = (Player) e.getEntity(); - - Location loc = player.getLocation(); - this.plugin.playerDataConfig.set(player.getUniqueId() + ".death", loc); - } -} diff --git a/src/main/java/de/steev/bm/events/KillEvent.java b/src/main/java/de/steev/bm/events/KillEvent.java deleted file mode 100644 index 8604d58..0000000 --- a/src/main/java/de/steev/bm/events/KillEvent.java +++ /dev/null @@ -1,47 +0,0 @@ -package de.steev.bm.events; - -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.entity.Animals; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.EntityDeathEvent; - -import de.steev.bm.main; -import de.steev.bm.changes.interaction.Death; - -public class KillEvent implements Listener{ - private main plugin; - - public KillEvent(main plugin) { - plugin.getLogger().info("Mob Death events Registered"); - this.plugin = plugin; - } - - /** - * Implements drops on death and can handle other deaths - * @param event the parsed event on any death - */ - @EventHandler - public void onEntityDeath(EntityDeathEvent event) { - int[] amounts; - Material[] drops; - - if(event.getEntity() instanceof Player){ - Location death = ((Player) event.getEntity()).getPlayer().getLocation(); - UUID uuid = ((Player) event.getEntity()).getPlayer().getUniqueId(); - plugin.playerDataConfig.set("" + uuid + ".death", death); - } else if(event.getEntity() instanceof Animals) { - - - if(event.getEntity().toString() == "CraftPig"){ - amounts = new int[]{ 2,2 }; - drops = new Material[]{Material.LEATHER, Material.PORKCHOP}; - Death.onAnimalDeath(amounts, drops, plugin, event); - } - } - } -} diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml new file mode 100644 index 0000000..6e61eb1 --- /dev/null +++ b/src/main/resources/plugin.yml @@ -0,0 +1,7 @@ +name: BetterMinecraft +main: de.steev.bm.main +version: 1.0 +api-version: 1.17 +commands: + back: + description: "teleports players back to their deathpoint" \ No newline at end of file