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

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

  
22
import static org.distorted.objectlib.main.Movement.MOVEMENT_DODECAHEDRON;
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.Movement12;
35 35
import org.distorted.objectlib.main.ObjectControl;
36 36
import org.distorted.objectlib.main.ObjectType;
......
59 59
           new Static3D( 0,C,-B)
60 60
         };
61 61

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

  
67 62
  private ScrambleState[] mStates;
68 63
  private int[] mBasicAngle;
69 64
  private Static4D[] mQuats;
70 65
  private float[][] mCuts;
71
  private boolean[][] mLayerRotatable;
72 66
  private int[][] mFaceMap;
73 67
  private float[][] mCenters;
74 68
  private int[] mQuatIndex;
75 69
  private ObjectSticker[] mStickers;
76
  private Movement mMovement;
77 70

  
78 71
///////////////////////////////////////////////////////////////////////////////////////////////////
79 72

  
......
374 367

  
375 368
///////////////////////////////////////////////////////////////////////////////////////////////////
376 369

  
377
  protected int getSolvedFunctionIndex()
370
  public int getSolvedFunctionIndex()
378 371
    {
379 372
    return 0;
380 373
    }
......
394 387

  
395 388
///////////////////////////////////////////////////////////////////////////////////////////////////
396 389

  
397
  private void getLayerRotatable(int[] numLayers)
390
  public boolean[][] getLayerRotatable(int[] numLayers)
398 391
    {
399
    if( mLayerRotatable==null )
400
      {
401
      int numAxis = ROT_AXIS.length;
402
      mLayerRotatable = new boolean[numAxis][];
392
    int numAxis = ROT_AXIS.length;
393
    boolean[][] layerRotatable = new boolean[numAxis][];
403 394

  
404
      for(int i=0; i<numAxis; i++)
405
        {
406
        mLayerRotatable[i] = new boolean[numLayers[i]];
407
        for(int j=0; j<numLayers[i]; j++) mLayerRotatable[i][j] = true;
408
        }
395
    for(int i=0; i<numAxis; i++)
396
      {
397
      layerRotatable[i] = new boolean[numLayers[i]];
398
      for(int j=0; j<numLayers[i]; j++) layerRotatable[i][j] = true;
409 399
      }
400

  
401
    return layerRotatable;
402
    }
403

  
404
///////////////////////////////////////////////////////////////////////////////////////////////////
405

  
406
  public int getMovementType()
407
    {
408
    return MOVEMENT_DODECAHEDRON;
409
    }
410

  
411
///////////////////////////////////////////////////////////////////////////////////////////////////
412

  
413
  public int getMovementSplit()
414
    {
415
    return TYPE_NOT_SPLIT;
416
    }
417

  
418
///////////////////////////////////////////////////////////////////////////////////////////////////
419

  
420
  public int[][][] getEnabled()
421
    {
422
    return new int[][][]
423
      {
424
        {{2,3}},{{1,3}},{{1,3}},{{2,3}},{{0,3}},{{0,2}},{{0,2}},{{0,3}},{{1,2}},{{0,1}},{{0,1}},{{1,2}}
425
      };
426
    }
427

  
428
///////////////////////////////////////////////////////////////////////////////////////////////////
429

  
430
  public float[] getDist3D(int[] numLayers)
431
    {
432
    return null;
410 433
    }
411 434

  
412 435
///////////////////////////////////////////////////////////////////////////////////////////////////
......
431 454
    return ROT_AXIS;
432 455
    }
433 456

  
434
///////////////////////////////////////////////////////////////////////////////////////////////////
435

  
436
  public Movement getMovement()
437
    {
438
    if( mMovement==null )
439
      {
440
      int[] numLayers = getNumLayers();
441
      if( mCuts==null ) getCuts(numLayers);
442
      getLayerRotatable(numLayers);
443
      mMovement = new Movement12(ROT_AXIS,mCuts,mLayerRotatable,numLayers[0],TYPE_NOT_SPLIT,ENABLED);
444
      }
445
    return mMovement;
446
    }
447

  
448 457
///////////////////////////////////////////////////////////////////////////////////////////////////
449 458

  
450 459
  public int[] getBasicAngle()
......
474 483
    return R.string.ulti2_inventor;
475 484
    }
476 485

  
486
///////////////////////////////////////////////////////////////////////////////////////////////////
487

  
488
  public int getYearOfInvention(int[] numLayers)
489
    {
490
    return 2000;
491
    }
492

  
477 493
///////////////////////////////////////////////////////////////////////////////////////////////////
478 494

  
479 495
  public int getComplexity(int[] numLayers)

Also available in: Unified diff