diff --git a/WitchRush/pom.xml b/WitchRush/pom.xml
index 3c7f9f2..15eb854 100644
--- a/WitchRush/pom.xml
+++ b/WitchRush/pom.xml
@@ -69,8 +69,13 @@
org.spigotmc
spigot-api
- 1.13.1-R0.1-SNAPSHOT
+ 1.12.2-R0.1-SNAPSHOT
provided
+
+ org.spigotmc
+ spigot
+ 1.12.2-R0.1-SNAPSHOT
+
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/WitchPlayer.java b/WitchRush/src/main/java/net/berrygames/witchrush/WitchPlayer.java
index 0230eb3..75135eb 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/WitchPlayer.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/WitchPlayer.java
@@ -1,5 +1,7 @@
package net.berrygames.witchrush;
+import net.berrygames.witchrush.game.GameState;
+import net.berrygames.witchrush.tools.Locations;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.Player;
@@ -20,13 +22,19 @@ public class WitchPlayer {
public WitchPlayer(Player player) {
this.player = player;
- this.spectator = false;
+ this.spectator =
+ (WitchRush.get().getState().equals(GameState.WAITING) ||
+ WitchRush.get().getState().equals(GameState.WAITING)) ? false : true;
this.kills = 0;
this.death = 0;
}
public void teleportPlayer(){
-
+ if(spectator){
+ player.teleport(Locations.SPAWN_SPECTATORS.getLocation());
+ } else {
+ player.teleport(Locations.PLAYER_SPAWN_WAITING_ROOM.getLocation());
+ }
}
public void giveStuff(){
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/WitchRush.java b/WitchRush/src/main/java/net/berrygames/witchrush/WitchRush.java
index cf0ad8e..f2a45fd 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/WitchRush.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/WitchRush.java
@@ -57,6 +57,6 @@ public class WitchRush extends JavaPlugin {
}
public static String prefix(){
- return "§5§lWitchRush §8§l| §d";
+ return "§5§lWitchRush §8§l\u258f §d";
}
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/commands/admins/TestCMD.java b/WitchRush/src/main/java/net/berrygames/witchrush/commands/admins/TestCMD.java
index 79c7033..04665df 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/commands/admins/TestCMD.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/commands/admins/TestCMD.java
@@ -1,7 +1,8 @@
package net.berrygames.witchrush.commands.admins;
-import net.berrygames.witchrush.game.SpawnPNJ;
+import net.berrygames.witchrush.tools.SpawnPNJ;
import net.berrygames.witchrush.tools.Locations;
+import net.berrygames.witchrush.tools.SpawnWitch;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
@@ -26,6 +27,13 @@ public class TestCMD implements CommandExecutor {
new SpawnPNJ("U jaune", Locations.UPGRADE_JAUNE.getLocation()).spawn();
}
+ if(args[0].equals("w")){
+ new SpawnWitch("W Rouge", Locations.WITCH_ROUGE.getLocation()).spawn();
+ new SpawnWitch("W Bleu", Locations.WITCH_BLEU.getLocation()).spawn();
+ new SpawnWitch("W Vert", Locations.WITCH_VERT.getLocation()).spawn();
+ new SpawnWitch("W Jaune", Locations.WITCH_JAUNE.getLocation()).spawn();
+ }
+
return false;
}
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/game/NoPVPTask.java b/WitchRush/src/main/java/net/berrygames/witchrush/game/NoPVPTask.java
index 418a479..2d612a4 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/game/NoPVPTask.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/game/NoPVPTask.java
@@ -2,16 +2,33 @@ package net.berrygames.witchrush.game;
import net.berrygames.witchrush.WitchRush;
import net.berrygames.witchrush.tools.Locations;
+import net.berrygames.witchrush.tools.SpawnWitch;
+import org.bukkit.Bukkit;
+import org.bukkit.entity.Witch;
import org.bukkit.scheduler.BukkitRunnable;
public class NoPVPTask extends BukkitRunnable {
- private int timer = 60 * 3;
+ private int timer = 30;
@Override
public void run() {
WitchRush.get().setState(GameState.NOPVP);
+ if(timer == 0){
+
+ new PVPTask().runTaskTimer(WitchRush.get(), 0, 20);
+
+ Bukkit.broadcastMessage(WitchRush.prefix()+" Les §6Witchs §dsont apparues, §d§nBonne chance à vous !");
+
+ new SpawnWitch("W", Locations.WITCH_ROUGE.getLocation()).spawn();
+ new SpawnWitch("W", Locations.WITCH_BLEU.getLocation()).spawn();
+ new SpawnWitch("W", Locations.WITCH_VERT.getLocation()).spawn();
+ new SpawnWitch("W", Locations.WITCH_JAUNE.getLocation()).spawn();
+
+ cancel();
+ }
+
timer--;
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/game/PVPTask.java b/WitchRush/src/main/java/net/berrygames/witchrush/game/PVPTask.java
new file mode 100644
index 0000000..2ab95f2
--- /dev/null
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/game/PVPTask.java
@@ -0,0 +1,15 @@
+package net.berrygames.witchrush.game;
+
+import org.bukkit.scheduler.BukkitRunnable;
+
+public class PVPTask extends BukkitRunnable {
+
+ int timer = 20 * 60;
+
+ @Override
+ public void run() {
+
+
+ timer--;
+ }
+}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnPNJ.java b/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnPNJ.java
deleted file mode 100644
index ca8cf02..0000000
--- a/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnPNJ.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package net.berrygames.witchrush.game;
-
-import org.bukkit.Location;
-import org.bukkit.entity.Entity;
-import org.bukkit.entity.EntityType;
-
-public class SpawnPNJ {
-
- private EntityType entity;
- private String name;
- private Location location;
-
- public SpawnPNJ(String name, Location location) {
- this.entity = EntityType.VILLAGER;
- this.name = name;
- this.location = location;
- }
-
- public void spawn(){
- Entity witch = location.getWorld().spawnEntity(location, entity);
- witch.setCustomName(name);
- witch.setCustomNameVisible(true);
- witch.setSilent(true);
- witch.setInvulnerable(true);
- }
-
-
-}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnWitch.java b/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnWitch.java
deleted file mode 100644
index 6de2c71..0000000
--- a/WitchRush/src/main/java/net/berrygames/witchrush/game/SpawnWitch.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package net.berrygames.witchrush.game;
-
-import org.bukkit.Location;
-import org.bukkit.entity.Entity;
-import org.bukkit.entity.EntityType;
-
-public class SpawnWitch {
-
- private EntityType entity;
- private String name;
- private Location location;
-
- public SpawnWitch(String name, Location location) {
- this.entity = EntityType.WITCH;
- this.name = name;
- this.location = location;
- }
-
- public void spawn(){
- Entity witch = location.getWorld().spawnEntity(location, entity);
- witch.setCustomName(name);
- witch.setCustomNameVisible(true);
- witch.setSilent(true);
- witch.setInvulnerable(true);
- net.m
- }
-
-
-}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/game/StartTask.java b/WitchRush/src/main/java/net/berrygames/witchrush/game/StartTask.java
index af50df7..7b7840b 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/game/StartTask.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/game/StartTask.java
@@ -1,37 +1,38 @@
package net.berrygames.witchrush.game;
-import net.berrygames.witchrush.WitchPlayer;
import net.berrygames.witchrush.WitchRush;
import net.berrygames.witchrush.tools.Locations;
+import net.berrygames.witchrush.tools.SpawnPNJ;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.scheduler.BukkitRunnable;
public class StartTask extends BukkitRunnable {
- private int timer = 120;
+ private int timer = 30;
@Override
public void run() {
if(timer == 0){
new NoPVPTask().runTaskTimer(WitchRush.get(), 0, 20);
- Bukkit.broadcastMessage(WitchRush.prefix()+"§CLa partie commence ! Vous avez 3minutes pour vous preparer !");
+ Bukkit.broadcastMessage(WitchRush.prefix()+"§dLa partie commence !");
+ Bukkit.broadcastMessage(WitchRush.prefix()+"§Vous avez §63minutes §dpour vous préparez.");
cancel();
//TP Player
//Spawn SHOP
- new SpawnPNJ("S bleu", Locations.SHOP_BLEU.getLocation()).spawn();
- new SpawnPNJ("S rouge", Locations.SHOP_ROUGE.getLocation()).spawn();
- new SpawnPNJ("S vert", Locations.SHOP_VERT.getLocation()).spawn();
- new SpawnPNJ("S jaune", Locations.SHOP_JAUNE.getLocation()).spawn();
+ new SpawnPNJ("S", Locations.SHOP_BLEU.getLocation()).spawn();
+ new SpawnPNJ("S", Locations.SHOP_ROUGE.getLocation()).spawn();
+ new SpawnPNJ("S", Locations.SHOP_VERT.getLocation()).spawn();
+ new SpawnPNJ("S", Locations.SHOP_JAUNE.getLocation()).spawn();
//Spawn UPGRADE
- new SpawnPNJ("U bleu", Locations.UPGRADE_BLEU.getLocation()).spawn();
- new SpawnPNJ("U rouge", Locations.UPGRADE_ROUGE.getLocation()).spawn();
- new SpawnPNJ("U vert", Locations.UPGRADE_VERT.getLocation()).spawn();
- new SpawnPNJ("U jaune", Locations.UPGRADE_JAUNE.getLocation()).spawn();
+ new SpawnPNJ("U", Locations.UPGRADE_BLEU.getLocation()).spawn();
+ new SpawnPNJ("U", Locations.UPGRADE_ROUGE.getLocation()).spawn();
+ new SpawnPNJ("U", Locations.UPGRADE_VERT.getLocation()).spawn();
+ new SpawnPNJ("U", Locations.UPGRADE_JAUNE.getLocation()).spawn();
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/ListenersManager.java b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/ListenersManager.java
index 52fb331..bb6a972 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/ListenersManager.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/ListenersManager.java
@@ -1,8 +1,10 @@
package net.berrygames.witchrush.listeners;
import net.berrygames.witchrush.WitchRush;
+import net.berrygames.witchrush.listeners.players.InteractEvent;
import net.berrygames.witchrush.listeners.players.PlayerJoin;
import net.berrygames.witchrush.listeners.players.PlayerQuit;
+import net.berrygames.witchrush.listeners.world.WorldEvents;
import org.bukkit.Bukkit;
import org.bukkit.plugin.PluginManager;
@@ -14,8 +16,10 @@ public class ListenersManager {
// --- PLAYERS ---//
pm.registerEvents(new PlayerJoin(), main);
pm.registerEvents(new PlayerQuit(), main);
+ pm.registerEvents(new InteractEvent(), main);
// --- WORLD ---//
+ pm.registerEvents(new WorldEvents(), main);
System.out.println("Events register");
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/InteractEvent.java b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/InteractEvent.java
new file mode 100644
index 0000000..ec247d6
--- /dev/null
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/InteractEvent.java
@@ -0,0 +1,50 @@
+package net.berrygames.witchrush.listeners.players;
+
+import net.berrygames.witchrush.WitchRush;
+import net.berrygames.witchrush.game.GameState;
+import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+import org.bukkit.event.entity.EntityDamageByBlockEvent;
+import org.bukkit.event.entity.EntityDamageByEntityEvent;
+import org.bukkit.event.entity.EntityDamageEvent;
+import org.bukkit.event.player.PlayerInteractAtEntityEvent;
+
+public class InteractEvent implements Listener {
+
+ @EventHandler
+ public void pvp(EntityDamageEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+
+ @EventHandler
+ public void pvp(EntityDamageByBlockEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+
+ @EventHandler
+ public void pvp(EntityDamageByEntityEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+
+ @EventHandler
+ public void click(PlayerInteractAtEntityEvent e){
+ Player player = e.getPlayer();
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ if(e.getRightClicked().getName().equals("S")){
+ player.sendMessage("s");
+ }
+ if(e.getRightClicked().getName().equals("U")){
+ player.sendMessage("u");
+ }
+ }
+
+}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerJoin.java b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerJoin.java
index 5bdbd95..0a23926 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerJoin.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerJoin.java
@@ -20,10 +20,13 @@ public class PlayerJoin implements Listener {
if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
e.setJoinMessage(
- WitchRush.prefix()+player.getName()+
- " a rejoint la partie §7(§d"+
+ WitchRush.prefix()+"§e"+player.getName()+
+ " §da rejoint la partie §7(§d"+
WitchPlayer.getwitchMap().size()+
"§8/§d16§7)");
+
+ player.sendTitle("§5WitchRush", "§DLe rush avec des Witchs");
+
player.setGameMode(GameMode.ADVENTURE);
player.setLevel(0);
player.setHealth(20);
@@ -35,6 +38,21 @@ public class PlayerJoin implements Listener {
new StartTask().runTaskTimer(WitchRush.get(), 0, 20);
WitchRush.get().setState(GameState.STARTING);
}
+ } else {
+
+ player.sendMessage(" ");
+ player.sendMessage("§8(Spectateur) §7Vous êtes spectateur pour cette partie.");
+ player.sendMessage("§7Seul les autres spectateurs voient vos messages !");
+ player.sendMessage(" ");
+
+ e.setJoinMessage(null);
+ player.setGameMode(GameMode.SPECTATOR);
+ player.setLevel(0);
+ player.setHealth(20);
+ player.setFoodLevel(20);
+ witchPlayer.teleportPlayer();
+ witchPlayer.sendGameScoreboard();
}
+
}
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerQuit.java b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerQuit.java
index 8f7ba0a..c28feff 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerQuit.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/players/PlayerQuit.java
@@ -2,6 +2,7 @@ package net.berrygames.witchrush.listeners.players;
import net.berrygames.witchrush.WitchPlayer;
import net.berrygames.witchrush.WitchRush;
+import net.berrygames.witchrush.game.GameState;
import net.berrygames.witchrush.game.StartTask;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -16,11 +17,26 @@ public class PlayerQuit implements Listener {
Player player = e.getPlayer();
WitchPlayer witchPlayer = WitchPlayer.get(player);
+ e.setQuitMessage(null);
+
witchPlayer.removePlayer();
- if(WitchPlayer.getwitchMap().size() < 4){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setQuitMessage(
+ WitchRush.prefix()+"§e"+player.getName()+
+ " §da rejoint la partie §7(§d"+
+ WitchPlayer.getwitchMap().size()+
+ "§8/§d16§7)");
+ } else {
+ e.setQuitMessage(null);
+ }
+
+ if(WitchPlayer.getwitchMap().size() < 4 && WitchRush.get().getState().equals(GameState.STARTING)){
Bukkit.broadcastMessage(WitchRush.prefix()+"§CLe lancement de la partie est annulé. Il n'y a pas assez de joueurs !");
- new StartTask().cancel();
+ if(!new StartTask().isCancelled()){
+ new StartTask().cancel();
+ }
+
}
}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/listeners/world/WorldEvents.java b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/world/WorldEvents.java
new file mode 100644
index 0000000..0bacc03
--- /dev/null
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/listeners/world/WorldEvents.java
@@ -0,0 +1,31 @@
+package net.berrygames.witchrush.listeners.world;
+
+import net.berrygames.witchrush.WitchRush;
+import net.berrygames.witchrush.game.GameState;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+import org.bukkit.event.block.BlockBreakEvent;
+import org.bukkit.event.block.BlockDamageEvent;
+import org.bukkit.event.block.BlockPlaceEvent;
+
+public class WorldEvents implements Listener {
+
+ @EventHandler
+ public void place(BlockPlaceEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+ @EventHandler
+ public void breake(BlockBreakEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+ @EventHandler
+ public void damage(BlockDamageEvent e){
+ if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
+ e.setCancelled(true);
+ }
+ }
+}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/tools/Locations.java b/WitchRush/src/main/java/net/berrygames/witchrush/tools/Locations.java
index 7343004..1d560a8 100644
--- a/WitchRush/src/main/java/net/berrygames/witchrush/tools/Locations.java
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/tools/Locations.java
@@ -6,31 +6,31 @@ import org.bukkit.Location;
public enum Locations {
//PLAYERS
- PLAYER_SPAWN_WAITING_ROOM(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- PLAYER_SPAWN_BLEU(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- PLAYER_SPAWN_ROUGE(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- PLAYER_SPAWN_JAUNE(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- PLAYER_SPAWN_VERT(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
+ PLAYER_SPAWN_WAITING_ROOM(new Location(Bukkit.getWorld("world"), 0.5, 65, 0.5, 0, 0)),
+ PLAYER_SPAWN_BLEU(new Location(Bukkit.getWorld("world"), 5.5, 65, -4.5, 50, 0)),
+ PLAYER_SPAWN_ROUGE(new Location(Bukkit.getWorld("world"), -4.5, 65, 5.5, -120, 0)),
+ PLAYER_SPAWN_JAUNE(new Location(Bukkit.getWorld("world"), 5.5, 65, 5.5, 120, 0)),
+ PLAYER_SPAWN_VERT(new Location(Bukkit.getWorld("world"), -4.5, 65, -4.5, -50, 0)),
- SPAWN_SPECTATORS(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
+ SPAWN_SPECTATORS(new Location(Bukkit.getWorld("world"), 0.5, 70, 0.5, 0, 0)),
//WITCH
- WITCH_BLEU(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- WITCH_ROUGE(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- WITCH_JAUNE(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
- WITCH_ERT(new Location(Bukkit.getWorld("world"), 0, 0, 0)),
+ WITCH_BLEU(new Location(Bukkit.getWorld("world"), 9.5, 65, -8.5, 50, 0)),
+ WITCH_ROUGE(new Location(Bukkit.getWorld("world"), -8.5, 65, 9.5, -120, 0)),
+ WITCH_JAUNE(new Location(Bukkit.getWorld("world"), 9.5, 65, 9.5, 120, 0)),
+ WITCH_VERT(new Location(Bukkit.getWorld("world"), -8.5, 65, -8.5, -50, 0)),
//PNJ SHOP
- SHOP_BLEU(new Location(Bukkit.getWorld("world"), 1, 100, 0)),
- SHOP_ROUGE(new Location(Bukkit.getWorld("world"), 3, 100, 0)),
- SHOP_JAUNE(new Location(Bukkit.getWorld("world"), 5, 100, 0)),
- SHOP_VERT(new Location(Bukkit.getWorld("world"), 7, 100, 0)),
+ SHOP_BLEU(new Location(Bukkit.getWorld("world"), 9.5, 65, -5.5, 90, 0)),
+ SHOP_ROUGE(new Location(Bukkit.getWorld("world"), -8.5, 65, 6.5, -90, 0)),
+ SHOP_JAUNE(new Location(Bukkit.getWorld("world"), 6.5, 65, 9.5, 190, 0)),
+ SHOP_VERT(new Location(Bukkit.getWorld("world"), -5.5, 65, -8.5, 0, 0)),
//PNJ SOLO UPGRADE
- UPGRADE_BLEU(new Location(Bukkit.getWorld("world"), 2, 100, 0)),
- UPGRADE_ROUGE(new Location(Bukkit.getWorld("world"), 4, 100, 0)),
- UPGRADE_JAUNE(new Location(Bukkit.getWorld("world"), 6, 100, 0)),
- UPGRADE_VERT(new Location(Bukkit.getWorld("world"), 8, 100, 0)),
+ UPGRADE_BLEU(new Location(Bukkit.getWorld("world"), 6, 65, -8.5, 0, 0)),
+ UPGRADE_ROUGE(new Location(Bukkit.getWorld("world"), -5.5, 65, 9.5, -180, 0)),
+ UPGRADE_JAUNE(new Location(Bukkit.getWorld("world"), 9.5, 65, 6.5, 90, 0)),
+ UPGRADE_VERT(new Location(Bukkit.getWorld("world"), -8.5, 65, -5.5, -90, 0)),
;
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnPNJ.java b/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnPNJ.java
new file mode 100644
index 0000000..b34db85
--- /dev/null
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnPNJ.java
@@ -0,0 +1,31 @@
+package net.berrygames.witchrush.tools;
+
+import org.bukkit.Bukkit;
+import org.bukkit.Location;
+import org.bukkit.entity.Villager;
+
+public class SpawnPNJ {
+
+ private Villager villager;
+ private String name;
+ private Location location;
+
+ public SpawnPNJ(String name, Location location) {
+ this.name = name;
+ this.location = location;
+ }
+
+ public void spawn(){
+ this.villager = Bukkit.getWorld("world").spawn(location, Villager.class, v ->{
+ v.setAI(false);
+ v.setCustomName(name);
+ v.setCustomNameVisible(true);
+ v.setSilent(true);
+ v.setGravity(false);
+ v.setInvulnerable(true);
+ });
+ }
+
+
+
+}
diff --git a/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnWitch.java b/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnWitch.java
new file mode 100644
index 0000000..a2fe826
--- /dev/null
+++ b/WitchRush/src/main/java/net/berrygames/witchrush/tools/SpawnWitch.java
@@ -0,0 +1,30 @@
+package net.berrygames.witchrush.tools;
+
+import org.bukkit.Bukkit;
+import org.bukkit.Location;
+import org.bukkit.entity.Witch;
+
+public class SpawnWitch {
+
+ private Witch witch;
+ private String name;
+ private Location location;
+
+ public SpawnWitch(String name, Location location) {
+ this.name = name;
+ this.location = location;
+ }
+
+ public void spawn(){
+ this.witch = Bukkit.getWorld("world").spawn(location, Witch.class, w ->{
+ w.setAI(false);
+ w.setCustomName(name);
+ w.setCustomNameVisible(true);
+ w.setSilent(true);
+ w.setGravity(false);
+ w.setInvulnerable(true);
+ });
+ }
+
+
+}