Я использую jQuery Collision в простой (или мне так казалось) игре Pong. Здесь нет ИИ или онлайн-взаимодействия, только две ракетки и мяч, которым могут управлять один или два игрока в реальной жизни.
Пытаясь оживить мяч и проверить, действительно ли он с чем-то сталкивался, я теряюсь. Я прочитал документацию на SourceForge (см. ссылку выше), но я все еще немного не понимаю, как на самом деле проверить, действительно ли коллайдер попал во что-нибудь. На мой взгляд, в документации можно было бы использовать несколько примеров.
Код JavaScript, который у меня сейчас есть:
$(document).ready(function()
{
var ball = $("#ball");
var topPaddle = $("topPaddle");
var bottomPaddle = $("bottomPaddle");
var topPaddleHits = $("#ball").collision("#topPaddle", { mode: "collision", obstacleData: "topOData" });
var bottomPaddleHits = $("#ball").collision("#bottomPaddle", { mode: "collision", obstacleData: "bottomOData" });
var anim = setInterval(function()
{
ball.css({ "left": "+=5", "top": "+=5" });
if (bottomPaddleHits.data("bottomOData") == bottomPaddle)
{
anim = clearInterval(anim);
alert("Bottom paddle hit!");
}
}, 50);
});
Я также пробовал if (bottomPaddleHits == 1)
, но это тоже не помогло.
CSS для верхних/нижних ракеток и мяча, если это важно:
#ball
{
width: 10px;
height: 10px;
position: absolute;
background: #FFF;
top: 200px;
left: 100px;
}
#topPaddle
{
position: absolute;
width: 300px;
height: 10px;
background: lime;
top: 100px;
left: 50px;
}
#bottomPaddle
{
position: absolute;
width: 300px;
height: 10px;
background: lime;
bottom: 100px;
left: 50px;
}
Я просто не уверен, как проверить, действительно ли что-то было поражено или нет.