Skip to main content

nil_core/world/
chat.rs

1// Copyright (C) Call of Nil contributors
2// SPDX-License-Identifier: AGPL-3.0-only
3
4use crate::chat::{ChatMessage, ChatMessageId, ChatMessageKind};
5use crate::player::PlayerId;
6use crate::world::World;
7
8impl World {
9  pub fn push_chat_message(&mut self, author: PlayerId, message: &str) -> ChatMessageId {
10    let message = ChatMessage::builder(message)
11      .author(author)
12      .kind(ChatMessageKind::Default)
13      .build();
14
15    let id = message.id();
16    self.chat.push(message.clone());
17    self.emit_chat_updated(message);
18
19    id
20  }
21}