commit 2876aeb637197adac2601cade99f941e07e608b6
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Mar 6 01:29:29 2023 +0100

    Tablebase-based scrambling.

diff --git a/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java b/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
index 12eed2f1..51351d62 100644
--- a/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
+++ b/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
@@ -276,7 +276,7 @@ public class BandagedCreatorActivity extends AppCompatActivity
       {
       RubikFiles files = RubikFiles.getInstance();
       InputStream jsonStream = files.openFile(this,name+"_object.json");
-      InitAssets assets = new InitAssets(jsonStream,null);
+      InitAssets assets = new InitAssets(jsonStream,null,null);
 
       if( !assets.noJsonStream() )
         {
diff --git a/src/main/java/org/distorted/bandaged/BandagedPlayActivity.java b/src/main/java/org/distorted/bandaged/BandagedPlayActivity.java
index e23912a6..be3b6013 100644
--- a/src/main/java/org/distorted/bandaged/BandagedPlayActivity.java
+++ b/src/main/java/org/distorted/bandaged/BandagedPlayActivity.java
@@ -241,7 +241,7 @@ public class BandagedPlayActivity extends AppCompatActivity
       int meshState          = TwistyObject.MESH_NICE;
       int iconMode           = TwistyObject.MODE_NORM;
       InputStream jsonStream = files.openFile(this,name+"_object.json");
-      InitAssets asset       = new InitAssets(jsonStream,null);
+      InitAssets asset       = new InitAssets(jsonStream,null,null);
       int ordinal            = 0; // if jsonStream!=null, this doesn't matter
 
       control.changeIfDifferent(ordinal,name,meshState,iconMode,asset);
diff --git a/src/main/java/org/distorted/config/ConfigActivity.java b/src/main/java/org/distorted/config/ConfigActivity.java
index 36ac5e8e..8d03138d 100644
--- a/src/main/java/org/distorted/config/ConfigActivity.java
+++ b/src/main/java/org/distorted/config/ConfigActivity.java
@@ -195,7 +195,7 @@ public class ConfigActivity extends AppCompatActivity
         InputStream jsonStream = object.getObjectStream(this);
         InputStream meshStream = object.getMeshStream(this);
         String name            = object.getUpperName();
-        InitAssets asset       = new InitAssets(jsonStream,meshStream);
+        InitAssets asset       = new InitAssets(jsonStream,meshStream,null);
         control.changeIfDifferent(ordinal,name,meshState,iconMode,asset);
         }
       }
@@ -226,7 +226,7 @@ public class ConfigActivity extends AppCompatActivity
         int iconMode           = TwistyObject.MODE_NORM;
         InputStream jsonStream = object.getObjectStream(this);
         InputStream meshStream = object.getMeshStream(this);
-        InitAssets asset       = new InitAssets(jsonStream,meshStream);
+        InitAssets asset       = new InitAssets(jsonStream,meshStream,null);
 
         control.changeObject(ordinal,meshState,iconMode,asset);
         }
diff --git a/src/main/java/org/distorted/main/RubikActivity.java b/src/main/java/org/distorted/main/RubikActivity.java
index 7482777c..ca3f9513 100644
--- a/src/main/java/org/distorted/main/RubikActivity.java
+++ b/src/main/java/org/distorted/main/RubikActivity.java
@@ -613,7 +613,7 @@ public class RubikActivity extends AppCompatActivity
       InputStream jsonStream = object==null ? null : object.getObjectStream(this);
       InputStream meshStream = object==null ? null : object.getMeshStream(this);
       String name = object==null ? "NULL" : object.getUpperName();
-      InitAssets asset = new InitAssets(jsonStream,meshStream);
+      InitAssets asset = new InitAssets(jsonStream,meshStream,getResources());
 
       control.changeIfDifferent(ordinal,name,meshState,iconMode,asset);
       }
@@ -736,7 +736,7 @@ public class RubikActivity extends AppCompatActivity
           int iconMode  = TwistyObject.MODE_NORM;
           InputStream jsonStream = object.getObjectStream(this);
           InputStream meshStream = object.getMeshStream(this);
