예제 #1
0
		private static void ReadIndex(
			GenericReader idx,
			out Type type,
			out Serial serial,
			out Serial parent,
			out long index,
			out long length)
		{
			type = idx.ReadType();
			serial = idx.ReadInt();
			parent = idx.ReadInt();
			index = idx.ReadLong();
			length = idx.ReadLong();
		}
예제 #2
0
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);

			int version = reader.GetVersion();

			switch (version)
			{
				case 1:
					Desc = reader.ReadString();
					goto case 0;
				case 0:
					{
						Type = reader.ReadType();
						Name = reader.ReadString();
						CanIgnore = reader.ReadBool();

						States = reader.ReadBlockDictionary(
							r =>
							{
								var state = new NotifySettingsState(this, r);

								return new KeyValuePair<PlayerMobile, NotifySettingsState>(state.Owner, state);
							});
					}
					break;
			}
		}
예제 #3
0
파일: Part.cs 프로젝트: greeduomacro/RuneUO
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);

			int version = reader.GetVersion();

			switch (version)
			{
				case 0:
					{
						Name = reader.ReadString();
						Display = reader.ReadBool();
						DisplaySet = reader.ReadBool();
						TypeOf = reader.ReadType();
						IncludeChildTypes = reader.ReadBool();
					}
					break;
			}
		}
예제 #4
0
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);

			int version = reader.GetVersion();

			switch (version)
			{
				case 3:
					Level = reader.ReadFlag<SecureLevel>();
					goto case 2;
				case 2:
					RemoveLocked = reader.ReadBool();
					goto case 1;
				case 1:
					{
						EditLocked = reader.ReadBool();
						AddLocked = reader.ReadBool();
						CloneEntryChargeCost = reader.ReadInt();

						ChargeTypes = reader.ReadDictionary(
							() =>
							{
								Type k = reader.ReadType();
								int v = reader.ReadInt();
								return new KeyValuePair<Type, int>(k, v);
							});
					}
					goto case 0;
				case 0:
					{
						Charges = reader.ReadInt();
						RecallChargeCost = reader.ReadInt();
						GateChargeCost = reader.ReadInt();
						_Descripton = reader.ReadString();
						Categories = new RuneCodexCategoryGrid(reader);
					}
					break;
			}

			if (version > 0)
			{
				return;
			}

			Charges = 1000;
			CloneEntryChargeCost = 5;
			RecallChargeCost = 1;
			GateChargeCost = 2;
			ChargeTypes = new Dictionary<Type, int>
			{
				{typeof(Gold), 100}
			};
		}
예제 #5
0
		public override void Deserialize(GenericReader reader)
		{
			/*string vncVersion = reader.ReadString();*/
			reader.ReadString();

			base.Deserialize(reader);

			var version = reader.GetVersion();

			switch (version)
			{
				case 0:
					_ModuleType = reader.ReadType();
					break;
			}
		}
예제 #6
0
		private static bool Deserialize(GenericReader reader)
		{
			reader.GetVersion();

			reader.ReadBlockDictionary(
				() =>
				{
					var k = reader.ReadType();
					var v = EnsureSettings(k);

					if (v != null)
					{
						v.Deserialize(reader);
					}

					return new KeyValuePair<Type, NotifySettings>(k, v);
				},
				Settings);

			return true;
		}