commit 0e7a13b405dcd935de241deb6136f4f5e8836e95
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Tue Jan 26 22:19:22 2021 +0100

    Progress with Megaminx.

diff --git a/src/main/java/org/distorted/objects/TwistyMegaminx.java b/src/main/java/org/distorted/objects/TwistyMegaminx.java
index f879ec88..d5d98ab3 100644
--- a/src/main/java/org/distorted/objects/TwistyMegaminx.java
+++ b/src/main/java/org/distorted/objects/TwistyMegaminx.java
@@ -414,7 +414,7 @@ public class TwistyMegaminx extends TwistyMinx
 
   int getCornerColor(int cubit, int cubitface, int numLayers, int numCubitsPerCorner)
     {
-    if( cubitface<0 || cubitface>2 ) return NUM_TEXTURES*NUM_FACES;
+    if( cubitface<0 || cubitface>2 ) return NUM_TEXTURES;
 
     int part  = cubit % numCubitsPerCorner;
     int corner= cubit / numCubitsPerCorner;
@@ -429,34 +429,34 @@ public class TwistyMegaminx extends TwistyMinx
       int block = (part-1) % N;
       int index = (part-1) / N;
 
-      if( block< (numLayers-1)/2 )
+      if( block< (numLayers-3)/2 )
         {
         switch(index)
           {
-          case 0: return cubitface==1 ? NUM_TEXTURES*NUM_FACES : mCornerFaceMap[corner][cubitface];
-          case 1: return cubitface==0 ? NUM_TEXTURES*NUM_FACES : mCornerFaceMap[corner][cubitface];
-          case 2: return cubitface==2 ? NUM_TEXTURES*NUM_FACES : mCornerFaceMap[corner][cubitface];
+          case 0: return cubitface==1 ? NUM_TEXTURES : mCornerFaceMap[corner][cubitface];
+          case 1: return cubitface==0 ? NUM_TEXTURES : mCornerFaceMap[corner][cubitface];
+          case 2: return cubitface==2 ? NUM_TEXTURES : mCornerFaceMap[corner][cubitface];
           }
         }
       else
         {
         switch(index)
           {
-          case 0: return cubitface==0 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES*NUM_FACES;
-          case 1: return cubitface==2 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES*NUM_FACES;
-          case 2: return cubitface==1 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES*NUM_FACES;
+          case 0: return cubitface==0 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES;
+          case 1: return cubitface==2 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES;
+          case 2: return cubitface==1 ? mCornerFaceMap[corner][cubitface] : NUM_TEXTURES;
           }
         }
       }
 
-    return NUM_TEXTURES*NUM_FACES;
+    return NUM_TEXTURES;
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   int getEdgeColor(int cubit, int cubitface, int numLayers, int numCubitsPerCorner, int numCubitsPerEdge)
     {
-    if( cubitface<0 || cubitface>1 ) return NUM_TEXTURES*NUM_FACES;
+    if( cubitface<0 || cubitface>1 ) return NUM_TEXTURES;
 
     int part = (cubit - NUM_CORNERS*numCubitsPerCorner) % numCubitsPerEdge;
     int edge = (cubit - NUM_CORNERS*numCubitsPerCorner) / numCubitsPerEdge;
@@ -466,7 +466,7 @@ public class TwistyMegaminx extends TwistyMinx
       return mEdgeMap[edge][cubitface+2];
       }
 
-    return cubitface==((part+1)%2) ? mEdgeMap[edge][cubitface+2] : NUM_TEXTURES*NUM_FACES;
+    return cubitface==((part+1)%2) ? mEdgeMap[edge][cubitface+2] : NUM_TEXTURES;
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
