隐藏机制
由艺素馒头编写
目录
物件调用
底层原理(废话)
我们都知道,使用“触发物件”积木可以调用其他物件,
但实际上,“触发物件”这条指令在游戏文件里从未被发现,
这是因为“触发物件”实际上是一条伪指令,背后是两条@[set_switch],
为什么?经过我们的研究,实际上游戏里的“被物件触发”模式也是不存在的,
游戏里的“被物件触发”实际上只是添加了一个存在条件,其实底子还是“游戏开始后触发”
只不过因为存在条件的原因,物件只有在真正存在时才会执行指令,这也是为什么“被物件触发”不会显示了
所以,我们在黑魔法里调用一个物件其实很简单
人话
“被物件触发”模式为物件添加了一个“s:switch_name_物件名称==true”,只有“switch_name_物件名称”变量等于true时物件才能存在 所以你可以使用@[set_switch] [“switch_name_计数器”,true]来调用物件 另外你还需要在调用前执行@[set_switch] [“switch_name_计数器”,false]来重置状态 否则就只能调用一次了
完整“触发物件”指令
@[set_switch] ["switch_name_物件名称",false]
@[set_switch] ["switch_name_物件名称",true]
物件移动循环
循环
游戏里正常是没有循环的,但是提供了一个另外的方法来实现循环 那就是@[set_event_loop_move_route],通过使用这条指令,我们可以实现无阻塞循环
完整循环指令
注意这条指令的第二个参数是一个json字符串而不是字典,所以需要在最外面加上双引号 内部的所有双引号也要在前面加上转义符变成\“
@[set_event_loop_move_route] {
"target": "触发循环",
"loop_move_route": "[
{\"command\":\"set_switch\", \"parameters\":[\"switch_name_循环\",false]},
{\"command\":\"set_switch\", \"parameters\":[\"switch_name_循环\",true]},
{\"command\":\"wait\", \"parameters\":1}
]"
}
这样就能做循环了,想停止只需要再用@[set_event_loop_move_route]覆盖一遍就行了
注意触发循环的物件不能和循环逻辑物件是同一个,而且不能把触发循环物件放在地图外面