You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C#
		
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C#
		
	
using UnityEngine;
 | 
						|
using System.Collections;
 | 
						|
 | 
						|
namespace Valve.VR.InteractionSystem.Sample
 | 
						|
{
 | 
						|
    public class Grenade : MonoBehaviour
 | 
						|
    {
 | 
						|
        public GameObject explodePartPrefab;
 | 
						|
        public int explodeCount = 10;
 | 
						|
 | 
						|
        public float minMagnitudeToExplode = 1f;
 | 
						|
 | 
						|
        private Interactable interactable;
 | 
						|
 | 
						|
        private void Start()
 | 
						|
        {
 | 
						|
            interactable = this.GetComponent<Interactable>();
 | 
						|
        }
 | 
						|
 | 
						|
        private void OnCollisionEnter(Collision collision)
 | 
						|
        {
 | 
						|
            if (interactable != null && interactable.attachedToHand != null) //don't explode in hand
 | 
						|
                return;
 | 
						|
 | 
						|
            if (collision.impulse.magnitude > minMagnitudeToExplode)
 | 
						|
            {
 | 
						|
                for (int explodeIndex = 0; explodeIndex < explodeCount; explodeIndex++)
 | 
						|
                {
 | 
						|
                    GameObject explodePart = (GameObject)GameObject.Instantiate(explodePartPrefab, this.transform.position, this.transform.rotation);
 | 
						|
                    explodePart.GetComponentInChildren<MeshRenderer>().material.SetColor("_TintColor", Random.ColorHSV(0f, 1f, 1f, 1f, 0.5f, 1f));
 | 
						|
                }
 | 
						|
 | 
						|
                Destroy(this.gameObject);
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }
 | 
						|
} |