setInterval(collector, 1000/FPS);
这会调用收集器,它运行以下命令:
function collector(){
inputinterval();
draw();
soundplay();
//DEBUG FEATURES BELOW
//console.log(mousepos);
//console.log(mousedrag);
}
在inputinterval
中,有代码可以确定用户是否正在拖动某些内容。默认情况下,他是,但通过按空格键,它会从鼠标指针中删除元素。现在这有声音很有趣,所以我做了以下测试声音:
//SOUND
//function soundplay(){
// if (!(mousedrag)){
// snd_putdown.play();
// };
//};
我现在已经评论过了,因为即使没有按下鼠标按钮它也会循环播放。
mousedrag在输入函数中确定:
if (event.keyCode == 65) {
mousedrag = true;
}
if (event.keyCode == 83) {
mousedrag = false;
}
目前由键盘输入替换,因为我的鼠标按钮也不起作用。这段代码是在收集器中调用的inputinterval()
的一部分,由setInterval函数调用。这导致巨大的循环。我将如何进行声音,这不是循环的一部分,但会响应用户丢弃某些内容(并将其重新拾取>丢弃>等等...)。
提前致谢!
编辑:嗯,我现在跳过整个部件的掉落,并选择改变设计,而不是打破我的头。我仍然想知道如何做到这一点,但现在它可以做到。这里可以看到进展,以及来源和不是:koewaffle.koding.com/pcgametest/index.html。