Appearance
方块模块管理接口 Block
具体函数名及描述如下:
| 序号 | 函数名 | 函数描述 |
|---|---|---|
| 1 | IsSolidBlock(...) | 是否为固体方块 |
| 2 | IsLiquidBlock(...) | 是否是液体方块 |
| 3 | IsAirBlock(...) | 是否是空气方块 |
| 4 | GetBlockID(...) | 获取指定位置的方块类型 |
| 5 | DestroyBlock(...) | 摧毁方块 |
| 6 | PlaceBlock(...) | 放置方块 |
| 7 | ReplaceBlock(...) | 替换方块 |
| 8 | SetBlockData(...) | 设置blockalldata 更新当前位置方块 |
| 9 | GetBlockData(...) | 获取方块数据 |
| 10 | GetBlockDir(...) | 获取方块朝向 |
| 11 | PlayAnim(...) | 播放方块动作 |
| 12 | SetBlockSettingAttState(...) | 设置方块设置属性状态 |
| 13 | GetBlockSettingAttState(...) | 获取方块设置属性状态 |
| 14 | GetBlockSwitchStatus(...) | 获取功能方块的开关状态 |
| 15 | SetBlockSwitchStatus(...) | 设置功能方块的开关状态 |
| 16 | GetBlockPowerStatus(...) | 获取方块的通电状态 |
| 17 | RandomBlockID(...) | 在资源库里随机获取一个方块 |
| 18 | GetBlockDefName(...) | 获取方块名称 |
| 19 | GetBlockDefDesc(...) | 获取方块描述 |
| 20 | ReplaceBluePrint(...) | 放置蓝图 |
| 21 | PlayCrackEffect(...) | 播放方块裂纹特效 |
| 22 | PlayDestroyEffect(...) | 播放方块损毁特效 |
| 23 | GetBlockDropItemType(...) | 获取方块掉落物信息 |
| 24 | GetBlockDropExp(...) | 获取方块的采集经验 |
| 25 | SetBlockColor(...) | 设置方块颜色 |
| 26 | SetBlockDir(...) | 设置方块方向 |
| 27 | GetFacade(...) | 获取方块类型外观 |
| 28 | SetBlockTextureColor(...) | 设置方块纹理颜色 |
IsSolidBlock
- 参数及类型:
- 返回值及类型:
- ret:
booleantrue/false
- ret:
- 该方法的主要作用: 是否为固体方块
- 具体使用案例如下:
lua
local isSolidBlock = Block:IsSolidBlock(x, y, z, WorldId)IsLiquidBlock
- 参数及类型:
- 返回值及类型:
- ret:
booleantrue/false
- ret:
- 该方法的主要作用: 是否是液体方块
- 具体使用案例如下:
lua
local isLiquidBlock = Block:IsLiquidBlock(x, y, z, WorldId)IsAirBlock
- 参数及类型:
- 返回值及类型: ret::boolean:true/false
- 该方法的主要作用: 是否是空气方块
- 具体使用案例如下:
lua
local isAirBlock = Block:IsAirBlock(x, y, z, WorldId)GetBlockID
- 参数及类型:
- 返回值及类型:
- blockid:
number方块类型ID
- blockid:
- 该方法的主要作用: 获取指定位置的方块类型
- 具体使用案例如下:
lua
local blockID = Block:GetBlockID(x, y, z, WorldId)DestroyBlock
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 摧毁方块
- 具体使用案例如下:
lua
-- 删除方块,没有掉落物
local success = Block:DestroyBlock(x, y, z, false, WorldId)PlaceBlock
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 放置方块
- 具体使用案例如下:
lua
-- 摆放方块,376 是方块ID,x, y, z 是位置,FaceDir.PosX 是方向,0XFFFFFF 是颜色
local success2 = Block:PlaceBlock(376, x, y, z, FaceDir.PosX, nil, WorldId)
-- 创建颜色方块
local success = Block:PlaceBlock(605, x + 1, y, z, FaceDir.PosX, 0XFFFFFF, WorldId)ReplaceBlock
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 替换方块
- 具体使用案例如下:
lua
local success = Block:ReplaceBlock(105, x, y, z, nil, nil, WorldId)SetBlockData
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 设置blockalldata 更新当前位置方块
- 具体使用案例如下:
lua
local ret = Block:SetBlockData(x, y, z, data, worldId)GetBlockData
- 参数及类型:
- 返回值及类型:
- data:
number具体的值
- data:
- 该方法的主要作用: 获取方块数据
- 具体使用案例如下:
lua
local blockData = Block:GetBlockData(x, y, z, WorldId)GetBlockDir
- 参数及类型:
- 返回值及类型:
- ret:
number返回类型 FaceDir
- ret:
- 该方法的主要作用: 获取方块朝向
- 具体使用案例如下:
lua
local blockDir = Block:GetBlockDir(x, y, z, WorldId)PlayAnim
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 播放方块动作
- 具体使用案例如下:
lua
local success = Block:PlayAnim({x = x, y = y, z = z}, 100100, 1, AnimMode.Default, WorldId)SetBlockSettingAttState
- 参数及类型:
- blockid:
number方块类型ID - attrtype:
number属性枚举(BlockLimits)BlockLimits - switch:
boolean是否开关 - worldId:
number星球id(默认当前主机所在星球)
- blockid:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 设置方块设置属性状态
- 具体使用案例如下:
lua
-- 设置爆炸抗性打开
local success = Block:SetBlockSettingAttState(100, BlockAttr.ExplodeResistance, true, WorldId)GetBlockSettingAttState
- 参数及类型:
- blockid:
number方块类型ID - attrtype:
number属性枚举(BlockLimits)BlockLimits - worldId:
number星球id(默认当前主机所在星球)
- blockid:
- 返回值及类型:
- ret:
boolean是否开启
- ret:
- 该方法的主要作用: 获取方块设置属性状态
- 具体使用案例如下:
lua
local state = Block:GetBlockSettingAttState(100, BlockAttr.ExplodeResistance, WorldId)GetBlockSwitchStatus
- 参数及类型:
- 返回值及类型:
- ret:
boolean是否开启
- ret:
- 该方法的主要作用: 获取功能方块的开关状态
- 具体使用案例如下:
lua
local status = Block:GetBlockSwitchStatus(x, y, z, WorldId)SetBlockSwitchStatus
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 设置功能方块的开关状态
- 具体使用案例如下:
lua
local ret = Block:SetBlockSwitchStatus(x, y, z, isactive, worldId)GetBlockPowerStatus
- 参数及类型:
- 返回值及类型:
- ret:
boolean是否开启
- ret:
- 该方法的主要作用: 获取方块的通电状态
- 具体使用案例如下:
lua
local status = Block:GetBlockPowerStatus(x, y, z, WorldId)RandomBlockID
- 参数及类型: 无
- 返回值及类型:
- ret:
number随机的方块类型
- ret:
- 该方法的主要作用: 在资源库里随机获取一个方块
- 具体使用案例如下:
lua
local blockID = Block:RandomBlockID()GetBlockDefName
- 参数及类型:
- blockid:number,string方块类型ID
- 返回值及类型:
- name:
string方块名称
- name:
- 该方法的主要作用: 获取方块名称
- 具体使用案例如下:
lua
local blockDefName = Block:GetBlockDefName(100)GetBlockDefDesc
- 参数及类型:
- blockid:number,string方块类型ID
- 返回值及类型:
- ret:
string方块描述
- ret:
- 该方法的主要作用: 获取方块描述
- 具体使用案例如下:
lua
local blockDefDesc = Block:GetBlockDefDesc(100)ReplaceBluePrint
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 放置蓝图
- 具体使用案例如下:
lua
local success = Block:ReplaceBluePrint(x, y, z, [=[1,bp6666_1679897969_0_]=], 90, false, true)PlayCrackEffect
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 播放方块裂纹特效
- 具体使用案例如下:
lua
local process = 10
local success = Block:PlayCrackEffect(x, y, z,process, WorldId)PlayDestroyEffect
- 参数及类型:
- 返回值及类型:
- ret:
boolean操作是否成功
- ret:
- 该方法的主要作用: 播放方块损毁特效
- 具体使用案例如下:
lua
local success = Block:PlayDestroyEffect(x, y, z, WorldId)GetBlockDropItemType
- 参数及类型:
- 返回值及类型:
- ret:
table返回掉落道具信息{itemid - itemnum
- odds} 道具
- 数量
- 概率
- ret:
- 该方法的主要作用: 获取方块掉落物信息
- 具体使用案例如下:
lua
-- 1手持敲方块,2手持道具正确,3手持道具不正确
local tb = Block:GetBlockDropItemType(100,1)
if tb then
print("获取方块掉落物品类型", tb[1])
print("获取方块掉落物品数量", tb[2])
print("获取方块掉落物品概率", tb[3])
endGetBlockDropExp
lua
local exp = Block:GetBlockDropExp(100,1)SetBlockColor
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 设置方块颜色
- 具体使用案例如下:
lua
local success = Block:SetBlockColor(x, y, z, 0XFF0000, WorldId)SetBlockDir
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功
- ret:
- 该方法的主要作用: 设置方块方向
- 具体使用案例如下:
lua
local success = Block:SetBlockDir(x, y, z, FaceDir.PosZ, WorldId)
-- self:ThreadWait(1)GetFacade
- 参数及类型:
- blockid:number
- string:方块类型ID或方块预制ID
- 返回值及类型:
- ret:
string方块类型外观
- ret:
- 该方法的主要作用: 获取方块类型外观
- 具体使用案例如下:
lua
-- 官方默认方块示例
local facade1 = Block:GetFacade(100)
if facade1 == nil then
print("facade1 is nil")
end
-- 自定义方块示例
local facade2 = Block:GetFacade('r0_7495946400275515402_23048')
if facade2 == nil then
print("facade2 is nil")
endSetBlockTextureColor
- 参数及类型:
- 返回值及类型:
- ret:
bool是否成功(仅支持草块、土块、树叶、花草等方块,其它方块暂不支持;设置后不会存档;玩法转编辑后需要重进地图才可还原)
- ret:
- 该方法的主要作用: 设置方块纹理颜色
- 具体使用案例如下:
lua
local ret = Block:SetBlockTextureColor(blockid, color, alpha, slotindex)