public StorageFurnitureContainer(StorageFurniture furniture) { this.Furniture = furniture; this.Data = new ContainerData(furniture.modData); StorageFurnitureContainer.DresserCategories ??= new HashSet <int>(new ShopMenu(new List <ISalable>(), context: "Dresser").categoriesToSellHere); }
private static bool PrefixCheckedAction(StorageFurniture __instance) { if (ModEntry.Config.FurniturePlacementKey.IsDown() && Game1.player.ActiveObject is SObject obj && __instance.heldObject.Value is null) { Game1.player.ActiveObject = null; __instance.heldObject.Value = obj; return(false); } return(true); }
} = false; // Automate doesn't support storage containers /********* ** Public methods *********/ /// <summary>Construct an instance.</summary> /// <param name="furniture">The in-game storage furniture.</param> /// <param name="reflection">Simplifies access to private code.</param> public StorageFurnitureContainer(StorageFurniture furniture, IReflectionHelper reflection) { string defaultName = reflection.GetMethod(furniture, "getData").Invoke <string[]>()?[0]; this.Furniture = furniture; this.Data = ContainerData.FromModData(furniture.modData, defaultName); this.DefaultName = defaultName; StorageFurnitureContainer.DresserCategories ??= new HashSet <int>(new ShopMenu(new List <ISalable>(), context: "Dresser").categoriesToSellHere); }
public static bool StorageFurniture_DoAction_Prefix(StorageFurniture __instance, Farmer who, bool justCheckingForActivity) { return(ShouldCancel()); }
private static void PrefixChestOpen(StorageFurniture __instance) => __instance.ClearNulls();