/givetemplate
基本信息
| 属性 | 值 |
|---|---|
| 指令名 | givetemplate(无 /gendustry 前缀) |
| 权限等级 | 2 |
| 注册时机 | FMLServerStartingEvent,Gendustry.scala:166 |
| 用法(英文) | /givetemplate <uid>(gendustry.givetemplate.usage,en_US.lang:211) |
| 参数个数 | 恰好 1 |
| Tab 补全 | 有(addTabCompletionOptions,第 1 参数补全合法物种 UID) |
功能
凭空发放一张指定物种的 Gene Template。
流程(CommandGiveTemplate.processCommand):
- 参数个数 ≠ 1 → 抛
WrongUsageException getCommandSenderAsPlayer—— 只能由玩家执行,控制台会失败- 校验
uid是否在validSpecies列表内,不在则抛WrongUsageException GeneticsHelper.templateFromSpeciesUID(uid)构造模板player.entityDropItem(stack, 0)掉在玩家脚下,delayBeforeCanPickup = 0(无拾取延迟)- 回复
gendustry.givetemplate.success(含 uid 与玩家名)
validSpecies 是 lazy val,从 AlleleManager.alleleRegistry.getRegisteredAlleles 过滤出 IAlleleSpecies 中 getRoot.getTemplate(getUID) != null 的项,取其 UID 列表。与 Gene Template 的创造标签页用的是同一个筛选条件,因此本指令能发出的模板集合 = 创造标签页列出的模板集合。
数值
| 数值名 | 值 |
|---|---|
| 权限等级 | 2(OP) |
| 产出 | 1 张模板(entityDropItem(stack, 0) 中 offsetY = 0) |
| 拾取延迟 | 0 tick |
与 /givesample 的区别
| 指令 | 产出 | 有效参数 |
|---|---|---|
/givetemplate |
模板(空模板,只有物种 UID 无样本) | 1 个:物种 UID |
| /givesample | 样本(含 1 条具体等位基因) | 3 个:物种根 UID + 染色体名 + 等位基因 UID |
发出的模板是空的 —— 不含任何样本。要造出可被 Genetic Replicator 使用的完整模板,仍需配合 Genetic Sampler 与工作台合成逐步填满。
相关条目
- /givesample - 姊妹指令
- /dumpalleles - 第三条指令
- Gene Template - 发放的物品