Hinzufügen der Vorlage

This commit is contained in:
joachimschmidt557 2019-01-29 19:13:22 +01:00
parent 8a99189fb8
commit 8d00681b2c
68 changed files with 4731 additions and 0 deletions

View file

@ -0,0 +1,85 @@
package dice3d.main;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import dice3d.models.cuboids.Cuboid;
import dice3d.models.cuboids.Dice;
public class MainWindow extends JPanel {
World w = new World();
public MainWindow() {
addKeyListener(new KeyHandler());
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
draw((Graphics2D) g);
}
public void draw(Graphics2D g) {
for(Cuboid c : w.cuboids) {
c.draw(g);
}
int yOffset = 0;
g.drawString("Press space key to roll again", 10, yOffset =+ 20);
for(int i = 0; i < w.cuboids.size(); i++) {
Cuboid c = w.cuboids.get(i);
if(c instanceof Dice) {
Dice d = (Dice) c;
g.drawString("dice[" + i + "]: moving=" + !d.notMoving() + " number_rolled=" + d.getNumberRolled(), 10, yOffset += 20);
} else {
g.drawString("cuboid[" + i + "]: moving=" + !c.notMoving(), 10, yOffset += 20);
}
}
repaint();
}
private class KeyHandler extends KeyAdapter {
@Override
public void keyPressed(KeyEvent e) {
if (e.getID() != KeyEvent.KEY_PRESSED) {
return;
}
if (e.getKeyCode() == KeyEvent.VK_SPACE) {
for(Cuboid c : w.cuboids) {
c.reset();
}
}
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
MainWindow view = new MainWindow();
JFrame frame = new JFrame();
frame.setTitle("Dice");
frame.getContentPane().add(view);
frame.setSize(1280, 720);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setResizable(false);
frame.setVisible(true);
view.requestFocus();
}
});
}
}