using UnityEngine.Scripting; #nullable disable [Preserve] public class XUiC_WorkstationFuelGridRebirth : XUiC_WorkstationFuelGrid { public string requiredFuels = ""; [PublicizedFrom(EAccessModifier.Private)] public bool requiredFuelsOnly; public event XuiEvent_WorkstationItemsChanged OnWorkstationFuelsChanged; public override void Init() { //Log.Out("XUiC_WorkstationFuelGridRebirth-Init START"); base.Init(); string[] strArray = this.requiredFuels.Split(',', StringSplitOptions.None); for (int index = 0; index < this.itemControllers.Length; ++index) { //Log.Out("XUiC_WorkstationFuelGridRebirth-Init index: " + index); if (index < strArray.Length) { //Log.Out("XUiC_WorkstationFuelGridRebirth-Init GetItemClass: " + ItemClass.GetItemClass(strArray[index])); //Log.Out("XUiC_WorkstationFuelGridRebirth-Init this.requiredFuelsOnly: " + this.requiredFuelsOnly); ((XUiC_RequiredItemStack)this.itemControllers[index]).RequiredItemClass = ItemClass.GetItemClass(strArray[index]); ((XUiC_RequiredItemStack)this.itemControllers[index]).RequiredItemOnly = this.requiredFuelsOnly; } else { ((XUiC_RequiredItemStack)this.itemControllers[index]).RequiredItemClass = (ItemClass)null; ((XUiC_RequiredItemStack)this.itemControllers[index]).RequiredItemOnly = false; } } } /*public bool AddItem(ItemClass _itemClass, ItemStack _itemStack) { Log.Out("XUiC_WorkstationFuelGridRebirth-AddItem START"); if (!this.requiredFuelsOnly) { Log.Out("XUiC_WorkstationFuelGridRebirth-AddItem REQUIRED ONLY"); return false; } Log.Out("XUiC_WorkstationFuelGridRebirth-AddItem BYPASSED"); this.TryStackItem(this.isOn ? 1 : 0, _itemStack); return _itemStack.count > 0 && this.AddItem(_itemStack); }*/ public override bool ParseAttribute(string name, string value, XUiController _parent) { //Log.Out("XUiC_WorkstationFuelGridRebirth-ParseAttribute START, name: " + name); bool attribute = base.ParseAttribute(name, value, _parent); if (attribute) return attribute; switch (name) { case "required_fuels": this.requiredFuels = value; //Log.Out("XUiC_WorkstationFuelGridRebirth-Init this.requiredFuels: " + this.requiredFuels); break; case "required_fuels_only": this.requiredFuelsOnly = StringParsers.ParseBool(value); //Log.Out("XUiC_WorkstationFuelGridRebirth-Init this.requiredFuelsOnly: " + this.requiredFuelsOnly); break; default: return false; } return true; } }