Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package eu.NowLow.TTT.game;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.BlockBreakEvent;
- import org.bukkit.event.entity.EntityDamageEvent;
- import org.bukkit.event.entity.FoodLevelChangeEvent;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.weather.WeatherChangeEvent;
- /**
- * Created by olele on 26.04.2017.
- */
- public class Events implements Listener{
- @EventHandler
- public void onBlockBreak(BlockBreakEvent e){
- e.setCancelled(true);
- }
- @EventHandler
- public void onFood(FoodLevelChangeEvent e) {
- e.setCancelled(true);
- e.setFoodLevel(20);
- }
- @EventHandler
- public void onDamage(EntityDamageEvent e) {
- if(e.getEntity() instanceof Player) {
- e.setCancelled(true);
- }
- }
- @EventHandler
- public void onInventoryClickEvent(InventoryClickEvent e) {
- e.setCancelled(true);
- }
- @EventHandler
- public void onWeatherChnageEvenet(WeatherChangeEvent e) {
- e.setCancelled(true);
- }
- }
- package eu.NowLow.TTT.game;
- import eu.NowLow.TTT.Main;
- import eu.NowLow.TTT.gamestates.GameState;
- import eu.NowLow.TTT.manager.Inventorys;
- import eu.NowLow.TTT.manager.Scoreboard;
- import eu.NowLow.TTT.manager.StatsManager;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerJoinEvent;
- /**
- * Created by olele on 23.04.2017.
- */
- public class JoinManager implements Listener{
- @EventHandler
- public void onJoin(PlayerJoinEvent e) {
- Player p = e.getPlayer();
- StatsManager.loadStatsFromPlayer(p);
- if(Main.gs == GameState.LOBBY) {
- e.setJoinMessage(Data.Prefix + "§3Der Spieler §6" + p.getName() + "§3 ist der Runde beigetreten!");
- }else{
- e.setJoinMessage(null);
- }
- Scoreboard.setScoreboard(p);
- Inventorys.getLobbyItems(p);
- }
- }
- package eu.NowLow.TTT.game;
- import eu.NowLow.TTT.Main;
- import eu.NowLow.TTT.gamestates.GameState;
- import eu.NowLow.TTT.manager.TeamManager;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.Bukkit;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- /**
- * Created by olele on 23.04.2017.
- */
- public class MainListener implements Listener{
- public MainListener(eu.NowLow.TTT.Main Main) {
- this.pl = Main;
- }
- private eu.NowLow.TTT.Main pl;
- static int cd;
- static int cdz;
- @EventHandler
- public void onJoin(PlayerJoinEvent e){
- if(Main.gs == GameState.LOBBY){
- Player p = e.getPlayer();
- e.setJoinMessage(Data.Prefix + "§6Der Spieler §e" + p.getName() + "§6 hat das Spiel betreten!");
- if(Bukkit.getOnlinePlayers().size() > 2){
- cdz = 61;
- Bukkit.broadcastMessage(Data.Prefix + "§eEs sind genügend Spieler Online! damit das Spiel startet");
- cd = Bukkit.getScheduler().scheduleSyncRepeatingTask(pl, new Runnable() {
- @Override
- public void run() {
- cdz--;
- if (cdz == 60) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 50) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 40) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 30) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 20) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 10) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz < 5 && cdz > 1) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6" + cdz + "§e Sekunden!");
- }
- if (cdz == 1) {
- Bukkit.broadcastMessage(Data.Prefix + "§eDas Spiel beginnt in §6eienr§e Sekunde!");
- Bukkit.getScheduler().cancelTask(cd);
- Main.gs = GameState.INGAME;
- for(Player all : Bukkit.getOnlinePlayers()) {
- if(!TeamManager.detective.contains(all) || !TeamManager.traitor.contains(all)) {
- TeamManager.pickRandomTeams(all);
- }
- }
- }
- }
- },20, 20);
- }
- }
- }
- @EventHandler
- public void onQuit(PlayerQuitEvent e) {
- Player p = e.getPlayer();
- if(Bukkit.getOnlinePlayers().size() == 2){
- if(Main.gs == GameState.LOBBY){
- if(Bukkit.getScheduler().isCurrentlyRunning(cd)) {
- Bukkit.getScheduler().cancelTask(cd);
- Bukkit.broadcastMessage(Data.Prefix + "§3Es sind zu wenige §6Spieler §3online, damit der Couuntdown §6weiterlaufen §3kann!");
- cdz = 61;
- }
- }
- }
- }
- }
- package eu.NowLow.TTT.game;
- import eu.NowLow.TTT.Main;
- import eu.NowLow.TTT.gamestates.GameState;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerQuitEvent;
- /**
- * Created by olele on 24.04.2017.
- */
- public class QuitMessage implements Listener {
- @EventHandler
- public void onQuit(PlayerQuitEvent e) {
- Player p = e.getPlayer();
- if (Main.gs == GameState.LOBBY) {
- e.setQuitMessage(Data.Prefix + "§3Der Spieler §6" + p.getName() + "§3 hat das Spiel verlassen!");
- return;
- }
- }
- }
- package eu.NowLow.TTT.gamestates;
- /**
- * Created by olele on 23.04.2017.
- */
- public enum GameState {
- Starting,
- LOBBY,
- INGAME,
- ENDING,
- }
- package eu.NowLow.TTT.manager;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- /**
- * Created by olele on 24.04.2017.
- */
- public class Inventorys {
- public static void getLobbyItems(Player p) {
- p.getInventory().clear();
- p.getInventory().setArmorContents(null);
- p.getInventory().setItem(0, ItemCreator.CreateItem(Material.NETHER_STAR, 1, 0, "§ePässe", "§7Wähle pässe aus"));
- p.getInventory().setItem(8, ItemCreator.CreateItem(Material.SLIME_BALL, 1, 0, "§cRunde Verlassen", "§7Verlasse die Runde"));
- p.updateInventory();
- }
- }
- package eu.NowLow.TTT.manager;
- import org.bukkit.Material;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import java.util.ArrayList;
- /**
- * Created by olele on 24.04.2017.
- */
- public class ItemCreator {
- public static ItemStack CreateItem(Material m, int Anzahl, int SubID, String Displayname, String lore) {
- ItemStack i = new ItemStack(m, Anzahl, (short) SubID);
- ItemMeta im = i.getItemMeta();
- im.setDisplayName(Displayname);
- ArrayList<String> list = new ArrayList<>();
- list.add(lore);
- im.setLore(list);
- i.setItemMeta(im);
- return i;
- }
- }
- package eu.NowLow.TTT.manager;
- import org.bukkit.entity.Player;
- /**
- * Created by olele on 23.04.2017.
- */
- public class Scoreboard {
- public static void setScoreboard(Player p) {
- }
- }
- package eu.NowLow.TTT.manager;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.Bukkit;
- import org.bukkit.Location;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import java.io.IOException;
- /**
- * Created by olele on 23.04.2017.
- */
- public class SpawnManager implements CommandExecutor{
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String s, String[] args) {
- if(cmd.getName().equalsIgnoreCase("setspawn")){
- Player p = (Player)sender;
- if(p.hasPermission("ttt.setspawn")){
- if(args.length == 1) {
- Location loc = p.getLocation();
- double x = loc.getX();
- double y = loc.getY();
- double z = loc.getZ();
- double yaw = loc.getYaw();
- double pitch = loc.getPitch();
- String Weltname = loc.getWorld().getName();
- Data.cfg.set("Spawn" + args[0] + ".X", x);
- Data.cfg.set("Spawn" + args[0] + ".Y", y);
- Data.cfg.set("Spawn" + args[0] + ".Yaw", yaw);
- Data.cfg.set("Spawn" + args[0] + ".Pitch", pitch);
- Data.cfg.set("Spawn" + args[0] + ".WeltName", Weltname);
- try {
- Data.cfg.save(Data.file);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }else{
- p.sendMessage(Data.Prefix + "§cGebe folgendes ein: /SetSpawn [Nummer]");
- }
- }else{
- p.sendMessage(Data.NoPerms);
- }
- }
- return false;
- }
- public static void teleportToSpawn(Player p, int Spawnzahl){
- int x = Data.cfg.getInt("Spawn" + Spawnzahl + ".X");
- int y = Data.cfg.getInt("Spawn" + Spawnzahl + ".Y");
- int z = Data.cfg.getInt("Spawn" + Spawnzahl + ".Z");
- int yaw = Data.cfg.getInt("Spawn" + Spawnzahl + ".Yaw");
- int pitch = Data.cfg.getInt("Spawn" + Spawnzahl + ".Pitch");
- String weltname = Data.cfg.getString("Spawn" + Spawnzahl + ".WeltName");
- Location loc = new Location(Bukkit.getWorld(weltname), x, y, z);
- p.teleport(loc);
- }
- }
- package eu.NowLow.TTT.manager;
- import org.bukkit.entity.Player;
- import java.util.HashMap;
- /**
- * Created by olele on 23.04.2017.
- */
- public class StatsManager {
- public static HashMap<String, Integer> detecivepaesse = new HashMap<>();
- public static HashMap<String, Integer> traitorpaesse = new HashMap<>();
- public static void loadStatsFromPlayer(Player p) {
- detecivepaesse.put(p.getName(), 0);
- traitorpaesse.put(p.getName(), 0);
- }
- }
- package eu.NowLow.TTT.manager;
- import eu.NowLow.TTT.Main;
- import eu.NowLow.TTT.gamestates.GameState;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.Bukkit;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- 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.inventory.InventoryType;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import java.util.ArrayList;
- /**
- * Created by olele on 23.04.2017.
- */
- public class TeamManager implements Listener{
- public static ArrayList<Player> normal = new ArrayList<Player>();
- public static ArrayList<Player> detective = new ArrayList<Player>();
- public static ArrayList<Player> traitor = new ArrayList<Player>();
- @EventHandler
- public void onInteract(PlayerInteractEvent e) {
- Player p = e.getPlayer();
- try{
- if(e.getItem().getType() == Material.NETHER_STAR) {
- if(Main.gs == GameState.LOBBY) {
- if(e.getAction().equals(Action.RIGHT_CLICK_AIR) || e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
- Inventory inv = Bukkit.createInventory(null, InventoryType.CHEST, "§6Pässe");
- ItemStack i = new ItemStack(Material.REDSTONE_BLOCK);
- ItemMeta im = i.getItemMeta();
- im.setDisplayName("§4Traitor Pass");
- i.setItemMeta(im);
- ItemStack i2 = new ItemStack(Material.LAPIS_BLOCK);
- ItemMeta im2 = i2.getItemMeta();
- im2.setDisplayName("§4Detective Pass");
- i2.setItemMeta(im2);
- inv.setItem(12, i2);
- inv.setItem(14, i);
- p.openInventory(inv);
- p.playSound(p.getLocation(), Sound.LEVEL_UP, 1, 1);
- return;
- }
- }
- }
- }catch (Exception e1) {}
- }
- @EventHandler
- public void onClick(InventoryClickEvent e) {
- try {
- Player p = (Player)e.getWhoClicked();
- if(e.getInventory().getName().equalsIgnoreCase("§6Pässe")) {
- if(Main.gs == GameState.LOBBY) {
- if(TeamManager.detective.contains(p) || TeamManager.traitor.contains(p)) {
- if (e.getCurrentItem().getType() == Material.LAPIS_BLOCK) {
- if (detective.size() < 3) {
- if (StatsManager.detecivepaesse.get(p.getName()) > 0) {
- StatsManager.detecivepaesse.put(p.getName(), StatsManager.detecivepaesse.get(p.getName()) - 1);
- TeamManager.detective.add(p);
- p.sendMessage(Data.Prefix + "§eDu wirst §bDetective §ewerden!");
- p.closeInventory();
- } else {
- p.sendMessage(Data.Prefix + "§cDu hast keine Detective Pässe die du benutzen kannst!");
- p.closeInventory();
- p.playSound(p.getLocation(), Sound.CHICKEN_EGG_POP, 1, 1);
- return;
- }
- return;
- }else{
- p.sendMessage(Data.Prefix + "§cEs sind breists zu viele Detective!");
- return;
- }
- }
- if (e.getCurrentItem().getType() == Material.REDSTONE_BLOCK) {
- if(traitor.size() < 5) {
- if(StatsManager.traitorpaesse.get(p.getName()) > 0) {
- StatsManager.traitorpaesse.put(p.getName(), StatsManager.traitorpaesse.get(p.getName()) - 1);
- TeamManager.traitor.add(p);
- p.sendMessage(Data.Prefix + "§eDu wirst §cTraitor §ewerden!");
- p.closeInventory();
- return;
- }else{
- p.sendMessage(Data.Prefix + "§cDu hast leider keine Traitor Pässe mehr!");
- return;
- }
- }else{
- p.sendMessage(Data.Prefix + "§cES sind bereits zu viele Traitor");
- return;
- }
- }
- }else {
- p.sendMessage(Data.Prefix + "§cDu hast bereits einen Pass eingelöst");
- p.playSound(p.getLocation(), Sound.CHICKEN_EGG_POP, 1, 1);
- p.closeInventory();
- return;
- }
- }else{
- p.sendMessage(Data.Prefix + "§cDu kannst nun keine Pässe mehr auswählen!");
- p.closeInventory();
- }
- }
- }catch(Exception e1) {}
- }
- public static void pickRandomTeams(Player p) {
- }
- }
- package eu.NowLow.TTT.utils;
- import org.bukkit.configuration.file.YamlConfiguration;
- import java.io.File;
- /**
- * Created by olele on 23.04.2017.
- */
- public class Data {
- public static String Prefix = "§8[§3TTT§8]";
- public static String NoPerms = Prefix +"§cDu hast nicht genügend Rechte um dies zu tun!";
- public static File file = new File("plugin//TTT//spawns.yml");
- public static YamlConfiguration cfg = YamlConfiguration.loadConfiguration(file);
- }
- package eu.NowLow.TTT;
- import eu.NowLow.TTT.game.Events;
- import eu.NowLow.TTT.game.JoinManager;
- import eu.NowLow.TTT.game.MainListener;
- import eu.NowLow.TTT.game.QuitMessage;
- import eu.NowLow.TTT.gamestates.GameState;
- import eu.NowLow.TTT.manager.SpawnManager;
- import eu.NowLow.TTT.manager.TeamManager;
- import eu.NowLow.TTT.utils.Data;
- import org.bukkit.Bukkit;
- import org.bukkit.plugin.java.JavaPlugin;
- /**
- * Created by olele on 23.04.2017.
- */
- public class Main extends JavaPlugin{
- public static GameState gs;
- public static int cd;
- public static int waitforplayer;
- public void onEnable() {
- waitforplayer = 8;
- gs = GameState.LOBBY;
- Bukkit.getConsoleSender().sendMessage("§3Das Plugin wurde gestartet!");
- loadEvents();
- loadCommands();
- cd = Bukkit.getScheduler().scheduleAsyncRepeatingTask(this, new Runnable() {
- @Override
- public void run() {
- waitforplayer--;
- if(Bukkit.getOnlinePlayers().size() < 2) {
- if (Main.gs == GameState.LOBBY) {
- if (waitforplayer == 0) {
- Bukkit.broadcastMessage(Data.Prefix + "§3Warte auf weitere Spieler...");
- waitforplayer = 8;
- }
- } else {
- Bukkit.getScheduler().cancelTask(cd);
- }
- }
- }
- },20, 20);
- }
- public void onDisable() {
- Bukkit.getConsoleSender().sendMessage("§cDas Plugin wird gestoppt!");
- }
- public void loadEvents() {
- Bukkit.getPluginManager().registerEvents(new JoinManager(), this);
- Bukkit.getPluginManager().registerEvents(new MainListener(this), this);
- Bukkit.getPluginManager().registerEvents(new QuitMessage(), this);
- Bukkit.getPluginManager().registerEvents(new TeamManager(), this);
- Bukkit.getPluginManager().registerEvents(new Events(), this);
- }
- public void loadCommands() {
- getCommand("setspawn").setExecutor(new SpawnManager());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement