我在使用keyPressed / mousePressed进行处理时出现问题。
例如,如果我有一些图像的数据文件apple,dog&猫,有两个视频森林&花园。
问题是我想按一个按钮并更改为图像,再次按此按钮可更改为视频。
例如以
开头video =" forest.mp4" > keyPressed = UP> apple.jpg;
选择LEFT或RIGHT两个>
如果keyPressed = LEFT> dog.jpg
如果keyPressed = RIGHT>猫。 jpg
他们都是keyPressed = UP> video =" garden"
Movie myMovie[];
int index = 0;
boolean start = false;
float t0; //Movie Begin
float t; //current time
void setup(){
size(1280,720);
img = new Image[2];
img = new Image(this, "apple.jpg");
img = new Image(this, "dog.jpg");
img = new Image(this, "cat.jpg");
myMovie = new Movie[3];
myMovie[0] = new Movie(this, "forest.mp4");
myMovie[1] = new Movie(this, "garden.mp4");
}
void draw(){
image (img, 0 ,0);
image(img, 0 ,height, img.height, img, height);
if (myMovie[index].read();
}
if (start){
image(myMovie[index],0,0,width,height);
这就像旧版RPG游戏,冒险类型的游戏。
当玩家点击不同的选择时会出现不同的结果。
答案 0 :(得分:0)
第1步:将您的状态存储在变量中。
boolean showingMovie = true;
第2步:在draw()
函数中,检查该变量并绘制正确的内容。
void draw(){
if(showingMovie){
//draw your movie
}
else{
//draw your image
}
}
第3步:在keyPressed()
或mousePressed()
函数中更改该变量,以切换正在显示的内容。
void keyPressed(){
showingMovie = !showingMovie;
}
当变量指示正在播放影片时,您可能必须具有仅用于阅读影片的逻辑,并且您可能必须添加一些逻辑以仅在单击鼠标的正确位置时切换变量,或者按下正确的键。如果您有多个影片/图像组合,您可能还必须拥有多个变量。如果您有很多这些,您甚至可以使用数组或类来保存所有数据。