-          InitAssets asset       = new InitAssets(jsonStream,meshStream);
+          InitAssets asset       = new InitAssets(jsonStream,meshStream,getResources());
           ObjectControl control = getControl();
           control.changeObject(-1,meshState,iconMode,asset);
           }
diff --git a/src/main/java/org/distorted/purchase/PurchaseActivity.java b/src/main/java/org/distorted/purchase/PurchaseActivity.java
index 25d9a29e..b57858f4 100644
--- a/src/main/java/org/distorted/purchase/PurchaseActivity.java
+++ b/src/main/java/org/distorted/purchase/PurchaseActivity.java
@@ -233,7 +233,7 @@ public class PurchaseActivity extends AppCompatActivity
         InputStream jsonStream = object.getObjectStream(this);
         InputStream meshStream = object.getMeshStream(this);
         String name            = object.getUpperName();
-        InitAssets asset       = new InitAssets(jsonStream,meshStream);
+        InitAssets asset       = new InitAssets(jsonStream,meshStream,null);
         control.changeIfDifferent(ordinal,name,meshState,iconMode,asset);
         }
       }
diff --git a/src/main/java/org/distorted/solvers/SolverCuboid232.java b/src/main/java/org/distorted/solvers/SolverCuboid232.java
index da1be412..f91d5891 100644
--- a/src/main/java/org/distorted/solvers/SolverCuboid232.java
+++ b/src/main/java/org/distorted/solvers/SolverCuboid232.java
@@ -12,7 +12,7 @@ package org.distorted.solvers;
 import android.content.res.Resources;
 
 import org.distorted.main.R;
-import org.distorted.objectlib.main.ObjectType;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 import org.distorted.objectlib.tablebases.ImplementedTablebasesList;
 import org.distorted.objectlib.tablebases.TablebaseHelpers;
