| 251 |
251 |
|
| 252 |
252 |
void backPhase()
|
| 253 |
253 |
{
|
| 254 |
|
SolverActivity act = mAct.get();
|
| 255 |
|
ObjectControl control = act.getControl();
|
| 256 |
|
|
| 257 |
|
if( mCurrMove>0 )
|
| 258 |
|
{
|
| 259 |
|
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],0,mCurrMove, false);
|
| 260 |
|
control.applyScrambles(moves);
|
| 261 |
|
mCurrMove = 0;
|
| 262 |
|
}
|
| 263 |
|
else if( mCurrPhase>0 )
|
| 264 |
|
{
|
| 265 |
|
mCurrPhase--;
|
| 266 |
|
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
| 267 |
|
mCurrMove = 0;
|
| 268 |
|
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],0,mNumMoves, false);
|
| 269 |
|
control.applyScrambles(moves);
|
| 270 |
|
}
|
| 271 |
|
else
|
|
254 |
if( mMoves!=null )
|
| 272 |
255 |
{
|
| 273 |
|
mCurrPhase = mNumPhases-1;
|
| 274 |
|
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
| 275 |
|
mCurrMove = mNumMoves;
|
| 276 |
|
ObjectMove[] moves = transformMoves(mMoves, true);
|
| 277 |
|
control.applyScrambles(moves);
|
| 278 |
|
}
|
|
256 |
SolverActivity act = mAct.get();
|
|
257 |
ObjectControl control = act.getControl();
|
| 279 |
258 |
|
| 280 |
|
setText(act);
|
|
259 |
if( mCurrMove>0 )
|
|
260 |
{
|
|
261 |
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],0,mCurrMove, false);
|
|
262 |
control.applyScrambles(moves);
|
|
263 |
mCurrMove = 0;
|
|
264 |
}
|
|
265 |
else if( mCurrPhase>0 )
|
|
266 |
{
|
|
267 |
mCurrPhase--;
|
|
268 |
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
|
269 |
mCurrMove = 0;
|
|
270 |
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],0,mNumMoves, false);
|
|
271 |
control.applyScrambles(moves);
|
|
272 |
}
|
|
273 |
else
|
|
274 |
{
|
|
275 |
mCurrPhase = mNumPhases-1;
|
|
276 |
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
|
277 |
mCurrMove = mNumMoves;
|
|
278 |
ObjectMove[] moves = transformMoves(mMoves, true);
|
|
279 |
control.applyScrambles(moves);
|
|
280 |
}
|
|
281 |
|
|
282 |
setText(act);
|
|
283 |
}
|
| 281 |
284 |
}
|
| 282 |
285 |
|
| 283 |
286 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
| 284 |
287 |
|
| 285 |
288 |
void nextPhase()
|
| 286 |
289 |
{
|
| 287 |
|
SolverActivity act = mAct.get();
|
| 288 |
|
ObjectControl control = act.getControl();
|
| 289 |
|
|
| 290 |
|
if( mCurrPhase<mNumPhases-1 )
|
| 291 |
|
{
|
| 292 |
|
glowCubits(mCubitsNotInvolved[mCurrPhase]);
|
| 293 |
|
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],mCurrMove,mNumMoves, true);
|
| 294 |
|
control.applyScrambles(moves);
|
| 295 |
|
mCurrPhase++;
|
| 296 |
|
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
| 297 |
|
mCurrMove = 0;
|
| 298 |
|
}
|
| 299 |
|
else if( mCurrMove<mNumMoves )
|
| 300 |
|
{
|
| 301 |
|
glowCubits(mCubitsNotInvolved[mCurrPhase]);
|
| 302 |
|
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],mCurrMove,mNumMoves, true);
|
| 303 |
|
control.applyScrambles(moves);
|
| 304 |
|
mCurrMove = mNumMoves;
|
| 305 |
|
}
|
| 306 |
|
else
|
|
290 |
if( mMoves!=null )
|
| 307 |
291 |
{
|
| 308 |
|
mCurrPhase = 0;
|
| 309 |
|
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
| 310 |
|
mCurrMove = 0;
|
| 311 |
|
ObjectMove[] moves = transformMoves(mMoves, false);
|
| 312 |
|
control.applyScrambles(moves);
|
| 313 |
|
}
|
|
292 |
SolverActivity act = mAct.get();
|
|
293 |
ObjectControl control = act.getControl();
|
| 314 |
294 |
|
| 315 |
|
setText(act);
|
|
295 |
if( mCurrPhase<mNumPhases-1 )
|
|
296 |
{
|
|
297 |
glowCubits(mCubitsNotInvolved[mCurrPhase]);
|
|
298 |
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],mCurrMove,mNumMoves, true);
|
|
299 |
control.applyScrambles(moves);
|
|
300 |
mCurrPhase++;
|
|
301 |
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
|
302 |
mCurrMove = 0;
|
|
303 |
}
|
|
304 |
else if( mCurrMove<mNumMoves )
|
|
305 |
{
|
|
306 |
glowCubits(mCubitsNotInvolved[mCurrPhase]);
|
|
307 |
ObjectMove[] moves = transformMoves(mMoves[mCurrPhase],mCurrMove,mNumMoves, true);
|
|
308 |
control.applyScrambles(moves);
|
|
309 |
mCurrMove = mNumMoves;
|
|
310 |
}
|
|
311 |
else
|
|
312 |
{
|
|
313 |
mCurrPhase = 0;
|
|
314 |
mNumMoves = mMoves[mCurrPhase]==null ? 0 : mMoves[mCurrPhase].length;
|
|
315 |
mCurrMove = 0;
|
|
316 |
ObjectMove[] moves = transformMoves(mMoves, false);
|
|
317 |
control.applyScrambles(moves);
|
|
318 |
}
|
|
319 |
|
|
320 |
setText(act);
|
|
321 |
}
|
| 316 |
322 |
}
|
| 317 |
323 |
|
| 318 |
324 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
adjust TODO
fix for a crasher