Compare commits
	
		
			20 Commits
		
	
	
		
			1.1.1
			...
			17a6aab274
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 17a6aab274 | |||
| 8b302265bf | |||
| 7025e58c61 | |||
| fa719cb674 | |||
| ea3a602587 | |||
| 60cddc4b50 | |||
| 9468552fdc | |||
| 30002d348a | |||
| 9e70ee87f5 | |||
| b469378cd3 | |||
| 2c43316346 | |||
| 3ea10a825d | |||
| 08488b813e | |||
| 5bc75070cf | |||
| 9605e318ac | |||
| 4ebf2b4f5d | |||
| b7179722a2 | |||
| 42a1aabff3 | |||
| 51f825c0ee | |||
| c163826b05 | 
							
								
								
									
										65
									
								
								.gitea/workflows/release.yml.disabled
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								.gitea/workflows/release.yml.disabled
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,65 @@
 | 
			
		||||
name: Build and Release Minecraft Plugin
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - main
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    steps:
 | 
			
		||||
    - name: Checkout Repository
 | 
			
		||||
      uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
    - name: Set up Java 17
 | 
			
		||||
      uses: actions/setup-java@v2
 | 
			
		||||
      with:
 | 
			
		||||
        java-version: '17'
 | 
			
		||||
        distribution: 'adopt' # Verwenden Sie 'adopt' für Java 17
 | 
			
		||||
 | 
			
		||||
    - name: Update Apt
 | 
			
		||||
      run: apt update -y
 | 
			
		||||
 | 
			
		||||
    - name: Update CA certificates
 | 
			
		||||
      run: apt-get install --reinstall ca-certificates -y
 | 
			
		||||
 | 
			
		||||
    - name: Install Maven
 | 
			
		||||
      run: apt install maven -y
 | 
			
		||||
 | 
			
		||||
    - name: Build with Maven
 | 
			
		||||
      run: mvn clean install
 | 
			
		||||
      
 | 
			
		||||
    - name: Upload Artifact
 | 
			
		||||
      uses: actions/upload-artifact@v3
 | 
			
		||||
      with:
 | 
			
		||||
        name: BetterMinecraft-stable.jar
 | 
			
		||||
        path: target/BetterMinecraft-stable.jar
 | 
			
		||||
        steps:
 | 
			
		||||
    - name: Checkout Repository
 | 
			
		||||
      uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
    - name: Get letzte Release-Version
 | 
			
		||||
      id: get_version
 | 
			
		||||
      run: echo "::set-output name=version::$(git describe --tags --abbrev=0 || echo '0.0.0')"
 | 
			
		||||
 | 
			
		||||
    - name: Incrementiere Version
 | 
			
		||||
      id: increment_version
 | 
			
		||||
      run: |
 | 
			
		||||
        IFS='.' read -ra VERSION <<< "${{ steps.get_version.outputs.version }}"
 | 
			
		||||
        MAJOR="${VERSION[0]}"
 | 
			
		||||
        MINOR="${VERSION[1]}"
 | 
			
		||||
        PATCH="${VERSION[2]}"
 | 
			
		||||
        echo "::set-output name=major::$(($MAJOR + 1))"
 | 
			
		||||
        echo "::set-output name=minor::$(($MINOR + 1))"
 | 
			
		||||
        echo "::set-output name=patch::$(($PATCH + 1))"
 | 
			
		||||
 | 
			
		||||
    - name: Create Release
 | 
			
		||||
      id: create_release
 | 
			
		||||
      uses: softprops/action-gh-release@v1
 | 
			
		||||
      with:
 | 
			
		||||
        files: |
 | 
			
		||||
          target/BetterMinecraft-stable.jar
 | 
			
		||||
        tag_name: ${{ steps.increment_version.outputs.major }}.${{ steps.increment_version.outputs.minor }}.${{ steps.increment_version.outputs.patch }}
 | 
			
		||||
        release_name: Release ${{ steps.increment_version.outputs.major }}.${{ steps.increment_version.outputs.minor }}.${{ steps.increment_version.outputs.patch }}
 | 
			
		||||
        draft: false
 | 
			
		||||
        prerelease: false
 | 
			
		||||
