diff options
author | metamuffin <metamuffin@disroot.org> | 2025-06-03 20:54:33 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-06-03 20:54:33 +0200 |
commit | e0201e044482b1a577dac7574bb56d44a20bf011 (patch) | |
tree | 5cfc6a224ef349317e9213d4789ce9a2b3f862e8 /server | |
parent | d279baccdbaf37ae4410af1875e98597fe0b5565 (diff) | |
download | hurrycurry-e0201e044482b1a577dac7574bb56d44a20bf011.tar hurrycurry-e0201e044482b1a577dac7574bb56d44a20bf011.tar.bz2 hurrycurry-e0201e044482b1a577dac7574bb56d44a20bf011.tar.zst |
add tram player class
Diffstat (limited to 'server')
-rw-r--r-- | server/protocol/src/lib.rs | 1 | ||||
-rw-r--r-- | server/src/entity/tram.rs | 2 | ||||
-rw-r--r-- | server/src/server.rs | 1 |
3 files changed, 3 insertions, 1 deletions
diff --git a/server/protocol/src/lib.rs b/server/protocol/src/lib.rs index ef28dcca..90c565ba 100644 --- a/server/protocol/src/lib.rs +++ b/server/protocol/src/lib.rs @@ -193,6 +193,7 @@ pub enum PlayerClass { Chef, Bot, Customer, + Tram, } impl PlayerClass { pub fn is_cheflike(&self) -> bool { diff --git a/server/src/entity/tram.rs b/server/src/entity/tram.rs index 76ce6dbd..706c139f 100644 --- a/server/src/entity/tram.rs +++ b/server/src/entity/tram.rs @@ -41,7 +41,7 @@ impl Entity for Tram { c.packet_in.push_back(PacketS::Join { name: format!("Tram {i}"), character: self.character, - class: PlayerClass::Bot, + class: PlayerClass::Tram, id: Some(id), position: None, }); diff --git a/server/src/server.rs b/server/src/server.rs index c30f54a4..98a9826c 100644 --- a/server/src/server.rs +++ b/server/src/server.rs @@ -254,6 +254,7 @@ impl GameServerExt for Game { let position = custom_position.unwrap_or(match class { PlayerClass::Customer => serverdata.customer_spawn, PlayerClass::Bot | PlayerClass::Chef => serverdata.chef_spawn, + PlayerClass::Tram => Vec2::ZERO, // TODO should always have custom location }) + (Vec2::new(random(), random()) - 0.5); self.players.insert( id, |