chiark / gitweb /
hidden prep: Provide GameOccults in GameState
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 31 Jan 2021 18:48:43 +0000 (18:48 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 31 Jan 2021 22:21:44 +0000 (22:21 +0000)
This is currently empty and unused.  It's a placeholder which we are
going to plumb through everywhere.

NFC but breaks the savefile format.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
daemon/cmdlistener.rs
src/gamestate.rs
src/global.rs
src/hidden.rs
src/imports.rs

index 21f11857fb1e615c5c1d4c5d11a5d19daa079840..c6969042dbb25d34fc457163d896776c7cf3b87a 100644 (file)
@@ -160,6 +160,7 @@ fn execute(cs: &mut CommandStream, cmd: MgmtCommand) -> MgmtResponse {
         log: default(),
         gen: Generation(0),
         max_z: default(),
+        occults: default(),
       };
 
       let acl = default();
index 28ef8e71df26772bedc91b8a8099ee92724d9574..b4da878cca6b1e3bc8322ca016b941a9e8403cea 100644 (file)
@@ -62,6 +62,7 @@ pub struct GameState {
   pub log: VecDeque<(Generation, Arc<CommittedLogEntry>)>,
   pub max_z: ZCoord,
   pub players: DenseSlotMap<PlayerId, GPlayerState>,
+  pub occults: GameOccults,
 }
 
 #[derive(Debug,Serialize,Deserialize,Clone)]
index 3ee067f358dfc35505ee88cbdd7006ace1352396..7adfea3625f0bcfb6fb74443f442e2ff475c3c92 100644 (file)
@@ -637,6 +637,7 @@ impl<'ig> InstanceGuard<'ig> {
       // These have special handling
       log: default(),
       pieces: default(),
+      occults: default(),
     };
 
     let held_by_old = |p: &PieceState| if_chain! {
@@ -670,6 +671,7 @@ impl<'ig> InstanceGuard<'ig> {
     let mut swap_things = |ig: &mut InstanceGuard| {
       mem::swap(&mut ig.c.g.gs.log,    &mut gs.log   );
       mem::swap(&mut ig.c.g.gs.pieces, &mut gs.pieces);
+      mem::swap(&mut ig.c.g.gs.occults,&mut gs.occults);
       mem::swap(&mut ig.c.g.gs,        &mut gs,   );
     };
     swap_things(self);
index 72f99b2027db33f644a0199612df52049e37cd73..f47609100247c3741987ece2177015ec0b026b01 100644 (file)
@@ -50,3 +50,7 @@ impl PerPlayerIdMap {
   }
 }
 
+#[derive(Clone,Debug,Default,Serialize,Deserialize)]
+pub struct GameOccults {
+  // todo
+}
index bbdaeb7d2d94749dffb95c38c9028d29e9bdad47..e04dbde1830b252009e98aee657de6c97daf35b1 100644 (file)
@@ -90,7 +90,7 @@ pub use crate::debugreader::DebugReader;
 pub use crate::error::*;
 pub use crate::gamestate::*;
 pub use crate::global::*;
-pub use crate::hidden::PerPlayerIdMap;
+pub use crate::hidden::*;
 pub use crate::keydata::*;
 pub use crate::lens::*;
 pub use crate::mgmtchannel::*;