aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--server/protocol/src/lib.rs1
-rw-r--r--server/src/entity/tutorial.rs6
-rw-r--r--server/src/server.rs5
-rw-r--r--test-client/protocol.ts2
4 files changed, 9 insertions, 5 deletions
diff --git a/server/protocol/src/lib.rs b/server/protocol/src/lib.rs
index 4ec2ec37..e7b3d483 100644
--- a/server/protocol/src/lib.rs
+++ b/server/protocol/src/lib.rs
@@ -241,6 +241,7 @@ pub enum PacketC {
effects: HashSet<String>,
},
TutorialEnded {
+ player: PlayerID,
item: ItemIndex,
},
diff --git a/server/src/entity/tutorial.rs b/server/src/entity/tutorial.rs
index 5ec1281d..64bdaf7d 100644
--- a/server/src/entity/tutorial.rs
+++ b/server/src/entity/tutorial.rs
@@ -59,8 +59,10 @@ impl Entity for Tutorial {
self.delete_timer -= TARGET_DT;
if self.delete_timer <= 0. {
hint = None;
- c.packet_out
- .push_back(PacketC::TutorialEnded { item: self.target });
+ c.packet_out.push_back(PacketC::TutorialEnded {
+ item: self.target,
+ player: self.player,
+ });
} else {
hint = Some((None, trm!("s.tutorial.finished")));
}
diff --git a/server/src/server.rs b/server/src/server.rs
index c9961412..6350d635 100644
--- a/server/src/server.rs
+++ b/server/src/server.rs
@@ -39,6 +39,9 @@ use std::{
use tokio::sync::broadcast::Sender;
pub struct Server {
+ pub tx: Sender<PacketC>,
+ pub connections: HashMap<ConnectionID, HashSet<PlayerID>>,
+
pub game: Game,
pub data: Arc<Serverdata>,
@@ -49,8 +52,6 @@ pub struct Server {
pub last_movement_update: HashMap<PlayerID, Instant>,
pub index: DataIndex,
pub packet_out: VecDeque<PacketC>,
- pub tx: Sender<PacketC>,
- pub connections: HashMap<ConnectionID, HashSet<PlayerID>>,
pub scoreboard: ScoreboardStore,
pub gamedata_index: GamedataIndex,
}
diff --git a/test-client/protocol.ts b/test-client/protocol.ts
index 1c7e30cd..8f20176f 100644
--- a/test-client/protocol.ts
+++ b/test-client/protocol.ts
@@ -64,7 +64,7 @@ export type PacketC =
| { type: "score" } & Score // Supplies information for score OSD
| { type: "menu" } & Menu // Open a menu on the client-side
| { type: "environment", effects: string[] }
- | { type: "tutorial_ended", item: ItemIndex }
+ | { type: "tutorial_ended", item: ItemIndex, player: PlayerID }
| { type: "set_ingame", state: boolean, lobby: boolean } // Set to false when entering the game or switching maps
export type Menu =