private void CloneProperties(object aClone, Articy.Unity.ArticyObject aFirstClassParent)
 {
     Articy.Side_Effects.Templates.DefaultMainCharacterTemplateTemplate newClone = ((Articy.Side_Effects.Templates.DefaultMainCharacterTemplateTemplate)(aClone));
     if ((DefaultExtendedCharacterFeature != null))
     {
         newClone.DefaultExtendedCharacterFeature = ((Articy.Side_Effects.Features.DefaultExtendedCharacterFeatureFeature)(DefaultExtendedCharacterFeature.CloneObject(newClone, aFirstClassParent)));
     }
     if ((DefaultBasicCharacterFeature != null))
     {
         newClone.DefaultBasicCharacterFeature = ((Articy.Side_Effects.Features.DefaultBasicCharacterFeatureFeature)(DefaultBasicCharacterFeature.CloneObject(newClone, aFirstClassParent)));
     }
     newClone.OwnerId = OwnerId;
 }
 public object CloneObject(object aParent, Articy.Unity.ArticyObject aFirstClassParent)
 {
     Articy.Side_Effects.Templates.DefaultMainCharacterTemplateTemplate clone = new Articy.Side_Effects.Templates.DefaultMainCharacterTemplateTemplate();
     CloneProperties(clone, aFirstClassParent);
     return(clone);
 }