Game Maker 2 换房间时路径中断

Posted

技术标签:

【中文标题】Game Maker 2 换房间时路径中断【英文标题】:Game Maker 2 path breaks when changing rooms 【发布时间】:2018-09-26 06:51:34 【问题描述】:

我正在 GMS 2 中制作游戏。作为游戏的一部分,我有一个正在遵循路径的对象,我希望它在我更换房间后继续遵循相同的路径。我注意到这不起作用 - 路径照常继续,但对象的 X 和 Y 坐标完全改变了,完全没有理由 - 我在调试模式下尝试了这个,并且在某些时候它们只是改变了。仅当我在路径处于活动状态时更改房间时才会发生这种情况。这是路径创建代码:

if (mp_grid_path(my_grid, my_path, x, y, dest_x, dest_y, 1)) 
            path_start(path, ny_speed, path_action_stop, false);
         else 
            show_debug_message("no path!!!");
        

【问题讨论】:

【参考方案1】:

我发现解决此问题的方法是在房间结束时保存路径,然后在房间开始时从同一点恢复它。 房间尽头:

if(is_walking)  // only do this if the object is currently walking
path_end();

房间开始时:

if(is_walking)  // only do this if the player is currently walking
if (mp_grid_path(my_grid, my_path, x, y, dest_x, dest_y, 1)) 
    path_start(path, my_speed, path_action_stop, false);
 else 
    show_error("no path!!!", true); // if there is no path at this point, we have an error - because it existed before we changed the rooms, so it should exist now


希望这将帮助任何在未来遇到此问题的人。

【讨论】:

以上是关于Game Maker 2 换房间时路径中断的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Game Maker Studio 2 中跟踪随机遭遇的步骤

在 Game maker studio 2.0 中写入电子表格

使用 Game Maker Studio 2 中的快速排序算法对列表进行排序

我在 Game Maker Studio 2 上的程序没有显示货币符号(如 £、$ 等)

XBOX 在插槽 0 中检测到一个游戏手柄,但在 Game Maker Studio 2 中未检测到输入

Game Maker - 方向速度