{javascript} Кнопки SPRITE в состоянии зависания - PullRequest
0 голосов
/ 17 мая 2018

Я делаю игру в javascript / html5. У меня есть кнопки, которые я рисую из листа спрайта. Я пытаюсь получить состояние наведения для кнопок, работающих правильно. В настоящее время состояние наведения отображается, когда наведена кнопка, но не отображается, если оно не наведено. Другими словами, поведение при наведении курсора.

Я прикрепил видео о поведении здесь: https://youtu.be/VD9rPG-iXTA?list=PLS5mKRel38oYGFCd2YOT9ugHwomFtAUZu

Я уверен, что это проблема с моей логикой, но я ее не вижу. Вот мой код:

function checkButtonHover()
{
    //Check for button hovers
    for(var b=0; b<buttons.length; b++)
    {
        var button = buttons[b];
        var select = null;

        //If poiint collision with button
        if(hitTestPoint(mouseX,mouseY,button))
        {
            //Assign select sprite art
            select = new Sprite("select",190,237,20,20,button.x,button.y,1,true,false,false);
            //Add select to sprites so that it get drawn in render()
            sprites.push(select);
        }
        else
        {   
            //If there isn't a collision but select has a value
            if(select !== null)
            {
                select.visible = false;
                removeObject(select,sprites);
                //Reset select to null
                select = null;
            }

        }

    }
}

Любая помощь очень ценится.

UPDATE

После часов исчерпывающих экспериментов. Я, наконец, решил проблему путём взлома самих объектов кнопки, а затем в checkButtonHover () я просто установил button.select.visible в значение true, если его перевернуть, и false в противном случае. Спасибо всем, кто зашел, чтобы прочитать этот вопрос, и тем, кто почесал голову, пытаясь найти решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...