Anvil-Dev / AnvilCraft

Other
69 stars 30 forks source link

[TODO] 冲击桩和矿物涌泉 #848

Closed XeKr closed 4 months ago

XeKr commented 4 months ago

Matters to be added to TODO - 将要加入TODO的事项

冲击桩和矿物涌泉

Describe what this TODO will do - 描述这个TODO要做的事情

黑曜石与下界合金合成冲击桩impact_pile image

碰撞箱:Stream.of( Block.box(5, 14, 5, 11, 16, 11), Block.box(7, 0, 7, 9, 2, 9), Block.box(6, 2, 6, 10, 14, 10) ).reduce((v1, v2) -> VoxelShapes.join(v1, v2, IBooleanFunction.OR)).get();

矿物涌泉mineral_fountain

将冲击桩放置在当前维度世界高度最低到最低+4高度的基岩或深板岩上 铁砧必须从至少20格高度下落砸到冲击桩 满足上述条件的操作将消耗冲击桩和铁砧并在冲击桩所在位置生成一个矿物涌泉结构 生成时结构底部位置修正为世界高度最低点 结构从底部到顶部:3x3基岩,3x3基岩,十字形基岩加四角熔岩,十字形基岩,矿物涌泉 image

矿物涌泉方块为基岩属性,无法破坏 每秒钟检测侧面相邻的四个方块 如果四个侧面都是某种金属深板岩矿(我们自行添加金属矿的tag),则上面相邻的深板岩转化为这种矿 (特殊地,在主世界中生成时有1%概率生成地核碎片矿,1%的概率生成虚空石,在下界中生成时有20%的概率改为生成地核碎片矿,0概率虚空石,在末地中生成时有20%的概率改为生成虚空石,0概率地核碎片,其他模组维度如不特殊声明则按主世界算) 如果四个侧面都是熔岩且上面是空气,则上面生成一个熔岩 如果四个侧面都是熔岩且上面是下界合金块或钨块,则将其加热到红热等级 如果四个侧面都是蓝冰,则自身转化为基岩 检测时也要检测自身是否在当前维度最低y值到最低y值+5范围之内且下方直到最低y里只有基岩 (这个时钟需要与激光的错开避免刚好刷出来采不到)