【问题标题】:How to make a object follow another object around walls game maker language如何使一个对象跟随墙壁周围的另一个对象游戏制作者语言
【发布时间】:2018-07-03 23:57:12
【问题描述】:

所以,我希望一个对象跟随另一个对象。但是,如果玩家对象走得太远,另一个对象就会卡在墙后。因此,如果您转过一个拐角,并且后面的物体因为试图向玩家移动而无法跟随您而被困住。这导致它卡在墙上。我目前拥有的代码是:

“创建事件”

path = path_add();

“步骤事件”

mp_potential_path_object(path, obj_unit_1.x, obj_unit_1.y, 1, 4, obj_border);
path_start(path, 1, 0, 0);

如果有人已经发布过这个,请提及,谢谢

【问题讨论】:

    标签: game-maker-language game-maker-studio-2


    【解决方案1】:

    在不了解您的项目/对象布局的其他详细信息的情况下,我将仅提供一般的想法类型的解决方案。

    1) 在与墙壁对象碰撞时,您可以尝试使用精灵的大小找到墙壁对象的边缘,并将其添加为要移动的点。 (假设墙壁没有平铺并且那里还有另一面墙)

    2) 您可以为玩家的移动创建一条备用路径,并让以下对象跟随该路径。假设玩家所走的路径仍然清晰并且可以移动,那么玩家移动的任何路径都应该对以下对象有效。

    3) 不确定它是否符合您的游戏机制,但有些游戏(例如暗黑破坏神 3)如果您的随从/宠物离玩家太远,它们会自动传送到玩家的位置旁边。

    【讨论】:

    • 我喜欢你的第二个想法。但是,我不知道如何实现它。这是因为我找不到让玩家对象为敌人保存路径的方法:/
    • 对于路径相关的文档docs.yoyogames.com/source/dadiospice/002_reference/paths/…,您可以使用 path_add to 创建新路径, path_add_point() 向路径添加新点,以及 path_assign 将播放器备份路径复制到新路径如果需要,跟随者。或者,我在想另一种方法是在这些问题区域中添加不可见的路径查找“节点”对象,如果以下对象卡住了,他们可以改为使用这些对象的路径,然后遵循存储在这些“节点”的路径“走一条清晰的路?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    • 2016-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多