Scriptable Object Tutorial/Use in Inventory System

I’m using the Inventory Engine asset to build an inventory system and its my first exposure to Scriptable Objects. I feel like I understand them conceptually, but I’m still having some issues with some of their uniqueness.

So, I’m watching this: Create an Ability System with Scriptable Objects - Unity Learn to get a sort of idea about how to achieve what I want, along with the Inventory Engine documentation. His method seems a little more complicated that what I need to perform, but I want to make sure there isn’t a reason he’s doing it this way.

In the video, he has a Monobehaviour which checks for input and then calls another method on the same object, that method then triggers an overridden method inside the SO, which then calls a method for the other monobehaviour that actually performs the shooting (lasers, etc.)

I feel like I could just have a single monobehaviour that checks for input and defines the firing, but when I tried to call the method from my monobehaviour it says that it doesn’t exist. The method is defined in the parent SO (I have InventormItem —> WeaponItem). I don’t really fully understand calling arguments inside of methods, so I think that might be a reason? When, why, how, to use arguments?

Fixed it. I had the wrong using tag.