aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-06-06 21:38:24 +0200
committermetamuffin <metamuffin@disroot.org>2025-06-06 21:38:24 +0200
commitf8dfbaa2869f40253ccd19ee3655b8dbd5390d8e (patch)
treed1ce15aa264a787c81ca996752e5c2736d21fb62
parent205d5f2ae8eaea03a78d3c027913c0fa44acceea (diff)
downloadhurrycurry-f8dfbaa2869f40253ccd19ee3655b8dbd5390d8e.tar
hurrycurry-f8dfbaa2869f40253ccd19ee3655b8dbd5390d8e.tar.bz2
hurrycurry-f8dfbaa2869f40253ccd19ee3655b8dbd5390d8e.tar.zst
manual clippy and other cleanup
-rw-r--r--pixel-client/src/game.rs38
-rw-r--r--pixel-client/src/menu/ingame.rs2
-rw-r--r--pixel-client/src/menu/main.rs2
-rw-r--r--pixel-client/src/menu/mod.rs4
-rw-r--r--pixel-client/src/menu/settings.rs2
-rw-r--r--pixel-client/tools/src/lib.rs1
-rw-r--r--server/client-lib/src/lib.rs32
-rw-r--r--server/editor/src/main.rs13
-rw-r--r--server/src/commands.rs2
-rw-r--r--server/src/entity/pedestrians.rs2
-rw-r--r--server/src/entity/player_portal.rs2
-rw-r--r--server/src/entity/tram.rs2
-rw-r--r--server/src/server.rs21
-rw-r--r--server/src/state.rs2
14 files changed, 57 insertions, 68 deletions
diff --git a/pixel-client/src/game.rs b/pixel-client/src/game.rs
index 32760364..0c5661c2 100644
--- a/pixel-client/src/game.rs
+++ b/pixel-client/src/game.rs
@@ -212,11 +212,9 @@ impl Game {
});
for player in self.players.values_mut() {
- for item in &mut player.items {
- if let Some(item) = item {
- item.parent_position = player.movement.position;
- item.tick(1., dt);
- }
+ for item in player.items.iter_mut().flatten() {
+ item.parent_position = player.movement.position;
+ item.tick(1., dt);
}
}
for tile in self.tiles.values_mut() {
@@ -360,10 +358,8 @@ impl Game {
})
}
PacketC::ClearProgress { item } => {
- if let Some(slot) = self.get_item(item) {
- if let Some(item) = slot {
- item.active = None;
- }
+ if let Some(Some(item)) = self.get_item(item) {
+ item.active = None;
}
}
PacketC::SetProgress {
@@ -373,16 +369,14 @@ impl Game {
player,
warn,
} => {
- if let Some(slot) = self.get_item(item) {
- if let Some(item) = slot {
- item.active = Some(Involvement {
- position,
- speed,
- player,
- warn,
- recipe: RecipeIndex(0),
- });
- }
+ if let Some(Some(item)) = self.get_item(item) {
+ item.active = Some(Involvement {
+ position,
+ speed,
+ player,
+ warn,
+ recipe: RecipeIndex(0),
+ });
}
}
PacketC::ServerMessage { .. } => {
@@ -517,10 +511,8 @@ impl Player {
_ => (),
}
}
- for item in &self.items {
- if let Some(item) = item {
- item.draw(ctx, item_sprites)
- }
+ for item in self.items.iter().flatten() {
+ item.draw(ctx, item_sprites)
}
}
}
diff --git a/pixel-client/src/menu/ingame.rs b/pixel-client/src/menu/ingame.rs
index 991faad6..66c77bce 100644
--- a/pixel-client/src/menu/ingame.rs
+++ b/pixel-client/src/menu/ingame.rs
@@ -2,8 +2,8 @@ use super::main::MainMenu;
use crate::{
config::Config,
game::Game,
- strings::tr,
render::{sprite::SpriteDraw, AtlasLayout, Renderer},
+ strings::tr,
ui::UiState,
State,
};
diff --git a/pixel-client/src/menu/main.rs b/pixel-client/src/menu/main.rs
index 38dcaaea..7320ff3b 100644
--- a/pixel-client/src/menu/main.rs
+++ b/pixel-client/src/menu/main.rs
@@ -21,8 +21,8 @@ use super::{
use crate::{
config::Config,
game::Game,
- strings::tr,
render::{sprite::SpriteDraw, AtlasLayout, Renderer},
+ strings::tr,
ui::UiState,
State,
};
diff --git a/pixel-client/src/menu/mod.rs b/pixel-client/src/menu/mod.rs
index 167d38e0..4e41fc7b 100644
--- a/pixel-client/src/menu/mod.rs
+++ b/pixel-client/src/menu/mod.rs
@@ -15,8 +15,8 @@
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
-pub mod main;
pub mod background;
-pub mod settings;
pub mod credits;
pub mod ingame;
+pub mod main;
+pub mod settings;
diff --git a/pixel-client/src/menu/settings.rs b/pixel-client/src/menu/settings.rs
index 6f4a20fe..91d43025 100644
--- a/pixel-client/src/menu/settings.rs
+++ b/pixel-client/src/menu/settings.rs
@@ -15,7 +15,7 @@
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
-use crate::{config::Config, strings::tr, render::sprite::SpriteDraw, ui::Ui};
+use crate::{config::Config, render::sprite::SpriteDraw, strings::tr, ui::Ui};
use hurrycurry_protocol::glam::Vec2;
use log::warn;
diff --git a/pixel-client/tools/src/lib.rs b/pixel-client/tools/src/lib.rs
index e69de29b..8b137891 100644
--- a/pixel-client/tools/src/lib.rs
+++ b/pixel-client/tools/src/lib.rs
@@ -0,0 +1 @@
+
diff --git a/server/client-lib/src/lib.rs b/server/client-lib/src/lib.rs
index 57554aac..4487596c 100644
--- a/server/client-lib/src/lib.rs
+++ b/server/client-lib/src/lib.rs
@@ -133,10 +133,8 @@ impl Game {
}
}
PacketC::ClearProgress { item } => {
- if let Some(slot) = self.get_item(item) {
- if let Some(item) = slot {
- item.active = None;
- }
+ if let Some(Some(item)) = self.get_item(item) {
+ item.active = None;
}
}
PacketC::SetProgress {
@@ -146,16 +144,14 @@ impl Game {
speed,
warn,
} => {
- if let Some(slot) = self.get_item(item) {
- if let Some(item) = slot {
- item.active = Some(Involvement {
- player,
- speed,
- warn,
- position,
- recipe: RecipeIndex(0),
- });
- }
+ if let Some(Some(item)) = self.get_item(item) {
+ item.active = Some(Involvement {
+ player,
+ speed,
+ warn,
+ position,
+ recipe: RecipeIndex(0),
+ });
}
}
PacketC::UpdateMap {
@@ -216,11 +212,9 @@ impl Game {
}
for player in self.players.values_mut() {
- for item in &mut player.items {
- if let Some(item) = item {
- if let Some(active) = &mut item.active {
- active.position += active.speed;
- }
+ for item in player.items.iter_mut().flatten() {
+ if let Some(active) = &mut item.active {
+ active.position += active.speed;
}
}
}
diff --git a/server/editor/src/main.rs b/server/editor/src/main.rs
index 54d3b065..4cba9e4a 100644
--- a/server/editor/src/main.rs
+++ b/server/editor/src/main.rs
@@ -5,7 +5,10 @@ use clap::Parser;
use futures_util::{SinkExt, StreamExt};
use hurrycurry_client_lib::network::sync::Network;
use hurrycurry_protocol::{
- glam::{ivec2, IVec2, Vec2}, movement::MovementBase, Character, Gamedata, Hand, Message, PacketC, PacketS, PlayerClass, PlayerID, TileIndex, VERSION
+ Character, Gamedata, Hand, Message, PacketC, PacketS, PlayerClass, PlayerID, TileIndex,
+ VERSION,
+ glam::{IVec2, Vec2, ivec2},
+ movement::MovementBase,
};
use log::{debug, info, warn};
use save::{export_state, import_state};
@@ -293,7 +296,7 @@ impl State {
let t = t.strip_prefix("/").unwrap_or(&t);
self.handle_command(
Command::try_parse_from(
- shlex::split(&t)
+ shlex::split(t)
.ok_or(anyhow!("invalid quoting"))?
.into_iter(),
)
@@ -350,10 +353,10 @@ impl State {
}
pub fn save(&mut self, name: &str) -> Result<()> {
- let e = export_state(&self);
+ let e = export_state(self);
File::create(format!("data/maps/{name}.yaml"))?.write_all(e.as_bytes())?;
self.out.push(PacketC::ServerMessage {
- message: Message::Text(format!("Map saved.")),
+ message: Message::Text("Map saved.".to_string()),
error: false,
});
self.mapname = name.to_owned();
@@ -364,7 +367,7 @@ impl State {
self.clear();
import_state(self, &e)?;
self.out.push(PacketC::ServerMessage {
- message: Message::Text(format!("Map loaded.")),
+ message: Message::Text("Map loaded.".to_string()),
error: false,
});
self.mapname = name.to_owned();
diff --git a/server/src/commands.rs b/server/src/commands.rs
index a0702a05..bf392708 100644
--- a/server/src/commands.rs
+++ b/server/src/commands.rs
@@ -258,7 +258,7 @@ impl Server {
if let Some(board) = self.scoreboard.get(mapname) {
if text {
- let mut o = format!("Scoreboard for {}:\n", mapname);
+ let mut o = format!("Scoreboard for {mapname}:\n");
for (i, entry) in board.best.iter().take(5).enumerate() {
writeln!(
o,
diff --git a/server/src/entity/pedestrians.rs b/server/src/entity/pedestrians.rs
index cedb9e46..2ddbb920 100644
--- a/server/src/entity/pedestrians.rs
+++ b/server/src/entity/pedestrians.rs
@@ -47,7 +47,7 @@ impl Entity for Pedestrians {
},
class: PlayerClass::Customer,
id: Some(id),
- position: self.points.get(0).copied(),
+ position: self.points.first().copied(),
});
self.players.insert(id, 0);
self.cooldown += self.spawn_delay_distr.sample(&mut rng()).max(0.1);
diff --git a/server/src/entity/player_portal.rs b/server/src/entity/player_portal.rs
index c0faf767..96168faa 100644
--- a/server/src/entity/player_portal.rs
+++ b/server/src/entity/player_portal.rs
@@ -15,7 +15,7 @@
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
-use super::{EntityContext, Entity};
+use super::{Entity, EntityContext};
use anyhow::{anyhow, Result};
use hurrycurry_protocol::{glam::Vec2, PacketC};
diff --git a/server/src/entity/tram.rs b/server/src/entity/tram.rs
index d1d1effa..06e151d7 100644
--- a/server/src/entity/tram.rs
+++ b/server/src/entity/tram.rs
@@ -43,7 +43,7 @@ impl Entity for Tram {
character: self.character,
class: PlayerClass::Tram,
id: Some(id),
- position: self.points.get(0).copied(),
+ position: self.points.first().copied(),
});
self.ids.push(id);
}
diff --git a/server/src/server.rs b/server/src/server.rs
index 95cf182c..368a79a9 100644
--- a/server/src/server.rs
+++ b/server/src/server.rs
@@ -69,6 +69,7 @@ pub trait GameServerExt {
timer: Option<Duration>,
packet_out: &mut VecDeque<PacketC>,
);
+ #[allow(clippy::too_many_arguments)]
fn join_player(
&mut self,
id: PlayerID,
@@ -417,17 +418,15 @@ impl Server {
self.game.players_spatial_index.remove_entry(player);
// TODO if holding two, one is destroyed
- for item in p.items {
- if let Some(item) = item {
- let pos = p.movement.position.floor().as_ivec2();
- if let Some(tile) = self.game.tiles.get_mut(&pos) {
- if tile.item.is_none() {
- self.packet_out.push_back(PacketC::SetItem {
- location: ItemLocation::Tile(pos),
- item: Some(item.kind),
- });
- tile.item = Some(item);
- }
+ for item in p.items.into_iter().flatten() {
+ let pos = p.movement.position.floor().as_ivec2();
+ if let Some(tile) = self.game.tiles.get_mut(&pos) {
+ if tile.item.is_none() {
+ self.packet_out.push_back(PacketC::SetItem {
+ location: ItemLocation::Tile(pos),
+ item: Some(item.kind),
+ });
+ tile.item = Some(item);
}
}
}
diff --git a/server/src/state.rs b/server/src/state.rs
index a509a3bd..bd97266e 100644
--- a/server/src/state.rs
+++ b/server/src/state.rs
@@ -24,7 +24,7 @@ impl Server {
pub async fn tick_outer(&mut self, dt: f32) -> anyhow::Result<()> {
let should_pause = self.connections.iter().all(|c| c.1 .1);
if should_pause != self.paused {
- info!("Game paused: {}", should_pause);
+ info!("Game paused: {should_pause}");
self.paused = should_pause;
for p in self.game.players.keys() {
self.packet_out