mirror of
https://github.com/ArthurDanjou/WitchRush.git
synced 2026-01-14 20:19:32 +01:00
Avancement du Plugin
This commit is contained in:
@@ -38,7 +38,9 @@ public class WitchPlayer {
|
||||
}
|
||||
|
||||
public void giveStuff(){
|
||||
|
||||
player.getInventory().clear();
|
||||
ItemStack sword = new ItemStack(Material.DIAMOND_SWORD);
|
||||
player.getInventory().setItem(0, sword);
|
||||
}
|
||||
|
||||
public void sendLobby(){
|
||||
@@ -49,10 +51,6 @@ public class WitchPlayer {
|
||||
|
||||
}
|
||||
|
||||
public void applySpectator() {
|
||||
|
||||
}
|
||||
|
||||
public static WitchPlayer get(final Player player) {
|
||||
if (WitchPlayer.witchMap.get(player) == null) {
|
||||
WitchPlayer.witchMap.put(player, new WitchPlayer(player));
|
||||
|
||||
@@ -57,6 +57,6 @@ public class WitchRush extends JavaPlugin {
|
||||
}
|
||||
|
||||
public static String prefix(){
|
||||
return "§5§lWitchRush §8§l\u258f §d";
|
||||
return "§5§lWitchRush §d§l\u258f §d";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
package net.berrygames.witchrush.game;
|
||||
|
||||
public class DeathMatchTask {
|
||||
}
|
||||
@@ -4,7 +4,7 @@ public enum GameState {
|
||||
|
||||
WAITING,
|
||||
STARTING,
|
||||
NOPVP,
|
||||
NOWITCH,
|
||||
PVP,
|
||||
DEATH_MATCH,
|
||||
FINISHING,
|
||||
|
||||
@@ -4,7 +4,6 @@ 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 {
|
||||
@@ -13,24 +12,18 @@ public class NoPVPTask extends BukkitRunnable {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
WitchRush.get().setState(GameState.NOPVP);
|
||||
|
||||
if(timer == 0){
|
||||
|
||||
new PVPTask().runTaskTimer(WitchRush.get(), 0, 20);
|
||||
WitchRush.get().setState(GameState.PVP);
|
||||
|
||||
Bukkit.broadcastMessage(WitchRush.prefix()+" Les §6Witchs §dsont apparues, §d§nBonne chance à vous !");
|
||||
|
||||
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--;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -9,6 +9,10 @@ public class PVPTask extends BukkitRunnable {
|
||||
@Override
|
||||
public void run() {
|
||||
|
||||
if(timer == 0){
|
||||
new DeathMatchTask();
|
||||
cancel();
|
||||
}
|
||||
|
||||
timer--;
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
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.GameMode;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
@@ -16,10 +18,18 @@ public class StartTask extends BukkitRunnable {
|
||||
|
||||
if(timer == 0){
|
||||
new NoPVPTask().runTaskTimer(WitchRush.get(), 0, 20);
|
||||
WitchRush.get().setState(GameState.NOWITCH);
|
||||
|
||||
Bukkit.broadcastMessage(WitchRush.prefix()+"§dLa partie commence !");
|
||||
Bukkit.broadcastMessage(WitchRush.prefix()+"§Vous avez §63minutes §dpour vous préparez.");
|
||||
Bukkit.broadcastMessage(WitchRush.prefix()+"§dVous avez §63minutes §dpour vous préparez.");
|
||||
cancel();
|
||||
|
||||
for(WitchPlayer witchPlayer : WitchPlayer.getwitchMap().values()){
|
||||
witchPlayer.giveStuff();
|
||||
}
|
||||
for(Player pls: Bukkit.getOnlinePlayers()){
|
||||
pls.setGameMode(GameMode.SURVIVAL);
|
||||
}
|
||||
//TP Player
|
||||
|
||||
//Spawn SHOP
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
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.players.*;
|
||||
import net.berrygames.witchrush.listeners.world.WorldEvents;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
@@ -17,6 +15,8 @@ public class ListenersManager {
|
||||
pm.registerEvents(new PlayerJoin(), main);
|
||||
pm.registerEvents(new PlayerQuit(), main);
|
||||
pm.registerEvents(new InteractEvent(), main);
|
||||
pm.registerEvents(new ChatEvent(), main);
|
||||
pm.registerEvents(new DeathEvent(), main);
|
||||
|
||||
// --- WORLD ---//
|
||||
pm.registerEvents(new WorldEvents(), main);
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package net.berrygames.witchrush.listeners.players;
|
||||
|
||||
import net.berrygames.witchrush.WitchPlayer;
|
||||
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.player.AsyncPlayerChatEvent;
|
||||
|
||||
public class ChatEvent implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void chat(AsyncPlayerChatEvent e){
|
||||
Player player = e.getPlayer();
|
||||
WitchPlayer witchPlayer = WitchPlayer.get(player);
|
||||
|
||||
if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
|
||||
//
|
||||
e.setFormat("§7[§6Global§7] §e%1$s §7» §f%2$s");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
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.tools.DeadPlayer;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.PlayerDeathEvent;
|
||||
|
||||
public class DeathEvent implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void death(PlayerDeathEvent e) throws InterruptedException {
|
||||
Player player = e.getEntity().getPlayer();
|
||||
Player killer = e.getEntity().getKiller();
|
||||
WitchPlayer witchPlayer = WitchPlayer.get(player);
|
||||
WitchPlayer witchKiller = WitchPlayer.get(killer);
|
||||
|
||||
if(WitchRush.get().getState().equals(GameState.WAITING) || WitchRush.get().getState().equals(GameState.STARTING)){
|
||||
e.setDeathMessage(null);
|
||||
player.kickPlayer("ENFAIT TOI T'ES FORT PCQ NORMALEMENT YA PAS CA");
|
||||
} else {
|
||||
e.setDeathMessage(WitchRush.prefix()+"§e"+player.getName()+"§d a été tué par §e"+ killer.getName());
|
||||
new DeadPlayer(player);
|
||||
player.setHealth(20);
|
||||
|
||||
killer.sendMessage("§dVous avez tué §e"+player.getName());
|
||||
witchKiller.setKills(witchKiller.getKills()+1);
|
||||
|
||||
player.sendMessage("§e"+killer.getName()+" §dvous avez tué");
|
||||
witchPlayer.setDeath(witchPlayer.getDeath()+1);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package net.berrygames.witchrush.listeners.players;
|
||||
|
||||
import net.berrygames.witchrush.WitchRush;
|
||||
import net.berrygames.witchrush.game.GameState;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
@@ -40,11 +41,18 @@ public class InteractEvent implements Listener {
|
||||
e.setCancelled(true);
|
||||
}
|
||||
if(e.getRightClicked().getName().equals("S")){
|
||||
e.setCancelled(true);
|
||||
player.sendMessage("s");
|
||||
}
|
||||
if(e.getRightClicked().getName().equals("U")){
|
||||
e.setCancelled(true);
|
||||
player.sendMessage("u");
|
||||
}
|
||||
if(e.getRightClicked().getType().equals(EntityType.WITCH)){
|
||||
//detect player's witch
|
||||
|
||||
//damage other witch
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ public class PlayerJoin implements Listener {
|
||||
"§8/§d16§7)");
|
||||
|
||||
player.sendTitle("§5WitchRush", "§DLe rush avec des Witchs");
|
||||
|
||||
player.getInventory().clear();
|
||||
player.setGameMode(GameMode.ADVENTURE);
|
||||
player.setLevel(0);
|
||||
player.setHealth(20);
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
package net.berrygames.witchrush.tools;
|
||||
|
||||
import net.berrygames.witchrush.WitchPlayer;
|
||||
import net.berrygames.witchrush.WitchRush;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
public class DeadPlayer {
|
||||
|
||||
private Player player;
|
||||
private WitchPlayer witchPlayer;
|
||||
private int timer = 5;
|
||||
private BukkitTask task;
|
||||
//team
|
||||
|
||||
|
||||
public DeadPlayer(Player player) {
|
||||
this.player = player;
|
||||
this.witchPlayer = WitchPlayer.get(player);
|
||||
this.witchPlayer.setSpectator(true);
|
||||
|
||||
becomeSpec();
|
||||
}
|
||||
|
||||
private void becomeSpec(){
|
||||
player.setGameMode(GameMode.SPECTATOR);
|
||||
witchPlayer.teleportPlayer();
|
||||
sendTitle();
|
||||
}
|
||||
|
||||
private void sendTitle(){
|
||||
player.sendTitle("§cVous êtes mort", null);
|
||||
task = Bukkit.getScheduler().runTaskTimer(WitchRush.get(), new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if(timer == 0){
|
||||
player.sendTitle("§cVous êtes mort", "§c§oRespawn...");
|
||||
respawn();
|
||||
Bukkit.getScheduler().cancelTask(task.getTaskId());
|
||||
}
|
||||
player.sendTitle("§cVous êtes mort", "§c§oRespawn dans "+timer+"...");
|
||||
timer--;
|
||||
}
|
||||
}, 20, 20);
|
||||
}
|
||||
|
||||
private void respawn(){
|
||||
witchPlayer.setSpectator(false);
|
||||
player.setGameMode(GameMode.SURVIVAL);
|
||||
//TP BASE EQUIPE
|
||||
witchPlayer.giveStuff();
|
||||
}
|
||||
}
|
||||
@@ -22,7 +22,6 @@ public class SpawnWitch {
|
||||
w.setCustomNameVisible(true);
|
||||
w.setSilent(true);
|
||||
w.setGravity(false);
|
||||
w.setInvulnerable(true);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user