1. You need to have some way for the NPC to know he's made contact. I'm using passive NPCs (stamina = 0). When the Player makes contact either deliberately or via the collision sphere, I use the NPC control to delete the passive NPC and add a combat NPC at actualX and actualY. A bit of dialogue is added and therefore the dialogue window hides this action. This actually surprises the Player.
2. In the animation window, you can add sets of animation. The SECOND set (labeled 1 since the default is always labeled 0) is always the attack animation when connected to an aggressive NPC. So if you have an event connected to your attack animation, then you can switch NPCs to make it work the way you want. This would require you to have not a passive NPC in the first place, but an aggressive NPC. When the NPC is being attacked by the Player and consequently attacking will automatically switch to the attack animation.
3. The animation window will allow you to switch to random animation at the end of his animation. This works best, of course, with regular animations and passive NPCs.
4. You can have an animation without connecting it to an NPC and it'll still LOOK like it's an NPC you know. At the end of a rat animation, I have all sorts of events happening.
The thing with manually deleting and killing aggressive NPCs via the NPC control is that there seems to be a ghost NPC. So I don't manually delete or kill an NPC. This does not happen when deleting a passive NPC.
More information would be helpful though. I can't quite make out what you're doing here either. Sounds interesting! whahahahaha