pub name: Arc<InstanceName>,
pub gs: GameState,
pub ipieces: IPieces,
- pub ioccults: OccultIlks,
+ pub ioccults: IOccults,
pub clients: DenseSlotMap<ClientId, Client>,
pub iplayers: SecondarySlotMap<PlayerId, PlayerRecord>,
pub tokens_players: TokenRegistry<PlayerId>,
#[derive(Copy,Clone,Debug)]
pub struct ModifyingPieces(());
+#[derive(Debug,Serialize,Deserialize,Default)]
+pub struct IOccults {
+ pub ilks: OccultIlks,
+}
+
#[derive(Debug,Serialize,Deserialize,Default)]
#[serde(transparent)]
pub struct GPieces(pub(in crate::global) ActualGPieces);
fn load_game(accounts: &AccountsGuard,
games: &mut GamesGuard,
name: InstanceName) -> Option<InstanceRef> {
- let InstanceSaveAccesses::<String,ActualIPieces,OccultIlks>
+ let InstanceSaveAccesses::<String,ActualIPieces,IOccults>
{ tokens_players, mut ipieces, ioccults, mut aplayers, acl, links }
= match Self::load_something(&name, "a-") {
Ok(data) => data,
#[serde(transparent)]
pub struct OccultIlkName(pub String);
+#[derive(Debug,Serialize,Deserialize)]
+pub struct OccultIlkData {
+ pub p_occ: Box<dyn OccultedPieceTrait>,
+}
+
type Id = OccultIlkId;
type OId = OccultIlkOwningId;
type K = OccultIlkName;
-type V = Box<dyn OccultedPieceTrait>;
+type V = OccultIlkData;
type Refcount = u32;
#[derive(Debug,Serialize,Deserialize,Default)]