@@ -424,7 +424,7 @@ public class SolverCuboid232 extends SolverTablebase
     {
     if( mSolver==null )
       {
-      mSolver = ImplementedTablebasesList.createPacked(res,ObjectType.CU_232);
+      mSolver = ImplementedTablebasesList.createPacked(res, ObjectSignatures.CU_232);
       }
 
     return mSolver!=null ? mSolver.solution(index) : null;
diff --git a/src/main/java/org/distorted/solvers/SolverIvyCube.java b/src/main/java/org/distorted/solvers/SolverIvyCube.java
index 580c25fe..f42b54ce 100644
--- a/src/main/java/org/distorted/solvers/SolverIvyCube.java
+++ b/src/main/java/org/distorted/solvers/SolverIvyCube.java
@@ -12,7 +12,7 @@ package org.distorted.solvers;
 import android.content.res.Resources;
 
 import org.distorted.main.R;
-import org.distorted.objectlib.main.ObjectType;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 import org.distorted.objectlib.tablebases.ImplementedTablebasesList;
 import org.distorted.objectlib.tablebases.TablebaseHelpers;
@@ -244,7 +244,7 @@ public class SolverIvyCube extends SolverTablebase
     {
     if( mSolver==null )
       {
-      mSolver = ImplementedTablebasesList.createPacked(res,ObjectType.IVY_2);
+      mSolver = ImplementedTablebasesList.createPacked(res, ObjectSignatures.IVY_2);
       }
 
     return mSolver!=null ? mSolver.solution(index) : null;
diff --git a/src/main/java/org/distorted/solvers/SolverPyraminx.java b/src/main/java/org/distorted/solvers/SolverPyraminx.java
index 83e5c785..1c65c120 100644
--- a/src/main/java/org/distorted/solvers/SolverPyraminx.java
+++ b/src/main/java/org/distorted/solvers/SolverPyraminx.java
@@ -12,7 +12,7 @@ package org.distorted.solvers;
 import android.content.res.Resources;
 
 import org.distorted.main.R;
-import org.distorted.objectlib.main.ObjectType;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 import org.distorted.objectlib.tablebases.ImplementedTablebasesList;
 import org.distorted.objectlib.tablebases.TablebaseHelpers;
@@ -555,7 +555,7 @@ public class SolverPyraminx extends SolverTablebase
     {
     if( mSolver==null )
       {
-      mSolver = ImplementedTablebasesList.createPacked(res,ObjectType.PYRA_3);
+      mSolver = ImplementedTablebasesList.createPacked(res, ObjectSignatures.PYRA_3);
       }
 
     int[][] moves1 = mSolver!=null ? mSolver.solution(index) : null;
diff --git a/src/main/java/org/distorted/solvers/SolverPyraminxDuo.java b/src/main/java/org/distorted/solvers/SolverPyraminxDuo.java
index 550fe805..9e655117 100644
--- a/src/main/java/org/distorted/solvers/SolverPyraminxDuo.java
+++ b/src/main/java/org/distorted/solvers/SolverPyraminxDuo.java
@@ -12,7 +12,7 @@ package org.distorted.solvers;
 import android.content.res.Resources;
 
 import org.distorted.main.R;
-import org.distorted.objectlib.main.ObjectType;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 import org.distorted.objectlib.tablebases.ImplementedTablebasesList;
 import org.distorted.objectlib.tablebases.TablebasesAbstract;
@@ -289,7 +289,7 @@ public class SolverPyraminxDuo extends SolverTablebase
     {
     if( mSolver==null )
       {
-      mSolver = ImplementedTablebasesList.createPacked(res,ObjectType.PDUO_2);
+      mSolver = ImplementedTablebasesList.createPacked(res, ObjectSignatures.PDUO_2);
       }
 
     return mSolver!=null ? mSolver.solution(index) : null;
diff --git a/src/main/java/org/distorted/solvers/SolverSkewbDiamond.java b/src/main/java/org/distorted/solvers/SolverSkewbDiamond.java
index 4bf581e0..72a73ddf 100644
--- a/src/main/java/org/distorted/solvers/SolverSkewbDiamond.java
+++ b/src/main/java/org/distorted/solvers/SolverSkewbDiamond.java
@@ -12,7 +12,7 @@ package org.distorted.solvers;
 import android.content.res.Resources;
 
 import org.distorted.main.R;
-import org.distorted.objectlib.main.ObjectType;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 import org.distorted.objectlib.tablebases.ImplementedTablebasesList;
 import org.distorted.objectlib.tablebases.TablebaseHelpers;
@@ -490,10 +490,7 @@ android.util.Log.e("D", "corn twist: "+corners_twist[0]+" "+corners_twist[1]+" "
     {
     if( mSolver==null )
       {
-      mSolver = ImplementedTablebasesList.createPacked(res,ObjectType.DIAM_2);
-
-      //mSolver = ImplementedTablebasesList.createUnpacked(ObjectType.DIAM_2);
-      //if( mSolver!=null ) mSolver.createTablebase();
+      mSolver = ImplementedTablebasesList.createPacked(res, ObjectSignatures.DIAM_2);
       }
 
     return mSolver!=null ? mSolver.solution(index) : null;
diff --git a/src/main/java/org/distorted/tutorials/TutorialActivity.java b/src/main/java/org/distorted/tutorials/TutorialActivity.java
index 0842f846..0cd0d350 100644
--- a/src/main/java/org/distorted/tutorials/TutorialActivity.java
+++ b/src/main/java/org/distorted/tutorials/TutorialActivity.java
@@ -226,7 +226,7 @@ public class TutorialActivity extends AppCompatActivity
       InputStream jsonStream = object==null ? null : object.getObjectStream(this);
       InputStream meshStream = object==null ? null : object.getMeshStream(this);
       String name = object==null ? "NULL" : object.getUpperName();
-      InitAssets asset = new InitAssets(jsonStream,meshStream);
+      InitAssets asset = new InitAssets(jsonStream,meshStream,getResources());
       control.changeIfDifferent(ordinal,name,meshState,iconMode,asset);
       }
 
