Thrown Pick(飞镐)

事实基准:/Users/evlos/a/mirror/twilightforest(minecraftVersion = 1.7.10)逐行读源码。

基本信息

属性 值 来源
注册实体名 TwilightForest:tfthrownpick(全小写) TwilightForestMod.java:857-864
实体 ID 常量 idVehicleSpawnThrownPick = 13 TwilightForestMod.java:189
注册形式 EntityRegistry.registerModEntity 直调(不经 TFCreatures)→ 无刷怪蛋 TwilightForestMod.java:857
追踪距离 / 更新频率 80 / 3,sendsVelocityUpdates = true 同上 :861-863
类 twilightforest.entity.boss.EntityTFThrownPick(77 行) entity/boss/EntityTFThrownPick.java:9
父类 net.minecraft.entity.projectile.EntityThrowable 同上 :9
尺寸 setSize(0.5F, 0.5F)(两个构造函数都设) 同上 :15、:20
所属结构 不属于任何结构;只由 TileEntityTFKnightPhantomsSpawner 生成的幻影骑士投掷。TFFeature 的刷怪表里没有幻影骑士 EntityTFKnightPhantom.java:454、TileEntityTFKnightPhantomsSpawner.java:46

数值

属性 值 来源
直接伤害 PROJECTILE_DAMAGE 3 EntityTFThrownPick.java:11
初速 func_70182_d 1.0F 同上 :67-69
重力 getGravityVelocity 0.015F 同上 :74-76
碰撞边界 getCollisionBorderSize 1.0F 同上 :59-62
撞击粒子 8 个 largesmoke 同上 :39-41
单次齐射数量 8 把,角度 i × π / 4(45° 均分一圈) EntityTFKnightPhantom.java:443-444
发射速度 / 精度 0.5F / 1.0F 同上 :458-460
发射高度 height × 0.82,水平偏移 1.0 同上 :446-448
发射频率 ticksProgress % 4 == 0 同上 :330-332
追踪距离 / 更新频率 80 / 3 TwilightForestMod.java:861-863

与同门 Thrown Axe(飞斧) 相比:伤害减半(3 vs 6)、初速翻 10 倍(1.0 vs 0.1)、 重力大 15 倍,因此飞斧是低抛物线近身弹,飞镐是高速平射弹幕。

maxHealth / movementSpeed:本类继承 EntityThrowable,是无生命值的投射物, 源码中不存在这些属性设置(EntityTFThrownPick.java 全文无 applyEntityAttributes)。

AI 行为 / 特殊机制

发射者:EntityTFKnightPhantom.launchPicks() 是全 mod 唯一的构造点 (EntityTFKnightPhantom.java:454)。只有持 TFItems.knightlyPick 的幻影骑士克隆体 会发射 —— 武器由 setNumber(i) 按 i % 3 分配:0 = 骑士剑、1 = 骑士斧、2 = 骑士镐 (EntityTFKnightPhantom.java:817-826)。发射前播 random.bow 音效。

齐射:for (int i = 0; i < 8; i++) 以 i × π/4 环形均分,一次投出 8 把, 每把的 rotationYaw 设为 i × 45F(:439-462)。

穿体不伤:命中 EntityTFKnightPhantom 时 passThru = true,不造成伤害也不消失 (:27-30、:43-45)。

正常命中:其它实体吃 3 点 DamageSource.causeThrownDamage(this, getThrower()) 伤害, 然后 setDead()(:32-45)。

可被玩家攻击 / 反弹:canBeCollidedWith() 返回 true、getCollisionBorderSize() 拉到 1.0F,源码注释写明是为让玩家能攻击并反弹(:48-62)。

不产生爆炸:只播 8 个 largesmoke 粒子,不改地形。

相关条目