mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Fixing errors after rebase
This commit is contained in:
parent
883d9acf30
commit
2665159790
@ -1013,7 +1013,7 @@ impl Client {
|
||||
|
||||
self.entity = entity_builder.with(uid).build();
|
||||
}
|
||||
|
||||
|
||||
/// Format a message for the client (voxygen chat box or chat-cli)
|
||||
pub fn format_message(&self, msg: &comp::ChatMsg, character_name: bool) -> String {
|
||||
let comp::ChatMsg { chat_type, message } = &msg;
|
||||
|
@ -280,7 +280,11 @@ impl ChatCommand {
|
||||
"Spawn entity with light",
|
||||
Admin,
|
||||
),
|
||||
ChatCommand::Motd => cmd(vec![Message], "View the server description", false),
|
||||
ChatCommand::Motd => cmd(
|
||||
vec![Message(Optional)],
|
||||
"View the server description",
|
||||
NoAdmin,
|
||||
),
|
||||
ChatCommand::Object => cmd(
|
||||
vec![Enum("object", OBJECTS.clone(), Required)],
|
||||
"Spawn an object",
|
||||
@ -307,7 +311,9 @@ impl ChatCommand {
|
||||
"Set player Level",
|
||||
Admin,
|
||||
),
|
||||
ChatCommand::SetMotd => cmd(vec![Message], "Set the server description", true),
|
||||
ChatCommand::SetMotd => {
|
||||
cmd(vec![Message(Optional)], "Set the server description", Admin)
|
||||
},
|
||||
ChatCommand::Spawn => cmd(
|
||||
vec![
|
||||
Enum("alignment", ALIGNMENTS.clone(), Required),
|
||||
|
@ -185,7 +185,7 @@ fn handle_motd(
|
||||
) {
|
||||
server.notify_client(
|
||||
client,
|
||||
ServerMsg::broadcast(server.settings().server_description.clone()),
|
||||
ChatType::CommandError.server_msg(server.settings().server_description.clone()),
|
||||
);
|
||||
}
|
||||
|
||||
@ -203,14 +203,14 @@ fn handle_set_motd(
|
||||
.edit(|s| s.server_description = msg.clone());
|
||||
server.notify_client(
|
||||
client,
|
||||
ServerMsg::private(format!("Server description set to \"{}\"", msg)),
|
||||
ChatType::CommandError.server_msg(format!("Server description set to \"{}\"", msg)),
|
||||
);
|
||||
},
|
||||
Err(_) => {
|
||||
server.settings_mut().edit(|s| s.server_description.clear());
|
||||
server.notify_client(
|
||||
client,
|
||||
ServerMsg::private("Removed server description".to_string()),
|
||||
ChatType::CommandError.server_msg("Removed server description".to_string()),
|
||||
);
|
||||
},
|
||||
}
|
||||
|
@ -110,9 +110,6 @@ impl Server {
|
||||
.insert(persistence::character::CharacterUpdater::new(
|
||||
settings.persistence_db_dir.clone(),
|
||||
));
|
||||
state.ecs_mut().insert(crate::settings::PersistenceDBDir(
|
||||
settings.persistence_db_dir.clone(),
|
||||
));
|
||||
state
|
||||
.ecs_mut()
|
||||
.insert(comp::AdminList(settings.admins.clone()));
|
||||
|
@ -46,13 +46,6 @@ pub trait StateExt {
|
||||
/// Performed after loading component data from the database
|
||||
fn update_character_data(&mut self, entity: EcsEntity, components: PersistedComponents);
|
||||
/// Iterates over registered clients and send each `ServerMsg`
|
||||
fn create_player_character(
|
||||
&mut self,
|
||||
entity: EcsEntity,
|
||||
character_id: i32,
|
||||
body: comp::Body,
|
||||
server_settings: &ServerSettings,
|
||||
);
|
||||
fn send_chat(&self, msg: comp::ChatMsg);
|
||||
fn notify_registered_clients(&self, msg: ServerMsg);
|
||||
/// Delete an entity, recording the deletion in [`DeletedEntities`]
|
||||
|
@ -49,7 +49,6 @@ impl<'a> System<'a> for Sys {
|
||||
WriteStorage<'a, Player>,
|
||||
WriteStorage<'a, Client>,
|
||||
WriteStorage<'a, Controller>,
|
||||
WriteStorage<'a, SpeechBubble>,
|
||||
Read<'a, ServerSettings>,
|
||||
);
|
||||
|
||||
@ -80,7 +79,6 @@ impl<'a> System<'a> for Sys {
|
||||
mut players,
|
||||
mut clients,
|
||||
mut controllers,
|
||||
mut speech_bubbles,
|
||||
settings,
|
||||
): Self::SystemData,
|
||||
) {
|
||||
@ -88,13 +86,13 @@ impl<'a> System<'a> for Sys {
|
||||
|
||||
let mut server_emitter = server_event_bus.emitter();
|
||||
|
||||
let mut new_chat_msgs = Vec::new();
|
||||
let mut new_chat_msgs: Vec<(Option<specs::Entity>, ChatMsg)> = Vec::new();
|
||||
|
||||
// Player list to send new players.
|
||||
let player_list = (&uids, &players, stats.maybe(), admins.maybe())
|
||||
.join()
|
||||
.map(|(uid, player, stats, admin)| {
|
||||
(*uid, PlayerInfo {
|
||||
((*uid).into(), PlayerInfo {
|
||||
is_online: true,
|
||||
is_admin: admin.is_some(),
|
||||
player_alias: player.alias.clone(),
|
||||
@ -164,7 +162,7 @@ impl<'a> System<'a> for Sys {
|
||||
|
||||
let vd = view_distance
|
||||
.map(|vd| vd.min(settings.max_view_distance.unwrap_or(vd)));
|
||||
let player = Player::new(username, None, vd, uuid);
|
||||
let player = Player::new(username.clone(), None, vd, uuid);
|
||||
let is_admin = admin_list.contains(&username);
|
||||
|
||||
if !player.is_valid() {
|
||||
@ -268,21 +266,19 @@ impl<'a> System<'a> for Sys {
|
||||
|
||||
// Give the player a welcome message
|
||||
if settings.server_description.len() > 0 {
|
||||
client.notify(ServerMsg::broadcast(
|
||||
settings.server_description.clone(),
|
||||
));
|
||||
client.notify(
|
||||
ChatType::Online
|
||||
.server_msg(settings.server_description.clone()),
|
||||
);
|
||||
}
|
||||
|
||||
// Only send login message if it wasn't already
|
||||
// sent previously
|
||||
if !client.login_msg_sent {
|
||||
new_chat_msgs.push((
|
||||
None,
|
||||
ServerMsg::broadcast(format!(
|
||||
"[{}] is now online.",
|
||||
&player.alias
|
||||
)),
|
||||
));
|
||||
new_chat_msgs.push((None, ChatMsg {
|
||||
chat_type: ChatType::Online,
|
||||
message: format!("[{}] is now online.", &player.alias),
|
||||
}));
|
||||
|
||||
client.login_msg_sent = true;
|
||||
}
|
||||
@ -464,12 +460,13 @@ impl<'a> System<'a> for Sys {
|
||||
// Tell all clients to add them to the player list.
|
||||
for entity in new_players {
|
||||
if let (Some(uid), Some(player)) = (uids.get(entity), players.get(entity)) {
|
||||
let msg = ServerMsg::PlayerListUpdate(PlayerListUpdate::Add(*uid, PlayerInfo {
|
||||
player_alias: player.alias.clone(),
|
||||
is_online: true,
|
||||
is_admin: admins.get(entity).is_some(),
|
||||
character: None, // new players will be on character select.
|
||||
}));
|
||||
let msg =
|
||||
ServerMsg::PlayerListUpdate(PlayerListUpdate::Add((*uid).into(), PlayerInfo {
|
||||
player_alias: player.alias.clone(),
|
||||
is_online: true,
|
||||
is_admin: admins.get(entity).is_some(),
|
||||
character: None, // new players will be on character select.
|
||||
}));
|
||||
for client in (&mut clients).join().filter(|c| c.is_registered()) {
|
||||
client.notify(msg.clone())
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user