Project

General

Profile

« Previous | Next » 

Revision a8295031

Added by Leszek Koltunski almost 2 years ago

Introduce InitData, a data structure used to initialize a TwistyObject.
Current (optional) members: int[] numLayers, int param [intended: type of the Crazy 3x3 planet], float[][] pos [position of a bandaged cube] )

View differences:

src/main/java/org/distorted/objectlib/main/InitData.java
1
///////////////////////////////////////////////////////////////////////////////////////////////////
2
// Copyright 2019 Leszek Koltunski                                                               //
3
//                                                                                               //
4
// This file is part of Magic Cube.                                                              //
5
//                                                                                               //
6
// Magic Cube is free software: you can redistribute it and/or modify                            //
7
// it under the terms of the GNU General Public License as published by                          //
8
// the Free Software Foundation, either version 2 of the License, or                             //
9
// (at your option) any later version.                                                           //
10
//                                                                                               //
11
// Magic Cube is distributed in the hope that it will be useful,                                 //
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of                                //
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                                 //
14
// GNU General Public License for more details.                                                  //
15
//                                                                                               //
16
// You should have received a copy of the GNU General Public License                             //
17
// along with Magic Cube.  If not, see <http://www.gnu.org/licenses/>.                           //
18
///////////////////////////////////////////////////////////////////////////////////////////////////
19

  
20
package org.distorted.objectlib.main;
21

  
22
///////////////////////////////////////////////////////////////////////////////////////////////////
23

  
24
public class InitData
25
  {
26
  private final int[] mNumLayers;
27
  private final int mParam;
28
  private final float[][] mPos;
29

  
30
///////////////////////////////////////////////////////////////////////////////////////////////////
31

  
32
  public InitData(int[] numLayers)
33
    {
34
    mNumLayers = numLayers;
35
    mParam = 0;
36
    mPos = null;
37
    }
38

  
39
///////////////////////////////////////////////////////////////////////////////////////////////////
40

  
41
  public InitData(int[] numLayers, int param)
42
    {
43
    mNumLayers = numLayers;
44
    mParam = param;
45
    mPos = null;
46
    }
47

  
48
///////////////////////////////////////////////////////////////////////////////////////////////////
49

  
50
  public InitData(int[] numLayers, float[][] pos)
51
    {
52
    mNumLayers = numLayers;
53
    mParam = 0;
54
    mPos = pos;
55
    }
56

  
57
///////////////////////////////////////////////////////////////////////////////////////////////////
58

  
59
  public int[] getNumLayers()
60
    {
61
    return mNumLayers;
62
    }
63

  
64
///////////////////////////////////////////////////////////////////////////////////////////////////
65

  
66
  public int getParam()
67
    {
68
    return mParam;
69
    }
70

  
71
///////////////////////////////////////////////////////////////////////////////////////////////////
72

  
73
  public float[][] getPos()
74
    {
75
    return mPos;
76
    }
77
}
src/main/java/org/distorted/objectlib/main/ObjectType.java
33 33

  
34 34
public enum ObjectType
35 35
  {
36
  CUBE_2 ( TwistyCuboid.class        , new int[] {2,2,2}      , 12, R.drawable.cube_2, true),
37
  CUBE_3 ( TwistyCuboid.class        , new int[] {3,3,3}      , 17, R.drawable.cube_3, true),
38
  CUBE_4 ( TwistyCuboid.class        , new int[] {4,4,4}      , 24, R.drawable.cube_4, true),
39
  CUBE_5 ( TwistyCuboid.class        , new int[] {5,5,5}      , 28, R.drawable.cube_5, true),
40
  CUBE_6 ( TwistyCuboid.class        , new int[] {6,6,6}      , 35, R.drawable.cube_6, true),
41
  CUBE_7 ( TwistyCuboid.class        , new int[] {7,7,7}      , 42, R.drawable.cube_7, true),
42
  BAN1_3 ( TwistyBandagedFused.class , new int[] {3,3,3}      , 16, R.drawable.ban1_3, true),
43
  BAN2_3 ( TwistyBandaged2Bar.class  , new int[] {3,3,3}      , 20, R.drawable.ban2_3, true),
44
  BAN3_3 ( TwistyBandaged3Plate.class, new int[] {3,3,3}      , 16, R.drawable.ban3_3, true),
45
  BAN4_3 ( TwistyBandagedBiCube.class, new int[] {3,3,3}      , 22, R.drawable.ban4_3, true),
46
  CU_323 ( TwistyCuboid.class        , new int[] {3,2,3}      , 15, R.drawable.cu_323, true),
47
  CU_232 ( TwistyCuboid.class        , new int[] {2,3,2}      , 16, R.drawable.cu_232, true),
48
  CU_343 ( TwistyCuboid.class        , new int[] {3,4,3}      , 23, R.drawable.cu_343, true),
49
  SQU1_3 ( TwistySquare1.class       , new int[] {3,2,3}      , 24, R.drawable.squ1_3, true),
50
  SQU2_3 ( TwistySquare2.class       , new int[] {3,2,3}      , 24, R.drawable.squ2_3, true),
51
  ULTI_2 ( TwistyUltimate.class      , new int[] {2,2,2,2}    , 18, R.drawable.ulti_2, true),
52
  KILO_3 ( TwistyKilominx.class      , new int[] {3,3,3,3,3,3}, 18, R.drawable.kilo_3, true),
53
  MEGA_3 ( TwistyMegaminx.class      , new int[] {3,3,3,3,3,3}, 21, R.drawable.mega_3, true),
54
  KILO_5 ( TwistyKilominx.class      , new int[] {5,5,5,5,5,5}, 33, R.drawable.kilo_5, true),
55
  MEGA_5 ( TwistyMegaminx.class      , new int[] {5,5,5,5,5,5}, 37, R.drawable.mega_5, true),
56
  MORP_2 ( TwistyMorphix.class       , new int[] {2,2,2}      , 12, R.drawable.morp_2, true),
57
  JING_2 ( TwistyJing.class          , new int[] {2,2,2,2}    , 11, R.drawable.jing_2, true),
58
  PYRA_3 ( TwistyPyraminx.class      , new int[] {3,3,3,3}    , 10, R.drawable.pyra_3, true),
59
  PYRA_4 ( TwistyPyraminx.class      , new int[] {4,4,4,4}    , 17, R.drawable.pyra_4, true),
60
  PYRA_5 ( TwistyPyraminx.class      , new int[] {5,5,5,5}    , 23, R.drawable.pyra_5, true),
61
  TRAJ_3 ( TwistyTrajber.class       , new int[] {3,3,3}      , 17, R.drawable.traj_3, true),
62
  TRAJ_4 ( TwistyTrajber.class       , new int[] {4,4,4}      , 24, R.drawable.traj_4, true),
63
  DIAM_2 ( TwistyDiamond.class       , new int[] {2,2,2,2}    , 12, R.drawable.diam_2, true),
64
  DIAM_3 ( TwistyDiamond.class       , new int[] {3,3,3,3}    , 24, R.drawable.diam_3, true),
65
  DIAM_4 ( TwistyDiamond.class       , new int[] {4,4,4,4}    , 32, R.drawable.diam_4, true),
66
  DINO_3 ( TwistyDino6.class         , new int[] {3,3,3,3}    , 10, R.drawable.dino_3, true),
67
  DIN4_3 ( TwistyDino4.class         , new int[] {3,3,3,3}    ,  7, R.drawable.din4_3, true),
68
  MIRR_2 ( TwistyMirror.class        , new int[] {2,2,2}      , 12, R.drawable.mirr_2, true),
69
  MIRR_3 ( TwistyMirror.class        , new int[] {3,3,3}      , 17, R.drawable.mirr_3, true),
70
  MIRR_4 ( TwistyMirror.class        , new int[] {4,4,4}      , 24, R.drawable.mirr_4, true),
71
  FISH_3 ( TwistyFisher.class        , new int[] {3,3,3}      , 24, R.drawable.fish_3, true),
72
  WIND_3 ( TwistyWindmill.class      , new int[] {3,3,3}      , 24, R.drawable.wind_3, true),
73
  AXIS_3 ( TwistyAxis.class          , new int[] {3,3,3}      , 24, R.drawable.axis_3, true),
74
  IVY_2  ( TwistyIvy.class           , new int[] {2,2,2,2}    ,  8, R.drawable.ivy_2 , true),
75
  REX_3  ( TwistyRex.class           , new int[] {3,3,3,3}    , 19, R.drawable.rex_3 , true),
76
  REDI_3 ( TwistyRedi.class          , new int[] {3,3,3,3}    , 16, R.drawable.redi_3, true),
77
  HELI_3 ( TwistyHelicopter.class    , new int[] {3,3,3,3,3,3}, 20, R.drawable.heli_3, true),
78
  SKEW_2 ( TwistySkewb.class         , new int[] {2,2,2,2}    , 11, R.drawable.skew_2, true),
79
  SKEW_3 ( TwistySkewb.class         , new int[] {3,3,3,3}    , 21, R.drawable.skew_3, true),
80
  CONT_2 ( TwistyContainer.class     , new int[] {2,2,2,2}    , 12, R.drawable.cont_2, true),
81

  
82
  CRA1_3 ( TwistyCrazy.class         , new int[] {3,3,3}      , 22, R.drawable.cra1_3, true),
83

  
84
  VOID_3 ( TwistyVoid.class          , new int[] {3,3,3}      , 17, R.drawable.void_3, false),  // wasDownloadableButNowIsBuiltIn()
85
  CRYS_3 ( TwistyCrystal.class       , new int[] {3,3,3,3,3,3}, 27, R.drawable.crys_3, false),  // function!
86
  STAR_3 ( TwistyStarminx.class      , new int[] {3,3,3,3,3,3}, 27, R.drawable.star_3, false),
87
  PENT_2 ( TwistyPentultimate.class  , new int[] {2,2,2,2,2,2}, 21, R.drawable.pent_2, false),
88
  MIXU_3 ( TwistyMixup3x3.class      , new int[] {3,3,3}      , 24, R.drawable.mixu_3, false),
89
  MIXP_3 ( TwistyMixup3x3Plus.class  , new int[] {3,3,3}      , 28, R.drawable.mixp_3, false),
36
  CUBE_2 ( TwistyCuboid.class        , 12, R.drawable.cube_2, true, new InitData(new int[] {2,2,2})),
37
  CUBE_3 ( TwistyCuboid.class        , 17, R.drawable.cube_3, true, new InitData(new int[] {3,3,3})),
38
  CUBE_4 ( TwistyCuboid.class        , 24, R.drawable.cube_4, true, new InitData(new int[] {4,4,4})),
39
  CUBE_5 ( TwistyCuboid.class        , 28, R.drawable.cube_5, true, new InitData(new int[] {5,5,5})),
40
  CUBE_6 ( TwistyCuboid.class        , 35, R.drawable.cube_6, true, new InitData(new int[] {6,6,6})),
41
  CUBE_7 ( TwistyCuboid.class        , 42, R.drawable.cube_7, true, new InitData(new int[] {7,7,7})),
42
  BAN1_3 ( TwistyBandagedFused.class , 16, R.drawable.ban1_3, true, new InitData(new int[] {3,3,3})),
43
  BAN2_3 ( TwistyBandaged2Bar.class  , 20, R.drawable.ban2_3, true, new InitData(new int[] {3,3,3})),
44
  BAN3_3 ( TwistyBandaged3Plate.class, 16, R.drawable.ban3_3, true, new InitData(new int[] {3,3,3})),
45
  BAN4_3 ( TwistyBandagedBiCube.class, 22, R.drawable.ban4_3, true, new InitData(new int[] {3,3,3})),
46
  CU_323 ( TwistyCuboid.class        , 15, R.drawable.cu_323, true, new InitData(new int[] {3,2,3})),
47
  CU_232 ( TwistyCuboid.class        , 16, R.drawable.cu_232, true, new InitData(new int[] {2,3,2})),
48
  CU_343 ( TwistyCuboid.class        , 23, R.drawable.cu_343, true, new InitData(new int[] {3,4,3})),
49
  SQU1_3 ( TwistySquare1.class       , 24, R.drawable.squ1_3, true, new InitData(new int[] {3,2,3})),
50
  SQU2_3 ( TwistySquare2.class       , 24, R.drawable.squ2_3, true, new InitData(new int[] {3,2,3})),
51
  ULTI_2 ( TwistyUltimate.class      , 18, R.drawable.ulti_2, true, new InitData(new int[] {2,2,2,2})),
52
  KILO_3 ( TwistyKilominx.class      , 18, R.drawable.kilo_3, true, new InitData(new int[] {3,3,3,3,3,3})),
53
  MEGA_3 ( TwistyMegaminx.class      , 21, R.drawable.mega_3, true, new InitData(new int[] {3,3,3,3,3,3})),
54
  KILO_5 ( TwistyKilominx.class      , 33, R.drawable.kilo_5, true, new InitData(new int[] {5,5,5,5,5,5})),
55
  MEGA_5 ( TwistyMegaminx.class      , 37, R.drawable.mega_5, true, new InitData(new int[] {5,5,5,5,5,5})),
56
  MORP_2 ( TwistyMorphix.class       , 12, R.drawable.morp_2, true, new InitData(new int[] {2,2,2})),
57
  JING_2 ( TwistyJing.class          , 11, R.drawable.jing_2, true, new InitData(new int[] {2,2,2,2})),
58
  PYRA_3 ( TwistyPyraminx.class      , 10, R.drawable.pyra_3, true, new InitData(new int[] {3,3,3,3})),
59
  PYRA_4 ( TwistyPyraminx.class      , 17, R.drawable.pyra_4, true, new InitData(new int[] {4,4,4,4})),
60
  PYRA_5 ( TwistyPyraminx.class      , 23, R.drawable.pyra_5, true, new InitData(new int[] {5,5,5,5})),
61
  TRAJ_3 ( TwistyTrajber.class       , 17, R.drawable.traj_3, true, new InitData(new int[] {3,3,3})),
62
  TRAJ_4 ( TwistyTrajber.class       , 24, R.drawable.traj_4, true, new InitData(new int[] {4,4,4})),
63
  DIAM_2 ( TwistyDiamond.class       , 12, R.drawable.diam_2, true, new InitData(new int[] {2,2,2,2})),
64
  DIAM_3 ( TwistyDiamond.class       , 24, R.drawable.diam_3, true, new InitData(new int[] {3,3,3,3})),
65
  DIAM_4 ( TwistyDiamond.class       , 32, R.drawable.diam_4, true, new InitData(new int[] {4,4,4,4})),
66
  DINO_3 ( TwistyDino6.class         , 10, R.drawable.dino_3, true, new InitData(new int[] {3,3,3,3})),
67
  DIN4_3 ( TwistyDino4.class         ,  7, R.drawable.din4_3, true, new InitData(new int[] {3,3,3,3})),
68
  MIRR_2 ( TwistyMirror.class        , 12, R.drawable.mirr_2, true, new InitData(new int[] {2,2,2})),
69
  MIRR_3 ( TwistyMirror.class        , 17, R.drawable.mirr_3, true, new InitData(new int[] {3,3,3})),
70
  MIRR_4 ( TwistyMirror.class        , 24, R.drawable.mirr_4, true, new InitData(new int[] {4,4,4})),
71
  FISH_3 ( TwistyFisher.class        , 24, R.drawable.fish_3, true, new InitData(new int[] {3,3,3})),
72
  WIND_3 ( TwistyWindmill.class      , 24, R.drawable.wind_3, true, new InitData(new int[] {3,3,3})),
73
  AXIS_3 ( TwistyAxis.class          , 24, R.drawable.axis_3, true, new InitData(new int[] {3,3,3})),
74
  IVY_2  ( TwistyIvy.class           ,  8, R.drawable.ivy_2 , true, new InitData(new int[] {2,2,2,2})),
75
  REX_3  ( TwistyRex.class           , 19, R.drawable.rex_3 , true, new InitData(new int[] {3,3,3,3})),
76
  REDI_3 ( TwistyRedi.class          , 16, R.drawable.redi_3, true, new InitData(new int[] {3,3,3,3})),
77
  HELI_3 ( TwistyHelicopter.class    , 20, R.drawable.heli_3, true, new InitData(new int[] {3,3,3,3,3,3})),
78
  SKEW_2 ( TwistySkewb.class         , 11, R.drawable.skew_2, true, new InitData(new int[] {2,2,2,2})),
79
  SKEW_3 ( TwistySkewb.class         , 21, R.drawable.skew_3, true, new InitData(new int[] {3,3,3,3})),
80
  CONT_2 ( TwistyContainer.class     , 12, R.drawable.cont_2, true, new InitData(new int[] {2,2,2,2})),
81

  
82
  CRA1_3 ( TwistyCrazy.class         , 22, R.drawable.cra1_3, true, new InitData(new int[] {3,3,3})),
83

  
84
  VOID_3 ( TwistyVoid.class          , 17, R.drawable.void_3, false, new InitData(new int[] {3,3,3})),        // wasDownloadableButNowIsBuiltIn()
85
  CRYS_3 ( TwistyCrystal.class       , 27, R.drawable.crys_3, false, new InitData(new int[] {3,3,3,3,3,3})),  // function!
86
  STAR_3 ( TwistyStarminx.class      , 27, R.drawable.star_3, false, new InitData(new int[] {3,3,3,3,3,3})),
87
  PENT_2 ( TwistyPentultimate.class  , 21, R.drawable.pent_2, false, new InitData(new int[] {2,2,2,2,2,2})),
88
  MIXU_3 ( TwistyMixup3x3.class      , 24, R.drawable.mixu_3, false, new InitData(new int[] {3,3,3})),
89
  MIXP_3 ( TwistyMixup3x3Plus.class  , 28, R.drawable.mixp_3, false, new InitData(new int[] {3,3,3})),
90 90
  ;
91 91

  
92 92
  public static int NUM_OBJECTS;
93 93
  private static final ObjectType[] objects;
94 94

  
95
  private final int[] mNumLayers;
95
  private final InitData mInitData;
96 96
  private final int mNumScrambles;
97 97
  private final int mIcon;
98 98
  private final boolean mExportToApp;
......
110 110

  
111 111
///////////////////////////////////////////////////////////////////////////////////////////////////
112 112

  
113
  ObjectType(Class<? extends TwistyObject> clazz, int[] numLayers, int scrambles, int icon, boolean export)
113
  ObjectType(Class<? extends TwistyObject> clazz, int scrambles, int icon, boolean export, InitData data)
114 114
    {
115 115
    mClass       = clazz;
116
    mNumLayers   = numLayers;
116
    mInitData    = data;
117 117
    mNumScrambles= scrambles;
118 118
    mIcon        = icon;
119 119
    mExportToApp = export;
......
167 167

  
168 168
  public static TwistyObject create(int ordinal, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream meshStream)
169 169
    {
170
    int[] numL= objects[ordinal].mNumLayers;
171 170
    Class<? extends TwistyObject> clazz = objects[ordinal].mClass;
172 171

  
173 172
    try
......
176 175

  
177 176
      if( cons.length==1 )
178 177
        {
179
        Object[] parameters = new Object[] { numL,meshState,iconMode,quat,move,scale,meshStream };
178
        InitData data = objects[ordinal].mInitData;
179
        Object[] parameters = new Object[] { data,meshState,iconMode,quat,move,scale,meshStream };
180 180
        return (TwistyObject)cons[0].newInstance(parameters);
181 181
        }
182 182
      else
src/main/java/org/distorted/objectlib/main/ShapeDodecahedron.java
56 56

  
57 57
///////////////////////////////////////////////////////////////////////////////////////////////////
58 58

  
59
  public ShapeDodecahedron(int[] numLayers, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
59
  public ShapeDodecahedron(InitData data, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
60 60
    {
61
    super(numLayers, meshState, iconMode, realSize, quat, move, scale, stream);
61
    super(data, meshState, iconMode, realSize, quat, move, scale, stream);
62 62
    }
63 63

  
64 64
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/main/ShapeHexahedron.java
43 43

  
44 44
///////////////////////////////////////////////////////////////////////////////////////////////////
45 45

  
46
  public ShapeHexahedron(int[] numLayers, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
46
  public ShapeHexahedron(InitData data, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
47 47
    {
48
    super(numLayers, meshState, iconMode, realSize, quat, move, scale, stream);
48
    super(data, meshState, iconMode, realSize, quat, move, scale, stream);
49 49
    }
50 50

  
51 51
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/main/ShapeOctahedron.java
44 44

  
45 45
///////////////////////////////////////////////////////////////////////////////////////////////////
46 46

  
47
  public ShapeOctahedron(int[] numLayers, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
47
  public ShapeOctahedron(InitData data, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
48 48
    {
49
    super(numLayers, meshState, iconMode, realSize, quat, move, scale, stream);
49
    super(data, meshState, iconMode, realSize, quat, move, scale, stream);
50 50
    }
51 51

  
52 52
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/main/ShapeTetrahedron.java
42 42

  
43 43
///////////////////////////////////////////////////////////////////////////////////////////////////
44 44

  
45
  public ShapeTetrahedron(int[] numLayers, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
45
  public ShapeTetrahedron(InitData data, int meshState, int iconMode, float realSize, Static4D quat, Static3D move, float scale, InputStream stream)
46 46
    {
47
    super(numLayers, meshState, iconMode, realSize, quat, move, scale, stream);
47
    super(data, meshState, iconMode, realSize, quat, move, scale, stream);
48 48
    }
49 49

  
50 50
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/main/TwistyObject.java
150 150
  private int[][] mVariantFaceIsOuter;
151 151
  private int[][] mBasicAngles;
152 152
  private int mIconMode;
153
  private final InitData mInitData;
153 154

  
154 155
  //////////////////// SOLVED1 ////////////////////////
155 156

  
......
167 168

  
168 169
    mNumLayers = reader.getNumLayers();
169 170
    mSize      = reader.getSize();
171
    mInitData  = null;
170 172
    initialize(meshState,iconMode,quat,move,scale,meshStream,true);
171 173
    }
172 174

  
173 175
///////////////////////////////////////////////////////////////////////////////////////////////////
174 176

  
175
  TwistyObject(int[] numLayers, int meshState, int iconMode, float size, Static4D quat, Static3D move, float scale, InputStream meshStream)
177
  TwistyObject(InitData data, int meshState, int iconMode, float size, Static4D quat, Static3D move, float scale, InputStream meshStream)
176 178
    {
177
    mNumLayers = numLayers;
179
    mNumLayers = data.getNumLayers();
178 180
    mSize      = size;
181
    mInitData  = data;
179 182
    initialize(meshState,iconMode,quat,move,scale,meshStream,false);
180 183
    }
181 184

  
......
484 487
    return mQuatMult[index1][index2];
485 488
    }
486 489

  
490
///////////////////////////////////////////////////////////////////////////////////////////////////
491

  
492
  public InitData getInitData()
493
    {
494
    return mInitData;
495
    }
496

  
487 497
///////////////////////////////////////////////////////////////////////////////////////////////////
488 498

  
489 499
  public boolean isInIconMode()
src/main/java/org/distorted/objectlib/objects/TwistyAxis.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.scrambling.ScrambleState;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.main.ShapeHexahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyAxis(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyAxis(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandaged2Bar.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30

  
30 31
///////////////////////////////////////////////////////////////////////////////////////////////////
31 32

  
32 33
public class TwistyBandaged2Bar extends TwistyBandagedAbstract
33 34
{
34
  public TwistyBandaged2Bar(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35
  public TwistyBandaged2Bar(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35 36
    {
36
    super(numL, meshState, iconMode, quat, move, scale, stream);
37
    super(data, meshState, iconMode, quat, move, scale, stream);
37 38
    }
38 39

  
39 40
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandaged3Plate.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30

  
30 31
///////////////////////////////////////////////////////////////////////////////////////////////////
31 32

  
32 33
public class TwistyBandaged3Plate extends TwistyBandagedAbstract
33 34
{
34
  public TwistyBandaged3Plate(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35
  public TwistyBandaged3Plate(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35 36
    {
36
    super(numL, meshState, iconMode, quat, move, scale, stream);
37
    super(data, meshState, iconMode, quat, move, scale, stream);
37 38
    }
38 39

  
39 40
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandagedAbstract.java
31 31
import org.distorted.objectlib.helpers.FactoryBandagedCubit;
32 32
import org.distorted.objectlib.helpers.ObjectFaceShape;
33 33
import org.distorted.objectlib.helpers.ObjectSignature;
34
import org.distorted.objectlib.main.InitData;
34 35
import org.distorted.objectlib.scrambling.ScrambleStateBandaged3x3;
35 36
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
36 37
import org.distorted.objectlib.helpers.ObjectShape;
......
77 78

  
78 79
///////////////////////////////////////////////////////////////////////////////////////////////////
79 80

  
80
  TwistyBandagedAbstract(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
81
  TwistyBandagedAbstract(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
81 82
    {
82
    super(numL, meshState, iconMode, (numL[0]+numL[1]+numL[2])/3.0f, quat, move, scale, stream);
83
    super(data, meshState, iconMode, (data.getNumLayers()[0]+data.getNumLayers()[1]+data.getNumLayers()[2])/3.0f, quat, move, scale, stream);
83 84
    }
84 85

  
85 86
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandagedBiCube.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30

  
30 31
///////////////////////////////////////////////////////////////////////////////////////////////////
31 32

  
32 33
public class TwistyBandagedBiCube extends TwistyBandagedAbstract
33 34
{
34
  public TwistyBandagedBiCube(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35
  public TwistyBandagedBiCube(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35 36
    {
36
    super(numL, meshState, iconMode, quat, move, scale, stream);
37
    super(data, meshState, iconMode, quat, move, scale, stream);
37 38
    }
38 39

  
39 40
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandagedFused.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30

  
30 31
///////////////////////////////////////////////////////////////////////////////////////////////////
31 32

  
32 33
public class TwistyBandagedFused extends TwistyBandagedAbstract
33 34
{
34
  public TwistyBandagedFused(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35
  public TwistyBandagedFused(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
35 36
    {
36
    super(numL, meshState, iconMode, quat, move, scale, stream);
37
    super(data, meshState, iconMode, quat, move, scale, stream);
37 38
    }
38 39

  
39 40
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyBandagedGeneric.java
22 22
import org.distorted.library.type.Static3D;
23 23
import org.distorted.library.type.Static4D;
24 24
import org.distorted.objectlib.helpers.ObjectSignature;
25
import org.distorted.objectlib.main.InitData;
25 26
import org.distorted.objectlib.scrambling.ScrambleState;
26 27

  
27 28
import java.io.InputStream;
......
31 32
public class TwistyBandagedGeneric extends TwistyBandagedAbstract
32 33
{
33 34
  public static final String OBJECT_NAME = "LOCAL_BANDAGED";
34
  private static float[][] POS;
35
  private static ObjectSignature mSignature;
35
  private float[][] mPosition;
36
  private ObjectSignature mSignature;
36 37

  
37 38
///////////////////////////////////////////////////////////////////////////////////////////////////
38 39

  
39
  public TwistyBandagedGeneric(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
40
  public TwistyBandagedGeneric(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
40 41
    {
41
    super(numL, meshState, iconMode, quat, move, scale, stream);
42
    super(data, meshState, iconMode, quat, move, scale, stream);
42 43
    }
43 44

  
44 45
///////////////////////////////////////////////////////////////////////////////////////////////////
......
59 60
    return 2;
60 61
    }
61 62

  
62
///////////////////////////////////////////////////////////////////////////////////////////////////
63

  
64
  public static void setPositions(float[][] positions)
65
    {
66
    POS = positions;
67
    mSignature = null;
68
    }
69

  
70 63
///////////////////////////////////////////////////////////////////////////////////////////////////
71 64

  
72 65
  float[][] getPositions()
73 66
    {
74
    if( POS==null )
75
      {
76
      POS = new float[][]
77
        {
78
          {-1.0f, +1.0f, +1.0f},
79
          {-1.0f, +1.0f, -1.0f},
80
          {-1.0f, -1.0f, +1.0f},
81
          {-1.0f, -1.0f, -1.0f},
82
          { 1.0f, +1.0f, -1.0f},
83
          { 1.0f,  1.0f,  1.0f},
84
          { 1.0f, -1.0f, +1.0f},
85
          { 1.0f, -1.0f, -1.0f},
86

  
87
          {-1.0f, +1.0f, +0.0f,
88
           -1.0f,  0.0f, +1.0f,
89
           -1.0f,  0.0f, +0.0f,
90
           -1.0f,  0.0f, -1.0f,
91
           -1.0f, -1.0f, +0.0f,
92
            0.0f, -1.0f, +1.0f,
93
            0.0f, -1.0f, +0.0f,
94
            0.0f, +1.0f, +1.0f,
95
            0.0f, +1.0f, +0.0f,
96
            0.0f, +1.0f, -1.0f,
97
            0.0f,  0.0f, +1.0f,
98
            0.0f,  0.0f, -1.0f,
99
            1.0f, +1.0f, +0.0f,
100
            1.0f, +0.0f, +1.0f,
101
            1.0f,  0.0f, +0.0f,
102
            1.0f,  0.0f, -1.0f,
103
            1.0f, -1.0f, +0.0f,
104
            0.0f, -1.0f, -1.0f},
105
        };
106
      }
107
    return POS;
67
    if( mPosition==null ) mPosition = getInitData().getPos();
68
    return mPosition;
108 69
    }
109 70

  
110 71
///////////////////////////////////////////////////////////////////////////////////////////////////
......
126 87
    if( mSignature==null )
127 88
      {
128 89
      int[] numLayers = getNumLayers();
129
      mSignature = new ObjectSignature(numLayers[0],numLayers[1],numLayers[2],POS);
90
      mSignature = new ObjectSignature(numLayers[0],numLayers[1],numLayers[2],mPosition);
130 91
      }
131 92
    return mSignature;
132 93
    }
src/main/java/org/distorted/objectlib/objects/TwistyContainer.java
26 26
import org.distorted.objectlib.helpers.ObjectFaceShape;
27 27
import org.distorted.objectlib.helpers.ObjectShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.scrambling.ScrambleState;
30 31
import org.distorted.objectlib.main.ObjectType;
31 32
import org.distorted.objectlib.main.ShapeHexahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyContainer(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyContainer(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyCrazy.java
26 26
import org.distorted.objectlib.helpers.ObjectFaceShape;
27 27
import org.distorted.objectlib.helpers.ObjectShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ObjectType;
30 31
import org.distorted.objectlib.main.ShapeHexahedron;
31 32
import org.distorted.objectlib.scrambling.ScrambleState;
......
57 58

  
58 59
///////////////////////////////////////////////////////////////////////////////////////////////////
59 60

  
60
  public TwistyCrazy(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61
  public TwistyCrazy(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61 62
    {
62
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
63
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyCrystal.java
26 26
import org.distorted.objectlib.helpers.ObjectFaceShape;
27 27
import org.distorted.objectlib.helpers.ObjectShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ObjectType;
30 31

  
31 32
///////////////////////////////////////////////////////////////////////////////////////////////////
......
40 41

  
41 42
///////////////////////////////////////////////////////////////////////////////////////////////////
42 43

  
43
  public TwistyCrystal(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
44
  public TwistyCrystal(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
44 45
    {
45
    super(numL, meshState, iconMode, quat, move, scale, stream);
46
    super(data, meshState, iconMode, quat, move, scale, stream);
46 47
    }
47 48

  
48 49
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyCuboid.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlCuboids;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
52 53

  
53 54
///////////////////////////////////////////////////////////////////////////////////////////////////
54 55

  
55
  public TwistyCuboid(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
56
  public TwistyCuboid(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
56 57
    {
57
    super(numL, meshState, iconMode, (numL[0]+numL[1]+numL[2])/3.0f, quat, move, scale, stream);
58
    super(data, meshState, iconMode, (data.getNumLayers()[0]+data.getNumLayers()[1]+data.getNumLayers()[2])/3.0f, quat, move, scale, stream);
58 59
    }
59 60

  
60 61
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlOctahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
56 57

  
57 58
///////////////////////////////////////////////////////////////////////////////////////////////////
58 59

  
59
  public TwistyDiamond(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
60
  public TwistyDiamond(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
60 61
    {
61
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
62
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
62 63
    }
63 64

  
64 65
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyDino.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectShape;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.scrambling.ScrambleState;
33 34
import org.distorted.objectlib.main.ShapeHexahedron;
34 35
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  TwistyDino(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  TwistyDino(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyDino4.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.scrambling.ScrambleState;
30 31

  
......
36 37

  
37 38
///////////////////////////////////////////////////////////////////////////////////////////////////
38 39

  
39
  public TwistyDino4(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
40
  public TwistyDino4(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
40 41
    {
41
    super(numL, meshState, iconMode, quat, move, scale, stream);
42
    super(data, meshState, iconMode, quat, move, scale, stream);
42 43
    }
43 44

  
44 45
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyDino6.java
25 25
import org.distorted.library.type.Static4D;
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.scrambling.ScrambleState;
30 31

  
......
32 33

  
33 34
public class TwistyDino6 extends TwistyDino
34 35
{
35
  public TwistyDino6(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
36
  public TwistyDino6(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
36 37
    {
37
    super(numL, meshState, iconMode, quat, move, scale, stream);
38
    super(data, meshState, iconMode, quat, move, scale, stream);
38 39
    }
39 40

  
40 41
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyFisher.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.scrambling.ScrambleState;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.main.ShapeHexahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyFisher(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyFisher(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyHelicopter.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
57 58

  
58 59
///////////////////////////////////////////////////////////////////////////////////////////////////
59 60

  
60
  public TwistyHelicopter(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61
  public TwistyHelicopter(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61 62
    {
62
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
63
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyIvy.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
57 58

  
58 59
///////////////////////////////////////////////////////////////////////////////////////////////////
59 60

  
60
  public TwistyIvy(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61
  public TwistyIvy(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61 62
    {
62
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
63
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyJing.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlTetrahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
59 60

  
60 61
///////////////////////////////////////////////////////////////////////////////////////////////////
61 62

  
62
  public TwistyJing(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
63
  public TwistyJing(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
63 64
    {
64
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
65
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
65 66
    }
66 67

  
67 68
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyKilominx.java
30 30

  
31 31
import org.distorted.objectlib.helpers.ObjectFaceShape;
32 32
import org.distorted.objectlib.helpers.ObjectSignature;
33
import org.distorted.objectlib.main.InitData;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
35 36

  
......
37 38

  
38 39
public class TwistyKilominx extends TwistyMinx
39 40
{
40
  public TwistyKilominx(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41
  public TwistyKilominx(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41 42
    {
42
    super(numL, meshState, iconMode, quat, move, scale, stream);
43
    super(data, meshState, iconMode, quat, move, scale, stream);
43 44
    }
44 45

  
45 46
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMegaminx.java
30 30

  
31 31
import org.distorted.objectlib.helpers.ObjectFaceShape;
32 32
import org.distorted.objectlib.helpers.ObjectSignature;
33
import org.distorted.objectlib.main.InitData;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
35 36

  
......
42 43

  
43 44
///////////////////////////////////////////////////////////////////////////////////////////////////
44 45

  
45
  public TwistyMegaminx(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
46
  public TwistyMegaminx(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
46 47
    {
47
    super(numL, meshState, iconMode, quat, move, scale, stream);
48
    super(data, meshState, iconMode, quat, move, scale, stream);
48 49
    }
49 50

  
50 51
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMinx.java
29 29

  
30 30
import org.distorted.library.type.Static3D;
31 31
import org.distorted.library.type.Static4D;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlDodecahedron;
33 34
import org.distorted.objectlib.scrambling.ScrambleState;
34 35
import org.distorted.objectlib.main.ShapeDodecahedron;
......
67 68

  
68 69
///////////////////////////////////////////////////////////////////////////////////////////////////
69 70

  
70
  TwistyMinx(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
71
  TwistyMinx(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
71 72
    {
72
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
73
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
73 74
    }
74 75

  
75 76
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMirror.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.main.ObjectType;
33 34
import org.distorted.objectlib.helpers.ObjectShape;
34 35
import org.distorted.objectlib.scrambling.ScrambleState;
......
58 59

  
59 60
///////////////////////////////////////////////////////////////////////////////////////////////////
60 61

  
61
  public TwistyMirror(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
62
  public TwistyMirror(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
62 63
    {
63
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
64
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
64 65
    }
65 66

  
66 67
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMixup.java
21 21

  
22 22
import org.distorted.library.type.Static3D;
23 23
import org.distorted.library.type.Static4D;
24
import org.distorted.objectlib.main.InitData;
24 25
import org.distorted.objectlib.main.ShapeHexahedron;
25 26
import org.distorted.objectlib.scrambling.ScrambleState;
26 27
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
......
49 50

  
50 51
///////////////////////////////////////////////////////////////////////////////////////////////////
51 52

  
52
  public TwistyMixup(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
53
  public TwistyMixup(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
53 54
    {
54
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
55
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
55 56
    }
56 57

  
57 58
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.main.ObjectType;
28 29

  
29 30
import java.io.InputStream;
......
37 38

  
38 39
///////////////////////////////////////////////////////////////////////////////////////////////////
39 40

  
40
  public TwistyMixup3x3(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41
  public TwistyMixup3x3(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41 42
    {
42
    super(numL, meshState, iconMode, quat, move, scale, stream);
43
    super(data, meshState, iconMode, quat, move, scale, stream);
43 44
    }
44 45

  
45 46
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3Plus.java
26 26
import org.distorted.objectlib.helpers.ObjectFaceShape;
27 27
import org.distorted.objectlib.helpers.ObjectShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ObjectType;
30 31

  
31 32
///////////////////////////////////////////////////////////////////////////////////////////////////
......
37 38

  
38 39
///////////////////////////////////////////////////////////////////////////////////////////////////
39 40

  
40
  public TwistyMixup3x3Plus(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41
  public TwistyMixup3x3Plus(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41 42
    {
42
    super(numL, meshState, iconMode, quat, move, scale, stream);
43
    super(data, meshState, iconMode, quat, move, scale, stream);
43 44
    }
44 45

  
45 46
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyMorphix.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.scrambling.ScrambleState;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.main.ShapeTetrahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyMorphix(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyMorphix(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyPentultimate.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.main.ObjectType;
28 29
import org.distorted.objectlib.scrambling.ScrambleState;
29 30

  
......
44 45

  
45 46
///////////////////////////////////////////////////////////////////////////////////////////////////
46 47

  
47
  public TwistyPentultimate(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
48
  public TwistyPentultimate(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
48 49
    {
49
    super(numL, meshState, iconMode, quat, move, scale, stream);
50
    super(data, meshState, iconMode, quat, move, scale, stream);
50 51
    }
51 52

  
52 53
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyPyraminx.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlTetrahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyPyraminx(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyPyraminx(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyRedi.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
54 55

  
55 56
///////////////////////////////////////////////////////////////////////////////////////////////////
56 57

  
57
  public TwistyRedi(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
58
  public TwistyRedi(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
58 59
    {
59
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
60
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
60 61
    }
61 62

  
62 63
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyRex.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
57 58

  
58 59
///////////////////////////////////////////////////////////////////////////////////////////////////
59 60

  
60
  public TwistyRex(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61
  public TwistyRex(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61 62
    {
62
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
63
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistySkewb.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
54 55

  
55 56
///////////////////////////////////////////////////////////////////////////////////////////////////
56 57

  
57
  public TwistySkewb(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
58
  public TwistySkewb(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
58 59
    {
59
    super(numL, meshState, iconMode, 2*numL[0]-2, quat, move, scale, stream);
60
    super(data, meshState, iconMode, 2*data.getNumLayers()[0]-2, quat, move, scale, stream);
60 61
    }
61 62

  
62 63
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistySquare.java
26 26

  
27 27
import org.distorted.library.type.Static3D;
28 28
import org.distorted.library.type.Static4D;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ShapeHexahedron;
30 31
import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
31 32

  
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  TwistySquare(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  TwistySquare(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistySquare1.java
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectFaceShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ObjectType;
30 31
import org.distorted.objectlib.helpers.ObjectShape;
31 32
import org.distorted.objectlib.scrambling.ScrambleState;
......
39 40

  
40 41
///////////////////////////////////////////////////////////////////////////////////////////////////
41 42

  
42
  public TwistySquare1(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
43
  public TwistySquare1(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
43 44
    {
44
    super(numL, meshState, iconMode, quat, move, scale, stream);
45
    super(data, meshState, iconMode, quat, move, scale, stream);
45 46
    }
46 47

  
47 48
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistySquare2.java
26 26

  
27 27
import org.distorted.objectlib.helpers.ObjectFaceShape;
28 28
import org.distorted.objectlib.helpers.ObjectSignature;
29
import org.distorted.objectlib.main.InitData;
29 30
import org.distorted.objectlib.main.ObjectType;
30 31
import org.distorted.objectlib.helpers.ObjectShape;
31 32
import org.distorted.objectlib.scrambling.ScrambleState;
......
40 41

  
41 42
///////////////////////////////////////////////////////////////////////////////////////////////////
42 43

  
43
  public TwistySquare2(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
44
  public TwistySquare2(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
44 45
    {
45
    super(numL, meshState, iconMode, quat, move, scale, stream);
46
    super(data, meshState, iconMode, quat, move, scale, stream);
46 47
    }
47 48

  
48 49
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyStarminx.java
25 25
import org.distorted.objectlib.helpers.ObjectFaceShape;
26 26
import org.distorted.objectlib.helpers.ObjectShape;
27 27
import org.distorted.objectlib.helpers.ObjectSignature;
28
import org.distorted.objectlib.main.InitData;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30

  
30 31
import java.io.InputStream;
......
44 45

  
45 46
///////////////////////////////////////////////////////////////////////////////////////////////////
46 47

  
47
  public TwistyStarminx(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
48
  public TwistyStarminx(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
48 49
    {
49
    super(numL, meshState, iconMode, quat, move, scale, stream);
50
    super(data, meshState, iconMode, quat, move, scale, stream);
50 51
    }
51 52

  
52 53
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyTrajber.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.scrambling.ScrambleState;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.main.ShapeOctahedron;
......
58 59

  
59 60
///////////////////////////////////////////////////////////////////////////////////////////////////
60 61

  
61
  public TwistyTrajber(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
62
  public TwistyTrajber(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
62 63
    {
63
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
64
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
64 65
    }
65 66

  
66 67
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyUltimate.java
29 29

  
30 30
import org.distorted.objectlib.helpers.ObjectFaceShape;
31 31
import org.distorted.objectlib.helpers.ObjectSignature;
32
import org.distorted.objectlib.main.InitData;
32 33
import org.distorted.objectlib.touchcontrol.TouchControlDodecahedron;
33 34
import org.distorted.objectlib.main.ObjectType;
34 35
import org.distorted.objectlib.helpers.ObjectShape;
......
62 63

  
63 64
///////////////////////////////////////////////////////////////////////////////////////////////////
64 65

  
65
  public TwistyUltimate(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
66
  public TwistyUltimate(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
66 67
    {
67
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
68
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
68 69
    }
69 70

  
70 71
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyVoid.java
24 24
import org.distorted.objectlib.helpers.ObjectFaceShape;
25 25
import org.distorted.objectlib.helpers.ObjectShape;
26 26
import org.distorted.objectlib.helpers.ObjectSignature;
27
import org.distorted.objectlib.main.InitData;
27 28
import org.distorted.objectlib.scrambling.ScrambleState;
28 29
import org.distorted.objectlib.main.ObjectType;
29 30
import org.distorted.objectlib.main.ShapeHexahedron;
......
53 54

  
54 55
///////////////////////////////////////////////////////////////////////////////////////////////////
55 56

  
56
  public TwistyVoid(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57
  public TwistyVoid(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
57 58
    {
58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
59 60
    }
60 61

  
61 62
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/objects/TwistyWindmill.java
27 27
import org.distorted.objectlib.helpers.ObjectFaceShape;
28 28
import org.distorted.objectlib.helpers.ObjectShape;
29 29
import org.distorted.objectlib.helpers.ObjectSignature;
30
import org.distorted.objectlib.main.InitData;
30 31
import org.distorted.objectlib.scrambling.ScrambleState;
31 32
import org.distorted.objectlib.main.ObjectType;
32 33
import org.distorted.objectlib.main.ShapeHexahedron;
......
57 58

  
58 59
///////////////////////////////////////////////////////////////////////////////////////////////////
59 60

  
60
  public TwistyWindmill(int[] numL, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61
  public TwistyWindmill(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
61 62
    {
62
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
63
    super(data, meshState, iconMode, data.getNumLayers()[0], quat, move, scale, stream);
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////

Also available in: Unified diff