新trigger翻译

翻译者:雨没有眼泪

转载已授权

文章首发地址(可获得更好阅读体验):https://www.bilibili.com/read/cv13602150


新的触发器


AiLevelF(AI等级)

以浮点值(float)的形式返回玩家 AI 的难度级别(与AILevel触发器不同,由于兼容性原因,它仍处于下限)。如果在引擎上启用了 AI,则该值的范围从 1(最简单)到 8(最困难)。如果引擎未启用AI,则返回值为0。AI 浮点难度级别是AI Ramping 系统的结果(更多信息请参阅随引擎分发的select.def)


格式:

AILevelF


参数:


返回类型:

float(浮点型)


trigger1 = Random < (500 * (AILevelF ** 2 / 64.0))


AnimElemLength(动画元素长度)

返回P1当前动画帧元素的时间总长度。


格式:

AnimElemLength


参数:


返回类型:

int(整型)


trigger1 = time= AnimElemLength


AnimLength(动画长度)

返回 P1 当前动画的时间总长度。


格式:

AnimLength


参数:


返回类型:

int(整型)


trigger1 = Time = AnimTime - AnimLength 


trigger1 = Time = GetHitVar(hittime) - AnimLength


ComboCount(连击计数)

返回玩家一方在当前正在进行的组合中完成的总命中数。只要对面的团队组合计数保持在 0 以上,此值就有效,否则也返回 0。返回值始终与生命条跟踪的当前组合计数器匹配。


格式:

ComboCount


参数:


返回类型:

int(整型)


trigger1 = ComboCount > 8


ConsecutiveWins(连续获胜)

返回该队连续获胜的比赛次数。在 MatchOver 触发器开始返回 1 的同时,获胜队的计数器增加。输掉一轮会将计数器重置为 0,并阻止此比赛的增加。


格式:

ConsecutiveWins


参数:


返回类型:

int(整型)


trigger1 = ConsecutiveWins > 0


Dizzy(晕眩中)

如果角色处于眩晕效果(由DizzySet sctrl指定),则返回 1 。


格式:

Dizzy


参数:


返回类型:

boolean int(1 或 0)


trigger1 = !Dizzy


DizzyPoints(眩晕点数)

返回玩家拥有的眩晕点数。


格式:

DizzyPoints


参数:


返回类型:

int(整型)


trigger1 = DizzyPoints = 0


DizzyPointsMax(最大眩晕点数)

返回玩家可以拥有的最大眩晕点数。这通常与 LifeMax 相同(可在角色的 CNS部分调整)。


格式:

DizzyPointsMax


参数:


返回类型:

int(整型)


trigger1 = DizzyPoints < DizzyPointsMax / 2


FirstAttack(第一次攻击)

如果此角色在当前回合中进行了第一次攻击(在任何对手或队友之前),则返回 1。否则返回 0。


格式:

FirstAttack


参数:


返回类型:

boolean int(1 或 0)


trigger1 = FirstAttack


FramesPerCount(帧数)

返回在 lifebar Fight.def [Time] 组下设置的值。可以除以TimeRemaining、TimeTotal或TimeElapsed得到生命条计时器的代表值。


格式:

FramesPerCount


参数:


返回类型:

int(整型)


trigger1 = (TimeRemaining / FramesPerCount) + 1 = 300


Float(浮点数学)

将计算为 int 类型的参数转换为 float 类型。


格式:

 Float(exp)


参数:

exp

表达式


返回类型:

float(浮点型)


fvar(10) = Float(Life) / LifeMax


HelperName(Helper名称)

返回Helper的名称(通过Helper的name参数分配,如果未分配唯一name,则默认为“<父> helper”)。


格式:

HelperName [oper] "name"


参数:

[oper]

=, !=(其他运算符无效)


“name”(字符串)

要比较的名称。必须是双引号。


返回类型:

boolean int(1 或 0)


trigger1 = HelperName = "招架检测"


HitOverridden(命中覆盖)

在玩家通过 HitOverride 状态控制器覆盖默认 gethit 行为的帧期间返回 1。否则返回 0。


格式:

HitOverridden


参数:


返回类型:

boolean int(1 或 0)


