aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/world
diff options
context:
space:
mode:
authorWilliam Hergès <anhgelus.morhtuuzh@proton.me>2024-08-25 17:24:40 +0200
committerGitHub <noreply@github.com>2024-08-25 17:24:40 +0200
commitf77e4e616ca2d4c5f1c206dd15922ba0ba79d66c (patch)
treeb2ac7c593b1f9840a51ec135dd5f962e7cf8d7cb /src/main/java/world
parent50e4a669f0be4e59fb4a91c0e498e7683e800c83 (diff)
parent76dc1da882200f0349d5fdaf22ddcc7304f1e591 (diff)
Merge pull request #12 from anhgelus/feat/spectating-players-moles-list
[Feat] Spectator can get the list of moles
Diffstat (limited to 'src/main/java/world')
-rw-r--r--src/main/java/world/anhgelus/molehunt/Molehunt.java5
-rw-r--r--src/main/java/world/anhgelus/molehunt/game/Game.java3
2 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/world/anhgelus/molehunt/Molehunt.java b/src/main/java/world/anhgelus/molehunt/Molehunt.java
index 58c43f2..9026dab 100644
--- a/src/main/java/world/anhgelus/molehunt/Molehunt.java
+++ b/src/main/java/world/anhgelus/molehunt/Molehunt.java
@@ -139,7 +139,10 @@ public class Molehunt implements ModInitializer {
return Command.SINGLE_SUCCESS;
})
));
- command.then(literal("moles").requires(source -> game != null && game.isAMole(source.getPlayer())).executes(context -> {
+ command.then(literal("moles").requires(source ->
+ (game != null && game.isAMole(source.getPlayer())) ||
+ (source.getPlayer() != null && source.getPlayer().isSpectator())
+ ).executes(context -> {
context.getSource().sendFeedback(() -> Text.translatable("commands.molehunt.moles.list").append(" " + game.getMolesAsString()),false);
return Command.SINGLE_SUCCESS;
}));
diff --git a/src/main/java/world/anhgelus/molehunt/game/Game.java b/src/main/java/world/anhgelus/molehunt/game/Game.java
index a2fdfbb..0bc7270 100644
--- a/src/main/java/world/anhgelus/molehunt/game/Game.java
+++ b/src/main/java/world/anhgelus/molehunt/game/Game.java
@@ -57,7 +57,6 @@ public class Game {
gamerules.get(GameRules.ANNOUNCE_ADVANCEMENTS).set(false, server);
// gamerules for the start
gamerules.get(GameRules.DO_IMMEDIATE_RESPAWN).set(true, server);
- gamerules.get(GameRules.DO_ENTITY_DROPS).set(false, server);
final var worldBorder = server.getOverworld().getWorldBorder();
worldBorder.setSize(Molehunt.CONFIG.getInitialWorldSize());
@@ -76,6 +75,7 @@ public class Game {
final var title = new TitleS2CPacket(Text.translatable("molehunt.game.start.suspense"));
playerManager.getPlayerList().forEach(p -> {
+ p.getInventory().clear();
p.kill();
p.networkHandler.sendPacket(timing);
p.networkHandler.sendPacket(title);
@@ -103,7 +103,6 @@ public class Game {
});
// reset gamerules after the start
gamerules.get(GameRules.DO_IMMEDIATE_RESPAWN).set(false, server);
- gamerules.get(GameRules.DO_ENTITY_DROPS).set(true, server);
// reset time and weather
server.getOverworld().setTimeOfDay(0);
server.getOverworld().resetWeather();