protected void Awake() { _collisionEventSender = GetComponent <CollisionEventSender>(); if (eventChainParent != null) { eventChainParent._eventChainChild = this; } }
void BulletImpact(CollisionEventSender sender, Collision2D collision) { var rigid = collision.rigidbody; if (rigid) { rigid.AddForce(collision.relativeVelocity.normalized * (config.bulletImpactForce / Time.deltaTime)); } Destroy(sender.gameObject); }
// Start is called before the first frame update void Start() { CollisionEventSender eventSender = objectOfInterest.GetComponent <CollisionEventSender>(); // if there is no sentinel object, add one if (eventSender == null) { eventSender = objectOfInterest.AddComponent <CollisionEventSender>(); } eventSender.OnCollisionAction.AddListener(OnCollision); }
void DataImpact(CollisionEventSender sender, Collider2D other) { Player p = other.GetComponent <Player>(); if (!p) { return; } for (int i = 0; i < players.Length; ++i) { if (p == players[i] && p.dataCooldown <= 0.0f) { dataHolder = (DataHolder)(i + 1); PlayClip(dataClip); Destroy(data); break; } } }