Game crashing when exiting or changing level

I have a blueprint actor which is a child of this c++ class pasted above. Whenever I place the actor in the world and try to quit the game or change levels it causes an access violation error. If I remove the blueprint child from the level it no longer has any issues. Also the game is multiplayer with 2 players. The call stack seems to just be listing UE engine code only so not sure what is causing this.

My code for the class which causes the issue: (.h) .h file - Pastebin.com and (.cpp) .cpp file - Pastebin.com

Here is the call stack: