static void CreateCloneOf(Mobile m) { var characterClone = new CharacterClone(m); foreach (var itemOriginal in m.Items) { if (itemOriginal.Parent == m && itemOriginal.Layer != Layer.Mount) { characterClone.AddItem(new ItemClone(itemOriginal)); } } if (m.Mounted) { var baseMount = m.Mount as BaseMount; var etherealMount = m.Mount as EtherealMount; if (baseMount != null) { new MountClone(baseMount).Rider = characterClone; } else if (etherealMount != null) { new EtherealMountClone(etherealMount).Rider = characterClone; } } }
static void CreateCloneOf(Mobile m) { var characterClone = new CharacterClone(m); foreach (var itemOriginal in m.Items) if (itemOriginal.Parent == m && itemOriginal.Layer != Layer.Mount) characterClone.AddItem(new ItemClone(itemOriginal)); if (m.Mounted) { var baseMount = m.Mount as BaseMount; var etherealMount = m.Mount as EtherealMount; if (baseMount != null) new MountClone(baseMount).Rider = characterClone; else if (etherealMount != null) new EtherealMountClone(etherealMount).Rider = characterClone; } }