This commit is contained in:
parent
c9c27d788e
commit
be36204315
|
@ -18,6 +18,7 @@ import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
|
import org.bukkit.event.entity.FoodLevelChangeEvent;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
import xyz.twovb.sgm.commands.handlers.InvalidArgsHandler;
|
import xyz.twovb.sgm.commands.handlers.InvalidArgsHandler;
|
||||||
import xyz.twovb.sgm.commands.handlers.NoPermissionsHandler;
|
import xyz.twovb.sgm.commands.handlers.NoPermissionsHandler;
|
||||||
|
@ -85,6 +86,11 @@ public final class SGM extends JavaPlugin implements Listener {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void onFoodLose(FoodLevelChangeEvent event) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
|
||||||
private void loadScoreboard() {
|
private void loadScoreboard() {
|
||||||
try {
|
try {
|
||||||
scoreboardLibrary = ScoreboardLibrary.loadScoreboardLibrary(this);
|
scoreboardLibrary = ScoreboardLibrary.loadScoreboardLibrary(this);
|
||||||
|
|
|
@ -81,6 +81,39 @@ public class GameCommand {
|
||||||
new JoinGameGui().getGui().show(player);
|
new JoinGameGui().getGui().show(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Execute(name = "leave")
|
||||||
|
void leave(@Context Player player) {
|
||||||
|
Minigame game = SGM.getInstance().getGameManager().findGame(player);
|
||||||
|
if (game == null) {
|
||||||
|
CustomPlayer cPlayer = new CustomPlayer(player);
|
||||||
|
cPlayer.sendMessage(SGM.getInstance().getMessages().getString("sgm.game.not-found"));
|
||||||
|
} else {
|
||||||
|
game.removePlayer(player);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Execute(name = "stop")
|
||||||
|
void stop(@Context Player player) {
|
||||||
|
Minigame game = SGM.getInstance().getGameManager().findGame(player);
|
||||||
|
if (game == null) {
|
||||||
|
CustomPlayer cPlayer = new CustomPlayer(player);
|
||||||
|
cPlayer.sendMessage(SGM.getInstance().getMessages().getString("sgm.game.not-found"));
|
||||||
|
} else {
|
||||||
|
game.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Execute(name = "forcestop")
|
||||||
|
@Permission("sgm.games.forcestop")
|
||||||
|
void endGame(@Context CommandSender sender, @Arg("id") String id) {
|
||||||
|
Minigame game = SGM.getInstance().getGameManager().findGame(UUID.fromString(id));
|
||||||
|
if (game == null) {
|
||||||
|
sender.sendMessage(ChatUtils.translate(SGM.getInstance().getMessages().getString("sgm.game.not-found")));
|
||||||
|
} else {
|
||||||
|
game.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Execute(name = "addplayer")
|
@Execute(name = "addplayer")
|
||||||
@Permission("sgm.games.addplayer")
|
@Permission("sgm.games.addplayer")
|
||||||
void testjoin(@Context CommandSender sender, @Arg("player") Player target, @Arg("id") String id) {
|
void testjoin(@Context CommandSender sender, @Arg("player") Player target, @Arg("id") String id) {
|
||||||
|
|
|
@ -73,8 +73,9 @@ public class LevelCommand {
|
||||||
void export(@Context CommandSender sender, @Arg("name") String name) {
|
void export(@Context CommandSender sender, @Arg("name") String name) {
|
||||||
try {
|
try {
|
||||||
SGM.getInstance().getLevelManager().exportLevel(name);
|
SGM.getInstance().getLevelManager().exportLevel(name);
|
||||||
|
sender.sendMessage(ChatUtils.translate(PlaceholderManager.setPlaceholders(SGM.getInstance().getMessages().getString("sgm.level.export.done"), sender).replace("%level%", name)));
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
SGM.getInstance().getCLogger().error(e);
|
sender.sendMessage(ChatUtils.translate(PlaceholderManager.setPlaceholders(SGM.getInstance().getMessages().getString("sgm.level.not-found"), sender)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@ import net.megavex.scoreboardlibrary.api.team.TeamDisplay;
|
||||||
import net.megavex.scoreboardlibrary.api.team.TeamManager;
|
import net.megavex.scoreboardlibrary.api.team.TeamManager;
|
||||||
import net.megavex.scoreboardlibrary.api.team.enums.CollisionRule;
|
import net.megavex.scoreboardlibrary.api.team.enums.CollisionRule;
|
||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
|
import org.bukkit.attribute.Attribute;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.configuration.ConfigurationSection;
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
|
@ -279,6 +280,7 @@ public class CTB implements Minigame {
|
||||||
HandlerList.unregisterAll(this);
|
HandlerList.unregisterAll(this);
|
||||||
for (Player player : gameWorld.getPlayers()) {
|
for (Player player : gameWorld.getPlayers()) {
|
||||||
player.teleport(Bukkit.getServer().getWorlds().get(0).getSpawnLocation());
|
player.teleport(Bukkit.getServer().getWorlds().get(0).getSpawnLocation());
|
||||||
|
player.getInventory().clear();
|
||||||
}
|
}
|
||||||
Bukkit.unloadWorld(gameWorld, false);
|
Bukkit.unloadWorld(gameWorld, false);
|
||||||
if (teamManager != null) {
|
if (teamManager != null) {
|
||||||
|
@ -306,6 +308,7 @@ public class CTB implements Minigame {
|
||||||
sb.removePlayer(player);
|
sb.removePlayer(player);
|
||||||
removePlayerFromTeams(player);
|
removePlayerFromTeams(player);
|
||||||
player.setRespawnLocation(Bukkit.getWorlds().get(0).getSpawnLocation());
|
player.setRespawnLocation(Bukkit.getWorlds().get(0).getSpawnLocation());
|
||||||
|
player.getInventory().clear();
|
||||||
players.remove(player);
|
players.remove(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -362,7 +365,7 @@ public class CTB implements Minigame {
|
||||||
|
|
||||||
private void releasePlayer(Player tagged, Player tagger) {
|
private void releasePlayer(Player tagged, Player tagger) {
|
||||||
playerStateMap.replace(tagger, CtbData.PlayerState.Tagging, CtbData.PlayerState.Free);
|
playerStateMap.replace(tagger, CtbData.PlayerState.Tagging, CtbData.PlayerState.Free);
|
||||||
playerStateMap.replace(tagged, CtbData.PlayerState.Tagged, CtbData.PlayerState.Invulnerable);
|
playerStateMap.replace(tagged, CtbData.PlayerState.Tagged, CtbData.PlayerState.Free);
|
||||||
CustomPlayer cTagged = new CustomPlayer(tagged);
|
CustomPlayer cTagged = new CustomPlayer(tagged);
|
||||||
CustomPlayer cTagger = new CustomPlayer(tagger);
|
CustomPlayer cTagger = new CustomPlayer(tagger);
|
||||||
cTagged.sendMessage(messages.getString("system.player.released.info").replace("%player%", tagger.getName()));
|
cTagged.sendMessage(messages.getString("system.player.released.info").replace("%player%", tagger.getName()));
|
||||||
|
@ -398,7 +401,6 @@ public class CTB implements Minigame {
|
||||||
Player player = event.getThief();
|
Player player = event.getThief();
|
||||||
if (!players.contains(player)) return;
|
if (!players.contains(player)) return;
|
||||||
ScoreboardTeam team = getTeam(player);
|
ScoreboardTeam team = getTeam(player);
|
||||||
player.getInventory().clear();
|
|
||||||
addScore(team, 1);
|
addScore(team, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -425,6 +427,8 @@ public class CTB implements Minigame {
|
||||||
if (!players.contains(player)) return;
|
if (!players.contains(player)) return;
|
||||||
if (this.state != GameState.STARTED) return;
|
if (this.state != GameState.STARTED) return;
|
||||||
if (playerStateMap.get(player) != CtbData.PlayerState.Stealing) return;
|
if (playerStateMap.get(player) != CtbData.PlayerState.Stealing) return;
|
||||||
|
EntityEquipment entityEquipment = player.getEquipment();
|
||||||
|
entityEquipment.setHelmet(new ItemStack(Material.AIR));
|
||||||
player.sendMessage(event.getMessage());
|
player.sendMessage(event.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -740,6 +744,8 @@ public class CTB implements Minigame {
|
||||||
CtbData.PlayerState playerState = playerStateMap.get(player);
|
CtbData.PlayerState playerState = playerStateMap.get(player);
|
||||||
playerStateMap.replace(player, playerState, CtbData.PlayerState.Jailed);
|
playerStateMap.replace(player, playerState, CtbData.PlayerState.Jailed);
|
||||||
PlayerJailedEvent jailedEvent = new PlayerJailedEvent(player);
|
PlayerJailedEvent jailedEvent = new PlayerJailedEvent(player);
|
||||||
|
player.setFireTicks(0);
|
||||||
|
player.setHealth(Objects.requireNonNull(player.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue());
|
||||||
jailedEvent.callEvent();
|
jailedEvent.callEvent();
|
||||||
ScoreboardTeam team = getTeam(player);
|
ScoreboardTeam team = getTeam(player);
|
||||||
// SGM.getInstance().getCLogger().log(team.name());
|
// SGM.getInstance().getCLogger().log(team.name());
|
||||||
|
|
|
@ -17,8 +17,8 @@ system:
|
||||||
notime:
|
notime:
|
||||||
notify: "&7You have run out of time to bring %player% to Jail! You must head back to Neutral before you can do anything."
|
notify: "&7You have run out of time to bring %player% to Jail! You must head back to Neutral before you can do anything."
|
||||||
info: "&7%player% has run out of time to take you to Jail! You have been released and you must head back to Neutral before you can do anything."
|
info: "&7%player% has run out of time to take you to Jail! You have been released and you must head back to Neutral before you can do anything."
|
||||||
notify: "&7You have been tagged! %player% now has 25 seconds to take you to Jail or you will be freed!"
|
notify: "&7You have been tagged! %player% now has %seconds% seconds to take you to Jail or you will be freed!"
|
||||||
info: "&7You have tagged %player%! You have 25 seconds to take them to Jail! Crouch if you would like to set them free."
|
info: "&7You have tagged %player%! You have %seconds% seconds to take them to Jail! Crouch if you would like to set them free."
|
||||||
released:
|
released:
|
||||||
notify: "&7You have released %player%"
|
notify: "&7You have released %player%"
|
||||||
info: "&7%player% let you free! You must head back to Neutral before you can do anything."
|
info: "&7%player% let you free! You must head back to Neutral before you can do anything."
|
||||||
|
|
Loading…
Reference in New Issue
Block a user