Exemple #1
0
 public PlayerOptions(HairColor hairColor, HairLength hairLength, BodyColor bodyColor, TailColor tailColor)
 {
     this.hairColor  = hairColor;
     this.hairLength = hairLength;
     this.bodyColor  = bodyColor;
     this.tailColor  = tailColor;
 }
Exemple #2
0
 public HairLengthImage(HairAppBl.Interfaces.IHairBl hairbl, HairLength hl)
 {
     mHairbl         = hairbl;
     HairLength      = hl;
     HeightRequest   = 70;
     BackgroundColor = Color.Transparent;
 }
 private void AddToList(DataPoint key, HairLength hl)
 {
     if (mPointHairLength.ContainsKey(key))
     {
         return;
     }
     mPointHairLength.Add(key, hl);
 }
Exemple #4
0
 private void FillData(HairLength hl)
 {
     mDateLabel.Text        = hl.Day.ToString("dd MMMM yyyy");
     mBackLengthLabel.Text  = $"{hl.Back}cm";
     mSideLengthLabel.Text  = $"{hl.Side}cm";
     mFRontLengthLabel.Text = $"{hl.Front}cm";
     mCurrentHairLength     = hl;
 }
        public List <DataPoint> GetSelectPoints(HairLength hl)
        {
            List <DataPoint> points = new List <DataPoint>();

            points.Add(new DataPoint(DateTimeAxis.ToDouble(hl.Day), hl.Back));
            points.Add(new DataPoint(DateTimeAxis.ToDouble(hl.Day), hl.Side));
            points.Add(new DataPoint(DateTimeAxis.ToDouble(hl.Day), hl.Front));
            return(points);
        }
Exemple #6
0
 public JsonResult AddHairLenght(HairLength model)
 {
     using (AppContext context = AppContext.Create())
     {
         context.HairLengths.Add(model);
         context.SaveChanges();
         return(Json(true));
     }
 }
Exemple #7
0
 private void SelectAllPoints(HairLength hl)
 {
     mModel.Annotations.Clear();
     foreach (var selection in mController.GetSelectPoints(hl))
     {
         mModel.Annotations.Add(SetSelectPoint(selection));
     }
     mModel.InvalidatePlot(false);
 }
        public HairLengthControl(HairAppBl.Interfaces.IHairBl hairbl, HairLength hl = null) : this()
        {
            if (hl != null)
            {
                mHairLength = hl;
            }

            mHairbl          = hairbl;
            mDatePicker      = new DatePicker();
            mDatePicker.Date = ScheduleController.GetToday();
            mBackEntry       = GetEntry();
            mSideEntry       = GetEntry();
            mFrontEntry      = GetEntry();
            var takePhoto = new Button {
                Text = AppResources.TakePic
            };

            takePhoto.Clicked += TakePhoto_Clicked;

            mPicture = new Image {
                HeightRequest = 100, IsVisible = false
            };

            if (hl != null)
            {
                mBackEntry.Text  = hl.Back.ToString();
                mSideEntry.Text  = hl.Side.ToString();
                mFrontEntry.Text = hl.Front.ToString();
                if (!string.IsNullOrEmpty(hl.Picture))
                {
                    mPicture.Source    = hl.Picture;
                    mCurrentPhoto      = hl.Picture;
                    mPicture.IsVisible = true;
                }
                mDatePicker.Date = hl.Day;
            }


            Children.Add(mDatePicker);
            Children.Add(GetRow(mBackEntry, AppResources.BackLenght));
            Children.Add(GetRow(mSideEntry, AppResources.SideLenght));
            Children.Add(GetRow(mFrontEntry, AppResources.FrontLength));
            Children.Add(mPicture);
            Children.Add(takePhoto);
        }
 public HairLengthControl()
 {
     mHairLength = new HairLength();
 }
 public void Cut(HairLength newLength)
 {
     HairLength = HairLength.CompletelyBald;
 }
Exemple #11
0
 public HairCare(HairLength hairLength) : base(hairLength)
 {
 }
Exemple #12
0
 public HairCut(HairLength hairLength) : base(hairLength)
 {
 }