trigger1 = HitOverridden


GameMode(游戏模式)

返回当前的游戏模式。


格式:

GameMode [oper] "name"


参数:

[oper]

=, !=(其他运算符无效)


“name”(字符串)

要比较的名称。必须是双引号。


返回类型:

boolean int(1 或 0)


trigger1 = GameMode = "街机"


下面的游戏模式,默认情况下检测:arcade, bonus, bossrush, demo, freebattle, netplaysurvivalcoop, netplayteamcoop, netplayversus, randomtest, Scorechallenge, survival, survivalcoop, teamcoop, timeattack, timechallenge, training, versus, versuScoop, vs100kumite, watch.。触发器也可用于检测通过外部模块添加的故事模式。


GetPlayerID(获取玩家ID)

返回具有指定playerno的玩家的 ID 。如果玩家不存在,则返回 0。


格式:

GetPlayerID(player_number)


参数:

player_number

表达式计算为玩家编号(int)(P1 团队成员使用从 1 开始的奇数值,P2 团队成员使用偶数值)


返回类型:

int(整型)


trigger1 = PlayerID(GetPlayerID(2)), MoveType =A


GroundAngle(地面角度,内容不详给的是三个问号???)

去做: ?与未记录的PlatformAngle弹丸参数相关。


格式:GroundAngle


参数:


返回类型:

float(浮点型)


trigger1 =GroundAngle!= 0


GuardBreak(破防)

如果角色处于保护中断状态(由GuardBreakSet sctrl分配),则返回 1 。


格式:

GuardBreak


参数:


返回类型:

boolean int(1 或 0)


trigger1 = !GuardBreak


GuardPoints(防守点数)

返回玩家拥有的守卫点数。


格式:

GuardPoints


参数:


返回类型:

int(整型)


trigger1 = GuardPoints = 0


GuardPointsMax(最大防守点数)

返回玩家可以拥有的最大防守点数。这通常与 LifeMax 相同(可在角色的 CNS部分调整)。


格式:

GuardPointsMax


参数:


返回类型:

int(整型)


trigger1 = GuardPoints < GuardPointsMax / 2


InCustomState(自定义状态)

如果角色处于自定义状态(角色被迫进入对手的 statedef),则返回 1。


格式:

InCustomState


参数:


返回类型:

boolean int(1 或 0)


trigger1 = InCustomState


InDialogue(对话)

在对话状态控制器发起的正在进行的对话期间返回 1 。


形式:

InDialogue


参数:


返回类型:

boolean int(1 或 0)


trigger1 = InDialogue


IsAsserted(被断言)

如果角色已指定 AssertSpecial 状态控制器标志断言,则返回 1。一次影响所有角色的断言标志不必由重定位角色直接断言即可检测。


格式:

IsAsserted(flag_name)


参数:

flag_name

要检查的 AssertSpecial 状态控制器标志的名称(字符串)。


返回类型:

boolean int(1 或 0)


trigger1 = IsAsserted(noBG)


IsHost(主机)

如果玩家是在线网络对战比赛的主机,则返回1。


格式:

IsHost


参数:


返回类型:

boolean int(1 或 0)


trigger1 = IsHost


LocalScale(局部尺度)

与屏幕纵横比和状态所有者坐标空间相关的角色比例。


格式:

LocalScale


参数:


返回类型:

float(浮点型)


trigger1 = floor(screenWidth * localScale) = 426


MajorVersion(人物版本)

如果 def 文件中的 mugenversion 为 1.0 或更高,则返回 1。


格式:主要

MajorVersion


参数:


返回类型:

boolean int(1 或 0)


trigger1 = !MajorVersion


Map

在括号中使用您要识别的Map名称。例如,具有以下Map的角色将返回 Map(age) 作为在角色 DEF 文件中设置的值或通过可以修改角色地图的各种状态控制器。如果未设置任何内容,则返回 0。


格式:

Map


参数:

name

Map名称


返回类型:

float(浮点型)


trigger 1 = Map(age)>= 18


Max最大值(数学)

接受两个参数,并返回最高值的数字。


格式:

Max(exp1,exp2)


参数:

exp1

表达式 1


exp2

表达式 2


