public override Texture2D GetIcon(GraphicsDevice gd, int store) { Outfit ThumbOutfit = (Avatar.Head == null) ? Avatar.Body : Avatar.Head; var AppearanceID = ThumbOutfit.GetAppearance(Avatar.Appearance); var Appearance = FSO.Content.Content.Get().AvatarAppearances.Get(AppearanceID); return(FSO.Content.Content.Get().AvatarThumbnails.Get(Appearance.ThumbnailTypeID, Appearance.ThumbnailFileID)); }
public static void LoadSim3D(Sim sim, Outfit OutfHead, AppearanceType skin) { var Apr = new Appearance(ContentManager.GetResourceFromLongID(OutfHead.GetAppearance(skin))); var Bnd = new Binding(ContentManager.GetResourceFromLongID(Apr.BindingIDs[0])); sim.HeadTexture = GetOutfitTexture(Bnd.TextureAssetID); sim.HeadMesh = GetOutfitMesh(sim.SimSkeleton, Bnd.MeshAssetID); }
public override Texture2D GetIcon(GraphicsDevice gd, int store) { if (Avatar.Head == null && Avatar.Body == null) { return(null); } Outfit ThumbOutfit = (Avatar.Head == null) ? Avatar.Body : Avatar.Head; var AppearanceID = ThumbOutfit.GetAppearance(Avatar.Appearance); var Appearance = FSO.Content.Content.Get().AvatarAppearances.Get(AppearanceID); if (Appearance == null) { return(null); } var ico = FSO.Content.Content.Get().AvatarThumbnails.Get(Appearance.ThumbnailTypeID, Appearance.ThumbnailFileID)?.Get(gd); //todo: better dispose handling for these icons return((store > 0 && ico != null)?TextureUtils.Decimate(ico, gd, 1 << (2 - store)):ico); }
private List <object> CollectionToDataProvider(Collection collection) { var dataProvider = new List <object>(); foreach (var outfit in collection) { Outfit TmpOutfit = new Outfit(ContentManager.GetResourceFromLongID( outfit.PurchasableOutfit.OutfitID)); Appearance TmpAppearance = new Appearance(ContentManager.GetResourceFromLongID( TmpOutfit.GetAppearance(AppearanceType))); ulong thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new TSOClient.Code.Utils.Promise <Texture2D>(x => GetTexture(thumbID)) }); } return(dataProvider); }
public override Texture2D GetIcon(GraphicsDevice gd, int store) { var icon = new Texture2D(gd, 0, 0); if (Avatar.Head == null && Avatar.Body == null) { return(null); } Outfit ThumbOutfit = (Avatar.Head == null) ? Avatar.Body : Avatar.Head; var AppearanceID = ThumbOutfit.GetAppearance(Avatar.Appearance); var Appearance = FSO.Content.Content.Get().AvatarAppearances.Get(AppearanceID); if (IsPet) { icon = UIIconCache.GetObject(this); } else { icon = FSO.Content.Content.Get().AvatarThumbnails.Get(Appearance.ThumbnailTypeID, Appearance.ThumbnailFileID).Get(gd); } return(icon); }
private List <object> CollectionToDataProvider(Collection collection) { var dataProvider = new List <object>(); foreach (var outfit in collection) { var purchasable = Content.Content.Get().AvatarPurchasables.Get(outfit.PurchasableOutfitId); Outfit TmpOutfit = Content.Content.Get().AvatarOutfits.Get(purchasable.OutfitID); Appearance TmpAppearance = Content.Content.Get().AvatarAppearances.Get(TmpOutfit.GetAppearance(AppearanceType)); FSO.Common.Content.ContentID thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbID.TypeID, thumbID.FileID).Get(GameFacade.GraphicsDevice)) }); } return(dataProvider); }
private List <object> RackOutfitsToDataProvider(RackOutfits outfits) { var appearanceType = GetAppearanceType(); var dataProvider = new List <object>(); foreach (var outfit in outfits.Outfits.OrderBy(x => x.Price)) { if (outfit.Gender != SelectedGender) { continue; } Outfit TmpOutfit = Content.Content.Get().AvatarOutfits.Get(outfit.AssetID); if (TmpOutfit == null) { continue; } Appearance TmpAppearance = Content.Content.Get().AvatarAppearances.Get(TmpOutfit.GetAppearance(appearanceType)); FSO.Common.Content.ContentID thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbID).Get(GameFacade.GraphicsDevice)) }); } return(dataProvider); }
protected virtual void ShowStock(string evt, byte[] body) { var packet = IoBufferUtils.Deserialize <VMEODRackStockResponse>(body, null); Stock = packet.Outfits; var appearanceType = GetAppearanceType(); var dataProvider = new List <object>(); foreach (var outfit in Stock) { //TODO: Use current avatars appearance type Outfit TmpOutfit = Content.Content.Get().AvatarOutfits.Get(outfit.asset_id); Appearance TmpAppearance = Content.Content.Get().AvatarAppearances.Get(TmpOutfit.GetAppearance(appearanceType)); FSO.Common.Content.ContentID thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbID).Get(GameFacade.GraphicsDevice)) }); } OutfitBrowser.DataProvider = dataProvider; UpdateUIState(); }
private void UpdateDataProvider() { if (Outfits == null) { return; } var dataProvider = new List <object>(); var outfitsInCategory = Outfits.Where(x => x.outfit_type == (byte)SelectedTab).ToList(); var appearanceType = GetAppearanceType(); foreach (var outfit in outfitsInCategory) { //TODO: Use current avatars appearance type Outfit TmpOutfit = Content.Content.Get().AvatarOutfits.Get(outfit.asset_id); Appearance TmpAppearance = Content.Content.Get().AvatarAppearances.Get(TmpOutfit.GetAppearance(appearanceType)); FSO.Common.Content.ContentID thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbID).Get(GameFacade.GraphicsDevice)) }); } OutfitBrowser.DataProvider = dataProvider; }
public static Appearance GetAppearanceObject(this Outfit outfit, AppearanceType type) { return(SimCatalog.GetAppearance(outfit.GetAppearance(type))); }
/* * Shamelessly copied from Fso.Client.UI.Screens.PersonSelectionEdit.cs */ private List <object> CollectionToDataProvider(Collection collection) { var dataProvider = new List <object>(); foreach (var outfit in collection) { var purchasable = Content.Content.Get().AvatarPurchasables.Get(outfit.PurchasableOutfitId); Outfit TmpOutfit = Content.Content.Get().AvatarOutfits.Get(purchasable.OutfitID); Appearance TmpAppearance = Content.Content.Get().AvatarAppearances.Get(TmpOutfit.GetAppearance(UserAppearanceType)); FSO.Common.Content.ContentID thumbID = TmpAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = outfit, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbID).Get(GameFacade.GraphicsDevice)) }); } // special case for skeleton costume added 23.10.18 if (IsCostumeTrunk) { var skeletonBodyPurchaseable = Content.Content.Get().AvatarPurchasables.Get(6000069312525); var skeletonBodyOutfit = Content.Content.Get().AvatarOutfits.Get(6000069312525); Appearance TempAppearance = Content.Content.Get().AvatarAppearances.Get(skeletonBodyOutfit.GetAppearance(UserAppearanceType)); FSO.Common.Content.ContentID thumbnailID = TempAppearance.ThumbnailID; dataProvider.Add(new UIGridViewerItem { Data = skeletonBodyPurchaseable, Thumb = new Promise <Texture2D>(x => Content.Content.Get().AvatarThumbnails.Get(thumbnailID).Get(GameFacade.GraphicsDevice)) }); } return(dataProvider); }