void TeleportPlayerOutsideBloc(GameObject entity) { TilemapsManager map = entity.GetComponent <PlayerArea>().GetPlayerMap(); Transform playerTransform = entity.GetComponent <Transform>(); while (!map.CellIsEmpty(playerTransform.position)) { playerTransform.Translate(new Vector3(0, 1, 0)); } }
void FoundPlayerMap() { GameObject[] maps = GameObject.FindGameObjectsWithTag("Map"); SpriteRenderer playerRenderer = gameObject.GetComponent <SpriteRenderer>(); foreach (GameObject map in maps) { TilemapsManager tilemap = map.GetComponent <TilemapsManager>(); float startX = map.transform.position.x; float endX = startX + (tilemap.chunkWidth); if (transform.position.x > startX && transform.position.x < endX) { this.playerMap = tilemap; this.leftBound = startX + CELL_SIZE + playerRenderer.bounds.size.x / 2; this.rightBound = endX - CELL_SIZE - playerRenderer.bounds.size.x / 2; } } }