我正在使用javascript / html5制作游戏。我有从精灵表中绘制的按钮。我试图让按钮状态正常工作。当前悬停状态是在按钮悬停时绘制的,但是没有" un hover"什么时候不要徘徊。换句话说,粘滞的悬停行为。
我在这里附上了一个行为视频: 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;
}
}
}
}
非常感谢任何帮助。
更新
经过数小时的详尽实验。我终于通过对按钮对象本身进行了凌乱的破解来解决了这个问题,然后在checkButtonHover()中我将button.select.visible设置为true,如果moused over,则为false。 感谢每一个停下来阅读这个问题的人以及那些试图想出解决方案的人。