Bind Crafting Station to a non-Player Inventory

jkaczmar

New member
How do you tie a crafting station to an inventory other than the Player's? I want one of the crafting stations to pull from a very large bin of supplies rather than my player's limited inventory. I've tried a couple of things, but in all cases the player's inventory overwrites my selected inventory when I interact with the crafting station in Play Mode:

  • Hard coding the storage chest inventory in the Crafting Menu component.
  • Putting a unique Inventory Identifier of 97 on the storage chest and referencing this identifier in the Crafing Menu component.

crafting menu question.png
 
Most likely it's because of the CraftingMenuOpener component.
Your character interacts with a trigger, which tells the CraftingMenuOpener that the character is opening the CraftingMenu. The CraftingMenuOpener (like the ShopMenuOpener) will by default set the inventory of the character interacting with the crafter as the client inventory. This is for the use case where you have multiple players with their own inventory doing their own crafting.

Remove that option from the CraftinMenuOpener and you should be good to go
 
I should have added that I tried playing around with that last night as well to no avail. I've attached a screenshot with the defaults settings for CraftingMenuOpener, which opens with the Player inventory as I would expect. However, after changing CraftingMenuOpener to point specifically to the Storage bin inventory, it still opens the player inventory. The 97 in the image is my attempt to also get the CraftingMenuOpener to recognize the storage bin which has an inventory identifier of 97. Are there other component settings that I should consider to override the default behavior to go to the Player Inventory?
default crafting menu opener.pngModified Crafting Menu Opener.png
 
I'm sorry, that's my fault I wrongly assumed there was an option in there.

Actuallthe components that sets the inventory is the Menu interactable Behaviour. This sets the Inventory as it opens the menu.
Remove that component completely and instead set the "Open()" function inside the OnInteract function
1738663168605.png

I hope that works for you :)
 
I'm sorry, that's my fault I wrongly assumed there was an option in there.

Actuallthe components that sets the inventory is the Menu interactable Behaviour. This sets the Inventory as it opens the menu.
Remove that component completely and instead set the "Open()" function inside the OnInteract function
View attachment 13661

I hope that works for you :)
That worked. Thanks for the help!
 
Back
Top