# 索引

包括方块及方块实体属性的接口,方块的放置和获取见世界/方块管理


# 方块状态与附加值

接口
描述
GetBlockAuxValueFromStates 服务端 根据方块名称和方块状态获取方块附加值AuxValue
GetBlockStates 服务端 获取方块状态
GetBlockStatesFromAuxValue 服务端 根据方块名称和方块附加值AuxValue获取方块状态
SetBlockStates 服务端 设置方块状态

# 方块实体

接口
描述
CleanBlockTileEntityCustomData 服务端 清空指定位置的特殊方块(箱子、头颅、熔炉、花盆等)绑定的TileEntity内存储的自定义数据。
CreateFrameEffectForBlockEntity 客户端 在自定义方块实体上创建序列帧特效,创建后该接口返回序列帧特效的Id,利用该Id可以使用特效/序列帧中的接口对该序列帧特效进行播放、设置位置、大小等操作。与实体的序列帧特效创建方式类似。
CreateParticleEffectForBlockEntity 客户端 在自定义方块实体上创建粒子特效,创建后该接口返回粒子特效的Id,利用该Id可以使用特效/粒子中的接口对该粒子特效进行播放、设置位置、大小等操作。与实体的粒子特效创建方式类似。若自定义方块实体已存在键值名称相同的特效,则不会创建新的特效,接口返回已有的特效Id。
GetBlockEntityData 服务端 用于获取可操作某个自定义方块实体数据的对象,操作方式与dict类似
GetBlockEntityData 服务端 用于获取方块(包括自定义方块)的数据,数据只读不可写
GetBlockEntityData 客户端 用于获取客户端当前维度中方块(包括自定义方块)的数据,数据只读不可写,无法获取箱子内的物品信息。
GetBlockEntityMolangValue 客户端 获取自定义方块实体的Molang变量的值。
GetBlockTileEntityCustomData 服务端 读取指定位置的特殊方块(箱子、头颅、熔炉、花盆等)绑定的TileEntity内存储的自定义数据
GetBlockTileEntityWholeCustomData 服务端 读取指定位置的特殊方块(箱子、头颅、熔炉、花盆等)绑定的TileEntity内存储的自定义数据字典。
GetFrameEffectIdInBlockEntity 客户端 获取在自定义方块实体中已创建的指定序列帧特效的Id,已创建的特效分为两种:一是通过resource_pack/entity/下的实体json文件中使用“netease_frame_effects”所定义的特效;二是使用接口CreateFrameEffectForBlockEntity创建的特效。 返回的特效Id可以使用特效/序列帧中的接口对该序列帧特效进行播放、设置位置、大小等操作。与实体的序列帧特效创建方式类似。
GetParticleEffectIdInBlockEntity 客户端 获取在自定义方块实体中已创建的指定粒子特效的Id,已创建的特效分为两种:一是通过resource_pack/entity/下的实体json文件中使用“netease_particle_effects”所定义的特效;二是使用接口CreateParticleEffectForBlockEntity创建的特效。 返回的特效Id可以使用特效/粒子中的接口对该粒子特效进行播放、设置位置、大小等操作。与实体的粒子特效创建方式类似。
RemoveFrameEffectInBlockEntity 客户端 移除在自定义方块实体上创建的序列帧特效。移除后的特效Id将会失效。
RemoveParticleEffectInBlockEntity 客户端 移除在自定义方块实体上创建的粒子特效。移除后的特效Id将会失效。
SetBlockEntityMolangValue 客户端 设置自定义方块实体的Molang变量,与实体的molang变量作用相同。目前主要用于控制自定义实体的动画状态转变。Molang变量的定义方式与原版实体的Molang变量定义方法相同。详细可参考自定义方块实体动画的教学文档。
SetBlockTileEntityCustomData 服务端 设置指定位置的特殊方块(箱子、头颅、熔炉、花盆等)绑定的TileEntity内存储的自定义数据。
SetEnableBlockEntityAnimations 客户端 设置是否开启自定义方块实体的动画效果,开启之后,自定义实体方块会按照实体文件中animation_controller所定义的动画状态机进行动画播放。关闭之后,则会停止所有动画播放。

# 方块几何体模型

接口
描述
CombineBlockBetweenPosToGeometry 客户端 根据输入的两个位置,搜索这两个位置之间的所有方块,并将这些方块合并和转换为能用于实体的几何体模型。
CombineBlockFromPosListToGeometry 客户端 根据输入的方块位置列表,搜索这些位置的所有方块,并将这些方块合并和转换为能用于实体的几何体模型。
CombineBlockPaletteToGeometry 客户端 将BlockPalette中的所有方块合并并转换为能用于实体的几何体模型。
EnableActorBlockGeometryTransparent 客户端 设置是否允许实体的方块几何体模型产生透明度,允许开启后通过调节方块几何体的透明度将会使得方块几何体模型变得透明。
SetActorBlockGeometryOffset 客户端 设置实体的方块几何体模型的位置偏移。
SetActorBlockGeometryRotation 客户端 设置实体的方块几何体模型的旋转角度。
SetActorBlockGeometryTransparency 客户端 设置实体的方块几何体模型的透明度。注意,只有调用接口EnableActorBlockGeometryTransparent开启了方块几何体模型的透明度后该接口才会生效。

# 方块调色板

接口
描述
DeleteBlockInBlockPalette 服务端
客户端
删除方块调色板BlockPalette中某个类型的方块。
DeserializeBlockPalette 服务端
客户端
反序列化方块调色板数据字典中的数据,用于方块调色板在客户端及服务端的事件数据之间传输。
GetBlockCountInBlockPalette 服务端
客户端
获取方块调色板BlockPalette中某个类型的方块的数量。
GetLocalPosListOfBlocks 服务端
客户端
获取方块调色板中某种方块的相对位置列表。方块调色板记录了多个方块组成的一个三维空间下的方块组合,而相对位置则指的是,以这些方块中最小坐标的方块所在位置作为原点的坐标轴下的相对位置。
GetVolumeOfBlockPalette 服务端
客户端
获取方块调色板BlockPalette所占据的长方体的长宽高。长指的是在方块调色板BlockPalette在世界坐标中占据的x轴方向的长度,宽指的是z轴方向的长度,高指的是y轴方向的长度。
ReplaceAirByStructureVoid 服务端
客户端
设置是否将方块调色板BlockPalette中所有空气替换为结构空位。
ReplaceBlockInBlockPalette 服务端
客户端
替换方块调色板BlockPalette中某个类型的方块。
SerializeBlockPalette 服务端
客户端
序列化方块调色板中的数据,用于方块调色板在客户端及服务端的事件数据之间传输。

# 渲染

接口
描述
AddDropItemToWorld 客户端 在客户端添加一个掉落物渲染
ChangeBlockTextures 客户端 替换方块贴图
DeleteClientDropItemEntity 客户端 删除AddDropItemToWorld创建的客户端掉落物
GetBlockEntityExtraUniforms 客户端 获取在自定义方块实体的shader当中使用的自定义变量的值,该自定义变量总共可设置EXTRA_ACTOR_UNIFORM1,EXTRA_ACTOR_UNIFORM2,EXTRA_ACTOR_UNIFORM3,EXTRA_ACTOR_UNIFORM4,总共4组,每组为一个vec4(float, float, float ,float)类型的向量。
GetBlockTextures 客户端 获取方块的初始贴图信息
GetClientDropItemEntityIdList 客户端 获得所有通过AddDropItemToWorld创建的entityId的list
SetBlockEntityExtraUniforms 客户端 设置可在自定义方块实体的shader当中使用的自定义变量的值,该自定义变量总共可设置EXTRA_ACTOR_UNIFORM1,EXTRA_ACTOR_UNIFORM2,EXTRA_ACTOR_UNIFORM3,EXTRA_ACTOR_UNIFORM4,总共4组,每组为一个vec4(float, float, float ,float)类型的向量,向量的默认值为(1.0,1.0,1.0,1.0)。
SetBlockEntityFramePosOffset 客户端 设置自定义方块实体中序列帧特效位置偏移值,用于调整序列帧特效相对于方块位置的偏移。与特效/序列帧/SetPos接口不同,该接口调整的是相对于方块位置的位置偏移值,而不是世界坐标。
SetBlockEntityModelPosOffset 客户端 设置自定义方块实体的实体模型位置偏移值,用于调整实体模型相对于方块位置的偏移。可通过该接口来调整自定义方块实体的实体模型的位置。只有自定义方块实体定义实体模型才生效,实体模型在resource_pack/entity/下定义,详细可参考自定义方块实体动画的教学文档。
SetBlockEntityModelRotation 客户端 设置自定义方块实体的实体模型在各个轴上的旋转值,可通过该接口来调整自定义方块实体的实体模型的旋转。只有自定义方块实体定义实体模型才生效,实体模型在resource_pack/entity/下定义,详细可参考自定义方块实体动画的教学文档。
SetBlockEntityModelScale 客户端 设置自定义方块实体的实体模型大小的缩放值,可通过该接口来调整自定义方块实体的实体模型的大小。只有自定义方块实体定义实体模型才生效,实体模型在resource_pack/entity/下定义,详细可参考自定义方块实体动画的教学文档。
SetBlockEntityParticlePosOffset 客户端 设置自定义方块实体中粒子特效位置偏移值,用于调整粒子特效相对于方块位置的偏移。与特效/粒子/SetPos接口不同,该接口调整的是相对于方块位置的位置偏移值,而不是世界坐标。

# 容器

接口
描述
GetChestBoxSize 服务端 获取箱子容量大小
GetChestPairedPosition 服务端 获取与箱子A合并成一个大箱子的箱子B的坐标
GetContainerItem 服务端 获取容器内的物品
GetContainerSize 服务端 获取容器容量大小
GetEnderChestItem 服务端 获取末影箱内的物品
GetInputSlotItem 服务端 获取熔炉输入栏物品, 支持使用下面参数清空特定槽位:itemDict为空,为{}, 或itemName为minecraft:air,或者count为0
GetOpenContainerItem 服务端 获取开放容器的物品
GetOutputSlotItem 服务端 获取熔炉输出栏物品
GetPlayerUIItem 服务端 获取合成容器的物品
SetChestBoxItemExchange 服务端 交换箱子里物品的槽位
SetChestBoxItemNum 服务端 设置箱子槽位物品数目
SetInputSlotItem 服务端 设置熔炉输入栏物品
SetPlayerUIItem 服务端 设置合成容器的物品
SpawnItemToContainer 服务端 生成物品到容器方块的物品栏
SpawnItemToEnderChest 服务端 生成物品到末影箱

# 红石

接口
描述
GetBlockPoweredState 服务端 获取某个坐标方块的充能状态
GetStrength 服务端 获取某个坐标的红石信号强度

# 告示牌

接口
描述
GetSignBlockText 服务端 获取告示牌(方块)的文本内容
SetSignBlockText 服务端 设置告示牌(方块)的文本内容

#

接口
描述
GetBedColor 服务端 获取床(方块)的颜色
SetBedColor 服务端 设置床(方块)的颜色

# 属性

接口
描述
GetBlockBasicInfo 服务端 获取方块基本信息
GetLoadBlocks 服务端 获取已经加载的方块id
SetBlockBasicInfo 服务端 设置方块基本信息
SetChestLootTable 服务端 设置箱子战利品表

方块状态与附加值

方块实体

方块几何体模型

方块调色板

渲染

容器

红石

告示牌

属性