public void TestOneForOneConversion() { var trm = new TestResourceManager(RealCheatOptions.Instance, 1); var pr = new PartResource(new Part()); pr.resourceName = "LiquidFuel"; pr.amount = 1; pr.maxAmount = 1; List <PartResource[]> prs = new List <PartResource[]>(); prs.Add(new PartResource[] { pr }); var config = new DecayConfiguration(); config.decayConstant = 1; config.decayProduct = ResourceName.MonoPropellant; config.densityRatio = 1; config.decayRatio = 1; var configdict = new Dictionary <string, DecayConfiguration>(); configdict["LiquidFuel"] = config; var ret = KITResourceVesselModule.PerformResourceDecayEffect(trm, prs, configdict); Assert.IsTrue(ret.Count == 0, $"knew all inputs failed - {ret.Count}"); Assert.IsTrue(trm.resourceAmount.ContainsKey(ResourceName.MonoPropellant), "Monopropellant not found"); var equal = trm.resourceAmount[ResourceName.MonoPropellant] + pr.amount; Assert.IsTrue(equal == 1, $"not equal.. {equal}, {pr.amount}, {trm.resourceAmount[ResourceName.MonoPropellant]}"); trm.resourceAmount.Clear(); pr.amount = 1; config.densityRatio = 1.5; configdict["LiquidFuel"] = config; ret = KITResourceVesselModule.PerformResourceDecayEffect(trm, prs, configdict); Assert.IsTrue(trm.resourceAmount.ContainsKey(ResourceName.MonoPropellant), "Monopropellant not found"); equal = trm.resourceAmount[ResourceName.MonoPropellant] + pr.amount; Assert.IsTrue(1.32 == Math.Round(equal, 2), $"not equal {Math.Round(equal, 2)}.. {equal}, {pr.amount}, {trm.resourceAmount[ResourceName.MonoPropellant]}"); }
public static PopupDialog CreateDialog(string vesselName, KITResourceVesselModule kitResourceVesselModule) { var resourceUI = new ResourceUI(kitResourceVesselModule); List <DialogGUIBase> layout = new List <DialogGUIBase> { new DialogGUILabel(resourceUI.TextUI), new DialogGUIButton("Close", () => { }, 140f, 30f, true) }; Rect pos = new Rect(0.5f, 0.5f, 800, 800); return(PopupDialog.SpawnPopupDialog(//new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), new MultiOptionDialog( "ThisIsMyName", "", $"{vesselName} Resource Manager", UISkinManager.defaultSkin, pos, layout.ToArray()), false, UISkinManager.defaultSkin, false)); }
public ResourceUI(KITResourceVesselModule kitResourceVesselModule) { this._kitResourceVesselModule = kitResourceVesselModule; }