private void OnTriggerEnter(Collider other) { this.SendGlobalEvent(new TriggerEnterEvent { Source = this._parent, Other = other }); var entity = other.GetComponentInParent <EntityMono>(); if (!entity) { return; } if (!_parent) { return; } _parent.SendEvent(new TriggerEnterEvent { Source = entity.LocalEntity, Other = other }); entity.SendEvent(new TriggerEnterEvent { Source = _parent.LocalEntity }); }
private void OnParticleCollision(GameObject other) { if (!_parent) { return; } _parent.SendEvent(new ParticleCollisionEvent { Other = other }); }
private void OnTriggerStay(Collider other) { this.SendGlobalEvent(new TriggerStayEvent { Other = other, Source = _parent }); var entity = other.GetComponentInParent <IEntity>(); if (entity == null) { return; } _parent.SendEvent(new TriggerStayEvent { Other = other, Source = entity }); }