• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

MythicMobs/Vaributes

来自Minecraft插件百科
1240798440讨论 | 贡献2021年7月18日 (日) 17:32的版本 变量条件栗子
跳转至: 导航搜索

变量(Varibute)MM4.6.5+

概览

  • 编辑者:鲲鲲(鲨鲨)、二白(栗Message)中
  • 付费版才可以将变量应有到非消息类技能(栗Message)中
  • 设置变量时施法者为玩家,或施法者(怪物)读取玩家时,目标玩家必须是生存/冒险模式.(MM部分目标器会过滤创造/观察模式)
  • 想将所创变量(栗<caster.damage>)运用到其他地方,需改为这种格式: <caster.var.damage>
  • 变量计算(例如damage{a='2 * <caster.var.damage>'} @self),运算符号必须和两个因数(可全为变量名,也可一个变量一个数字)之间隔着一个空格
  • 同时,能使用()和[]进行"复杂"的计算,计算只能用在damage/damagepercent、heal/healpercnet、setlevel,其它技能计算均无效.
  • 详见底部的"随着怪物剩余血量百分比的减少增加伤害"李子,另外,100%=100,不等于1
  • 4.7.2+,若读取生物名称的变量没读取到生物名称,会提示生物种类
  • 变量用于决定返还一个特定的数值并用于技能之上,也可单纯用于显示颜色或特殊符号

栗子显示被干掉的生物名字 被骑士 显示使用技能的玩家的名字 使用技能斩杀了

Skills:
  - message{m="&b<mob.name>&r 被骑士 &a<trigger.name>&r 使用技能斩杀了"} @PIR{r=20} ~onDeath

技能变量

有关威胁度の变量必须启用威胁表,否则值为Unknow

施法者变量 描述
以下变量返还施法者下的相关数值
<caster.name>就会返还离使用此技能的生物名字
<caster.damage> 返还施法者已损生命
<caster.hp> 返还施法者当前生命
<caster.mhp> 返还施法者最大生命
<caster.php> 以百分比形式返还施法者的当前生命,100%=100
<caster.thp> 返还施法者的最大生命
<caster.tt.top> 返还对施法者威胁度最高的伤害源名字
<caster.level> 返还施法者的等级
<caster.l.w> 返还施法者所处世界名
<caster.l.x> 返还施法者x轴坐标
<caster.l.x.#> 返还施法者x轴坐标(加上#表随机偏差)
<caster.l.y> 返还施法者y轴坐标
<caster.l.y.#> 返还施法者y轴坐标(加上#表随机偏差)
<caster.l.z> 返还施法者z轴坐标
<caster.l.z.#> 返还施法者z轴坐标(加上#表随机偏差)
<caster.owner.name> 返还施法者的主人名称
<caster.owner.uuid> 返还施法者主人的UUID
<caster.stance> 返还施法者所拥有的姿势名
<caster.threat> 返还施法者的威胁度
变量占位符(MM4.6+) 描述
以下变量返还变量的相关数值
<caster.var.变量名> 返还指定变量的数值
<skill.var.变量名> 返还当前技能内指定变量名的变量数值
<skill.var.damage-amount> 受伤时返还自身所受伤害,需onDamaged触发器
<skill.var.damage-type> 受伤时返还自身所受伤害类型,需onDamaged触发器,可为Aura(光环)etc(特定)mechanic(技能)
生物变量 描述
若没有标明生物名字,以下变量或许会不能运行
<mob.uuid> 返还生物的UUID
<mob.level> 返还生物的等级
<mob.name> 返还生物的名字
<mob.hp> 返还生物的当前血量值
<mob.mhp> 返还生物的最大(max)血量值
<mob.php> 返还生物的当前血量值并以百分比形式
<mob.thp> 返还生物的最大(full number)血量值
<mob.tt.top> 返还对生物威胁度最高的伤害源名字
<mob.l.w> 返还生物现在所在世界的名字
<mob.l.x> 返还生物所处x轴坐标
<mob.l.y> 返还生物所处y轴坐标
<mob.l.z> 返还生物所处z轴坐标
<mob.stance> 返还生物当前的状态
<mob.owner.name> 返还狼的主人的名字
<mob.owner.uuid> 返还狼的主人的UUID
目标变量 描述
以下变量返还目标选择器下的相关数值
<target.name>+@NearstPlayer就会返还离使用此技能的生物的最近玩家的名字
<target.damage> 返还目标已损生命
<target.uuid> 返还目标的UUID
<target.name> 返还目标的名字
<target.hp> 返还目标的当前血量值
<target.threat> 返还目标的威胁度(似乎无效)
<target.l.w> 返还目标现在所在世界的名字
<target.l.x> 返还目标现在的x轴坐标
<target.l.y> 返还目标现在的y轴坐标
<target.l.z> 返还目标现在的z轴坐标
触发变量 描述
<trigger.uuid> 返还技能触发者的UUID
<trigger.name> 返还技能触发者的名字
<trigger.hp> 返还技能触发者的当前血量值
<trigger.threat> 返还技能触发者的威胁度(似乎无效)
<trigger.l.w> 返还技能触发者现在所在世界的名字
<trigger.l.x> 返还技能触发者现在的x轴坐标
<trigger.l.y> 返还技能触发者现在的y轴坐标
<trigger.l.z> 返还技能触发者现在的z轴坐标

