Arbiter_c FindArbiter(ref RigidBody_c rb1, ref RigidBody_c rb2) { ArbiterKey_c key = new ArbiterKey_c(ref rb1, ref rb2); for (int i = 0; i < arbiterArray.Count; i++) { if (arbiterArray[i].key.b1.id == key.b1.id && arbiterArray[i].key.b2.id == key.b2.id) { return(arbiterArray[i].arbiter); } } arbiterArray.Add(new ArbiterItem_c(key, new Arbiter_c(ref rb1, ref rb2))); return(arbiterArray[arbiterArray.Count - 1].arbiter); }
public ArbiterItem_c(ArbiterKey_c key, Arbiter_c arbiter) { this.key = key; this.arbiter = arbiter; }