Project

General

Profile

« Previous | Next » 

Revision 1a2182df

Added by Leszek Koltunski about 1 year ago

Master Icosamate: first code.

View differences:

src/main/java/org/distorted/objectlib/main/ObjectSignatures.java
83 83
  public static final int BALL_4 = ObjectType.BALL_4.ordinal();
84 84
  public static final int CA_333 = ObjectType.CA_333.ordinal();
85 85
  public static final int ICOS_2 = ObjectType.ICOS_2.ordinal();
86
  public static final int ICOS_3 = ObjectType.ICOS_3.ordinal();
86 87
  }
src/main/java/org/distorted/objectlib/main/ObjectType.java
100 100
  PDUO_2 ( TwistyPyraminxDuo.class    ,  4, R.drawable.pduo_2, true,     0, new InitData(new int[] {2,2,2,2})),
101 101
  PDIA_3 ( TwistyPyraminxDiamond.class, 12, R.drawable.pdia_3, true,    40, new InitData(new int[] {3,3,3})),
102 102

  
103
  ICOS_2 ( TwistyIcosamate.class      , 30, R.drawable.icos_2, true,   60, new InitData(new int[] {2,2,2,2,2,2})),
104
  ICOS_3 ( TwistyIcosamate.class      , 40, R.drawable.icos_2, true,   70, new InitData(new int[] {3,3,3,3,3,3})),
105

  
103 106
  BALL_4 ( TwistyMasterball.class     , 28, R.drawable.ball_4, false,   70, new InitData(new int[] {4,2,2,2,2})),
104 107
  BAN5_4 ( TwistyBandagedCuboid.class , 48, R.drawable.ban5_4, false,   50, new InitData(new int[] {4,4,4}, TwistyBandagedCuboid.POS_5)),
105 108
  BAN6_4 ( TwistyBandagedCuboid.class ,487, R.drawable.ban6_4, false,   50, new InitData(new int[] {4,4,4}, TwistyBandagedCuboid.POS_6)),
106 109
  CA_333 ( TwistyCamouflage.class     ,487, R.drawable.ca_333, false,   50, new InitData(new int[] {4,4,4}, TwistyCamouflage.CAM_333)),
107
  ICOS_2 ( TwistyIcosamate.class      , 32, R.drawable.icos_2, false,   60, new InitData(new int[] {2,2,2,2,2,2})),
110

  
108 111
  ;
109 112

  
110 113
  public static int NUM_OBJECTS;
