예제 #1
0
    //public bool isAttacking = false;

    void OnTriggerEnter(Collider other)
    {
        if (animator.GetBool("IsAttacking") && other.CompareTag("Enemy"))
        {
            FlockAgent otherAgent = other.GetComponent <FlockAgent>();
            if (otherAgent != null)
            {
                otherAgent.Die();
                return;
            }
            RookController rookController = other.GetComponent <RookController>();
            if (rookController != null)
            {
                rookController.Die();
                return;
            }
        }
    }
예제 #2
0
        public void SetChessmanOnBoard(BoardDataModel boardDataModel)
        {
            _chessmans.ForEach((cc) => cc.Destroy());
            _chessmans.Clear();
            foreach (var data in boardDataModel.Data)
            {
                IChessmanController icc;
                switch (data.Value.Type)
                {
                case ChessmanType.Pawn:
                    icc = new PawnController();
                    break;

                case ChessmanType.Rook:
                    icc = new RookController();
                    break;

                case ChessmanType.Knight:
                    icc = new KnightController();
                    break;

                case ChessmanType.Bishop:
                    icc = new BishopController();
                    break;

                case ChessmanType.Queen:
                    icc = new QueenController();
                    break;

                case ChessmanType.King:
                    icc = new KingController();
                    break;

                default:
                    throw new System.NotImplementedException();
                }
                icc.Init(_prefabController, _view.GetBoardPosition, _view.GetFacingDirection, data.Key, data.Value.ColorType);
                icc.OnChessmanSelected += () => OnChessmanSelected?.Invoke(icc.GetChessmanType(), icc.GetChessmanColorType(), icc.GetBoardCoord());
                _chessmans.Add(icc);
            }
        }
 void Start()
 {
     rookController = GetComponentInParent <RookController>();
 }