private static ScientificSample SelectDNASample(Sim robot, CASAgeGenderFlags gender) { List <ObjectPicker.HeaderInfo> list = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> list2 = new List <ObjectPicker.TabInfo>(); List <ScientificSample> dnaSamples = GetDNASamples(robot, gender); int numSelectableRows = 1; ObjectPicker.TabInfo tabInfo = new ObjectPicker.TabInfo(string.Empty, "TabText", new List <ObjectPicker.RowInfo>()); foreach (ScientificSample current in dnaSamples) { ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(current, new List <ObjectPicker.ColumnInfo>()); rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(current.GetThumbnailKey(), current.GetLocalizedName())); rowInfo.ColumnInfo.Add(new ObjectPicker.TextColumn(current.Subject.GetSubjectString())); tabInfo.RowInfo.Add(rowInfo); } list2.Add(tabInfo); list.Add(new ObjectPicker.HeaderInfo("HeaderString1", "HeaderTooltip1", 250)); list.Add(new ObjectPicker.HeaderInfo("HeaderString2", "HeaderTooltip2", 250)); List <ObjectPicker.RowInfo> list4 = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, "DialogTitle", "Okay", "Cancel", list2, list, numSelectableRows); ScientificSample result = null; if (list4 != null && list4.Count > 0) { result = (ScientificSample)list4[0].Item; } return(result); }
public void ChangeName() { List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("NRaasUnemployed:OptionColumn", "NRaasUnemployed:OptionColumnTooltip", 230)); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); foreach (Pair <string, string> name in GetLocalizedTitles(OwnerDescription.IsFemale)) { ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(name.Second, new List <ObjectPicker.ColumnInfo>()); item.ColumnInfo.Add(new ObjectPicker.TextColumn(name.First)); rowInfo.Add(item); } List <ObjectPicker.TabInfo> tabInfo = new List <ObjectPicker.TabInfo>(); tabInfo.Add(new ObjectPicker.TabInfo("shop_all_r2", Common.LocalizeEAString("Ui/Caption/ObjectPicker:All"), rowInfo)); string buttonTrue = Common.LocalizeEAString("NRaasUnemployed:Ok"); string buttonFalse = Common.LocalizeEAString("Ui/Caption/ObjectPicker:Cancel"); List <ObjectPicker.RowInfo> list = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, Common.LocalizeEAString("NRaasUnemployed:Title"), buttonTrue, buttonFalse, tabInfo, headers, 1, new Vector2(-1f, -1f), true); List <string> selection = new List <string>(); if ((list == null) || (list.Count == 0)) { return; } UpdateName(list[0].Item as string); }
private void OnGridDoubleClicked(TableContainer sender, TableRow row) { bool flag = false; if (sender.ID == 99576784u) { DualPanelHouseholds.DualPaneSimPickerRowController dualPaneSimPickerRowController = row.RowController as DualPanelHouseholds.DualPaneSimPickerRowController; ObjectPicker.RowInfo info = dualPaneSimPickerRowController.Info; this.mSelectedSims.Remove(info); flag = true; } else { DualPanelHouseholds.DualPaneSimPickerRowController dualPaneSimPickerRowController2 = row.RowController as DualPanelHouseholds.DualPaneSimPickerRowController; if (dualPaneSimPickerRowController2.Enabled) { ObjectPicker.RowInfo info2 = dualPaneSimPickerRowController2.Info; this.mSelectedSims.Add(info2); flag = true; } } if (flag) { Audio.StartSound("ui_panel_shift"); this.mLeftArrow.Enabled = false; this.mRightArrow.Enabled = false; this.RepopulateSourceTable(); this.RepopulateSelectedSimTable(); } }
public static List <ObjectPicker.RowInfo> ReturnRecipeholdsAsRowInfo(List <Recipe> recipes, List <Sims3.Store.Objects.IndustrialOven.MenuRecipeInfo> selectedRecipes) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); if (selectedRecipes != null) { recipes = new List <Recipe>(); foreach (IndustrialOven.MenuRecipeInfo o in selectedRecipes) { Recipe r = o.FindRecipe(); if (r != null) { recipes.Add(r); } } } if (recipes != null) { foreach (Recipe r in recipes) { { List <ObjectPicker.ColumnInfo> list4 = new List <ObjectPicker.ColumnInfo>(); list4.Add(new ObjectPicker.ThumbAndTextColumn(r.GetThumbnailKey(), r.GenericName)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(r, list4); list.Add(item); } } } return(list); }
private SimDescription ShowObjectSelectionDialog(GameObject sim) { List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Object", null, 400)); List <ObjectPicker.RowInfo> tableData = new List <ObjectPicker.RowInfo>(); int roomId = sim.RoomId; List <SimDescription> residents = Household.AllSimsLivingInWorld(); List <SimDescription> townies = Household.AllTownieSimDescriptions(); List <SimDescription> simdescriptions = new List <SimDescription>(); foreach (SimDescription townie in residents) { if (townie.IsHuman && !townie.ChildOrBelow && !simdescriptions.Contains(townie)) { simdescriptions.Add(townie); } } foreach (SimDescription gameObject in simdescriptions) { ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(gameObject, new List <ObjectPicker.ColumnInfo>()); ThumbnailKey thumbnail; if (gameObject.CreatedSim != null) { thumbnail = gameObject.CreatedSim.GetThumbnailKey(); } else { thumbnail = gameObject.GetEverydayThumbnail(ThumbnailSize.Medium); } rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, gameObject.FullName)); tableData.Add(rowInfo); } List <ObjectPicker.TabInfo> list3 = new List <ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.TabInfo("shop_all_r2", "Hire A Sim", tableData)); string buttonOk = Localization.LocalizeString("Ui/Caption/Global:Ok", new object[0]); string buttonCancel = Localization.LocalizeString("Ui/Caption/Global:Cancel", new object[0]); List <ObjectPicker.RowInfo> userSelection = BigObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, "Select A Sim to Hire", buttonOk, buttonCancel, list3, headers, 1); if (userSelection == null || userSelection.Count < 1) { return(null); } return(userSelection[0].Item as SimDescription); }
protected static void ChooseSchool(Sim sim) { List<ObjectPicker.HeaderInfo> headers = new List<ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("NRaasSchooling:OptionColumn", "NRaasSchooling:OptionColumnTooltip", 230)); List<ObjectPicker.RowInfo> rowInfo = new List<ObjectPicker.RowInfo>(); foreach (Career career in CareerManager.CareerList) { if (career is SchoolElementary) { if (!sim.SimDescription.Child) continue; } else if (career is SchoolHigh) { if (!sim.SimDescription.Teen) continue; } else if (career is School) { if ((!sim.SimDescription.Child) && (!sim.SimDescription.Teen)) continue; } else { continue; } GreyedOutTooltipCallback greyedOutTooltipCallback = null; if (!career.CanAcceptCareer(sim.ObjectId, ref greyedOutTooltipCallback)) continue; CareerLocation location = Career.FindClosestCareerLocation(sim, career.Guid); if (location == null) continue; ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(location, new List<ObjectPicker.ColumnInfo>()); item.ColumnInfo.Add(new ObjectPicker.TextColumn(career.Name)); rowInfo.Add(item); } List<ObjectPicker.TabInfo> tabInfo = new List<ObjectPicker.TabInfo>(); tabInfo.Add(new ObjectPicker.TabInfo("shop_all_r2", Common.LocalizeEAString("Ui/Caption/ObjectPicker:All"), rowInfo)); string buttonTrue = Common.LocalizeEAString("Ui/Caption/Global:Accept"); string buttonFalse = Common.LocalizeEAString("Ui/Caption/ObjectPicker:Cancel"); List<ObjectPicker.RowInfo> list = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, Common.LocalizeEAString("NRaasSchooling:Title"), buttonTrue, buttonFalse, tabInfo, headers, 1, new Vector2(-1f, -1f), true); if ((list == null) || (list.Count == 0)) return; CareerLocation sel = list[0].Item as CareerLocation; if (sel == null) return; SchoolBooter.Enroll(sim, null, sel); }
public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { List <ObjectPicker.ColumnInfo> colInfo; NumSelectableRows = 1; headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:Fertilizer", "Ui/Caption/ObjectPicker:FertilizerTooltip")); List <GameObject> objList = new List <GameObject>(parameters.Target.LotCurrent.GetObjects <GameObject>()); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); ObjectPicker.RowInfo item = null; if ((objList == null) || (objList.Count <= 0)) { colInfo = new List <ObjectPicker.ColumnInfo>(); colInfo.Add(new ObjectPicker.ThumbAndTextColumn("", "No Objects! WTF?!")); item = new ObjectPicker.RowInfo(null, colInfo); rowInfo.Add(item); } Dictionary <string, GameObject> dictionary = new Dictionary <string, GameObject>(); foreach (GameObject objInst in objList) { string key = objInst.CatalogName; if (!dictionary.ContainsKey(key)) { dictionary[key] = objInst; } } foreach (KeyValuePair <string, GameObject> keyPair in dictionary) { GameObject obj3 = keyPair.Value; colInfo = new List <ObjectPicker.ColumnInfo>(); ThumbnailKey objTNK; string objName; if (obj3 is Sim) { objTNK = (obj3 as Sim).SimDescription.GetThumbnailKey(ThumbnailSize.Medium, 0); objName = (obj3 as Sim).SimDescription.FullName; } else { objTNK = obj3.GetThumbnailKey(); objName = obj3.GetLocalizedName(); } colInfo.Add(new ObjectPicker.ThumbAndTextColumn(objTNK, objName)); item = new ObjectPicker.RowInfo(obj3, colInfo); rowInfo.Add(item); } ObjectPicker.TabInfo info2 = new ObjectPicker.TabInfo("Coupon", "Objects on Lot", rowInfo); listObjs.Add(info2); }
public static IndustrialOven.MenuRecipeInfo ReturnSelectedFoodItem(OFBOven.Menu menu, Sim sim) { List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> listObjs = new List <ObjectPicker.TabInfo>(); //IndustrialOven.Menu menu = parameters.Target as IndustrialOven.Menu; if (menu == null) { return(null); } int cost = sim.FamilyFunds; if (sim.TraitManager.HasElement(TraitNames.DiscountDiner)) { cost = 2147483647; } List <IndustrialOven.MenuRecipeInfo> foodsAtOrBelowCost = menu.GetFoodsAtOrBelowCost(cost); if (foodsAtOrBelowCost == null) { return(null); } headers.Add(new ObjectPicker.HeaderInfo("Store/Objects/IndustrialOven:SelectRecipeHeader", "Store/Objects/IndustrialOven:SelectRecipeHeaderTooltip", 500)); List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); for (int i = 0; i < foodsAtOrBelowCost.Count; i++) { Recipe recipe = foodsAtOrBelowCost[i].FindRecipe(); if (recipe != null) { List <ObjectPicker.ColumnInfo> list2 = new List <ObjectPicker.ColumnInfo>(); list2.Add(new ObjectPicker.ThumbAndTextColumn(recipe.GetThumbnailKey(ThumbnailSize.Large), recipe.GenericName)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(foodsAtOrBelowCost[i], list2); list.Add(item); } } ObjectPicker.TabInfo item2 = new ObjectPicker.TabInfo("recipeRowImageName", StringTable.GetLocalizedString("Store/Objects/IndustrialOven/SetMenu:TabText"), list); listObjs.Add(item2); List <ObjectPicker.RowInfo> selection = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, CommonMethodsOFBBistroSet.LocalizeString("SelectMeal", new object[] { sim.FullName }), CommonMethodsOFBBistroSet.LocalizeString("Select", new object[0]), CommonMethodsOFBBistroSet.LocalizeString("Cancel", new object[0]), listObjs, headers, 1); if (selection != null && selection.Count > 0) { return((IndustrialOven.MenuRecipeInfo)selection[0].Item); } return(null); }
private void listAllObjectsInRoom(Sim sim, List <ObjectPicker.RowInfo> tableData, int roomId) { GameObject[] gameObjectsInLot = sim.LotCurrent.GetObjects <GameObject>(); foreach (GameObject gameObject in gameObjectsInLot) { if (gameObject.RoomId == roomId && !HasMoveInteraction(gameObject)) { ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(gameObject, new List <ObjectPicker.ColumnInfo>()); ThumbnailKey thumbnail = gameObject.GetThumbnailKey(); rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, gameObject.GetLocalizedName())); tableData.Add(rowInfo); } } }
public static List <ObjectPicker.RowInfo> ReturnTaxCollectorsAsRowInfo(List <TaxCollector> collectors) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (TaxCollector t in collectors) { List <ObjectPicker.ColumnInfo> list4 = new List <ObjectPicker.ColumnInfo>(); list4.Add(new ObjectPicker.TextColumn(t.info.Name)); // list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list4); list.Add(item); } return(list); }
public DualPaneSimPickerRowController(TableRow row, TableContainer table, ObjectPicker.RowInfo info) { this.mIsEnabled = true; this.mRow = row; this.mTable = table; this.mInfo = info; List<CellController> cellControllers = this.mRow.CellControllers; List<WindowBase> cellWindows = this.mRow.CellWindows; TableThumbAndTextController tableThumbAndTextController = new TableThumbAndTextController(cellWindows[0]); cellControllers.Add(tableThumbAndTextController); tableThumbAndTextController.ImageSize = 40f; tableThumbAndTextController.Entry = ((MinorPet)this.mInfo.Item).GetLocalizedName() ; tableThumbAndTextController.Thumbnail = ((MinorPet)this.mInfo.Item).GetThumbnailKey(); }
public DualPaneSimPickerRowController(TableRow row, TableContainer table, ObjectPicker.RowInfo info, float multiplyer) { this.mIsEnabled = true; this.mRow = row; this.mTable = table; this.mInfo = info; List <CellController> cellControllers = this.mRow.CellControllers; List <WindowBase> cellWindows = this.mRow.CellWindows; TableThumbAndTextController tableThumbAndTextController = new TableThumbAndTextController(cellWindows[0]); cellControllers.Add(tableThumbAndTextController); tableThumbAndTextController.ImageSize = 40f; tableThumbAndTextController.Entry = ((Recipe)this.mInfo.Item).GenericName; tableThumbAndTextController.Thumbnail = ((Recipe)this.mInfo.Item).GetThumbnailKey(); }
public DualPaneSimPickerRowController(TableRow row, TableContainer table, ObjectPicker.RowInfo info, float multiplyer) { this.mIsEnabled = true; this.mRow = row; this.mTable = table; this.mInfo = info; List<CellController> cellControllers = this.mRow.CellControllers; List<WindowBase> cellWindows = this.mRow.CellWindows; TableThumbAndTextController tableThumbAndTextController = new TableThumbAndTextController(cellWindows[0]); cellControllers.Add(tableThumbAndTextController); tableThumbAndTextController.ImageSize = 40f; tableThumbAndTextController.Entry = ((InventoryItem)this.mInfo.Item).Object.GetLocalizedName() + " " + ShoppingMethods.CalculatePrice(((InventoryItem)this.mInfo.Item).Object.Value, multiplyer) + " §"; tableThumbAndTextController.Thumbnail = ((InventoryItem)this.mInfo.Item).Object.GetThumbnailKey(); }
public DualPaneSimPickerRowController(TableRow row, TableContainer table, ObjectPicker.RowInfo info) { this.mIsEnabled = true; this.mRow = row; this.mTable = table; this.mInfo = info; List <CellController> cellControllers = this.mRow.CellControllers; List <WindowBase> cellWindows = this.mRow.CellWindows; TableThumbAndTextController tableThumbAndTextController = new TableThumbAndTextController(cellWindows[0]); cellControllers.Add(tableThumbAndTextController); tableThumbAndTextController.ImageSize = 40f; tableThumbAndTextController.Entry = ((Household)this.mInfo.Item).Name; tableThumbAndTextController.Thumbnail = ((Household)this.mInfo.Item).Sims.ToArray()[0].GetThumbnailKey(); }
public static List <ObjectPicker.RowInfo> ReturnMinorPetsAsRowInfo(List <MinorPet> pets) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (MinorPet p in pets) { List <ObjectPicker.ColumnInfo> list4 = new List <ObjectPicker.ColumnInfo>(); string text = p.Data.Name; //Localization.LocalizeString(p.Data.Name, new object[0]); list4.Add(new ObjectPicker.ThumbAndTextColumn(p.GetThumbnailKey(), text)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(p, list4); list.Add(item); } return(list); }
public static GameObject ReturnTaxCollector(TaxCollector active, List <GameObject> objects) { ThumbnailKey thumbnail = ThumbnailKey.kInvalidThumbnailKey; string text = string.Empty; List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (GameObject t in objects) { List <ObjectPicker.ColumnInfo> list2 = new List <ObjectPicker.ColumnInfo>(); int num = 0; thumbnail = t.GetThumbnailKey(); if (t.GetType() == typeof(TaxCollector)) { text = (t as TaxCollector).info.Name; num = (t as TaxCollector).info.Funds; } if (t.GetType() == typeof(DonationBox)) { text = (t as DonationBox).info.Name; num = (t as DonationBox).info.Funds; } //common list2.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, text)); list2.Add(new ObjectPicker.MoneyColumn(num)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list2); list.Add(item); } List <ObjectPicker.HeaderInfo> list3 = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> list4 = new List <ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.HeaderInfo(string.Empty, string.Empty, 200)); list3.Add(new ObjectPicker.HeaderInfo(CommonMethodsTaxCollector.LocalizeString("Funds", new object[0]), CommonMethodsTaxCollector.LocalizeString("Funds", new object[0]))); list4.Add(new ObjectPicker.TabInfo("coupon", ShoppingRegister.LocalizeString("AvailableConcessionsFoods", new object[0]), list)); List <ObjectPicker.RowInfo> list5 = TaxCollectorSimpleDialog.Show(CommonMethodsTaxCollector.LocalizeString("TransferToObject", new object[0]), 0, list4, list3, true); if (list5 == null || list5.Count != 1) { return(null); } return(list5[0].Item as GameObject); }
public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 0x1; headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:Title", "Ui/Tooltip/ObjectPicker:Name", 0xfa)); Sim actor = parameters.Actor as Sim; List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); GreyedOutTooltipCallback greyedOutTooltipCallback = null; foreach (Book book in TabletEx.GetBooksInTown(parameters.Actor as Sim, false, true, parameters.Autonomous)) //foreach (Book book in Tablet.GetBooksOnMyLot(parameters.Actor as Sim, false, true)) { // Custom ReadBookData bookData; if (actor.ReadBookDataList.TryGetValue(book.Data.ID, out bookData)) { if (bookData.TimesRead > 0) { continue; } } if (!(book is SheetMusic) && book.TestReadBook(parameters.Actor as Sim, parameters.Autonomous, ref greyedOutTooltipCallback)) { List <ObjectPicker.ColumnInfo> columnInfo = new List <ObjectPicker.ColumnInfo>(); ResourceKey objectDescKey = new ResourceKey((ulong)ResourceUtils.XorFoldHashString32("book_standard"), 0x1661233, 0x1); ThumbnailKey thumbnail = new ThumbnailKey(objectDescKey, ThumbnailSize.Medium, ResourceUtils.HashString32(book.Data.GeometryState), ResourceUtils.HashString32(book.Data.MaterialState)); MedicalJournalData data = book.Data as MedicalJournalData; if (data != null) { columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, data.GetTitle((book as MedicalJournal).mOwner, data.CurrentEdition))); } else { columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, book.Data.Title)); } ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(book, columnInfo); rowInfo.Add(info); } } ObjectPicker.TabInfo item = new ObjectPicker.TabInfo("Coupon", Localization.LocalizeString("Ui/Caption/ObjectPicker:Books", new object[0x0]), rowInfo); listObjs.Add(item); }
public DualPaneSimPickerRowController(TableRow row, TableContainer table, ObjectPicker.RowInfo info, float multiplyer) { this.mIsEnabled = true; this.mRow = row; this.mTable = table; this.mInfo = info; List <CellController> cellControllers = this.mRow.CellControllers; List <WindowBase> cellWindows = this.mRow.CellWindows; TableThumbAndTextController tableThumbAndTextController = new TableThumbAndTextController(cellWindows[0]); cellControllers.Add(tableThumbAndTextController); tableThumbAndTextController.ImageSize = 40f; tableThumbAndTextController.Entry = ((InventoryItem)this.mInfo.Item).Object.GetLocalizedName() + " " + ShoppingMethods.CalculatePrice(((InventoryItem)this.mInfo.Item).Object.Value, multiplyer) + " §"; tableThumbAndTextController.Thumbnail = ((InventoryItem)this.mInfo.Item).Object.GetThumbnailKey(); }
public static List <ObjectPicker.RowInfo> ReturnHouseholdsAsRowInfo(List <Household> households) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (Household h in households) { if (h.InWorld && h.Sims != null && h.Sims.Count > 0) { List <ObjectPicker.ColumnInfo> list4 = new List <ObjectPicker.ColumnInfo>(); list4.Add(new ObjectPicker.ThumbAndTextColumn(h.Sims.ToArray()[0].GetThumbnailKey(), h.Name)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(h, list4); list.Add(item); } } return(list); }
public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 0x1; headers = null; listObjs = null; try { IGameObject target = parameters.Target; headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:Title", "Ui/Tooltip/ObjectPicker:Name", 0xfa)); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); foreach (BookToddler book in Inventories.QuickDuoFind <BookToddler, Book>(parameters.Target.Inventory)) { if (ReadBookData.HasSimFinishedBook(Toddler, book.Data.ID)) { continue; } List <ObjectPicker.ColumnInfo> columnInfo = new List <ObjectPicker.ColumnInfo>(); ThumbnailKey thumbnail = new ThumbnailKey(new ResourceKey((ulong)ResourceUtils.XorFoldHashString32("book_standard"), 0x1661233, 0x1), ThumbnailSize.Medium, ResourceUtils.HashString32(book.Data.GeometryState), ResourceUtils.HashString32(book.Data.MaterialState)); columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, book.Data.Title)); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(book, columnInfo); rowInfo.Add(info); } // Custom code if (rowInfo.Count == 0) { listObjs = null; } else { ObjectPicker.TabInfo item = new ObjectPicker.TabInfo("Coupon", Common.LocalizeEAString("Ui/Caption/ObjectPicker:ToddlerBooks"), rowInfo); listObjs.Add(item); } } catch (Exception e) { Common.Exception(parameters.Actor, parameters.Target, e); } }
public static void PopulateAudioPrograms(Sim actor, ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 0x1; headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo(Tablet.sLocalizationKeyAudio + ":Title", "Ui/Tooltip/ObjectPicker:Name", 0xfa)); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); SkillNames[] collection = new SkillNames[] { SkillNames.Charisma, SkillNames.Cooking, SkillNames.Gardening, SkillNames.Guitar, SkillNames.Handiness, SkillNames.Nectar }; List <SkillNames> list2 = new List <SkillNames>(collection); foreach (Skill staticSkill in SkillManager.SkillDictionary) { if (staticSkill.IsHiddenSkill(actor.SimDescription.GetCASAGSAvailabilityFlags())) { continue; } // Don't include my custom skills as they increase points differently if (staticSkill.GetType().Assembly.FullName.Contains("NRaas")) { continue; } Skill element = actor.SkillManager.GetElement(staticSkill.Guid); if ((element == null) || !element.ReachedMaxLevel()) { string title = staticSkill.Name; if (Localization.HasLocalizationString(Tablet.sLocalizationKeyAudio + ":" + staticSkill.Guid)) { title = Localization.LocalizeString(Tablet.sLocalizationKeyAudio + ":" + staticSkill.Guid, new object[0]); } List <ObjectPicker.ColumnInfo> columnInfo = new List <ObjectPicker.ColumnInfo>(); ThumbnailKey thumbnail = new ThumbnailKey(staticSkill.IconKey, ThumbnailSize.Medium); columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, title)); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(staticSkill.Guid, columnInfo); rowInfo.Add(info); } } ObjectPicker.TabInfo item = new ObjectPicker.TabInfo("Coupon", Tablet.LocalizeAudioProgram("TabName", new object[0x0]), rowInfo); listObjs.Add(item); }
public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 1; headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:ObjectName", "Ui/Tooltip/ObjectPicker:Name", 250)); headers.Add(new ObjectPicker.HeaderInfo(CommonMethods.LocalizeString("FamilyFunds", new object[0]), CommonMethods.LocalizeString("FamilyFnds", new object[0]))); headers.Add(new ObjectPicker.HeaderInfo(CommonMethods.LocalizeString("IsActive", new object[0]), CommonMethods.LocalizeString("IsActive", new object[0]))); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); Sim actor = parameters.Actor as Sim; Controller c = parameters.Target as Controller; if (actor != null && c != null) { try { //Clean the families first ApartmentController.CleanupFamily(c); //Select one family member for the list foreach (ApartmentFamily family in c.Families) { if (family.Residents != null && family.Residents.Count > 0 && !family.IsActive) { List <ObjectPicker.ColumnInfo> columnInfo = new List <ObjectPicker.ColumnInfo>(); columnInfo.Add(new ObjectPicker.TextColumn(family.FamilyName)); columnInfo.Add(new ObjectPicker.TextColumn(family.FamilyFunds.ToString())); columnInfo.Add(new ObjectPicker.TextColumn(family.IsActive.ToString())); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(family, columnInfo); rowInfo.Add(info); } } listObjs.Add(new ObjectPicker.TabInfo("all", "", rowInfo)); } catch (System.Exception ex) { CommonMethods.PrintMessage(ex.Message); } } }
public static List <ObjectPicker.RowInfo> ReturnInventoryItemAsRowInfo(List <InventoryItem> items) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (InventoryItem i in items) { //Don't sell your cell, make a new mod for this ^_^ if (i.GetType() != typeof(PhoneSmart)) { List <ObjectPicker.ColumnInfo> list4 = new List <ObjectPicker.ColumnInfo>(); string text = i.Object.GetLocalizedName(); //Localization.LocalizeString(p.Data.Name, new object[0]); list4.Add(new ObjectPicker.ThumbAndTextColumn(i.Object.GetThumbnailKey(), text)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(i, list4); list.Add(item); } } return(list); }
private void OnArrowClick(WindowBase sender, UIButtonClickEventArgs eventArgs) { if (sender.ID == 99576788u) { TableRow row = this.mSelectedTable.GetRow(this.mSelectedTable.SelectedItem); DualPanelHouseholds.DualPaneSimPickerRowController dualPaneSimPickerRowController = row.RowController as DualPanelHouseholds.DualPaneSimPickerRowController; ObjectPicker.RowInfo info = dualPaneSimPickerRowController.Info; this.mSelectedSims.Remove(info); } else { TableRow row2 = this.mSourceTable.GetRow(this.mSourceTable.SelectedItem); DualPanelHouseholds.DualPaneSimPickerRowController dualPaneSimPickerRowController2 = row2.RowController as DualPanelHouseholds.DualPaneSimPickerRowController; ObjectPicker.RowInfo info2 = dualPaneSimPickerRowController2.Info; this.mSelectedSims.Add(info2); } this.mLeftArrow.Enabled = false; this.mRightArrow.Enabled = false; this.RepopulateSourceTable(); this.RepopulateSelectedSimTable(); }
/// <summary> /// /// </summary> /// <param name="interactionName"></param> /// <returns></returns> public static Shift ReturnShift(Sim sim, OFBOven oven, int NumSelectableRows) { string buttonFalse = Localization.LocalizeString("Ui/Caption/ObjectPicker:Cancel", new object[0]); List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("", "", 500)); List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (Shift shift in oven.info.Shifts) { List <ObjectPicker.ColumnInfo> list2 = new List <ObjectPicker.ColumnInfo>(); ThumbnailKey key = new ThumbnailKey(); SimDescription simDescription = SimDescription.Find(shift.Cheff.DescriptionId); if (simDescription != null) { key = simDescription.GetThumbnailKey(ThumbnailSize.Large, 0); } list2.Add(new ObjectPicker.ThumbAndTextColumn(key, shift.StarWork + ":00 - " + shift.EndWork + ":00")); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(shift, list2); list.Add(item); } ObjectPicker.TabInfo item2 = new ObjectPicker.TabInfo("recipeRowImageName", StringTable.GetLocalizedString("Store/Objects/IndustrialOven/SetMenu:TabText"), list); listObjs.Add(item2); List <ObjectPicker.RowInfo> objects = ObjectPickerDialog.Show("Shifts", "Select", "Cancel", listObjs, headers, NumSelectableRows); if (objects != null && objects.Count > 0) { return((Shift)objects[0].Item); } return(null); }
public static StoreSetRegister ReturnRegisterForLinking(StoreSetRegister[] objects) { ThumbnailKey thumbnail = ThumbnailKey.kInvalidThumbnailKey; string text = string.Empty; List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (StoreSetRegister t in objects) { List <ObjectPicker.ColumnInfo> list2 = new List <ObjectPicker.ColumnInfo>(); int num = 0; thumbnail = t.GetThumbnailKey(); text = t.Info.RegisterName; //common list2.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, text)); list2.Add(new ObjectPicker.MoneyColumn(num)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list2); list.Add(item); } List <ObjectPicker.HeaderInfo> list3 = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> list4 = new List <ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.HeaderInfo(string.Empty, string.Empty, 200)); list3.Add(new ObjectPicker.HeaderInfo("1", "2")); list4.Add(new ObjectPicker.TabInfo("3", CMStoreSet.LocalizeString("LinkToRegister", new object[0]), list)); List <ObjectPicker.RowInfo> list5 = TaxCollectorSimpleDialog.Show(CMStoreSet.LocalizeString("LikToRegister", new object[0] { }), 0, list4, list3, true); if (list5 == null || list5.Count != 1) { return(null); } return(list5[0].Item as StoreSetRegister); }
public static GameObject ShowObjectSelectionDialog(Sim sim) { List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Sim", null, 400)); List <ObjectPicker.RowInfo> tableData = new List <ObjectPicker.RowInfo>(); int roomId = sim.RoomId; GameObject[] gameObjectsInLot = sim.LotCurrent.GetObjects <GameObject>(); foreach (GameObject gameObject in gameObjectsInLot) { if (gameObject.RoomId == roomId && gameObject != sim) { ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(gameObject, new List <ObjectPicker.ColumnInfo>()); ThumbnailKey thumbnail = gameObject.GetThumbnailKey(); rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, gameObject.GetLocalizedName())); tableData.Add(rowInfo); } } List <ObjectPicker.TabInfo> list3 = new List <ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.TabInfo("shop_all_r2", "Select Something To Look At", tableData)); string buttonOk = Localization.LocalizeString("Ui/Caption/Global:Ok", new object[0]); string buttonCancel = Localization.LocalizeString("Ui/Caption/Global:Cancel", new object[0]); List <ObjectPicker.RowInfo> userSelection = BigObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, "Select Something To Look At", buttonOk, buttonCancel, list3, headers, 1); if (userSelection == null || userSelection.Count < 1) { return(null); } return(userSelection[0].Item as GameObject); }
// Methods public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { headers = new List <ObjectPicker.HeaderInfo>(); listObjs = new List <ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:ObjectName", "Ui/Tooltip/ObjectPicker:Name", 250)); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/Shopping/Cart:Price", "Ui/Tooltip/Shopping/Cart:Price")); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); Sim actor = parameters.Actor as Sim; ShoppingRegister register = parameters.Target as ShoppingRegister; if (actor != null) { List <GameObject> list2 = CommonMethods.ItemDictionary(actor, CommonMethods.ReturnRegisterType(register), parameters.Target.LotCurrent); NumSelectableRows = list2.Count; foreach (GameObject obj2 in list2) { List <ObjectPicker.ColumnInfo> columnInfo = new List <ObjectPicker.ColumnInfo>(); ThumbnailKey thumbnailKey = obj2.GetThumbnailKey(); columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnailKey, obj2.GetLocalizedName())); columnInfo.Add(new ObjectPicker.MoneyColumn((int)ReturnItemPrice(obj2))); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(obj2, columnInfo); rowInfo.Add(info); } } else { NumSelectableRows = 1; } listObjs.Add(new ObjectPicker.TabInfo("all", "", rowInfo)); }
public override bool Run() { Definition interactionDefinition = base.InteractionDefinition as Definition; if (interactionDefinition == null) { return(false); } ObjectGuid mObject = interactionDefinition.mObject; int mCost = interactionDefinition.mCost; if (mObject == ObjectGuid.InvalidObjectGuid) { List <ObjectGuid> objectsICanBuyInDisplay = DisplayHelper.GetObjectsICanBuyInDisplay(base.Actor, base.Target); if (!Autonomous && Actor.IsSelectable) { List <ObjectPicker.RowInfo> list = new List <ObjectPicker.RowInfo>(); foreach (ObjectGuid current in objectsICanBuyInDisplay) { GameObject obj = GlobalFunctions.ConvertGuidToObject <GameObject>(current); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(current, new List <ObjectPicker.ColumnInfo> { new ObjectPicker.ThumbAndTextColumn(obj.GetThumbnailKey(), obj.GetLocalizedName()), new ObjectPicker.MoneyColumn(DisplayHelper.ComputeFinalPriceOnObject(obj, true)) }); list.Add(item); } List <ObjectPicker.HeaderInfo> list2 = new List <ObjectPicker.HeaderInfo>(); List <ObjectPicker.TabInfo> list3 = new List <ObjectPicker.TabInfo>(); list2.Add(new ObjectPicker.HeaderInfo(ShoppingRegister.sLocalizationKey + ":BuyFoodColumnName", ShoppingRegister.sLocalizationKey + ":BuyFoodColumnTooltip", 200)); list2.Add(new ObjectPicker.HeaderInfo("Ui/Caption/Shopping/Cart:Price", "Ui/Tooltip/Shopping/Cart:Price")); list3.Add(new ObjectPicker.TabInfo("", ShoppingRegister.LocalizeString("AvailableFoods"), list)); List <ObjectPicker.RowInfo> list4 = SimplePurchaseDialog.Show(ShoppingRegister.LocalizeString("BuyFoodTitle"), Actor.FamilyFunds, list3, list2, true); if (list4 == null || list4.Count != 1) { return(false); } mObject = (ObjectGuid)list4[0].Item; mCost = ((ObjectPicker.MoneyColumn)list4[0].ColumnInfo[1]).Value; } else { RandomUtil.RandomizeListOfObjects <ObjectGuid>(objectsICanBuyInDisplay); int familyFunds = base.Actor.FamilyFunds; for (int i = 0; i < objectsICanBuyInDisplay.Count; i++) { int cost = DisplayHelper.ComputeFinalPriceOnObject(objectsICanBuyInDisplay[i]); if (cost <= familyFunds) { //Definition continuationDefinition = new Definition(objectsICanBuyInDisplay[i], cost, false); //base.TryPushAsContinuation(continuationDefinition); //return true; mObject = objectsICanBuyInDisplay[i]; mCost = cost; break; } } //return false; } } if (mObject == ObjectGuid.InvalidObjectGuid) { return(false); } if (!base.Actor.RouteToObjectRadialRange(base.Target, 0f, base.Target.MaxProximityBeforeSwiping())) { return(false); } base.Actor.RouteTurnToFace(base.Target.Position); if (!DisplayHelper.GetObjectsICanBuyInDisplay(base.Actor, base.Target).Contains(mObject)) { return(false); } if (base.Actor.FamilyFunds < mCost) { return(false); } GameObject target = GlobalFunctions.ConvertGuidToObject <GameObject>(mObject); if (target == null) { return(false); } base.StandardEntry(); base.BeginCommodityUpdates(); string swipeAnimationName = base.Target.GetSwipeAnimationName(target); if (Actor.SimDescription.Child) { swipeAnimationName = "c" + swipeAnimationName.Substring(1); } base.Actor.PlaySoloAnimation(swipeAnimationName, true); VisualEffect effect = VisualEffect.Create(base.Target.GetSwipeVfxName()); Vector3 zero = Vector3.Zero; Vector3 axis = Vector3.Zero; if (Slots.AttachToBone(effect.ObjectId, base.Target.ObjectId, ResourceUtils.HashString32("transformBone"), false, ref zero, ref axis, 0f) == TransformParentingReturnCode.Success) { effect.SetAutoDestroy(true); effect.Start(); } else { effect.Dispose(); effect = null; } //bool flag = false; //bool flag2 = false; bool succeeded = false; bool addInteractions = true; string tnsKey = null; if (target.IsLiveDraggingEnabled() && !target.InUse && (interactionDefinition.mPushEat || (target.ItemComp != null && target.ItemComp.CanAddToInventory(base.Actor.Inventory) && base.Actor.Inventory.CanAdd(target)))) //&& base.Actor.Inventory.TryToAdd(target))) { ServingContainerGroup groupServing = null; if (interactionDefinition.mSingleServing) { groupServing = target as ServingContainerGroup; if (groupServing != null) { target = groupServing.CookingProcess.CreateSingleServingOfFood(groupServing, true, true); addInteractions = false; } } if (interactionDefinition.mPushEat) { target.SetOpacity(0f, 0f); if (Actor.ParentToRightHand(target)) { succeeded = true; CarrySystem.EnterWhileHolding(Actor, target as ICarryable); } target.FadeIn(); } else if (Actor.Inventory.TryToAdd(target)) { succeeded = true; tnsKey = "PlacedInPersonalInventory"; } if (succeeded) { if (groupServing != null) { groupServing.DecrementServings(); if (groupServing.NumServingsLeft == 0) { groupServing.FadeOut(false, true); } } } else if (groupServing != null && target != null) { target.Destroy(); } } else if (!target.InUse && base.Actor.Household.SharedFamilyInventory.Inventory.TryToAdd(target)) { succeeded = true; tnsKey = "PlacedInFamilyInventory"; } //bool succeeded = flag || flag2; if (succeeded) { if (addInteractions) { Target.OnHandToolChildUnslotted(target, Slot.None); if (target is Snack) { target.AddInteraction(Sims3.Gameplay.Objects.CookingObjects.Eat.Singleton, true); target.AddInteraction(Snack_CleanUp.Singleton, true); } } /*if (flag2) * { * base.Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(base.Actor.IsFemale, "PlacedInFamilyInventory", new object[] { base.Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); * } * else * { * base.Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(base.Actor.IsFemale, "PlacedInPersonalInventory", new object[] { base.Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); * }*/ if (tnsKey != null) { Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(Actor.IsFemale, tnsKey, new object[] { Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); } base.Target.GiveMarkupBuffs(base.Actor, mObject); base.Actor.ModifyFunds(-mCost); base.Target.GiveLotOwnerMoney(mCost, base.Actor); base.Target.AccumulateRevenue(mCost); if (interactionDefinition.mPushEat) { (target as IFoodContainer).PushEatHeldFoodInteraction(Actor); } } base.EndCommodityUpdates(succeeded); base.StandardExit(); return(succeeded); }
public override void PopulatePieMenuPicker(ref InteractionInstanceParameters parameters, out List<ObjectPicker.TabInfo> listObjs, out List<ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 0x1; headers = null; listObjs = null; try { IGameObject target = parameters.Target; headers = new List<ObjectPicker.HeaderInfo>(); listObjs = new List<ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:Title", "Ui/Tooltip/ObjectPicker:Name", 0xfa)); List<ObjectPicker.RowInfo> rowInfo = new List<ObjectPicker.RowInfo>(); foreach (BookToddler book in Inventories.QuickDuoFind<BookToddler,Book>(parameters.Target.Inventory)) { if (ReadBookData.HasSimFinishedBook(Toddler, book.Data.ID)) continue; List<ObjectPicker.ColumnInfo> columnInfo = new List<ObjectPicker.ColumnInfo>(); ThumbnailKey thumbnail = new ThumbnailKey(new ResourceKey((ulong)ResourceUtils.XorFoldHashString32("book_standard"), 0x1661233, 0x1), ThumbnailSize.Medium, ResourceUtils.HashString32(book.Data.GeometryState), ResourceUtils.HashString32(book.Data.MaterialState)); columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, book.Data.Title)); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(book, columnInfo); rowInfo.Add(info); } // Custom code if (rowInfo.Count == 0) { listObjs = null; } else { ObjectPicker.TabInfo item = new ObjectPicker.TabInfo("Coupon", Common.LocalizeEAString("Ui/Caption/ObjectPicker:ToddlerBooks"), rowInfo); listObjs.Add(item); } } catch (Exception e) { Common.Exception(parameters.Actor, parameters.Target, e); } }
public override bool Run() { Definition interactionDefinition = base.InteractionDefinition as Definition; if (interactionDefinition == null) { return false; } ObjectGuid mObject = interactionDefinition.mObject; int mCost = interactionDefinition.mCost; if (mObject == ObjectGuid.InvalidObjectGuid) { List<ObjectGuid> objectsICanBuyInDisplay = DisplayHelper.GetObjectsICanBuyInDisplay(base.Actor, base.Target); if (!Autonomous && Actor.IsSelectable) { List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (ObjectGuid current in objectsICanBuyInDisplay) { GameObject obj = GlobalFunctions.ConvertGuidToObject<GameObject>(current); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(current, new List<ObjectPicker.ColumnInfo> { new ObjectPicker.ThumbAndTextColumn(obj.GetThumbnailKey(), obj.GetLocalizedName()), new ObjectPicker.MoneyColumn(DisplayHelper.ComputeFinalPriceOnObject(obj, true)) }); list.Add(item); } List<ObjectPicker.HeaderInfo> list2 = new List<ObjectPicker.HeaderInfo>(); List<ObjectPicker.TabInfo> list3 = new List<ObjectPicker.TabInfo>(); list2.Add(new ObjectPicker.HeaderInfo(ShoppingRegister.sLocalizationKey + ":BuyFoodColumnName", ShoppingRegister.sLocalizationKey + ":BuyFoodColumnTooltip", 200)); list2.Add(new ObjectPicker.HeaderInfo("Ui/Caption/Shopping/Cart:Price", "Ui/Tooltip/Shopping/Cart:Price")); list3.Add(new ObjectPicker.TabInfo("", ShoppingRegister.LocalizeString("AvailableFoods"), list)); List<ObjectPicker.RowInfo> list4 = SimplePurchaseDialog.Show(ShoppingRegister.LocalizeString("BuyFoodTitle"), Actor.FamilyFunds, list3, list2, true); if (list4 == null || list4.Count != 1) { return false; } mObject = (ObjectGuid)list4[0].Item; mCost = ((ObjectPicker.MoneyColumn)list4[0].ColumnInfo[1]).Value; } else { RandomUtil.RandomizeListOfObjects<ObjectGuid>(objectsICanBuyInDisplay); int familyFunds = base.Actor.FamilyFunds; for (int i = 0; i < objectsICanBuyInDisplay.Count; i++) { int cost = DisplayHelper.ComputeFinalPriceOnObject(objectsICanBuyInDisplay[i]); if (cost <= familyFunds) { //Definition continuationDefinition = new Definition(objectsICanBuyInDisplay[i], cost, false); //base.TryPushAsContinuation(continuationDefinition); //return true; mObject = objectsICanBuyInDisplay[i]; mCost = cost; break; } } //return false; } } if (mObject == ObjectGuid.InvalidObjectGuid) { return false; } if (!base.Actor.RouteToObjectRadialRange(base.Target, 0f, base.Target.MaxProximityBeforeSwiping())) { return false; } base.Actor.RouteTurnToFace(base.Target.Position); if (!DisplayHelper.GetObjectsICanBuyInDisplay(base.Actor, base.Target).Contains(mObject)) { return false; } if (base.Actor.FamilyFunds < mCost) { return false; } GameObject target = GlobalFunctions.ConvertGuidToObject<GameObject>(mObject); if (target == null) { return false; } base.StandardEntry(); base.BeginCommodityUpdates(); string swipeAnimationName = base.Target.GetSwipeAnimationName(target); if (Actor.SimDescription.Child) { swipeAnimationName = "c" + swipeAnimationName.Substring(1); } base.Actor.PlaySoloAnimation(swipeAnimationName, true); VisualEffect effect = VisualEffect.Create(base.Target.GetSwipeVfxName()); Vector3 zero = Vector3.Zero; Vector3 axis = Vector3.Zero; if (Slots.AttachToBone(effect.ObjectId, base.Target.ObjectId, ResourceUtils.HashString32("transformBone"), false, ref zero, ref axis, 0f) == TransformParentingReturnCode.Success) { effect.SetAutoDestroy(true); effect.Start(); } else { effect.Dispose(); effect = null; } //bool flag = false; //bool flag2 = false; bool succeeded = false; bool addInteractions = true; string tnsKey = null; if (target.IsLiveDraggingEnabled() && !target.InUse && (interactionDefinition.mPushEat || (target.ItemComp != null && target.ItemComp.CanAddToInventory(base.Actor.Inventory) && base.Actor.Inventory.CanAdd(target)))) //&& base.Actor.Inventory.TryToAdd(target))) { ServingContainerGroup groupServing = null; if (interactionDefinition.mSingleServing) { groupServing = target as ServingContainerGroup; if (groupServing != null) { target = groupServing.CookingProcess.CreateSingleServingOfFood(groupServing, true, true); addInteractions = false; } } if (interactionDefinition.mPushEat) { target.SetOpacity(0f, 0f); if (Actor.ParentToRightHand(target)) { succeeded = true; CarrySystem.EnterWhileHolding(Actor, target as ICarryable); } target.FadeIn(); } else if (Actor.Inventory.TryToAdd(target)) { succeeded = true; tnsKey = "PlacedInPersonalInventory"; } if (succeeded) { if (groupServing != null) { groupServing.DecrementServings (); if (groupServing.NumServingsLeft == 0) { groupServing.FadeOut (false, true); } } } else if (groupServing != null && target != null) { target.Destroy(); } } else if (!target.InUse && base.Actor.Household.SharedFamilyInventory.Inventory.TryToAdd(target)) { succeeded = true; tnsKey = "PlacedInFamilyInventory"; } //bool succeeded = flag || flag2; if (succeeded) { if (addInteractions) { Target.OnHandToolChildUnslotted(target, Slot.None); if (target is Snack) { target.AddInteraction(Sims3.Gameplay.Objects.CookingObjects.Eat.Singleton, true); target.AddInteraction(Snack_CleanUp.Singleton, true); } } /*if (flag2) { base.Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(base.Actor.IsFemale, "PlacedInFamilyInventory", new object[] { base.Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); } else { base.Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(base.Actor.IsFemale, "PlacedInPersonalInventory", new object[] { base.Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); }*/ if (tnsKey != null) { Actor.ShowTNSIfSelectable(CraftersConsignment.LocalizeString(Actor.IsFemale, tnsKey, new object[] { Actor, target }), StyledNotification.NotificationStyle.kGameMessagePositive); } base.Target.GiveMarkupBuffs(base.Actor, mObject); base.Actor.ModifyFunds(-mCost); base.Target.GiveLotOwnerMoney(mCost, base.Actor); base.Target.AccumulateRevenue(mCost); if (interactionDefinition.mPushEat) { (target as IFoodContainer).PushEatHeldFoodInteraction(Actor); } } base.EndCommodityUpdates(succeeded); base.StandardExit(); return succeeded; }
public static void PopulateAudioPrograms(Sim actor, ref InteractionInstanceParameters parameters, out List<ObjectPicker.TabInfo> listObjs, out List<ObjectPicker.HeaderInfo> headers, out int NumSelectableRows) { NumSelectableRows = 0x1; headers = new List<ObjectPicker.HeaderInfo>(); listObjs = new List<ObjectPicker.TabInfo>(); headers.Add(new ObjectPicker.HeaderInfo(Tablet.sLocalizationKeyAudio + ":Title", "Ui/Tooltip/ObjectPicker:Name", 0xfa)); List<ObjectPicker.RowInfo> rowInfo = new List<ObjectPicker.RowInfo>(); SkillNames[] collection = new SkillNames[] { SkillNames.Charisma, SkillNames.Cooking, SkillNames.Gardening, SkillNames.Guitar, SkillNames.Handiness, SkillNames.Nectar }; List<SkillNames> list2 = new List<SkillNames>(collection); foreach (Skill staticSkill in SkillManager.SkillDictionary) { if (staticSkill.IsHiddenSkill(actor.SimDescription.GetCASAGSAvailabilityFlags())) continue; // Don't include my custom skills as they increase points differently if (staticSkill.GetType().Assembly.FullName.Contains("NRaas")) continue; Skill element = actor.SkillManager.GetElement(staticSkill.Guid); if ((element == null) || !element.ReachedMaxLevel()) { string title = staticSkill.Name; if (Localization.HasLocalizationString(Tablet.sLocalizationKeyAudio + ":" + staticSkill.Guid)) { title = Localization.LocalizeString(Tablet.sLocalizationKeyAudio + ":" + staticSkill.Guid, new object[0]); } List<ObjectPicker.ColumnInfo> columnInfo = new List<ObjectPicker.ColumnInfo>(); ThumbnailKey thumbnail = new ThumbnailKey(staticSkill.IconKey, ThumbnailSize.Medium); columnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, title)); ObjectPicker.RowInfo info = new ObjectPicker.RowInfo(staticSkill.Guid, columnInfo); rowInfo.Add(info); } } ObjectPicker.TabInfo item = new ObjectPicker.TabInfo("Coupon", Tablet.LocalizeAudioProgram("TabName", new object[0x0]), rowInfo); listObjs.Add(item); }
public static List<ObjectPicker.RowInfo> ReturnMinorPetsAsRowInfo(List<MinorPet> pets) { List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (MinorPet p in pets) { List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); string text = p.Data.Name; //Localization.LocalizeString(p.Data.Name, new object[0]); list4.Add(new ObjectPicker.ThumbAndTextColumn(p.GetThumbnailKey(), text)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(p, list4); list.Add(item); } return list; }
/// <summary> /// Show minor pets dialog /// </summary> /// <returns></returns> public static List<MinorPet> ShowMinorPetDialog(List<MinorPet> pets) { // MinorPetTerrarium.Stock.Definition definition = base.InteractionDefinition as MinorPetTerrarium.Stock.Definition; List<ObjectPicker.HeaderInfo> list = new List<ObjectPicker.HeaderInfo>(); List<ObjectPicker.TabInfo> list2 = new List<ObjectPicker.TabInfo>(); string headerTextId = "Gameplay/Objects/MinorPetTerrarium/Stock:StockDialogPetColumnHeader"; string headerTooltipId = "Gameplay/Objects/MinorPetTerrarium/Stock:StockDialogPetColumnHeaderTooltip"; string headerTextId2 = "Gameplay/Objects/MinorPetTerrarium/Stock:StockDialogPriceColumnHeader"; string headerTooltipId2 = "Gameplay/Objects/MinorPetTerrarium/Stock:StockDialogPriceColumnHeaderTooltip"; list.Add(new ObjectPicker.HeaderInfo(headerTextId, headerTooltipId)); list.Add(new ObjectPicker.HeaderInfo(headerTextId2, headerTooltipId2)); List<ObjectPicker.RowInfo> list3 = new List<ObjectPicker.RowInfo>(); //foreach (KeyValuePair<MinorPetSpecies, MinorPetData> current in MinorPet.sData) //{ // if (current.Value.Stockable && definition.mPetTypeToShowInDialog == current.Value.MinorPetType && this.Target.AllowsPetType(current.Value.MinorPetType)) // { // ThumbnailKey thumbnail = new ThumbnailKey(GlobalFunctions.CreateProductKey(current.Value.MedatorName, current.Value.CodeVersion), ThumbnailSize.Medium); // List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); // string text = Localization.LocalizeString(current.Value.Name, new object[0]); // list4.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, text)); // list4.Add(new ObjectPicker.MoneyColumn(current.Value.StockCost)); // ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(current.Key, list4); // list3.Add(item); // } //} foreach (MinorPet current in pets) { // ThumbnailKey thumbnail = new ThumbnailKey(GlobalFunctions.CreateProductKey(current.Value.MedatorName, current.Value.CodeVersion), ThumbnailSize.Medium); List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); string text = Localization.LocalizeString(current.Data.Name, new object[0]); list4.Add(new ObjectPicker.ThumbAndTextColumn(current.GetThumbnailKey(), text)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(current.Data, list4); list3.Add(item); } list2.Add(new ObjectPicker.TabInfo(string.Empty, string.Empty, list3)); string title = Localization.LocalizeString("Gameplay/Objects/MinorPetTerrarium/Stock:StockDialogTitle", new object[0]); // List<ObjectPicker.RowInfo> list5 = Simpled ModalDialog. List<ObjectPicker.RowInfo> list5 = SimpleListDialog.Show(title, 0, list2, list, true, Localization.LocalizeString("Ui/Caption/Global:Accept", new object[0])); if (list5 == null) { return null; } List<MinorPet> minorPets = new List<MinorPet>(); foreach (var item in list5) { minorPets.Add(item.Item as MinorPet); } //MinorPetSpecies species = (MinorPetSpecies)list5[0].Item; //MinorPet minorPet = MinorPet.Make(species, true, false) as MinorPet; //if (minorPet != null) //{ // minorPet.SetBehaviorSMCStateStopped(); //} return minorPets; }
public static List<ObjectPicker.RowInfo> ReturnInventoryItemAsRowInfo(List<InventoryItem> items) { List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (InventoryItem i in items) { //Don't sell your cell, make a new mod for this ^_^ if (i.GetType() != typeof(PhoneSmart)) { List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); string text = i.Object.GetLocalizedName(); //Localization.LocalizeString(p.Data.Name, new object[0]); list4.Add(new ObjectPicker.ThumbAndTextColumn(i.Object.GetThumbnailKey(), text)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(i, list4); list.Add(item); } } return list; }
// Sims3.Gameplay.CAS.OutfitUtils public static void PopulatePieMenuPickerWithCategoryOutfits(CustomPedestal pedestal, SimDescription simDesc, ResourceKey currentOutfitKey, ObjectPicker.TabInfo allTab, OutfitCategories category, string textLabel, ObjectPicker.TabInfo tab, OutfitUtils.GreyedOutOutfitCallback greyed) { if (tab == null) { return; } int num = 1; simDesc = new SimDescription(); if (simDesc == null) { throw new Exception("ChangeOutfit: sim doesn't have a description!"); } //CMShopping.PrintMessage(Target.DisplayCategory.ToString()); pedestal.PedestalOutfitsSaveTo(simDesc); if (pedestal.DisplayCategory == category) { foreach (SimOutfit simOutfit in simDesc.GetOutfits(category)) { if (simOutfit.Key != currentOutfitKey) { ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(simOutfit.Key, new List <ObjectPicker.ColumnInfo>()); ThumbnailKey thumbnail = new ThumbnailKey(simOutfit, -4, ThumbnailSize.Medium, simDesc.IsHorse ? ThumbnailCamera.Side : ThumbnailCamera.Body, (uint)simDesc.AgeGenderSpecies); rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, textLabel + " " + num)); allTab.RowInfo.Add(rowInfo); tab.RowInfo.Add(rowInfo); } num++; } } //OutfitCategoryMap pedestalOutfits = pedestal.GetPedestalOutfits(pedestal.mDisplayType); //foreach (OutfitCategories outfitCategories in pedestalOutfits.Keys) //{ // ArrayList arrayList = pedestalOutfits[category] as ArrayList; // CMShopping.PrintMessage("arraylist: " + arrayList.Count); // for (int i = 0; i < arrayList.Count; i++) // { // CMShopping.PrintMessage(category + " " + i); // SimOutfit simOutfit = (SimOutfit)arrayList[i]; // ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(simOutfit.Key, new List<ObjectPicker.ColumnInfo>()); // ThumbnailKey thumbnail = new ThumbnailKey(simOutfit, -4, ThumbnailSize.Medium, simDesc.IsHorse ? ThumbnailCamera.Side : ThumbnailCamera.Body, (uint)simDesc.AgeGenderSpecies); // rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, textLabel + " " + num)); // allTab.RowInfo.Add(rowInfo); // tab.RowInfo.Add(rowInfo); // //simDesc.AddOutfit((SimOutfit)arrayList[i], outfitCategories); // } //} //foreach (SimOutfit simOutfit in simDesc.GetOutfits(category)) //{ // if (simOutfit.Key != currentOutfitKey) // { // ObjectPicker.RowInfo rowInfo = new ObjectPicker.RowInfo(simOutfit.Key, new List<ObjectPicker.ColumnInfo>()); // ThumbnailKey thumbnail = new ThumbnailKey(simOutfit, -4, ThumbnailSize.Medium, simDesc.IsHorse ? ThumbnailCamera.Side : ThumbnailCamera.Body, (uint)simDesc.AgeGenderSpecies); // rowInfo.ColumnInfo.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, textLabel + " " + num)); // allTab.RowInfo.Add(rowInfo); // tab.RowInfo.Add(rowInfo); // } // num++; //} }
public static StoreSetRegister ReturnRegisterForLinking(StoreSetRegister[] objects) { ThumbnailKey thumbnail = ThumbnailKey.kInvalidThumbnailKey; string text = string.Empty; List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (StoreSetRegister t in objects) { List<ObjectPicker.ColumnInfo> list2 = new List<ObjectPicker.ColumnInfo>(); int num = 0; thumbnail = t.GetThumbnailKey(); text = t.Info.RegisterName; //common list2.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, text)); list2.Add(new ObjectPicker.MoneyColumn(num)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list2); list.Add(item); } List<ObjectPicker.HeaderInfo> list3 = new List<ObjectPicker.HeaderInfo>(); List<ObjectPicker.TabInfo> list4 = new List<ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.HeaderInfo(string.Empty, string.Empty, 200)); list3.Add(new ObjectPicker.HeaderInfo("1", "2")); list4.Add(new ObjectPicker.TabInfo("3", CMStoreSet.LocalizeString("LinkToRegister", new object[0]), list)); List<ObjectPicker.RowInfo> list5 = TaxCollectorSimpleDialog.Show(CMStoreSet.LocalizeString("LikToRegister", new object[0] { }), 0, list4, list3, true); if (list5 == null || list5.Count != 1) { return null; } return (list5[0].Item as StoreSetRegister); }
public static List<ObjectPicker.RowInfo> ReturnHouseholdsAsRowInfo(List<Household> households) { List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (Household h in households) { if (h.Sims != null && h.Sims.Count > 0) { List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); list4.Add(new ObjectPicker.ThumbAndTextColumn(h.Sims.ToArray()[0].GetThumbnailKey(), h.Name)); list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(h, list4); list.Add(item); } } return list; }
protected override bool Run(SimDescription a, SimDescription b) { Relationship relation = Relationship.Get(a, b, true); if (relation == null) { return(false); } string currentState = relation.LTR.CurrentLTR; List <NewLevel> allOptions = new List <NewLevel>(); string newState = ChangeRelationship.NextNegativeRomanceState(currentState); while (newState != null) { if (!relation.LTR.RelationshipIsInappropriate(LTRData.Get(newState))) { allOptions.Insert(0, new NewLevel(newState, false)); } newState = ChangeRelationship.NextNegativeRomanceState(newState); } allOptions.Add(new NewLevel(currentState, true)); if (currentState == "Stranger") { newState = "Acquaintance"; allOptions.Add(new NewLevel(newState, true)); } else { newState = currentState; } newState = ChangeRelationship.NextPositiveRomanceState(newState); while (newState != null) { if (!relation.LTR.RelationshipIsInappropriate(LTRData.Get(newState))) { allOptions.Add(new NewLevel(newState, true)); } newState = ChangeRelationship.NextPositiveRomanceState(newState); } List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("Level", "Relationship Level", 230)); int count = 0; List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); foreach (NewLevel level in allOptions) { ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(level, new List <ObjectPicker.ColumnInfo>()); count++; item.ColumnInfo.Add(new ObjectPicker.TextColumn(count.ToString() + ". " + level.mState)); rowInfo.Add(item); } List <ObjectPicker.TabInfo> tabInfo = new List <ObjectPicker.TabInfo>(); tabInfo.Add(new ObjectPicker.TabInfo("shop_all_r2", Localization.LocalizeString("Ui/Caption/ObjectPicker:All", new object[0]), rowInfo)); string buttonTrue = "Ok"; string buttonFalse = Localization.LocalizeString("Ui/Caption/ObjectPicker:Cancel", new object[0]); List <ObjectPicker.RowInfo> list = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, "Relationship", buttonTrue, buttonFalse, tabInfo, headers, 1, new Vector2(-1f, -1f), true); List <string> selection = new List <string>(); if ((list == null) || (list.Count == 0)) { return(false); } NewLevel choice = list[0].Item as NewLevel; if (choice == null) { return(false); } if (choice.mState == currentState) { return(false); } bool bFirst = true; if (choice.mUp) { while (BumpUp(a, b, bFirst)) { if (choice.mState == relation.LTR.CurrentLTR) { return(true); } if (currentState == relation.LTR.CurrentLTR) { return(false); } currentState = relation.LTR.CurrentLTR; bFirst = false; } } else { while (BumpDown(a, b, bFirst)) { if (choice.mState == relation.LTR.CurrentLTR) { return(true); } if (currentState == relation.LTR.CurrentLTR) { return(false); } currentState = relation.LTR.CurrentLTR; bFirst = false; } } return(true); }
public static GameObject ReturnTaxCollector(TaxCollector active, List<GameObject> objects) { ThumbnailKey thumbnail = ThumbnailKey.kInvalidThumbnailKey; string text = string.Empty; List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (GameObject t in objects) { List<ObjectPicker.ColumnInfo> list2 = new List<ObjectPicker.ColumnInfo>(); int num = 0; thumbnail = t.GetThumbnailKey(); if (t.GetType() == typeof(TaxCollector)) { text = (t as TaxCollector).info.Name; num = (t as TaxCollector).info.Funds; } if (t.GetType() == typeof(DonationBox)) { text = (t as DonationBox).info.Name; num = (t as DonationBox).info.Funds; } //common list2.Add(new ObjectPicker.ThumbAndTextColumn(thumbnail, text)); list2.Add(new ObjectPicker.MoneyColumn(num)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list2); list.Add(item); } List<ObjectPicker.HeaderInfo> list3 = new List<ObjectPicker.HeaderInfo>(); List<ObjectPicker.TabInfo> list4 = new List<ObjectPicker.TabInfo>(); list3.Add(new ObjectPicker.HeaderInfo(string.Empty, string.Empty, 200)); list3.Add(new ObjectPicker.HeaderInfo(CommonMethodsTaxCollector.LocalizeString("Funds", new object[0]), CommonMethodsTaxCollector.LocalizeString("Funds", new object[0]))); list4.Add(new ObjectPicker.TabInfo("coupon", ShoppingRegister.LocalizeString("AvailableConcessionsFoods", new object[0]), list)); List<ObjectPicker.RowInfo> list5 = TaxCollectorSimpleDialog.Show(CommonMethodsTaxCollector.LocalizeString("TransferToObject", new object[0]), 0, list4, list3, true); if (list5 == null || list5.Count != 1) { return null; } return (list5[0].Item as GameObject); }
public static List<ObjectPicker.RowInfo> ReturnTaxCollectorsAsRowInfo(List<TaxCollector> collectors) { List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); foreach (TaxCollector t in collectors) { List<ObjectPicker.ColumnInfo> list4 = new List<ObjectPicker.ColumnInfo>(); list4.Add(new ObjectPicker.TextColumn(t.info.Name)); // list4.Add(new ObjectPicker.MoneyColumn(0)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(t, list4); list.Add(item); } return list; }
public override bool Run() { try { Sim sim = Target as Sim; if (sim == null) { sim = Actor; } List <Opportunity> allOpportunities = GetAllOpportunities(sim); if (allOpportunities.Count == 0) { SimpleMessageDialog.Show(Localize("Select:MenuName"), Localize("Choice:None")); return(false); } List <ObjectPicker.HeaderInfo> headers = new List <ObjectPicker.HeaderInfo>(); headers.Add(new ObjectPicker.HeaderInfo("NRaas.OpportunityControl.Choice:Header", "NRaas.OpportunityControl.Choice:Tooltip", 230)); List <ObjectPicker.RowInfo> rowInfo = new List <ObjectPicker.RowInfo>(); foreach (Opportunity opportunity in allOpportunities) { try { // Here to catch exceptions prior to RowInfo creation string name = opportunity.Name; if (opportunity.IsCareer) { name = Localization.LocalizeString("Ui/Caption/HUD/CareerPanel:Career", new object[0]) + ": " + name; } ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(opportunity, new List <ObjectPicker.ColumnInfo>()); item.ColumnInfo.Add(new ObjectPicker.TextColumn(name)); rowInfo.Add(item); } catch { } } List <ObjectPicker.TabInfo> tabInfo = new List <ObjectPicker.TabInfo>(); tabInfo.Add(new ObjectPicker.TabInfo("shop_all_r2", Localization.LocalizeString("Ui/Caption/ObjectPicker:All", new object[0]), rowInfo)); List <ObjectPicker.RowInfo> list = NRaas.OpportunityControlSpace.ObjectPickerDialog.Show(Localize("Choice:Title"), tabInfo, headers, 1); if ((list == null) || (list.Count == 0)) { return(false); } Opportunity sel = list[0].Item as Opportunity; if (sel == null) { return(false); } ; sim.OpportunityManager.AddOpportunityNow(sel.Guid, true, false); return(true); } catch (Exception exception) { Exception(exception); } return(false); }
public static IndustrialOven.MenuRecipeInfo ReturnSelectedFoodItem(OFBOven.Menu menu, Sim sim) { List<ObjectPicker.HeaderInfo> headers = new List<ObjectPicker.HeaderInfo>(); List<ObjectPicker.TabInfo> listObjs = new List<ObjectPicker.TabInfo>(); //IndustrialOven.Menu menu = parameters.Target as IndustrialOven.Menu; if (menu == null) { return null; } int cost = sim.FamilyFunds; if (sim.TraitManager.HasElement(TraitNames.DiscountDiner)) { cost = 2147483647; } List<IndustrialOven.MenuRecipeInfo> foodsAtOrBelowCost = menu.GetFoodsAtOrBelowCost(cost); if (foodsAtOrBelowCost == null) { return null; } headers.Add(new ObjectPicker.HeaderInfo("Store/Objects/IndustrialOven:SelectRecipeHeader", "Store/Objects/IndustrialOven:SelectRecipeHeaderTooltip", 500)); List<ObjectPicker.RowInfo> list = new List<ObjectPicker.RowInfo>(); for (int i = 0; i < foodsAtOrBelowCost.Count; i++) { Recipe recipe = foodsAtOrBelowCost[i].FindRecipe(); if (recipe != null) { List<ObjectPicker.ColumnInfo> list2 = new List<ObjectPicker.ColumnInfo>(); list2.Add(new ObjectPicker.ThumbAndTextColumn(recipe.GetThumbnailKey(ThumbnailSize.Large), recipe.GenericName)); ObjectPicker.RowInfo item = new ObjectPicker.RowInfo(foodsAtOrBelowCost[i], list2); list.Add(item); } } ObjectPicker.TabInfo item2 = new ObjectPicker.TabInfo("recipeRowImageName", StringTable.GetLocalizedString("Store/Objects/IndustrialOven/SetMenu:TabText"), list); listObjs.Add(item2); List<ObjectPicker.RowInfo> selection = ObjectPickerDialog.Show(true, ModalDialog.PauseMode.PauseSimulator, CommonMethodsOFBBistroSet.LocalizeString("SelectMeal", new object[]{sim.FullName}), CommonMethodsOFBBistroSet.LocalizeString("Select", new object[0]), CommonMethodsOFBBistroSet.LocalizeString("Cancel", new object[0]), listObjs, headers, 1); if (selection != null && selection.Count > 0) return ((IndustrialOven.MenuRecipeInfo)selection[0].Item); return null; }