插件手册:betonquest:任务目标

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
插件手册:betonquest:任务目标 [2018/06/19 17:19]
JohnHo [踩踏压力板: step]
插件手册:betonquest:任务目标 [2021/09/24 13:12] (当前版本)
duangfafa
行 1: 行 1:
 ====== 任务目标列表 Objectives List ====== ====== 任务目标列表 Objectives List ======
  
-(版本:2017-01-12 翻译:kjiang、JohnHo [[https://github.com/Co0sh/BetonQuest/wiki/Objectives-List/f0d1258128e90c5874cababad45af7d40768ca13|原文链接]])+(版本:2017-01-12 翻译:kjiang、JohnHo、Crysta11ize [[https://github.com/Co0sh/BetonQuest/wiki/Objectives-List/f0d1258128e90c5874cababad45af7d40768ca13|原文链接]])
  
 **//kjiang译注:所有“任务目标objective”都可以在参数里加入''events:'',用来指明会在玩家完成这个任务目标的时候自动触发的事件;以及''conditions:''用来规定需要达成的条件。//** **//kjiang译注:所有“任务目标objective”都可以在参数里加入''events:'',用来指明会在玩家完成这个任务目标的时候自动触发的事件;以及''conditions:''用来规定需要达成的条件。//**
行 28: 行 28:
  
 **例子**: ''mobkill ZOMBIE 5 name:Uber_Zombie conditions:night'' **例子**: ''mobkill ZOMBIE 5 name:Uber_Zombie conditions:night''
 +
 +===== 击杀怪物/MM怪: mmobkill =====
 +
 +玩家需要击杀指定数量MM怪。第一个参数必须是生物的内部名称(在你的mm怪物配置列表里)。您可以选择添加''amount''参数以指定需要击杀的怪物数量。也可以添加可选参数''minLevel''并''maxLevel''设置需要击杀的怪物等级。还可以添加一个可选''neutralDeathRadiusAllPlayers''参数, 范围参数来让范围内所有玩家达成该目标。如果希望在目标实现时向玩家发送通知,则可以添加''notify''关键字。
 +
 +**例子**: ''mmobkill SkeletalKnight amount:2 events:reward''
  
 ===== 动作: action ===== ===== 动作: action =====
行 57: 行 63:
  
 **例子**: ''smelt IRON_INGOT 5 events:reward'' **例子**: ''smelt IRON_INGOT 5 events:reward''
 +
 +===== 拾取物品: pickup =====
 +
 +要完成此目标,您需要拾取指定数量的物品。第一个参数必须是 中定义的项目的内部名称''items.yml''。这也可以是多个项目的逗号分隔列表。您可以选择添加''amount:''参数来指定玩家需要拾取的这些物品的数量。这个数量是一个总数量,它不计算每个单独的物品。您可以使用''notify''关键字在玩家每次推进目标时显示一条消息,可选地在冒号后显示通知间隔。
 +
 +您还可以添加''notify''关键字以显示还有多少物品需要取件。
 +
 +该目标具有三个属性:''amount''、''left''和''total''。''amount''是已经拾取的物品数量, ''left''是仍需要拾取的物品数量, ''total''是最初需要拾取的物品数量。
 +
 +**例子** ''pickup emerald amount:3 events:reward notify pickup emerald,diamond amount:6 events:reward notify''
 +
 ===== 驯服: tame ===== ===== 驯服: tame =====
  
行 65: 行 82:
 **例子**: ''tame WOLF 2 events:wolfs_tamed'' **例子**: ''tame WOLF 2 events:wolfs_tamed''
  
 +===== 骑乘实体: ride =====
 +
 +这个目标可以通过骑乘[[https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html|指定实体]]来完成 。 ''any''用来匹配任何实体。
 +
 +**例子** ''ride horse ride any''
 ===== 延迟: delay ===== ===== 延迟: delay =====
  
行 79: 行 101:
 **例子**: ''arrow 100.5;200.5;300.5;world 1.1 events:reward conditions:correct_player_position'' **例子**: ''arrow 100.5;200.5;300.5;world 1.1 events:reward conditions:correct_player_position''
  
 +===== 跳!: jump =====
 +
 +要完成这个目标,玩家必须跳跃。唯一的达成要求是数量。您可以使用''notify''关键字在玩家每次推进目标时显示一条消息,可选地在冒号后显示通知间隔。
 +
 +该目标具有三个属性:''amount''、''left''和''total''。''amount''是已经完成的跳跃量, ''left''是仍然需要的跳跃量, ''total''是最初需要的跳跃量。
 +
 +**例子** ''jump 15 events:legExerciseDone''
 ===== 经验: experience ===== ===== 经验: experience =====
  
行 95: 行 124:
 为了完成这个目标, 玩家只需离开服务器。请记住, 玩家下线1/20秒后,在此处运行 ''floder'' 事件将使其以 ''persistent'' "持久 " 模式运行, 因为玩家在下一个刻度线上处于离线状态。 为了完成这个目标, 玩家只需离开服务器。请记住, 玩家下线1/20秒后,在此处运行 ''floder'' 事件将使其以 ''persistent'' "持久 " 模式运行, 因为玩家在下一个刻度线上处于离线状态。
  
-**例子**: `logout events:delete_objective+**例子**: ''logout events:delete_objective''
 ===== 输入密码: password ===== ===== 输入密码: password =====
  
-此目标要求玩家在聊天栏键入密码。第一个参数是密码。所有 ' _ ' 字符被替换为空格。它用 [正则表达式] 进行了检查(可参见https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html)。 (如果您的密码将是''^beton.*beton$'',目标将接受所有以 'beton' 字开头和结尾的密码 ("^" 代表字符串的开头, '. ' 表示任何字符, ' * ' 允许以前的字符 (在本例中为任何) 重复任意次数, "$" 表示字符串的末尾), 但您也可以使用类似'beton'之类的东西-它会起作用)。如果您希望忽略字母大小写, 可以添加可选的''ignoreCase''参数。为此, 您的正则表达式需要使用小写字母。玩家回答是需要键入 (用他的语言, 可在''messages. yml''配置) ' 密码: 这是玩家的猜测 '。如果失败, 则不会在聊天窗口中显示该消息。+此目标要求玩家在聊天栏键入密码。第一个参数是密码。所有 ' _ ' 字符被替换为空格。它用 [正则表达式] 进行了检查(可参见[[https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html|正则表达式]])。 (如果您的密码将是''^beton.*beton$'',目标将接受所有以 'beton' 字开头和结尾的密码 ("^" 代表字符串的开头, '. ' 表示任何字符, ' * ' 允许以前的字符 (在本例中为任何) 重复任意次数, "$" 表示字符串的末尾), 但您也可以使用类似'beton'之类的东西-它会起作用)。如果您希望忽略字母大小写, 可以添加可选的''ignoreCase''参数。为此, 您的正则表达式需要使用小写字母。玩家回答是需要键入 (用他的语言, 可在''messages. yml''配置) ' 密码: 这是玩家的猜测 '。如果失败, 则不会在聊天窗口中显示该消息。
  
-**例子**: `password beton ignoreCase events:message,reward`+**例子**: ''password beton ignoreCase events:message,reward''
  
 ===== 钓鱼: fish ===== ===== 钓鱼: fish =====
行 109: 行 137:
 钓鱼Fishing和宰杀生物具有一样的properties属性。  钓鱼Fishing和宰杀生物具有一样的properties属性。 
  
-**例子**: `fish raw_fish:1 5 notify events:tag_fish_caught+**例子**: ''fish raw_fish:1 5 notify events:tag_fish_caught''
 ===== 剪羊毛: shear ===== ===== 剪羊毛: shear =====
  
行 117: 行 144:
 剪羊毛与宰杀生物具有一样的properties属性。 剪羊毛与宰杀生物具有一样的properties属性。
  
-**例子**: `shear 1 name:Bob color:black`+**例子**: ''shear 1 name:Bob color:black''
  
 ===== 附魔物品: enchant ===== ===== 附魔物品: enchant =====
行 123: 行 150:
 达成此目标需要玩家对指定物品进行附魔达到指定功能。第一个参数是物品名称, 该名称需在''items. yml''中有定义。第二个是附魔的功能''enchantment''和以'':''隔开的附魔级别(附魔功能可参见https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html) 。 达成此目标需要玩家对指定物品进行附魔达到指定功能。第一个参数是物品名称, 该名称需在''items. yml''中有定义。第二个是附魔的功能''enchantment''和以'':''隔开的附魔级别(附魔功能可参见https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html) 。
  
-**例子**: `enchant sword damage_all:1 events:reward`'':''+**例子**: ''enchant sword damage_all:1 events:reward`''
  
 ===== 往箱子放入物品: chestput ===== ===== 往箱子放入物品: chestput =====
行 129: 行 156:
 达成此目标要求玩家把指定的物品放在指定的箱子里。第一个参数是箱子的位置, 第二个参数是一个物品列表(物品须来自''items yml''文件), 物品间用逗号隔开。您还可以在冒号后添加物品数量。在完成目标后, 这些物品将被删除, 除非您添加可选''items-stay''参数。 达成此目标要求玩家把指定的物品放在指定的箱子里。第一个参数是箱子的位置, 第二个参数是一个物品列表(物品须来自''items yml''文件), 物品间用逗号隔开。您还可以在冒号后添加物品数量。在完成目标后, 这些物品将被删除, 除非您添加可选''items-stay''参数。
  
-**例子**: `chestput 100;200;300;world emerald:5,sword events:tag,message`+**例子**: ''chestput 100;200;300;world emerald:5,sword events:tag,message''
  
 ===== 酿造: potion ===== ===== 酿造: potion =====
行 140: 行 167:
 Potion objective has `amount` and `left:` properties. Potion objective has `amount` and `left:` properties.
  
-**例子**: `potion weird_concoction 4 event:add_tag`+**例子**: ''potion weird_concoction 4 event:add_tag''
  
 ===== 吃/喝: consume ===== ===== 吃/喝: consume =====
行 147: 行 174:
  
  
-**例子**: `consume tawny_owl events:faster_endurance_regen`+**例子**: ''consume tawny_owl events:faster_endurance_regen''
  
 ===== 变量: variable ===== ===== 变量: variable =====
  
-这个目标是特殊的任务目标,您无法完成它, 它也将忽略定义的事件和条件。你要做的就是开始这个目标。目标活动期间, 玩家在聊天中键入的所有内容 (并匹配特殊模式) 将成为一个变量。模式是 "变量名: 值"(''key: value'')。因此, 如果键入该值, 它将创建一个名为“变量名”''key''的变量, 它将解析为"值"''value''字符串。这种不是全局变量, 您可以将它们作为目标属性访问。假设您在''objectives yml''文件中定义了此目标为''var''。您可以在任何对话、事件或条件中访问变量''% objective.var.key%''。在这个例子里, 它将解析为"值"''value''。玩家可以键入其他内容, 变量将更改其值。变量是每个玩家个人的, 所以不同玩家的相同' 变量名 ' 的变量值也不一定相同, 这取决于玩家自己在聊天中键入的内容。如果你愿意,你想要多少变量就能有多少变量。要删除这个目标,只有使用''objective delete''事件,没有其他方式。+这个目标是特殊的任务目标,您无法完成它, 它也将忽略定义的事件和条件。你要做的就是开始这个目标。目标活动期间, 玩家在聊天中键入的所有内容 (并匹配特殊模式) 将成为一个变量。模式是 "变量名: 值"(''key: value'')。因此, 如果键入该值, 它将创建一个名为“变量名”''key''的变量, 它将解析为"值"''value''字符串。这种不是全局变量, 您可以将它们作为目标属性访问。假设您在''objectives yml''文件中定义了此目标为''var''。您可以在任何对话、事件或条件中访问变量''%objective.var.key%''。在这个例子里, 它将解析为"值"''value''。玩家可以键入其他内容, 变量将更改其值。变量是每个玩家个人的, 所以不同玩家的相同' 变量名 ' 的变量值也不一定相同, 这取决于玩家自己在聊天中键入的内容。如果你愿意,你想要多少变量就能有多少变量。要删除这个目标,只有使用''objective delete''事件,没有其他方式。
  
 你还可以使用''variable''事件改变目标中的变量数值。有个可选的参数''no-chat'',如果使用这个参数,玩家在对话栏输入的东西将不改变玩家变量的值。 你还可以使用''variable''事件改变目标中的变量数值。有个可选的参数''no-chat'',如果使用这个参数,玩家在对话栏输入的东西将不改变玩家变量的值。
  
-**例子**: `variable`+**例子**: ''variable key: value''
  
 ===== 杀死玩家: kill ===== ===== 杀死玩家: kill =====
行 161: 行 188:
 要达成此目标, 玩家需要杀死另一个玩家。第一个参数是要杀死的玩家数量。您还可以指定其他参数: ''name'' 后跟需要杀死的玩家名。''required''后面跟用逗号','分割的条件列表,''notify''参数将在玩家被击杀时显示提示。 要达成此目标, 玩家需要杀死另一个玩家。第一个参数是要杀死的玩家数量。您还可以指定其他参数: ''name'' 后跟需要杀死的玩家名。''required''后面跟用逗号','分割的条件列表,''notify''参数将在玩家被击杀时显示提示。
  
-**例子**: `kill 5 required:team_B`+**例子**: ''kill 5 required:team_B''
  
 ===== 投喂动物: breed ===== ===== 投喂动物: breed =====
行 169: 行 196:
 要达成此目标,玩家需要喂投指定类型的动物。第一个参数是动物类型 (动物类型可参见https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html) ,第二个是喂投数量 (正整数)。您可以添加通知参数''notify'', 以便在每次喂投动物时显示带有剩余数量的邮件。当您可以指定任何实体时, 只有对象为可喂投的动物,目标才会达成。 要达成此目标,玩家需要喂投指定类型的动物。第一个参数是动物类型 (动物类型可参见https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html) ,第二个是喂投数量 (正整数)。您可以添加通知参数''notify'', 以便在每次喂投动物时显示带有剩余数量的邮件。当您可以指定任何实体时, 只有对象为可喂投的动物,目标才会达成。
  
-**例子**: `breed cow 10 notify events:reward`+**例子**: ''breed cow 10 notify events:reward''
  
  • 插件手册/betonquest/任务目标.1529399998.txt.gz
  • 最后更改: 2018/06/19 17:19
  • JohnHo