public override void Execute(AbstractPerson ap) { // Debug.Log(ap.obj.GetInstanceID()+": "+ap.IsConst); //如果不可选定(硬直),告辞 //数值 // Debug.Log( ap.name + "收到" + this.damage + "伤害"); // BloodChange if (!ap.IsConst) { ap.TakeBattleEffect(new DamageNumberEffect(this.damage, 0.3f * ap.Scanler, Color.red, this.dir, 1f, UnityEngine.Random.Range(10, 60))); } CEventCenter.BroadMessage(Message.M_BloodChange(ap.obj), -this.damage); ap.OnTakeDamage(this.damage); if (!(ap is Player)) { // Debug.Log(Message.M_ChangeSmallLevel + " " + this.damage); CEventCenter.BroadMessage(Message.M_ChangeSmallLevel, this.damage); } this.Release(ap); }