Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
            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);
            }
Ejemplo n.º 4
0
            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);
            }
Ejemplo n.º 5
0
            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);
                }
            }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        /// <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);
        }
Ejemplo n.º 8
0
 public static void PopulatePieMenuPickerWithOutfits(CustomPedestal pedestal, Sim actor, out List <ObjectPicker.TabInfo> listObjs, out List <ObjectPicker.HeaderInfo> headers, out int NumSelectableRows, OutfitUtils.GreyedOutOutfitCallback greyed)
 {
     if (pedestal == null)
     {
         CMShopping.PrintMessage("Pedestal null");
     }
     NumSelectableRows = 1;
     headers           = new List <ObjectPicker.HeaderInfo>();
     listObjs          = new List <ObjectPicker.TabInfo>();
     headers.Add(new ObjectPicker.HeaderInfo("Ui/Caption/ObjectPicker:Outfit", "Ui/Tooltip/ObjectPicker:Outfit"));
     headers[0].Width = 250;
     if (actor != null)
     {
         SimDescription simDescription = actor.SimDescription;
         ResourceKey    resourceKey    = CASUtils.GetOutfitInGameObject(actor.ObjectId);
         if (simDescription.HasSupernaturalOutfit(resourceKey) && simDescription.CreatedSim != null)
         {
             OutfitCategories currentOutfitCategory = simDescription.CreatedSim.CurrentOutfitCategory;
             int       currentOutfitIndex           = simDescription.CreatedSim.CurrentOutfitIndex;
             SimOutfit outfit = simDescription.GetOutfit(currentOutfitCategory, currentOutfitIndex);
             if (outfit != null && outfit.Key != ResourceKey.kInvalidResourceKey)
             {
                 resourceKey = outfit.Key;
             }
         }
         ObjectPicker.TabInfo tabInfo = new ObjectPicker.TabInfo("glb_all_r2", Localization.LocalizeString("Ui/Caption/ObjectPicker:All", new object[0]), new List <ObjectPicker.RowInfo>());
         string text   = Localization.LocalizeString("Ui/Caption/ObjectPicker:Everyday", new object[0]);
         string text2  = Localization.LocalizeString("Ui/Caption/ObjectPicker:Formalwear", new object[0]);
         string text3  = Localization.LocalizeString("Ui/Caption/ObjectPicker:Sleepwear", new object[0]);
         string text4  = null;
         string text5  = null;
         string text6  = null;
         string text7  = null;
         string text8  = null;
         string text9  = null;
         string text10 = null;
         ObjectPicker.TabInfo tabInfo2  = new ObjectPicker.TabInfo(actor.IsHorse ? "cas_acc_riding" : "shopping_clothing_everyday_r2", text, new List <ObjectPicker.RowInfo>());
         ObjectPicker.TabInfo tabInfo3  = new ObjectPicker.TabInfo("shopping_clothing_formal_r2", text2, new List <ObjectPicker.RowInfo>());
         ObjectPicker.TabInfo tabInfo4  = new ObjectPicker.TabInfo("shopping_clothing_sleepwear_r2", text3, new List <ObjectPicker.RowInfo>());
         ObjectPicker.TabInfo tabInfo5  = null;
         ObjectPicker.TabInfo tabInfo6  = null;
         ObjectPicker.TabInfo tabInfo7  = null;
         ObjectPicker.TabInfo tabInfo8  = null;
         ObjectPicker.TabInfo tabInfo9  = null;
         ObjectPicker.TabInfo tabInfo10 = null;
         ObjectPicker.TabInfo tabInfo11 = null;
         ObjectPicker.TabInfo tabInfo12 = null;
         if (simDescription.ToddlerOrAbove)
         {
             if (!simDescription.Toddler)
             {
                 text4    = Localization.LocalizeString("Ui/Caption/ObjectPicker:Swimwear", new object[0]);
                 text5    = Localization.LocalizeString("Ui/Caption/ObjectPicker:Athletic", new object[0]);
                 tabInfo5 = new ObjectPicker.TabInfo("shopping_clothing_swimwear_r2", text4, new List <ObjectPicker.RowInfo>());
                 tabInfo6 = new ObjectPicker.TabInfo("shopping_clothing_athletic_r2", text5, new List <ObjectPicker.RowInfo>());
             }
             if (GameUtils.IsInstalled(ProductVersion.EP8))
             {
                 text10    = Localization.LocalizeString("Ui/Caption/ObjectPicker:Outerwear", new object[0]);
                 tabInfo12 = new ObjectPicker.TabInfo("cas_clothing_i_outerwear", text10, new List <ObjectPicker.RowInfo>());
             }
         }
         if (simDescription.IsHorse)
         {
             text7     = Localization.LocalizeString("Ui/Caption/ObjectPicker:Racing", new object[0]);
             tabInfo9  = new ObjectPicker.TabInfo("cas_acc_racing", text7, new List <ObjectPicker.RowInfo>());
             text8     = Localization.LocalizeString("Ui/Caption/ObjectPicker:Jumping", new object[0]);
             tabInfo10 = new ObjectPicker.TabInfo("cas_acc_jumping", text8, new List <ObjectPicker.RowInfo>());
             text9     = Localization.LocalizeString("Ui/Caption/ObjectPicker:BridleOnly", new object[0]);
             tabInfo11 = new ObjectPicker.TabInfo("cas_acc_horse_bridles", text9, new List <ObjectPicker.RowInfo>());
         }
         SkillManager skillManager = actor.SkillManager;
         if (skillManager != null && skillManager.HasElement(SkillNames.MartialArts) && !simDescription.IsVisuallyPregnant)
         {
             headers[0].Width += 50;
             text6             = Localization.LocalizeString("Ui/Caption/ObjectPicker:MartialArts", new object[0]);
             tabInfo7          = new ObjectPicker.TabInfo("w_simple_martialarts_skill_s", text6, new List <ObjectPicker.RowInfo>());
         }
         if (actor.Occupation != null)
         {
             SimOutfit outfit2 = simDescription.GetOutfit(OutfitCategories.Career, 0);
             if (outfit2 != null)
             {
                 headers[0].Width += 50;
                 string tabText = Localization.LocalizeString("Ui/Caption/ObjectPicker:Miscellaneous", new object[0]);
                 tabInfo8 = new ObjectPicker.TabInfo("glb_i_options32", tabText, new List <ObjectPicker.RowInfo>());
             }
         }
         string textLabel = Localization.LocalizeString("Ui/Caption/ObjectPicker:Career", new object[0]);
         if (!actor.IsFoal)
         {
             OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Everyday, text, tabInfo2, greyed);
         }
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Formalwear, text2, tabInfo3, greyed);
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Sleepwear, text3, tabInfo4, greyed);
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Swimwear, text4, tabInfo5, greyed);
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Athletic, text5, tabInfo6, greyed);
         if (tabInfo12 != null)
         {
             OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Outerwear, text10, tabInfo12, greyed);
         }
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.MartialArts, text6, tabInfo7, greyed);
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Career, textLabel, tabInfo8, greyed);
         OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Bridle, text9, tabInfo11, greyed);
         Racing racing = skillManager.GetElement(SkillNames.Racing) as Racing;
         if (racing != null && racing.HasRacingSaddleOutfit)
         {
             OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Racing, text7, tabInfo9, greyed);
         }
         Jumping jumping = skillManager.GetElement(SkillNames.Jumping) as Jumping;
         if (jumping != null && jumping.HasJumpOutfit)
         {
             OutfitPicker.PopulatePieMenuPickerWithCategoryOutfits(pedestal, simDescription, resourceKey, tabInfo, OutfitCategories.Jumping, text8, tabInfo10, greyed);
         }
         listObjs.Add(tabInfo);
         if (tabInfo2.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo2);
         }
         if (tabInfo3.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo3);
         }
         if (tabInfo4.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo4);
         }
         if (tabInfo5 != null && tabInfo5.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo5);
         }
         if (tabInfo6 != null && tabInfo6.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo6);
         }
         if (tabInfo12 != null && tabInfo12.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo12);
         }
         if (tabInfo7 != null && tabInfo7.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo7);
         }
         if (tabInfo11 != null && tabInfo11.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo11);
         }
         if (tabInfo9 != null && tabInfo9.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo9);
         }
         if (tabInfo10 != null && tabInfo10.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo10);
         }
         if (tabInfo8 != null && tabInfo8.RowInfo.Count > 0)
         {
             listObjs.Add(tabInfo8);
         }
     }
 }
Ejemplo n.º 9
0
        // 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++;
            //}
        }
Ejemplo n.º 10
0
        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;

        }
Ejemplo n.º 11
0
        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);
        }
Ejemplo n.º 12
0
            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);
                }
            }