public static CastBarState EnsureState(PlayerMobile user) { if (user == null) { return(null); } var o = States.GetValue(user); if (user.Deleted) { States.Remove(user); return(null); } if (o == null) { States[user] = o = new CastBarState(); } return(o); }
private static bool Deserialize(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 1: { reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = new CastBarState(r); return(new KeyValuePair <PlayerMobile, CastBarState>(k, v)); }, States); } break; case 0: { reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = new CastBarState(r.ReadBool(), new Point(r.ReadInt(), r.ReadInt())); return(new KeyValuePair <PlayerMobile, CastBarState>(k, v)); }, States); } break; } return(true); }