Project

General

Profile

Download (6.15 KB) Statistics
| Branch: | Revision:

distorted-objectlib / src / main / java / org / distorted / objectlib / objects / TwistyDino4.java @ 3a0a23bf

1 29b82486 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
2
// Copyright 2020 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.objects;
21
22 82eb152a Leszek Koltunski
import java.io.InputStream;
23 29b82486 Leszek Koltunski
24 ecf3d6e3 Leszek Koltunski
import org.distorted.library.type.Static3D;
25 29b82486 Leszek Koltunski
import org.distorted.library.type.Static4D;
26
27 1d581993 Leszek Koltunski
import org.distorted.objectlib.helpers.ObjectSignature;
28 a8295031 Leszek Koltunski
import org.distorted.objectlib.main.InitData;
29 8005e762 Leszek Koltunski
import org.distorted.objectlib.main.ObjectType;
30 10b7e306 Leszek Koltunski
import org.distorted.objectlib.scrambling.ScrambleState;
31 29b82486 Leszek Koltunski
32
///////////////////////////////////////////////////////////////////////////////////////////////////
33
34
public class TwistyDino4 extends TwistyDino
35
{
36
  private int[] mFaceMap;
37
38
///////////////////////////////////////////////////////////////////////////////////////////////////
39
40 a8295031 Leszek Koltunski
  public TwistyDino4(InitData data, int meshState, int iconMode, Static4D quat, Static3D move, float scale, InputStream stream)
41 29b82486 Leszek Koltunski
    {
42 a8295031 Leszek Koltunski
    super(data, meshState, iconMode, quat, move, scale, stream);
43 29b82486 Leszek Koltunski
    }
44
45 1b7ece90 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
46
47 ed0988c0 Leszek Koltunski
  @Override
48 19595510 Leszek Koltunski
  public int[][] getSolvedQuats()
49 1b7ece90 Leszek Koltunski
    {
50 3c48fab9 Leszek Koltunski
    return null;
51 1b7ece90 Leszek Koltunski
    }
52
53
///////////////////////////////////////////////////////////////////////////////////////////////////
54
55 ed0988c0 Leszek Koltunski
  @Override
56 1b7ece90 Leszek Koltunski
  public int getSolvedFunctionIndex()
57
    {
58
    return 1;
59
    }
60
61 ed0988c0 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
62
63
  @Override
64
  public int getCubitFaceMap(int cubit, int face)
65
    {
66
    if( mFaceMap==null ) mFaceMap = new int[] { 4, 2, 2, 4, 0, 2, 1, 4, 0, 0, 1, 1 };
67
    return face<2 ? mFaceMap[cubit] : -1;
68
    }
69
70
///////////////////////////////////////////////////////////////////////////////////////////////////
71
72
  @Override
73
  public boolean shouldResetTextureMaps()
74
    {
75
    return true;
76
    }
77
78 29b82486 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
79
80 f9a81f52 Leszek Koltunski
  public ScrambleState[] getScrambleStates()
81 29b82486 Leszek Koltunski
    {
82
    if( mStates==null )
83
      {
84
      mStates = new ScrambleState[]
85
        {
86
        new ScrambleState( new int[][] { {              2,1,2,2,-1,2},{0,1,3,0,-1,3              },{0,1,5,0,-1,5              },{              2,1,8,2,-1,8} } ),
87
        new ScrambleState( new int[][] { {                          },{0,1,3,0,-1,3              },{0,1,5,0,-1,5,             },{              2,1,8,2,-1,8} } ),
88
        new ScrambleState( new int[][] { {                          },{              2,1,4,2,-1,4},{              2,1,6,2,-1,6},{0,1,7,0,-1,7              } } ),
89
        new ScrambleState( new int[][] { {0,1,1,0,-1,1              },{                          },{              2,1,6,2,-1,6},{0,1,7,0,-1,7              } } ),
90
        new ScrambleState( new int[][] { {              2,1,2,2,-1,2},{                          },{0,1,5,0,-1,5,             },{              2,1,8,2,-1,8} } ),
91
        new ScrambleState( new int[][] { {0,1,1,0,-1,1              },{              2,1,4,2,-1,4},{                          },{0,1,7,0,-1,7              } } ),
92
        new ScrambleState( new int[][] { {              2,1,2,2,-1,2},{0,1,3,0,-1,3              },{                          },{              2,1,8,2,-1,8} } ),
93
        new ScrambleState( new int[][] { {              2,1,2,2,-1,2},{0,1,3,0,-1,3              },{0,1,5,0,-1,5,             },{                          } } ),
94
        new ScrambleState( new int[][] { {0,1,1,0,-1,1              },{              2,1,4,2,-1,4},{              2,1,6,2,-1,6},{                          } } ),
95
        };
96
      }
97
98
    return mStates;
99
    }
100
101 61aa85e4 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
102
103 5f54927b Leszek Koltunski
  public String getShortName()
104 61aa85e4 Leszek Koltunski
    {
105 5f54927b Leszek Koltunski
    return ObjectType.DIN4_3.name();
106
    }
107
108
///////////////////////////////////////////////////////////////////////////////////////////////////
109
110 1d581993 Leszek Koltunski
  public ObjectSignature getSignature()
111 5f54927b Leszek Koltunski
    {
112 1d581993 Leszek Koltunski
    return new ObjectSignature(ObjectType.DIN4_3);
113 61aa85e4 Leszek Koltunski
    }
114
115 29b82486 Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
116
117 e26eb4e7 Leszek Koltunski
  public String getObjectName()
118 29b82486 Leszek Koltunski
    {
119 e26eb4e7 Leszek Koltunski
    return "Dino Cube (4 color)";
120 29b82486 Leszek Koltunski
    }
121
122
///////////////////////////////////////////////////////////////////////////////////////////////////
123
124 e26eb4e7 Leszek Koltunski
  public String getInventor()
125 29b82486 Leszek Koltunski
    {
126 e26eb4e7 Leszek Koltunski
    return "Robert Webb";
127 29b82486 Leszek Koltunski
    }
128 59c20632 Leszek Koltunski
129
///////////////////////////////////////////////////////////////////////////////////////////////////
130
131 e26eb4e7 Leszek Koltunski
  public int getYearOfInvention()
132 59c20632 Leszek Koltunski
    {
133
    return 1985;
134
    }
135 052e0362 Leszek Koltunski
136
///////////////////////////////////////////////////////////////////////////////////////////////////
137
138
  public String[][] getTutorials()
139
    {
140
    return null;
141
    }
142 29b82486 Leszek Koltunski
}