@ -28,17 +28,13 @@ jobs:
 | 
			
		||||
 | 
			
		||||
    - name: Build with Maven
 | 
			
		||||
      run: mvn clean install
 | 
			
		||||
 | 
			
		||||
      
 | 
			
		||||
    - name: Upload Artifact
 | 
			
		||||
      uses: actions/upload-artifact@v2
 | 
			
		||||
      uses: actions/upload-artifact@v3
 | 
			
		||||
      with:
 | 
			
		||||
        name: plugin-jar
 | 
			
		||||
        path: target/BetterMinecraft.jar
 | 
			
		||||
 | 
			
		||||
  release:
 | 
			
		||||
    needs: build
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
        name: BetterMinecraft-stable.jar
 | 
			
		||||
        path: target/BetterMinecraft-stable.jar
 | 
			
		||||
        steps:
 | 
			
		||||
    - name: Checkout Repository
 | 
			
		||||
      uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
@ -62,7 +58,7 @@ jobs:
 | 
			
		||||
      uses: softprops/action-gh-release@v1
 | 
			
		||||
      with:
 | 
			
		||||
        files: |
 | 
			
		||||
          target/BetterMinecraft.jar
 | 
			
		||||
          target/BetterMinecraft-stable.jar
 | 
			
		||||
        tag_name: ${{ steps.increment_version.outputs.major }}.${{ steps.increment_version.outputs.minor }}.${{ steps.increment_version.outputs.patch }}
 | 
			
		||||
        release_name: Release ${{ steps.increment_version.outputs.major }}.${{ steps.increment_version.outputs.minor }}.${{ steps.increment_version.outputs.patch }}
 | 
			
		||||
        draft: false
 | 
			
		||||
@ -87,7 +87,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="col-last even-row-color all-classes-table-tab2 all-classes-table">
 | 
			
		||||
<div class="block">handles block interactions</div>
 | 
			
		||||
</div>
 | 
			
		||||
<div class="col-first odd-row-color all-classes-table-tab2 all-classes-table"><a href="de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></div>
 | 
			
		||||
<div class="col-first odd-row-color all-classes-table-tab2 all-classes-table"><a href="de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></div>
 | 
			
		||||
<div class="col-last odd-row-color all-classes-table-tab2 all-classes-table">
 | 
			
		||||
<div class="block">handles custom recipes</div>
 | 
			
		||||
</div>
 | 
			
		||||
@ -107,7 +107,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="col-last odd-row-color all-classes-table-tab2 all-classes-table">
 | 
			
		||||
<div class="block">handles block placing</div>
 | 
			
		||||
</div>
 | 
			
		||||
<div class="col-first even-row-color all-classes-table-tab2 all-classes-table"><a href="de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction">Replanting</a></div>
 | 
			
		||||
<div class="col-first even-row-color all-classes-table-tab2 all-classes-table"><a href="de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction">Replanting</a></div>
 | 
			
		||||
<div class="col-last even-row-color all-classes-table-tab2 all-classes-table">
 | 
			
		||||
<div class="block">handles the replanting mechanic</div>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
@ -62,7 +62,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="col-last even-row-color"> </div>
 | 
			
		||||
<div class="col-first odd-row-color"><a href="de/steev/bm/changes/env/package-summary.html">de.steev.bm.changes.env</a></div>
 | 
			
		||||
<div class="col-last odd-row-color"> </div>
 | 
			
		||||
<div class="col-first even-row-color"><a href="de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.changes.interaction</a></div>
 | 
			
		||||
<div class="col-first even-row-color"><a href="de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.Interaction</a></div>
 | 
			
		||||
<div class="col-last even-row-color"> </div>
 | 
			
		||||
<div class="col-first odd-row-color"><a href="de/steev/bm/Commands/package-summary.html">de.steev.bm.Commands</a></div>
 | 
			
		||||
<div class="col-last odd-row-color"> </div>
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,7 @@
 | 
			
		||||
<meta name="viewport" content="width=device-width, initial-scale=1">
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 | 
			
		||||
