Fixing errors after rebase

This commit is contained in:
Forest Anderson
2020-06-27 19:12:12 -04:00
parent ca0c7c0531
commit cf186b865a
6 changed files with 30 additions and 37 deletions

View File

@ -1013,7 +1013,7 @@ impl Client {
self.entity = entity_builder.with(uid).build(); self.entity = entity_builder.with(uid).build();
} }
/// Format a message for the client (voxygen chat box or chat-cli) /// Format a message for the client (voxygen chat box or chat-cli)
pub fn format_message(&self, msg: &comp::ChatMsg, character_name: bool) -> String { pub fn format_message(&self, msg: &comp::ChatMsg, character_name: bool) -> String {
let comp::ChatMsg { chat_type, message } = &msg; let comp::ChatMsg { chat_type, message } = &msg;

View File

@ -280,7 +280,11 @@ impl ChatCommand {
"Spawn entity with light", "Spawn entity with light",
Admin, 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( ChatCommand::Object => cmd(
vec![Enum("object", OBJECTS.clone(), Required)], vec![Enum("object", OBJECTS.clone(), Required)],
"Spawn an object", "Spawn an object",
@ -307,7 +311,9 @@ impl ChatCommand {
"Set player Level", "Set player Level",
Admin, 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( ChatCommand::Spawn => cmd(
vec![ vec![
Enum("alignment", ALIGNMENTS.clone(), Required), Enum("alignment", ALIGNMENTS.clone(), Required),

View File

@ -185,7 +185,7 @@ fn handle_motd(
) { ) {
server.notify_client( server.notify_client(
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()); .edit(|s| s.server_description = msg.clone());
server.notify_client( server.notify_client(
client, client,
ServerMsg::private(format!("Server description set to \"{}\"", msg)), ChatType::CommandError.server_msg(format!("Server description set to \"{}\"", msg)),
); );
}, },
Err(_) => { Err(_) => {
server.settings_mut().edit(|s| s.server_description.clear()); server.settings_mut().edit(|s| s.server_description.clear());
server.notify_client( server.notify_client(
client, client,
ServerMsg::private("Removed server description".to_string()), ChatType::CommandError.server_msg("Removed server description".to_string()),
); );
}, },
} }

View File

@ -110,9 +110,6 @@ impl Server {
.insert(persistence::character::CharacterUpdater::new( .insert(persistence::character::CharacterUpdater::new(
settings.persistence_db_dir.clone(), settings.persistence_db_dir.clone(),
)); ));
state.ecs_mut().insert(crate::settings::PersistenceDBDir(
settings.persistence_db_dir.clone(),
));
state state
.ecs_mut() .ecs_mut()
.insert(comp::AdminList(settings.admins.clone())); .insert(comp::AdminList(settings.admins.clone()));

View File

@ -46,13 +46,6 @@ pub trait StateExt {
/// Performed after loading component data from the database /// Performed after loading component data from the database
fn update_character_data(&mut self, entity: EcsEntity, components: PersistedComponents); fn update_character_data(&mut self, entity: EcsEntity, components: PersistedComponents);
/// Iterates over registered clients and send each `ServerMsg` /// 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 send_chat(&self, msg: comp::ChatMsg);
fn notify_registered_clients(&self, msg: ServerMsg); fn notify_registered_clients(&self, msg: ServerMsg);
/// Delete an entity, recording the deletion in [`DeletedEntities`] /// Delete an entity, recording the deletion in [`DeletedEntities`]

View File

@ -49,7 +49,6 @@ impl<'a> System<'a> for Sys {
WriteStorage<'a, Player>, WriteStorage<'a, Player>,
WriteStorage<'a, Client>, WriteStorage<'a, Client>,
WriteStorage<'a, Controller>, WriteStorage<'a, Controller>,
WriteStorage<'a, SpeechBubble>,
Read<'a, ServerSettings>, Read<'a, ServerSettings>,
); );
@ -80,7 +79,6 @@ impl<'a> System<'a> for Sys {
mut players, mut players,
mut clients, mut clients,
mut controllers, mut controllers,
mut speech_bubbles,
settings, settings,
): Self::SystemData, ): Self::SystemData,
) { ) {
@ -88,13 +86,13 @@ impl<'a> System<'a> for Sys {
let mut server_emitter = server_event_bus.emitter(); 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. // Player list to send new players.
let player_list = (&uids, &players, stats.maybe(), admins.maybe()) let player_list = (&uids, &players, stats.maybe(), admins.maybe())
.join() .join()
.map(|(uid, player, stats, admin)| { .map(|(uid, player, stats, admin)| {
(*uid, PlayerInfo { ((*uid).into(), PlayerInfo {
is_online: true, is_online: true,
is_admin: admin.is_some(), is_admin: admin.is_some(),
player_alias: player.alias.clone(), player_alias: player.alias.clone(),
@ -164,7 +162,7 @@ impl<'a> System<'a> for Sys {
let vd = view_distance let vd = view_distance
.map(|vd| vd.min(settings.max_view_distance.unwrap_or(vd))); .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); let is_admin = admin_list.contains(&username);
if !player.is_valid() { if !player.is_valid() {
@ -268,21 +266,19 @@ impl<'a> System<'a> for Sys {
// Give the player a welcome message // Give the player a welcome message
if settings.server_description.len() > 0 { if settings.server_description.len() > 0 {
client.notify(ServerMsg::broadcast( client.notify(
settings.server_description.clone(), ChatType::Online
)); .server_msg(settings.server_description.clone()),
);
} }
// Only send login message if it wasn't already // Only send login message if it wasn't already
// sent previously // sent previously
if !client.login_msg_sent { if !client.login_msg_sent {
new_chat_msgs.push(( new_chat_msgs.push((None, ChatMsg {
None, chat_type: ChatType::Online,
ServerMsg::broadcast(format!( message: format!("[{}] is now online.", &player.alias),
"[{}] is now online.", }));
&player.alias
)),
));
client.login_msg_sent = true; 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. // Tell all clients to add them to the player list.
for entity in new_players { for entity in new_players {
if let (Some(uid), Some(player)) = (uids.get(entity), players.get(entity)) { if let (Some(uid), Some(player)) = (uids.get(entity), players.get(entity)) {
let msg = ServerMsg::PlayerListUpdate(PlayerListUpdate::Add(*uid, PlayerInfo { let msg =
player_alias: player.alias.clone(), ServerMsg::PlayerListUpdate(PlayerListUpdate::Add((*uid).into(), PlayerInfo {
is_online: true, player_alias: player.alias.clone(),
is_admin: admins.get(entity).is_some(), is_online: true,
character: None, // new players will be on character select. 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()) { for client in (&mut clients).join().filter(|c| c.is_registered()) {
client.notify(msg.clone()) client.notify(msg.clone())
} }