小编Ton*_*ton的帖子

如何测量两个圆之间的距离,然后检查碰撞?

我在jquery/javascript中制作游戏.游戏是用鼠标点击屏幕来击中一个移动物体.我的检测位有问题.是否有jQuery/javascript函数可以随时测量两个对象中心之间的距离?然后,我可以轻松地控制检查两个中心的距离.和如果碰撞.他们都是两个圈子.

<div id="box">
        <div id="prepend">
            <div id="hero"></div>
        </div>

        <div id="enemy"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

"盒子"是游戏发生的区域,"英雄"是你要击中"敌人"的子弹.

javascript jquery collision-detection

2
推荐指数
1
解决办法
1493
查看次数

碰撞时从ArrayList中删除对象

我正在用java制作基本游戏.在游戏中你是一个障碍,通过使用键(向上,向下等)你应该射击敌人.这也是一个块.我有两个对象之间的工作碰撞,它的工作原理.然而,当子弹击中敌人时,它应该消失.当所有敌人被"杀死"时,你就赢了.这基本上是我到目前为止所得到的.

ArrayList<Enemy> enemy;
ArrayList<Bullet> bullets;

[...]

public void collision (){

    for(Bullet b : bullets){

        Rectangle r1 = b.getBounds();

        for(Enemy e : enemy){

            Rectangle r2 = e.getBounds();

            if(r1.intersects(r2)){

                enemy.remove(e);

            }

        }

    }
Run Code Online (Sandbox Code Playgroud)

敌人是由.txt产生的

else if(mark == 'E'){
    enemies.add(new Enemy(x * 20 + 10, y * 20 + 35, 40));
}
Run Code Online (Sandbox Code Playgroud)

因此当你用子弹击中敌人时,我首先得到一个java.util.ConcurrentModificationException for(Enemy e : enemy){

但是,如果我按特定顺序击中敌人,我可以删除除1个敌人以外的所有敌人.然后发生错误.碰撞方法放在"游戏循环"中.

java arrays

-1
推荐指数
1
解决办法
1242
查看次数

标签 统计

arrays ×1

collision-detection ×1

java ×1

javascript ×1

jquery ×1