package eu.midnightdust.yaytris; import eu.midnightdust.yaytris.game.Space; import eu.midnightdust.yaytris.ui.TetrisUI; import javax.swing.*; import java.util.Random; import java.util.Timer; import java.util.TimerTask; public class Tetris { public static final Random random = new Random(); public static Space space; static TetrisUI ui; public static void main(String[] args) { try { System.setProperty("java.awt.headless", "false"); UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception | Error e) { System.out.printf("%s: %s\n", "Error setting system look and feel", e); } Settings.load(); space = new Space(); ui = new TetrisUI(); Timer timer = new Timer("Tetris falling pieces"); timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { if (Tetris.space.getCurrentTetromino() != null) { Tetris.space.getCurrentTetromino().fall(1); Tetris.ui.getGamePanel().repaint(); } } }, 50, 1000); } }