Aura.Channel.World.Entities.Creatures.CreatureConditions.GetExtraList C# (CSharp) Method

GetExtraList() public method

Returns new list of all extra values.
public GetExtraList ( ) : MabiDictionary>>.ICollection
return MabiDictionary>>.ICollection
		public ICollection<KeyValuePair<int, MabiDictionary>> GetExtraList()
		{
			if (_extraCache != null)
				return _extraCache;

			lock (_extra)
				return (_extraCache = _extra.ToArray());
		}

Usage Example

示例#1
0
		public static Packet AddConditions(this Packet packet, CreatureConditions conditions)
		{
			packet.PutULong((ulong)conditions.A);
			packet.PutULong((ulong)conditions.B);
			packet.PutULong((ulong)conditions.C);
			// [150100] New conditions list
			{
				packet.PutULong((ulong)conditions.D);
			}
			// [180300, NA169 (23.10.2013)] New conditions list
			{
				packet.PutULong((ulong)conditions.E);
			}
			// [190100, NA201 (14.02.2015)] New conditions list
			{
				packet.PutULong((ulong)conditions.F);
			}
			// [200100, NA229 (2016-06-16)] New conditions list
			{
				packet.PutULong((ulong)conditions.G);
			}

			// List of additional values for the conditions
			var extra = conditions.GetExtraList();
			packet.PutInt(extra.Count);
			foreach (var e in extra)
			{
				packet.PutInt(e.Key);
				packet.PutString(e.Value.ToString());
			}

			// [180100] ? (old: Zero Talent?)
			{
				// This might not be part of the conditions, but we need that
				// long in both cases (5209 and update).
				packet.PutLong(0);
			}

			return packet;
		}