Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/jackmawer/JacksWorld. An abandoned mini-project that I created while learning to use Unity with networking.
Something went wrong. Try again.
1.2 kB · 37 lines
C#
at master
1234567891011121314151617181920212223242526272829303132333435363738using System;using System.Collections;using System.Collections.Generic;using UnityEngine;
namespace UnityStandardAssets.Effects{ public class ExplosionPhysicsForce : MonoBehaviour { public float explosionForce = 4;
private IEnumerator Start() { // wait one frame because some explosions instantiate debris which should then // be pushed by physics force yield return null;
float multiplier = GetComponent<ParticleSystemMultiplier>().multiplier;
float r = 10*multiplier; var cols = Physics.OverlapSphere(transform.position, r); var rigidbodies = new List<Rigidbody>(); foreach (var col in cols) { if (col.attachedRigidbody != null && !rigidbodies.Contains(col.attachedRigidbody)) { rigidbodies.Add(col.attachedRigidbody); } } foreach (var rb in rigidbodies) { rb.AddExplosionForce(explosionForce*multiplier, transform.position, r, 1*multiplier, ForceMode.Impulse); } } }}