コード例 #1
0
 protected override void OnTakesDamage(DamageEventArgs e)
 {
     base.OnTakesDamage(e);
     if (!isFleeing)
     {
         fleeTakesDamageAcc += e.AdjustedDamage;
         if (fleeTakesDamageAcc > 1000)
         {
             isFleeing = true;
             CancelActiveAbilities();
             ClearAbilities();
             ChangeState(new Idle(this));
             var ab = new WolfFlee();
             ab.EndPerforming += new EventHandler(ab_EndPerforming);
             ab.Performer      = this;
             ab.TargetEntity   = lastChasing;
             ab.Mediator       = this;
             ab.TryStartPerform();
         }
     }
 }
コード例 #2
0
 protected override void OnTakesDamage(DamageEventArgs e)
 {
     base.OnTakesDamage(e);
     if (!isFleeing)
     {
         fleeTakesDamageAcc += e.AdjustedDamage;
         if (fleeTakesDamageAcc > 1000)
         {
             isFleeing = true;
             CancelActiveAbilities();
             ClearAbilities();
             ChangeState(new Idle(this));
             var ab = new WolfFlee();
             ab.EndPerforming += new EventHandler(ab_EndPerforming);
             ab.Performer = this;
             ab.TargetEntity = lastChasing;
             ab.Mediator = this;
             ab.TryStartPerform();
         }
     }
 }