<meta name="dc.created" content="2021-06-27">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.changes.interaction, class: Item_Recipy_Override">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.Interaction, class: Item_Recipy_Override">
 | 
			
		||||
<meta name="generator" content="javadoc/ClassWriterImpl">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
 | 
			
		||||
@ -72,7 +72,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<main role="main">
 | 
			
		||||
<!-- ======== START OF CLASS DATA ======== -->
 | 
			
		||||
<div class="header">
 | 
			
		||||
<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">de.steev.bm.changes.interaction</a></div>
 | 
			
		||||
<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">de.steev.bm.Interaction</a></div>
 | 
			
		||||
<h1 title="Class Item_Recipy_Override" class="title">Class Item_Recipy_Override</h1>
 | 
			
		||||
</div>
 | 
			
		||||
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,7 @@
 | 
			
		||||
<meta name="viewport" content="width=device-width, initial-scale=1">
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 | 
			
		||||
<meta name="dc.created" content="2021-06-27">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.changes.interaction, class: Replanting">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.Interaction, class: Replanting">
 | 
			
		||||
<meta name="generator" content="javadoc/ClassWriterImpl">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
 | 
			
		||||
@ -72,7 +72,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<main role="main">
 | 
			
		||||
<!-- ======== START OF CLASS DATA ======== -->
 | 
			
		||||
<div class="header">
 | 
			
		||||
<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">de.steev.bm.changes.interaction</a></div>
 | 
			
		||||
<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">de.steev.bm.Interaction</a></div>
 | 
			
		||||
<h1 title="Class Replanting" class="title">Class Replanting</h1>
 | 
			
		||||
</div>
 | 
			
		||||
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
 | 
			
		||||
 | 
			
		||||
@ -3,11 +3,11 @@
 | 
			
		||||
<html lang="de">
 | 
			
		||||
<head>
 | 
			
		||||
<!-- Generated by javadoc (16) on Sun Jun 27 21:28:05 CEST 2021 -->
 | 
			
		||||
<title>de.steev.bm.changes.interaction</title>
 | 
			
		||||
<title>de.steev.bm.Interaction</title>
 | 
			
		||||
<meta name="viewport" content="width=device-width, initial-scale=1">
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 | 
			
		||||
<meta name="dc.created" content="2021-06-27">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.changes.interaction">
 | 
			
		||||
<meta name="description" content="declaration: package: de.steev.bm.Interaction">
 | 
			
		||||
<meta name="generator" content="javadoc/PackageWriterImpl">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
 | 
			
		||||
@ -52,10 +52,10 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="flex-content">
 | 
			
		||||
<main role="main">
 | 
			
		||||
<div class="header">
 | 
			
		||||
<h1 title="Package" class="title">Package de.steev.bm.changes.interaction</h1>
 | 
			
		||||
<h1 title="Package" class="title">Package de.steev.bm.Interaction</h1>
 | 
			
		||||
</div>
 | 
			
		||||
<hr>
 | 
			
		||||
<div class="package-signature">package <span class="element-name">de.steev.bm.changes.interaction</span></div>
 | 
			
		||||
<div class="package-signature">package <span class="element-name">de.steev.bm.Interaction</span></div>
 | 
			
		||||
<section class="summary">
 | 
			
		||||
<ul class="summary-list">
 | 
			
		||||
<li>
 | 
			
		||||
@ -63,11 +63,11 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="summary-table two-column-summary">
 | 
			
		||||
<div class="table-header col-first">Class</div>
 | 
			
		||||
<div class="table-header col-last">Description</div>
 | 
			
		||||
<div class="col-first even-row-color"><a href="Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></div>
 | 
			
		||||
<div class="col-first even-row-color"><a href="Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></div>
 | 
			
		||||
<div class="col-last even-row-color">
 | 
			
		||||
<div class="block">handles custom recipes</div>
 | 
			
		||||
</div>
 | 
			
		||||
<div class="col-first odd-row-color"><a href="Replanting.html" title="class in de.steev.bm.changes.interaction">Replanting</a></div>
 | 
			
		||||
