4.4 KiB
4.4 KiB
sidebarDepth
| sidebarDepth |
|---|
| 1 |
实体类型
GetEngineType
服务端客户端
服务端接口
method in mod.server.component.engineTypeCompServer.EngineTypeComponentServer
-
描述
获取实体类型,主要用于判断实体是否属于某一类型的生物。
-
参数
无
-
返回值
数据类型说明 int 详见EntityType枚举 -
示例
import mod.server.extraServerApi as serverApi
from mod_log import logger as logger
comp = serverApi.GetEngineCompFactory().CreateEngineType(entityId)
entityType = comp.GetEngineType()
EntityTypeEnum = serverApi.GetMinecraftEnum().EntityType
# 判断是否是生物(Mob)
if entityType & EntityTypeEnum.Mob == EntityTypeEnum.Mob:
logger.info("{} is Mob".format(comp.GetEngineTypeStr()))
# 判断是否是弹射物(Projectile)
if entityType & EntityTypeEnum.Projectile == EntityTypeEnum.Projectile:
logger.info("{} is Projectile".format(comp.GetEngineTypeStr()))
客户端接口
method in mod.client.component.engineTypeCompClient.EngineTypeComponentClient
-
描述
获取实体类型,主要用于判断实体是否属于某一类型的生物。
-
参数
无
-
返回值
数据类型说明 int 详见EntityType枚举 -
示例
import mod.client.extraClientApi as clientApi
from mod_log import logger as logger
comp = clientApi.GetEngineCompFactory().CreateEngineType(entityId)
entityType = comp.GetEngineType()
EntityTypeEnum = clientApi.GetMinecraftEnum().EntityType
# 判断是否是生物(Mob)
if entityType & EntityTypeEnum.Mob == EntityTypeEnum.Mob:
logger.info("{} is Mob".format(comp.GetEngineTypeStr()))
# 判断是否是弹射物(Projectile)
if entityType & EntityTypeEnum.Projectile == EntityTypeEnum.Projectile:
logger.info("{} is Projectile".format(comp.GetEngineTypeStr()))
GetEngineTypeStr
服务端客户端
服务端接口
method in mod.server.component.engineTypeCompServer.EngineTypeComponentServer
-
描述
获取实体的类型名称
-
参数
无
-
返回值
数据类型说明 str 实体类型名称,如minecraft:husk -
示例
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateEngineType(entityId)
comp.GetEngineTypeStr()
客户端接口
method in mod.client.component.engineTypeCompClient.EngineTypeComponentClient
-
描述
获取实体的类型名称
-
参数
无
-
返回值
数据类型说明 str 实体类型名称,如minecraft:husk -
示例
import mod.client.extraClientApi as clientApi
comp = clientApi.GetEngineCompFactory().CreateEngineType(entityId)
strType = comp.GetEngineTypeStr()
GetEntityDefinitions
服务端
method in mod.server.component.entityDefinitionsCompServer.EntityDefinitionsCompServer
-
描述
获取实体的命名空间ID及其当前和之前的定义组件群
-
参数
无
-
返回值
数据类型说明 list(str) 实体的命名空间ID及其当前和之前的定义组件群的list -
示例
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateEntityDefinitions(entityId)
result = comp.GetEntityDefinitions()
GetEntityNBTTags
服务端
method in mod.server.component.entityDefinitionsCompServer.EntityDefinitionsCompServer
-
描述
获取实体的NBT标签
-
参数
无
-
返回值
数据类型说明 dict或None 实体NBT标签的dict -
示例
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateEntityDefinitions(entityId)
result = comp.GetEntityNBTTags()