public WndBadge(Badge badge) { var icon = BadgeBanner.Image(badge.Image); icon.Scale.Set(2); Add(icon); var info = PixelScene.CreateMultiline(badge.Description, 8); info.MaxWidth = WIDTH - MARGIN * 2; info.Measure(); var w = Math.Max(icon.Width, info.Width) + MARGIN * 2; icon.X = (w - icon.Width) / 2; icon.Y = MARGIN; var pos = icon.Y + icon.Height + MARGIN; foreach (var line in new LineSplitter(info.Font, info.Scale, info.Text()).Split()) { line.Measure(); line.X = PixelScene.Align((w - line.Width) / 2); line.Y = PixelScene.Align(pos); Add(line); pos += line.Height; } Resize((int)w, (int)(pos + MARGIN)); BadgeBanner.Highlight(icon, badge.Image); }
public static void ShowBadge(Badge badge) { var banner = BadgeBanner.Show(badge.Image); banner.Camera = uiCamera; banner.X = Align(banner.Camera, (banner.Camera.CameraWidth - banner.Width) / 2); banner.Y = Align(banner.Camera, (banner.Camera.CameraHeight - banner.Height) / 3); Game.Scene.Add(banner); }
public ListItem(Badge badge) { this._badge = badge; _icon.Copy(BadgeBanner.Image(badge.Image)); _label.Text(badge.Description); }