<div class="col-first odd-row-color"><a href="Replanting.html" title="class in de.steev.bm.Interaction">Replanting</a></div>
 | 
			
		||||
<div class="col-last odd-row-color">
 | 
			
		||||
<div class="block">handles the replanting mechanic</div>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
@ -3,11 +3,11 @@
 | 
			
		||||
<html lang="de">
 | 
			
		||||
<head>
 | 
			
		||||
<!-- Generated by javadoc (16) on Sun Jun 27 21:28:05 CEST 2021 -->
 | 
			
		||||
<title>de.steev.bm.changes.interaction Class Hierarchy</title>
 | 
			
		||||
<title>de.steev.bm.Interaction Class Hierarchy</title>
 | 
			
		||||
<meta name="viewport" content="width=device-width, initial-scale=1">
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 | 
			
		||||
<meta name="dc.created" content="2021-06-27">
 | 
			
		||||
<meta name="description" content="tree: package: de.steev.bm.changes.interaction">
 | 
			
		||||
<meta name="description" content="tree: package: de.steev.bm.Interaction">
 | 
			
		||||
<meta name="generator" content="javadoc/PackageTreeWriter">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 | 
			
		||||
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
 | 
			
		||||
@ -52,7 +52,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="flex-content">
 | 
			
		||||
<main role="main">
 | 
			
		||||
<div class="header">
 | 
			
		||||
<h1 class="title">Hierarchy For Package de.steev.bm.changes.interaction</h1>
 | 
			
		||||
<h1 class="title">Hierarchy For Package de.steev.bm.Interaction</h1>
 | 
			
		||||
<span class="package-hierarchy-label">Package Hierarchies:</span>
 | 
			
		||||
<ul class="horizontal">
 | 
			
		||||
<li><a href="../../../../../overview-tree.html">All Packages</a></li>
 | 
			
		||||
@ -63,8 +63,8 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<ul>
 | 
			
		||||
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link"><span class="type-name-link">Object</span></a>
 | 
			
		||||
<ul>
 | 
			
		||||
<li class="circle">de.steev.bm.changes.interaction.<a href="Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Item_Recipy_Override</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.changes.interaction.<a href="Replanting.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Replanting</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.Interaction.<a href="Item_Recipy_Override.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Item_Recipy_Override</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.Interaction.<a href="Replanting.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Replanting</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</li>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
@ -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
 | 
			
		||||
 | 
			
		||||
@ -79,11 +79,11 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">Variable for how many player got to bed</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#plugin">plugin</a></span> - Variable in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#plugin">plugin</a></span> - Variable in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">plugin reference</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#plugin">plugin</a></span> - Variable in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction">Replanting</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#plugin">plugin</a></span> - Variable in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction">Replanting</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">plugin reference</div>
 | 
			
		||||
</dd>
 | 
			
		||||
 | 
			
		||||
@ -57,23 +57,23 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">I</a> <a href="index-6.html">K</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">V</a> <a href="index-14.html">W</a> <br><a href="../allclasses-index.html">All Classes</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../deprecated-list.html">Deprecated API</a>
 | 
			
		||||
<h2 class="title" id="I:R">R</h2>
 | 
			
		||||
<dl class="index">
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#rec_item">rec_item</a></span> - Static variable in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#rec_item">rec_item</a></span> - Static variable in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">the recipe shape</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#register_recipy(char%5B%5D,org.bukkit.Material%5B%5D,java.lang.String%5B%5D)">register_recipy(char[], Material[], String[])</a></span> - Static method in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#register_recipy(char%5B%5D,org.bukkit.Material%5B%5D,java.lang.String%5B%5D)">register_recipy(char[], Material[], String[])</a></span> - Static method in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">registers custom recipes</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#replanting(org.bukkit.block.Block,org.bukkit.Location,org.bukkit.Material%5B%5D,int%5B%5D)">replanting(Block, Location, Material[], int[])</a></span> - Static method in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction">Replanting</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#replanting(org.bukkit.block.Block,org.bukkit.Location,org.bukkit.Material%5B%5D,int%5B%5D)">replanting(Block, Location, Material[], int[])</a></span> - Static method in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction">Replanting</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">handles the replanting mechanic in a better way</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Replanting</span></a> - Class in <a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.changes.interaction</a></dt>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Replanting</span></a> - Class in <a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.Interaction</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">handles the replanting mechanic</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#%3Cinit%3E(main)">Replanting(main)</a></span> - Constructor for class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction">Replanting</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Replanting.html#%3Cinit%3E(main)">Replanting(main)</a></span> - Constructor for class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction">Replanting</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">constructor</div>
 | 
			
		||||
