public void Apply(ViewPacket packet) { string key = packet.FieldPath.Split('.').Last(); switch (packet.PacketType) { case ViewPacket.ViewPacketType.AddCollectionItem: if (key == nameof(Stats)) { ((IEventCollection <string, ISyncField>) this).Add(key, packet.Data.ToObject <StatInstance> ()); } else if (key == nameof(States)) { ((IEventCollection <string, ISyncField>) this).Add(key, packet.Data.ToObject <StateInstance> ()); } break; case ViewPacket.ViewPacketType.RemoveCollectionItem: ((IEventCollection <string, ISyncField>) this).Remove(key); break; } }
public void Apply(ViewPacket packet) { switch (packet.PacketType) { case ViewPacket.ViewPacketType.AddCollectionItem: Add((TKey)(object)packet.FieldPath.Split('.').Last(), packet.Data.ToObject <TValue> ()); break; case ViewPacket.ViewPacketType.RemoveCollectionItem: Remove((TKey)(object)packet.FieldPath.Split('.').Last()); break; } }
public void Apply(ViewPacket packet) { Value = packet.Data.ToObject <float> (); }