Exemple #13
0
        public override void ReadDataXML(XElement ele, ElderScrollsPlugin master)
        {
            XElement subEle;

            if (ele.TryPathTo("EditorID", false, out subEle))
            {
                if (EditorID == null)
                {
                    EditorID = new SimpleSubrecord <String>();
                }

                EditorID.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("ObjectBounds", false, out subEle))
            {
                if (ObjectBounds == null)
                {
                    ObjectBounds = new ObjectBounds();
                }

                ObjectBounds.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Name", false, out subEle))
            {
                if (Name == null)
                {
                    Name = new SimpleSubrecord <String>();
                }

                Name.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Model", false, out subEle))
            {
                if (Model == null)
                {
                    Model = new Model();
                }

                Model.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("BaseStats", false, out subEle))
            {
                if (BaseStats == null)
                {
                    BaseStats = new NPCBaseStats();
                }

                BaseStats.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Factions", false, out subEle))
            {
                if (Factions == null)
                {
                    Factions = new List <FactionMembership>();
                }

                foreach (XElement e in subEle.Elements())
                {
                    FactionMembership tempSNAM = new FactionMembership();
                    tempSNAM.ReadXML(e, master);
                    Factions.Add(tempSNAM);
                }
            }
            if (ele.TryPathTo("DeathItem", false, out subEle))
            {
                if (DeathItem == null)
                {
                    DeathItem = new RecordReference();
                }

                DeathItem.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("VoiceType", false, out subEle))
            {
                if (VoiceType == null)
                {
                    VoiceType = new RecordReference();
                }

                VoiceType.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Template", false, out subEle))
            {
                if (Template == null)
                {
                    Template = new RecordReference();
                }

                Template.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Race", false, out subEle))
            {
                if (Race == null)
                {
                    Race = new RecordReference();
                }

                Race.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("ActorEffects", false, out subEle))
            {
                if (ActorEffects == null)
                {
                    ActorEffects = new List <RecordReference>();
                }

                foreach (XElement e in subEle.Elements())
                {
                    RecordReference tempSPLO = new RecordReference();
                    tempSPLO.ReadXML(e, master);
                    ActorEffects.Add(tempSPLO);
                }
            }
            if (ele.TryPathTo("Unarmed/AttackEffect", false, out subEle))
            {
                if (UnarmedAttackEffect == null)
                {
                    UnarmedAttackEffect = new RecordReference();
                }

                UnarmedAttackEffect.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Unarmed/AttackAnimation", false, out subEle))
            {
                if (UnarmedAttackAnimation == null)
                {
                    UnarmedAttackAnimation = new SimpleSubrecord <UInt16>();
                }

                UnarmedAttackAnimation.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Destructable", false, out subEle))
            {
                if (Destructable == null)
                {
                    Destructable = new Destructable();
                }

                Destructable.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Script", false, out subEle))
            {
                if (Script == null)
                {
                    Script = new RecordReference();
                }

                Script.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Contents", false, out subEle))
            {
                if (Contents == null)
                {
                    Contents = new List <InventoryItem>();
                }

                foreach (XElement e in subEle.Elements())
                {
                    InventoryItem tempCNTO = new InventoryItem();
                    tempCNTO.ReadXML(e, master);
                    Contents.Add(tempCNTO);
                }
            }
            if (ele.TryPathTo("AIData", false, out subEle))
            {
                if (AIData == null)
                {
                    AIData = new AIData();
                }

                AIData.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Packages", false, out subEle))
            {
                if (Packages == null)
                {
                    Packages = new List <RecordReference>();
                }

                foreach (XElement e in subEle.Elements())
                {
                    RecordReference tempPKID = new RecordReference();
                    tempPKID.ReadXML(e, master);
                    Packages.Add(tempPKID);
                }
            }
            if (ele.TryPathTo("Class", false, out subEle))
            {
                if (Class == null)
                {
                    Class = new RecordReference();
                }

                Class.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Data", false, out subEle))
            {
                if (Data == null)
                {
                    Data = new NPCData();
                }

                Data.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Skills", false, out subEle))
            {
                if (Skills == null)
                {
                    Skills = new NPCSkills();
                }

                Skills.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("HeadParts", false, out subEle))
            {
                if (HeadParts == null)
                {
                    HeadParts = new List <RecordReference>();
                }

                foreach (XElement e in subEle.Elements())
                {
                    RecordReference tempPNAM = new RecordReference();
                    tempPNAM.ReadXML(e, master);
                    HeadParts.Add(tempPNAM);
                }
            }
            if (ele.TryPathTo("Hair/Type", false, out subEle))
            {
                if (HairType == null)
                {
                    HairType = new RecordReference();
                }

                HairType.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Hair/Length", false, out subEle))
            {
                if (HairLength == null)
                {
                    HairLength = new SimpleSubrecord <Single>();
                }

                HairLength.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Eyes", false, out subEle))
            {
                if (Eyes == null)
                {
                    Eyes = new RecordReference();
                }

                Eyes.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Hair/Color", false, out subEle))
            {
                if (HairColor == null)
                {
                    HairColor = new SimpleSubrecord <Color>();
                }

                HairColor.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("CombatStyle", false, out subEle))
            {
                if (CombatStyle == null)
                {
                    CombatStyle = new RecordReference();
                }

                CombatStyle.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("ImpactMaterialType", false, out subEle))
            {
                if (ImpactMaterialType == null)
                {
                    ImpactMaterialType = new SimpleSubrecord <MaterialTypeUInt>();
                }

                ImpactMaterialType.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("FaceGen/Geometry/Symmetric", false, out subEle))
            {
                if (FaceGenGeometrySymmetric == null)
                {
                    FaceGenGeometrySymmetric = new SimpleSubrecord <Byte[]>();
                }

                FaceGenGeometrySymmetric.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("FaceGen/Geometry/Asymmetric", false, out subEle))
            {
                if (FaceGenGeometryAsymmetric == null)
                {
                    FaceGenGeometryAsymmetric = new SimpleSubrecord <Byte[]>();
                }

                FaceGenGeometryAsymmetric.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("FaceGen/Texture", false, out subEle))
            {
                if (FaceGenTexture == null)
                {
                    FaceGenTexture = new SimpleSubrecord <Byte[]>();
                }

                FaceGenTexture.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Unknown", false, out subEle))
            {
                if (Unknown == null)
                {
                    Unknown = new SimpleSubrecord <UInt16>();
                }

                Unknown.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Height", false, out subEle))
            {
                if (Height == null)
                {
                    Height = new SimpleSubrecord <Single>();
                }

                Height.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Weight", false, out subEle))
            {
                if (Weight == null)
                {
                    Weight = new SimpleSubrecord <Single>();
                }

                Weight.ReadXML(subEle, master);
            }
        }
Exemple #14
0
        public override void WriteDataXML(XElement ele, ElderScrollsPlugin master)
        {
            XElement subEle;

            if (EditorID != null)
            {
                ele.TryPathTo("EditorID", true, out subEle);
                EditorID.WriteXML(subEle, master);
            }
            if (ObjectBounds != null)
            {
                ele.TryPathTo("ObjectBounds", true, out subEle);
                ObjectBounds.WriteXML(subEle, master);
            }
            if (Name != null)
            {
                ele.TryPathTo("Name", true, out subEle);
                Name.WriteXML(subEle, master);
            }
            if (Model != null)
            {
                ele.TryPathTo("Model", true, out subEle);
                Model.WriteXML(subEle, master);
            }
            if (BaseStats != null)
            {
                ele.TryPathTo("BaseStats", true, out subEle);
                BaseStats.WriteXML(subEle, master);
            }
            if (Factions != null)
            {
                ele.TryPathTo("Factions", true, out subEle);
                List <string> xmlNames = new List <string> {
                    "Faction"
                };
                int i = 0;
                Factions.Sort();
                foreach (var entry in Factions)
                {
                    i = i % xmlNames.Count();
                    XElement newEle = new XElement(xmlNames[i]);
                    entry.WriteXML(newEle, master);
                    subEle.Add(newEle);
                    i++;
                }
            }
            if (DeathItem != null)
            {
                ele.TryPathTo("DeathItem", true, out subEle);
                DeathItem.WriteXML(subEle, master);
            }
            if (VoiceType != null)
            {
                ele.TryPathTo("VoiceType", true, out subEle);
                VoiceType.WriteXML(subEle, master);
            }
            if (Template != null)
            {
                ele.TryPathTo("Template", true, out subEle);
                Template.WriteXML(subEle, master);
            }
            if (Race != null)
            {
                ele.TryPathTo("Race", true, out subEle);
                Race.WriteXML(subEle, master);
            }
            if (ActorEffects != null)
            {
                ele.TryPathTo("ActorEffects", true, out subEle);
                List <string> xmlNames = new List <string> {
                    "ActorEffect"
                };
                int i = 0;
                ActorEffects.Sort();
                foreach (var entry in ActorEffects)
                {
                    i = i % xmlNames.Count();
                    XElement newEle = new XElement(xmlNames[i]);
                    entry.WriteXML(newEle, master);
                    subEle.Add(newEle);
                    i++;
                }
            }
            if (UnarmedAttackEffect != null)
            {
                ele.TryPathTo("Unarmed/AttackEffect", true, out subEle);
                UnarmedAttackEffect.WriteXML(subEle, master);
            }
            if (UnarmedAttackAnimation != null)
            {
                ele.TryPathTo("Unarmed/AttackAnimation", true, out subEle);
                UnarmedAttackAnimation.WriteXML(subEle, master);
            }
            if (Destructable != null)
            {
                ele.TryPathTo("Destructable", true, out subEle);
                Destructable.WriteXML(subEle, master);
            }
            if (Script != null)
            {
                ele.TryPathTo("Script", true, out subEle);
                Script.WriteXML(subEle, master);
            }
            if (Contents != null)
            {
                ele.TryPathTo("Contents", true, out subEle);
                List <string> xmlNames = new List <string> {
                    "Item"
                };
                int i = 0;
                Contents.Sort();
                foreach (var entry in Contents)
                {
                    i = i % xmlNames.Count();
                    XElement newEle = new XElement(xmlNames[i]);
                    entry.WriteXML(newEle, master);
                    subEle.Add(newEle);
                    i++;
                }
            }
            if (AIData != null)
            {
                ele.TryPathTo("AIData", true, out subEle);
                AIData.WriteXML(subEle, master);
            }
            if (Packages != null)
            {
                ele.TryPathTo("Packages", true, out subEle);
                List <string> xmlNames = new List <string> {
                    "Package"
                };
                int i = 0;
                foreach (var entry in Packages)
                {
                    i = i % xmlNames.Count();
                    XElement newEle = new XElement(xmlNames[i]);
                    entry.WriteXML(newEle, master);
                    subEle.Add(newEle);
                    i++;
                }
            }
            if (Class != null)
            {
                ele.TryPathTo("Class", true, out subEle);
                Class.WriteXML(subEle, master);
            }
            if (Data != null)
            {
                ele.TryPathTo("Data", true, out subEle);
                Data.WriteXML(subEle, master);
            }
            if (Skills != null)
            {
                ele.TryPathTo("Skills", true, out subEle);
                Skills.WriteXML(subEle, master);
            }
            if (HeadParts != null)
            {
                ele.TryPathTo("HeadParts", true, out subEle);
                List <string> xmlNames = new List <string> {
                    "HeadPart"
                };
                int i = 0;
                HeadParts.Sort();
                foreach (var entry in HeadParts)
                {
                    i = i % xmlNames.Count();
                    XElement newEle = new XElement(xmlNames[i]);
                    entry.WriteXML(newEle, master);
                    subEle.Add(newEle);
                    i++;
                }
            }
            if (HairType != null)
            {
                ele.TryPathTo("Hair/Type", true, out subEle);
                HairType.WriteXML(subEle, master);
            }
            if (HairLength != null)
            {
                ele.TryPathTo("Hair/Length", true, out subEle);
                HairLength.WriteXML(subEle, master);
            }
            if (Eyes != null)
            {
                ele.TryPathTo("Eyes", true, out subEle);
                Eyes.WriteXML(subEle, master);
            }
            if (HairColor != null)
            {
                ele.TryPathTo("Hair/Color", true, out subEle);
                HairColor.WriteXML(subEle, master);
            }
            if (CombatStyle != null)
            {
                ele.TryPathTo("CombatStyle", true, out subEle);
                CombatStyle.WriteXML(subEle, master);
            }
            if (ImpactMaterialType != null)
            {
                ele.TryPathTo("ImpactMaterialType", true, out subEle);
                ImpactMaterialType.WriteXML(subEle, master);
            }
            if (FaceGenGeometrySymmetric != null)
            {
                ele.TryPathTo("FaceGen/Geometry/Symmetric", true, out subEle);
                FaceGenGeometrySymmetric.WriteXML(subEle, master);
            }
            if (FaceGenGeometryAsymmetric != null)
            {
                ele.TryPathTo("FaceGen/Geometry/Asymmetric", true, out subEle);
                FaceGenGeometryAsymmetric.WriteXML(subEle, master);
            }
            if (FaceGenTexture != null)
            {
                ele.TryPathTo("FaceGen/Texture", true, out subEle);
                FaceGenTexture.WriteXML(subEle, master);
            }
            if (Unknown != null)
            {
                ele.TryPathTo("Unknown", true, out subEle);
                Unknown.WriteXML(subEle, master);
            }
            if (Height != null)
            {
                ele.TryPathTo("Height", true, out subEle);
                Height.WriteXML(subEle, master);
            }
            if (Weight != null)
            {
                ele.TryPathTo("Weight", true, out subEle);
                Weight.WriteXML(subEle, master);
            }
        }
Exemple #15
0
 public override void WriteData(ESPWriter writer)
 {
     if (EditorID != null)
     {
         EditorID.WriteBinary(writer);
     }
     if (ObjectBounds != null)
     {
         ObjectBounds.WriteBinary(writer);
     }
     if (Name != null)
     {
         Name.WriteBinary(writer);
     }
     if (Model != null)
     {
         Model.WriteBinary(writer);
     }
     if (BaseStats != null)
     {
         BaseStats.WriteBinary(writer);
     }
     if (Factions != null)
     {
         Factions.Sort();
         foreach (var item in Factions)
         {
             item.WriteBinary(writer);
         }
     }
     if (DeathItem != null)
     {
         DeathItem.WriteBinary(writer);
     }
     if (VoiceType != null)
     {
         VoiceType.WriteBinary(writer);
     }
     if (Template != null)
     {
         Template.WriteBinary(writer);
     }
     if (Race != null)
     {
         Race.WriteBinary(writer);
     }
     if (ActorEffects != null)
     {
         ActorEffects.Sort();
         foreach (var item in ActorEffects)
         {
             item.WriteBinary(writer);
         }
     }
     if (UnarmedAttackEffect != null)
     {
         UnarmedAttackEffect.WriteBinary(writer);
     }
     if (UnarmedAttackAnimation != null)
     {
         UnarmedAttackAnimation.WriteBinary(writer);
     }
     if (Destructable != null)
     {
         Destructable.WriteBinary(writer);
     }
     if (Script != null)
     {
         Script.WriteBinary(writer);
     }
     if (Contents != null)
     {
         Contents.Sort();
         foreach (var item in Contents)
         {
             item.WriteBinary(writer);
         }
     }
     if (AIData != null)
     {
         AIData.WriteBinary(writer);
     }
     if (Packages != null)
     {
         foreach (var item in Packages)
         {
             item.WriteBinary(writer);
         }
     }
     if (Class != null)
     {
         Class.WriteBinary(writer);
     }
     if (Data != null)
     {
         Data.WriteBinary(writer);
     }
     if (Skills != null)
     {
         Skills.WriteBinary(writer);
     }
     if (HeadParts != null)
     {
         HeadParts.Sort();
         foreach (var item in HeadParts)
         {
             item.WriteBinary(writer);
         }
     }
     if (HairType != null)
     {
         HairType.WriteBinary(writer);
     }
     if (HairLength != null)
     {
         HairLength.WriteBinary(writer);
     }
     if (Eyes != null)
     {
         Eyes.WriteBinary(writer);
     }
     if (HairColor != null)
     {
         HairColor.WriteBinary(writer);
     }
     if (CombatStyle != null)
     {
         CombatStyle.WriteBinary(writer);
     }
     if (ImpactMaterialType != null)
     {
         ImpactMaterialType.WriteBinary(writer);
     }
     if (FaceGenGeometrySymmetric != null)
     {
         FaceGenGeometrySymmetric.WriteBinary(writer);
     }
     if (FaceGenGeometryAsymmetric != null)
     {
         FaceGenGeometryAsymmetric.WriteBinary(writer);
     }
     if (FaceGenTexture != null)
     {
         FaceGenTexture.WriteBinary(writer);
     }
     if (Unknown != null)
     {
         Unknown.WriteBinary(writer);
     }
     if (Height != null)
     {
         Height.WriteBinary(writer);
     }
     if (Weight != null)
     {
         Weight.WriteBinary(writer);
     }
 }
Exemple #16
0
        public override void ReadData(ESPReader reader, long dataEnd)
        {
            while (reader.BaseStream.Position < dataEnd)
            {
                string subTag = reader.PeekTag();

                switch (subTag)
                {
                case "EDID":
                    if (EditorID == null)
                    {
                        EditorID = new SimpleSubrecord <String>();
                    }

                    EditorID.ReadBinary(reader);
                    break;

                case "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

                case "FULL":
                    if (Name == null)
                    {
                        Name = new SimpleSubrecord <String>();
                    }

                    Name.ReadBinary(reader);
                    break;

                case "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

                case "ACBS":
                    if (BaseStats == null)
                    {
                        BaseStats = new NPCBaseStats();
                    }

                    BaseStats.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (Factions == null)
                    {
                        Factions = new List <FactionMembership>();
                    }

                    FactionMembership tempSNAM = new FactionMembership();
                    tempSNAM.ReadBinary(reader);
                    Factions.Add(tempSNAM);
                    break;

                case "INAM":
                    if (DeathItem == null)
                    {
                        DeathItem = new RecordReference();
                    }

                    DeathItem.ReadBinary(reader);
                    break;

                case "VTCK":
                    if (VoiceType == null)
                    {
                        VoiceType = new RecordReference();
                    }

                    VoiceType.ReadBinary(reader);
                    break;

                case "TPLT":
                    if (Template == null)
                    {
                        Template = new RecordReference();
                    }

                    Template.ReadBinary(reader);
                    break;

                case "RNAM":
                    if (Race == null)
                    {
                        Race = new RecordReference();
                    }

                    Race.ReadBinary(reader);
                    break;

                case "SPLO":
                    if (ActorEffects == null)
                    {
                        ActorEffects = new List <RecordReference>();
                    }

                    RecordReference tempSPLO = new RecordReference();
                    tempSPLO.ReadBinary(reader);
                    ActorEffects.Add(tempSPLO);
                    break;

                case "EITM":
                    if (UnarmedAttackEffect == null)
                    {
                        UnarmedAttackEffect = new RecordReference();
                    }

                    UnarmedAttackEffect.ReadBinary(reader);
                    break;

                case "EAMT":
                    if (UnarmedAttackAnimation == null)
                    {
                        UnarmedAttackAnimation = new SimpleSubrecord <UInt16>();
                    }

                    UnarmedAttackAnimation.ReadBinary(reader);
                    break;

                case "DEST":
                    if (Destructable == null)
                    {
                        Destructable = new Destructable();
                    }

                    Destructable.ReadBinary(reader);
                    break;

                case "SCRI":
                    if (Script == null)
                    {
                        Script = new RecordReference();
                    }

                    Script.ReadBinary(reader);
                    break;

                case "CNTO":
                    if (Contents == null)
                    {
                        Contents = new List <InventoryItem>();
                    }

                    InventoryItem tempCNTO = new InventoryItem();
                    tempCNTO.ReadBinary(reader);
                    Contents.Add(tempCNTO);
                    break;

                case "AIDT":
                    if (AIData == null)
                    {
                        AIData = new AIData();
                    }

                    AIData.ReadBinary(reader);
                    break;

                case "PKID":
                    if (Packages == null)
                    {
                        Packages = new List <RecordReference>();
                    }

                    RecordReference tempPKID = new RecordReference();
                    tempPKID.ReadBinary(reader);
                    Packages.Add(tempPKID);
                    break;

                case "CNAM":
                    if (Class == null)
                    {
                        Class = new RecordReference();
                    }

                    Class.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new NPCData();
                    }

                    Data.ReadBinary(reader);
                    break;

                case "DNAM":
                    if (Skills == null)
                    {
                        Skills = new NPCSkills();
                    }

                    Skills.ReadBinary(reader);
                    break;

                case "PNAM":
                    if (HeadParts == null)
                    {
                        HeadParts = new List <RecordReference>();
                    }

                    RecordReference tempPNAM = new RecordReference();
                    tempPNAM.ReadBinary(reader);
                    HeadParts.Add(tempPNAM);
                    break;

                case "HNAM":
                    if (HairType == null)
                    {
                        HairType = new RecordReference();
                    }

                    HairType.ReadBinary(reader);
                    break;

                case "LNAM":
                    if (HairLength == null)
                    {
                        HairLength = new SimpleSubrecord <Single>();
                    }

                    HairLength.ReadBinary(reader);
                    break;

                case "ENAM":
                    if (Eyes == null)
                    {
                        Eyes = new RecordReference();
                    }

                    Eyes.ReadBinary(reader);
                    break;

                case "HCLR":
                    if (HairColor == null)
                    {
                        HairColor = new SimpleSubrecord <Color>();
                    }

                    HairColor.ReadBinary(reader);
                    break;

                case "ZNAM":
                    if (CombatStyle == null)
                    {
                        CombatStyle = new RecordReference();
                    }

                    CombatStyle.ReadBinary(reader);
                    break;

                case "NAM4":
                    if (ImpactMaterialType == null)
                    {
                        ImpactMaterialType = new SimpleSubrecord <MaterialTypeUInt>();
                    }

                    ImpactMaterialType.ReadBinary(reader);
                    break;

                case "FGGS":
                    if (FaceGenGeometrySymmetric == null)
                    {
                        FaceGenGeometrySymmetric = new SimpleSubrecord <Byte[]>();
                    }

                    FaceGenGeometrySymmetric.ReadBinary(reader);
                    break;

                case "FGGA":
                    if (FaceGenGeometryAsymmetric == null)
                    {
                        FaceGenGeometryAsymmetric = new SimpleSubrecord <Byte[]>();
                    }

                    FaceGenGeometryAsymmetric.ReadBinary(reader);
                    break;

                case "FGTS":
                    if (FaceGenTexture == null)
                    {
                        FaceGenTexture = new SimpleSubrecord <Byte[]>();
                    }

                    FaceGenTexture.ReadBinary(reader);
                    break;

                case "NAM5":
                    if (Unknown == null)
                    {
                        Unknown = new SimpleSubrecord <UInt16>();
                    }

                    Unknown.ReadBinary(reader);
                    break;

                case "NAM6":
                    if (Height == null)
                    {
                        Height = new SimpleSubrecord <Single>();
                    }

                    Height.ReadBinary(reader);
                    break;

                case "NAM7":
                    if (Weight == null)
                    {
                        Weight = new SimpleSubrecord <Single>();
                    }

                    Weight.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
    public float charInformation;     // this determines how much you have spied of them, unlocking more knowledge and info about them. It increases with relationship or spies. 0 to 100



    public NPCData(int charid, int charportrait, string charname, string charnickname, string charsurname, CharSex charsex, int corruptionstage, int slavestage, CharGender chargender, CharAge charage, CityFaction cityfaction,

                   bool isrecruited, bool isenemy, bool ismonster, bool isneutral, bool isprisoner, bool isslave, bool isbroken, float chargold, float charvalue, bool isfurry, bool isfuta, float attphysical, float attmental, float attsocial,
                   float attmagicpower, float attbeauty, float atttemperament, float attwillpower, float attnature, float attopenness, float attdignity, float attobedience, float atthappiness, float attlibido, float attmorality,
                   float attpiety, float attstyle, CharRank charrank, CharPersonality charpersonality, CharFetish charfetish, CharClass charclass, Jobs cityposition, float coremartial, float coresecurity,
                   float corelabor, float coretactics, float coregovernance, float corestewardship, float corepersuasion, float coreintrigue, float corediplomacy, float utilitycraft, float utilityhouse,
                   float utilityfarm, float utilitymedicine, float utilityalchemy, float utilitylearning, float utilityperformance, float utilityetiquette, float utilitystreetwise, float sexmasseuse,
                   float sexstripping, float sexbondage, float sexpetplay, float sexpetting, float sexgroupsex, float sexdemonstration, float sexwhoring, float sexescorting, BgAdulthood bgadult, BgChildhood bgchild,
                   string[] bgstory, BgUpgring bgupbring, float charloy, float charlove, float charcorruption, float charrelation, float[] charaddictions, int charcd, CharRace charrace, HeadType headtype, CharFurColor charfurcolor, CharFeatherColor charfeathercolor,
                   CharSkinColor charskincolor, CharSkinType charskintype, DickType dicktype, LowerBack lowerback, ShoulderBlades shoulderblades, ArmsType armstype, LegsType legstype, BeardStyle beardstyle, BeardLength beardlength, HeadAccesory1 headacc1, HeadAccesory2 headacc2,
                   HairColor haircolor, HairStyle hairstyle, HairType hairtype, float hairlenghtcm, HairLength hairlength, EyesType eyestype, EyesColor eyescolor, bool hasfur, bool hasfeathers, bool hasscales, bool hastentacles, bool isflying,
                   GenderBehavior genderbehavior, float genderbehstat, FacialFeatures facialfeatures, float facialfeatstat, BodyFeatures bodyfeatures, float bodyfeatstat, float heigthchar, HeightName heigthname, BodyPhysique bodyphys,
                   float bodyphystat, BodyBuild bodybuild, float bodybuildstat, bool hasknot, bool hasvagina, bool isvirgin, bool isfertile, bool ispregnant, int pregcd, string pregtext, bool islactating, float charfertility, CharRace childrace,
                   float lactationml, int dicknum, DickSize dicksize, float dicksizecm, TesticleSize testiclesize, float testiclesizecm, float clitorissize, int breastrow, float breast1size, float breast2size, BreastName breast1name,
                   BreastName breast2name, BreastCup breast1cup, BreastCup breast2cup, float areola1size, float areola2size, VagLoose vagloose, float vaglooseness, AssName assname, float asssize, HipsName hipsname, float hipssize, WaistName waistname,
                   float waistsize, float maxhealth, float currenthealth, float maxarousal, float currentarousal, float maxmp, float currentmp,
                   /*int[] charequip,*/ float charreputation, float politicalpower, float charinfo


                   )
    {
        isMarried   = new List <NPCFamily> ();
        isParent    = new List <NPCFamily> ();
        isProgeny   = new List <NPCFamily>();      // list of its two parents
        charTraits  = new List <CharTraits>();
        charAttacks = new List <CharAttacks> ();
        charTitles  = new List <Titles> ();
        charID      = charid;

        charPortraitLayer0 = charportrait;
        charName           = charname;
        charNickname       = charnickname;
        charSurname        = charsurname;
        charSex            = charsex;
        corruptionStage    = corruptionstage;
        slaveStage         = slavestage;
        charGender         = chargender;
        charAge            = charage;
        cityFaction        = cityfaction;
        isRecruited        = isrecruited;
        isEnemy            = isenemy;
        isMonster          = ismonster;
        isNeutral          = isneutral;
        isPrisoner         = isprisoner;
        isSlave            = isslave;
        isBroken           = isbroken;
        charGold           = chargold;
        charValue          = charvalue;
        isFurry            = isfurry;
        isFuta             = isfuta;

        attPhysical     = attphysical;
        attMental       = attmental;
        attSocial       = attsocial;
        attMagicPower   = attmagicpower;
        attBeauty       = attbeauty;
        attTemperament  = atttemperament;
        attWillpower    = attwillpower;
        attNature       = attnature;
        attOpenness     = attopenness;
        attDignity      = attdignity;
        attObedience    = attobedience;
        attHappiness    = atthappiness;
        attLibido       = attlibido;
        attMorality     = attmorality;
        attPiety        = attpiety;
        attStyle        = attstyle;
        charRank        = charrank;
        charPersonality = charpersonality;
        charFetish      = charfetish;
        charClass       = charclass;
        cityJobs        = cityposition;

        coreSkillMartial     = coremartial;     //0
        coreSkillSecurity    = coresecurity;
        coreSkillLabor       = corelabor;
        coreSkillTactics     = coretactics;
        coreSkillGovernance  = coregovernance;
        coreSkillStewardship = corestewardship;
        coreSkillPersuasion  = corepersuasion;
        coreSkillIntrigue    = coreintrigue;
        coreSkillDiplomacy   = corediplomacy;       //8


        utilitySkillCrafting     = utilitycraft;
        utilitySkillHouseKeeping = utilityhouse;
        utilitySkillFarmHand     = utilityfarm;
        utilitySkillMedicine     = utilitymedicine;
        utilitySkillAlchemy      = utilityalchemy;
        utilitySkillLearning     = utilitylearning;
        utilitySkillPerformance  = utilityperformance;
        utilitySkillEtiquette    = utilityetiquette;
        utilitySkillStreetwise   = utilitystreetwise;


        sexSkillMasseuse    = sexmasseuse;
        sexSkillStripping   = sexstripping;
        sexSkillBondage     = sexbondage;
        sexSkillPetplay     = sexpetplay;
        sexSkillPetting     = sexpetting;
        sexSkillGroupSex    = sexgroupsex;
        sexSkillPenetration = sexdemonstration;
        sexSkillWhoring     = sexwhoring;
        sexSkillEscorting   = sexescorting;

        bgAdulthood = bgadult;
        bgChildhood = bgchild;
        bgStory     = bgstory;       // childhood, young adulthood, current
        bgUpbring   = bgupbring;

        charLoyalty      = charloy;
        charLove         = charlove; // how much it loves the MC
        charCorruption   = charcorruption;
        charRelationship = charrelation;

        charAddictions = charaddictions;         // alcohol, tobacco, opium, coke, shrooms, hero, s***n

        charCD = charcd;

        charRace = charrace;
        headType = headtype;
        //tailType = tailtype;
        charFurColor     = charfurcolor;
        charFeatherColor = charfeathercolor;
        charSkinColor    = charskincolor;
        charSkinType     = charskintype;

        dickType       = dicktype;
        lowerBack      = lowerback;
        shoulderBlades = shoulderblades;
        armsType       = armstype;
        legsType       = legstype;
        beardStyle     = beardstyle;
        beardLength    = beardlength;
        headAccesory1  = headacc1;
        headAccesory2  = headacc2;

        hairColor    = haircolor;
        hairStyle    = hairstyle;
        hairType     = hairtype;
        hairLengthCM = hairlenghtcm;
        hairLength   = hairlength;
        eyesType     = eyestype;
        eyesColor    = eyescolor;

        hasFur       = hasfur;
        hasFeathers  = hasfeathers;
        hasScales    = hasscales;
        hasTentacles = hastentacles;
        isFlying     = isflying;

        genderBehavior     = genderbehavior;
        genderBehaviorStat = genderbehstat;         // this is what sets the above, this can make a char more feminine or masculine after certain point

        facialFeatures     = facialfeatures;
        facialFeaturesStat = facialfeatstat;

        bodyFeatures     = bodyfeatures;
        bodyFeaturesStat = bodyfeatstat;

        heightChar = heigthchar;         // in cm
        heightName = heigthname;

        bodyPhysique = bodyphys;
        bodyPhysStat = bodyphystat;         // to change it

        bodyBuild     = bodybuild;
        bodyBuildStat = bodybuildstat;         // to change it

        hasKnot       = hasknot;
        hasVagina     = hasvagina;
        isVirgin      = isvirgin;
        isFertile     = isfertile;
        isPregnant    = ispregnant;
        pregnantCD    = pregcd;      // turns until giving birth
        pregnantText  = pregtext;    //
        charFertility = charfertility;
        isLactating   = islactating;
        lactationML   = lactationml;       // how much it lactates in ml
        childRace     = childrace;

        dickNum    = dicknum;          //how many dicks it has
        dickSize   = dicksize;
        dickSizeCM = dicksizecm;       // in cm

        testiclesSize  = testiclesize; // in cm, used to determine if you have or not
        testicleSizeCM = testiclesizecm;

        clitorisSize = clitorissize;       // in cm

        areola1Size = areola1size;         // aerola size of the first row, 1 change, in cm
        areola2Size = areola2size;         // aerola size of the first row, 1 change, in cm

        breastRow   = breastrow;
        breast1Size = breast1size;
        breast2Size = breast2size;

        breast1Name = breast1name;
        breast2Name = breast2name;

        breast1Cup = breast1cup;
        breast2Cup = breast2cup;

        vagLooseness = vaglooseness;         // 0 virgin, 1-5 etc

        assName = assname;
        assSize = asssize;

        hipsName = hipsname;
        hipsSize = hipssize;

        waistName = waistname;
        waistSize = waistsize;

        maxHealth     = maxhealth;
        currentHealth = currenthealth;

        maxArousal     = maxarousal;
        currentArousal = currentarousal;

        maxMP     = maxmp;
        currentMP = currentmp;


        charReputation = charreputation;
        politicalPower = politicalpower;

        charInformation = charinfo;

        vagloose = vagLoose;
    }
Exemple #18
0
 public Client(string name, HairLength length)
 {
     Name       = name;
     HairLength = length;
 }
Exemple #19
0
 public EditEventArgs(HairLength hl)
 {
     HairLenght = hl;
 }
Exemple #20
0
 public HairDye(HairLength hairLength) : base(hairLength)
 {
 }
Exemple #21
0
 public HairStyle(HairLength hairLength) : base(hairLength)
 {
 }