- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Xiaomi 17 Ultra - jó az optikája
- Xiaomi 15T Pro - a téma nincs lezárva
- 3D nyomtatással csökkentené a kijelző gyűrődését az Apple iPhone Foldnál
- Hamarabb hajtogathatod az iPhone Foldot, mint vártad
- Így néz ki és ekkor startol a Honor 600 Pro
- Android alkalmazások - szoftver kibeszélő topik
- Telekom mobilszolgáltatások
- Fotók, videók mobillal
- Google Pixel topik
Új hozzászólás Aktív témák
-
#39560925
törölt tag
Előbb rosszul indultam neki az egész gombos mókának. Most újrakezdtem. A GameArea osztály megvalósítja a Runnable interfacet, és a run metódusában 20ms-onként meghívogatja a LeftPanel doJob metódusát. Mikor elindul a program, akkor egyből elindul a GameArea szállja is, ezért a LeftPanel threadRunning attribútumát true-val inicializálom. (Később majd hozzáadok egy start gombot, amire az első gombnyomás után setEnabled(false) metódust meghívom és elindítja a GameArea szállját, de ezt majd csak akkor, ha pause/resume működik.)
Akkor jöjjön a kód:
public class LeftPanel extends JPanel implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
private JButton pause;
private boolean threadRunning;
public LeftPanel () {
threadRunning = true;
pause = new JButton();
pause.setBackground(Color.CYAN);
pause.addActionListener(this);
pause.setText("Pause");
pause.setVisible(true);
this.add(pause);
setFocusable(true);
pause.setFocusable(true);
}
public synchronized void doJob () throws InterruptedException {
while (!threadRunning) {
pause.setText("Resume");
wait();
}
pause.setText("Pause");
notify();
}
public void actionPerformed(ActionEvent ae) {
threadRunning = !threadRunning;
}
}Most olyat produkál, hogyha rányomok a gombra, akkor a Pauseról Resume feliratra vált, és megállnak az ellenséges űrhajók. Újbóli kattintgatásra marad a Resume felirat a gombon, és nem folytatódik a játék. Természetesen én a saját űrhajómmal már az elején se tudok mozogni. Valaki tudja erre a 2 problémára a megoldást?
Kiegészítésként itt a GameArea run() metódusa:
public void run() {
long startTime = System.currentTimeMillis();
long beforeTime = startTime;
try {
while (!Finished) {
repaint();
animator.animationCycle();
rightPanel.refresh(player.getHealth(), player.getBaseHealth(), player.hasArmor());
leftPanel.doJob();
//MEGCSINÁLNI A JÁTÉKMECHANIKÁT
//Thread.sleep(20 - (System.currentTimeMillis() - beforeTime));
Thread.sleep(19);
beforeTime = System.currentTimeMillis();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Villanyszerelés
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Xiaomi 17 Ultra - jó az optikája
- The Division 2 (PC, XO, PS4)
- Xiaomi 15T Pro - a téma nincs lezárva
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- További aktív témák...
- Szép! HP EliteBook 855 G7 Fémházas Strapabíró Laptop 15,6" -65% AMD Ryzen 3 PRO 4450U 16/256 FHD
- Logitech G923 + állvány (PS5/PS4/PC) újszerű
- Bomba ár! HP Elitebook 850 G8 - i5-11GEN I 16GB I 256GB SSD I 15,6" FULLHD I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad L390 - i7-8GEN I 16GB I 256SSD I 13,3" FULL HD I HDMI I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad X260 - i5-6G I 8GB I 256SSD I 12,5" HD I HDMI I CAM I W11 I Gari!
- Apple iPhone 11 64GB,Átlagos,Adatkabel,12 hónap garanciával
- AKCIÓ! Apple MacBook Air 13 M1 8GB RAM 256GB SSD notebook garanciával hibátlan működéssel
- Apple iPhone 12 Pro Max 256 GB Blue 100% Akkumulátor 1 év Garancia Beszámítás Házhozszállítás
- AKCIÓ! AMD Ryzen 7 5700X3D 8 mag 16 szál processzor garanciával hibátlan működéssel
- AKCIÓ! Dell SE2222H 22 60Hz FHD VA 8ms monitor garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

