public Tile GetNextTile(Tile currentTile, ref LookingSide lookingSide) { var tilePosV2 = currentTile.position + GetDirection(lookingSide); if (tilePosV2.x >= size) { lookingSide = LookSide.NextLookingSide(lookingSide); tilePosV2 = currentTile.position + GetDirection(lookingSide); lookingSide = LookSide.NextLookingSide(lookingSide); } if (tilePosV2.x < 0) { lookingSide = LookSide.NextLookingSide(lookingSide); tilePosV2 = currentTile.position + GetDirection(lookingSide); lookingSide = LookSide.NextLookingSide(lookingSide); } if (tilePosV2.y >= size) { lookingSide = LookSide.NextLookingSide(lookingSide); tilePosV2 = currentTile.position + GetDirection(lookingSide); lookingSide = LookSide.NextLookingSide(lookingSide); } if (tilePosV2.y < 0) { lookingSide = LookSide.NextLookingSide(lookingSide); tilePosV2 = currentTile.position + GetDirection(lookingSide); lookingSide = LookSide.NextLookingSide(lookingSide); } return(GetTile(tilePosV2)); }
public MarakeshModelController(GameObject marakeshGameObject, Tile tile) { this.marakeshGameObject = Object.Instantiate(marakeshGameObject); this.marakeshGameObject.transform.position = tile.posV3; currentTile = tile; lookingSide = LookingSide.up; startRot = marakeshGameObject.transform.rotation; }
public static LookingSide NextLookingSide(LookingSide lookingSide) { lookingSide++; if ((int)lookingSide == lookingSideLength) { lookingSide = 0; } return(lookingSide); }
private void OnEnable() { attackType = GetComponent <AttackingBase>(); if (transform.rotation.eulerAngles.y == 0) { //Смотрит направо currentLooking = LookingSide.RightSide; } attackType.SetEnemyController(this); shieldPeriod = ShieldTimePeriod; }
private Vector2Int GetDirection(LookingSide lookingSide) { switch (lookingSide) { case LookingSide.up: return(new Vector2Int(0, 1)); case LookingSide.right: return(new Vector2Int(1, 0)); case LookingSide.down: return(new Vector2Int(0, -1)); case LookingSide.left: return(new Vector2Int(-1, 0)); default: return(new Vector2Int(0, 1)); } }
public void SetMarkeshPosition(int tile, LookingSide lookingSide) { throw new NotImplementedException(); }
public void Rotate() { lookingSide = LookSide.NextLookingSide(lookingSide); CheckLookingSide(); }