Better way to achieve semi-automatic fire for third person shooter?

I normally use a timer for all kind of shooting and timing, semi-auto could look like this:

Firerate is max shots per second.

But I wouldn’t pack all firing modes into the master - does every gun really need to know how to shoot in every mode? That enumerator switch seems redundant. You tell a child to fire and the child interprets that call in their own way.

If I needed modular guns, or guns with multiple firing modes, I’d have the firing mechanics in an actor component instead. You give the specific children their specific firing modes. It’s probably irrelevant if you 3 modes and 10 guns but becomes very relevant if you’re making Borderlands 5.


Admittedly, there will be as many semi-auto methods as there are people in the thread. :innocent:

2 Likes