Maunuel Mode Prototype

This commit is contained in:
Noah
2021-09-30 22:33:46 +02:00
parent 4aec1db908
commit d63a2d0dfd
3 changed files with 104 additions and 21 deletions
+2 -3
View File
@@ -12,14 +12,13 @@ public class Clock extends Thread{
public void start(Control control, GUI gui){ public void start(Control control, GUI gui){
Timer t = new Timer(); Timer t = new Timer();
TimerTask tt = new TimerTask() { TimerTask tt = new TimerTask() {
@Override @Override
public void run() { public void run() {
if (running){ if (running){
gui.showGrid(control.getCells()); control.showGrid(control.getCells());
control.nextGen(); control.nextGen();
@@ -27,7 +26,7 @@ public class Clock extends Thread{
} }
}; };
t.scheduleAtFixedRate(tt, 1000, 200); t.scheduleAtFixedRate(tt, 1000, 20000);
} }
+28 -3
View File
@@ -57,14 +57,21 @@ public class Control {
gui = new GUI(this); gui = new GUI(this);
} }
gui.gameWindow(this.xSize, this.ySize); if (startMode == StartMode.Manuel){
gui.manuelGameWindow(this.xSize, this.ySize);
} else {
gui.gameWindow(this.xSize, this.ySize);
}
startGame(); startGame();
} }
private void buildManuelGame() { private void buildManuelGame() {
System.out.println("Test");
} }
private void generateTask1() { private void generateTask1() {
@@ -204,7 +211,25 @@ public class Control {
} }
public void showGrid() { public void showGrid(boolean[][] grid) {
gui.showGrid(grid);
}
public void addCell(int x, int y) {
System.out.print("X" + x + "|" + "Y" + y + " ");
System.out.println((int) (x / (800f / xSize)));
// cells[(int) ((x / (800f / xSize)) + ((800f / xSize)/2))][(int) ((y / (800f / ySize)) + ((800f / ySize)/2))] = true;
showGrid(cells);
}
public void removeCell(int x, int y) {
cells[Math.round(y/(800f/xSize))][Math.round(y/(800f/ySize))] = false;
showGrid(cells);
} }
} }
+73 -14
View File
@@ -64,6 +64,7 @@ public class GUI {
/* End of Game view Elements */ /* End of Game view Elements */
private JFrame jfGameManuel;
public GUI(Control control) { public GUI(Control control) {
@@ -375,20 +376,6 @@ public class GUI {
draw.setVisible(true); draw.setVisible(true);
jfGame.addMouseMotionListener(new MouseMotionListener() {
@Override
public void mouseDragged(MouseEvent e) {
int x=e.getX();
int y=e.getY();
System.out.println(x+","+y);
}
@Override
public void mouseMoved(MouseEvent e) {
System.out.println("Not Pressed");
}
});
jfGame.add(draw); jfGame.add(draw);
jfGame.pack(); jfGame.pack();
@@ -397,6 +384,78 @@ public class GUI {
jfGame.setVisible(true); jfGame.setVisible(true);
}
public void manuelGameWindow(int xSize, int ySize) {
this.xSize = xSize;
this.ySize = ySize;
jfGameManuel = new JFrame(title);
jfGameManuel.getContentPane().setPreferredSize(new Dimension(1000, 1000));
jfGameManuel.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jfGameManuel.setResizable(false);
float ratio = (float)(ySize) / (float)(xSize);
draw = new Draw(this.xSize, this.ySize, ratio);
jfGameManuel.setBounds(0, 0, 800, 800);
jfGameManuel.setVisible(true);
jfGameManuel.addMouseListener(new MouseListener() {
@Override
public void mouseClicked(MouseEvent e) {
control.startGame();
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
});
jfGameManuel.addMouseMotionListener(new MouseMotionListener() {
@Override
public void mouseDragged(MouseEvent e) {
control.removeCell(e.getX(), e.getY());
}
@Override
public void mouseMoved(MouseEvent e) {
control.addCell(e.getX(), e.getY());
}
});
jfGameManuel.add(draw);
jfGameManuel.pack();
jfGameManuel.setLayout(null);
jfGameManuel.setLocationRelativeTo(null);
jfGameManuel.setVisible(true);
} }
private void initGameComponents() { private void initGameComponents() {