返回类型:

float(浮点型)


trigger1 = Max(var(3), 10)


MemberNo(团队成员位置)

返回角色的团队成员位置。领队为1,合伙人接连获得编号。


格式:

MemberNo


参数:


返回类型:

int(整型)


trigger1 = MemberNo = 0


Min 最小值(数学)

接受两个参数,并返回最低值的数字。


格式:

Min(exp1,exp2)


参数:

exp1

表达式 1


exp2

表达式 2


返回类型:

float(浮点型)


trigger1 = Min(var(3), 10)


CounterCount (反击)

此触发器仅在玩家处于攻击状态时有效。MoveCountered 在攻击接触时返回 1,在 p1 中断 p2 攻击的确切帧(对于 1 帧为真,即使 P1 和 P2 都反击对方的行动)。接触后,P1 没有暂停的每个游戏节拍,MoveCountered 的返回值将增加 1。否则为 0。有关更多信息,请参阅 vanilla MoveContact 触发器的详细信息部分。


格式:

CounterCount


参数:


返回类型:

int(整型)


trigger1 =CounterCount= 1


P5Name、P6Name、P7Name、P8Name

与 P1Name-P4Name 相同,不同之处在于它们返回其他团队成员的姓名(如果存在)。如果没有这个的对手,那么无论指定什么名字都返回0。同样,无论指定什么名称, P5Name != "name" 都将返回 1。


格式:

PXName [oper] "name"


参数:

[oper]

=, !=(其他运算符无效)


“name”(字符串)

要比较的名称。必须是双引号。


返回类型:

boolean int(1 或 0)


trigger1 = P5Name = "金橘"


Pausetime (暂停时间)

返回活动暂停和/或超级暂停效果到期之前的时间(以持续时间较长者为准)。非 0 值仅在这些 sctrls 的 movetime 参数到期后返回(玩家不能再移动)。


通常状态在 Pause 和 SuperPause 期间不会运行,所以这个触发器只有在特殊的 statedef -4 中使用时才会起作用,它会忽略这些状态控制器。


格式:

Pausetime


参数:


返回类型:

int(整型)


trigger 1 =Pausetime = 0   ; 当玩家的移动没有被 Pause/SuperPause sctrls 暂停时触发。


Physics (物理)

返回玩家的物理类型。有关物理的更多详细信息,请参阅 CNS 文档中有关 StateDef 的部分。


格式:

Physics [oper]physics_type


参数:

[oper]

=, !=(其他运算符无效)


Physics_type(字符串)

S,C,A,N (站立,蹲伏,空中,无)


返回类型:

boolean int(1 或 0)


trigger 1 = Physics != A


PlayerNo(玩家编号)

返回角色的玩家编号。玩家 1 方使用奇数(1、3、5、7),玩家 2 方使用偶数(2、4、6、8)。Stage AttachedChar使用超出最大玩家范围 (9) 的数字。


格式:

PlayerNo


参数:


返回类型:

int(整型)


trigger1 = PlayerNo < 3


Rand(数学)

生成在给定范围(包括两个边界)之间均匀分布的伪随机数。它的功能贬低了状态控制器。


格式:

Rand(lower,upper)


参数:

lower

下限范围(包含)


upper


范围(包含)


返回类型:

int(整型)


trigger1 = Rand(var(3), 666) > 100


Rank (排名)

返回本轮队收集的排名积分总和(排名积分通过RankAdd状态控制器授予)


格式:

Rank


参数:


返回类型:

int(整型)


trigger1 = Rank > 100


RatioLevel (比率水平,不知道具体指啥没遇到过)

返回角色的比例等级:从 1 到 4,如果设置了等级,否则返回 0。


格式:

RatioLevel


参数:


返回类型:

int(整型)


trigger1 = RatioLevel > 0


ReceivedHits (总命中数次数)

在当前正在进行的组合中,返回对方团队对该角色的总命中数。与 GetHitVar(hitcount) 不同,它考虑了所有点击,包括由 HitAdd 应用的那些。只要对面的团队组合计数保持在 0 以上,此值就有效,否则也返回 0。


格式:

ReceivedHits


参数:


返回类型:

int(整型)


