package jogohanoi;
import java.awt.Point;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class JogoHanoi extends JFrame {
boolean mousePressionado = false;
boolean mousePressionado2 = false;
boolean mousePressionado3 = false;
ImageIcon iconBackground = new ImageIcon(getClass().getResource("background.jpg"));
ImageIcon iconPeça1 = new ImageIcon(getClass().getResource("peça1.jpg"));
ImageIcon iconPeça2 = new ImageIcon(getClass().getResource("peça2.jpg"));
ImageIcon iconPeça3 = new ImageIcon(getClass().getResource("peça3.jpg"));
JLabel lBackground = new JLabel(iconBackground);
JLabel lPeça1 = new JLabel(iconPeça1);
JLabel lPeça2 = new JLabel(iconPeça2);
JLabel lPeça3 = new JLabel(iconPeça3);
int posPeça1X = 85;
int posPeça1Y = 162;
int posPeça2X = 61;
int posPeça2Y = 195;
int posPeça3X = 44;
int posPeça3Y = 228;
public JogoHanoi() {
editarJanela();
editarComponentes();
new Mover().start();
}
public void editarComponentes(){
lBackground.setBounds(0, 0, 600, 300);
lPeça1.setBounds(posPeça1X , posPeça1Y, 65, 33);
lPeça2.setBounds(posPeça2X , posPeça2Y, 115, 33);
lPeça3.setBounds(posPeça3X , posPeça3Y, 147, 33);
}
public void editarJanela() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(700, 400);
setLocationRelativeTo(null);
setVisible(true);
setLayout(null);
add(lPeça1);
lPeça1.addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent arg0) {
}
public void mousePressed(MouseEvent arg0) {
mousePressionado = true;
}
public void mouseReleased(MouseEvent arg0) {
mousePressionado = false;
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
});
add(lPeça2);
lPeça2.addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent arg0) {
}
public void mousePressed(MouseEvent arg0) {
mousePressionado2 = true;
}
public void mouseReleased(MouseEvent arg0) {
mousePressionado2 = false;
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
});
add(lPeça3);
lPeça3.addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent arg0) {
}
public void mousePressed(MouseEvent arg0) {
mousePressionado3 = true;
}
public void mouseReleased(MouseEvent arg0) {
mousePressionado3 = false;
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
});
add(lBackground);
}
public class Mover extends Thread{
public void run(){
while(true){
try{sleep(10);}catch(Exception erro){}
if(mousePressionado){
Point ponto = getMousePosition();
lPeça1.setBounds(ponto.x-32, ponto.y-33, 65, 33);
}
if(mousePressionado2){
Point ponto = getMousePosition();
lPeça2.setBounds(ponto.x-57, ponto.y-33, 115, 33);
}
if(mousePressionado3){
Point ponto = getMousePosition();
lPeça3.setBounds(ponto.x-73, ponto.y-33, 147, 33);
}
}
}
}
public static void main(String[] args) {
new JogoHanoi();
}
}
//Ele ta muito gambiarra e não importa oq eu faça sempre da um nó horrível, sei que to exigindo muito mas é minha ultima salvação//