//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; } } }
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>(); }