Hello,
I wrote this code a while ago. Now I need to get the methods loose and get the class out of the code, How do I do this?
Thank you!
int speelveldPosX, speelveldPosY;
int speelveldSizeX, speelveldSizeY;
int vakSize;
int gatSize;
int speelveldWidth, speelveldHeight;
Vakje[][] vakjes;
int vakjesOver;
boolean lost, win;
int inhoudspeelveldvakjes;
//maakt speelscherm aan
void speelSchermStart() {
speelveld = new int[aantalSpeelvak * aantalSpeelvak];
spelerAanDeBeurt = 0;
spelPauze = 0;
aantalGevondenSchatten = 0;
aantalBommen = aantalSpeelvak;
speelveldSizeX = aantalSpeelvak;
speelveldSizeY = aantalSpeelvak;
vakSize = schermSchaal/3;
gatSize = 2;
lost = false;
win = false;
speelveldWidth = speelveldSizeX * (vakSize + gatSize) - gatSize;
speelveldHeight = speelveldSizeY * (vakSize + gatSize) - gatSize;
for(int i = 0; i < aantalObjecten; i++) {
speelveld[i] = i < aantalSchatten ? 1 : i < aantalSchatten + aantalDepots ? 2 : 3;
println(speelveld[i]);
}
shuffleVakjes();
maakVakjes();
}
//shuffeled alle objecten
void shuffleVakjes() {
int i, j, n;
for (i = speelveld.length - 1; i > 0; i--) {
j = floor(random(i + 1));
n = speelveld[i];
speelveld[i] = speelveld[j];
speelveld[j] = n;
}
}
//voegt de objecten toe aan het speelscherm
void speelSchermMaken() {
for(int y = 0; y < speelveldSizeY; y++) {
for(int x = 0; x < speelveldSizeX; x++) {
vakjes[x][y].show();
inhoudspeelveldvakjes = speelveld[x + y * aantalSpeelvak];
vakjesOver = (speelveldSizeX * speelveldSizeY) - aantalObjecten;
if (inhoudspeelveldvakjes == 1) {
vakjes[x][y].plantSchatten();
} else if (inhoudspeelveldvakjes == 2) {
vakjes[x][y].plantDepots();
} else if (inhoudspeelveldvakjes == 3) {
vakjes[x][y].plantKoning();
} else if (inhoudspeelveldvakjes == 0) {
vakjes[x][y].plantLeeg();
}
}
}
if (lost || win) {
speelSchermRunning = false;
}
}
// geeft het aangeklikte vakje weer
void weergeven(int x, int y) {
if (x < 0 || y < 0 || x >= speelveldSizeX || y >= speelveldSizeY) {
return;
}
if (vakjes[x][y].isClicked()) {
return;
}
vakjes[x][y].reveal();
if(vakjes[x][y].getValue() == 1 || aantalBommen == 0) {
lost = true;
} else if (vakjes[x][y].getValue() == 2) {
aantalGevondenSchatten++;
vakjesOver--;
} else if (vakjes[x][y].getValue() == 3) {
aantalBommen = aantalBommen + 2;
vakjesOver--;
} else {
aantalBommen--;
vakjesOver--;
if (vakjesOver == 0) {
win = true;
}
}
}
//maakt de vakjes op het speelscherm
void maakVakjes() {
vakjes = new Vakje[speelveldSizeX][speelveldSizeY];
speelveldPosX = (int)(width / 2 - speelveldWidth / 2.0);
speelveldPosY = (int)(height / 2 - speelveldHeight / 2.0);
int x = speelveldPosX;
int y = speelveldPosY;
for (int j = 0; j < speelveldSizeY; j++) {
for (int i = 0; i < speelveldSizeX; i++) {
vakjes[i][j] = new Vakje(x, y, vakSize, vakSize);
x += vakSize + gatSize;
}
x = speelveldPosX;
y += vakSize + gatSize;
}
}
class Vakje {
private int x, y, breedte, hoogte;
private int value;
private boolean geklikt;
Vakje (int x, int y, int w, int h) {
this.x = x;
this.y = y;
breedte = w;
hoogte = h;
value = 0;
geklikt = false;
}
//tekent de vakjes
void show() {
noStroke();
if (geklikt) {
if (value == 1) {
fill(kleurKoning); // 1 = de koning
rect(x, y, breedte, hoogte);
fill(200);
textAlign(CENTER);
textSize(hoogte * 0.9);
text("K", x + breedte / 2, y + (hoogte / 2) + (0.73 * textAscent() / 2));
} else if (value == 2){ // 2 = schat
fill(kleurSchat);
rect(x, y, breedte, hoogte);
fill(200);
textAlign(CENTER);
textSize(hoogte * 0.9);
text("S", x + breedte / 2, y + (hoogte / 2) + (0.73 * textAscent() / 2));
} else if (value == 3) { // 3 = bommendepots
fill(kleurDepot);
rect(x, y, breedte, hoogte);
fill(200);
textAlign(CENTER);
textSize(hoogte * 0.9);
text("D", x + breedte / 2, y + (hoogte / 2) + (0.73 * textAscent() / 2));
} else if (value == 0) {
fill(kleurLeegvak); // leeg vakje
rect(x, y, breedte, hoogte);
}
} else {
fill(120);
rect(x, y, breedte, hoogte);
//fill(#0000CD);
//rect(735, y, breedte, hoogte);
}
}
boolean isClicked() {
return geklikt;
}
void reveal() {
geklikt = true;
}
int getValue() {
return value;
}
void plantKoning() {
value = 1;
}
void plantSchatten() {
value = 2;
}
void plantDepots() {
value = 3;
}
void plantLeeg() {
value = 0;
}
}