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/TwistyBandagedAbstract.java
19 19

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

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

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

  
32
import org.distorted.objectlib.main.Movement;
33 33
import org.distorted.objectlib.main.Movement6;
34 34
import org.distorted.objectlib.helpers.ObjectShape;
35 35
import org.distorted.objectlib.helpers.ObjectSticker;
......
58 58
         {2,2,2}
59 59
        };
60 60

  
61
  private static final int[][][] ENABLED = new int[][][]
62
      {
63
          {{1,2}},{{1,2}},{{0,2}},{{0,2}},{{0,1}},{{0,1}},
64
      };
65

  
66 61
  private static final int NUM_STICKERS = 4;
67 62

  
68 63
  private int[] mBasicAngle;
......
72 67
  private int[][] mAxisMap;
73 68
  private int[][] mFaceMap;
74 69
  private float[][] mCuts;
75
  private boolean[][] mLayerRotatable;
76
  private Movement mMovement;
77 70
  ScrambleState[] mStates;
78 71
  float[][] POSITIONS;
79 72
  int[] QUAT_INDICES;
......
355 348

  
356 349
///////////////////////////////////////////////////////////////////////////////////////////////////
357 350

  
358
  private void getLayerRotatable(int[] numLayers)
351
  public boolean[][] getLayerRotatable(int[] numLayers)
359 352
    {
360
    if( mLayerRotatable==null )
361
      {
362
      int numAxis = ROT_AXIS.length;
363
      mLayerRotatable = new boolean[numAxis][];
353
    int numAxis = ROT_AXIS.length;
354
    boolean[][] layerRotatable = new boolean[numAxis][];
364 355

  
365
      for(int i=0; i<numAxis; i++)
366
        {
367
        mLayerRotatable[i] = new boolean[numLayers[i]];
368
        for(int j=0; j<numLayers[i]; j++) mLayerRotatable[i][j] = true;
369
        }
356
    for(int i=0; i<numAxis; i++)
357
      {
358
      layerRotatable[i] = new boolean[numLayers[i]];
359
      for(int j=0; j<numLayers[i]; j++) layerRotatable[i][j] = true;
370 360
      }
361

  
362
    return layerRotatable;
363
    }
364

  
365
///////////////////////////////////////////////////////////////////////////////////////////////////
366

  
367
  public int getMovementType()
368
    {
369
    return MOVEMENT_HEXAHEDRON;
370
    }
371

  
372
///////////////////////////////////////////////////////////////////////////////////////////////////
373

  
374
  public int getMovementSplit()
375
    {
376
    return TYPE_NOT_SPLIT;
371 377
    }
372 378

  
373 379
///////////////////////////////////////////////////////////////////////////////////////////////////
374 380

  
375
  protected int getSolvedFunctionIndex()
381
  public int[][][] getEnabled()
382
    {
383
    return new int[][][]
384
      {
385
          {{1,2}},{{1,2}},{{0,2}},{{0,2}},{{0,1}},{{0,1}},
386
      };
387
    }
388

  
389
///////////////////////////////////////////////////////////////////////////////////////////////////
390

  
391
  public float[] getDist3D(int[] numLayers)
392
    {
393
    return null;
394
    }
395

  
396
///////////////////////////////////////////////////////////////////////////////////////////////////
397

  
398
  public int getSolvedFunctionIndex()
376 399
    {
377 400
    return 0;
378 401
    }
......
471 494
    return ROT_AXIS;
472 495
    }
473 496

  
474
///////////////////////////////////////////////////////////////////////////////////////////////////
475

  
476
  public Movement getMovement()
477
    {
478
    if( mMovement==null )
479
      {
480
      int[] numLayers = getNumLayers();
481
      if( mCuts==null ) getCuts(numLayers);
482
      getLayerRotatable(numLayers);
483
      mMovement = new Movement6(ROT_AXIS,mCuts,mLayerRotatable,numLayers[0],TYPE_NOT_SPLIT,ENABLED);
484
      }
485
    return mMovement;
486
    }
487

  
488 497
///////////////////////////////////////////////////////////////////////////////////////////////////
489 498

  
490 499
  public int[] getBasicAngle()

Also available in: Unified diff