Project

General

Profile

« Previous | Next » 

Revision 59c20632

Added by Leszek Koltunski over 2 years ago

Reorg for writing the JSON

View differences:

src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java
19 19

  
20 20
package org.distorted.objectlib.objects;
21 21

  
22
import static org.distorted.objectlib.main.Movement.MOVEMENT_OCTAHEDRON;
22 23
import static org.distorted.objectlib.main.Movement.TYPE_NOT_SPLIT;
23 24

  
24 25
import android.content.res.Resources;
......
30 31
import org.distorted.library.type.Static4D;
31 32

  
32 33
import org.distorted.objectlib.R;
33
import org.distorted.objectlib.main.Movement;
34 34
import org.distorted.objectlib.main.Movement8;
35 35
import org.distorted.objectlib.main.ObjectControl;
36 36
import org.distorted.objectlib.main.ObjectType;
......
52 52
           new Static3D(     0,-SQ3/3,+SQ6/3)
53 53
         };
54 54

  
55
  private static final int[][][] ENABLED = new int[][][]
56
      {
57
          {{1,2,3}},{{1,2,3}},{{0,2,3}},{{0,2,3}},{{0,1,3}},{{0,1,3}},{{0,1,2}},{{0,1,2}}
58
      };
59

  
60 55
  private ScrambleState[] mStates;
61 56
  private int[] mBasicAngle;
62 57
  private int[] mFaceMap;
63 58
  private float[][] mCuts;
64
  private boolean[][] mLayerRotatable;
65 59
  private Static4D[] mQuats;
66 60
  private int[] mTetraToFaceMap;
67 61
  private ObjectSticker[] mStickers;
68
  private Movement mMovement;
69 62

  
70 63
///////////////////////////////////////////////////////////////////////////////////////////////////
71 64

  
......
157 150

  
158 151
///////////////////////////////////////////////////////////////////////////////////////////////////
159 152

  
160
  protected int getSolvedFunctionIndex()
153
  public int getSolvedFunctionIndex()
161 154
    {
162 155
    return 0;
163 156
    }
......
196 189

  
197 190
///////////////////////////////////////////////////////////////////////////////////////////////////
198 191

  
199
  private void getLayerRotatable(int[] numLayers)
192
  public boolean[][] getLayerRotatable(int[] numLayers)
200 193
    {
201
    if( mLayerRotatable==null )
202
      {
203
      int numAxis = ROT_AXIS.length;
204
      mLayerRotatable = new boolean[numAxis][];
194
    int numAxis = ROT_AXIS.length;
195
    boolean[][] layerRotatable = new boolean[numAxis][];
205 196

  
206
      for(int i=0; i<numAxis; i++)
207
        {
208
        mLayerRotatable[i] = new boolean[numLayers[i]];
209
        for(int j=0; j<numLayers[i]; j++) mLayerRotatable[i][j] = true;
210
        }
197
    for(int i=0; i<numAxis; i++)
198
      {
199
      layerRotatable[i] = new boolean[numLayers[i]];
200
      for(int j=0; j<numLayers[i]; j++) layerRotatable[i][j] = true;
211 201
      }
202

  
203
    return layerRotatable;
204
    }
205

  
206
///////////////////////////////////////////////////////////////////////////////////////////////////
207

  
208
  public int getMovementType()
209
    {
210
    return MOVEMENT_OCTAHEDRON;
211
    }
212

  
213
///////////////////////////////////////////////////////////////////////////////////////////////////
214

  
215
  public int getMovementSplit()
216
    {
217
    return TYPE_NOT_SPLIT;
218
    }
219

  
220
///////////////////////////////////////////////////////////////////////////////////////////////////
221

  
222
  public int[][][] getEnabled()
223
    {
224
    return new int[][][]
225
      {
226
          {{1,2,3}},{{1,2,3}},{{0,2,3}},{{0,2,3}},{{0,1,3}},{{0,1,3}},{{0,1,2}},{{0,1,2}}
227
      };
228
    }
229

  
230
///////////////////////////////////////////////////////////////////////////////////////////////////
231

  
232
  public float[] getDist3D(int[] numLayers)
233
    {
234
    return null;
212 235
    }
213 236

  
214 237
///////////////////////////////////////////////////////////////////////////////////////////////////
......
539 562
    return ROT_AXIS;
540 563
    }
541 564

  
542
///////////////////////////////////////////////////////////////////////////////////////////////////
543

  
544
  public Movement getMovement()
545
    {
546
    if( mMovement==null )
547
      {
548
      int[] numLayers = getNumLayers();
549
      if( mCuts==null ) getCuts(numLayers);
550
      getLayerRotatable(numLayers);
551
      mMovement = new Movement8(ROT_AXIS,mCuts,mLayerRotatable,numLayers[0],TYPE_NOT_SPLIT,ENABLED);
552
      }
553
    return mMovement;
554
    }
555

  
556 565
///////////////////////////////////////////////////////////////////////////////////////////////////
557 566

  
558 567
  public int[] getBasicAngle()
......
603 612
    return 0;
604 613
    }
605 614

  
615
///////////////////////////////////////////////////////////////////////////////////////////////////
616

  
617
  public int getYearOfInvention(int[] numLayers)
618
    {
619
    switch(numLayers[0])
620
      {
621
      case 2: return 1984;
622
      case 3: return 2003;
623
      case 4: return 2011;
624
      }
625
    return 1984;
626
    }
627

  
606 628
///////////////////////////////////////////////////////////////////////////////////////////////////
607 629

  
608 630
  public int getComplexity(int[] numLayers)

Also available in: Unified diff