所以我剛開始做一些java處理,並遇到我無法獨立移動墊的問題。如何獨立移動乒乓球的墊給2名球員?
當我移動pad1並開始pad2時,pad1只是停下來,反過來,這樣當遊戲變得更快時,兩個玩家會互相干擾。
我試圖通過將焊盤變成對象來實現差異,但是我沒有完成對問題本身的任何更改。代碼的結尾現在可以忽略,因爲我想我會用forLoop來解決這個問題。
float player_1_x;
float player_1_y;
float player_2_x;
float player_2_y;
float ball_x;
float ball_y;
float ball_vector_x;
float ball_vector_y;
int round;
void setup() {
player_1_x = 20;
player_1_y = 60;
player_2_x = 780;
player_2_y = 60;
ball_x = 400;
ball_y = 300;
ball_vector_x = -3;
ball_vector_y = 0;
round = 0;
size(800, 600);
rectMode(CENTER);
}
void draw() {
background(0);
rect(ball_x, ball_y, 10, 10);
rect(player_2_x, player_2_y, 20, 100);
if(keyPressed) {
if(keyCode == DOWN && player_2_y < 550) {
player_2_y += 5;
}
if(keyCode == UP && player_2_y > 50) {
player_2_y -= 5;
}
}
rect(player_1_x, player_1_y, 20, 100);
if(keyPressed) {
if(key == 's' && player_1_y < 550) {
player_1_y += 5;
}
if(key == 'w' && player_1_y > 50) {
player_1_y -= 5;
}
}
ball_x += ball_vector_x;
ball_y += ball_vector_y;
if(ball_x < 30) {
if(ball_y < (player_1_y + 55) && ball_y > (player_1_y - 55)) {
ball_vector_x = (-ball_vector_x) + 0.5;
ball_vector_y -= (player_1_y - ball_y) * 0.05;
} else {
ball_x = 400;
ball_y = 300;
ball_vector_x = -3;
ball_vector_y = 0;
round = 0;
}
}
if(ball_x > 770) {
if(ball_y < (player_2_y +55) && ball_y > (player_2_y - 55)) {
ball_vector_x = (-ball_vector_x) - 0.5;
ball_vector_y -= (player_2_y - ball_y) * 0.05;
} else {
ball_x = 400;
ball_y = 300;
ball_vector_x = 3;
ball_vector_y = 0;
round = 0;
}
}
if(ball_y > 595 || ball_y < 5) {
ball_vector_y = -ball_vector_y;
}
if(ball_vector_x == 4 || ball_vector_x == -4) {
round = 1;
} else if(ball_vector_x == 5 || ball_vector_x == -5) {
round = 2;
} else if(ball_vector_x == 6 || ball_vector_x == -6) {
round = 3;
} else if(ball_vector_x == 7 || ball_vector_x == -7) {
round = 4;
} else if(ball_vector_x == 8 || ball_vector_x == -8) {
round = 5;
} else if(ball_vector_x == 9 || ball_vector_x == -9) {
round = 6;
} else if(ball_vector_x == 10 || ball_vector_x == -10) {
round = 7;
}
text("round: " + round, 380, 20);
}
我認爲,我們需要看到的代碼顯示'key','keyCode'和'keyPressed'(以及其他)來自哪裏 –
@SteveSmith這些內置到Processing語言中。 –
Can Processing可以爲您提供有關多個併發按鍵的信息嗎? 'key'和'keyCode'有什麼區別? –