Revision f7f5771f
Added by Leszek Koltunski over 1 year ago
src/main/java/org/distorted/objectlib/main/ObjectType.java | ||
---|---|---|
52 | 52 |
PYRA_6 ( TwistyPyraminx.class , 33, R.drawable.pyra_6, true, 70, 1,1, new InitData(new int[] {6,6,6,6})), |
53 | 53 |
PDUO_2 ( TwistyPyraminxDuo.class , 4, R.drawable.pduo_2, true, 0, 1,1, new InitData(new int[] {2,2,2,2})), |
54 | 54 |
|
55 |
JING_2 ( TwistyJing.class , 11, R.drawable.jing_2, true, 50, 1,1, new InitData(new int[] {2,2,2,2}, TwistyJing.JING_2) ),
|
|
55 |
JING_2 ( TwistyJing.class , 11, R.drawable.jing_2, true, 50, 1,1, new InitData(new int[] {2,2,2,2}, TwistyJing.JING_2)), |
|
56 | 56 |
JING_3 ( TwistyJing.class , 20, R.drawable.jing_3, true, 50, 1,1, new InitData(new int[] {3,3,3,3}, TwistyJing.JING_3)), |
57 | 57 |
JING_4 ( TwistyJing.class , 27, R.drawable.jing_4, true, 55, 1,1, new InitData(new int[] {3,3,3,3}, TwistyJing.JING_4)), |
58 | 58 |
JING_5 ( TwistyJing.class , 35, R.drawable.jing_5, true, 60, 1,1, new InitData(new int[] {4,4,4,4}, TwistyJing.JING_5)), |
... | ... | |
115 | 115 |
DINO_3 ( TwistyDino6.class , 10, R.drawable.dino_3, true, 0, 1,1, new InitData(new int[] {3,3,3,3})), |
116 | 116 |
DIN4_3 ( TwistyDino4.class , 6, R.drawable.din4_3, true, 30, 1,1, new InitData(new int[] {3,3,3,3})), |
117 | 117 |
COIH_3 ( TwistyCoinHexahedron.class , 35, R.drawable.coih_3, true, 50, 1,1, new InitData(new int[] {3,3,3,3,3,3,3})), |
118 |
|
|
119 | 118 |
TINS_5 ( TwistyTins.class , 28, R.drawable.tins_5, true, 60, 1,1, new InitData(new int[] {5,5,5,5})), |
120 | 119 |
O2_2 ( TwistyO2.class , 2, R.drawable.o2_2 , true, 20, 1,1, new InitData(new int[] {2,2,2})), |
121 | 120 |
|
122 | 121 |
DSKE_3 ( TwistyDinoSkewb.class , 25, R.drawable.dske_3, true, 50, 1,1, new InitData(new int[] {3,3,3,3})), |
123 | 122 |
FADI_5 ( TwistyRedi.class , 35, R.drawable.fadi_5, true, 60, 1,1, new InitData(new int[] {5,5,5,5})), |
124 | 123 |
LATT_5 ( TwistyLattice.class , 35, R.drawable.latt_5, true, 50, 1,1, new InitData(new int[] {5,5,5,5})), |
125 |
|
|
126 | 124 |
MSKE_2 ( TwistyMirrorSkewb.class , 11, R.drawable.skew_2, true, 30, 1,1, new InitData(new int[] {2,2,2,2})), |
125 |
MJIN_2 ( TwistyMirrorJing.class , 11, R.drawable.pyra_3, true, 30, 1,1, new InitData(new int[] {2,2,2,2})), |
|
127 | 126 |
MPYR_3 ( TwistyMirrorPyraminx.class , 11, R.drawable.pyra_3, true, 30, 1,1, new InitData(new int[] {3,3,3,3})), |
128 | 127 |
; |
129 | 128 |
|
... | ... | |
225 | 224 |
public static TwistyObject create(int ordinal, int iconMode, Static4D quat, Static3D move, float scale, InitAssets asset) |
226 | 225 |
{ |
227 | 226 |
/* |
228 |
if( ordinal==MORP_2.ordinal() )
|
|
227 |
if( ordinal==MPYR_3.ordinal() )
|
|
229 | 228 |
{ |
230 |
return new TwistyMorphix(iconMode,quat,move,scale,objects[ordinal].mInitData,asset);
|
|
229 |
return new TwistyMirrorPyraminx(iconMode,quat,move,scale,objects[ordinal].mInitData,asset);
|
|
231 | 230 |
} |
232 | 231 |
*/ |
233 |
|
|
234 | 232 |
if( ordinal>=NUM_OBJECTS || ordinal<0 ) ordinal =0; |
235 | 233 |
|
236 | 234 |
Class<? extends TwistyObject> clazz = objects[ordinal].mClass; |
src/main/java/org/distorted/objectlib/main/TwistyObject.java | ||
---|---|---|
574 | 574 |
|
575 | 575 |
public int getVariantStickerShape(int variant, int face) |
576 | 576 |
{ |
577 |
int[] var = mStickerVariants[variant]; |
|
578 |
return face>=var.length ? -1 : var[face]; |
|
577 |
if( variant <mStickerVariants.length ) |
|
578 |
{ |
|
579 |
int[] var = mStickerVariants[variant]; |
|
580 |
return face>=var.length ? -1 : var[face]; |
|
581 |
} |
|
582 |
return -1; |
|
579 | 583 |
} |
580 | 584 |
|
581 | 585 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
src/main/java/org/distorted/objectlib/objects/TwistyMirrorJing.java | ||
---|---|---|
43 | 43 |
private static final float JING_F = 0.48f; |
44 | 44 |
|
45 | 45 |
private static final int[] FACE_COLORS = new int[] { COLOR_WHITE }; |
46 |
private static final float[] MIRROR_VEC = { 0.0f, 0.0f, 0.0f };
|
|
46 |
private static final float[] MIRROR_VEC = { 0.06f, 0.07f, 0.08f };
|
|
47 | 47 |
|
48 | 48 |
private int[][] mEdges; |
49 | 49 |
private int[][] mBasicAngle; |
... | ... | |
270 | 270 |
{ |
271 | 271 |
float[][] pos = getPositions(); |
272 | 272 |
float[] position = pos[variant]; |
273 |
float[][] center = computeVertexEffectCenter(variant); |
|
274 |
float[] cent = center[0]; |
|
275 | 273 |
|
276 | 274 |
float[] ret = new float[3]; |
277 | 275 |
|
278 |
float A = 0.1f;
|
|
276 |
float A = 0.9f;
|
|
279 | 277 |
|
280 |
ret[0] = position[0] + A*cent[0];
|
|
281 |
ret[1] = position[1] + A*cent[1];
|
|
282 |
ret[2] = position[2] + A*cent[2];
|
|
278 |
ret[0] = A*position[0];
|
|
279 |
ret[1] = A*position[1];
|
|
280 |
ret[2] = A*position[2];
|
|
283 | 281 |
|
284 | 282 |
return ret; |
285 | 283 |
} |
... | ... | |
320 | 318 |
if( variant<4 ) |
321 | 319 |
{ |
322 | 320 |
int N = 5; |
323 |
int E = 2;
|
|
321 |
int E = 1;
|
|
324 | 322 |
float height = isInIconMode() ? 0.001f : 0.02f; |
325 | 323 |
float[][] bands = { {height,35,0.3f,0.5f,N,E,E}, {0.001f,35,0.3f,0.5f,N,E,E} }; |
326 | 324 |
return new ObjectFaceShape(bands,indices,null); |
... | ... | |
328 | 326 |
else if( variant<10 ) |
329 | 327 |
{ |
330 | 328 |
int N = 5; |
331 |
int E = 1;
|
|
329 |
int E = 0;
|
|
332 | 330 |
float height = isInIconMode() ? 0.001f : 0.02f; |
333 |
float[][] bands = { {height,35,0.3f,0.5f,N,E,E}, {0.001f,35,0.3f,0.5f,3,0,0} };
|
|
331 |
float[][] bands = { {height,35,0.3f,0.5f,N,E,E}, {0.001f,35,0.3f,0.5f,N,E,E} };
|
|
334 | 332 |
return new ObjectFaceShape(bands,indices,null); |
335 | 333 |
} |
336 | 334 |
else |
... | ... | |
349 | 347 |
{ |
350 | 348 |
float A; |
351 | 349 |
|
352 |
if( variant< 4 ) A = 0.4f; |
|
353 |
else if( variant<10 ) A = 1.0f; |
|
354 |
else A = 0.9f; |
|
350 |
if( variant< 4 ) A = -0.4f;
|
|
351 |
else if( variant<10 ) A = -1.0f;
|
|
352 |
else A = -0.9f;
|
|
355 | 353 |
|
356 | 354 |
float[][] positions = getPositions(); |
357 | 355 |
float[] p = positions[variant]; |
... | ... | |
370 | 368 |
int[] indices = FactoryShape.computeVertexEffectsIndices(vertices, pos[variant], getFaceAxis(), getDist() ); |
371 | 369 |
|
372 | 370 |
float S,R; |
373 |
if( variant< 4 ) { S = 0.03f; R=0.15f; }
|
|
374 |
else if( variant<10 ) { S = 0.03f; R=0.15f; }
|
|
375 |
else { S = 0.03f; R=0.15f; }
|
|
371 |
if( variant< 4 ) { S = 0.05f; R=0.15f; }
|
|
372 |
else if( variant<10 ) { S = 0.05f; R=0.15f; }
|
|
373 |
else { S = 0.05f; R=0.15f; }
|
|
376 | 374 |
|
377 |
float[][] corners = new float[][]{{S,R}};
|
|
375 |
float[][] corners = {{S,R}};
|
|
378 | 376 |
|
379 | 377 |
return FactoryCubit.generateVertexEffect(vertices,corners,indices,centers,indices); |
380 | 378 |
} |
src/main/java/org/distorted/objectlib/objects/TwistyMirrorPyraminx.java | ||
---|---|---|
349 | 349 |
|
350 | 350 |
float[] ret = new float[3]; |
351 | 351 |
|
352 |
float A = 0.05f;
|
|
352 |
float A = 0.0f; |
|
353 | 353 |
|
354 | 354 |
ret[0] = position[0] + A*cent[0]; |
355 | 355 |
ret[1] = position[1] + A*cent[1]; |
Also available in: Unified diff
Bump Jing works now.