Project

General

Profile

« Previous | Next » 

Revision ade99032

Added by Leszek Koltunski 2 months ago

Objects can support or not changing colors of their stickers.

View differences:

src/main/java/org/distorted/objectlib/json/JsonReader.java
62 62
  private int mMovementType, mMovementSplit;
63 63
  private int[][][] mEnabled;
64 64
  private float[] mDist3D;
65
  private int mNumCubitFaces, mNumFaces, mNumFaceColors;
65
  private int mNumCubitFaces, mNumFaces;
66 66
  private float[][] mPositions;
67 67
  private ObjectShape[] mShapes;
68 68
  private ObjectFaceShape[] mFaceShapes;
......
93 93
  private ObjectStickerOverride[] mStickerOverrides;
94 94
  private float mPillowCoeff;
95 95
  private int[][] mMinimalCubitsInRow;
96
  private boolean mSupportsAdjustableColors;
96 97

  
97 98
///////////////////////////////////////////////////////////////////////////////////////////////////
98 99

  
......
184 185

  
185 186
    if( free ) mPrice = 0;
186 187
    else mPrice = metadata.optInt("price", ListObjects.DEFAULT_PRICE_OF_OLD_OBJECTS );
188

  
189
    mSupportsAdjustableColors = metadata.optBoolean("adj_colors", true);
187 190
    }
188 191

  
189 192
///////////////////////////////////////////////////////////////////////////////////////////////////
......
846 849

  
847 850
  private void parseColors(JSONArray object) throws JSONException
848 851
    {
849
    mNumFaceColors = object.length()-1;
850

  
851
    mColorTable = new int[mNumFaceColors];
852
    for(int i=0; i<mNumFaceColors; i++) mColorTable[i] = object.getInt(i);
853

  
854
    mInternalColor = object.getInt(mNumFaceColors);
852
    int num = object.length()-1;
853
    mColorTable = new int[num];
854
    for(int i=0; i<num; i++) mColorTable[i] = object.getInt(i);
855
    mInternalColor = object.getInt(num);
855 856
    }
856 857

  
857 858
///////////////////////////////////////////////////////////////////////////////////////////////////
......
1211 1212
    return mPrice;
1212 1213
    }
1213 1214

  
1215
///////////////////////////////////////////////////////////////////////////////////////////////////
1216

  
1217
  public boolean getAdjustableColors()
1218
    {
1219
    return mSupportsAdjustableColors;
1220
    }
1221

  
1214 1222
///////////////////////////////////////////////////////////////////////////////////////////////////
1215 1223

  
1216 1224
  public ObjectSticker retSticker(int sticker)
src/main/java/org/distorted/objectlib/json/JsonWriter.java
439 439
    metadata.put("num_faces"  , object.getNumPuzzleFaces() );
440 440
    metadata.put("price"      , meta.price() );
441 441
    metadata.put("category"   , meta.getCategory() );
442
    metadata.put("adj_colors" , meta.supportsAdjustableStickerColors() );
442 443

  
443 444
    JSONArray sigArray = new JSONArray();
444 445
    long[] sig = object.getSignature().getArray();
src/main/java/org/distorted/objectlib/metadata/Metadata.java
78 78
  public float getDifficulty()    { return 1.0f; }
79 79
  public String getObjectName()   { return null; }
80 80
  public int getCategory()        { return 0; }
81
  public boolean supportsAdjustableStickerColors()  { return true; }
81 82
  public ObjectSignature getSignature()  { return mSignature; }
82 83
  public Class<? extends TwistyObject> getObjectClass() { return mClass; }
83 84
  }
src/main/java/org/distorted/objectlib/metadata/MetadataBALL_4.java
28 28
  public int getYearOfInvention() { return 1992; }
29 29
  public float getDifficulty()    { return 2.005f; }
30 30
  public String getObjectName()   { return "Masterball"; }
31
  public boolean supportsAdjustableStickerColors()  { return false; }
31 32
  public int getCategory()        { return CATEGORY_SHAPE_BAL | CATEGORY_AXIS_OTHE; }
32 33
  }
src/main/java/org/distorted/objectlib/metadata/MetadataPENR_2.java
29 29
  public int getYearOfInvention() { return 2018; }
30 30
  public float getDifficulty()    { return 1.59f; }
31 31
  public String getObjectName()   { return "Penrose 2x2"; }
32
  public boolean supportsAdjustableStickerColors()  { return false; }
32 33
  public int getCategory()        { return CATEGORY_SHAPE_HEX | CATEGORY_AXIS_FACE; }
33 34
  }
src/main/java/org/distorted/objectlib/metadata/MetadataPENR_3.java
29 29
  public int getYearOfInvention() { return 2017; }
30 30
  public float getDifficulty()    { return 2.59f; }
31 31
  public String getObjectName()   { return "Penrose Cube"; }
32
  public boolean supportsAdjustableStickerColors()  { return false; }
32 33
  public int getCategory()        { return CATEGORY_SHAPE_HEX | CATEGORY_AXIS_FACE | CATEGORY_SHAPEMOD_3x3; }
33 34
  }
src/main/java/org/distorted/objectlib/metadata/MetadataPENR_4.java
29 29
  public int getYearOfInvention() { return 2018; }
30 30
  public float getDifficulty()    { return 3.51f; }
31 31
  public String getObjectName()   { return "Penrose 4x4"; }
32
  public boolean supportsAdjustableStickerColors()  { return false; }
32 33
  public int getCategory()        { return CATEGORY_SHAPE_HEX | CATEGORY_AXIS_FACE; }
33 34
  }

Also available in: Unified diff