Mapped out all constants for testing (#7)
Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
@ -4,6 +4,7 @@ import readers.DDRReader;
|
|||||||
import readers.ITGReader;
|
import readers.ITGReader;
|
||||||
import readers.LoveLiveReader;
|
import readers.LoveLiveReader;
|
||||||
import readers.PopnReader;
|
import readers.PopnReader;
|
||||||
|
import readers.Reader;
|
||||||
import readers.SoundVoltexReader;
|
import readers.SoundVoltexReader;
|
||||||
|
|
||||||
public class ArcadeReader {
|
public class ArcadeReader {
|
||||||
@ -58,7 +59,68 @@ public class ArcadeReader {
|
|||||||
* - Not going to support right now.
|
* - Not going to support right now.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static void retrieveData(Path img) {
|
|
||||||
new LoveLiveReader().interpretBoxes(img);
|
final int DDR_AAA=0;
|
||||||
|
final int DDR_AAPLUS=1;
|
||||||
|
final int DDR_AA=2;
|
||||||
|
final int DDR_AAMINUS=3;
|
||||||
|
final int DDR_APLUS=4;
|
||||||
|
final int DDR_A=5;
|
||||||
|
final int DDR_AMINUS=6;
|
||||||
|
final int DDR_BPLUS=7;
|
||||||
|
final int DDR_B=8;
|
||||||
|
final int DDR_BMINUS=9;
|
||||||
|
final int DDR_CPLUS=10;
|
||||||
|
final int DDR_C=11;
|
||||||
|
final int DDR_CMINUS=12;
|
||||||
|
final int DDR_DPLUS=13;
|
||||||
|
final int DDR_D=14;
|
||||||
|
final int ITG_QUAD=0;
|
||||||
|
final int ITG_TRI=1;
|
||||||
|
final int ITG_DOUB=2;
|
||||||
|
final int ITG_STAR=3;
|
||||||
|
final int ITG_SPLUS=4;
|
||||||
|
final int ITG_S=5;
|
||||||
|
final int ITG_SMINUS=6;
|
||||||
|
final int ITG_APLUS=7;
|
||||||
|
final int ITG_A=8;
|
||||||
|
final int ITG_AMINUS=9;
|
||||||
|
final int ITG_BPLUS=10;
|
||||||
|
final int ITG_B=11;
|
||||||
|
final int ITG_BMINUS=12;
|
||||||
|
final int ITG_CPLUS=13;
|
||||||
|
final int ITG_C=14;
|
||||||
|
final int ITG_CMINUS=15;
|
||||||
|
final int ITG_D=16;
|
||||||
|
final int LOVELIVE_SSS=0;
|
||||||
|
final int LOVELIVE_SS=1;
|
||||||
|
final int LOVELIVE_S=2;
|
||||||
|
final int LOVELIVE_A=3;
|
||||||
|
final int LOVELIVE_B=4;
|
||||||
|
final int LOVELIVE_C=5;
|
||||||
|
final int LOVELIVE_D=6;
|
||||||
|
final int POPN_S=0;
|
||||||
|
final int POPN_AAA=1;
|
||||||
|
final int POPN_AA=2;
|
||||||
|
final int POPN_A=3;
|
||||||
|
final int POPN_B=4;
|
||||||
|
final int POPN_C=5;
|
||||||
|
final int POPN_D=6;
|
||||||
|
final int POPN_E=7;
|
||||||
|
final int SDVX_S=0;
|
||||||
|
final int SDVX_AAAPLUS=1;
|
||||||
|
final int SDVX_AAA=2;
|
||||||
|
final int SDVX_AAPLUS=3;
|
||||||
|
final int SDVX_AA=4;
|
||||||
|
final int SDVX_APLUS=5;
|
||||||
|
final int SDVX_A=6;
|
||||||
|
final int SDVX_B=7;
|
||||||
|
final int SDVX_C=8;
|
||||||
|
final int SDVX_D=9;
|
||||||
|
|
||||||
|
public static void runTests() {
|
||||||
|
test("ddr1.png",DDRReader.class,
|
||||||
|
994790/*score*/,
|
||||||
|
0/*rank*/);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
BIN
popn1.png
Before ![]() (image error) Size: 1.3 MiB |
@ -228,8 +228,7 @@ public class DDRReader extends Reader{
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
String interpretResults(String[] finalData) {
|
||||||
void interpretResults(String[] finalData) {
|
|
||||||
for (int i=0;i<finalData.length;i++) {
|
for (int i=0;i<finalData.length;i++) {
|
||||||
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
||||||
switch (i) {
|
switch (i) {
|
||||||
@ -300,6 +299,6 @@ public class DDRReader extends Reader{
|
|||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(this);
|
return toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -186,8 +186,7 @@ public class ITGReader extends Reader{
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
String interpretResults(String[] finalData) {
|
||||||
void interpretResults(String[] finalData) {
|
|
||||||
for (int i=0;i<finalData.length;i++) {
|
for (int i=0;i<finalData.length;i++) {
|
||||||
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
||||||
switch (i) {
|
switch (i) {
|
||||||
@ -251,6 +250,6 @@ public class ITGReader extends Reader{
|
|||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(this);
|
return toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -320,7 +320,7 @@ public class LoveLiveReader extends Reader{
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
void interpretResults(String[] finalData) {
|
String interpretResults(String[] finalData) {
|
||||||
for (int i=0;i<finalData.length;i++) {
|
for (int i=0;i<finalData.length;i++) {
|
||||||
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
||||||
switch (i) {
|
switch (i) {
|
||||||
@ -361,7 +361,7 @@ public class LoveLiveReader extends Reader{
|
|||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(this);
|
return toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
int getDifficulty(String str) {
|
int getDifficulty(String str) {
|
||||||
|
@ -211,8 +211,7 @@ public class PopnReader extends Reader{
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
String interpretResults(String[] finalData) {
|
||||||
void interpretResults(String[] finalData) {
|
|
||||||
for (int i=0;i<finalData.length;i++) {
|
for (int i=0;i<finalData.length;i++) {
|
||||||
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
||||||
switch (i) {
|
switch (i) {
|
||||||
@ -251,11 +250,11 @@ public class PopnReader extends Reader{
|
|||||||
if (score>=50000) {rank=6;/*D*/} else
|
if (score>=50000) {rank=6;/*D*/} else
|
||||||
{rank=7;/*E*/}
|
{rank=7;/*E*/}
|
||||||
if (failed) {
|
if (failed) {
|
||||||
rank=Math.max(rank,5);/*F*/
|
rank=Math.max(rank,3);/*F*/
|
||||||
}
|
}
|
||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(this);
|
return toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -146,10 +146,9 @@ public abstract class Reader{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(Arrays.toString(finalData));
|
System.out.println(Arrays.toString(finalData));
|
||||||
interpretResults(finalData);
|
return interpretResults(finalData);
|
||||||
return null;
|
|
||||||
};
|
};
|
||||||
abstract void interpretResults(String[] finalData);
|
abstract String interpretResults(String[] finalData);
|
||||||
void trimAllData(String[] data) {
|
void trimAllData(String[] data) {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
for (int i=0;i<data.length;i++) {
|
for (int i=0;i<data.length;i++) {
|
||||||
@ -333,4 +332,49 @@ public abstract class Reader{
|
|||||||
+ ", other=" + other + ", pct=" + pct + ", rank=" + rank + ", score=" + score + ", title=" + title
|
+ ", other=" + other + ", pct=" + pct + ", rank=" + rank + ", score=" + score + ", title=" + title
|
||||||
+ "]";
|
+ "]";
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
final int prime = 31;
|
||||||
|
int result = 1;
|
||||||
|
result = prime * result + difficulty;
|
||||||
|
result = prime * result + maxcombo;
|
||||||
|
result = prime * result + Arrays.hashCode(notes);
|
||||||
|
result = prime * result + Arrays.deepHashCode(number_alternatives);
|
||||||
|
result = prime * result + ((other == null) ? 0 : other.hashCode());
|
||||||
|
long temp;
|
||||||
|
temp = Double.doubleToLongBits(pct);
|
||||||
|
result = prime * result + (int) (temp ^ (temp >>> 32));
|
||||||
|
result = prime * result + rank;
|
||||||
|
result = prime * result + score;
|
||||||
|
result = prime * result + ((title == null) ? 0 : title.hashCode());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (this == obj)
|
||||||
|
return true;
|
||||||
|
if (obj == null)
|
||||||
|
return false;
|
||||||
|
if (getClass() != obj.getClass())
|
||||||
|
return false;
|
||||||
|
Reader other = (Reader) obj;
|
||||||
|
if (difficulty != other.difficulty)
|
||||||
|
return false;
|
||||||
|
if (maxcombo != other.maxcombo)
|
||||||
|
return false;
|
||||||
|
if (!Arrays.equals(notes, other.notes))
|
||||||
|
return false;
|
||||||
|
if (this.other == null) {
|
||||||
|
if (other.other != null)
|
||||||
|
return false;
|
||||||
|
} else if (!this.other.equals(other.other))
|
||||||
|
return false;
|
||||||
|
if (Double.doubleToLongBits(pct) != Double.doubleToLongBits(other.pct))
|
||||||
|
return false;
|
||||||
|
if (rank != other.rank)
|
||||||
|
return false;
|
||||||
|
if (score != other.score)
|
||||||
|
return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
@ -406,8 +406,7 @@ public class SoundVoltexReader extends Reader{
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
String interpretResults(String[] finalData) {
|
||||||
void interpretResults(String[] finalData) {
|
|
||||||
for (int i=0;i<finalData.length;i++) {
|
for (int i=0;i<finalData.length;i++) {
|
||||||
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
String[] splitter = finalData[i].split(Pattern.quote("\n"));
|
||||||
switch (i) {
|
switch (i) {
|
||||||
@ -496,6 +495,6 @@ public class SoundVoltexReader extends Reader{
|
|||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(this);
|
return toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -116,7 +116,7 @@ public class sigPlace {
|
|||||||
// TODO Auto-generated catch block
|
// TODO Auto-generated catch block
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}*/
|
}*/
|
||||||
ArcadeReader.retrieveData(Paths.get("lovelive8.png"));
|
ArcadeReader.runTests();
|
||||||
/* Path secretFile = Paths.get(".clientsecret");
|
/* Path secretFile = Paths.get(".clientsecret");
|
||||||
List<String> data;
|
List<String> data;
|
||||||
try {
|
try {
|
||||||
|
Before ![]() (image error) Size: 3.7 MiB After ![]() (image error) Size: 3.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.7 MiB After ![]() (image error) Size: 3.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.5 MiB After ![]() (image error) Size: 3.5 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 3.6 MiB After ![]() (image error) Size: 3.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.5 MiB After ![]() (image error) Size: 1.5 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 MiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.1 MiB After ![]() (image error) Size: 2.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.8 MiB After ![]() (image error) Size: 1.8 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.9 MiB After ![]() (image error) Size: 1.9 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.7 MiB After ![]() (image error) Size: 1.7 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.8 MiB After ![]() (image error) Size: 1.8 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 MiB After ![]() (image error) Size: 1.3 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.1 MiB After ![]() (image error) Size: 1.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 1000 KiB After ![]() (image error) Size: 1000 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.1 MiB After ![]() (image error) Size: 1.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 967 KiB After ![]() (image error) Size: 967 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 983 KiB After ![]() (image error) Size: 983 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.1 MiB After ![]() (image error) Size: 1.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 1016 KiB After ![]() (image error) Size: 1016 KiB ![]() ![]() |
Before ![]() (image error) Size: 996 KiB After ![]() (image error) Size: 996 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.1 MiB After ![]() (image error) Size: 1.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.1 MiB After ![]() (image error) Size: 2.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.0 MiB After ![]() (image error) Size: 2.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.0 MiB After ![]() (image error) Size: 2.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.0 MiB After ![]() (image error) Size: 2.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.1 MiB After ![]() (image error) Size: 2.1 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.0 MiB After ![]() (image error) Size: 2.0 MiB ![]() ![]() |
Before ![]() (image error) Size: 2.1 MiB After ![]() (image error) Size: 2.1 MiB ![]() ![]() |