I disagree. An AI can have at one time only one state/behavior.class AIActor is a bag of behaviours.
There does not need to be a notification to the game state class that an actor has been deleted and so its behavior must be deleted.
Firstly, this can be achieved more easily via the simple use of smart pointers, but secondly it shouldn’t be done at all. The pool of behaviors doesn’t need to be released until the game state is over.
L. Spiro