0
포인트 앤 클릭 게임을하고 있으며 일부 버튼으로 장면 사이를 전환하고 싶습니다. 버튼 클래스뿐만 아니라 별도의 클래스에있는 모든 장면을 이미 만들었습니다. 단추 클래스에는 단추를 설정하는 단추와 단추를 가져 오는 단추가 있습니다. 각 장면에는 두 가지 방법이 있습니다. 하나는 배경 이미지를로드하는 방법이고 다른 하나는 버튼, 명소 및 표지와 같은 장면의 모든 기능을로드하는 방법입니다.버튼으로 장면 전환하기
class Button {
Button() { }
void setButton(float plX, float pmX, float plY, float pmY, float iX, float iY) {
this.poslX= plX;
this.posmX = pmX;
this.poslY = plY;
this.posmY = pmY;
this.imgX = iX;
this.imgY = iY;
}
boolean getButton() {
if(mouseX > plX && mouseX < pmX && mouseY > plY && mouseY < pmY) {
image(img, pX, pY);
if(mousePressed) {
click = true;
}
}
else {
image(imgH, pX, pY);
clicked = false;
}
return clicked;
}
}
mainScene()이라는 메서드에서 모든 단추를 호출합니다.
class SceneOne {
SceneOne() { // some images go here }
void mainScene() {
button.setClickableArea(1125, 1125 + 164, 60, 60 + 165, 1125, 60);
button.getClickableArea();
button.setClickableArea(1125, 1125 + 164, 500, 500 + 165, 1125, 500);
button.getClickableArea();
}
}
또한 모든 장면과 스위칭 로직을 포함해야하는 Stages 클래스가 있습니다. 나는 gameStart()라는 draw()에 하나의 메소드를 넣을 계획이었습니다. 질문은 버튼을 특정 장면으로 전환시키는 방법입니다.
감사
그들 사이에 당신이
draw()
또는gameStart()
기능 스위치를 (scene
글로벌 부울 변수이어야 함). 버튼을 그리는 구성 요소의 MouseMotionListener와 결합하면 마우스가하는 일에 대해 필요한 모든 정보를 얻을 수 있습니다. –예, ActionListener를 만들고 단추에 첨부합니다. 여기에 문서가 있습니다. http://docs.oracle.com/javase/7/docs/api/java/awt/event/ActionListener.html – Corjava
작동 방식을 볼 수 있도록 일부 코드를 게시 할 수 있습니까? 이것은 실제로 java가 아니지만 처리는 java를 기반으로합니다. 단추 클래스가 있지만 메서드를 전달하는 방법을 모르므로 단추를 클릭하면 해당 장면/메서드가 트리거됩니다. 또한 mousePressed는 정확히 말합니다. –