</dd>
 | 
			
		||||
 | 
			
		||||
@ -61,7 +61,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<dd> </dd>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/env/package-summary.html">de.steev.bm.changes.env</a> - package de.steev.bm.changes.env</dt>
 | 
			
		||||
<dd> </dd>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.changes.interaction</a> - package de.steev.bm.changes.interaction</dt>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.Interaction</a> - package de.steev.bm.Interaction</dt>
 | 
			
		||||
<dd> </dd>
 | 
			
		||||
<dt><a href="../de/steev/bm/Commands/package-summary.html">de.steev.bm.Commands</a> - package de.steev.bm.Commands</dt>
 | 
			
		||||
<dd> </dd>
 | 
			
		||||
 | 
			
		||||
@ -67,15 +67,15 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">returns if there is a thunderstorm</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#item">item</a></span> - Variable in class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#item">item</a></span> - Variable in class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">the namepsace key</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Item_Recipy_Override</span></a> - Class in <a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.changes.interaction</a></dt>
 | 
			
		||||
<dt><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Item_Recipy_Override</span></a> - Class in <a href="../de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.Interaction</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">handles custom recipes</div>
 | 
			
		||||
</dd>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#%3Cinit%3E(main,java.lang.String,org.bukkit.Material,int)">Item_Recipy_Override(main, String, Material, int)</a></span> - Constructor for class de.steev.bm.changes.interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dt><span class="member-name-link"><a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html#%3Cinit%3E(main,java.lang.String,org.bukkit.Material,int)">Item_Recipy_Override(main, String, Material, int)</a></span> - Constructor for class de.steev.bm.Interaction.<a href="../de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction">Item_Recipy_Override</a></dt>
 | 
			
		||||
<dd>
 | 
			
		||||
<div class="block">Overrides Vanilla Recipes</div>
 | 
			
		||||
</dd>
 | 
			
		||||
 | 
			
		||||
@ -60,7 +60,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<div class="col-last even-row-color all-packages-table-tab1 all-packages-table"> </div>
 | 
			
		||||
<div class="col-first odd-row-color all-packages-table-tab1 all-packages-table"><a href="de/steev/bm/changes/env/package-summary.html">de.steev.bm.changes.env</a></div>
 | 
			
		||||
<div class="col-last odd-row-color all-packages-table-tab1 all-packages-table"> </div>
 | 
			
		||||
<div class="col-first even-row-color all-packages-table-tab1 all-packages-table"><a href="de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.changes.interaction</a></div>
 | 
			
		||||
<div class="col-first even-row-color all-packages-table-tab1 all-packages-table"><a href="de/steev/bm/changes/interaction/package-summary.html">de.steev.bm.Interaction</a></div>
 | 
			
		||||
<div class="col-last even-row-color all-packages-table-tab1 all-packages-table"> </div>
 | 
			
		||||
<div class="col-first odd-row-color all-packages-table-tab1 all-packages-table"><a href="de/steev/bm/Commands/package-summary.html">de.steev.bm.Commands</a></div>
 | 
			
		||||
<div class="col-last odd-row-color all-packages-table-tab1 all-packages-table"> </div>
 | 
			
		||||
 | 
			
		||||
@ -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();
 | 
			
		||||
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();
 | 
			
		||||
@ -57,7 +57,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<ul class="horizontal">
 | 
			
		||||
<li><a href="de/steev/bm/package-tree.html">de.steev.bm</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/changes/env/package-tree.html">de.steev.bm.changes.env</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/changes/interaction/package-tree.html">de.steev.bm.changes.interaction</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/changes/interaction/package-tree.html">de.steev.bm.Interaction</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/Commands/package-tree.html">de.steev.bm.Commands</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/crafting/package-tree.html">de.steev.bm.crafting</a>, </li>
 | 
			
		||||
