Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -2,6 +2,8 @@ package eu.mhsl.minenet.minigames.handler.global;
|
|||||||
|
|
||||||
import eu.mhsl.minenet.minigames.message.Icon;
|
import eu.mhsl.minenet.minigames.message.Icon;
|
||||||
import eu.mhsl.minenet.minigames.message.type.ChatMessage;
|
import eu.mhsl.minenet.minigames.message.type.ChatMessage;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
|
import net.kyori.adventure.text.format.NamedTextColor;
|
||||||
import net.minestom.server.event.EventListener;
|
import net.minestom.server.event.EventListener;
|
||||||
import net.minestom.server.event.player.PlayerChatEvent;
|
import net.minestom.server.event.player.PlayerChatEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@@ -14,7 +16,14 @@ public class ChatFormatHandler implements EventListener<PlayerChatEvent> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public @NotNull Result run(@NotNull PlayerChatEvent event) {
|
public @NotNull Result run(@NotNull PlayerChatEvent event) {
|
||||||
event.setFormattedMessage(new ChatMessage(Icon.CHAT).appendStatic(event.getRawMessage()).build(event.getPlayer()));
|
NamedTextColor color = event.getPlayer().getPermissionLevel() > 0 ? NamedTextColor.AQUA : NamedTextColor.GRAY;
|
||||||
|
event.setFormattedMessage(
|
||||||
|
new ChatMessage(Icon.CHAT)
|
||||||
|
.appendStatic(Component.text(event.getPlayer().getUsername(), color))
|
||||||
|
.appendStatic(Component.text(" > ", NamedTextColor.DARK_GRAY))
|
||||||
|
.appendStatic(event.getRawMessage())
|
||||||
|
.build(event.getPlayer())
|
||||||
|
);
|
||||||
return Result.SUCCESS;
|
return Result.SUCCESS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ public class ElytraRace extends StatelessGame {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.playerCheckpoints.putIfAbsent(player, new CheckPointData(this.ringSpacing, this.ringSpacing * 2));
|
this.playerCheckpoints.putIfAbsent(player, new CheckPointData(0, this.ringSpacing));
|
||||||
|
|
||||||
if(newPos.z() > this.generatedUntil - this.ringSpacing) {
|
if(newPos.z() > this.generatedUntil - this.ringSpacing) {
|
||||||
this.generateRing(this.generatedUntil + this.ringSpacing);
|
this.generateRing(this.generatedUntil + this.ringSpacing);
|
||||||
@@ -224,7 +224,9 @@ public class ElytraRace extends StatelessGame {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void toCheckpoint(Player p) {
|
private void toCheckpoint(Player p) {
|
||||||
|
CheckPointData data = this.playerCheckpoints.get(p);
|
||||||
Point checkpointPos = this.getRingPositionAtZ(this.playerCheckpoints.get(p).currentCheckpoint);
|
Point checkpointPos = this.getRingPositionAtZ(this.playerCheckpoints.get(p).currentCheckpoint);
|
||||||
|
if(data.currentCheckpoint == 0) checkpointPos = this.getSpawn().add(0, 3, 0);
|
||||||
p.setVelocity(Vec.ZERO);
|
p.setVelocity(Vec.ZERO);
|
||||||
p.setFlyingWithElytra(false);
|
p.setFlyingWithElytra(false);
|
||||||
p.teleport(Pos.fromPoint(checkpointPos).add(0.5, 0, 0.5));
|
p.teleport(Pos.fromPoint(checkpointPos).add(0.5, 0, 0.5));
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ public class SpaceSnake extends StatelessGame {
|
|||||||
playerMoveEvent.getPlayer().teleport(this.getSpawn());
|
playerMoveEvent.getPlayer().teleport(this.getSpawn());
|
||||||
playerMoveEvent.getPlayer().setGameMode(GameMode.SPECTATOR);
|
playerMoveEvent.getPlayer().setGameMode(GameMode.SPECTATOR);
|
||||||
long livingPlayers = this.getPlayers().stream()
|
long livingPlayers = this.getPlayers().stream()
|
||||||
.filter(p -> this.getScore().hasResult(p))
|
.filter(p -> !this.getScore().hasResult(p))
|
||||||
.count();
|
.count();
|
||||||
if(livingPlayers == 1) this.setTimeLimit(10);
|
if(livingPlayers == 1) this.setTimeLimit(10);
|
||||||
if(livingPlayers == 0) this.stop();
|
if(livingPlayers == 0) this.stop();
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ import net.minestom.server.coordinate.Pos;
|
|||||||
import net.minestom.server.entity.Player;
|
import net.minestom.server.entity.Player;
|
||||||
import net.minestom.server.event.player.PlayerMoveEvent;
|
import net.minestom.server.event.player.PlayerMoveEvent;
|
||||||
import net.minestom.server.instance.block.Block;
|
import net.minestom.server.instance.block.Block;
|
||||||
|
import net.minestom.server.item.ItemStack;
|
||||||
|
import net.minestom.server.item.Material;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -79,6 +81,9 @@ public class Stickfight extends StatelessGame {
|
|||||||
this.generateBridge(spawnX, spawnY, spawnZ);
|
this.generateBridge(spawnX, spawnY, spawnZ);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ItemStack item = ItemStack.of(Material.STICK).withGlowing(true);
|
||||||
|
players.forEach(player -> player.getInventory().addItemStack(item));
|
||||||
|
|
||||||
this.setBlock(0, 50, 0, Block.GOLD_BLOCK);
|
this.setBlock(0, 50, 0, Block.GOLD_BLOCK);
|
||||||
super.start();
|
super.start();
|
||||||
}
|
}
|
||||||
@@ -117,6 +122,7 @@ public class Stickfight extends StatelessGame {
|
|||||||
player.teleport(this.spawnPoints.get(player));
|
player.teleport(this.spawnPoints.get(player));
|
||||||
this.scoreMap.putIfAbsent(player, 0);
|
this.scoreMap.putIfAbsent(player, 0);
|
||||||
this.scoreMap.put(player, this.scoreMap.get(player) + 1);
|
this.scoreMap.put(player, this.scoreMap.get(player) + 1);
|
||||||
|
player.setLevel(this.scoreMap.get(player));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user