private void InternalDoLogicForShapeSlotResult(GameShape shape, ref int numExposed, ref int numOuterFacesInDirections, Dictionary <GameShape, bool> occludermap) { if (shape != null) { if (shape == this) { return; } numOuterFacesInDirections = numOuterFacesInDirections + 1; bool flag; if (occludermap.TryGetValue(shape, out flag)) { if (flag) { return; } numExposed = numExposed + 1; } else { GameShapeProxy gameShapeProxy = shape.GetRenderProxy() as GameShapeProxy; if ((UnityEngine.Object)gameShapeProxy != (UnityEngine.Object)null && gameShapeProxy.IsOccluding(false, true)) { return; } numExposed = numExposed + 1; } } else { numExposed = numExposed + 1; numOuterFacesInDirections = numOuterFacesInDirections + 1; } }
private void InternalDoLogicForShapeSlotResult(GameShape shape, ref int numExposed, ref int numOuterFacesInDirections) { if (shape != null) { if (shape == this) { return; } numOuterFacesInDirections = numOuterFacesInDirections + 1; GameShapeProxy gameShapeProxy = shape.GetRenderProxy() as GameShapeProxy; if ((UnityEngine.Object)gameShapeProxy != (UnityEngine.Object)null && gameShapeProxy.IsOccluding(false, true)) { return; } numExposed = numExposed + 1; } else { numExposed = numExposed + 1; numOuterFacesInDirections = numOuterFacesInDirections + 1; } }