关于设置其它插件变量

其他变量

变量 描述
<drops.xp> 返还Heroes或SkillAPI插件的经验掉落值
<drops.money> 返还Vault插件的金钱掉落值

特殊变量

变量 描述
<random.min-max> 返还一个定义域内的随机数值
<mob.score.记分板名> 返还生物记分板指定记分板下的分数
<target.score.记分板名> 返还目标指定记分板下的分数
<trigger.score.记分板名> 返还施法者指定记分板下的分数
<global.score.记分板名> 返还指定记分板下的总分
<score.objective.记分板名> 返还指定记分板下dummyname的分数

变量技能/条件相关

目标类技能:SetVariable修改项

标签 描述 默认数值
value 要设置为的数值,可为其他插件的变量(例如:%sx_damage%)
score 变量运用的位置 skill
type 比较复杂,专门罗列出来讲. Integer(整数)
variable(var) 可自定义设置的变量值,但前缀必须是caster/trigger/skill/target 任意一种.

变量条件

条件类型 描述
VariableIsSet 变量是否为此技能设置的
VariableInRange 检测变量是否在特定的数值范围
VariableEquals 检测变量的数值

变量类型

类型 描述
String 字符串:支持单词,句子,但不支持对其进行计算
Integer 整型:支持整数,也支持读取值为数字的变量(不限类型),还支持计算
Float 浮点型:支持带小数点的数字,也支持读取值为数字的变量(不限类型),还支持计算

变量栗子

栗子1:玩家攻击时会触发攻击属性百分比伤害
玩家攻击时会触发攻击属性百分比伤害:
Skills:
  - skill:玩家攻击属性百分比伤害 ~onAttack

技能设置:

Skills:
  - setvariable{type=STRING;var=caster.damage;value="%sx_damage%"} @self
  - message{m="&a你对敌方造成了 <caster.var.damage> 点伤害."} @self
  - damage{a=<caster.var.sm>*2} @target

注释:玩家在攻击时会给自己设置一个变量,并且通过message提示自己这个数值的大小(也可用于制作者检测变量设置是否成功),并对怪物造成该数值翻倍的伤害.

栗子2:全额反伤——全额反伤的文本显示

变量条件栗子

栗子
注释:若伤害等于5,鲲鲲才不会激活反伤效果
激活反伤:
  TargetConditions:
  - variableEquals{var=caster.dm;value="5"} false
  Skills:
  - sudoskill{s=激活反伤} @T

注释:若伤害大于5,鲲鲲才不会激活反伤效果

激活反伤:
  TargetConditions:
  - variableInRange{var=caster.dm;value=>5} false
  Skills:
  - sudoskill{s=激活反伤} @T

注释:鲲鲲受伤时会让目标受到1+1* (100-剩余生命百分比)点伤害,剩余生命百分比最高为100,百分比是整数而不是小数!

鲲鲲:
  Type: Zombie
    Skills::
  - skill:测试增伤} @self ~onTimer:1
  - skill:测试增伤提示} @self ~onDamaged
测试增伤:
    Skills::
  - setvariable{type=STRING;var=caster.dm;value="<caster.php>"} @self
测试增伤提示:
    Skills::
  - damage{a='1 + 1 * (100 - <caster.var.dm>) '} @EIR{r=10}
  - message{m="&c怪物生命为 <caster.var.dm> "} @self