<li><a href="de/steev/bm/events/package-tree.html">de.steev.bm.events</a>, </li>
 | 
			
		||||
@ -77,7 +77,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
<li class="circle">de.steev.bm.mechanics.chunkloading.<a href="de/steev/bm/mechanics/chunkloading/ChunkLoader.html" title="class in de.steev.bm.mechanics.chunkloading"><span class="type-name-link">ChunkLoader</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.crafting.<a href="de/steev/bm/crafting/CraftItem.html" title="class in de.steev.bm.crafting"><span class="type-name-link">CraftItem</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.events.<a href="de/steev/bm/events/InteractEvent.html" title="class in de.steev.bm.events"><span class="type-name-link">InteractEvent</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.changes.interaction.<a href="de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Item_Recipy_Override</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.Interaction.<a href="de/steev/bm/changes/interaction/Item_Recipy_Override.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Item_Recipy_Override</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.mechanics.autocrafting.<a href="de/steev/bm/mechanics/autocrafting/ItemPipe.html" title="class in de.steev.bm.mechanics.autocrafting"><span class="type-name-link">ItemPipe</span></a></li>
 | 
			
		||||
<li class="circle">de.steev.bm.events.<a href="de/steev/bm/events/KillEvent.html" title="class in de.steev.bm.events"><span class="type-name-link">KillEvent</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.events.<a href="de/steev/bm/events/PlaceEvent.html" title="class in de.steev.bm.events"><span class="type-name-link">PlaceEvent</span></a></li>
 | 
			
		||||
@ -90,7 +90,7 @@ loadScripts(document, 'script');</script>
 | 
			
		||||
</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</li>
 | 
			
		||||
<li class="circle">de.steev.bm.changes.interaction.<a href="de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.changes.interaction"><span class="type-name-link">Replanting</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.Interaction.<a href="de/steev/bm/changes/interaction/Replanting.html" title="class in de.steev.bm.Interaction"><span class="type-name-link">Replanting</span></a> (implements org.bukkit.event.Listener)</li>
 | 
			
		||||
<li class="circle">de.steev.bm.changes.env.<a href="de/steev/bm/changes/env/weather.html" title="class in de.steev.bm.changes.env"><span class="type-name-link">weather</span></a></li>
 | 
			
		||||
</ul>
 | 
			
		||||
</li>
 | 
			
		||||
 | 
			
		||||
@ -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();
 | 
			
		||||
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();
 | 
			
		||||
@ -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();
 | 
			
		||||
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();
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
name: BetterMinecraft
 | 
			
		||||
main: de.steev.bm.main
 | 
			
		||||
version: 1.0
 | 
			
		||||
api-version: 1.13
 | 
			
		||||
							
								
								
									
										12
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								pom.xml
									
									
									
									
									
								
							@ -4,9 +4,9 @@
 | 
			
		||||
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 | 
			
		||||
  <modelVersion>4.0.0</modelVersion>
 | 
			
		||||
 | 
			
		||||
  <groupId>de.vortexhq.lobby</groupId>
 | 
			
		||||
  <artifactId>vortexlobby</artifactId>
 | 
			
		||||
  <version>1.0</version>
 | 
			
		||||
  <groupId>de.steev.bm</groupId>
 | 
			
		||||
  <artifactId>BetterMinecraft</artifactId>
 | 
			
		||||
  <version>stable</version>
 | 
			
		||||
 | 
			
		||||
  <properties>
 | 
			
		||||
    <maven.compiler.source>17</maven.compiler.source>
 | 
			
		||||
@ -28,12 +28,6 @@
 | 
			
		||||
      <version>1.20.1-R0.1-SNAPSHOT</version>
 | 
			
		||||
      <scope>provided</scope>
 | 
			
		||||
    </dependency>
 | 
			
		||||
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.xerial</groupId>
 | 
			
		||||
      <artifactId>sqlite-jdbc</artifactId>
 | 
			
		||||
      <version>3.42.0.0</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
  </dependencies>
 | 
			
		||||
 | 
			
		||||
  <build>
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,12 @@
 | 
			
		||||
