господа. Я новичок в Java, поэтмому никак не могу решить проблему с которой столкулся, мне нужно чтоб mario передвишался при нажатие на кнопки и изображения также менялись, на данный момент ничего не происходит. И еще обязательно использование acm graphics
Ниже предоставлены все коды
package objects;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import acm.graphics.*;
public class Mario extends GCompound implements ActionListener{
public static double dx;
public static double dy;
public static GImage mario;
private static int x = 40;
private static int y = 350;
private final int min = 350;
private final int gravity = 5;
private final int speed = 5;
private final int max_jump = min - 220;
private int direction;
private int number = 1;
public static boolean standing = true;
public Mario () {
if (standing == true) {
mario = new GImage("Mario_Big_Right_Still.png");
mario.setSize(60, 105);
}
else {
mario = new GImage("Mario_Big_Crouch_Left.png");
mario.setSize(60, 95);
}
mario.setLocation(x + dx, y + dy);
add(mario);
}
public boolean onBottom() {
if (mario.getLocation().getY() >= min ) return true;
return false;
}
public void keyPressed(KeyEvent e) {
int key = e.getKeyCode();
if (key == KeyEvent.VK_LEFT) {
dx = -5;
}
if (key == KeyEvent.VK_RIGHT) {
dx = 5;
}
if (key == KeyEvent.VK_UP) {
dy = -5;
}
if (key == KeyEvent.VK_DOWN) {
standing = false;
}
}
public void keyReleased(KeyEvent e) {
int key = e.getKeyCode();
if (key == KeyEvent.VK_LEFT) {
dx = 0;
}
if (key == KeyEvent.VK_RIGHT) {
dx = 0;
}
if (key == KeyEvent.VK_UP) {
dy = 5;
}
if (key == KeyEvent.VK_DOWN) {
standing = true;
}
}
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
}
}
Основной файл
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import acm.graphics.*;
import acm.program.*;
import objects.Mario;
public class Application extends GraphicsProgram implements ActionListener {
private static final long serialVersionUID = 1L;
public static final int WINDOW_WiDTH = 800;
public static final int WINDOW_HEIGHT = 600;
public static final int REFRESH = 60;
public int dx;
public int dy;
public void run () {
setSize(WINDOW_WiDTH, WINDOW_HEIGHT);
addKeyListeners();
while (true) {
Mario mario = new Mario();
add(mario);
mario.setLocation(mario.getLocation().getX() + dx, mario.getLocation().getY() + dy);
pause(REFRESH);
}
}
}
Любые рекомендации очень претствуются, заранее спасибо
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
У меня есть таблица маленьких картинок (100dp) как в галереиТак вот как при нажатии на картинку выводилася ViewPager на весь экран с изоброжениями...
Есть у меня фрагент, у него есть контроллер и адаптерХочу сделать диалоговое окно тоже через фрашмент, у него не будет не контроллера,ни модели,так...
столкнулся с одной вещьюУ меня идут данные с телефона на компьютер и они отображаются в окне JFrame