Revision 00057bb1
Added by Leszek Koltunski about 1 year ago
src/main/java/org/distorted/objectlib/effects/scramble/ScrambleEffect.java | ||
---|---|---|
85 | 85 |
abstract void createEffects(int duration, int numScrambles); |
86 | 86 |
abstract void effectFinishedPlugin(final long effectID); |
87 | 87 |
|
88 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
89 |
|
|
90 |
private int computeRowFromBitmap(int rowBitmap) |
|
91 |
{ |
|
92 |
int index = 0; |
|
93 |
|
|
94 |
while(index<32) |
|
95 |
{ |
|
96 |
if( (rowBitmap&0x1) != 0 ) return index; |
|
97 |
rowBitmap>>=1; |
|
98 |
index++; |
|
99 |
} |
|
100 |
return 0; |
|
101 |
} |
|
102 |
|
|
88 | 103 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
89 | 104 |
|
90 | 105 |
private void createBaseEffects(int duration, int numScrambles) |
... | ... | |
97 | 112 |
mObject.randomizeNewScramble(mScrambles, mRnd, scramble, numScrambles); |
98 | 113 |
int[] s = mScrambles[scramble]; |
99 | 114 |
axis = s[0]; |
100 |
row = s[1];
|
|
115 |
row = computeRowFromBitmap(s[1]);
|
|
101 | 116 |
angle = s[2]; |
102 | 117 |
absAngle = (angle<0 ? -angle : angle); |
103 | 118 |
basicDegrees = 360/mBasicAngle[axis][row]; |
... | ... | |
132 | 147 |
int angle= mScrambles[mNumScrambles][2]; |
133 | 148 |
|
134 | 149 |
mNumScramblesLeft--; |
135 |
mPre.addRotation(this, axis, (1<<row), angle, mDurationPerDegree);
|
|
150 |
mPre.addRotation(this, axis, row, angle, mDurationPerDegree);
|
|
136 | 151 |
mNumScrambles++; |
137 | 152 |
} |
138 | 153 |
else |
Also available in: Unified diff
Make it possible to return rowBitmaps from ObjectScrambler (rather than single rows)