Compare commits
	
		
			22 Commits
		
	
	
		
			e956b884cd
			...
			Release
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 256224e144 | |||
| 02856bc49a | |||
| d9cfdb218e | |||
| 300a1bf67c | |||
| 6ac6455f2d | |||
| 0fe5ce24a8 | |||
| 137a39e430 | |||
| 8c83b7ddb6 | |||
| 63ffe0fe2b | |||
| 6743f297b2 | |||
| df2dd2e28f | |||
| aa152599bb | |||
| 3e7dafcabe | |||
| 651b02200f | |||
| 14543e878f | |||
| 099431df0f | |||
| fb9f5db652 | |||
| 21ccb2bf94 | |||
| 552267019a | |||
| d2eb8e6c71 | |||
| c9367a2098 | |||
| 3f33d2efc2 | 
							
								
								
									
										24
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								README.md
									
									
									
									
									
								
							@ -1,3 +1,27 @@
 | 
			
		||||
# betterminecraft
 | 
			
		||||
sandboxplugin to fix mojang fuckups
 | 
			
		||||
you can use my code when you link this repo and name the author
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Contribution
 | 
			
		||||
## contribute by code
 | 
			
		||||
In order to contribute you need to do the following things
 | 
			
		||||
1. Create an issue with the changes you want to add
 | 
			
		||||
2. Wait for your feature to be approved
 | 
			
		||||
3. Fork the Project and make a branch with the features name
 | 
			
		||||
