Project

General

Profile

« Previous | Next » 

Revision 1247bb16

Added by Leszek Koltunski 12 months ago

Correct detection of solved state in Masterball. New JSON.

View differences:

src/main/java/org/distorted/objectlib/main/TwistyObjectSolved.java
208 208

  
209 209
    for(int group=1; group<numGroups; group++)
210 210
      {
211
      int numEntries= mSolvedQuats[group].length;
212
      int numCubits = mSolvedQuats[group][0];
213
      int firstCubit= mSolvedQuats[group][1];
211
      int[] gq = mSolvedQuats[group];
212
      int numEntries= gq.length;
213
      int numCubits = gq[0];
214
      int firstCubit= gq[1];
214 215
      int firstQuat = cubits[firstCubit].mQuatIndex;
215 216

  
216 217
      for(int cubit=2; cubit<=numCubits; cubit++)
217 218
        {
218
        int currCubit= mSolvedQuats[group][cubit];
219
        int currCubit= gq[cubit];
219 220
        int currQuat = cubits[currCubit].mQuatIndex;
220 221
        boolean isGood= (firstQuat==currQuat);
221 222

  
222 223
        for(int q=numCubits+1; !isGood && q<numEntries; q++)
223
          {
224
          int quat = mSolvedQuats[group][q];
225
          if( firstQuat == getMultQuat(currQuat,quat) ) isGood = true;
226
          }
224
          if( firstQuat == getMultQuat(currQuat,gq[q]) ) isGood = true;
227 225

  
228 226
        if( !isGood ) return false;
229 227
        }
src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java
99 99
    return new int[][] {
100 100
                         {0},
101 101
                         {4, 0, 1,16,17, 13},
102
                         {4, 2, 3,18,19,  9},
103
                         {4, 4, 5,20,21, 12},
104
                         {4, 6, 7,22,23,  8},
105
                         {4, 8, 9,24,25, 15},
106
                         {4,10,11,26,27, 11},
107
                         {4,12,13,28,29, 14},
108
                         {4,14,15,30,31, 10},
102
                         {4, 2, 3,18,19, 12},
103
                         {4, 4, 5,20,21, 15},
104
                         {4, 6, 7,22,23, 14},
105
                         {4, 8, 9,24,25, 13},
106
                         {4,10,11,26,27, 12},
107
                         {4,12,13,28,29, 15},
108
                         {4,14,15,30,31, 14},
109 109
                       };
110 110
    }
111 111

  
......
208 208
      final float X1 = 3*SQ2/8;
209 209
      final float Y1 = 0.5f;
210 210
      final float Z1 = 0.750f+3*SQ2/8;
211
      final float X2 = SQ2/8;
211
      final float X2 = X1/3;
212 212
      final float Y2 = 1.5f;
213
      final float Z2 = 0.25f+SQ2/8;
213
      final float Z2 = Z1/3;
214 214

  
215 215
      mCenters = new float[][]
216 216
         {

Also available in: Unified diff