// Update is called once per frame void Update() { if (gameplayManagerScript.getMissionStatus() && unhit) { // distance stuff float currentDistance = distance(missileObject.transform.position, transform.position); if (currentDistance < lowestDistance) { lowestDistance = currentDistance; } if (!distThresh1_passed && currentDistance <= distThresh1) { distThresh1_passed = true; myAudioSource.clip = (AudioClip)Resources.Load("Audio/dingdong1"); myAudioSource.Play(); gameplayManagerScript.missile_fuel_change(Mathf.RoundToInt(gameplayManagerScript.getMissileMaxFuel() * 0.05f)); } if (!distThresh2_passed && currentDistance <= distThresh2) { distThresh2_passed = true; myAudioSource.clip = (AudioClip)Resources.Load("Audio/dingdong2"); myAudioSource.Play(); gameplayManagerScript.missile_HP_change(Mathf.RoundToInt(gameplayManagerScript.getMissileMaxHP() * 0.05f)); } } }
// Update is called once per frame void Update() { if (gameplayManagerScript.getMissionStatus() && unhit && myCollider.IsTouching(missileGameObject.GetComponent <Collider2D>())) // hit missile { unhit = false; // myCollider.enabled=false; mySprRen.color = Color.clear; myAduioSource.Play(); if (isHealthPickup || mySprRen.sprite.name.Equals("healthpickup1")) { gameplayManagerScript.missile_HP_change(Mathf.RoundToInt(gameplayManagerScript.getMissileMaxHP() * healthRestorePercent)); } if (isFuelPickup || mySprRen.sprite.name.Equals("fuelpickup1")) { gameplayManagerScript.missile_fuel_change(gameplayManagerScript.getMissileMaxFuel() * fuelRestorePercent); } } if (!unhit) { Color currentColor = mySprRen.color; currentColor.a -= alphaDecreasePerSec * Time.deltaTime; mySprRen.color = currentColor; Vector3 currentScale = transform.localScale; currentScale += scaleIncreasePerSec * Vector3.one * Time.deltaTime; transform.localScale = currentScale; if (!myAduioSource.isPlaying) { Destroy(gameObject); } } if (!liveZoneCollider.OverlapPoint(transform.position)) // time to stop existing { Destroy(gameObject); } }