diff options
Diffstat (limited to 'src/main/java/luckyblock/action/triggers/BroadcastTrigger.java')
| -rw-r--r-- | src/main/java/luckyblock/action/triggers/BroadcastTrigger.java | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/java/luckyblock/action/triggers/BroadcastTrigger.java b/src/main/java/luckyblock/action/triggers/BroadcastTrigger.java new file mode 100644 index 0000000..fae58f0 --- /dev/null +++ b/src/main/java/luckyblock/action/triggers/BroadcastTrigger.java @@ -0,0 +1,33 @@ +package luckyblock.action.triggers; + + +import luckyblock.action.LuckyActionHolder; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.RandomSource; + +import java.util.ArrayList; +import java.util.List; + +public class BroadcastTrigger implements ILuckyTrigger { + @Override + public String getName() { + return "broadcast"; + } + + @Override + public void execute(ServerLevel level, BlockPos pos, LuckyActionHolder holder, RandomSource random) { + if (holder.json != null) { + List<String> messages = new ArrayList<>(); + if (holder.json.isJsonArray()) { + holder.json.getAsJsonArray().forEach(e -> messages.add(e.getAsString())); + } else if (holder.json.isJsonPrimitive()) { + messages.add(holder.json.getAsString()); + } + for (String msg : messages) { + level.getServer().getPlayerList().broadcastSystemMessage(Component.literal(msg), false); + } + } + } +}
\ No newline at end of file |
