Initial commit
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
package de.craftix.pvp.commands;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class AddspawnCmd implements CommandExecutor {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String s, String[] strings) {
|
||||
if (sender instanceof Player){
|
||||
if (sender.hasPermission("1vs1.setup")){
|
||||
Player p = (Player)sender;
|
||||
if (Main.config.contains("Spawn.1.World")){
|
||||
Gamemanager.saveSpawn(p.getLocation(), 2);
|
||||
p.sendMessage("§aDer Spawn 2 wurde erfolgreich gesetzt");
|
||||
}else {
|
||||
Gamemanager.saveSpawn(p.getLocation(), 1);
|
||||
p.sendMessage("§aDer Spawn 1 wurde erfolgreich gesetzt");
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package de.craftix.pvp.commands;
|
||||
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class SetlobbyCmd implements CommandExecutor {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String s, String[] args) {
|
||||
if (sender instanceof Player){
|
||||
if (sender.hasPermission("1vs1.setup")){
|
||||
Player p = (Player)sender;
|
||||
Gamemanager.saveLobby(p.getLocation());
|
||||
p.sendMessage("§aDie Lobby wurde erfolgreich gesetzt");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
21
Plugins/Old/1vs1/src/de/craftix/pvp/commands/SetspecCmd.java
Normal file
21
Plugins/Old/1vs1/src/de/craftix/pvp/commands/SetspecCmd.java
Normal file
@@ -0,0 +1,21 @@
|
||||
package de.craftix.pvp.commands;
|
||||
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class SetspecCmd implements CommandExecutor {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String s, String[] strings) {
|
||||
if (sender instanceof Player){
|
||||
if (sender.hasPermission("1vs1.setup")){
|
||||
Player p = (Player)sender;
|
||||
Gamemanager.saveSpec(p.getLocation());
|
||||
p.sendMessage("§aDer Spectatorspawn wurde erfolgreich gesetzt");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
43
Plugins/Old/1vs1/src/de/craftix/pvp/commands/StartCmd.java
Normal file
43
Plugins/Old/1vs1/src/de/craftix/pvp/commands/StartCmd.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package de.craftix.pvp.commands;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import de.craftix.pvp.manager.Kitmanager;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class StartCmd implements CommandExecutor
|
||||
{
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String s, String[] strings) {
|
||||
if (sender.hasPermission("1vs1.start")){
|
||||
if (Main.state != Gamestates.LOBBY) return true;
|
||||
if (Bukkit.getOnlinePlayers().size() < 2) return true;
|
||||
Bukkit.getScheduler().cancelAllTasks();
|
||||
Main.state = Gamestates.INGAME;
|
||||
Player p = Gamemanager.inGame.get(0);
|
||||
p.teleport(Gamemanager.getSpawn(1));
|
||||
p = Gamemanager.inGame.get(1);
|
||||
p.teleport(Gamemanager.getSpawn(2));
|
||||
boolean p1 = false, p2 = false;
|
||||
for (Kitmanager k : Gamemanager.kitmanagers){
|
||||
if (k.p.equals(Gamemanager.inGame.get(0))) p1 = true;
|
||||
if (k.p.equals(Gamemanager.inGame.get(1))) p2 = true;
|
||||
}
|
||||
if (p1 == false){
|
||||
new Kitmanager(Gamemanager.inGame.get(0), 2);
|
||||
}
|
||||
if (p2 == false){
|
||||
new Kitmanager(Gamemanager.inGame.get(1), 2);
|
||||
}
|
||||
for (Kitmanager k : Gamemanager.kitmanagers){
|
||||
k.giveItems();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
58
Plugins/Old/1vs1/src/de/craftix/pvp/general/Main.java
Normal file
58
Plugins/Old/1vs1/src/de/craftix/pvp/general/Main.java
Normal file
@@ -0,0 +1,58 @@
|
||||
package de.craftix.pvp.general;
|
||||
|
||||
import de.craftix.pvp.commands.*;
|
||||
import de.craftix.pvp.listener.*;
|
||||
import de.craftix.pvp.manager.*;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
public class Main extends JavaPlugin {
|
||||
|
||||
private static Main plugin;
|
||||
public static FileConfiguration config;
|
||||
public static Gamestates state;
|
||||
public static boolean isConfigured;
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
|
||||
//Listener
|
||||
PluginManager pm = Bukkit.getPluginManager();
|
||||
pm.registerEvents(new onDamage(), this);
|
||||
pm.registerEvents(new onJoin(), this);
|
||||
pm.registerEvents(new onQuit(), this);
|
||||
pm.registerEvents(new onBuild(), this);
|
||||
pm.registerEvents(new onDeath(), this);
|
||||
pm.registerEvents(new onDrop(), this);
|
||||
pm.registerEvents(new LobbyItems(), this);
|
||||
pm.registerEvents(new onFood(), this);
|
||||
|
||||
//Commands
|
||||
getCommand("setlobby").setExecutor(new SetlobbyCmd());
|
||||
getCommand("addspawn").setExecutor(new AddspawnCmd());
|
||||
getCommand("setspec").setExecutor(new SetspecCmd());
|
||||
getCommand("start").setExecutor(new StartCmd());
|
||||
|
||||
plugin = this;
|
||||
config = this.getConfig();
|
||||
state = Gamestates.LOBBY;
|
||||
checkIfConfigured();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
|
||||
}
|
||||
|
||||
public static Main getPlugin(){
|
||||
return plugin;
|
||||
}
|
||||
|
||||
public void checkIfConfigured(){
|
||||
if (config.contains(("Lobby.World")) && config.contains("Spawn.1.World") && config.contains("Spawn.2.World") && config.contains("Spec.World")){
|
||||
isConfigured = true;
|
||||
}else isConfigured = false;
|
||||
}
|
||||
}
|
||||
31
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onBuild.java
Normal file
31
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onBuild.java
Normal file
@@ -0,0 +1,31 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.bukkit.event.block.BlockPlaceEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
|
||||
public class onBuild implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onBuildEvent(BlockPlaceEvent event){
|
||||
if (Main.state == Gamestates.INGAME) return;
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onBreakEvent(BlockBreakEvent event){
|
||||
if (Main.state == Gamestates.INGAME) return;
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onInteractEvent(PlayerInteractEvent event){
|
||||
if (Main.state == Gamestates.INGAME) return;
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
}
|
||||
21
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDamage.java
Normal file
21
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDamage.java
Normal file
@@ -0,0 +1,21 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.EntityDamageEvent;
|
||||
|
||||
public class onDamage implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onDamageEvent(EntityDamageEvent event){
|
||||
if (event.getEntity() instanceof Player){
|
||||
if (Main.state == Gamestates.LOBBY || Main.state == Gamestates.RESTART){
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
51
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDeath.java
Normal file
51
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDeath.java
Normal file
@@ -0,0 +1,51 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.PlayerDeathEvent;
|
||||
|
||||
public class onDeath implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onDeathEvent(PlayerDeathEvent event){
|
||||
for (Player all : Bukkit.getOnlinePlayers()){
|
||||
all.getInventory().clear();
|
||||
all.getInventory().setBoots(null);
|
||||
all.getInventory().setLeggings(null);
|
||||
all.getInventory().setChestplate(null);
|
||||
all.getInventory().setHelmet(null);
|
||||
}
|
||||
event.setDeathMessage(null);
|
||||
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "kill @e[type=Item]");
|
||||
Player p = event.getEntity();
|
||||
if (Gamemanager.inGame.contains(p)){
|
||||
Gamemanager.looser = p;
|
||||
Gamemanager.inGame.remove(p);
|
||||
Gamemanager.winner = Gamemanager.inGame.get(0);
|
||||
Main.state = Gamestates.RESTART;
|
||||
Gamemanager.winner.teleport(Gamemanager.getLobby());
|
||||
Gamemanager.looser.teleport(Gamemanager.getLobby());
|
||||
Bukkit.broadcastMessage("§aHerzlichen Glückwunsch §6" + Gamemanager.winner.getName());
|
||||
Gamemanager.startTimer();
|
||||
Gamemanager.giveRewards(Gamemanager.winner);
|
||||
for (Player a : Bukkit.getServer().getOnlinePlayers()){
|
||||
a.setHealth(20);
|
||||
a.setFoodLevel(25);
|
||||
a.getInventory().clear();
|
||||
a.getInventory().setBoots(null);
|
||||
a.getInventory().setLeggings(null);
|
||||
a.getInventory().setChestplate(null);
|
||||
a.getInventory().setHelmet(null);
|
||||
a.teleport(Gamemanager.getLobby());
|
||||
a.setGameMode(GameMode.SURVIVAL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
24
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDrop.java
Normal file
24
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onDrop.java
Normal file
@@ -0,0 +1,24 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||
|
||||
public class onDrop implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onDropEvent(PlayerDropItemEvent event){
|
||||
if (Main.state != Gamestates.LOBBY) return;
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onInvClickEvent(InventoryClickEvent event){
|
||||
if (Main.state != Gamestates.LOBBY) return;
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
}
|
||||
21
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onFood.java
Normal file
21
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onFood.java
Normal file
@@ -0,0 +1,21 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.FoodLevelChangeEvent;
|
||||
|
||||
public class onFood implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onFoodEvent(FoodLevelChangeEvent event){
|
||||
if (Main.state != Gamestates.INGAME){
|
||||
event.setCancelled(true);
|
||||
Player p = (Player)event.getEntity();
|
||||
p.setFoodLevel(20);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
60
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onJoin.java
Normal file
60
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onJoin.java
Normal file
@@ -0,0 +1,60 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import de.craftix.pvp.manager.LobbyItems;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
|
||||
public class onJoin implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onJoinEvent(PlayerJoinEvent event){
|
||||
if (!Main.isConfigured){
|
||||
Bukkit.broadcastMessage("§7-- §cBitte konfiguriere das Plugin §7 --");
|
||||
Bukkit.broadcastMessage("§7-- §c/setlobby §7: §aSetze die Lobby §7 --");
|
||||
Bukkit.broadcastMessage("§7-- §c/addspawn §7: §aSetze einen Spawn §7 --");
|
||||
Bukkit.broadcastMessage("§7-- §c/setspec §7: §aSetze den Spectatorspawn §7--");
|
||||
Bukkit.broadcastMessage("§7-- §arestarte den Server §7 --");
|
||||
Bukkit.broadcastMessage("§7-- §aPlugin by §6§lTube Craft §7 --");
|
||||
return;
|
||||
}
|
||||
event.setJoinMessage("§b1vs1 §7| §aDer Spieler §6" + event.getPlayer().getName() + " §ahat das Spiel betreten");
|
||||
Player p = event.getPlayer();
|
||||
p.setHealth(20);
|
||||
p.setFoodLevel(25);
|
||||
p.getInventory().clear();
|
||||
p.getInventory().setBoots(null);
|
||||
p.getInventory().setLeggings(null);
|
||||
p.getInventory().setChestplate(null);
|
||||
p.getInventory().setHelmet(null);
|
||||
if (Main.state == Gamestates.LOBBY){
|
||||
if (Bukkit.getServer().getOnlinePlayers().size() <= 2){
|
||||
p.teleport(Gamemanager.getLobby());
|
||||
p.setGameMode(GameMode.SURVIVAL);
|
||||
Gamemanager.inGame.add(p);
|
||||
if (Gamemanager.inGame.size() == 2){
|
||||
Gamemanager.startTimer();
|
||||
}
|
||||
LobbyItems.giveInventory(p);
|
||||
}else {
|
||||
p.setGameMode(GameMode.SPECTATOR);
|
||||
Gamemanager.spectator.add(p);
|
||||
}
|
||||
}
|
||||
if (Main.state == Gamestates.INGAME){
|
||||
p.teleport(Gamemanager.getSpec());
|
||||
p.setGameMode(GameMode.SPECTATOR);
|
||||
Gamemanager.spectator.add(p);
|
||||
}
|
||||
if (Main.state == Gamestates.RESTART){
|
||||
p.kickPlayer("§cDer Server startet gerade neu!");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
50
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onQuit.java
Normal file
50
Plugins/Old/1vs1/src/de/craftix/pvp/listener/onQuit.java
Normal file
@@ -0,0 +1,50 @@
|
||||
package de.craftix.pvp.listener;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.craftix.pvp.manager.Gamemanager;
|
||||
import de.craftix.pvp.manager.Gamestates;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
public class onQuit implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onQuitEvent(PlayerQuitEvent event){
|
||||
Player p = event.getPlayer();
|
||||
event.setQuitMessage("§b1vs1 §7| §cDer Spieler §6" + event.getPlayer().getName() + " §chat das Spiel verlassen");
|
||||
if (Main.state == Gamestates.LOBBY){
|
||||
Gamemanager.stopTimer();
|
||||
}
|
||||
if (Main.state == Gamestates.INGAME){
|
||||
if (Gamemanager.inGame.contains(p)){
|
||||
Gamemanager.looser = p;
|
||||
Gamemanager.inGame.remove(p);
|
||||
Gamemanager.winner = Gamemanager.inGame.get(0);
|
||||
Main.state = Gamestates.RESTART;
|
||||
Gamemanager.winner.teleport(Gamemanager.getLobby());
|
||||
Gamemanager.looser.teleport(Gamemanager.getLobby());
|
||||
Bukkit.broadcastMessage("§aHerzlichen Glückwunsch §6" + Gamemanager.winner.getName());
|
||||
Gamemanager.startTimer();
|
||||
Gamemanager.giveRewards(Gamemanager.winner);
|
||||
for (Player a : Bukkit.getServer().getOnlinePlayers()){
|
||||
a.setHealth(20);
|
||||
a.setFoodLevel(25);
|
||||
a.getInventory().clear();
|
||||
a.getInventory().setBoots(null);
|
||||
a.getInventory().setLeggings(null);
|
||||
a.getInventory().setChestplate(null);
|
||||
a.getInventory().setHelmet(null);
|
||||
a.teleport(Gamemanager.getLobby());
|
||||
a.setGameMode(GameMode.SURVIVAL);
|
||||
}
|
||||
}
|
||||
}
|
||||
Gamemanager.inGame.remove(p);
|
||||
Gamemanager.spectator.remove(p);
|
||||
}
|
||||
|
||||
}
|
||||
160
Plugins/Old/1vs1/src/de/craftix/pvp/manager/Gamemanager.java
Normal file
160
Plugins/Old/1vs1/src/de/craftix/pvp/manager/Gamemanager.java
Normal file
@@ -0,0 +1,160 @@
|
||||
package de.craftix.pvp.manager;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import de.dytanic.cloudnet.api.CloudAPI;
|
||||
import de.dytanic.cloudnet.bridge.CloudServer;
|
||||
import de.dytanic.cloudnet.lib.cloudserver.CloudServerMeta;
|
||||
import de.dytanic.cloudnet.lib.server.ServerState;
|
||||
import de.welovemcskript.capi.CoinAPI;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Random;
|
||||
|
||||
|
||||
public class Gamemanager {
|
||||
|
||||
public static Player winner;
|
||||
public static Player looser;
|
||||
|
||||
public static ArrayList<Player> inGame = new ArrayList<>();
|
||||
public static ArrayList<Player> spectator = new ArrayList<>();
|
||||
public static ArrayList<Kitmanager> kitmanagers = new ArrayList<>();
|
||||
|
||||
public static int cache;
|
||||
|
||||
|
||||
public static Location getLobby(){
|
||||
FileConfiguration config = Main.config;
|
||||
World world = Bukkit.getWorld(config.getString("Lobby.World"));
|
||||
double x = config.getDouble("Lobby.X");
|
||||
double y = config.getDouble("Lobby.Y");
|
||||
double z = config.getDouble("Lobby.Z");
|
||||
float yaw = (float) config.getDouble("Lobby.Yaw");
|
||||
float pitch = (float) config.getDouble("Lobby.Pitch");
|
||||
return new Location(world, x, y, z, yaw, pitch);
|
||||
}
|
||||
|
||||
public static Location getSpec(){
|
||||
FileConfiguration config = Main.config;
|
||||
World world = Bukkit.getWorld(config.getString("Spec.World"));
|
||||
double x = config.getDouble("Spec.X");
|
||||
double y = config.getDouble("Spec.Y");
|
||||
double z = config.getDouble("Spec.Z");
|
||||
float yaw = (float) config.getDouble("Spec.Yaw");
|
||||
float pitch = (float) config.getDouble("Spec.Pitch");
|
||||
return new Location(world, x, y, z, yaw, pitch);
|
||||
}
|
||||
|
||||
public static Location getSpawn(int id){
|
||||
FileConfiguration config = Main.config;
|
||||
World world = Bukkit.getWorld(config.getString("Spawn." + id +".World"));
|
||||
double x = config.getDouble("Spawn." + id +".X");
|
||||
double y = config.getDouble("Spawn." + id +".Y");
|
||||
double z = config.getDouble("Spawn." + id +".Z");
|
||||
float yaw = (float) config.getDouble("Spawn." + id +".Yaw");
|
||||
float pitch = (float) config.getDouble("Spawn." + id +".Pitch");
|
||||
return new Location(world, x, y, z, yaw, pitch);
|
||||
}
|
||||
|
||||
public static void saveLobby(Location loc){
|
||||
FileConfiguration config = Main.config;
|
||||
config.set("Lobby.World", loc.getWorld().getName());
|
||||
config.set("Lobby.X", loc.getBlockX() + 0.5);
|
||||
config.set("Lobby.Y", loc.getBlockY() + 2);
|
||||
config.set("Lobby.Z", loc.getBlockZ() + 0.5);
|
||||
config.set("Lobby.Yaw", loc.getYaw());
|
||||
config.set("Lobby.Pitch", loc.getPitch());
|
||||
Main.getPlugin().saveConfig();
|
||||
}
|
||||
|
||||
public static void saveSpec(Location loc){
|
||||
FileConfiguration config = Main.config;
|
||||
config.set("Spec.World", loc.getWorld().getName());
|
||||
config.set("Spec.X", loc.getBlockX() + 0.5);
|
||||
config.set("Spec.Y", loc.getBlockY());
|
||||
config.set("Spec.Z", loc.getBlockZ() + 0.5);
|
||||
config.set("Spec.Yaw", loc.getYaw());
|
||||
config.set("Spec.Pitch", loc.getPitch());
|
||||
Main.getPlugin().saveConfig();
|
||||
}
|
||||
|
||||
public static void saveSpawn(Location loc, int id){
|
||||
FileConfiguration config = Main.config;
|
||||
config.set("Spawn." + id +".World", loc.getWorld().getName());
|
||||
config.set("Spawn." + id +".X", loc.getBlockX() + 0.5);
|
||||
config.set("Spawn." + id +".Y", loc.getBlockY() + 1);
|
||||
config.set("Spawn." + id +".Z", loc.getBlockZ() + 0.5);
|
||||
config.set("Spawn." + id +".Yaw", loc.getYaw());
|
||||
config.set("Spawn." + id +".Pitch", loc.getPitch());
|
||||
Main.getPlugin().saveConfig();
|
||||
}
|
||||
|
||||
public static void startTimer(){
|
||||
cache = 0;
|
||||
int maxLobby = 60;
|
||||
int maxReset = 15;
|
||||
Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), () -> {
|
||||
if (Main.state == Gamestates.LOBBY && cache == maxLobby){
|
||||
stopTimer();
|
||||
Main.state = Gamestates.INGAME;
|
||||
Player p = Gamemanager.inGame.get(0);
|
||||
p.teleport(Gamemanager.getSpawn(1));
|
||||
p = Gamemanager.inGame.get(1);
|
||||
p.teleport(Gamemanager.getSpawn(2));
|
||||
boolean p1 = false, p2 = false;
|
||||
for (Kitmanager k : kitmanagers){
|
||||
if (k.p.equals(inGame.get(0))) p1 = true;
|
||||
if (k.p.equals(inGame.get(1))) p2 = true;
|
||||
}
|
||||
if (!p1){
|
||||
new Kitmanager(inGame.get(0), 2);
|
||||
}
|
||||
if (!p2){
|
||||
new Kitmanager(inGame.get(1), 2);
|
||||
}
|
||||
for (Kitmanager k : kitmanagers){
|
||||
k.giveItems();
|
||||
}
|
||||
}
|
||||
if (Main.state == Gamestates.RESTART && cache == maxReset){
|
||||
stopTimer();
|
||||
for (Player a : Bukkit.getServer().getOnlinePlayers()) {
|
||||
a.kickPlayer(null);
|
||||
}
|
||||
Bukkit.getServer().shutdown();
|
||||
}
|
||||
if (Main.state == Gamestates.LOBBY){
|
||||
int ram = maxLobby - cache;
|
||||
switch (ram){
|
||||
case 60: case 30: case 15: case 10: case 5: case 4: case 3: case 2: case 1: case 0:
|
||||
Bukkit.broadcastMessage("§aSpiel startet in §6" + ram);
|
||||
break;
|
||||
}
|
||||
}else if (Main.state == Gamestates.RESTART){
|
||||
int ram = maxReset - cache;
|
||||
switch (ram){
|
||||
case 15: case 10: case 5: case 4: case 3: case 2: case 1: case 0:
|
||||
Bukkit.broadcastMessage("§aServer stoppt in §6" + ram);
|
||||
break;
|
||||
}
|
||||
}
|
||||
cache++;
|
||||
},0, 20);
|
||||
}
|
||||
|
||||
public static void stopTimer(){
|
||||
Bukkit.getScheduler().cancelAllTasks();
|
||||
Bukkit.broadcastMessage("§aDer Timer wurde gestopt");
|
||||
}
|
||||
|
||||
public static void giveRewards(Player p){
|
||||
CoinAPI.addMoney(p, 10);
|
||||
p.sendMessage("§6+10 §aCoins");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
package de.craftix.pvp.manager;
|
||||
|
||||
public enum Gamestates {
|
||||
LOBBY,
|
||||
INGAME,
|
||||
RESTART
|
||||
}
|
||||
140
Plugins/Old/1vs1/src/de/craftix/pvp/manager/Kitmanager.java
Normal file
140
Plugins/Old/1vs1/src/de/craftix/pvp/manager/Kitmanager.java
Normal file
@@ -0,0 +1,140 @@
|
||||
package de.craftix.pvp.manager;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.enchantments.Enchantment;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemFactory;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class Kitmanager {
|
||||
|
||||
//0 = UHC
|
||||
//1 = SOUP
|
||||
//2 = RANDOM
|
||||
//3 = SG
|
||||
//4 = TANK
|
||||
|
||||
public Player p;
|
||||
public int kitID;
|
||||
|
||||
public Kitmanager(Player p, int id){
|
||||
this.p = p;
|
||||
kitID = id;
|
||||
Gamemanager.kitmanagers.add(this);
|
||||
}
|
||||
|
||||
public void giveItems(){
|
||||
p.getInventory().clear();
|
||||
if (kitID == 0){ //UHC
|
||||
//Blöcke 128
|
||||
p.getInventory().setItem(6, new ItemStack(Material.SANDSTONE, 64));
|
||||
p.getInventory().setItem(7, new ItemStack(Material.SANDSTONE, 64));
|
||||
//Lava 2
|
||||
p.getInventory().setItem(4, new ItemStack(Material.LAVA_BUCKET));
|
||||
p.getInventory().setItem(13, new ItemStack(Material.LAVA_BUCKET));
|
||||
//Wasser 2
|
||||
p.getInventory().setItem(5, new ItemStack(Material.WATER_BUCKET));
|
||||
p.getInventory().setItem(14, new ItemStack(Material.WATER_BUCKET));
|
||||
//Bogen | 16 Pfeile
|
||||
p.getInventory().setItem(1, new ItemStack(Material.BOW));
|
||||
p.getInventory().setItem(9, new ItemStack(Material.ARROW, 16));
|
||||
//Dia Schwert Schärfe 1
|
||||
ItemStack sword = new ItemStack(Material.DIAMOND_SWORD);
|
||||
sword.addEnchantment(Enchantment.DAMAGE_ALL, 1);
|
||||
p.getInventory().setItem(0, sword);
|
||||
//Eisenrüstung
|
||||
p.getInventory().setHelmet(new ItemStack(Material.IRON_HELMET));
|
||||
p.getInventory().setChestplate(new ItemStack(Material.IRON_CHESTPLATE));
|
||||
p.getInventory().setLeggings(new ItemStack(Material.IRON_LEGGINGS));
|
||||
p.getInventory().setBoots(new ItemStack(Material.IRON_BOOTS));
|
||||
//Goldäpfel 4
|
||||
p.getInventory().setItem(3, new ItemStack(Material.GOLDEN_APPLE, 4));
|
||||
//Essen 32
|
||||
p.getInventory().setItem(8, new ItemStack(Material.COOKED_BEEF, 32));
|
||||
//Angel
|
||||
p.getInventory().setItem(2, new ItemStack(Material.FISHING_ROD));
|
||||
}
|
||||
if (kitID == 1){ //OP
|
||||
//Diamantrüstung Protection 2
|
||||
ItemStack helmet = new ItemStack(Material.DIAMOND_HELMET);
|
||||
helmet.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 2);
|
||||
|
||||
ItemStack chestplate = new ItemStack(Material.DIAMOND_CHESTPLATE);
|
||||
chestplate.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 2);
|
||||
|
||||
ItemStack leggins = new ItemStack(Material.DIAMOND_LEGGINGS);
|
||||
leggins.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 2);
|
||||
|
||||
ItemStack boots = new ItemStack(Material.DIAMOND_BOOTS);
|
||||
boots.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 2);
|
||||
|
||||
p.getInventory().setHelmet(helmet);
|
||||
p.getInventory().setChestplate(chestplate);
|
||||
p.getInventory().setLeggings(leggins);
|
||||
p.getInventory().setBoots(boots);
|
||||
//Essen
|
||||
p.getInventory().setItem(8, new ItemStack(Material.COOKED_BEEF, 32));
|
||||
//Holzschwert Unbreaking 1
|
||||
ItemStack sw = new ItemStack(Material.WOOD_SWORD);
|
||||
sw.addEnchantment(Enchantment.DURABILITY, 1);
|
||||
p.getInventory().setItem(0, sw);
|
||||
}
|
||||
if (kitID == 2){ //RANDOM
|
||||
Random rand = new Random();
|
||||
int ram = rand.nextInt(3);
|
||||
if (ram == 2) ram = 4;
|
||||
kitID = ram;
|
||||
giveItems();
|
||||
}
|
||||
if (kitID == 3){ //SG
|
||||
//Rüstung Dia/Eisen
|
||||
p.getInventory().setHelmet(new ItemStack(Material.IRON_HELMET));
|
||||
p.getInventory().setChestplate(new ItemStack(Material.DIAMOND_CHESTPLATE));
|
||||
p.getInventory().setLeggings(new ItemStack(Material.DIAMOND_LEGGINGS));
|
||||
p.getInventory().setBoots(new ItemStack(Material.IRON_BOOTS));
|
||||
//Eisenschwert Schärfe 3
|
||||
ItemStack sword = new ItemStack(Material.IRON_SWORD);
|
||||
sword.addEnchantment(Enchantment.DAMAGE_ALL, 3);
|
||||
p.getInventory().setItem(0, sword);
|
||||
//Essen 32
|
||||
p.getInventory().setItem(8, new ItemStack(Material.COOKED_BEEF, 32));
|
||||
//Goldäpfel 4
|
||||
p.getInventory().setItem(4, new ItemStack(Material.GOLDEN_APPLE, 4));
|
||||
//Angel
|
||||
p.getInventory().setItem(2, new ItemStack(Material.FISHING_ROD));
|
||||
//Bogen Power 1 | 4 Pfeile
|
||||
ItemStack bow = new ItemStack(Material.BOW);
|
||||
bow.addEnchantment(Enchantment.ARROW_DAMAGE, 1);
|
||||
p.getInventory().setItem(1, bow);
|
||||
p.getInventory().setItem(9, new ItemStack(Material.ARROW, 4));
|
||||
}
|
||||
if (kitID == 4){ //TANK
|
||||
//Eisenrüstung Protection und so
|
||||
ItemStack helmet = new ItemStack(Material.IRON_HELMET);
|
||||
helmet.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 3);
|
||||
|
||||
ItemStack chestplate = new ItemStack(Material.IRON_CHESTPLATE);
|
||||
chestplate.addEnchantment(Enchantment.PROTECTION_PROJECTILE, 3);
|
||||
|
||||
ItemStack leggins = new ItemStack(Material.IRON_LEGGINGS);
|
||||
leggins.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 3);
|
||||
|
||||
ItemStack boots = new ItemStack(Material.IRON_BOOTS);
|
||||
boots.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 3);
|
||||
|
||||
p.getInventory().setHelmet(helmet);
|
||||
p.getInventory().setChestplate(chestplate);
|
||||
p.getInventory().setLeggings(leggins);
|
||||
p.getInventory().setBoots(boots);
|
||||
//Essen 10
|
||||
p.getInventory().setItem(8, new ItemStack(Material.COOKED_BEEF, 32));
|
||||
//Steinschwert Schärfe 1
|
||||
ItemStack sword = new ItemStack(Material.STONE_SWORD);
|
||||
sword.addEnchantment(Enchantment.DAMAGE_ALL, 1);
|
||||
p.getInventory().setItem(0, sword);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
93
Plugins/Old/1vs1/src/de/craftix/pvp/manager/LobbyItems.java
Normal file
93
Plugins/Old/1vs1/src/de/craftix/pvp/manager/LobbyItems.java
Normal file
@@ -0,0 +1,93 @@
|
||||
package de.craftix.pvp.manager;
|
||||
|
||||
import de.craftix.pvp.general.Main;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.Action;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
public class LobbyItems implements Listener {
|
||||
|
||||
private static ItemStack kits;
|
||||
|
||||
public static void giveInventory(Player p){
|
||||
kits = new ItemStack(Material.CHEST);
|
||||
ItemMeta kitsMeta = kits.getItemMeta();
|
||||
kitsMeta.setDisplayName("§aKits");
|
||||
kits.setItemMeta(kitsMeta);
|
||||
|
||||
p.getInventory().setItem(4, kits);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onKlick(PlayerInteractEvent event){
|
||||
if (Main.state != Gamestates.LOBBY) return;
|
||||
if (event.getItem() == null) return;
|
||||
if (event.getItem().getItemMeta().getDisplayName().equals("§aKits")) openInventory(event.getPlayer());
|
||||
}
|
||||
|
||||
private ItemStack uhc;
|
||||
private ItemStack op;
|
||||
private ItemStack sg;
|
||||
private ItemStack tank;
|
||||
private ItemStack random;
|
||||
|
||||
private void openInventory(Player p){
|
||||
Inventory inv = Bukkit.createInventory(null, 9, "§aKits");
|
||||
|
||||
//UHC
|
||||
uhc = new ItemStack(Material.GOLDEN_APPLE);
|
||||
ItemMeta uhcMeta = uhc.getItemMeta();
|
||||
uhcMeta.setDisplayName("§6UHC");
|
||||
uhc.setItemMeta(uhcMeta);
|
||||
//Coming Soon
|
||||
op = new ItemStack(Material.COMMAND);
|
||||
ItemMeta csMeta = op.getItemMeta();
|
||||
csMeta.setDisplayName("§6OP");
|
||||
op.setItemMeta(csMeta);
|
||||
//SG
|
||||
sg = new ItemStack(Material.FISHING_ROD);
|
||||
ItemMeta sgMeta = sg.getItemMeta();
|
||||
sgMeta.setDisplayName("§6SG");
|
||||
sg.setItemMeta(sgMeta);
|
||||
//TANK
|
||||
tank = new ItemStack(Material.IRON_CHESTPLATE);
|
||||
ItemMeta tankMeta = tank.getItemMeta();
|
||||
tankMeta.setDisplayName("§6TANK");
|
||||
tank.setItemMeta(tankMeta);
|
||||
//RANDOM
|
||||
random = new ItemStack(Material.NETHER_STAR);
|
||||
ItemMeta randomMeta = random.getItemMeta();
|
||||
randomMeta.setDisplayName("§6RANDOM");
|
||||
random.setItemMeta(randomMeta);
|
||||
|
||||
inv.setItem(0, uhc);
|
||||
inv.setItem(2, op);
|
||||
inv.setItem(4, random);
|
||||
inv.setItem(6, sg);
|
||||
inv.setItem(8, tank);
|
||||
|
||||
p.openInventory(inv);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onInvClick(InventoryClickEvent event){
|
||||
if (Main.state != Gamestates.LOBBY) return;
|
||||
if (!Gamemanager.inGame.contains(event.getWhoClicked())) return;
|
||||
if (!event.getClickedInventory().getTitle().equals("§aKits")) return;
|
||||
int kitID = event.getSlot() / 2;
|
||||
for (Kitmanager k : Gamemanager.kitmanagers){
|
||||
if (k.p == event.getWhoClicked()) Gamemanager.kitmanagers.remove(k);
|
||||
}
|
||||
new Kitmanager((Player) event.getWhoClicked(), kitID);
|
||||
event.getWhoClicked().sendMessage("§aDu hast das Kit §6" + event.getCurrentItem().getItemMeta().getDisplayName() + " §aausgewählt");
|
||||
}
|
||||
|
||||
}
|
||||
9
Plugins/Old/1vs1/src/plugin.yml
Normal file
9
Plugins/Old/1vs1/src/plugin.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
name: 1vs1
|
||||
version: 1.8.8
|
||||
main: de.craftix.pvp.general.Main
|
||||
|
||||
commands:
|
||||
setlobby:
|
||||
setspec:
|
||||
addspawn:
|
||||
start:
|
||||
Reference in New Issue
Block a user