Beispiel #1
0
 /// <summary>
 /// 订阅一堆的事件
 /// </summary>
 /// <param name="chess">增加判断是否是自身,因为这个方法在每个派生类中都添加订阅了,事件触发时只执行自身的方法,其他方法没用</param>
 public void SubscribeEvents(GameObject chess)
 {
     if (chess == gameObject)
     {
         ChooseEvent += new ChooseEventHandler(CancelChoose);           //订阅取消选择事件
         EatEvent    += new EatEventHandler(Eat);                       //订阅吃事件
         GameController.ResetChessReciprocalStateEvent += CancelChoose; //订阅重置棋子状态事件
         Chess_Boss.DetectBeAttackedEvent += DetectJiangJun;            //订阅检测将军事件
     }
 }
Beispiel #2
0
    protected ChessState chessState;    //棋子状态

    public virtual void Awake()
    {
        chessState   = ChessState.idle;
        ChooseEvent += new ChooseEventHandler(CancelChoose); //订阅事件
        EatEvent    += new EatEventHandler(Eat);             //订阅吃事件
    }