4. make a pull request from your project to the testing branch (pr's to any other branch will be removed)
 | 
			
		||||
 | 
			
		||||
Now your contribution is in testing where people can start using it as beta on their own servers and report back issues
 | 
			
		||||
Once the testing phase is over and now reports come in the feature will be pulled to release from which it then gets its own downloadable release created
 | 
			
		||||
 | 
			
		||||
## contribute with requests
 | 
			
		||||
if you want a certain feature in my plugin write an issue with the enhancement label
 | 
			
		||||
you issue should follow this structure
 | 
			
		||||
 | 
			
		||||
### Feature request  
 | 
			
		||||
**Name:** how should the feature be named  
 | 
			
		||||
**Version:** when would you like the feature to be implemented (this might differ from actual implementation)  
 | 
			
		||||
**Description:** get creative and technical what do you want this feature to do. Your description even might contain pseudo code if you want to provide such
 | 
			
		||||
 | 
			
		||||
Your feature now can be reviewed by the community and be disscussed uppon and maybe changed to fit the plugin
 | 
			
		||||
once it is approved it will be given a releaes milestone and its own feature branch from where it then will continue on the development proccess 
 | 
			
		||||
							
								
								
									
										1
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								pom.xml
									
									
									
									
									
								
							@ -37,6 +37,7 @@
 | 
			
		||||
        <directory>${project.basedir}/src/main/resources</directory>
 | 
			
		||||
        <includes>
 | 
			
		||||
          <include>plugin.yml</include>
 | 
			
		||||
          <include>config.yml</include>
 | 
			
		||||
        </includes>
 | 
			
		||||
      </resource>
 | 
			
		||||
    </resources>
 | 
			
		||||
 | 
			
		||||
@ -41,6 +41,7 @@ public class BetterMinecraft extends JavaPlugin implements Listener {
 | 
			
		||||
		this.getLogger().info(prefix + ChatColor.WHITE + "Plugin Startet");
 | 
			
		||||
		this.getLogger().info(prefix + ChatColor.WHITE + "Initializing Gamemanager");
 | 
			
		||||
		gameManager = new GameManager(this);
 | 
			
		||||
		this.saveDefaultConfig();
 | 
			
		||||
 | 
			
		||||
		// Registers Events
 | 
			
		||||
		this.getLogger().info(prefix + ChatColor.WHITE + "Lade Events");
 | 
			
		||||
 | 
			
		||||
@ -17,8 +17,14 @@ public class back implements CommandExecutor {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onCommand(CommandSender commandSender, Command command, String s, String[] strings) {
 | 
			
		||||
        if (!this.gameManager.getConfigManager().GetBool("back_command")) {
 | 
			
		||||
            commandSender.sendMessage("back command ist nicht aktiv");
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        Player player = (Player) commandSender.getServer().getPlayer(commandSender.getName());
 | 
			
		||||
        Location lastDeath;
 | 
			
		||||
 | 
			
		||||
        try {
 | 
			
		||||
            lastDeath = this.gameManager.getPlugin().getPlayerDataConfig().getLocation(player.getUniqueId() + ".death");
 | 
			
		||||
            player.teleport(lastDeath);
 | 
			
		||||
@ -27,6 +33,7 @@ public class back implements CommandExecutor {
 | 
			
		||||
        } catch (Exception ex) {
 | 
			
		||||
            commandSender.sendMessage("Tot nicht gefunden!");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -36,9 +36,12 @@ public class replanting {
 | 
			
		||||
                target.getLocation().getWorld().dropItem(loc, new ItemStack(item[0]));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            for(int i = 0; i < amount[1]; i++) {
 | 
			
		||||
                target.getLocation().getWorld().dropItem(loc, new ItemStack(item[1]));
 | 
			
		||||
            if (amount.length > 1) {
 | 
			
		||||
                for (int i = 0; i < amount[1]; i++) {
 | 
			
		||||
                    target.getLocation().getWorld().dropItem(loc, new ItemStack(item[1]));
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            crop.setAge(0);
 | 
			
		||||
            target.setBlockData(crop);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
package de.steev.bm.Listener;
 | 
			
		||||
 | 
			
		||||
import de.steev.bm.BetterMinecraft;
 | 
			
		||||
import de.steev.bm.Manager.GameManager;
 | 
			
		||||
import org.bukkit.Bukkit;
 | 
			
		||||
import org.bukkit.World;
 | 
			
		||||
@ -21,7 +20,7 @@ public class BedListener implements Listener {
 | 
			
		||||
    @EventHandler // Adding to the Player Variable
 | 
			
		||||
    public void onPlayerBedEnter(PlayerBedEnterEvent event) {
 | 
			
		||||
        final World world = event.getPlayer().getWorld();
 | 
			
		||||
        if(world.getTime() >= 13000 || world.getThunderDuration() > 0) {
 | 
			
		||||
        if(world.getTime() >= 13000 || world.getThunderDuration() > 0 && this.gameManager.getConfigManager().GetBool("improved_bed")) {
 | 
			
		||||
            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) {
 | 
			
		||||
@ -49,5 +48,4 @@ public class BedListener implements Listener {
 | 
			
		||||
            this.gameManager.getPlugin().playerInBed = 0;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -21,7 +21,7 @@ public class InteractListener implements Listener {
 | 
			
		||||
 | 
			
		||||
    @EventHandler
 | 
			
		||||
    public void onPlayerInteract(PlayerInteractEvent event){
 | 
			
		||||
        if(event.getAction().equals(Action.RIGHT_CLICK_BLOCK)){
 | 
			
		||||
        if(event.getAction().equals(Action.RIGHT_CLICK_BLOCK) && this.gameManager.getConfigManager().GetBool("replanting")){
 | 
			
		||||
 | 
			
		||||
            /** the clicked block */
 | 
			
		||||
            Block target = event.getClickedBlock();
 | 
			
		||||
 | 
			
		||||
@ -29,12 +29,12 @@ public class KillListener implements Listener {
 | 
			
		||||
        int[] amounts;
 | 
			
		||||
        Material[] drops;
 | 
			
		||||
 | 
			
		||||
        if(event.getEntity() instanceof Player){
 | 
			
		||||
        if(event.getEntity() instanceof Player && this.gameManager.getConfigManager().GetBool("back_command")){
 | 
			
		||||
            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"){
 | 
			
		||||
            if(event.getEntity().toString() == "CraftPig" && this.gameManager.getConfigManager().GetBool("custom_drops")){
 | 
			
		||||
                amounts = new int[]{ 2,2 };
 | 
			
		||||
                drops = new Material[]{Material.LEATHER, Material.PORKCHOP};
 | 
			
		||||
                Death.onAnimalDeath(amounts, drops, this.gameManager.getPlugin(), event);
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										14
									
								
								src/main/java/de/steev/bm/Manager/ConfigManager.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/main/java/de/steev/bm/Manager/ConfigManager.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,14 @@
 | 
			
		||||
package de.steev.bm.Manager;
 | 
			
		||||
 | 
			
		||||
public class ConfigManager {
 | 
			
		||||
 | 
			
		||||
    private GameManager gameManager;
 | 
			
		||||
 | 
			
		||||
    public ConfigManager(GameManager gameManager) {
 | 
			
		||||
        this.gameManager = gameManager;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean GetBool(String Key){
 | 
			
		||||
        return gameManager.getPlugin().getConfig().getBoolean(Key);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -12,6 +12,7 @@ public class GameManager {
 | 
			
		||||
    private BetterMinecraft plugin;
 | 
			
		||||
    private RecipyManager recipyManager;
 | 
			
		||||
    private PlayerManager playerManager;
 | 
			
		||||
    private ConfigManager configManager;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * initilizes the Gamemanager and all systems beneath it
 | 
			
		||||
@ -26,20 +27,22 @@ public class GameManager {
 | 
			
		||||
 | 
			
		||||
        this.recipyManager = new RecipyManager(this);
 | 
			
		||||
        this.playerManager = new PlayerManager(this);
 | 
			
		||||
        this.configManager = new ConfigManager(this);
 | 
			
		||||
 | 
			
		||||
        this.plugin.getLogger().info("registring Recipies");
 | 
			
		||||
        this.plugin.getLogger().info("saddle");
 | 
			
		||||
        char[] s_ing = { 'L', 'S', 'I', 'W' };
 | 
			
		||||
        String[] s_rec = { "LLL", "SWS", "I I" };
 | 
			
		||||
        Material[] s_mat = { Material.LEATHER, Material.STRING, Material.IRON_INGOT, Material.WOOL};
 | 
			
		||||
        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");
 | 
			
		||||
        if (this.configManager.GetBool("custom_recipes")) {
 | 
			
		||||
            this.plugin.getLogger().info("registring Recipies");
 | 
			
		||||
            this.plugin.getLogger().info("saddle");
 | 
			
		||||
            char[] s_ing = {'L', 'S', 'I', 'W'};
 | 
			
		||||
            String[] s_rec = {"LLL", "SWS", "I I"};
 | 
			
		||||
            Material[] s_mat = {Material.LEATHER, Material.STRING, Material.IRON_INGOT, Material.WHITE_WOOL};
 | 
			
		||||
            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(){
 | 
			
		||||
@ -53,5 +56,9 @@ public class GameManager {
 | 
			
		||||
    public PlayerManager getPlayerManager() {
 | 
			
		||||
        return playerManager;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public ConfigManager getConfigManager() {
 | 
			
		||||
        return configManager;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										5
									
								
								src/main/resources/config.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								src/main/resources/config.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,5 @@
 | 
			
		||||
improved_bed: true
 | 
			
		||||
custom_drops: true
 | 
			
		||||
custom_recipes: true
 | 
			
		||||
replanting: true
 | 
			
		||||
back_command: true
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
name: BetterMinecraft
 | 
			
		||||
main: de.steev.bm.main
 | 
			
		||||
main: de.steev.bm.BetterMinecraft
 | 
			
		||||
version: 1.0
 | 
			
		||||
api-version: 1.17
 | 
			
		||||
commands:
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user