Exemple #1
0
    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> ();
    }
Exemple #4
0
    // 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;
        }
    }
Exemple #5
0
    // 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;
    }
Exemple #6
0
    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> ();
 }