public JumpTileCollision(Collision col, Player player, JumpTile tile) { Collision = col; Tile = tile; Player = player; }
private void GenerateSingleTile(JumpTile tile) { if (tile == null) { return; } Vector3 tilePosition = tile.transform.position; tilePosition.y = lastTileY + tileGapY; lastTileY = tilePosition.y; tilePosition.x = Random.Range(minTileX, maxTileX + 1); tile.transform.position = tilePosition; if (!tile.gameObject.activeSelf) { tile.gameObject.SetActive(true); } Collider tileCollider = tile.GetComponent <Collider> (); if (tileCollider != null && !tileCollider.enabled) { tileCollider.enabled = true; } int tileType = Random.Range(0, 201); MeshRenderer tileMesh = tile.GetComponentInChildren <MeshRenderer> (); bool isSpecialTile = false; if (tileType == 1) { tile.Type = JumpTile.TileType.DOUBLE_SCORE; tile.MoveStyle = JumpTile.MovementStyle.HORIZONTAL; tileMesh.material.color = Color.blue; isSpecialTile = true; } //if (tilePosition.y > 100f) { // brick if (tileType >= 10 && tileType <= 15) { tile.Type = JumpTile.TileType.BRICK; tileMesh.material.color = Color.red; isSpecialTile = true; } } //if (tilePosition.y > 500f) { // spike if (tileType == 200) { tile.Type = JumpTile.TileType.SPIKE; tileMesh.material.color = Color.black; isSpecialTile = true; } // shield if (tileType >= 50 && tileType <= 55) { tile.Type = JumpTile.TileType.SHIELD; tileMesh.material.color = Color.cyan; isSpecialTile = true; } } //if (tilePosition.y > 1000f) { if (tileType == 150) { tile.Type = JumpTile.TileType.ROCKET; tileMesh.material.color = Color.magenta; isSpecialTile = true; } } if (!isSpecialTile) { tile.MoveStyle = JumpTile.MovementStyle.NONE; tile.Type = JumpTile.TileType.REGULAR; tileMesh.material.color = Color.white; } }