trigger1 = ReceivedHits > 10


ReceivedDamage( 受到的总伤害)

在当前正在进行的组合中,返回对方团队对该角色造成的总伤害。只要对面的团队组合计数保持在 0 以上,此值就有效,否则也返回 0。


格式:

ReceivedDamage


参数:


返回类型:

int(整型)


trigger1 = ReceivedDamage > (LifeMax / 10)


RedLife (红色生命值)

返回玩家拥有的红色生命值。


格式:

RedLife


参数:


返回类型:

int(整型)


trigger1 = RedLife = 0


Round(数学)

返回指定的舍入值(小数点后的位数)。也可以是负数或零。


格式:

Round(val,precision)


参数:

val

表达式评估为要舍入的值。


precision

表达式计算四舍五入的十进制位数。如果精度为正,则在小数点后进行四舍五入。如果精度为负,则四舍五入将发生在小数点之前。如果精度的绝对值大于等于位数,则四舍五入的结果等于0。


返回类型:

float(浮点型)


trigger1 = Round(var(3), -2) > 100


RoundType 

在最后一轮返回 3(无论哪支球队获胜,比赛都将结束),如果对方获胜则比赛结束则返回 2,或者如果该队获胜则比赛结束则返回 1。否则返回 0。


格式:

RoundType


参数:


返回类型:

int(整型)


trigger1 = RoundType != 0


Score (分数)

返回所有团队成员在该回合中获得的分数。


格式:

Score


参数:


返回类型:

float(浮点型)


trigger1 = Score > 10000


ScoreTotal(总分)

返回总分值。考虑到自该游戏模式开始以来的所有团队成员、之前的回合和之前的比赛。


格式:

ScoreTotal


参数:


返回类型:

float(浮点型)


trigger1 = ScoreTotal > 1000000


SelfStatenoExist (自我状态不存在)

如果存在具有指定编号的 statedef,则返回 1。否则返回 0。在括号中使用您要识别的 statedef 编号。


格式:

SelfStatenoExist(exprn)


参数:

exprn 计算

结果为状态数 (int) 的表达式。


返回类型:

boolean int(1 或 0)


trigger1 = !SelfStatenoExist(200)   ; 如果玩家缺少状态 200,则触发。


StageConst (舞台常量)

返回阶段常量之一的值。阶段常量变量可以在阶段的 DEF [Constants]部分下设置。


格式:

StageConst(param_name)


参数:

param_name

要检查的常量的名称(字符串)。


返回类型:

float(浮点型)


trigger1 = StageConst(WaterGround) = 1


StageBackEdge (身后舞台边缘的距离)

返回到您身后舞台边缘的距离。


格式:

StageBackEdge


参数:


返回类型:

int(整型)


trigger1 = StageBackEdge < 100


StageFrontEdge (前舞台边缘的距离)

返回到您面前舞台边缘的距离。


格式:

StageFrontEdge


参数:


返回类型:

int(整型)


trigger1 = StageFrontEdge < 100


Stagetime (舞台时间)

返回自上次后台重置以来的滴答数。此触发器返回的值直接对应于舞台背景更新的次数(考虑暂停、超级暂停以及舞台参数),这允许将附加角色操作可靠地同步到舞台当前显示的内容。


格式:

Stagetime 


参数:


返回类型:

int(整型)


trigger1 = Stagetime > 600


Standby

如果角色处于待机状态(由TagOut sctrl分配),则返回 1 。


格式:

Standby


参数:


返回类型:

boolean int(1 或 0)


trigger1 = !Standby


TeamLeader(队长) 

返回被视为团队领导者的角色的玩家编号。在特定回合(单人、回合)中仅控制一名玩家的模式下,它将是 1 或 2,具体取决于球队方面。在simul和tag模式下,默认情况下,团队领导是第一个成员(再次是1 或2),但也可以通过可选的TagIn sctrl领导参数动态调整谁被认为是领导者。


手动交换领导者更改生命条元素分配 - 领导者始终使用 P1(或 P2,取决于团队方面)生命条元素,剩余玩家位置相应地按玩家升序移动。


形式:

TeamLeader 


参数:


返回类型:

int(整型)


