public void collision(List<Entity> entities)
    {
        synchronized(bullets)
        {
            for(int bulletIndex = 0; bulletIndex < bullets.size(); bulletIndex++)
            {
                for(int entityIndex = 1; entityIndex < entities.size(); entityIndex++)
                {
                    if(entities.get(entityIndex) instanceof Monster)
                    {
                        if(bulletIndex < bullets.size() && entityIndex < entities.size())
                        {
                            if(bullets.get(bulletIndex).intersects(entities.get(entityIndex))) 
                            {
                                if(entities.get(entityIndex).isAlive())
                                {
                                    entities.get(entityIndex).setAlive(false);

                                    if(bullets.get(bulletIndex).getBuff() != Buff.BigBullet)
                                        bullets.get(bulletIndex).setAlive(false);

                                    monstersKilled++;
                                    hitCounter++;
                                    totalHitCounter++;

                                    if(missCounter >= 5)
                                        score += 10 * missCounter;
                                    else
                                        score += 10 + Math.pow(1.1, hitCounter);

                                    missCounter = 0;
                                    monstersPassed = 0;
                                }
                            }
                        }
                    }
                }
            }
        }
    }