Stargate Chevron Upgrade

基本信息

属性 值
注册名 gcewing_sg:sgChevronUpgrade
英文名 Stargate Chevron Upgrade(en_US.lang:16)
中文名 星门导标升级(zh_CN.lang:16)
类 gcewing.sg.items.SGChevronUpgradeItem(items/SGChevronUpgradeItem.java:23)

功能

右键任意 ISGBlock(底座或外环段)即可把导标升级装到整座星门上。物品的 onItemUse 取被点方块,把它解析成 SGBaseTE 后调用 applyChevronUpgrade(items/SGChevronUpgradeItem.java:26-35)。因此对着外环任何一段使用同样有效——安装状态存在底座上。

applyChevronUpgrade 在服务端检查"未安装过"且"物品数量 > 0"后置位 hasChevronUpgrade 并扣除 1 个(tileentities/SGBaseTE.java:362-369)。它总是返回 true,即使已安装过或服务端拒绝扣减——客户端因此会播放一次使用动作,但不会重复消耗。

安装后底座对外的导标数从 7 变为 9(tileentities/SGBaseTE.java:381-384),地址的每符号角度随之从 360/36 固定值改为按导标布局查表,见 Stargate Base 与 SGBaseTE。

数值

项目 值 来源
安装前导标数 7 tileentities/SGBaseTE.java:381-384
安装后导标数 9 tileentities/SGBaseTE.java:381-384
每符号角度(7 导标) 360.0 / 36 = 10° tileentities/SGBaseTE.java:99
每符号角度(9 导标) 查表 45° / 36° / 33° / 30° tileentities/SGBaseTE.java:123-127
固定角度(关闭 variableChevronPositions) 40° tileentities/SGBaseTE.java:122

导标角度表按"底座伪装等级"分三档:7 导标时为 45/45/40 度,9 导标时为 36/33/30 度(tileentities/SGBaseTE.java:123-127)。底座伪装等级由 GUI 中的伪装槽内容决定。

交互

  • 右键星门任意方块:安装(若尚未安装)。已安装时物品不会被消耗。
  • 破坏底座:dropUpgrades 会把升级物作为实体掉回世界,不会丢失(blocks/SGBaseBlock.java:223-229)。
  • 沙漠金字塔遗迹:FeatureUnderDesertPyramid 在生成时会直接把 hasChevronUpgrade 置为 true(worldgen/FeatureUnderDesertPyramid.java:107),这是世界里免费获得该升级的途径。

合成配方

布局 材料
g g / pNp / r r g=荧石粉,p=末影珍珠,N=ingotNaquadahAlloy,r=红石

来源:SGCraft.java:267-280。

相关条目