Ejemplo n.º 1
0
 void OnTriggerEnter(Collider col)
 {
     if (col.gameObject.layer == LayerMask.NameToLayer("ExplodeObject"))
     {
         ExplodeObject obj = col.gameObject.GetComponent <ExplodeObjectCollider> ().explodeObject;
         if (obj.isActive)
         {
             cannonPanel.MakeDamage(col.gameObject.GetComponent <ExplodeObjectCollider> ().explodeObject.damageHealthParam.damage);
             obj.ExplodeObjectDestroy();
         }
     }
 }
Ejemplo n.º 2
0
    public void LaserActive()
    {
        if (Physics.Raycast(spawnerTransform.position, direction, out rayHit, maximumDistance, (1 << LayerMask.NameToLayer("CannonPanel"))))
        {
            if (cannonsPanel == null)
            {
                cannonsPanel = rayHit.collider.GetComponent <CannonsPanelCollider> ().cannonPanel;
            }
            float maskScaleY = Vector3.Distance(spawnerTransform.position, rayHit.point) * 1.65f;

            laserMask.localScale = new Vector3(laserMask.lossyScale.x, maskScaleY, laserMask.localScale.z);
            if (!laserEffectActive)
            {
                laserHitEffect.SetActive(true);
                laserEffect.SetActive(true);
                laserEffectActive = true;
            }
            if (laserTickTimer.TimeIsOver())
            {
                cannonsPanel.MakeDamage(ship.explodeObject.damageHealthParam.damage);
                laserTickTimer.SetTimer(ship.explodeObject.damageHealthParam.damageTickTime);
            }
        }
    }