基本的なスペース インベーダー タイプのゲームが進行中ですが、プレイヤーからのショットがいつエイリアンに当たったかを認識できません。(Alien2 atm、左から 1 秒だけチェックしています)。どちらも動いているので、衝突をチェックする唯一の方法は、範囲ベースの if ステートメント (2 つの上部座標と 1 つの左側座標) を使用するか、Y 軸に沿った位置を Jquery で直接比較することであると判断しました。
現在、範囲ベースのソリューションを使用していますが、これまでのところ機能していません (理由は不明です)。
これまでの私のコード:
if (key == "87"/*&& document.getElementById('BarrelOne').id=='BarrelOne'*/){
var Invader2 = document.getElementById('Alien2');
var Shot1 = document.getElementById('ShortShot');
Shot1.style.webkitAnimationPlayState="running";
setTimeout(function(){
Shot1.style.webkitAnimationPlayState="paused";
}, 1200);
if(document.elementFromPoint(625.5, 265.5) == Shot1){
Invader2.style.visibility="hidden";
}
};
Jsfiddle: