summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XMainClient/KKSG/StepSyncInfo.cs
blob: 65ebbe0bc950bf03532462d5dd544b8c8421abe4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Xml.Serialization;
using ProtoBuf;

namespace KKSG
{
	[ProtoContract(Name = "StepSyncInfo")]
	[Serializable]
	public class StepSyncInfo : IExtensible
	{
		[ProtoMember(1, Name = "DataList", DataFormat = DataFormat.Default)]
		public List<StepSyncData> DataList
		{
			get
			{
				return this._DataList;
			}
		}

		[ProtoMember(2, IsRequired = false, Name = "StepFrame", DataFormat = DataFormat.TwosComplement)]
		public uint StepFrame
		{
			get
			{
				return this._StepFrame ?? 0u;
			}
			set
			{
				this._StepFrame = new uint?(value);
			}
		}

		[XmlIgnore]
		[Browsable(false)]
		public bool StepFrameSpecified
		{
			get
			{
				return this._StepFrame != null;
			}
			set
			{
				bool flag = value == (this._StepFrame == null);
				if (flag)
				{
					this._StepFrame = (value ? new uint?(this.StepFrame) : null);
				}
			}
		}

		private readonly List<StepSyncData> _DataList = new List<StepSyncData>();

		private uint? _StepFrame;

		private IExtension extensionObject;

		private bool ShouldSerializeStepFrame()
		{
			return this.StepFrameSpecified;
		}

		private void ResetStepFrame()
		{
			this.StepFrameSpecified = false;
		}

		IExtension IExtensible.GetExtensionObject(bool createIfMissing)
		{
			return Extensible.GetExtensionObject(ref this.extensionObject, createIfMissing);
		}
	}
}