1

请帮助我

几周前,它来自 gamemaker 2.3,实际上是在 gamemaker 语言中,他们将脚本更改为函数,但现在在转换文件以便能够重新打开它们之后,我仔细检查了所有脚本等,但无论如何当我开始它仍然是黑屏,但是它没有给我任何编译错误或其他什么,可能是什么问题?

附言。我可能听起来很愚蠢,但如果有人和我有相同的程序,我可以将项目传递给他们,这样他们就可以看到自己的脚本,所以基本上它只是基础,只有让玩家行走和碰撞的脚本,我知道没有人愿意浪费时间,但我问同样的问题

4

1 回答 1

0

您的代码可能陷入无限循环,这是一个可能看起来像的示例:

var doloop = true
while(doloop == true){
    x += 1
    y += 1
}

“doloop”变量在while循环中永远不会改变,所以它总是等于true并且循环永远不会结束。因为代码永远不会完成循环,所以它永远无法绘制任何东西,所以最终会出现黑屏。检查这些的最简单方法是在开始处和每个 while/for/do/ect 循环之后放置一个断点/调试点并对其进行调试。例如(我使用星号“*”来表示断点)

var doloop = true
* while(doloop == true){
    x += 1
    y += 1
}
*

当您到达其中一个循环时,删除第一个断点并点击调试器中的“继续”按钮。如果它(它是计算机)需要更长的时间才能到达第二个断点(例如,您等待十秒到两分钟(取决于代码的复杂程度)并且它仍然没有命中第二个断点),那么您应该替换循环开始处的断点以检查并确保它仍然在那里。如果它仍在循环中,那么这很可能是代码卡住的地方。查看循环和任何相关变量的设置/更改,您应该能够找到问题(即使需要一段时间)。

于 2022-01-26T18:56:35.023 回答