how to destoy the shield after enemy is destroyed

Honestly, its probably a c++ only override?
Not sure, depends on engine version too.

If you are able to find the override and create your own function - what is the problem exactly? Is it able to do a simple task like “print string”?