Revision 771f6dfa
Added by Leszek Koltunski about 4 years ago
| src/main/java/org/distorted/effects/EffectController.java | ||
|---|---|---|
| 21 | 21 |
|
| 22 | 22 |
import org.distorted.helpers.MovesFinished; |
| 23 | 23 |
import org.distorted.library.message.EffectListener; |
| 24 |
import org.distorted.main.RubikPreRender; |
|
| 25 | 24 |
import org.distorted.objects.TwistyObject; |
| 26 | 25 |
|
| 27 | 26 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| ... | ... | |
| 32 | 31 |
TwistyObject getOldObject(); |
| 33 | 32 |
TwistyObject getObject(); |
| 34 | 33 |
int getNumScrambles(); |
| 34 |
void solve(); |
|
| 35 | 35 |
} |
| src/main/java/org/distorted/effects/scramble/ScrambleEffect.java | ||
|---|---|---|
| 25 | 25 |
import org.distorted.library.main.DistortedEffects; |
| 26 | 26 |
import org.distorted.library.main.DistortedScreen; |
| 27 | 27 |
import org.distorted.library.message.EffectListener; |
| 28 |
import org.distorted.main.RubikPreRender; |
|
| 29 | 28 |
import org.distorted.effects.EffectController; |
| 30 | 29 |
import org.distorted.objects.ObjectList; |
| 31 | 30 |
import org.distorted.objects.TwistyObject; |
| ... | ... | |
| 267 | 266 |
mObject = cont.getObject(); |
| 268 | 267 |
mController= cont; |
| 269 | 268 |
|
| 270 |
mObject.solve();
|
|
| 269 |
mController.solve();
|
|
| 271 | 270 |
|
| 272 | 271 |
mBasicAngle = mObject.getBasicAngle(); |
| 273 | 272 |
|
| src/main/java/org/distorted/effects/solve/SolveEffect.java | ||
|---|---|---|
| 66 | 66 |
private EffectController mController; |
| 67 | 67 |
private int mDuration; |
| 68 | 68 |
private int mEffectReturned; |
| 69 |
private int[] mCubeEffectNumber, mNodeEffectNumber; |
|
| 69 |
private final int[] mCubeEffectNumber, mNodeEffectNumber;
|
|
| 70 | 70 |
private int mPhase; |
| 71 | 71 |
|
| 72 | 72 |
TwistyObject mObject; |
| ... | ... | |
| 130 | 130 |
{
|
| 131 | 131 |
case 0: mEffectReturned = 0; |
| 132 | 132 |
mPhase = 1; |
| 133 |
mObject.solve();
|
|
| 133 |
mController.solve();
|
|
| 134 | 134 |
createEffectsPhase1(mDuration); |
| 135 | 135 |
assignEffects(mPhase); |
| 136 | 136 |
break; |
| src/main/java/org/distorted/main/RubikPreRender.java | ||
|---|---|---|
| 56 | 56 |
private final RubikSurfaceView mView; |
| 57 | 57 |
private boolean mFinishRotation, mRemoveRotation, mRemovePatternRotation, mAddRotation, |
| 58 | 58 |
mSetQuat, mChangeObject, mSetupObject, mSolveObject, mScrambleObject, |
| 59 |
mInitializeObject, mSetTextureMap, mResetAllTextureMaps; |
|
| 59 |
mInitializeObject, mSetTextureMap, mResetAllTextureMaps, mSolve;
|
|
| 60 | 60 |
private boolean mUIBlocked, mTouchBlocked; |
| 61 | 61 |
private boolean mIsSolved; |
| 62 | 62 |
private ObjectList mNextObject; |
| ... | ... | |
| 94 | 94 |
mChangeObject = false; |
| 95 | 95 |
mSetupObject = false; |
| 96 | 96 |
mSolveObject = false; |
| 97 |
mSolve = false; |
|
| 97 | 98 |
mScrambleObject = false; |
| 98 | 99 |
|
| 99 | 100 |
mOldObject = null; |
| ... | ... | |
| 299 | 300 |
doEffectNow( BaseEffect.Type.SOLVE ); |
| 300 | 301 |
} |
| 301 | 302 |
|
| 303 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 304 |
|
|
| 305 |
private void solveNow() |
|
| 306 |
{
|
|
| 307 |
mSolve = false; |
|
| 308 |
mNewObject.solve(); |
|
| 309 |
} |
|
| 310 |
|
|
| 302 | 311 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 303 | 312 |
|
| 304 | 313 |
private void initializeObjectNow() |
| ... | ... | |
| 599 | 608 |
|
| 600 | 609 |
void preRender() |
| 601 | 610 |
{
|
| 611 |
if( mSolve ) solveNow(); |
|
| 602 | 612 |
if( mSetQuat ) setQuatNow(); |
| 603 | 613 |
if( mFinishRotation ) finishRotationNow(); |
| 604 | 614 |
if( mRemoveRotation ) removeRotationNow(); |
| ... | ... | |
| 655 | 665 |
} |
| 656 | 666 |
|
| 657 | 667 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 668 |
// this starts the Solve Effect |
|
| 658 | 669 |
|
| 659 | 670 |
public void solveObject() |
| 660 | 671 |
{
|
| ... | ... | |
| 664 | 675 |
} |
| 665 | 676 |
} |
| 666 | 677 |
|
| 678 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 679 |
// this only sets the cubits state to solved |
|
| 680 |
|
|
| 681 |
public void solve() |
|
| 682 |
{
|
|
| 683 |
mSolve = true; |
|
| 684 |
} |
|
| 685 |
|
|
| 667 | 686 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 668 | 687 |
|
| 669 | 688 |
public void resetAllTextureMaps() |
| src/main/java/org/distorted/objects/Cubit.java | ||
|---|---|---|
| 123 | 123 |
} |
| 124 | 124 |
} |
| 125 | 125 |
|
| 126 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 127 |
|
|
| 128 |
float[] getOrigPosition() |
|
| 129 |
{
|
|
| 130 |
return mOrigPosition; |
|
| 131 |
} |
|
| 132 |
|
|
| 133 | 126 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 134 | 127 |
|
| 135 | 128 |
void modifyCurrentPosition(Static4D quat) |
| src/main/java/org/distorted/tutorials/TutorialPreRender.java | ||
|---|---|---|
| 38 | 38 |
private final TutorialSurfaceView mView; |
| 39 | 39 |
private boolean mFinishRotation, mRemoveRotation, mAddRotation, |
| 40 | 40 |
mSetQuat, mChangeObject, mSetupObject, mSolveObject, mScrambleObject, |
| 41 |
mInitializeObject, mResetAllTextureMaps, mRemovePatternRotation; |
|
| 41 |
mInitializeObject, mResetAllTextureMaps, mRemovePatternRotation, mSolve;
|
|
| 42 | 42 |
private boolean mUIBlocked, mTouchBlocked; |
| 43 | 43 |
private boolean mIsSolved; |
| 44 | 44 |
private ObjectList mNextObject; |
| ... | ... | |
| 66 | 66 |
mChangeObject = false; |
| 67 | 67 |
mSetupObject = false; |
| 68 | 68 |
mSolveObject = false; |
| 69 |
mSolve = false; |
|
| 69 | 70 |
mScrambleObject = false; |
| 70 | 71 |
|
| 71 | 72 |
mOldObject = null; |
| ... | ... | |
| 238 | 239 |
doEffectNow( BaseEffect.Type.SOLVE ); |
| 239 | 240 |
} |
| 240 | 241 |
|
| 242 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 243 |
|
|
| 244 |
private void solveNow() |
|
| 245 |
{
|
|
| 246 |
mSolve = false; |
|
| 247 |
mNewObject.solve(); |
|
| 248 |
} |
|
| 249 |
|
|
| 241 | 250 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 242 | 251 |
|
| 243 | 252 |
private void initializeObjectNow() |
| ... | ... | |
| 309 | 318 |
|
| 310 | 319 |
void preRender() |
| 311 | 320 |
{
|
| 321 |
if( mSolve ) solveNow(); |
|
| 312 | 322 |
if( mSetQuat ) setQuatNow(); |
| 313 | 323 |
if( mFinishRotation ) finishRotationNow(); |
| 314 | 324 |
if( mRemoveRotation ) removeRotationNow(); |
| ... | ... | |
| 403 | 413 |
} |
| 404 | 414 |
|
| 405 | 415 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 416 |
// this starts the SolveEffect |
|
| 406 | 417 |
|
| 407 | 418 |
public void solveObject() |
| 408 | 419 |
{
|
| ... | ... | |
| 412 | 423 |
} |
| 413 | 424 |
} |
| 414 | 425 |
|
| 426 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 427 |
// this only solves the object |
|
| 428 |
|
|
| 429 |
public void solve() |
|
| 430 |
{
|
|
| 431 |
mSolve = true; |
|
| 432 |
} |
|
| 433 |
|
|
| 415 | 434 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 416 | 435 |
|
| 417 | 436 |
public void scrambleObject(int num) |
Also available in: Unified diff
Move actual solving the object to PreRender.
(before we had a 'solveObejct()' in preRender already, but that one just starts the Solve Effect!)