Coal Jetpack

基本信息

属性 值
注册名 adventurebackpack:coalJetpack
类 ItemCoalJetpack (extends ItemAdventure)
燃料槽容量(蒸汽) 16000 mB(Jetpack.STEAM_CAPACITY = BUCKET × 16)
水槽容量 8000 mB(Jetpack.WATER_CAPACITY = BUCKET × 8)
最高海拔 185 m
MAX_TEMPERATURE 200

功能

穿戴后会实时运行的 steam-jetpack 三段管理:

  • Firebox(燃烧箱):每次温度上升前先 consumeFuel() 顺序取得煤/炭的燃烧 ticks。burnTicks--,直到耗尽
  • Heater(加热器):在 burnTicks > 0 时不断升温(受 increasingFactor 控制);燃料耗尽时按 decreasingFactor 指数级冷却
  • Boiler(锅炉):当温度 ≥ 100 ℃ 且水槽有水时,每 tick 消耗 temperature / 100 mB 水 → ×4 → 蒸汽入蒸汽槽。蒸汽不足容量 -100 mB 时设为「leaking = true」并播放 s_boiling / s_background2 音效

起飞逻辑

  • Jetpack.Elevate:if (player.posY < 135) thrustCutoffSpeed = 0.32; else if (posY < 185) thrustCutoffSpeed = 0.32 - (posY-135)/160;
  • motionY <= thrustCutoffSpeed 时把 motionY += 0.1
  • 同时按 moveFlying(strafe, forward, 0.02f) 给予飞行提速
  • 玩家在水中 → 水槽自动 fill 2mB/tick
  • 玩家按 Jump → fizzz 音效

使用方式

触发 行为
快捷栏右键 客户端发送 GUIPacket.JETPACK_GUI 请求,server 回应 GuiCoalJetpack
装备中(每 tick) 运行 firebox + heater + boiler,并按 shift 判定 water → tank
按 Jump 起飞;若可使用则 elevate() + drain 13 mB 蒸汽
装备时 默认温度为当前生物群系 getBiomeMinTemp()(COLD/SNOWY=0,HOT/BEACH=30,NETHER=40,默认 25)

数值

数值 值
升力 (Y<135) motionY += 0.1 若 motionY ≤ 0.32
升力 (135-185) motionY += 0.1 若 motionY ≤ thrustCutoffSpeed(动态渐小)
蒸汽消耗率 13 mB per tick(在用时)
水消耗率 temperature/100 mB → 蒸汽 ×4
温度范围 0 - 200
降温基准(biome) COLD=0, HOT=30, NETHER=40, other=25

相关条目