commit f2d0d23ee1808a0b1e3f078d410bf069533717cd
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Sep 6 15:14:00 2021 +0200

    Remove statics from the Bandaged Cube classes.

diff --git a/src/main/java/org/distorted/objects/TwistyBandaged2Bar.java b/src/main/java/org/distorted/objects/TwistyBandaged2Bar.java
index 73b1de3c..ebdfefaf 100644
--- a/src/main/java/org/distorted/objects/TwistyBandaged2Bar.java
+++ b/src/main/java/org/distorted/objects/TwistyBandaged2Bar.java
@@ -32,36 +32,6 @@ import org.distorted.main.R;
 
 class TwistyBandaged2Bar extends TwistyBandagedAbstract
 {
-  private static final float[][] POSITIONS = new float[][]
-      {
-       { 0.0f, +1.0f,  1.0f, 0.0f, +1.0f,  0.0f, 0.0f, +1.0f, -1.0f},
-       {-1.0f, -1.0f,  0.0f, 0.0f, -1.0f,  0.0f, 1.0f, -1.0f,  0.0f},
-       {-1.0f, +1.0f, +1.0f},
-       {-1.0f, +1.0f,  0.0f},
-       {-1.0f, +1.0f, -1.0f},
-       {-1.0f,  0.0f, +1.0f},
-       {-1.0f,  0.0f,  0.0f},
-       {-1.0f,  0.0f, -1.0f},
-       {-1.0f, -1.0f, +1.0f},
-       {-1.0f, -1.0f, -1.0f},
-       {+1.0f, +1.0f, +1.0f},
-       {+1.0f, +1.0f,  0.0f},
-       {+1.0f, +1.0f, -1.0f},
-       {+1.0f,  0.0f, +1.0f},
-       {+1.0f,  0.0f,  0.0f},
-       {+1.0f,  0.0f, -1.0f},
-       {+1.0f, -1.0f, +1.0f},
-       {+1.0f, -1.0f, -1.0f},
-       { 0.0f,  0.0f, +1.0f},
-       { 0.0f, -1.0f, +1.0f},
-       { 0.0f,  0.0f, -1.0f},
-       { 0.0f, -1.0f, -1.0f}
-      };
-
-  private static final int[] QUAT_INDICES = new int[] { 2 };
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
   TwistyBandaged2Bar(int size, Static4D quat, DistortedTexture texture, MeshSquare mesh,
                      DistortedEffects effects, int[][] moves, Resources res, int scrWidth)
     {
@@ -79,6 +49,35 @@ class TwistyBandaged2Bar extends TwistyBandagedAbstract
 
   float[][] getPositions()
     {
+    if( POSITIONS==null )
+      {
+      POSITIONS = new float[][]
+        {
+         { 0.0f, +1.0f,  1.0f, 0.0f, +1.0f,  0.0f, 0.0f, +1.0f, -1.0f},
+         {-1.0f, -1.0f,  0.0f, 0.0f, -1.0f,  0.0f, 1.0f, -1.0f,  0.0f},
+         {-1.0f, +1.0f, +1.0f},
+         {-1.0f, +1.0f,  0.0f},
+         {-1.0f, +1.0f, -1.0f},
+         {-1.0f,  0.0f, +1.0f},
+         {-1.0f,  0.0f,  0.0f},
+         {-1.0f,  0.0f, -1.0f},
+         {-1.0f, -1.0f, +1.0f},
+         {-1.0f, -1.0f, -1.0f},
+         {+1.0f, +1.0f, +1.0f},
+         {+1.0f, +1.0f,  0.0f},
+         {+1.0f, +1.0f, -1.0f},
+         {+1.0f,  0.0f, +1.0f},
+         {+1.0f,  0.0f,  0.0f},
+         {+1.0f,  0.0f, -1.0f},
+         {+1.0f, -1.0f, +1.0f},
+         {+1.0f, -1.0f, -1.0f},
+         { 0.0f,  0.0f, +1.0f},
+         { 0.0f, -1.0f, +1.0f},
+         { 0.0f,  0.0f, -1.0f},
+         { 0.0f, -1.0f, -1.0f}
+        };
+      }
+
     return POSITIONS;
     }
 
@@ -86,6 +85,11 @@ class TwistyBandaged2Bar extends TwistyBandagedAbstract
 
   int[] getQuatIndices()
     {
+    if( QUAT_INDICES==null )
+      {
+      QUAT_INDICES = new int[] { 2 };
+      }
+
     return QUAT_INDICES;
     }
 
diff --git a/src/main/java/org/distorted/objects/TwistyBandaged3Plate.java b/src/main/java/org/distorted/objects/TwistyBandaged3Plate.java
index 79c020d7..8796fbcf 100644
--- a/src/main/java/org/distorted/objects/TwistyBandaged3Plate.java
+++ b/src/main/java/org/distorted/objects/TwistyBandaged3Plate.java
@@ -32,31 +32,6 @@ import org.distorted.main.R;
 
 class TwistyBandaged3Plate extends TwistyBandagedAbstract
 {
-  private static final float[][] POSITIONS = new float[][]
-      {
-       {-1.0f,  1.0f,  1.0f, -1.0f,  0.0f,  1.0f,  0.0f,  1.0f,  1.0f,  0.0f,  0.0f,  1.0f},
-       { 1.0f,  0.0f, -1.0f,  1.0f,  0.0f,  0.0f,  1.0f,  1.0f, -1.0f,  1.0f,  1.0f,  0.0f},
-       {-1.0f, -1.0f, -1.0f, -1.0f, -1.0f,  0.0f,  0.0f, -1.0f, -1.0f,  0.0f, -1.0f,  0.0f},
-       { 1.0f,  1.0f,  1.0f},
-       { 1.0f,  0.0f,  1.0f},
-       { 1.0f, -1.0f,  1.0f},
-       {-1.0f, -1.0f,  1.0f},
-       { 0.0f, -1.0f,  1.0f},
-       { 1.0f, -1.0f,  0.0f},
-       { 1.0f, -1.0f, -1.0f},
-       {-1.0f,  1.0f, -1.0f},
-       {-1.0f,  1.0f,  0.0f},
-       { 0.0f,  1.0f, -1.0f},
-       { 0.0f,  1.0f,  0.0f},
-       {-1.0f,  0.0f, -1.0f},
-       {-1.0f,  0.0f,  0.0f},
-       { 0.0f,  0.0f, -1.0f}
-      };
-
-  private static final int[] QUAT_INDICES = new int[] { 1, 3 };
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
   TwistyBandaged3Plate(int size, Static4D quat, DistortedTexture texture, MeshSquare mesh,
                        DistortedEffects effects, int[][] moves, Resources res, int scrWidth)
     {
@@ -87,6 +62,29 @@ class TwistyBandaged3Plate extends TwistyBandagedAbstract
 
   float[][] getPositions()
     {
+    if( POSITIONS==null )
+      {
+      POSITIONS = new float[][]
+        {
+          {-1.0f,  1.0f,  1.0f, -1.0f,  0.0f,  1.0f,  0.0f,  1.0f,  1.0f,  0.0f,  0.0f,  1.0f},
+          { 1.0f,  0.0f, -1.0f,  1.0f,  0.0f,  0.0f,  1.0f,  1.0f, -1.0f,  1.0f,  1.0f,  0.0f},
+          {-1.0f, -1.0f, -1.0f, -1.0f, -1.0f,  0.0f,  0.0f, -1.0f, -1.0f,  0.0f, -1.0f,  0.0f},
+          { 1.0f,  1.0f,  1.0f},
+          { 1.0f,  0.0f,  1.0f},
+          { 1.0f, -1.0f,  1.0f},
+          {-1.0f, -1.0f,  1.0f},
+          { 0.0f, -1.0f,  1.0f},
+          { 1.0f, -1.0f,  0.0f},
+          { 1.0f, -1.0f, -1.0f},
+          {-1.0f,  1.0f, -1.0f},
+          {-1.0f,  1.0f,  0.0f},
+          { 0.0f,  1.0f, -1.0f},
+          { 0.0f,  1.0f,  0.0f},
+          {-1.0f,  0.0f, -1.0f},
+          {-1.0f,  0.0f,  0.0f},
+          { 0.0f,  0.0f, -1.0f}
+        };
+      }
     return POSITIONS;
     }
 
@@ -94,6 +92,11 @@ class TwistyBandaged3Plate extends TwistyBandagedAbstract
 
   int[] getQuatIndices()
     {
+    if( QUAT_INDICES==null )
+      {
+      QUAT_INDICES = new int[] { 1,3 };
+      }
+
     return QUAT_INDICES;
     }
 
diff --git a/src/main/java/org/distorted/objects/TwistyBandagedAbstract.java b/src/main/java/org/distorted/objects/TwistyBandagedAbstract.java
index 1b566505..baae54d9 100644
--- a/src/main/java/org/distorted/objects/TwistyBandagedAbstract.java
+++ b/src/main/java/org/distorted/objects/TwistyBandagedAbstract.java
@@ -153,9 +153,11 @@ abstract class TwistyBandagedAbstract extends TwistyObject
 
   private int mCurrState;
   private int mIndexExcluded;
-  ScrambleState[] mStates;
   private int[][] mScrambleTable;
   private int[] mNumOccurences;
+  ScrambleState[] mStates;
+  float[][] POSITIONS;
+  int[] QUAT_INDICES;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
diff --git a/src/main/java/org/distorted/objects/TwistyBandagedEvil.java b/src/main/java/org/distorted/objects/TwistyBandagedEvil.java
index ae2aac3a..8775fed6 100644
--- a/src/main/java/org/distorted/objects/TwistyBandagedEvil.java
+++ b/src/main/java/org/distorted/objects/TwistyBandagedEvil.java
@@ -32,28 +32,6 @@ import org.distorted.main.R;
 
 class TwistyBandagedEvil extends TwistyBandagedAbstract
 {
-  private static final float[][] POSITIONS = new float[][]
-      {
-        { 1.0f,  1.0f, -1.0f},
-        {-1.0f, -1.0f,  0.0f, -1.0f,  0.0f,  0.0f, 0.0f, -1.0f,  0.0f,  0.0f,  0.0f,  0.0f},
-        {-1.0f,  1.0f, -1.0f,  0.0f,  1.0f, -1.0f},
-        {-1.0f,  0.0f, -1.0f,  0.0f,  0.0f, -1.0f},
-        {-1.0f, -1.0f, -1.0f,  0.0f, -1.0f, -1.0f},
-        {-1.0f,  1.0f,  0.0f, -1.0f,  1.0f,  1.0f},
-        { 0.0f,  1.0f,  0.0f,  0.0f,  1.0f,  1.0f},
-        { 1.0f,  1.0f,  0.0f,  1.0f,  1.0f,  1.0f},
-        {-1.0f, -1.0f,  1.0f, -1.0f,  0.0f,  1.0f},
-        { 0.0f, -1.0f,  1.0f,  0.0f,  0.0f,  1.0f},
-        { 1.0f, -1.0f,  1.0f,  1.0f,  0.0f,  1.0f},
-        { 1.0f, -1.0f,  0.0f,  1.0f,  0.0f,  0.0f},
-        { 1.0f, -1.0f, -1.0f,  1.0f,  0.0f, -1.0f}
-      };
-
-  private static final int[] QUAT_INDICES = new int[]
-      { 0, 1, 0, 0, 0, 2, 2, 2, 3, 3, 3, 3, 3 };
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
   TwistyBandagedEvil(int size, Static4D quat, DistortedTexture texture, MeshSquare mesh,
                      DistortedEffects effects, int[][] moves, Resources res, int scrWidth)
     {
@@ -207,11 +185,29 @@ class TwistyBandagedEvil extends TwistyBandagedAbstract
      new ScrambleState( new int[][] {{}                          , {2, 1,  1}                  , {2, 2, 12,2,-1, 13} })
      };
     }
-
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   float[][] getPositions()
     {
+    if( POSITIONS==null )
+      {
+      POSITIONS = new float[][]
+        {
+          { 1.0f,  1.0f, -1.0f},
+          {-1.0f, -1.0f,  0.0f, -1.0f,  0.0f,  0.0f, 0.0f, -1.0f,  0.0f,  0.0f,  0.0f,  0.0f},
+          {-1.0f,  1.0f, -1.0f,  0.0f,  1.0f, -1.0f},
+          {-1.0f,  0.0f, -1.0f,  0.0f,  0.0f, -1.0f},
+          {-1.0f, -1.0f, -1.0f,  0.0f, -1.0f, -1.0f},
+          {-1.0f,  1.0f,  0.0f, -1.0f,  1.0f,  1.0f},
+          { 0.0f,  1.0f,  0.0f,  0.0f,  1.0f,  1.0f},
+          { 1.0f,  1.0f,  0.0f,  1.0f,  1.0f,  1.0f},
+          {-1.0f, -1.0f,  1.0f, -1.0f,  0.0f,  1.0f},
+          { 0.0f, -1.0f,  1.0f,  0.0f,  0.0f,  1.0f},
+          { 1.0f, -1.0f,  1.0f,  1.0f,  0.0f,  1.0f},
+          { 1.0f, -1.0f,  0.0f,  1.0f,  0.0f,  0.0f},
+          { 1.0f, -1.0f, -1.0f,  1.0f,  0.0f, -1.0f}
+        };
+      }
     return POSITIONS;
     }
 
@@ -219,6 +215,11 @@ class TwistyBandagedEvil extends TwistyBandagedAbstract
 
   int[] getQuatIndices()
     {
+    if( QUAT_INDICES==null )
+      {
+      QUAT_INDICES = new int[] { 0, 1, 0, 0, 0, 2, 2, 2, 3, 3, 3, 3, 3 };
+      }
+
     return QUAT_INDICES;
     }
 
diff --git a/src/main/java/org/distorted/objects/TwistyBandagedFused.java b/src/main/java/org/distorted/objects/TwistyBandagedFused.java
index 5eb1d63c..e00009f6 100644
--- a/src/main/java/org/distorted/objects/TwistyBandagedFused.java
+++ b/src/main/java/org/distorted/objects/TwistyBandagedFused.java
@@ -32,41 +32,6 @@ import org.distorted.main.R;
 
 class TwistyBandagedFused extends TwistyBandagedAbstract
 {
-  private static final float[][] POSITIONS = new float[][]
-      {
-       {-1.0f, -1.0f, +0.0f,
-        -1.0f, -1.0f, +1.0f,
-        -1.0f,  0.0f, +0.0f,
-        -1.0f,  0.0f, +1.0f,
-         0.0f, -1.0f, +0.0f,
-         0.0f, -1.0f, +1.0f,
-         0.0f,  0.0f, +0.0f,
-         0.0f,  0.0f, +1.0f},
-       {-1.0f, +1.0f, +1.0f},
-       {-1.0f, +1.0f, +0.0f},
-       {-1.0f, +1.0f, -1.0f},
-       { 0.0f, +1.0f, +1.0f},
-       { 0.0f, +1.0f, +0.0f},
-       { 0.0f, +1.0f, -1.0f},
-       { 1.0f, +1.0f, +1.0f},
-       { 1.0f, +1.0f, +0.0f},
-       { 1.0f, +1.0f, -1.0f},
-       { 1.0f,  0.0f, +1.0f},
-       { 1.0f,  0.0f, +0.0f},
-       { 1.0f,  0.0f, -1.0f},
-       { 1.0f, -1.0f, +1.0f},
-       { 1.0f, -1.0f, +0.0f},
-       { 1.0f, -1.0f, -1.0f},
-       {-1.0f, -1.0f, -1.0f},
-       {-1.0f,  0.0f, -1.0f},
-       { 0.0f, -1.0f, -1.0f},
-       { 0.0f,  0.0f, -1.0f}
-      };
-
-  private static final int[] QUAT_INDICES = new int[] { 0 };
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
   TwistyBandagedFused(int size, Static4D quat, DistortedTexture texture, MeshSquare mesh,
                       DistortedEffects effects, int[][] moves, Resources res, int scrWidth)
     {
@@ -84,6 +49,39 @@ class TwistyBandagedFused extends TwistyBandagedAbstract
 
   float[][] getPositions()
     {
+    if( POSITIONS==null )
+      {
+      POSITIONS = new float[][]
+        {
+          {-1.0f, -1.0f, +0.0f,
+           -1.0f, -1.0f, +1.0f,
+           -1.0f,  0.0f, +0.0f,
+           -1.0f,  0.0f, +1.0f,
+            0.0f, -1.0f, +0.0f,
+            0.0f, -1.0f, +1.0f,
+            0.0f,  0.0f, +0.0f,
+            0.0f,  0.0f, +1.0f},
+          {-1.0f, +1.0f, +1.0f},
+          {-1.0f, +1.0f, +0.0f},
+          {-1.0f, +1.0f, -1.0f},
+          { 0.0f, +1.0f, +1.0f},
+          { 0.0f, +1.0f, +0.0f},
+          { 0.0f, +1.0f, -1.0f},
+          { 1.0f, +1.0f, +1.0f},
+          { 1.0f, +1.0f, +0.0f},
+          { 1.0f, +1.0f, -1.0f},
+          { 1.0f,  0.0f, +1.0f},
+          { 1.0f,  0.0f, +0.0f},
+          { 1.0f,  0.0f, -1.0f},
+          { 1.0f, -1.0f, +1.0f},
+          { 1.0f, -1.0f, +0.0f},
+          { 1.0f, -1.0f, -1.0f},
+          {-1.0f, -1.0f, -1.0f},
+          {-1.0f,  0.0f, -1.0f},
+          { 0.0f, -1.0f, -1.0f},
+          { 0.0f,  0.0f, -1.0f}
+        };
+      }
     return POSITIONS;
     }
 
@@ -91,6 +89,11 @@ class TwistyBandagedFused extends TwistyBandagedAbstract
 
   int[] getQuatIndices()
     {
+    if( QUAT_INDICES==null )
+      {
+      QUAT_INDICES = new int[] { 0 };
+      }
+
     return QUAT_INDICES;
     }
 
