1
讓我先說我是一個完全的新手,我正在上課,我們的任務之一是做一個基本的比賽遊戲。我們可以使用我們發現的任何腳本,所以我選擇了gamequery。前提是球員是完全自動化的,並且會在時間的x%時間內完成,剩下的時間是y%。我使用了gamequery tutorial space遊戲作爲一種指導,但是當我正在處理移動和碰撞時,我的代碼非常緩慢,特別是所有背部移動。遊戲衝突問題
function Movement(){
movetwo = Math.random();
$(".obstacle").each(function(){
var collided = $(this).collision("#player2Body,."+$.gQ.groupCssClass);
if(collided.length > 0){
$("#player2").x($("#player2").x()-2);
}
var collided2 = $(this).collision("#playerBody,."+$.gQ.groupCssClass);
if(collided2.length > 0){
$("#player").x($("#player").x()-2);
}
});
if (movetwo <= twol) {
$("#player2").y($("#player2").y()+2);
}
else if ((movetwo > twol) && (movetwo <= (twol + twor))){
$("#player2").y($("#player2").y()-2);
}
else {
$("#player2").x($("#player2").x()+2);
}
moveone = Math.random();
if (moveone <= twol) {
$("#player").y($("#player").y()+2);
}
else if ((moveone > twol) && (moveone <= (twol + twor))){
$("#player").y($("#player").y()-2);
}
else {
$("#player").x($("#player").x()+2);
}
}
我知道有一種方法來檢測移動之前的碰撞,但我真的不知道如何實現它,因爲這些移動是隨機的。開關會更快嗎?奇怪的是,它顯示與所有的障礙物碰撞,但是其中有三個障礙物,並且由於某種原因,無論它們被隨機放置在哪裏,它都會忽略這些障礙物。我認爲我比我的技能水平權證更多,所以任何幫助將不勝感激。
謝謝。我會嘗試。我已經看過關於碰撞覆蓋的文檔,但它並沒有真正顯示我是如何有點失落,它是否像var collided = $(this).collision(「。obstacle」,。「+ $。gQ。 groupCssClass);以及如何將其發送給玩家x和y? – flatty
看起來像這樣: $(「#」+ player.id).collision(「。obstacle」,。「+ $。gQ.groupCssClass, {x:player.nextX,y:player.nextY}); –
非常感謝。這對我有很大的幫助。 – flatty