package de.steev.bm;
 | 
			
		||||
 | 
			
		||||
import de.steev.bm.changes.interaction.Item_Recipy_Override;
 | 
			
		||||
import de.steev.bm.events.BedEvent;
 | 
			
		||||
import de.steev.bm.events.InteractEvent;
 | 
			
		||||
import de.steev.bm.events.KillEvent;
 | 
			
		||||
import de.steev.bm.Commands.back;
 | 
			
		||||
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;
 | 
			
		||||
@ -20,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;
 | 
			
		||||
@ -28,42 +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.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.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");
 | 
			
		||||
	}
 | 
			
		||||
@ -93,6 +85,13 @@ 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
 | 
			
		||||
		this.getLogger().info(ChatColor.AQUA + "Ich geh dann mal :c");
 | 
			
		||||
@ -1,16 +1,32 @@
 | 
			
		||||
package de.steev.bm.Commands;
 | 
			
		||||
 | 
			
		||||
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;
 | 
			
		||||
import org.bukkit.command.CommandSender;
 | 
			
		||||
import org.bukkit.entity.Player;
 | 
			
		||||
 | 
			
		||||
public class back implements CommandExecutor {
 | 
			
		||||
    // TODO save death coordinates in playerdata
 | 
			
		||||
    // TODO grab them
 | 
			
		||||
    // TODO ensure the position is safe
 | 
			
		||||
    // TODO teleport player back
 | 
			
		||||
    private GameManager gameManager;
 | 
			
		||||
 | 
			
		||||
    public back(GameManager gameManager) {
 | 
			
		||||
        this.gameManager = gameManager;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onCommand(CommandSender commandSender, Command command, String s, String[] strings) {
 | 
			
		||||
        Player player = (Player) commandSender.getServer().getPlayer(commandSender.getName());
 | 
			
		||||
        Location lastDeath;
 | 
			
		||||
        try {
 | 
			
		||||
            lastDeath = this.gameManager.getPlugin().getPlayerDataConfig().getLocation(player.getUniqueId() + ".death");
 | 
			
		||||
            player.teleport(lastDeath);
 | 
			
		||||
            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!");
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -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);
 | 
			
		||||
@ -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);
 | 
			
		||||
@ -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;
 | 
			
		||||
    }
 | 
			
		||||
							
								
								
									
										53
									
								
								src/main/java/de/steev/bm/Listener/BedListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								src/main/java/de/steev/bm/Listener/BedListener.java
									
									
									
									
									
										Normal file
									
								
							@ -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;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -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
 | 
			
		||||
							
								
								
									
										44
									
								
								src/main/java/de/steev/bm/Listener/KillListener.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								src/main/java/de/steev/bm/Listener/KillListener.java
									
									
									
									
									
										Normal file
									
								
							@ -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);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										57
									
								
								src/main/java/de/steev/bm/Manager/GameManager.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								src/main/java/de/steev/bm/Manager/GameManager.java
									
									
									
									
									
										Normal file
									
								
							@ -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, 4, Material.STRING, "String");
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public BetterMinecraft getPlugin(){
 | 
			
		||||
        return plugin;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public RecipyManager getRecipyManager() {
 | 
			
		||||
        return recipyManager;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public PlayerManager getPlayerManager() {
 | 
			
		||||
        return playerManager;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										41
									
								
								src/main/java/de/steev/bm/Manager/PlayerManager.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								src/main/java/de/steev/bm/Manager/PlayerManager.java
									
									
									
									
									
										Normal file
									
								
							@ -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);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										41
									
								
								src/main/java/de/steev/bm/Manager/RecipyManager.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								src/main/java/de/steev/bm/Manager/RecipyManager.java
									
									
									
									
									
										Normal file
									
								
							@ -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);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -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();
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -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;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -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);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								src/main/resources/plugin.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								src/main/resources/plugin.yml
									
									
									
									
									
										Normal file
									
								
							@ -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"
 | 
			
		||||
		Reference in New Issue
	
	Block a user