gpt4 book ai didi

javascript - 防止代码发生,直到

转载 作者:行者123 更新时间:2023-12-02 17:36:07 24 4
gpt4 key购买 nike

我正在尝试制作一个游戏,但我的 Angular 色被允许在标题屏幕上移动(如果我使用按键移动他,然后按“Play”, Angular 色将已经被移动到不同的位置。)我认为我应该创建一个名为“CanMove”的变量,将其设置为 false,并最终在按下“Play<”时将其设置为 true/”按钮。但是,我不知道我做错了什么。我将此代码一直放在文档的末尾(但仍在 $(document).ready 部分):

if (canMove === true) {
$(document).keydown(function(key) {
switch(parseInt(key.which,10)) {
case 65: //if LEFT direction pressed down:
walkLeft();
break;
case 83: //if DOWN direction pressed down:
$('#character').animate({top: "+=18px"}, 0.1);
rightCharacter()
changeRightCharacter();
break;
case 87: //if UP direction pressed down:
jumpUp();
break;
case 68: //if RIGHT direction pressed down:
walkRight();
break;
default:
break;
}
});
}

你看,当我按下按钮时,我将 canMove 设置为 true(不过,按钮的代码位于我粘贴到此处的代码上方),但它仍然无法工作。我认为这是因为文档在加载后就已经检查了 canMove 是 true 还是 false,并且在加载后将其设置为 true 或 false 并没有什么区别。我不知道如何改变它,所以我将不胜感激任何帮助!

PS:我还希望能够防止 Angular 色在游戏后期移动(即在文本框等期间)

最佳答案

if 放入 keydown 处理程序中。这样,文档将始终检测按键,但仅在设置了 canMove 时才响应它们。

关于“我不知道我做错了什么”...是的,你知道,你在代码下面的段落中完美地描述了它:你只在启动,并根据情况决定是否设置 keydown 处理程序。如果您不设置它,文档将不再监听按键(除非您还从代码中的其他位置设置它);如果您这样做,那么它将永远监听按键(除非您在代码中的其他位置删除处理程序)。

关于javascript - 防止代码发生,直到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22599989/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com