override protected void StartInner() { BackButton = delegate() { gameObject.AddComponent <ScreenAdvModeStart> (); Destroy(this); }; Prepare(BackButton); Mission = Mission.SearchMissionForPlayer(Game.Me.Player); }
public static void DrawBackground(AfterButton afterButton, bool showSettings = false) { GuiHelper.DrawElement("Images/popupWindow", 0.02, 0.1, 1, 0.94); GuiHelper.ButtonWithText(0.9, 0.92, 0.4, 0.2, "", SpriteManager.GetBackButton(), GuiHelper.CustomButton, afterButton); if (showSettings && GUI.Button(new Rect(GuiHelper.PercentW(0.8), GuiHelper.PercentH(0.70), GuiHelper.PercentW(0.2), GuiHelper.PercentH(0.2)), SpriteManager.GetSettingsIcon(), GuiHelper.CustomButton)) { ScreenOptions so = Camera.main.gameObject.AddComponent <ScreenOptions>(); so.Prepare(delegate(){ Destroy(so); }); } }
override protected void OnGUIInner() { PlayerState state = Game.Me.Player; GuiHelper.DrawAtTop("Adventure mode"); GuiHelper.DrawBeneathLine("Available coins: " + state.Coins); //, GuiHelper.SmallFontTop, 0.1, 0.2, 0.8, 0.1); float y = 0.38f; foreach (KeyValuePair <CarStatisticType, CarStatistic> kvp in state.CarConfig.CarStatistics) { CarStatistic cs = kvp.Value; if (cs.IsUnlockedFor(state)) { AfterButton upgrade = delegate() { ScreenUpgrade su = gameObject.AddComponent <ScreenUpgrade>(); su.PrepareWith(cs); Destroy(this); }; string inBrackets = ""; if (!cs.Type.AboveMinimum(cs.Type.ValueForLevel(cs.Level + 1))) { inBrackets = "(Best)"; } else if (cs.CanUpgrade(state.Coins)) { inBrackets = "(Upg for " + cs.UpgradeCost() + ")"; } string text = cs.Type.Name() + ": " + cs.ValueFormatted + " " + inBrackets; GuiHelper.ButtonWithText(0.5, y, 1, 0.15, text, SpriteManager.GetRectangleButton(), GuiHelper.MicroFont, upgrade); //this has to be drawn after button with text because of overlay if (cs.CanUpgrade(state.Coins)) { GuiHelper.ButtonWithText(0.9, y, 0.15, 0.15, "", SpriteManager.GetUpArrow(), GuiHelper.MicroFont, upgrade); } y += 0.093f; } } GuiHelper.YesButton(delegate() { ScreenStartingMission ssm = gameObject.AddComponent <ScreenStartingMission>(); Destroy(this); }, "Race"); }
/// <summary> /// Adds the "more" button to bottom of UI /// </summary> /// <param name="after"></param> private void AddAfterButtonToUI(string after) { AfterButton after_but = new AfterButton(after); after_but.Content = "More"; after_but.Click += new RoutedEventHandler(after_but_Click); Grid.SetRow(after_but, num_links); after_but.HorizontalAlignment = HorizontalAlignment.Center; RowDefinition row = new RowDefinition(); row.Height = GridLength.Auto; LinkPanel.RowDefinitions.Add(row); LinkPanel.Children.Add(after_but); }
/// <summary> /// Handler for the "more" button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void after_but_Click(object sender, RoutedEventArgs e) { AfterButton after_but = (AfterButton)sender; LinkPanel.Children.Remove(after_but); LinkPanel.RowDefinitions.Remove(LinkPanel.RowDefinitions.Last()); Tuple <List <Link>, string> result; if (current_state.current_subreddit.title == null || current_state.current_subreddit.title.Equals("")) { result = await requester.GetHot("after=" + after_but.after + "&count=" + max_count); } else { result = await requester.GetHot(current_state.current_subreddit, "after=" + after_but.after + "&count=" + max_count); } List <Link> links = result.Item1; string after = result.Item2; await AddLinksToUI(links, after); }
public void PrepareMe(AfterYesM afterYes, AfterButton afterNo) { AfterYes = afterYes; Prepare(afterNo); }
public static void DrawMissionLabel(int slot, string name, string detail, string reward, AfterButton afterButton) { double y = 0.1 + slot * 0.15; GuiHelper.DrawText(name, MicroFontLeft, 0.1, y, 0.3, 0.15); GuiHelper.DrawText(detail, MicroFontLeft, 0.37, y - 0.02, 0.5, 0.15); GuiHelper.DrawText(reward, MicroFontLeft, 0.37, y + 0.02, 0.5, 0.15); GuiHelper.ButtonWithText(0.82, y + 0.02, 0.15, 0.15, "Race", SpriteManager.GetRoundButton(), SmallFont, afterButton); }
public static void ButtonWithText(double x, double y, double w, double h, string text, Texture background, GUIStyle font, AfterButton afterButton) { int _x = PercentW(x); int _y = PercentH(y); int _w = PercentW(w); int _h = PercentW(h); if (background != null) { if (GUI.Button(new Rect(_x - _w / 2, _y - _h / 2, _w, _h), background, font)) { afterButton(); } GUI.Label(new Rect(_x - _w / 2, _y - _h / 2, _w, _h), text, font); } else { if (GUI.Button(new Rect(_x - _w / 2, _y - _h / 2, _w, _h), text, font)) { afterButton(); } } }
public static void DrawButton(string text, GUIStyle font, double x, double y, double w, double h, AfterButton afterButton) { int tmpX = PercentW(x); int tmpY = PercentH(y); int tmpW = w == -1?Screen.width:PercentW(w); int tmpH = w == -1 ? Screen.height : PercentH(h); if (GUI.Button(new Rect(tmpX, tmpY, tmpW, tmpH), text, font)) { afterButton(); } }
public void Prepare(AfterButton afterButton, string top, string middle) { base.Prepare(afterButton, true); Top = top; Middle = middle; }
public void Prepare(AfterButton afterButton, bool showBackground = true) { AfterButton = afterButton; ShowBackground = showBackground; }