Skip to content

Commit e1b25fe

Browse files
committed
shout機能実装 メッセージの先頭に@をつけることで全体にメッセージ送信できます
1 parent e2eca22 commit e1b25fe

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

src/main/java/com/github/elic0de/hungergames/game/HungerGame.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,12 +193,16 @@ public void reset() {
193193

194194
public void sendMessageSpectators(GameUser user, String message) {
195195
getPlayers(GameUser.class).forEach(onlineUser -> {
196-
if (isSpectator(onlineUser)) onlineUser.sendMessage(new MineDown(String.format("[観戦者] %s: %s", user.getUsername(), message)));
196+
if (isSpectator(onlineUser)) onlineUser.sendMessage(new MineDown(String.format("&b[観戦者] %s&r: &7%s", user.getUsername(), message)));
197197
});
198198
}
199199

200200
public void sendMessageOwnTeam(GameUser user, String message) {
201-
getUserTeam(user).ifPresent(team -> getTeamUsers(user).forEach(player -> player.sendMessage(new MineDown(String.format("[%s] %s: %s", team.getName(), user.getUsername(), message)))));
201+
getUserTeam(user).ifPresent(team -> getTeamUsers(user).forEach(player -> player.sendMessage(new MineDown(String.format("%s[%s] %s&r: &7%s", team.getColor(), team.getName(), user.getUsername(), message)))));
202+
}
203+
204+
public void shout(GameUser user, String message) {
205+
getUserTeam(user).ifPresent(team -> broadcast(new MineDown(String.format("%s[%s] %s&r: &7%s", team.getColor(), team.getName(), user.getUsername(), message))));
202206
}
203207

204208
public boolean isSpectator(GameUser user) {

src/main/java/com/github/elic0de/hungergames/listener/EventListener.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,11 +129,16 @@ private void onTeamChat(AsyncPlayerChatEvent event) {
129129
if (game.getPhase() instanceof InGamePhase) {
130130
event.setCancelled(true);
131131
final GameUser sender = GameUserManager.getGameUser(event.getPlayer());
132+
final String message = event.getMessage();
132133
if (game.isSpectator(sender)) {
133-
game.sendMessageSpectators(sender, event.getMessage());
134+
game.sendMessageSpectators(sender, message);
134135
return;
135136
}
136-
game.sendMessageOwnTeam(sender, event.getMessage());
137+
if (event.getMessage().startsWith("@")) {
138+
game.shout(sender, message.substring(1));
139+
return;
140+
}
141+
game.sendMessageOwnTeam(sender, message);
137142
}
138143
}
139144

0 commit comments

Comments
 (0)