/// <summary> /// returns a List of Parent Sims /// </summary> /// <param name="sdsc"></param> /// <returns></returns> public Wrapper.SDesc[] SiblingSims(Wrapper.SDesc sdsc) { ArrayList list = new ArrayList(); SimPe.PackedFiles.Wrapper.Supporting.FamilyTieSim fts = this.FindTies(sdsc); if (fts != null) { foreach (SimPe.PackedFiles.Wrapper.Supporting.FamilyTieItem fti in fts.Ties) { if (fti.SimDescription == null) { continue; } if (fti.Type == Data.MetaData.FamilyTieTypes.ImMarriedTo || fti.Type == Data.MetaData.FamilyTieTypes.MySiblingIs) { list.Add(fti.SimDescription); } } } Wrapper.SDesc[] ret = new SDesc[list.Count]; list.CopyTo(ret); return(ret); }
/// <summary> /// Returns the <see cref="ImagePanel"/> that contains the passed Sim /// </summary> /// <param name="sdsc"></param> /// <returns></returns> public void FindItem(Wrapper.SDesc sdsc) { if (sdsc == null) { gp.SelectedItems.Clear(); return; } foreach (SteepValley.Windows.Forms.XPListViewItem gpe in gp.Items) { if (gpe.Tag is Wrapper.SDesc) { if (sdsc.Equals((Wrapper.SDesc)gpe.Tag)) { gpe.Selected = true; gpe.EnsureVisible(); SelectedSimChanged(this, ((Wrapper.SDesc)gpe.Tag).Image, ((Wrapper.SDesc)gpe.Tag)); } else { gpe.Selected = false; } } } }
static void PrepareItem(ExtendedImagePanel eip, Wrapper.SDesc sdesc) { eip.ImagePanelColor = System.Drawing.Color.Black; eip.Fade = 0.5f; eip.FadeColor = System.Drawing.Color.Transparent; eip.Tag = sdesc; try { eip.Properties["GUID"].Value = "0x" + Helper.HexString(sdesc.SimId); eip.Properties["Instance"].Value = "0x" + Helper.HexString(sdesc.FileDescriptor.Instance); eip.Properties["Household"].Value = sdesc.HouseholdName; /*eip.Properties["Life Stage"].Value = ((Data.LocalizedLifeSections)sdesc.CharacterDescription.LifeSection).ToString(); * eip.Properties["Career"].Value = ((Data.LocalizedCareers)sdesc.CharacterDescription.Career).ToString(); * eip.Properties["Zodiac Sign"].Value = ((Data.LocalizedZodiacSignes)sdesc.CharacterDescription.ZodiacSign).ToString();*/ } catch (Exception ex) { eip.Properties["Error"].Value = ex.Message; } CreateItem(eip, sdesc); }
public static ExtendedImagePanel CreateItem(Wrapper.SDesc sdesc) { ExtendedImagePanel eip = new ExtendedImagePanel(); eip.SetBounds(0, 0, 216, 80); eip.BeginUpdate(); PrepareItem(eip, sdesc); eip.EndUpdate(); return(eip); }
/// <summary> /// Returns the <see cref="ImagePanel"/> that contains the passed Sim /// </summary> /// <param name="sdsc"></param> /// <returns></returns> public ImagePanel FindItem(Wrapper.SDesc sdsc) { foreach (GraphPanelElement gpe in this.Items) { if (gpe is ImagePanel) { if (sdsc.Equals(((ImagePanel)gpe).Tag)) { return((ImagePanel)gpe); } } } return(null); }
protected ImagePanel CreateItem(Wrapper.SDesc sdesc, int left, int top) { ImagePanel eip = new ImagePanel(); eip.BeginUpdate(); eip.SetBounds(left, top, this.ItemSize.Width, this.ItemSize.Height); SimPoolControl.CreateItem(eip, sdesc); eip.GotFocus += new EventHandler(eip_GotFocus); eip.LostFocus += new EventHandler(eip_LostFocus); eip.MouseDown += new System.Windows.Forms.MouseEventHandler(eip_MouseDown); eip.DoubleClick += new EventHandler(eip_DoubleClick); return(eip); }
public static Data.MetaData.FamilyTieTypes GetAntiTie(Wrapper.SDesc sdsc, Data.MetaData.FamilyTieTypes t) { if (t == Data.MetaData.FamilyTieTypes.MyMotherIs || t == Data.MetaData.FamilyTieTypes.MyFatherIs) { return(Data.MetaData.FamilyTieTypes.MyChildIs); } if (t == Data.MetaData.FamilyTieTypes.MyChildIs) { if (sdsc == null) { return(Data.MetaData.FamilyTieTypes.MyMotherIs); } if (sdsc.CharacterDescription.Gender == SimPe.Data.MetaData.Gender.Female) { return(Data.MetaData.FamilyTieTypes.MyMotherIs); } return(Data.MetaData.FamilyTieTypes.MyFatherIs); } return(t); }
public void UpdateGraph(Wrapper.SDesc sdsc, Wrapper.ExtFamilyTies famt) { this.BeginUpdate(); if (Parent != null) { this.Width = Parent.ClientRectangle.Width; this.Height = Parent.ClientRectangle.Height; } bool run = WaitingScreen.Running; WaitingScreen.Wait(); try { this.SaveBounds = false; this.AutoSize = true; this.Clear(); baseip = null; if (famt == null || sdsc == null) { this.EndUpdate(); if (!run) { WaitingScreen.Stop(); } return; } FamilyTieSim tie = famt.FindTies(sdsc); Wrapper.SDesc[] parents = famt.ParentSims(sdsc); Wrapper.SDesc[] siblings = famt.SiblingSims(sdsc); Wrapper.SDesc[] childs = famt.ChildSims(sdsc); int maxct = parents.Length + siblings.Length + childs.Length; if (maxct < 4) { this.LinearUpdateGraph(sdsc, famt); if (!run) { WaitingScreen.Stop(); } return; } double r = GraphPanel.GetPinCircleRadius(this.ItemSize, this.ItemSize, maxct); Point center = new Point( Math.Max(Width / 2, (int)r + 16 + ItemSize.Width / 2), Math.Max(Height / 2, (int)r + ItemSize.Height / 2) ); baseip = CreateItem(sdsc, 0, 0); baseip.Location = GraphPanel.GetCenterLocationOnPinCircle(center, r, ItemSize); baseip.Parent = this; this.SelectedElement = baseip; baseip.PanelColor = Color.Black; baseip.ForeColor = Color.White; baseip.EndUpdate(); int ct = 0; if (tie != null) { foreach (SDesc s in childs) { ImagePanel ip = AddTieToGraph(s, 0, 0, tie.FindTie(s).Type, false); ip.Location = GraphPanel.GetItemLocationOnPinCricle(center, r, ct++, maxct, ItemSize); ip.EndUpdate(); } foreach (SDesc s in siblings) { ImagePanel ip = AddTieToGraph(s, 0, 0, tie.FindTie(s).Type, false); ip.Location = GraphPanel.GetItemLocationOnPinCricle(center, r, ct++, maxct, ItemSize); ip.EndUpdate(); } foreach (SDesc s in parents) { ImagePanel ip = AddTieToGraph(s, 0, 0, tie.FindTie(s).Type, false); ip.Location = GraphPanel.GetItemLocationOnPinCricle(center, r, ct++, maxct, ItemSize); ip.EndUpdate(); } } this.EndUpdate(); } finally { if (!run) { WaitingScreen.Stop(); } } }
public void LinearUpdateGraph(Wrapper.SDesc sdsc, Wrapper.ExtFamilyTies famt) { this.BeginUpdate(); this.Clear(); baseip = null; if (famt == null || sdsc == null) { this.EndUpdate(); return; } FamilyTieSim tie = famt.FindTies(sdsc); Wrapper.SDesc[] parents = famt.ParentSims(sdsc); Wrapper.SDesc[] siblings = famt.SiblingSims(sdsc); Wrapper.SDesc[] childs = famt.ChildSims(sdsc); Size prect = new Size((parents.Length - 1) * (ItemSize.Width + 8), ItemSize.Height + 60); Size srect = new Size(siblings.Length * (ItemSize.Width + 24) + 140, ItemSize.Height + 60 + ((siblings.Length / 2) - 1) * 4 + 24); Size crect = new Size((childs.Length - 1) * (ItemSize.Width + 8), ItemSize.Height); int maxw = Math.Max(Math.Max(prect.Width, srect.Width), crect.Width); int top = prect.Height + (srect.Height - ItemSize.Height) / 2; int left = (maxw - ItemSize.Width) / 2 + 32; baseip = CreateItem(sdsc, left, top); baseip.Parent = this; this.SelectedElement = baseip; baseip.PanelColor = Color.Black; baseip.ForeColor = Color.White; baseip.EndUpdate(); if (tie != null) { left = (maxw - prect.Width) / 2 + 16; top = 0; foreach (SDesc s in parents) { ImagePanel ip = AddTieToGraph(s, left, top, tie.FindTie(s).Type, true); left += ip.Width + 8; } left = (maxw - srect.Width) / 2 + 16; int ct = 0; top = prect.Height; foreach (SDesc s in siblings) { ImagePanel ip = AddTieToGraph(s, left, top, tie.FindTie(s).Type, true); left += ip.Width + 24; ct++; if (ct == siblings.Length / 2 || siblings.Length == 1) { left += 70; baseip.SetBounds(left, top + 24, baseip.Width, baseip.Height); left += ip.Width + 94; } else if (ct > siblings.Length / 2) { top -= 4; } else { top += 4; } } left = (maxw - crect.Width) / 2 + 16; top = prect.Height + srect.Height; foreach (SDesc s in childs) { ImagePanel ip = AddTieToGraph(s, left, top, tie.FindTie(s).Type, true); left += ip.Width + 8; } } this.EndUpdate(); }
/*static AssemblyBuilder myAssemblyBuilder; * static ModuleBuilder myModuleBuilder; * static EnumBuilder myEnumBuilder;*/ /// <summary> /// Creates a new Instance and fills the aspiration Types into the correct Form /// </summary> protected void ResetUI(Wrapper.SDesc sdesc) { form.cboutfamtype.Items.Clear(); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Unset_Unknown)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Aunt)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Child)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Cousin)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Grandchild)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Gradparent)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Nice_Nephew)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Parent)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Sibling)); form.cboutfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Spouses)); form.cbinfamtype.Items.Clear(); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Unset_Unknown)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Aunt)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Child)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Cousin)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Grandchild)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Gradparent)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Nice_Nephew)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Parent)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Sibling)); form.cbinfamtype.Items.Add(new LocalizedRelationshipTypes(Data.MetaData.RelationshipTypes.Spouses)); form.cbaspiration.Items.Clear(); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Nothing)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Fortune)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Family)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Knowledge)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Reputation)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Romance)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Growup)); form.cbaspiration.Items.Add(new LocalizedAspirationTypes(Data.MetaData.AspirationTypes.Fun)); form.cblifesection.Items.Clear(); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Unknown)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Baby)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Toddler)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Child)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Teen)); //form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.YoungAdult)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Adult)); form.cblifesection.Items.Add(new LocalizedLifeSections(Data.MetaData.LifeSections.Elder)); form.cbcareer.Items.Clear(); foreach (SimPe.Interfaces.IAlias a in Wrapper.SDesc.AddonCarrers) { form.cbcareer.Items.Add(a); } form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Unknown)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Unemployed)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Science)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Medical)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Politics)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Athletic)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.LawEnforcement)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Culinary)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Economy)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Slacker)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Criminal)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Military)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderAthletic)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderBusiness)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderCriminal)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderCulinary)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderLawEnforcement)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderMedical)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderMilitary)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderPolitics)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderScience)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.TeenElderSlacker)); if ((Helper.WindowsRegistry.EPInstalled >= 1) || (Helper.WindowsRegistry.HiddenMode)) { form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Paranormal)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.NaturalScientist)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.ShowBiz)); form.cbcareer.Items.Add(new LocalizedCareers(Data.MetaData.Careers.Artist)); } form.cbgrade.Items.Clear(); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.Unknown)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.APlus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.A)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.AMinus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.BPlus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.B)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.BMinus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.CPlus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.C)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.CMinus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.DPlus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.D)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.DMinus)); form.cbgrade.Items.Add(new LocalizedGrades(Data.MetaData.Grades.F)); form.cbmajor.Items.Clear(); foreach (SimPe.Interfaces.IAlias a in Wrapper.SDesc.AddonMajors) { form.cbmajor.Items.Add(a); } System.Array majors = System.Enum.GetValues(typeof(Data.Majors)); foreach (Data.Majors c in majors) { form.cbmajor.Items.Add(c); } form.cbschooltype.Items.Clear(); System.Array schools = System.Enum.GetValues(typeof(Data.MetaData.SchoolTypes)); foreach (Data.MetaData.SchoolTypes c in schools) { form.cbschooltype.Items.Add(new LocalizedSchoolType(c)); } foreach (SimPe.Interfaces.IAlias a in Wrapper.SDesc.AddonSchools) { form.cbschooltype.Items.Add(a); } form.gbout.Enabled = false; form.gbin.Enabled = false; form.llsimrelcommit.Enabled = false; form.btaddtie.Enabled = false; form.btdeletetie.Enabled = false; form.tboutrelshort.Text = ""; form.tbinrelshort.Text = ""; form.tboutrellong.Text = ""; form.tbinrellong.Text = ""; form.cballrelsims.Items.Clear(); form.cballrelsims.Sorted = false; foreach (IAlias a in sdesc.NameProvider.StoredData.Values) { form.cballrelsims.Items.Add(a); } form.cballrelsims.Sorted = true; #if DEBUG #else //form.cblifesection.Enabled = false; //form.pblifelinepoints.Enabled = false; //form.tblifelinepoints.Enabled = false; form.tbcareervalue.Enabled = false; form.tbschooltype.Enabled = false; //form.gb.Enabled = false; #endif form.cbzodiac.Items.Clear(); for (ushort i = 0x01; i <= 0x0C; i++) { form.cbzodiac.Items.Add(new LocalizedZodiacSignes((Data.MetaData.ZodiacSignes)i)); } }
public void UpdateGUI(SimPe.Interfaces.Plugin.IFileWrapper wrapper) { Wrapper.SDesc sdesc = (Wrapper.SDesc)wrapper; form.wrapper = sdesc; ResetUI(sdesc); form.tbmajor.Visible = true; form.tbmajor.ReadOnly = !Helper.WindowsRegistry.HiddenMode; //Relations form.lbrelations.Items.Clear(); foreach (ushort u in sdesc.Relations.SimInstances) { Wrapper.SDesc simdesc = sdesc.Relations.GetSimDescription(u); if (simdesc != null) { SimRelations rel = sdesc.Relations.GetSimRelationships(u); if (rel != null) { rel.NameTag = "(0x" + Helper.HexString(u) + ")"; rel.NameTag = simdesc.SimName + " " + simdesc.SimFamilyName + " " + rel.NameTag; form.lbrelations.Items.Add(rel); } } } //Filename if (sdesc.CharacterFileName != null) { form.lbfilename.Text = sdesc.CharacterFileName + " (" + Localization.Manager.GetString("rightclickcopy") + ")"; form.lbfilename.Tag = sdesc.CharacterFileName; } else { form.lbfilename.Text = Localization.Manager.GetString("filenotfound"); form.lbfilename.Tag = null; } form.tbage.Text = sdesc.CharacterDescription.Age.ToString(); form.tbsimdescname.Text = sdesc.SimName; form.tbsimdescfamname.Text = sdesc.SimFamilyName; form.tbsim.Text = "0x" + Helper.HexString(sdesc.SimId); form.tbsim.ReadOnly = !Helper.WindowsRegistry.HiddenMode; form.tbprevdays.Text = sdesc.CharacterDescription.PrevAgeDays.ToString(); form.tbagedur.Text = sdesc.CharacterDescription.AgeDuration.ToString(); form.tbunlinked.Text = "0x" + Helper.HexString(sdesc.Unlinked); form.pbImage.Image = sdesc.Image; //Aspiration form.cbaspiration.SelectedIndex = 0; for (int i = 0; i < form.cbaspiration.Items.Count; i++) { Data.MetaData.AspirationTypes at = (LocalizedAspirationTypes)form.cbaspiration.Items[i]; if (at == sdesc.CharacterDescription.Aspiration) { form.cbaspiration.SelectedIndex = i; break; } } //Lifesection form.cblifesection.SelectedIndex = 0; for (int i = 0; i < form.cblifesection.Items.Count; i++) { Data.MetaData.LifeSections at = (LocalizedLifeSections)form.cblifesection.Items[i]; if (at == sdesc.CharacterDescription.LifeSection) { form.cblifesection.SelectedIndex = i; break; } } //Career form.tbcareervalue.Text = "0x" + Helper.HexString((uint)sdesc.CharacterDescription.Career); form.cbcareer.SelectedIndex = 0; for (int i = 0; i < form.cbcareer.Items.Count; i++) { object o = form.cbcareer.Items[i]; Data.MetaData.Careers at; if (o.GetType() == typeof(Alias)) { at = (Data.LocalizedCareers)((uint)((Alias)o).Id); } else { at = (Data.LocalizedCareers)o; } if (at == sdesc.CharacterDescription.Career) { form.cbcareer.SelectedIndex = i; break; } } form.pbcarrerlevel.Value = Math.Min((ushort)form.pbcarrerlevel.Maximum, sdesc.CharacterDescription.CareerLevel); //grades and school form.cbgrade.SelectedIndex = 0; for (int i = 0; i < form.cbgrade.Items.Count; i++) { Data.MetaData.Grades grade; object o = form.cbgrade.Items[i]; if (o.GetType() == typeof(Alias)) { grade = (Data.LocalizedGrades)((uint)((Alias)o).Id); } else { grade = (Data.LocalizedGrades)o; } if (sdesc.CharacterDescription.Grade == (Data.MetaData.Grades)grade) { form.cbgrade.SelectedIndex = i; break; } } //University if ((int)sdesc.Version >= (int)SimPe.PackedFiles.Wrapper.SDescVersions.University) { if (!form.tcsdesc.TabPages.Contains(form.tbuni)) { form.tcsdesc.TabPages.Add(form.tbuni); } form.cbmajor.SelectedIndex = 0; form.tbmajor.Text = "0x" + Helper.HexString((uint)sdesc.University.Major); form.tbmajor.Visible = Helper.WindowsRegistry.HiddenMode; form.cbmajor.SelectedIndex = form.cbmajor.Items.Count - 1; for (int i = 0; i < form.cbmajor.Items.Count; i++) { object o = form.cbmajor.Items[i]; Data.Majors at; if (o.GetType() == typeof(Alias)) { at = (Data.Majors)((uint)((Alias)o).Id); } else { at = (Data.Majors)o; } if (at == sdesc.University.Major) { form.cbmajor.SelectedIndex = i; break; } } form.cboncampus.Checked = (sdesc.University.OnCampus == 0x1); form.pbeffort.Value = Math.Max(form.pbeffort.Minimum, Math.Min(form.pbeffort.Maximum, sdesc.University.Effort)); form.pblastgrade.Value = Math.Max(form.pblastgrade.Minimum, Math.Min(form.pblastgrade.Maximum, form.pblastgrade.Maximum - (sdesc.University.Grade / (1000 / (form.pblastgrade.Maximum - form.pblastgrade.Minimum))))); form.pbunitime.Value = Math.Max(form.pbunitime.Minimum, Math.Min(form.pbunitime.Maximum, sdesc.University.Time)); form.tbinfluence.Text = sdesc.University.Influence.ToString(); form.tbsemester.Text = sdesc.University.Semester.ToString(); } else { if (form.tcsdesc.TabPages.Contains(form.tbuni)) { form.tcsdesc.TabPages.Remove(form.tbuni); } } form.cbschooltype.SelectedIndex = 0; form.tbschooltype.Visible = Helper.WindowsRegistry.HiddenMode; for (int i = 0; i < form.cbschooltype.Items.Count; i++) { Data.LocalizedSchoolType type; object o = form.cbschooltype.Items[i]; if (o.GetType() == typeof(Alias)) { type = (Data.LocalizedSchoolType)((uint)((Alias)o).Id); } else { type = (Data.LocalizedSchoolType)o; } if (sdesc.CharacterDescription.SchoolType == (Data.MetaData.SchoolTypes)type) { form.cbschooltype.SelectedIndex = i; break; } } //ghostflags form.cbisghost.Checked = sdesc.CharacterDescription.GhostFlag.IsGhost; form.cbpassobject.Checked = sdesc.CharacterDescription.GhostFlag.CanPassThroughObjects; form.cbpasswalls.Checked = sdesc.CharacterDescription.GhostFlag.CanPassThroughWalls; form.cbpasspeople.Checked = sdesc.CharacterDescription.GhostFlag.CanPassThroughPeople; form.cbignoretraversal.Checked = sdesc.CharacterDescription.GhostFlag.IgnoreTraversalCosts; //body flags form.cbfit.Checked = sdesc.CharacterDescription.BodyFlag.Fit; form.cbfat.Checked = sdesc.CharacterDescription.BodyFlag.Fat; form.cbpregfull.Checked = sdesc.CharacterDescription.BodyFlag.PregnantFull; form.cbpreghalf.Checked = sdesc.CharacterDescription.BodyFlag.PregnantHalf; form.cbpreginv.Checked = sdesc.CharacterDescription.BodyFlag.PregnantHidden; //Random Data form.cbzodiac.SelectedIndex = ((ushort)sdesc.CharacterDescription.ZodiacSign - 1); form.rbfemale.Checked = (sdesc.CharacterDescription.Gender == Data.MetaData.Gender.Female); form.rbmale.Checked = (sdesc.CharacterDescription.Gender == Data.MetaData.Gender.Male); form.pblifelinepoints.Value = sdesc.CharacterDescription.LifelinePoints + 600; form.pbblizlifelinepoints.Value = sdesc.CharacterDescription.BlizLifelinePoints; form.tblifelinescore.Text = sdesc.CharacterDescription.LifelineScore.ToString(); form.tbschooltype.Text = "0x" + Helper.HexString((uint)sdesc.CharacterDescription.SchoolType); form.pbjobperformance.Value = sdesc.CharacterDescription.CareerPerformance + 1000; form.tbfaminst.Text = "0x" + Helper.HexString(sdesc.FamilyInstance); form.tbvoice.Text = "0x" + Helper.HexString(sdesc.CharacterDescription.VoiceType); form.tbautonomy.Text = "0x" + Helper.HexString(sdesc.CharacterDescription.AutonomyLevel); form.tbnpc.Text = "0x" + Helper.HexString(sdesc.CharacterDescription.NPCType); //Decay form.pbhunger.Value = sdesc.Decay.Hunger + 1000; form.pbcomfort.Value = sdesc.Decay.Comfort + 1000; form.pbbladder.Value = sdesc.Decay.Bladder + 1000; form.pbenergy.Value = sdesc.Decay.Energy + 1000; form.pbhygiene.Value = sdesc.Decay.Hygiene + 1000; form.pbsocial.Value = sdesc.Decay.Social + 1000; form.pbfun.Value = sdesc.Decay.Fun + 1000; //Character form.pbneat.Value = sdesc.Character.Neat / 100; form.pboutgoing.Value = sdesc.Character.Outgoing / 100; form.pbactive.Value = sdesc.Character.Active / 100; form.pbplayful.Value = sdesc.Character.Playful / 100; form.pbnice.Value = sdesc.Character.Nice / 100; //Genetic Character form.pbgenneat.Value = sdesc.GeneticCharacter.Neat / 100; form.pbgenoutgoing.Value = sdesc.GeneticCharacter.Outgoing / 100; form.pbgenactive.Value = sdesc.GeneticCharacter.Active / 100; form.pbgenplayful.Value = sdesc.GeneticCharacter.Playful / 100; form.pbgennice.Value = sdesc.GeneticCharacter.Nice / 100; //Skills form.pbbody.Value = sdesc.Skills.Body; form.pbcharisma.Value = sdesc.Skills.Charisma; form.pbcleaning.Value = sdesc.Skills.Cleaning; form.pbcooking.Value = sdesc.Skills.Cooking; form.pbcreativity.Value = sdesc.Skills.Creativity; form.pblogic.Value = sdesc.Skills.Logic; form.pbmechanical.Value = sdesc.Skills.Mechanical; form.pbfatness.Value = sdesc.Skills.Fatness; form.pbromance.Value = sdesc.Skills.Romance; //Interests form.pbman.Value = sdesc.Interests.FemalePreference + 1000; form.pbwoman.Value = sdesc.Interests.MalePreference + 1000; form.pbanimals.Value = sdesc.Interests.Animals / 100; form.pbcrime.Value = sdesc.Interests.Crime / 100; form.pbculture.Value = sdesc.Interests.Culture / 100; form.pbentertainment.Value = sdesc.Interests.Entertainment / 100; form.pbenvironment.Value = sdesc.Interests.Environment / 100; form.pbfashion.Value = sdesc.Interests.Fashion / 100; form.pbfood.Value = sdesc.Interests.Food / 100; form.pbhealth.Value = sdesc.Interests.Health / 100; form.pbmonei.Value = sdesc.Interests.Money / 100; form.pbparanormal.Value = sdesc.Interests.Paranormal / 100; form.pbpolitics.Value = sdesc.Interests.Politics / 100; form.pbschool.Value = sdesc.Interests.School / 100; form.pbscifi.Value = sdesc.Interests.Scifi / 100; form.pbsports.Value = sdesc.Interests.Sports / 100; form.pbtoys.Value = sdesc.Interests.Toys / 100; form.pbtravel.Value = sdesc.Interests.Travel / 100; form.pbweather.Value = sdesc.Interests.Weather / 100; form.pbwork.Value = sdesc.Interests.Work / 100; form.UpdateAllProgressTextValues(); form.simnamechanged = false; //this has to be set after the PB-Update form.tbcarrerlevel.Text = sdesc.CharacterDescription.CareerLevel.ToString(); }