public void addZombieAtCanvasLocation(int canvasX, int canvasY)
    {
        // FIRST MAKE SURE THE ENTIRE INTERSECTION IS INSIDE THE LEVEL
        if ((canvasX - 17.5) < 0) return;
        if ((canvasY - 17.5) < 0) return;
        if ((canvasX + 17.5) > viewport.levelWidth) return;
        if ((canvasY + 17.5) > viewport.levelHeight) return;
        
        // AND ONLY ADD THE INTERSECTION IF IT DOESN'T OVERLAP WITH
        // AN EXISTING INTERSECTION
        for(Zombie z : level.zombies)
        {
            double distance = calculateDistanceBetweenPoints(z.x-viewport.x, z.y-viewport.y, canvasX, canvasY);
            if (distance < 17.5)
                return;
        } 
        
        // LET'S ADD A NEW INTERSECTION
        int intX = canvasX + viewport.x;
        int intY = canvasY + viewport.y;
        Zombie newZombie = new Zombie(intX, intY);
        level.zombies.add(newZombie);
        view.getCanvas().repaint();
    }