[英]“JUMP” in a java 2d game
我有這段代碼,我想啟動一個Java 2d游戲中的跳轉,問題是我的對象沒有移到任何地方,它一直停留在那...我想讓我的對象在按下鍵和程序顯示時跳轉我圖像上下移動..我正在嘗試通過簡單的repaint()方法CODE ::::實現此目的
public void actionPerformed(ActionEvent e) {
if(hero.jump()==1){
int jumpheight=40,j=0;
while(j<jumpheight){
hero.y--; \\changing the y position (up)..
try {
Thread.sleep(100);
} catch (InterruptedException e1) {}
repaint();
j++;
}
j=0;
hero.jump1=0;
while(j<jumpheight){
hero.y++; \\changing the y position (down)..
try {
Thread.sleep(100);
} catch (InterruptedException e1) {}
repaint();
j++;
}
}
else {
hero.move();
repaint();
}
您需要將位置更改移到另一個線程中。 密鑰處理和重繪現在在與您現在的代碼相同的線程中進行處理。 當您調用repaint()時,計划了重畫,但是直到事件線程再次“空閑”時才執行重畫,但是由於您有一個循環(帶有睡眠),所以它永遠不會釋放,而是您的循環完成后才進行重畫(並且您的英雄又回到了原來的位置)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.