Project

General

Profile

« Previous | Next » 

Revision 8e3898c8

Added by Leszek Koltunski about 4 years ago

Each object size now has its own number of levels (not always 18!)

View differences:

src/main/java/org/distorted/scores/RubikScores.java
29 29

  
30 30
import static org.distorted.objects.RubikObjectList.MAX_SIZE;
31 31
import static org.distorted.objects.RubikObjectList.NUM_OBJECTS;
32
import static org.distorted.states.RubikStatePlay.MAX_LEVEL;
32
import static org.distorted.objects.RubikObjectList.MAX_LEVEL;
33 33

  
34 34
///////////////////////////////////////////////////////////////////////////////////////////////////
35 35
// hold my own scores, and some other statistics.
......
111 111

  
112 112
      for(int size=0; size<length; size++)
113 113
        {
114
        for(int scramble=0; scramble<MAX_LEVEL; scramble++)
114
        for(int level=0; level<MAX_LEVEL; level++)
115 115
          {
116
          if( mSubmitted[object][size][scramble]==0 && mRecords[object][size][scramble]<NO_RECORD )
116
          if( mSubmitted[object][size][level]==0 && mRecords[object][size][level]<NO_RECORD )
117 117
            {
118 118
            if( !first ) builder.append(',');
119 119
            else         first=false;
......
124 124
                      builder.append("_");
125 125
                      builder.append(sizes[size]);
126 126
                      break;
127
              case 1: builder.append(scramble);
127
              case 1: builder.append(level);
128 128
                      break;
129
              case 2: builder.append(mRecords[object][size][scramble]);
129
              case 2: builder.append(mRecords[object][size][level]);
130 130
                      break;
131 131
              }
132 132
            }
......
160 160
    int[] sizes;
161 161
    int length;
162 162

  
163
    for(int scramble=0; scramble<MAX_LEVEL; scramble++)
163
    for(int level=0; level<MAX_LEVEL; level++)
164 164
      {
165 165
      builder.setLength(0);
166 166

  
......
176 176
          builder.append("_");
177 177
          builder.append(sizes[size]);
178 178
          builder.append("=");
179
          builder.append(mRecords[object][size][scramble]);
179
          builder.append(mRecords[object][size][level]);
180 180
          builder.append(",");
181
          builder.append(mSubmitted[object][size][scramble]);
181
          builder.append(mSubmitted[object][size][level]);
182 182
          builder.append(" ");
183 183
          }
184 184
        }
185 185

  
186
      editor.putString("scores_record"+scramble, builder.toString());
186
      editor.putString("scores_record"+level, builder.toString());
187 187
      }
188 188

  
189 189
    editor.putString("scores_name"  , mName  );
......
202 202
    int object, sizeIndex, subm;
203 203
    long time;
204 204

  
205
    for(int scramble=0; scramble<MAX_LEVEL; scramble++)
205
    for(int level=0; level<MAX_LEVEL; level++)
206 206
      {
207 207
      start = end = 0;
208
      recordStr = preferences.getString("scores_record"+scramble, "");
208
      recordStr = preferences.getString("scores_record"+level, "");
209 209

  
210 210
      while( end!=-1 )
211 211
        {
......
237 237

  
238 238
            if( sizeIndex>=0 && sizeIndex<MAX_SIZE && subm>=0 && subm<=1 )
239 239
              {
240
              mRecords  [object][sizeIndex][scramble] = time;
241
              mSubmitted[object][sizeIndex][scramble] = subm;
240
              mRecords  [object][sizeIndex][level] = time;
241
              mSubmitted[object][sizeIndex][level] = subm;
242 242
              }
243 243
            else
244 244
              {
......
264 264

  
265 265
///////////////////////////////////////////////////////////////////////////////////////////////////
266 266

  
267
  public boolean setRecord(int object, int size, int scramble, long timeTaken)
267
  public boolean setRecord(int object, int size, int level, long timeTaken)
268 268
    {
269 269
    int maxsize = RubikObjectList.getObject(object).getSizes().length;
270 270

  
271
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && scramble>=1 && scramble<=MAX_LEVEL )
271
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && level>=1 && level<=MAX_LEVEL )
272 272
      {
273
      if( mRecords[object][size][scramble-1]> timeTaken )
273
      if( mRecords[object][size][level-1]> timeTaken )
274 274
        {
275
        mRecords  [object][size][scramble-1] = timeTaken;
276
        mSubmitted[object][size][scramble-1] = 0;
275
        mRecords  [object][size][level-1] = timeTaken;
276
        mSubmitted[object][size][level-1] = 0;
277 277
        return true;
278 278
        }
279 279
      }
......
341 341

  
342 342
///////////////////////////////////////////////////////////////////////////////////////////////////
343 343

  
344
  public long getRecord(int object, int size, int scramble)
344
  public long getRecord(int object, int size, int level)
345 345
    {
346 346
    int maxsize = RubikObjectList.getObject(object).getSizes().length;
347 347

  
348
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && scramble>=0 && scramble<MAX_LEVEL )
348
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && level>=0 && level<MAX_LEVEL )
349 349
      {
350
      return mRecords[object][size][scramble];
350
      return mRecords[object][size][level];
351 351
      }
352 352

  
353 353
    return -1;
......
355 355

  
356 356
///////////////////////////////////////////////////////////////////////////////////////////////////
357 357

  
358
  public boolean isSubmitted(int object, int size, int scramble)
358
  public boolean isSubmitted(int object, int size, int level)
359 359
    {
360 360
    int maxsize = RubikObjectList.getObject(object).getSizes().length;
361 361

  
362
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && scramble>=0 && scramble<MAX_LEVEL )
362
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && level>=0 && level<MAX_LEVEL )
363 363
      {
364
      return mSubmitted[object][size][scramble]==1;
364
      return mSubmitted[object][size][level]==1;
365 365
      }
366 366

  
367 367
    return false;
......
422 422
      length = list.getSizes().length;
423 423

  
424 424
      for(int size=0; size<length; size++)
425
        for(int scramble=0; scramble<MAX_LEVEL; scramble++)
425
        for(int level=0; level<MAX_LEVEL; level++)
426 426
          {
427
          if( mSubmitted[object][size][scramble]==0 && mRecords[object][size][scramble]<NO_RECORD )
427
          if( mSubmitted[object][size][level]==0 && mRecords[object][size][level]<NO_RECORD )
428 428
            {
429 429
            return true;
430 430
            }

Also available in: Unified diff