void startOver() { curTime = waveTime; curLaunchStage = launchStage.toAtmosphere; Debug.Log("STartover"); }
void reachedCeiling() { Debug.Log("Ceiling!!"); curTime = RocketShrinkTime; curLaunchStage = launchStage.toInfinity; Smoke.SetActive(false); CeilingHole.SetActive(false); }
public void resetLaunch() { startLaunch = false; waterRend.material.SetFloat("_DispAmount", 0.06f); waterRend.material.SetTexture("_DispTex", waterWavesTex); Water.GetComponent <ScrollUVWave>().scrollSpeed = 0.085f; #pragma warning disable 0618 Smoke.GetComponent <ParticleSystem>().emissionRate = 10; #pragma warning restore 0618 Smoke.SetActive(false); // Atmosphere.transform.position = new Vector3(0,0,0); Atmosphere.SetActive(false); // CeilingRift.transform.position = new Vector3(0, 0, 0); CeilingRift.transform.localPosition = new Vector3(CeilingRift.transform.localPosition.x, ceilingHeight * 5, CeilingRift.transform.localPosition.z); CeilingRift.SetActive(false); CeilingHole.SetActive(true); curLaunchStage = launchStage.waiting; Destroy(FuelThruster1.GetComponent <Rigidbody>()); Destroy(FuelThruster2.GetComponent <Rigidbody>()); Destroy(FuelTank.GetComponent <Rigidbody>()); FuelThruster1.transform.parent = Shuttle.transform; FuelThruster2.transform.parent = Shuttle.transform; FuelTank.transform.parent = Shuttle.transform; siloDoor1.transform.localPosition = siloDoor1StartPos; siloDoor2.transform.localPosition = siloDoor2StartPos; Shuttle.transform.localPosition = ShuttleStartPos; Shuttle.transform.localRotation = ShuttleStartRot; Shuttle.transform.localScale = startLocalScale; FuelTank.transform.localPosition = FuelTankStartPos; FuelTank.transform.localRotation = FuelTankStartRot; FuelTank.transform.localScale = Vector3.one; FuelThruster1.transform.localPosition = FuelThruster1StartPos; FuelThruster1.transform.localRotation = FuelThruster1StartRot; FuelThruster1.transform.localScale = Vector3.one; FuelThruster2.transform.localPosition = FuelThruster2StartPos; FuelThruster2.transform.localRotation = FuelThruster2StartRot; FuelThruster2.transform.localScale = Vector3.one; Start(); }
// Use this for initialization void Start() { levelState = LevelControl.Instance; startLocalScale = Shuttle.transform.localScale; // Vector3 atmosPos = new Vector3(Atmosphere.transform.position.x, Atmosphere.transform.position.y + atmosphereHeight, Atmosphere.transform.position.z); Atmosphere.transform.localPosition += Vector3.up * atmosphereHeight * 5; CeilingHole.SetActive(true); CeilingRift.SetActive(false); // Vector3 CeilingPos = new Vector3(CeilingRift.transform.position.x, CeilingRift.transform.position.y + ceilingHeight, CeilingRift.transform.position.z); CeilingRift.transform.localPosition = new Vector3(CeilingRift.transform.localPosition.x, ceilingHeight * 5, CeilingRift.transform.localPosition.z); curLaunchStage = launchStage.start; speed = stageOneSpeed; curTime = startTime; waterRend = Water.GetComponent <Renderer>(); waterWavesTex = waterRend.material.GetTexture("_DispTex"); FuelThruster1Flame.transform.localScale = new Vector3(0, 0, 0); FuelThruster1Flame.SetActive(false); FuelThruster2Flame.transform.localScale = new Vector3(0, 0, 0); FuelThruster2Flame.SetActive(false); for (int i = 0; i < ShuttleThrusters.Length; i++) { ShuttleThrusters[i].transform.localScale = new Vector3(0, 0, 0); ShuttleThrusters[i].SetActive(false); } //store values for reset ShuttleStartPos = Shuttle.transform.localPosition; FuelTankStartPos = FuelTank.transform.localPosition; FuelThruster1StartPos = FuelThruster1.transform.localPosition; FuelThruster2StartPos = FuelThruster2.transform.localPosition; siloDoor1StartPos = siloDoor1.transform.localPosition; siloDoor2StartPos = siloDoor2.transform.localPosition; ShuttleStartRot = Shuttle.transform.localRotation; FuelTankStartRot = FuelTank.transform.localRotation; FuelThruster1StartRot = FuelThruster1.transform.localRotation; FuelThruster2StartRot = FuelThruster2.transform.localRotation; }
void reachedAtmosphere() { Debug.Log("Atmosphere!!"); curTime = startTime; curLaunchStage = launchStage.toCeiling; speed = stageTwoSpeed; FuelTank.transform.parent = null; Rigidbody FuelTankRB = FuelTank.AddComponent <Rigidbody>(); FuelTankRB.useGravity = false; FuelTankRB.AddForce(0, .1f, -.15f, ForceMode.Impulse); FuelTankRB.AddTorque(0, 0, -.25f, ForceMode.Impulse); FuelThruster1.transform.parent = null; Rigidbody FuelThruster1RB = FuelThruster1.AddComponent <Rigidbody>(); FuelThruster1RB.useGravity = false; FuelThruster1RB.AddForce(.15f, .1f, -.15f, ForceMode.Impulse); FuelThruster1RB.AddTorque(-.15f, 0, -.25f, ForceMode.Impulse); FuelThruster2.transform.parent = null; Rigidbody FuelThruster2RB = FuelThruster2.AddComponent <Rigidbody>(); FuelThruster2RB.useGravity = false; FuelThruster2RB.AddForce(-.15f, .1f, -.15f, ForceMode.Impulse); FuelThruster2RB.AddTorque(-.15f, 0, -.25f, ForceMode.Impulse); FuelThruster1Flame.SetActive(false); FuelThruster2Flame.SetActive(false); #pragma warning disable 0618 Smoke.GetComponent <ParticleSystem>().emissionRate = 0; #pragma warning restore 0618 waterRend.material.SetFloat("_DispAmount", 0.06f); waterRend.material.SetTexture("_DispTex", waterWavesTex); Water.GetComponent <ScrollUVWave>().scrollSpeed = 0.085f; CeilingRift.SetActive(true); UAudioManager.Instance.PlayEvent("Shuttle_Atmosphere", this.gameObject); }
void Done() { curLaunchStage = launchStage.Done; startLaunch = false; }
// Update is called once per frame void Update() { if(musicSingleton == null) { if(MusicSingleton.Instance != null) { musicSingleton = MusicSingleton.Instance; restoreVolume = musicSingleton.volume; } } else { if(sequenceTimer < sequenceTime) { musicSingleton.volume -= .5f * Time.deltaTime; } else if (sequenceTimer <= 0) { musicSingleton.volume = restoreVolume; } } sequenceTimer -= Time.deltaTime; if (sequenceTimer < sequenceTime - 1) { if (!soundEffect.isPlaying && sequenceTimer > 10) { soundEffect.Play(); } } if(sequenceTimer > (sequenceTime - 2)) { currentStage = launchStage.Stationary; } else if(sequenceTimer > (sequenceTime - 4) && sequenceTimer < (sequenceTime - 2)) { currentStage = launchStage.FiringUp; //gameObject.GetComponent<Camera>().orthographicSize -= .01f * Time.deltaTime; } else if(sequenceTimer > (sequenceTime - 7) && sequenceTimer < (sequenceTime - 4)) { currentStage = launchStage.LiftOff; } else { currentStage = launchStage.Cruise; } Vector3 rocketPos = rocket.transform.position; switch(currentStage) { case launchStage.Stationary: rocketThrust.particleInterval = .5f; break; case launchStage.FiringUp: rocketThrust.particleInterval = .1f; rocketPos.y += .1f * Time.deltaTime * (10.0f / sequenceTimer); rocket.transform.position = rocketPos; rocket.transform.Rotate(0, 0, Random.Range(-.25f, .25f)); break; case launchStage.LiftOff: rocketThrust.particleInterval = .02f; rocketPos.y += 4.0f * Time.deltaTime; rocket.transform.position = rocketPos; if (rocket.transform.rotation.z < -1.0f || rocket.transform.rotation.z > 359.0f) { rocket.transform.Rotate(0, 0, Random.Range(0.0f, .15f)); } else if(rocket.transform.rotation.z > 1.0) { rocket.transform.Rotate(0, 0, Random.Range(-0.15f, 0.0f)); } else { rocket.transform.Rotate(0, 0, Random.Range(-.3f, .3f)); } break; //Default is standin for cruise default: rocketThrust.particleInterval = 0.001f; rocketPos.y += 3.5f * Time.deltaTime; rocket.transform.position = rocketPos; if (rocket.transform.rotation.z < - .03f || rocket.transform.rotation.z > 360.0f - .03f) { rocket.transform.Rotate(0, 0, Random.Range(0.0f, .03f)); } else if (rocket.transform.rotation.z > .03f) { rocket.transform.Rotate(0, 0, Random.Range(-0.03f, 0.0f)); } else { //rocket.transform.rotation.SetEulerAngles(0, 0, 0); } break; } if(rocket.transform.position.y > transform.position.y && transform.position.y < 35.0f) { Vector3 cameraPos = transform.position; cameraPos.y = rocket.transform.position.y; if(cameraPos.x < rocket.transform.position.x) { cameraPos.x += 2 * Time.deltaTime; } transform.position = cameraPos; } else if(transform.position.y > 35.0f) { Color black = GetComponentInChildren<SpriteRenderer>().color; black.a += .28f * Time.deltaTime; GetComponentInChildren<SpriteRenderer>().color = black; if(black.a >= 1) { if(musicSingleton != null) { musicSingleton.audioPlayer.Stop(); musicSingleton.volume = restoreVolume; } Application.LoadLevel("InsideShip"); } } }
// Use this for initialization void Start() { currentStage = launchStage.Stationary; sequenceTimer = sequenceTime; }