private void OnTriggerEnter(Collider other) { ComponentPointer <Pickup> pointer = other.GetComponent <ComponentPointer <Pickup> >(); if (pointer == null) { return; } Pickup pickup = pointer.PointedComponent; if (pickup != null) { pickup.NotifySuccessfulPickup(); } }
public object[] GetValueEnum(string section, string item) { if (_methodPointer != null) { ISourceValueEnumProvider svep = _methodPointer.Owner.ObjectInstance as ISourceValueEnumProvider; if (svep == null) { ComponentPointer cip = _methodPointer.Owner.ObjectInstance as ComponentPointer; if (cip != null) { svep = cip.ObjectInstance as ISourceValueEnumProvider; } } if (svep != null) { return(svep.GetValueEnum(section, item)); } } return(null); }
private void OnTriggerEnter(Collider other) { ComponentPointer <RoadTile> pointer = other.GetComponent <ComponentPointer <RoadTile> >(); if (pointer != null) { if (pointer.PointedComponent.TileType != RoadTile.Type.Straight) { RotatorLink link = pointer.PointedComponent.GetComponent <RotatorLink>(); if (link != null) { if (!foundRotators.ContainsKey(link.Rotator)) { availableRotators.Add(link.Rotator); } foundRotators.AddOrCreate(link.Rotator, link); } } currentTile = pointer.PointedComponent; } }
private void OnTriggerExit(Collider other) { ComponentPointer <RoadTile> pointer = other.GetComponent <ComponentPointer <RoadTile> >(); if (pointer != null) { if (pointer.PointedComponent.TileType != RoadTile.Type.Straight) { RotatorLink link = pointer.PointedComponent.GetComponent <RotatorLink>(); if (link != null) { foundRotators.DecreaseOrRemove(link.Rotator, link); if (!foundRotators.ContainsKey(link.Rotator)) { availableRotators.Remove(link.Rotator); } } } pointer.PointedComponent.Passed = true; } }