Cast to Player Controller

This is actually a perfect example of a good reason to use Event Dispatchers. I would recommend using those in place of this, because in order to cast, you will need to get a reference of it somehow.

Are you familiar with dispatchers?