trigger1 = TeamLeader = PlayerNo


TeamSize (团队规模)

返回角色的团队大小(对于回合模式,它返回以前无法获得的信息,对于其他团队模式,返回值相当于使用)


格式:

TeamSize


参数:


返回类型:

int(整型)


trigger1 =TeamSize= 4


TimeElapsed (时间流逝)

返回自战斗开始以来的时钟滴答量(如果时间被禁用,则为 0)。此触发器返回的值对应于生命条计时器(仅在 RoundState = 2 期间滴答)


格式:

TimeElapsed


参数:


返回类型:

int(整型)


trigger1 = TimeElapsed > 600


TimeRemaining  (剩余时间)

返回时间结束前的时钟滴答量(如果时间被禁用,则为 -1)。此触发器返回的值对应于生命条计时器(仅在 RoundState = 2 期间滴答)


格式:

TimeRemaining


参数:


返回类型:

int(整型)


trigger 1 =TimeRemaining  > 600


TimeTotal (总时间)

返回到目前为止已经过去的时钟tick总数。考虑到自此游戏模式开始以来的前几轮和比赛。


格式:

TimeTotal


参数:


返回类型:

int(整型)


trigger1 =TimeTotal > 5940


WinHyper (超级攻击胜利)

如果玩家(或玩家的团队,在团队模式下)赢得了回合,最后一击是超级攻击,则返回真。


格式:

WinHyper


参数:


返回类型:

boolean int(1 或 0)


trigger 1 = !WinHyper


WinSpecial (特殊攻击胜利)

如果玩家(或玩家的团队,在团队模式下)赢得了回合,最后一击是特殊攻击,则返回真。


格式:

WinSpecial


参数:


返回类型:

boolean int(1 或 0)


trigger1 = !WinSpecial


触发器的变化

Const(常量)

返回玩家常量之一的值。可以在字符的 CNS [Constants]部分下设置额外的浮点型常量变量。该引擎还附带用于为所有字符分配默认常量变量的文件。


提示:通过用 Const 触发器替换令人困惑的数字(如助手 ID、状态等),可以使用新的常量变量使您的代码更易于阅读。


trigger1 = Ishelper(Const(MyNamedHelper))


GetHitVar(属性)获取命中变量

属性

返回最后一个 HitDef分配的数字表示。(int)


可能的值:


站立普通攻击 = 65


蹲伏普通攻击 = 66


空中普通攻击 = 68


站立正常投掷 = 129


蹲伏正常投掷 = 130


空中正常投掷 = 132


站立普通飞行道具 = 257


蹲伏普通飞行道具 = 258


空中普通飞行道具 = 260


站立超级攻击 = 513


蹲伏超级攻击 = 514


空中超级攻击 = 516


站立超级投 = 1025


蹲下超级投 = 1026


空中超级投 = 1028


站立超级飞行道具 = 2049


蹲下超级飞行道具 = 2050


空中超级飞行道具 = 2052


站立超级攻击 = 4097


蹲伏超级攻击 = 4098


空中超级攻击 = 4100


站立超级投 = 8193


蹲伏超级投 = 8194


空中超级投 = 8196


站立超级飞行道具 = 16385


蹲下超级飞行道具 = 16386


空中超级飞行道具 = 16388


提示:所有这些值都作为常量变量存在,可以与 Const 触发器一起使用。


dizzypoints眩晕点

返回最后一个 HitDef值。(int)


guardpoints守卫点

返回最后一个 HitDef值。(int)


ID

返回最后一个应用 HitDef 的攻击者的 ID。(int)


PlayerNo 玩家编号

返回PlayerNo施加HitDef最后攻击者。(int)


redlife 红色生命值

返回最后一个 HitDef 的值。(int)


Score分数

返回最后一个 HitDef 的值。(float)


RoundState = -1;RoundState(局状态)

RoundState(局状态) 在胜利、胜利/结果和继续屏幕期间返回 -1。


TeamMode = Tag

现在 TeamMode 也可以返回“Tag”了。


trigger1 = TeamMode = Tag

暂无评论
根据相关规定,发布评论前必须绑定手机前往绑定
你,确定要这么做吗?
正在处理中...