Skip to content

Instantly share code, notes, and snippets.

@213edu
Created January 10, 2016 08:42
Show Gist options
  • Save 213edu/b8312612a34875982d1b to your computer and use it in GitHub Desktop.
Save 213edu/b8312612a34875982d1b to your computer and use it in GitHub Desktop.
Shop Heros Worker Finder
public class Main {
public static void main(String[] args) {
final int NUMWORKERS = 17;
int a=0,b=0,c=0,d=0;
int maxsum = 0, sum = 0;
String[] names = new String[4];
Worker[] workers;
Worker sorceress;
Worker armorer;
Worker jeweler;
Worker fletcher;
Worker artificer;
Worker luthier;
Worker enchanter;
Worker wizard;
Worker sculptor;
Worker seamstress;
Worker alchemist;
Worker artisan;
Worker blacksmith;
Worker carpenter;
Worker leatherworker;
Worker druid;
Worker tailor;
sorceress = new Worker(2,3,0,"sorceress");
armorer = new Worker(11,1,0,"armorer");
jeweler = new Worker(11,10,0,"jeweler");
fletcher = new Worker(5,7,0,"fletcher");
artificer = new Worker(1,9,0,"artificer");
luthier = new Worker(4,6,0,"luthier");
enchanter = new Worker(2,8,0,"enchanter");
wizard = new Worker(2,3,0,"wizard");
sculptor = new Worker(4,7,10,"sculptor");
seamstress = new Worker(1,6,7,"seamstress");
alchemist = new Worker(2,3,9,"alchemist");
artisan = new Worker(6,7,10,"artisan");
blacksmith = new Worker(11,5,0,"blacksmith");
carpenter = new Worker(4,5,0,"carpenter");
leatherworker = new Worker(1,6,0,"leatherworker");
druid = new Worker(3,4,0,"druid");
tailor = new Worker(6,7,0,"tailor");
workers = new Worker[NUMWORKERS];
workers[0] = sorceress;
workers[1] = armorer;
workers[2] = jeweler;
workers[3] = fletcher;
workers[4] = artificer;
workers[5] = luthier;
workers[6] = enchanter;
workers[7] = wizard;
workers[8] = sculptor;
workers[9] = seamstress;
workers[10] = alchemist;
workers[11] = artisan;
workers[12] = blacksmith;
workers[13] = carpenter;
workers[14] = leatherworker;
workers[15] = druid;
workers[16] = tailor;
int[] skillsum = new int[12];
while(true){
//abcd 0000
//TODO turn into loop please dis is cancer
sum = 0;
for (int k = 0; k < skillsum.length; k++){
skillsum[k] = 0;
}
skillsum[workers[a].skillset[0]] = 1;
skillsum[workers[a].skillset[1]] = 1;
skillsum[workers[a].skillset[2]] = 1;
skillsum[workers[b].skillset[0]] = 1;
skillsum[workers[b].skillset[1]] = 1;
skillsum[workers[b].skillset[2]] = 1;
skillsum[workers[c].skillset[0]] = 1;
skillsum[workers[c].skillset[1]] = 1;
skillsum[workers[c].skillset[2]] = 1;
skillsum[workers[d].skillset[0]] = 1;
skillsum[workers[d].skillset[1]] = 1;
skillsum[workers[d].skillset[2]] = 1;
if (a == NUMWORKERS-1){
a = 0;
b+= 1;
} else {
a++;
}
if (b == NUMWORKERS-1){
b = 0;
c += 1;
}
if (c == NUMWORKERS-1){
c = 0;
d += 1;
}
if (d == NUMWORKERS-1){
break;
}
for (int i = 1 ; i < skillsum.length; i++){
sum += skillsum[i];
}
if (sum >= maxsum){
names[0] = workers[a].name;
names[1] = workers[b].name;
names[2] = workers[c].name;
names[3] = workers[d].name;
maxsum = sum;
}
}
for (int i = 0; i < 4; i++){
System.out.println(names[i]);
}
Skills(workers[a].skillset[0],workers[a].skillset[1],workers[a].skillset[2],workers[a].skillset[3]);
}
public static void Skills(int ID1, int ID2, int ID3, int ID4){
String[] skillname = {"empty","Armorcrafting","Magic","Alchemy","Woodworking","WeaponCrafting","Textile","Art&Crafts","RuneWriting","Tinkering","Jewelry","MetalWorking"};
System.out.println(skillname[ID1] + " " + skillname[ID2] + " " + skillname[ID3]+ " " + skillname[ID4]);
}
}
/**
* Created by 213ed on 1/9/2016.
*/
public class Worker {
int[] skillset = new int[3];
String name;
public Worker(int ID1, int ID2, int ID3, String name){
skillset[0] = ID1;
skillset[1] = ID2;
skillset[2] = ID3;
this.name = name;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment