云方块
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | Natura:Cloud |
| 方块类 | mods.natura.blocks.CloudBlock |
| 父类 | mods.natura.blocks.NBlock |
| Item 类 | mods.natura.items.blocks.CloudItem |
| 硬度 | 0.3 |
| 脚步声 | soundTypeCloth |
| 变种 | 4 种(白 / 灰 / 暗 / 硫磺) |
| 创造标签 | natura.plants(NaturaTab.tab) |
| 掉落伤害 | 等于 meta 值 |
功能
云方块是浮空生成物,4 个变种分别对应 4 类云(blocks/CloudBlock.java:20-25):
super(Natura.cloud, 0.3F, new String[] { "cloud_white", "cloud_gray", "cloud_dark", "cloud_sulfur" });
| meta | 贴图 | 对应云类型 |
|---|---|---|
| 0 | cloud_white |
普通云 |
| 1 | cloud_gray |
灰烬云 |
| 2 | cloud_dark |
暗云 |
| 3 | cloud_sulfur |
硫磺云 |
材质使用 Natura.cloud(即 Natura 类中定义的 CloudMaterial,Natura.java:77)。
燃烧箭引爆硫磺云
onEntityCollidedWithBlock(CloudBlock.java:28+)是云方块的唯一特殊机制:
| 条件 | 行为 |
|---|---|
meta == 3(硫磺云)且碰撞实体是 EntityArrow 且服务端 |
若箭处于燃烧状态,调用 this.explode(...) 引爆 |
| 其他情况 | 无特殊行为 |
即燃烧的箭射中硫磺云会触发爆炸。爆炸威力等具体参数位于 explode 调用中,未在本次核实范围内逐项确认。
isBlockSolid 被覆写:若相邻方块也是 NContent.cloud 则返回 false,否则走父类逻辑(CloudBlock.java:113-121)—— 避免云块之间产生实心面。
数值
| 数值名 | 值 | 来源 |
|---|---|---|
| 硬度 | 0.3 | CloudBlock.java:21 |
| 脚步声 | soundTypeCloth |
CloudBlock.java:23 |
| 掉落伤害 | meta 值(0/1/2/3) | CloudBlock.java:109-111 |
| 变种数 | 4 | CloudBlock.java:21 |
| 爆炸触发 meta | 仅 meta 3(硫磺云) | CloudBlock.java:30 |
交互
| 触发 | 行为 |
|---|---|
| 燃烧的箭射中硫磺云(meta 3) | 云方块爆炸 |
| 普通箭射中其他云变种 | 无事发生 |
| 实体碰撞 | 除上述情况外无特殊行为 |
| 破坏 | 掉落伤害等于 meta 值 |
相关条目
- 云世界生成 - 4 类云的天空中生成规则与配置