Project

General

Profile

« Previous | Next » 

Revision 286d73ae

Added by Leszek Koltunski about 4 years ago

Port the downloading into the new 'magic' server.

View differences:

src/main/java/org/distorted/scores/RubikScores.java
37 37
  private static RubikScores mThis;
38 38

  
39 39
  private long[][][] mRecords;
40
  private int [][][] mSubmitted;
41

  
40 42
  private String mName;
41 43
  private boolean mNameIsVerified;
42 44
  private int mNumRuns;
......
47 49

  
48 50
  private RubikScores()
49 51
    {
50
    mRecords = new long[NUM_OBJECTS][MAX_SIZE][MAX_SCRAMBLE];
52
    mRecords   = new long[NUM_OBJECTS][MAX_SIZE][MAX_SCRAMBLE];
53
    mSubmitted = new int [NUM_OBJECTS][MAX_SIZE][MAX_SCRAMBLE];
51 54

  
52 55
    for(int i=0; i<NUM_OBJECTS; i++)
53 56
      for(int j=0; j<MAX_SIZE; j++)
54 57
        for(int k=0; k<MAX_SCRAMBLE; k++)
55 58
          {
56
          mRecords[i][j][k] = NO_RECORD;
59
          mRecords[i][j][k]   = NO_RECORD;
60
          mSubmitted[i][j][k] = 0;
57 61
          }
58 62

  
59 63
    mName = "YOU";
60 64
    mNameIsVerified = false;
61 65
    mNumPlays= -1;
62 66
    mNumRuns = -1;
63
    mCountryID = R.drawable.unk;
67
    mCountryID = R.drawable.un;
64 68
    }
65 69

  
66 70
///////////////////////////////////////////////////////////////////////////////////////////////////
......
101 105
          builder.append(sizes[size]);
102 106
          builder.append("=");
103 107
          builder.append(mRecords[object][size][scramble]);
108
          builder.append(",");
109
          builder.append(mSubmitted[object][size][scramble]);
104 110
          builder.append(" ");
105 111
          }
106 112
        }
......
118 124

  
119 125
  public void restorePreferences(SharedPreferences preferences)
120 126
    {
121
    String recordStr, subStr, nameStr, sizeStr, timeStr;
122
    int start, end, equals, underscore;
123
    int object, size;
127
    String recordStr, subStr, nameStr, sizeStr, timeStr, submStr;
128
    int start, end, equals, underscore, comma;
129
    int object, size, subm;
124 130
    long time;
125 131

  
126 132
    for(int scramble=0; scramble<MAX_SCRAMBLE; scramble++)
......
139 145

  
140 146
        underscore = subStr.indexOf("_");
141 147
        equals = subStr.indexOf("=");
148
        comma = subStr.indexOf(",");
142 149

  
143
        if( underscore>=0 && equals>=0 )
150
        if( underscore>=0 && equals>=0 && comma>=0 )
144 151
          {
145 152
          nameStr = subStr.substring(0,underscore);
146 153
          sizeStr = subStr.substring(underscore+1, equals);
147
          timeStr = subStr.substring(equals+1);
154
          timeStr = subStr.substring(equals+1,comma);
155
          submStr = subStr.substring(comma+1);
148 156

  
149 157
          object = RubikObjectList.getOrdinal(nameStr);
150 158
          size   = RubikObjectList.getSize(object,Integer.parseInt(sizeStr));
151 159
          time   = Long.parseLong(timeStr);
160
          subm   = Integer.parseInt(submStr);
152 161

  
153
          if( object>=0 && object< NUM_OBJECTS && size>=0 && size<MAX_SIZE )
162
          if( object>=0 && object< NUM_OBJECTS && size>=0 && size<MAX_SIZE && subm>=0 && subm<=1 )
154 163
            {
155
            mRecords[object][size][scramble] = time;
164
            mRecords  [object][size][scramble] = time;
165
            mSubmitted[object][size][scramble] = subm;
156 166

  
157 167
            if( time<NO_RECORD )
158 168
              {
159
              android.util.Log.e("solv", "Set record for: object="+object+" size="+size+" scramble="+scramble+" time: "+time);
169
              android.util.Log.e("solv", "Set record for: object="+object+" size="+size+" scramble="+scramble+" time: "+time+" submitted: "+subm);
160 170
              }
161 171
            }
162 172
          else
......
227 237
    mCountryID = country;
228 238
    }
229 239

  
240
///////////////////////////////////////////////////////////////////////////////////////////////////
241
// TODO
242

  
243
  public void setSubmitted(int object, int size, int scramble)
244
    {
245
    int maxsize = RubikObjectList.getObject(object).getSizes().length;
246

  
247
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && scramble>=1 && scramble<=MAX_SCRAMBLE )
248
      {
249
      mSubmitted[object][size][scramble] = 1;
250
      }
251
    }
252

  
230 253
///////////////////////////////////////////////////////////////////////////////////////////////////
231 254

  
232 255
  public long getRecord(int object, int size, int scramble)
......
241 264
    return -1;
242 265
    }
243 266

  
267
///////////////////////////////////////////////////////////////////////////////////////////////////
268

  
269
  public boolean isSubmitted(int object, int size, int scramble)
270
    {
271
    int maxsize = RubikObjectList.getObject(object).getSizes().length;
272

  
273
    if( object>=0 && object<NUM_OBJECTS && size>=0 && size<maxsize && scramble>=0 && scramble<MAX_SCRAMBLE )
274
      {
275
      return mSubmitted[object][size][scramble]==1;
276
      }
277

  
278
    return false;
279
    }
280

  
244 281
///////////////////////////////////////////////////////////////////////////////////////////////////
245 282
// TODO
246 283

  

Also available in: Unified diff