I’ve been working on a simple game, and I’ve already got functional doors, decorations, and a TV that you can turn on and off! But, I’ve been having a hard time researching the type of inventory I want to make.
I want to make one that’s like the one from Hello Neighbor.
Here’s an image of it:

Can I please have some help?
What kinds of functionality would you like it to have?
I would like to make it so you can pick up items, use that item, drop it, or throw it.
Some items might have one use like the lockpick in Hello Neighbor.
It will also have 4 slots.
I’ll also add tons of items to this game. I promise I’ll credit you.
So the way I would go about it would be to code an InventoryManager script. And I would create a Pickup script on anything you want picking up. When the player presses the pickup button, it either does a raycast and see if it hits a Pickup object, or it searches the surrounding area for items (depending on how you want it to work). If it gets a Pickup item, it Destroys() it from the world and puts some data in the InventoryManager to represent it.
If you want to show your player holding the items, you could do that by parenting the object to the player and then putting it at arm-height. That’s probably the simplest way to do it. Then, to throw it, just unparent it and add some force etc.
Your inventory manager will need some functions like IsFull() or ChangeSlot() to handle all the logic.
In terms of setting it up, you would just create a Canvas, maybe four panels for the inventory slots. You can use four RawImages for the item sprites and change the .texture depending on the item (or you could cheat and instead of having to spend ages making custom sprites for each object, you could render the 3D object in another camera somewhere and project it onto the sprite GUI, at a minor performance cost).
There are also inventory plugins etc that might do all that for you. But whether they’ll give you the exact functionality you want, who knows.
If you get stuck feel free to ask.