private GameObject TranslateGeneralRoad() { GameObject generalRoad; if (previousRoadTile == null) { generalRoad = roadPooler.Spawn("TDR_Begin_1", Vector3.zero, Quaternion.identity); } else { generalRoad = roadPooler.Spawn(previousRoadTile.NextRoadTileCapabilitiesHolder.GetNextRandomWeightedRoadTileName()); ///for cinema } previousRoadTile = generalRoad.GetComponent <RoadTile>(); previousRoadTile.ResetPhysicalEnvironment(allSpawnedRoadLength); generalRoad.transform.localPosition = Vector3.forward * allSpawnedRoadLength; //roadPooler.Spawn(previousRoadTile.NextRoadTileCapabilitiesHolder.GetNextRandomWeightedRoadTileName()).transform.localPosition = generalRoad.transform.localPosition + Vector3.right * 81.45f; //roadPooler.Spawn(previousRoadTile.NextRoadTileCapabilitiesHolder.GetNextRandomWeightedRoadTileName()).transform.localPosition = generalRoad.transform.localPosition - Vector3.right * 81.45f; //roadPooler.Spawn(previousRoadTile.NextRoadTileCapabilitiesHolder.GetNextRandomWeightedRoadTileName()).transform.localPosition = generalRoad.transform.localPosition + Vector3.right * 81.45f * 2; //roadPooler.Spawn(previousRoadTile.NextRoadTileCapabilitiesHolder.GetNextRandomWeightedRoadTileName()).transform.localPosition = generalRoad.transform.localPosition - Vector3.right * 81.45f * 2; allSpawnedRoadLength += roadLength; StartCoroutine(PhysicsBoundariesRebuild()); return(generalRoad); }
public void Launch(TargetData targetData) { this.targetData = targetData; isLaunched = true; trail = effectPooler.Spawn(rocketTrailName, transform.position, transform.rotation); trail.GetComponent <CachedParticles>().PlayParticles(); StartCoroutine(AutoDestruction()); }
public void Fire() { if (Time.time >= fireTimer && targetIsVisible) { fireTimer = Time.time + gunData.rateofFire + Random.Range(0.01f, 0.05f) - rateOfFireImprove; for (int i = 0; i < gunsBarrels.Length; i++) { battleUnitPooler.Spawn(gunData.battleUnit, gunsBarrels[i].position, bulletSpreadedRotation); fireEffect[i].PlayParticles(); } //turretShotSource.PlayOneShot(turretShotSource.clip); if (!turretShotSource.isPlaying) { turretShotSource.Play(); } } if (battleType == GameEnums.BattleType.Tracking) { LookAtTarget(); } CalculateBulletsSpread(); }
private void Death() { for (int i = 0; i < explosionCount; i++) { randomExplosionPosition.x = Random.Range(-explosionCount / 5, explosionCount / 5); randomExplosionPosition.y = Random.Range(-explosionCount / 1, explosionCount / 2); randomExplosionPosition.z = Random.Range(-explosionCount / 3, explosionCount / 3); effectPooler.Spawn(bigExplosionName, transform.position + randomExplosionPosition, Quaternion.identity).GetComponent <CachedParticles>().PlayParticles(); } gameObject.SetActive(false); }
public void Fire() { if (Time.time >= fireTimer) { fireTimer = Time.time + gunData.rateofFire + Random.Range(0.01f, 0.05f); for (int i = 0; i < gunsBarrels.Length; i++) { battleUnitPooler.Spawn(gunData.battleUnit, gunsBarrels[i].position, bulletSpreadedRotation); } } CalculateBulletsSpread(); }
public void Fire() { if (Time.time >= fireTimer && targetIsVisible) { fireTimer = Time.time + gunData.rateofFire; for (int i = 0; i < gunsBarrels.Length; i++) { battleUnitPooler.Spawn(gunData.battleUnit, gunsBarrels[i].position, gunsBarrels[i].rotation).GetComponent <Rocket>().Launch(targetData); } if (!rocketLaunchSource.isPlaying) { rocketLaunchSource.Play(); } } if (battleType == GameEnums.BattleType.Tracking) { LookAtTarget(); } }