private void Explode() { Collider[] colliders = Physics.OverlapSphere(transform.position, ExplosionRadius, ObjectMask); foreach (Collider collider in colliders) { Rigidbody targetRigidbody = collider.GetComponent <Rigidbody>(); if (targetRigidbody != null) { targetRigidbody.AddExplosionForce(ExplosionForce, transform.position, ExplosionRadius, 0.05f); BoatHealth targetHealth = targetRigidbody.GetComponent <BoatHealth>(); if (targetHealth != null) { targetHealth.TakeDamage(CalculateDamage(targetRigidbody.position)); } } } explosionAudio.Play(); var impact = Instantiate(ImpactPrefab, transform.position, transform.rotation); Destroy(impact, 1); GetComponent <MeshRenderer>().enabled = false; GetComponent <Collider>().enabled = false; Destroy(gameObject, 0.5f); }
void Start() { boatHealth = GetComponentInParent <BoatHealth>(); anvilLandSound = GetComponent <AudioSource>(); waterHole.SetActive(false); holeText.enabled = false; }
//Sets the boat that will take damage when hit by a peanut. public void setEnemyBoat() { if (team == Team.Blue) { enemyBoat = GameObject.Find ("GreenBoat"); } else { enemyBoat = GameObject.Find("BlueBoat"); } enemyBoatHealth = enemyBoat.GetComponent<BoatHealth> (); }
// Update is called once per frame void Update() { timer = timer + 1 * Time.deltaTime; if (timer >= spawnTimeIsland) { //Select random fom iland int rng = Random.Range(0, ilands.Count); GameObject selected = ilands[rng]; //Give random variaton for spawn float rng2 = Random.Range(200, 800); Random gen = new Random(); bool Boolean = (Random.value > 0.5f); if (Boolean != true) { rng2 = -rng2; } GameObject spawned = Instantiate(selected, new Vector3(2000, 0, 0), selected.transform.rotation); spawned.transform.parent = this.gameObject.transform; spawned.transform.localScale = new Vector3(10000, 10000, 10000); spawned.gameObject.AddComponent <ilandMover>().moveSpeed = 25; spawned.gameObject.GetComponent <ilandMover>().ofset = new Vector3(0, 0, rng2); //New random target to spawnIsland spawnTimeIsland = Random.Range(10.0f, 30.0f); timer = 0; } animalTimer = animalTimer + 1 * Time.deltaTime; if (animalTimer >= spawTimerAnimal) { //Select random fom animal int rng = Random.Range(0, animals.Count); //Give random variaton for spawn float rng2 = Random.Range(0, 10); Random gen = new Random(); bool Boolean = (Random.value > 0.5f); if (Boolean != true) { rng2 = -rng2; } GameObject selected = animals[rng]; GameObject spawned = Instantiate(selected, new Vector3(1000, 0, 0), selected.transform.rotation); spawned.transform.parent = this.gameObject.transform; spawned.gameObject.AddComponent <ilandMover>().moveSpeed = 10; spawned.gameObject.GetComponent <ilandMover>().ofset = new Vector3(0, 0, rng2); spawned.gameObject.AddComponent <Crest.SimpleFloatingObject>(); spawned.gameObject.AddComponent <CapsuleCollider>(); spawned.gameObject.AddComponent <Rigidbody>(); spawTimerAnimal = Random.Range(10.0f, 20.0f); animalTimer = 0; BoatHealth health = spawned.gameObject.AddComponent <BoatHealth>(); health.health = 1; health.explosion = animalParticles; } }
// Use this for initialization void Start() { //Get components _boatMovement = GetComponent<BoatMovement> (); _boatWeapons = GetComponent<BoatWeapons> (); _boatHealth = GetComponent<BoatHealth> (); //Assign controls _thrustButton = W_UP; _rotateButton = S_DOWN; _peanutButton = D_RIGHT; _torpedoButton = A_LEFT; }
public virtual void OnTriggerEnter2D(Collider2D coll) { if (coll.gameObject.tag == "Boat") { if (!pickedUp) { pickedUp = true; _boatWeapons = coll.gameObject.GetComponent<BoatWeapons>(); _boatHealth = coll.gameObject.GetComponent<BoatHealth>(); _powerUpAudioSource.PlayOneShot(_powerUpAudioSource.clip); //_spriteRenderer.enabled = false; LeanTween.cancel(gameObject); LeanTween.scale (gameObject, Vector3.zero, .2f); Destroy(gameObject, _powerUpAudioSource.clip.length); } } }
// Use this for initialization void Start() { boatHealth = GetComponentInParent <BoatHealth> (); }