MUGEN 1.1 · DOCUMENTATION

3.4.1 控制器格式

3.4.1 控制器格式 State格式

所有的状态必须包含至少一个状态控制器,否则会报错.状态控制器组有如下的格式:

  • [State state_number, some_number]
    type = controller_type
    trigger1 = condition_exp
    <universal optional parameters>
    <additional parameters depending on controller>

state_number必须与此状态 StateDef 设定的号码相同.
some_number可以是任何你所选的号码;
当遇到错误时会显示这个号码,以便你知道哪个控制器需要修复.
(其实state_number,some_number在做人物时可以任意指定(画面包,背景制作时必须state_number和def的一样),主要还是为了养成一个好习惯,不仅自己看懂此代码的意义,也有助于别人看懂,同时报错的时候能及时找到问题所在)
人物State的state_number和some_number都是可选的,可以都不写.

通用(能应用于任何控制器)可选参数是ignorehitpause和persistent.
如果ignorehitpause设成1,mugen会在打击停顿的时候也检测此控制器.否则在打击停顿的时候不会检测.
默认值是0,推荐使用这个值,除了少数情况(表述一个持续性的参数,详见触发器持续性).

controller_type是控制器的名字.每个控制器有不同的名字,需要不同的参数.详见控制器的相关介绍.

控制器的顺序是值得注意的.第一个列出的控制器首先被检测,如果必要,首先被执行.

这里是一个给予p1在状态开始时控制权的例子:
(在StateDef下面设置参数ctrl = 1有相同的效果)

  • [State 300, 1] ;State 300. 只是一个主观上的号码.
    type = CtrlSet ;改变控制标示.
    trigger1 = Time = 0
    value = 1

此例中,CtrlSet使你改变p1的控制标示.
trigger1 = Time = 0这行表示状态时间为0的时候激活,即,状态的起始.
value = 1 这行表示我们要把控制标示设置成1,表示真.
如果我们要让状态起始时p1不受控制,只要把最后一行改成value = 0.

看另一个例子.此控制器使p1向前移动10像素2次:在当前动画播放到第2第3元素的时候.
如果你不知道什么参数匹配什么样的控制请不要担心.
请参看关于控制器的详细说明.

  • [State 300, 2]
    type = PosAdd ;增加p1位置
    trigger1 = AnimElem = 2 ;第2元素时触发.
    trigger2 = AnimElem = 3 ;第3元素时触发.
    x = 10

如你所见,每个控制器必须至少含有1个触发条件.
一个触发条件能使控制器被激活.此例有2个触发条件,只要其中一个为真,控制器就能被激活.

搜索全部教程正文 · Ctrl / ⌘ + K 打开 · Esc 关闭 · Enter 打开首条结果