Actor

继承自:

描述

模型角色节点

属性

float  
生物的移动速度
float  
生物的最大血量
float  
生物的当前血量
bool  
自动旋转
int  
通过玩家控制的角色获取玩家迷你号
bool  
actor是否具有寻路路径
float  
actor受到的重力
float  
玩家可以攀越的高度
bool  
可以自由跳跃
int  
通过玩家控制的角色获取玩家迷你皮肤id
float  
玩家可行走的坡度
float  
玩家跳跃起始速度
float  
持续按住跳跃键减缓降落速度使用
物理类型

函数

void   ()
停止自动寻路
获取当前行为状态。见枚举BehaviorState
设定移动结束时间
void  MoveTo (Vector3 target)
actor超某个位置进行移动
void  Move (Vector3 dir, bool relativeToCamera)
actor朝指定方向进行移动
void  Jump (bool jump)
actor跳跃函数,将参数设置为true时,actor将会跳跃
void  SetJumpInfo (float baseSpeed, float continueSpeed)
跳跃设置
void  NavigateTo (Vector3 target)
自动寻路至指定位置,会自动寻找最佳路径移动至指定点
跳跃间隔,处于跳跃间隔内时无法跳跃
设置是否能够连续跳跃
是否使用默认动作

事件

SBXSignal  Walking (bool isWalking)
当开始行走时会发送一次事件,停止行走时会发送一次通知
SBXSignal  Standing (bool isStanding)
结束站立时会发送一次事件,开始站立时会发送一次通知
SBXSignal  Jumping (bool isJumping)
跳跃开始时会发送一次事件,跳跃结束时会发送一次通知
SBXSignal  Flying (bool isFlying)
飞行开始时会发送一次事件,飞行结束时会发送一次通知
SBXSignal  Died (bool isDied)
死亡开始时会发送一次事件
当actor移动状态发送变化时会发送一次事件
自动寻路结束后发送事件
SBXSignal  MoveFinished (bool isMoveFinished)
移动MoveTo结束后触发

代码示例

--创建实例
local newActor = SandboxNode.New('Actor')
--设置名字
newActor.Name = "my_actor"
--设置模型
newActor.ModelId = string.format("sandboxAsset://entity/%s/body.omod","100010")
--设置位置
newActor.Position = Vector3.New(500,700,500)
--设置父节点
newActor:SetParent(Workspace)
--设置速度
newActor.Movespeed = 2 
--监听MoveFineshed事件
newActor.MoveFinished:Connect(function(isMoveFinished)
        print("actor move:"..tostring(isMoveFinished))
end)

newActor.Walking:Connect(function()
        print("actor walking..")
end)
Last Updated: