跳转到内容

Creature

生物

对生物进行控制操作

枚举列表

Creature.ATTR

  • 描述: 生物属性值类型(数值类型)
成员名称成员说明
JumpZVelocity跳跃速度,默认值:1260
GravityScale重力系数,默认值:1

Creature.STATE

  • 描述: 状态种类
成员名称成员说明
IsAir悬空
Grab抓举
Rush冲刺
AiStartAI启用
BeGrabbed被抓举

Creature.PATROL_TYPE

  • 描述: 巡逻类型
成员名称成员说明
Single单次
Continuous持续
RoundTrip往返

函数列表

SpawnCreature

  • 描述: 创建生物

  • 范围: 服务端

参数列表:

参数类型说明
CreatureTypenumber获取生物类型:请将目标生物放入场景中,然后点击生物-编辑-实例信息,获取类型ID
PosEngine.Vector位置
ForwardEngine.Vector朝向方向向量
Scalenumber缩放

返回字段:

返回字段字段类型说明
creatureIdnumber生物实例ID
local id = Creature:SpawnCreature(1114000000000000, Engine.Vector(0, 0, 0), Engine.Vector(0, 0, 0), 1)

DestroyByTime

  • 描述: 定时销毁生物

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Secondsnumber定时的秒数
Creature:DestroyByTime(228, 3)

Destroy

  • 描述: 销毁生物

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:Destroy(228)

SpawnCreatureBySceneID

  • 描述: 通过已有的生物模板创建生物

  • 范围: 服务端

参数列表:

参数类型说明
TemplateIDnumber已有的生物模板ID
PosEngine.Vector位置
ForwardEngine.Vector朝向方向向量
local id = Creature:SpawnCreatureBySceneID(223, Engine.Vector(0, 0, 0), Engine.Vector(0, 0, 0))

SetPosition

  • 描述: 设置生物的位置

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PosEngine.Vector位置
Creature:SetPosition(228, Engine.Vector(0, 0, 0))

SetForward

  • 描述: 设置生物的朝向方向

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
ForwardEngine.Vector朝向方向向量
Creature:SetForward(228, Engine.Vector(0, 0, 0))

SetScale

  • 描述: 设置生物的大小

  • 范围: 服务端

  • 警告: 在生物出生的第一帧内数据会根据放置物进行初始化,需要延后一帧执行才能生效

参数列表:

参数类型说明
CreatureIdnumber生物ID
Scalenumber放大缩小的倍数
Creature:SetScale(228, 2)

SetCreatureVisible

  • 描述: 设置生物可见性

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Visibleboolean是否可见
Creature:SetCreatureVisible(228, false)

SetCreatureCanGrab

  • 描述: 设置生物是否可以抓举

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Enableboolean能否抓举
Creature:SetCreatureCanGrab(228, false)

SetCreatureGravityInfluence

  • 描述: 设置生物重力属性

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Enableboolean是否启用重力
Creature:SetCreatureGravityInfluence(228, false)

AddImpulse

  • 描述: 给生物添加力

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
ImpulseEngine.Vector力的大小和方向
Creature:AddImpulse(228, Engine.Vector(10000, 0, 0))

SetCreatureTrackTargetMove

  • 描述: 给生物添加追踪运动

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIdnumber目标ID
InitSpeednumber初始速度
Accelerationnumber加速度
MaxVelocitynumber最大速度
DistanceKeepnumber保持的距离
Creature:SetCreatureTrackTargetMove(228, Character:GetPlayerBySideAndIndex(0, 1), 160, 20, 200, 200)

StopTracking

  • 描述: 停止追踪

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:StopTracking(228)

AddProp

  • 描述: 给生物添加道具

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PropIdnumber道具Id
Creature:AddProp(228, 1106022000000000)

RemoveProp

  • 描述: 删除生物持有的道具

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:RemoveProp(228)

SetCreatureShouldShowName

  • 描述: 设置生物是否显示名称

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Showboolean是否显示名称
Creature:SetCreatureShouldShowName(228, true)

SetCreatureName

  • 描述: 修改生物名称

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Namestring新的名字
Creature:SetCreatureName(228, "name")

SetCreatureModel

  • 描述: 将生物模型替换为其他游戏元素

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
ModelIdnumber模型ID(元件的类型ID)
Creature:SetCreatureModel(228, 1101002001034000)

SetCreatureWithCharacter

  • 描述: 将生物模型替换为角色模型

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PlayerIdnumber角色ID
Creature:SetCreatureWithCharacter(228, playerId)

RestoreCreatureModel

  • 描述: 还原生物模型

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:RestoreCreatureModel(228)

StartBehaviorTree

  • 描述: 激活生物的AI模式

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:StartBehaviorTree(228)

StopBehaviorTree

  • 描述: 禁用生物的AI模式

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:StopBehaviorTree(228)

Jump

  • 描述: 让生物跳跃

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:Jump(228)

Dive

  • 描述: 让生物飞扑

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:Dive(228)

SprintedMove

  • 描述: 让生物冲刺

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:SprintedMove(228)

Grab

  • 描述: 让生物抓举

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:Grab(228)

EndGrab

  • 描述: 让生物放下

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Creature:EndGrab(228)

CreatureUseItemToPlayer

  • 描述: 让生物对角色使用道具

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIdnumber目标角色的ID
Creature:CreatureUseItemToPlayer(228, Character:GetPlayerBySideAndIndex(0, 1))

CreatureUseItemToCreature

  • 描述: 让生物对生物使用道具

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIdnumber目标生物ID
Creature:CreatureUseItemToCreature(228, 246)

CreatureUseItemToElement

  • 描述: 让生物对元件使用道具

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIdnumber目标元件ID
Creature:CreatureUseItemToElement(228, 248)

SetTargetPointMove

  • 描述: 让生物朝指定位置移动

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PosEngine.Vector位置坐标
Timenumber时间,单位秒
Creature:SetTargetPointMove(228, Engine.Vector(0, 0, 0), 1)

StopMove

  • 描述: 让生物停止移动,持续X秒

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Timenumber持续时间,单位秒
Creature:StopMove(228, 0.1)

SwitchBehaviorToPatrolPath

  • 描述: 让目标生物按照预设的路径巡逻

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PathNamestring路径名称
PatroltypeCreature.PATROL_TYPE巡逻类型
Timenumber巡逻的时间,单位秒,默认999
ReturnBornPosboolean巡逻结束后是否返回出生点,默认为false
Creature:SwitchBehaviorToPatrolPath(228, "路径_01", Creature.PATROL_TYPE.Single, 5)

SwitchCustomBehaviorToPatrolPath

  • 描述: 让目标生物按照自定义的路径巡逻

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PathPointsEngine.Vector[]路径点数组
PatroltypeCreature.PATROL_TYPE巡逻类型
Timenumber巡逻的时间,单位秒,默认999
ReturnBornPosboolean巡逻结束后是否返回出生点,默认为false
local pathPoints = {Engine.Vector(950,-380,0), Engine.Vector(1250,380,0)}
Creature:SwitchCustomBehaviorToPatrolPath(226, pathPoints, Creature.PATROL_TYPE.Single, 5, true)

CreatureSwitchBehaviorToImitationCreature

  • 描述: 让生物模仿指定生物的动作

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIDnumber目标生物ID
Timenumber延迟时间,单位秒
Creature:CreatureSwitchBehaviorToImitationCreature(244, 228, 0.1)

CreatureSwitchBehaviorToImitationPlayer

  • 描述: 让生物模仿角色的动作

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIDnumber目标角色ID
Timenumber延迟时间,单位秒
Creature:CreatureSwitchBehaviorToImitationPlayer(228, Character:GetPlayerBySideAndIndex(0, 1), 1)

CreatureSwitchBehaviorToFollowCreature

  • 描述: 让生物跟随指定生物

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIDnumber目标生物ID
Maxdistancenumber最远距离
Distancenumber跟随距离
Timenumber跟随时间,单位秒
Creature:CreatureSwitchBehaviorToFollowCreature(244, 228, 1000, 200, 20)

CreatureSwitchBehaviorToFollowPlayer

  • 描述: 让生物跟随角色

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
TargetIDnumber目标角色ID
Maxdistancenumber最远距离
Distancenumber跟随距离
Timenumber跟随时间,单位秒
Creature:CreatureSwitchBehaviorToFollowPlayer(228, Character:GetPlayerBySideAndIndex(0, 1), 1000, 200, 20)

CheckCreatureProperty

  • 描述: 判断生物是否处于某个状态

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID
StateCreature.STATE状态名称

返回字段:

返回字段字段类型说明
inPropertyboolean是否处于某个状态
local inProperty = Creature:CheckCreatureProperty(228, Creature.STATE.BeGrabbed)

IsCreatureSame

  • 描述: 判断是否是同一个生物

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureId1number生物1的ID
CreatureId2number生物2的ID

返回字段:

返回字段字段类型说明
isSameboolean是否相同
local IsSame = Creature:IsCreatureSame(228, 248)

IsHoldingProp

  • 描述: 判断生物是否持有指定道具

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID
PropIdnumber道具Id

返回字段:

返回字段字段类型说明
isHoldingboolean是否持有指定道具
local isHolding = Creature:IsHoldingProp(228, 1106022000000000)

IsCreatureCanGrab

  • 描述: 判断生物是否可抓举

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
canGrabboolean是否可抓举
local canGrab = Creature:IsCreatureCanGrab(228)

IsCreatureGravityInfluence

  • 描述: 判断生物是否受重力影响

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
isInfluentialboolean是否受重力影响
local isInfluential = Creature:IsCreatureGravityInfluence(228)

IsCreatureShouldShowName

  • 描述: 判断生物是否显示名称

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
isShowboolean是否显示名称
local isShow = Creature:IsCreatureShouldShowName(228)

IsCreatureVisible

  • 描述: 判断生物是否可见

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
isVisibleboolean是否可见
local isVisible = Creature:IsCreatureVisible(228)

GetCreatureTypeID

  • 描述: 返回生物类型

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
typeIDnumber生物类型,-1表示失败
local typeID = Creature:GetCreatureTypeID(228)

GetPosition

  • 描述: 返回生物位置

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
posEngine.Vector生物所在的位置
local pos = Creature:GetPosition(228)

GetScale

  • 描述: 返回生物的缩放倍数

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
scalenumber缩放倍数
local scale = Creature:GetScale(228)

GetForward

  • 描述: 返回生物的朝向方向向量

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
forwardEngine.Vector朝向方向向量
local forward = Creature:GetForward(228)

GetName

  • 描述: 获取生物名称

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
namestring生物的名称,""表示失败
local name = Creature:GetName(228)

GetCurrentProp

  • 描述: 获取生物持有的道具ID

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CreatureIdnumber生物ID

返回字段:

返回字段字段类型说明
propIdnumber生物持有的道具ID,0表示失败
local propId = Creature:GetCurrentProp(228)

GetCreatureInTrigger

  • 描述: 获取触发盒中所有生物

  • 范围: 服务端、客户端

参数列表:

参数类型说明
TriggerIDnumber触发盒ID

返回字段:

返回字段字段类型说明
idListnumber[]触发盒中所有生物的ID数组
local idList = Creature:GetCreatureInTrigger(254)
for _, v in pairs(idList) do
Log:PrintLog("[] ", v)
end

GetCreatureInSphere

  • 描述: 获取球形区域内所有生物

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CenterEngine.Vector球形区域的球心
Radiusnumber球形区域的半径

返回字段:

返回字段字段类型说明
idListnumber[]球形区域内所有生物的ID列表
local idList = Creature:GetCreatureInSphere(Engine.Vector(0, 0, 0), 10000)

GetCreatureInCuboid

  • 描述: 获取长方体区域内所有生物

  • 范围: 服务端、客户端

参数列表:

参数类型说明
CenterEngine.Vector长方体区域的中心
Lengthnumber长方体区域的长度
Widthnumber长方体区域的宽度
Heightnumber长方体区域的高度

返回字段:

返回字段字段类型说明
idListnumber[]长方体区域内所有生物ID列表
local idList = Creature:GetCreatureInCuboid(Engine.Vector(0, 0, 0), 10000, 10000, 10000)

SetMaxHealth

  • 描述: 设置生物最大血量

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Valuenumber修正后的最大血量
Creature:SetMaxHealth(223, 100)

SetCurHealth

  • 描述: 设置生物当前血量

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
Valuenumber修正后的当前血量
Creature:SetCurHealth(223, 100)

SetInvincible

  • 描述: 设置生物无敌状态

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
IsInvincibleboolean是否无敌
Creature:SetInvincible(223, true)

SetAlwaysCanRebirth

  • 描述: 设置生物无限重生

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
AlwaysCanRebirthboolean是否无限重生
Creature:SetAlwaysCanRebirth(223, true)

SetResetBehaviorAfterRebirth

  • 描述: 设置生物重生是否重置行为

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
IsResetBehaviorAfterRebirthboolean是否重置行为
Creature:SetResetBehaviorAfterRebirth(223, true)

SetInteractionable

  • 描述: 设置生物互动开关

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
IsInteractionableboolean是否开启互动开关
Creature:SetInteractionable(223, true)

ChangeAttribute

  • 描述: 设置生物的属性值。支持设置:跳跃速度或重力系数属性

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
AttributeCreature.ATTR生物属性值类型
Valuenumber生物属性值大小
Creature:ChangeAttribute(226, Creature.ATTR.GravityScale, 2)

ChangeMoveSpeed

  • 描述: 修改生物的移动速度

  • 范围: 服务端

参数列表:

参数类型说明
CreatureIdnumber生物ID
SpeedValuenumber移动速度m/s,取值范围[2.3~24]
Creature:ChangeMoveSpeed(226, 24)