public override void ShowDetail(PanelBuilder panel) { panel.AddHeaderLabelT("name"); panel.AddInputRandom("Name", startConfig[id + "name"], s => { startConfig[id + "name"] = s; UIHelper.UpdateButtonText(button, s); }, () => LClass.s.NameGenerator("unit")); panel.AddHeaderLabelT("nation"); panel.AddDropdown(L.b.nations.Values().ToList(), startConfig[id + "nation"], s => { startConfig[id + "nation"] = s; }); panel.AddHeaderLabelT("coat"); panel.AddDropdown(L.b.coats.GetAllByCategory("kingdom"), startConfig[id + "coat"], s => { startConfig[id + "coat"] = s; UIHelper.UpdateButtonImage(button, L.b.coats[s].Sprite()); }); panel.AddHeaderLabelT("endlessWin"); panel.AddCheckbox(Boolean.Parse(startConfig[id + "winGold"]), S.T("endlessWinGold"), b => { startConfig[id + "winGold"] = b.ToString(); }); panel.AddHeaderLabelT("endlessLose"); panel.AddCheckbox(Boolean.Parse(startConfig[id + "loseKing"]), S.T("endlessLoseUnit"), b => { startConfig[id + "loseKing"] = b.ToString(); }); }
public override void ShowDetail(PanelBuilder panel) { _build.AddImageLabel(panel); panel.AddResT("constructionCost", _cost); panel.AddHeaderLabelT("general"); var hpap = CalculatedData.Calc(_build, _cost); panel.AddSubLabelT("hp", hpap.hp, "hp"); panel.AddSubLabelT("ap", hpap.ap, "ap"); var b = L.b.modifiers[C.BuildRes].CalcText(hpap.buildTime, S.ActPlayer(), pos); L.b.res[C.BuildRes].AddSubLabel(panel, b.value, "round", b.display); panel.AddButtonT("reset", (() => { _cost = new Dictionary <string, int>(_costOrg); ReCalc(0); })); //what replace? if (!_cost.ContainsKey(replace.id)) { panel.AddLabel(S.T("constructionOwnReplaceNothing", _build.Name())); return; } panel.AddHeaderLabel(S.T("constructionOwnReplace", replace.Text(_cost[replace.id]))); //build dropdown List <string> values = new List <string>(); List <string> titles = new List <string>(); foreach (Resource r in L.b.res.GetAllByCategory(replace.id)) { if (r.special == false && _town.KnowRes(r.id)) { values.Add(r.id); titles.Add(r.Text(_town.GetRes(r.id))); } } panel.AddDropdown(values.ToArray(), values[0], titles.ToArray(), s => { selected = L.b.res[s]; UpdateButton(); }); _one = panel.AddImageTextButton("", "logo", () => { ReCalc(1); }); _ten = panel.AddImageTextButton("", "logo", () => { ReCalc(10); }); max = panel.AddImageTextButton("", "logo", () => { ReCalc(Math.Min(_cost[replace.id], _town.GetRes(selected.id))); }); total = panel.AddImageTextButton("", "logo", () => { ReCalc(_cost[replace.id]); }); selected = L.b.res[values[0]]; UpdateButton(); }
public void AddOption(PanelBuilder panel) { if (type == "bool") { panel.AddCheckbox(Bool(), Name(), s => { SetValue(Convert.ToString(s)); }); return; } if (type.StartsWith("scale")) { panel.AddHeaderLabel(Name()); var t = SplitHelper.SeparatorInt(SplitHelper.Delimiter(type).value); panel.AddSlider(t[0], t[1], PlayerPrefs.GetInt(id, Int32.Parse(Value())), s => { SetValue(s.ToString()); }); return; } if (type == "text") { panel.AddInput(Name(), Value(), SetValue); } if (type.StartsWith("dropdown")) { var values = SplitHelper.Separator(SplitHelper.Delimiter(type).value); List <string> titles = new List <string>(); foreach (var value in values) { titles.Add(S.T(value)); } panel.AddHeaderLabel(Name()); panel.AddDropdown(values, Value(), titles.ToArray(), SetValue); } }