Merge branch 'sperren' of SteamWar/FightSystem into master
Dieser Commit ist enthalten in:
Commit
b8445cd58a
@ -69,6 +69,7 @@ public class FightSystem extends JavaPlugin {
|
||||
getCommand("ready").setExecutor(new ReadyCommand());
|
||||
getCommand("ak").setExecutor(new AkCommand());
|
||||
getCommand("leader").setExecutor(new LeaderCommand());
|
||||
getCommand("lockschem").setExecutor(new LockschemCommand());
|
||||
|
||||
if(Config.event()) {
|
||||
new EventJoinListener();
|
||||
@ -148,7 +149,7 @@ public class FightSystem extends JavaPlugin {
|
||||
Bukkit.broadcastMessage(" ");
|
||||
|
||||
if(winFightTeam != null) {
|
||||
Bukkit.broadcastMessage(PREFIX + "§aDas Team " + winFightTeam.getName() + " §ahat gewonnen!");
|
||||
Bukkit.broadcastMessage(PREFIX + "§aDas Team " + winFightTeam.getColoredName() + " §ahat gewonnen!");
|
||||
} else {
|
||||
Bukkit.broadcastMessage(PREFIX + "§aKein Team hat gewonnen!");
|
||||
}
|
||||
|
@ -87,7 +87,7 @@ class Commands {
|
||||
return;
|
||||
|
||||
FightPlayer leader = team.getLeader();
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu bist Team " + team.getName() + " §abeigetreten!");
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu bist Team " + team.getColoredName() + " §abeigetreten!");
|
||||
leader.sendMessage(FightSystem.PREFIX + "§aDer Spieler §e" + p.getName() + " §aist deinem Team beigetreten!");
|
||||
team.addMember(p);
|
||||
}
|
||||
@ -101,7 +101,7 @@ class Commands {
|
||||
return;
|
||||
|
||||
FightPlayer leader = team.getLeader();
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu hast die Einladung von " + team.getName() + " §aabgelehnt!");
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu hast die Einladung von " + team.getColoredName() + " §aabgelehnt!");
|
||||
leader.sendMessage(FightSystem.PREFIX + "§cDer Spieler §e" + p.getName() + " §chat deine Einladung abgelehnt!");
|
||||
team.getInvited().remove(p);
|
||||
}
|
||||
@ -114,7 +114,7 @@ class Commands {
|
||||
if(fightTeam == null)
|
||||
return;
|
||||
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu hast das Team " + fightTeam.getName() + " §averlassen!");
|
||||
p.sendMessage(FightSystem.PREFIX + "§aDu hast das Team " + fightTeam.getColoredName() + " §averlassen!");
|
||||
fightTeam.removePlayer(p);
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,51 @@
|
||||
package de.steamwar.fightsystem.commands;
|
||||
|
||||
import de.steamwar.fightsystem.FightSystem;
|
||||
import de.steamwar.fightsystem.fight.Fight;
|
||||
import de.steamwar.fightsystem.fight.FightTeam;
|
||||
import de.steamwar.sql.SchematicType;
|
||||
import de.steamwar.sql.SteamwarUser;
|
||||
import de.steamwar.sql.UserGroup;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class LockschemCommand implements CommandExecutor {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if(!(sender instanceof Player))
|
||||
return false;
|
||||
Player player = (Player) sender;
|
||||
|
||||
SteamwarUser steamwarUser = SteamwarUser.get(player.getUniqueId());
|
||||
UserGroup userGroup = steamwarUser.getUserGroup();
|
||||
|
||||
if(userGroup != UserGroup.Admin &&
|
||||
userGroup != UserGroup.Developer &&
|
||||
userGroup != UserGroup.Moderator &&
|
||||
userGroup != UserGroup.Supporter)
|
||||
return false;
|
||||
|
||||
|
||||
if(args.length != 1) {
|
||||
sendHelp(player);
|
||||
return false;
|
||||
}
|
||||
|
||||
String teamName = args[0];
|
||||
FightTeam fightTeam = Fight.getTeamByName(teamName);
|
||||
|
||||
if(fightTeam == null) {
|
||||
player.sendMessage(FightSystem.PREFIX + "§cDieses Team existiert nicht!");
|
||||
return false;
|
||||
}
|
||||
fightTeam.getSchematic().setSchemType(SchematicType.Normal);
|
||||
player.sendMessage(FightSystem.PREFIX + "Schematic von " + fightTeam.getColoredName() + " §cgesperrt!");
|
||||
return false;
|
||||
}
|
||||
|
||||
private void sendHelp(Player player) {
|
||||
player.sendMessage(FightSystem.PREFIX + "/lockschem [TEAM]");
|
||||
}
|
||||
}
|
@ -17,12 +17,12 @@ public class TechKOCountdown extends Countdown {
|
||||
|
||||
@Override
|
||||
final String countdownCounting() {
|
||||
return "bis " + team.getName() + " §7einen Schuss abgegeben haben muss!";
|
||||
return "bis " + team.getColoredName() + " §7einen Schuss abgegeben haben muss!";
|
||||
}
|
||||
|
||||
@Override
|
||||
void countdownFinished() {
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + team.getName() + "§7 ist §eTech K§8.§eO§8.!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + team.getColoredName() + "§7 ist §eTech K§8.§eO§8.!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(team));
|
||||
}
|
||||
}
|
||||
|
@ -66,4 +66,12 @@ public class Fight {
|
||||
public static void setLevel(int level) {
|
||||
Bukkit.getServer().getOnlinePlayers().forEach(player -> player.setLevel(level));
|
||||
}
|
||||
|
||||
public static FightTeam getTeamByName(String name) {
|
||||
if(redTeam.getName().equalsIgnoreCase(name))
|
||||
return redTeam;
|
||||
if(blueTeam.getName().equalsIgnoreCase(name))
|
||||
return blueTeam;
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@ -149,9 +149,9 @@ public class FightTeam implements IFightTeam{
|
||||
this.leader = null;
|
||||
if(!players.isEmpty()) {
|
||||
setLeader(players.iterator().next());
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§aDer Spieler §e" + leader.getPlayer().getName() + " §aist nun Leader von Team " + getName() + "§a!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§aDer Spieler §e" + leader.getPlayer().getName() + " §aist nun Leader von Team " + getColoredName() + "§a!");
|
||||
}else if(!Config.event()){
|
||||
FightSystem.shutdown(FightSystem.PREFIX + "§cTeam " + getName() + " §chat keine Spieler mehr.\n Arena schließt...");
|
||||
FightSystem.shutdown(FightSystem.PREFIX + "§cTeam " + getColoredName() + " §chat keine Spieler mehr.\n Arena schließt...");
|
||||
}else{
|
||||
setLeader(null);
|
||||
}
|
||||
@ -286,6 +286,10 @@ public class FightTeam implements IFightTeam{
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public String getColoredName() {
|
||||
return prefix + name;
|
||||
}
|
||||
|
||||
@ -293,6 +297,10 @@ public class FightTeam implements IFightTeam{
|
||||
return prefix;
|
||||
}
|
||||
|
||||
public Schematic getSchematic() {
|
||||
return schematic;
|
||||
}
|
||||
|
||||
public Location getSpawn() {
|
||||
return spawn;
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class PlayerChatListener extends BasicListener {
|
||||
FightTeam fightTeam = Fight.getPlayerTeam(player);
|
||||
|
||||
if(fightTeam != null) {
|
||||
String teamName = fightTeam.getName();
|
||||
String teamName = fightTeam.getColoredName();
|
||||
if(message.startsWith(Config.TeamChatDetection)) {
|
||||
fightTeam.broadcast(teamName + " " + player.getName() + "» " + message.substring(1));
|
||||
} else {
|
||||
|
@ -47,7 +47,7 @@ public class FightScoreboard {
|
||||
}
|
||||
|
||||
private static void teamScoreboard(FightTeam fightTeam){
|
||||
objective.setDisplayName(fightTeam.getName());
|
||||
objective.setDisplayName(fightTeam.getColoredName());
|
||||
fightTeam.getPlayers().forEach(fp -> {
|
||||
if(fp.isLiving())
|
||||
objective.getScore(fightTeam.getPrefix() + fp.getPlayer().getName()).setScore((int) fp.getPlayer().getHealth());
|
||||
|
@ -14,7 +14,7 @@ public class EventTeamOffWincondition {
|
||||
|
||||
private void teamOff(FightTeam team){
|
||||
if(team.allPlayersOut()){
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§6Das Team " + team.getName() + " §6ist Offline!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§6Das Team " + team.getColoredName() + " §6ist Offline!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(team));
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ public class WinconditionAllDead extends PlayerWincondition {
|
||||
|
||||
FightTeam fightTeam = Fight.getPlayerTeam(player);
|
||||
if(fightTeam.allPlayersOut()) {
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer letzte Spieler aus " + fightTeam.getPrefix() + fightTeam.getName() + " §cist gestorben!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer letzte Spieler aus " + fightTeam.getPrefix() + fightTeam.getColoredName() + " §cist gestorben!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(fightTeam));
|
||||
}
|
||||
}
|
||||
@ -39,7 +39,7 @@ public class WinconditionAllDead extends PlayerWincondition {
|
||||
|
||||
FightTeam fightTeam = Fight.getPlayerTeam(player);
|
||||
if(fightTeam.allPlayersOut()) {
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer letzte Spieler aus §6" + fightTeam.getPrefix() + fightTeam.getName() + " §chat den Kampf verlassen!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer letzte Spieler aus §6" + fightTeam.getPrefix() + fightTeam.getColoredName() + " §chat den Kampf verlassen!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(fightTeam));
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ public class WinconditionCaptainDead extends PlayerWincondition {
|
||||
|
||||
FightTeam fightTeam = Fight.getPlayerTeam(player);
|
||||
if(fightTeam.isPlayerLeader(player)) {
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer Leader von " + fightTeam.getPrefix() + fightTeam.getName() + " §cist gestorben!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer Leader von " + fightTeam.getPrefix() + fightTeam.getColoredName() + " §cist gestorben!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(fightTeam));
|
||||
}
|
||||
}
|
||||
@ -39,7 +39,7 @@ public class WinconditionCaptainDead extends PlayerWincondition {
|
||||
|
||||
FightTeam fightTeam = Fight.getPlayerTeam(player);
|
||||
if(fightTeam.isPlayerLeader(player)) {
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer Leader von " + fightTeam.getPrefix() + fightTeam.getName() + " §chat den Kampf verlassen!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§cDer Leader von " + fightTeam.getPrefix() + fightTeam.getColoredName() + " §chat den Kampf verlassen!");
|
||||
FightSystem.setSpectateState(Fight.getOpposite(fightTeam));
|
||||
}
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ public class WinconditionWaterTechKO {
|
||||
|
||||
private static void checkEmpty(FightTeam team, Set<Location> teamWater){
|
||||
if(teamWater.isEmpty()){
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§eDas Team " + team.getName() + " §eist Tech K.O.!");
|
||||
Bukkit.broadcastMessage(FightSystem.PREFIX + "§eDas Team " + team.getColoredName() + " §eist Tech K.O.!");
|
||||
Bukkit.getScheduler().runTask(FightSystem.getPlugin(), () -> FightSystem.setSpectateState(Fight.getOpposite(team)));
|
||||
}
|
||||
}
|
||||
|
@ -14,3 +14,4 @@ commands:
|
||||
kit:
|
||||
remove:
|
||||
leader:
|
||||
lockschem:
|
In neuem Issue referenzieren
Einen Benutzer sperren