private void RemoveGroup(CollisionGroupEntry entry, Find.LeafData data) { foreach (Collide.Shape shape in data.Shapes) { if (shape.GetInitialized <Collide.Shape>() != null) { entry.RemoveFrom(shape.NativeGeometry); } } foreach (Wire wire in data.Wires) { if (wire.GetInitialized <Wire>() != null) { entry.RemoveFrom(wire.Native); } } foreach (Cable cable in data.Cables) { if (cable.GetInitialized <Cable>() != null) { cable.GetInitialized <Cable>().Native.removeGroup(entry.Tag.To32BitFnv1aHash()); } } }
private void RemoveGroup(CollisionGroupEntry entry, Find.LeafData data) { foreach (var shape in data.Shapes) { if (shape.GetInitialized <Collide.Shape>() != null) { entry.RemoveFrom(shape.NativeGeometry); } } foreach (var wire in data.Wires) { if (wire.GetInitialized <Wire>() != null) { entry.RemoveFrom(wire.Native); } } foreach (var cable in data.Cables) { if (cable.GetInitialized <Cable>() != null) { entry.RemoveFrom(cable.Native); } } foreach (var track in data.Tracks) { if (track.GetInitialized <Model.Track>() != null) { entry.RemoveFrom(track.Native); } } foreach (var terrain in data.Terrains) { if (terrain.GetInitialized <Model.DeformableTerrain>() != null) { entry.RemoveFrom(terrain.Native.getGeometry()); } } }