public override void AttackAsync() { AttackAsyncCaller asyncCaller = new AttackAsyncCaller(Attack); OnAgentAttackStarted(); asyncCaller.BeginInvoke(new AsyncCallback(OnAgentAttackCompleted), null); }