Archived
Private
Public Access
1
0

Initial commit

This commit is contained in:
2022-09-04 12:45:01 +02:00
commit f4a01d6a69
11601 changed files with 4206660 additions and 0 deletions

3
Plugins/Old/1vs1/.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

View File

@@ -0,0 +1,8 @@
<component name="ArtifactManager">
<artifact type="jar" name="1vs1">
<output-path>S:/Plugins</output-path>
<root id="archive" name="1vs1.jar">
<element id="module-output" name="1vs1" />
</root>
</artifact>
</component>

7
Plugins/Old/1vs1/.idea/discord.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
</component>
</project>

View File

@@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="CloudNetAPI">
<CLASSES>
<root url="jar://S:/Plugins/CloudNetAPI.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

View File

@@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="CoinAPI">
<CLASSES>
<root url="jar://S:/Plugins/CoinAPI.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

View File

@@ -0,0 +1,11 @@
<component name="libraryTable">
<library name="spigot 1.8.8">
<CLASSES>
<root url="jar://$PROJECT_DIR$/../Spigot Versions/spigot 1.8.8.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/../Spigot Versions/spigot 1.8.8.jar!/" />
</SOURCES>
</library>
</component>

11
Plugins/Old/1vs1/.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="EntryPointsManager">
<list size="1">
<item index="0" class="java.lang.String" itemvalue="org.bukkit.event.EventHandler" />
</list>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
Plugins/Old/1vs1/.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/1vs1.iml" filepath="$PROJECT_DIR$/1vs1.iml" />
</modules>
</component>
</project>

23
Plugins/Old/1vs1/1vs1.iml Normal file
View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="minecraft" name="Minecraft">
<configuration>
<autoDetectTypes>
<platformType>SPIGOT</platformType>
</autoDetectTypes>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="spigot 1.8.8" level="project" />
<orderEntry type="library" name="CoinAPI" level="project" />
<orderEntry type="library" name="CloudNetAPI" level="project" />
</component>
</module>

View File

@@ -0,0 +1,9 @@
name: 1vs1
version: 1.8.8
main: de.craftix.pvp.general.Main
commands:
setlobby:
setspec:
addspawn:
start:

View File

@@ -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;
}
}

View 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 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;
}
}

View 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;
}
}

View 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;
}
}

View 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;
}
}

View 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);
}
}

View 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);
}
}
}
}

View 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);
}
}
}
}

View 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);
}
}

View 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);
}
}
}

View 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!");
}
}
}

View 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);
}
}

View 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");
}
}

View File

@@ -0,0 +1,7 @@
package de.craftix.pvp.manager;
public enum Gamestates {
LOBBY,
INGAME,
RESTART
}

View 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);
}
}
}

View 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");
}
}

View File

@@ -0,0 +1,9 @@
name: 1vs1
version: 1.8.8
main: de.craftix.pvp.general.Main
commands:
setlobby:
setspec:
addspawn:
start: