예제 #1
0
 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;
     }
 }
예제 #2
0
 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;
     }
 }