Ich entwerfe ein Videospiel für meinen Informatikunterricht. Bis jetzt funktioniert alles und das Spiel beinhaltet das Ziehen eines Bildes zu bestimmten Teilen des Bildschirms. Das Fenster ist jedoch nicht groß genug, um alle Bilder zu enthalten. Daher möchte ich eine "nächste" Schaltfläche erstellen, die eine neue Seite mit Elementen im selben Fenster öffnet und gleichzeitig zulässt, dass die gezogenen Bilder auf der Seite bleiben. Grundsätzlich möchte ich nur einen Teil des Bildschirms in der Lage sein, zu einem neuen Frame zu bewegen. So ähnlich wie ein Menüknopf, der zu einer neuen "Szene" des Programms führt.Wie kann ich eine Schaltfläche in meinem Verarbeitungsprogramm erstellen, die beim Klicken mehr Bilder anzeigt?
Ich arbeite mit Eclipse.
import processing.core.PApplet;
import processing.core.PImage;
import java.awt.event.MouseEvent;
@SuppressWarnings("serial")
public class Step1 extends PApplet
{
//curly brown
float x = 900;
float y = 30;
float imageWidth = 175;
float imageHeight = 175;
//long brown
float x2 = 800;
float y2 = 30;
//royal dress
float x3 = 845;
float y3 = 170;
float imageWidth2 = 400;
float imageHeight2 = 400;
//flower dress
float x4 = 850;
float y4 = 145;
//black and pink dress
float x5 = 600;
float y5 = 170;
//black straight
float x6 = 700;
float y6 = 30;
boolean mouseInImage = false;
boolean mouseInImage2 = false;
boolean mouseInImage3 = false;
boolean mouseInImage4 = false;
boolean mouseInImage5 = false;
boolean mouseInImage6 = false;
PImage img;
//hairs
PImage curlyBrown = loadImage("CurleyBrown.png");
PImage longBrown = loadImage("LongBrown.png");
PImage blackStraight = loadImage("BlackStraight.png");
//dresses
PImage blackAndPinkDress = loadImage("BlackAndPinkDress.png");
PImage blackDress = loadImage("BlackDress.PNG");
PImage blackStripesDress = loadImage("BlackStripesDress.png");
PImage flowerDress = loadImage("FlowerDress.png");
PImage sparklyDress = loadImage("SparklyDress.png");
PImage royalDress = loadImage("RoyalDress.png");
public void setup()
{
size(1024, 576);
background(255, 255, 255, 255);
img = loadImage("Body1.png");
}
public void draw()
{
background(255, 255, 255, 255);
image(img, 250, 50);
image(royalDress, x3, y3);
image(flowerDress, x4, y4);
image(blackStripesDress, 680, 70);
image(blackDress, 600, 65);
image(blackAndPinkDress, x5, y5);
image(sparklyDress, 500, 150);
//hair
image(longBrown, x2, y2, imageWidth, imageHeight);
image(curlyBrown, x, y, imageWidth, imageHeight);
image(blackStraight, x6, y6, 125, 145);
}
public void mousePressed(MouseEvent e)
{
if(mouseX > x && mouseX < x + imageWidth && mouseY > y && mouseY < y + imageHeight)
mouseInImage = true;
else if(mouseX > x2 && mouseX < x2 + imageWidth && mouseY > y2 && mouseY < y2 + imageHeight)
mouseInImage2 = true;
else if(mouseX > x3 && mouseX < x3 + imageWidth2 && mouseY > y3 && mouseY < y3 + imageHeight2)
mouseInImage3 = true;
else if(mouseX > x4 && mouseX < x4 + imageWidth2 && mouseY > y4 && mouseY < y4 + imageHeight2)
mouseInImage4 = true;
else if(mouseX > x5 && mouseX < x5 + imageWidth2 && mouseY > y5 && mouseY < y5 + imageHeight2)
mouseInImage5 = true;
else if(mouseX > x6 && mouseX < x6 + 125 && mouseY > y6 && mouseY < y6 + 145)
mouseInImage6 = true;
}
public void mouseDragged()
{
if(mouseInImage)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x += deltaX;
y += deltaY;
}
else if(mouseInImage2)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x2 += deltaX;
y2 += deltaY;
}
else if(mouseInImage3)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x3 += deltaX;
y3 += deltaY;
}
else if(mouseInImage4)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x4 += deltaX;
y4 += deltaY;
}
else if(mouseInImage5)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x5 += deltaX;
y5 += deltaY;
}
else if(mouseInImage6)
{
float deltaX = mouseX - pmouseX;
float deltaY = mouseY - pmouseY;
x6 += deltaX;
y6 += deltaY;
}
}
public void mouseReleased()
{
mouseInImage = false;
mouseInImage2 = false;
mouseInImage3 = false;
mouseInImage4 = false;
mouseInImage5 = false;
mouseInImage6 = false;
}
}
Können Sie Code anzeigen? – inafalcao
@inafalcao sicher, das ist, was ich bisher habe –
Haben Sie das jemals herausgefunden? –