Объединение по двум файлам Java с основным дает ошибкиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Объединение по двум файлам Java с основным дает ошибки

Сообщение Anonymous »

код игры: < /p>

Код: Выделить всё

import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.*;

class GamePanel extends JPanel {
// Game parameters
int squareSize = 100;
int squareX;
int squareY;
int health = 10;
boolean showHealthBar = false;
boolean gameOver = false;
boolean gameStarted = false;

Random random = new Random();

Timer hideHealthBarTimer;
Timer gameTimer;

boolean paused = false;

int counter = 0;
Timer counterTimer;

// Variables for square shaking
boolean isShaking = true; // Start shaking immediately
int originalSquareX;
int originalSquareY;
Timer shakeTimer;
int shakeAmplitude = 2; // Amplitude of shaking

// Difficulty settings
String difficulty = "Normal"; // Default difficulty
int selectedDifficulty = -1;
int shakeDelay = 20; // Delay for the shake timer

public GamePanel() {
// Timer for shaking
shakeTimer = new Timer(shakeDelay, e -> {
if (isShaking) {
squareX = originalSquareX + (random.nextBoolean() ?
shakeAmplitude : -shakeAmplitude);
squareY = originalSquareY + (random.nextBoolean() ?
shakeAmplitude : -shakeAmplitude);
repaint(); // Repaint on each shake
}
});

shakeTimer.start(); // Start the shake timer immediately

hideHealthBarTimer = new Timer(500, e -> {
showHealthBar = false;
repaint();
});
hideHealthBarTimer.setRepeats(false);

gameTimer = new Timer(30, e -> {
if (paused || !gameStarted || gameOver) return;

if (health  { // Slower counter
increase
if (!paused && gameStarted && !gameOver) {
counter++;
repaint();

}
});
counterTimer.start();

addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (!gameStarted) {
// ... (difficulty selection logic - unchanged)
} else if (gameStarted && !paused && !gameOver) {

if (e.getX() >= squareX && e.getX() = squareY && e.getY() 
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class menu_introduttivo {

public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
System.out.println("Starting application...");
JFrame frame = new JFrame("Test Frame");
frame.setSize(500, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBackground(Color.BLACK);

JPanel panel = new JPanel() {
// ... (Existing variables)

@Override
protected void paintComponent(Graphics g) {
// ... (Existing drawing code)
}

// ... (Existing drawOptionsPanel method)

@Override
public void addNotify() {
super.addNotify();

// ... (Existing mouseMoved listener)

addMouseListener(new MouseAdapter() {
// ... (Existing mousePressed code for START and MODES)

@Override
public void mousePressed(MouseEvent e) {
// ... (Existing "OPTIONS" and "Did" click handling)

if (optionsMenuOpen) {
// ... (Existing volume circle click handling)

// Check if the sound circle is clicked
// ... (sound circle click handling - unchanged)
}
}

@Override
public void mouseReleased(MouseEvent e) {
// ... (mouseReleased - unchanged)
}
});

addMouseMotionListener(new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent e) {
if (optionsMenuOpen) {
// ... [Existing dragging logic]
}
}
});

// Add mouse listener for click handling
addMouseListener(new MouseAdapter() {
// ... [mousePressed method - unchanged]
});
}
};

frame.add(panel);
frame.setVisible(true); // Make the frame visible after adding components
});
}
}
< /code>
Попытка собрать эти два файла вместе: < /p>
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.*;

// ... (GamePanel and Game classes remain unchanged)

public class menu_introduttivo {

public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
// ... (Existing setup code)

JPanel panel = new JPanel() {
// ... (Existing variables)

@Override
protected void paintComponent(Graphics g) {
// ... (Existing drawing code)
}

// ... (Existing drawOptionsPanel method)

@Override
public void addNotify() {
super.addNotify();

MouseInputAdapter mouseAdapter = new
MouseInputAdapter() { // Combined listener
@Override
public void mouseMoved(MouseEvent e) {
// ... (Existing mouseMoved logic -
unchanged)
}

@Override
public void mousePressed(MouseEvent e) {
// ... (Existing mousePressed logic -
unchanged)
}

@Override
public void mouseDragged(MouseEvent e) {
if (optionsMenuOpen) {
if (draggingVolume) {
// ...  (volume dragging logic -
unchanged)
}
if (draggingSound) {
// ... (sound dragging logic -
unchanged)
}
}
}

@Override
public void mouseReleased(MouseEvent e) {
draggingVolume = false;
draggingSound = false;
}
};

addMouseListener(mouseAdapter);          // Add
combined listener
addMouseMotionListener(mouseAdapter);   // Add
combined listener

}

};

frame.add(panel);
frame.setVisible(true);  // Make the frame visible
*after* adding the panel

});

}
}
Введите описание изображения здесь
Это 2 разных кодовых файла
Введите описание изображения здесь
Это меню. Это должно быть первое, что открывается в игре, и если я нажму запуск, он должен запустить другой файл в игру, которая открывает сначала сложность меню, и после того, как игрок выбрал сложность, игра начинается Введите описание изображения здесь < /p>
Если вы нажмете одну из трудностей, начинается игра: < /p>
Введите описание изображения здесь < /p >
В этом случае файлы были разделены. Если вы сложите код вместе, он может запустить только один из них, или он запустит только меню или только игру с его меню. Вместе: открывает игру, первое, что вы видите, это меню с параметрами, режимом и запуска, если вы нажмете запуск>

Подробнее здесь: https://stackoverflow.com/questions/794 ... ves-errors
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»