Beispiel #1
0
        public bool TryMoveAlongDirAt(Hex coord, int dir = -1)
        {
            CellObjCtrl cctrl = _GridCtrl.GetCellCtrlAt(coord);

            if (cctrl == null)
            {
                return(false);
            }
            if (cctrl.IsBlocked())
            {
                return(false);
            }
            if (cctrl._TgtObj == null)
            {
                return(false);
            }

            if (dir >= 0 && dir <= 5)
            {
                cctrl.TurnToDir(dir);
            }

            CellObjCtrl fwdCCtrl = CellObjCtrlUtils.GetFwdCellObjCtrl(cctrl);

            if (fwdCCtrl == null)
            {
                return(false);
            }
            if (fwdCCtrl.IsBlocked())
            {
                return(false);
            }
            if (fwdCCtrl._TgtObj != null)
            {
                return(false);
            }

            _MiroMgr.MoveFwdInTF(cctrl.transform);

            return(false);
        }