src/main/java/org/distorted/objectlib/objects/TwistyIcosamate.java
99 99
    {
100 100
    if( mCuts==null )
101 101
      {
102
      float[] cut = new float[] {0};
102
      float[] cut = new float[] {0};  // TODO
103 103
      mCuts = new float[][] { cut,cut,cut,cut,cut,cut };
104 104
      }
105 105

  
......
110 110

  
111 111
  public boolean[][] getLayerRotatable(int[] numLayers)
112 112
    {
113
    boolean[] tmp = new boolean[] {true,true};
113
    int nL = numLayers[0];
114
    boolean[] tmp = new boolean[nL];
115
    for(int i=0; i<nL; i++) tmp[i] = true;
114 116
    return new boolean[][] { tmp,tmp,tmp,tmp,tmp,tmp };
115 117
    }
116 118

  
......
329 331

  
330 332
  public int getNumCubitVariants(int[] numLayers)
331 333
    {
332
    return 2;
334
    return getNumLayers()[0]==2 ? 2 : 3;
333 335
    }
334 336

  
335 337
///////////////////////////////////////////////////////////////////////////////////////////////////
336 338

  
337 339
  public int getCubitVariant(int cubit, int[] numLayers)
338 340
    {
339
    return cubit<12 ? 0:1;
341
    int N = getNumLayers()[0];
342
    return cubit<12 ? 0 : (cubit<10*N*(N-1)+12 ? 1 : 2);
340 343
    }
341 344

  
342 345
///////////////////////////////////////////////////////////////////////////////////////////////////
......
387 390

  
388 391
  public String getShortName()
389 392
    {
390
    return ObjectType.ICOS_2.name();
393
    switch(getNumLayers()[0])
394
      {
395
      case 2: return ObjectType.ICOS_2.name();
396
      case 3: return ObjectType.ICOS_3.name();
397
      }
398

  
399
    return null;
391 400
    }
392 401

  
393 402
///////////////////////////////////////////////////////////////////////////////////////////////////
394 403

  
395 404
  public ObjectSignature getSignature()
396 405
    {
397
    return new ObjectSignature(ObjectSignatures.ICOS_2);
406
    switch(getNumLayers()[0])
407
      {
408
      case 2: return new ObjectSignature(ObjectSignatures.ICOS_2);
409
      case 3: return new ObjectSignature(ObjectSignatures.ICOS_3);
410
      }
411

  
412
    return null;
398 413
    }
399 414

  
400 415
///////////////////////////////////////////////////////////////////////////////////////////////////
401 416

  
402 417
  public String getObjectName()
403 418
    {
404
    return "Icosamate";
419
    switch(getNumLayers()[0])
420
      {
421
      case 2: return "Icosamate";
422
      case 3: return "Master Icosamate";
423
      }
424
    return null;
405 425
    }
406 426

  
407 427
///////////////////////////////////////////////////////////////////////////////////////////////////
408 428

  
409 429
  public String getInventor()
410 430
    {
411
    return "Jason Smith";
431
    switch(getNumLayers()[0])
432
      {
433
      case 2: return "Jason Smith";
434
      case 3: return "Keisuke Maruyama";
435
      }
436
    return null;
412 437
    }
413 438

  
414 439
///////////////////////////////////////////////////////////////////////////////////////////////////
415 440

  
416 441
  public int getYearOfInvention()
417 442
    {
418
    return 2010;
443
    switch(getNumLayers()[0])
444
      {
445
      case 2: return 2010;
446
      case 3: return 2018;
447
      }
448
    return 0;
419 449
    }
420 450

  
421 451
///////////////////////////////////////////////////////////////////////////////////////////////////
422 452

  
423 453
  public int getComplexity()
424 454
    {
425
    return 3;
455
    return getNumLayers()[0]==2 ? 3 : 4;
426 456
    }
427 457

  
428 458
///////////////////////////////////////////////////////////////////////////////////////////////////
429 459

  
430 460
  public String[][] getTutorials()
431 461
    {
432
    return new String[][] {
462
    int[] numLayers = getNumLayers();
463

  
464
    switch(numLayers[0])
465
      {
466
      case 2: return new String[][] {
433 467
                            {"gb","e7Es4Zx6Sl4","Icosamate introduction & algorithms","Superantoniovivaldi"},
434 468
                            {"gb","ZhkklbYfs98","Icosamate solve","Superantoniovivaldi"},
435 469
                            {"pl","eJTLTeoicWI","Icosamate TUTORIAL PL","MrUK"},
436 470
                            {"vn","RVjjxj9rPeg","BẠN PHẠM BẢO GIẢI ICOSAMATE","VĂN CÔNG TÙNG"},
437 471
                          };
472
      case 3: return new String[][] {
473
                            {"gb","77aBjBdfA2Q","Master Icosamate Algorithms","Superantoniovivaldi"},
474
                            {"gb","j6AIwlIofFU","Master Icosamate Tutorial","Superantoniovivaldi"},
475
                            {"gb","5Z1B5r6-CxM","Astrominx Tutorial","Jabberwock Technologies"},
476
                            {"pl","","Icosamate TUTORIAL PL","MrUK"},
477
                            {"vn","C4YO0B4rgTc","Tutorial N.237- Master Icosamate 1/3","Duy Thích Rubik"},
478
                            {"vn","90m_0AoyOHU","Tutorial N.237- Master Icosamate 2/3","Duy Thích Rubik"},
479
                            {"vn","LOd5qBwoP_k","Tutorial N.237- Master Icosamate 3/3","Duy Thích Rubik"},
480
                          };
481
      }
482

  
483
    return null;
438 484
    }
439 485
}

Also available in: Unified diff