MCPcopy Create free account
hub / github.com/TanTanDev/runity / CollisionTrackerComponent

Class CollisionTrackerComponent

unity/Runity/CollisionTrackerComponent.cs:29–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

27 }
28
29 public class CollisionTrackerComponent : MonoBehaviour {
30 public Queue<CollisionEvent> CollisionEvents;
31 public UInt64 OwnerEntityIdBits;
32
33 void OnCollisionEnter(Collision a_collision) {
34 var entityIdentifier = a_collision.gameObject.GetComponent<RustEntityComponent>();
35 if(entityIdentifier != null)
36 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnCollisionEnter));
37 }
38 void OnCollisionExit(Collision a_collision) {
39 var entityIdentifier = a_collision.gameObject.GetComponent<RustEntityComponent>();
40 if(entityIdentifier != null)
41 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnCollisionExit));
42 }
43 void OnCollisionStay(Collision a_collision) {
44 var entityIdentifier = a_collision.gameObject.GetComponent<RustEntityComponent>();
45 if(entityIdentifier != null)
46 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnCollisionStay));
47 }
48 void OnTriggerEnter(Collider a_collider) {
49 var entityIdentifier = a_collider.gameObject.GetComponent<RustEntityComponent>();
50 if(entityIdentifier != null)
51 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnTriggerEnter));
52 }
53 void OnTriggerExit(Collider a_collider) {
54 var entityIdentifier = a_collider.gameObject.GetComponent<RustEntityComponent>();
55 if(entityIdentifier != null)
56 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnTriggerExit));
57 }
58 void OnTriggerStay(Collider a_collider) {
59 var entityIdentifier = a_collider.gameObject.GetComponent<RustEntityComponent>();
60 if(entityIdentifier != null)
61 CollisionEvents.Enqueue(new CollisionEvent(OwnerEntityIdBits, entityIdentifier.IdentifierBits, CollisionType.OnTriggerStay));
62 }
63 }
64}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected