迷你世界UGC3.0脚本Wiki角色模块管理接口 Actor
迷你世界UGC3.0脚本Wiki
Menu
On this page
Sidebar Navigation
快速入门
首页组件介绍
MOD、组件介绍
什么是Lua编程
开发者常见问题
组件介绍
组件函数组件属性
全局函数
对象介绍
触发器脚本交互
脚本方法
二维表介绍
组件说明
事件
触发器事件管理组件事件管理
函数库
服务模块
世界模块管理接口 World对象模块管理接口 GameObject
角色模块管理接口 Actor
玩家模块管理接口 Player
生物模块管理接口 Monster
方块模块管理接口 Block
道具模块管理接口 Item
背包模块管理接口 Backpack
界面模块管理接口 CustomUI
图文信息模块管理接口 Graphics
区域模块管理接口 Area
容器模块管理接口 WorldContainer
资源模块管理接口 Mod
计时器模块管理接口 Timer
状态模块管理接口 Buff
消息模块管理接口 Chat
普通变量数据管理接口 Data
数组变量数据管理接口 Array
二维表变量数据管理接口 Table
云服模块管理接口 CloudSever
全局函数
全局函数脚本常见问题
开发者常见问题进阶指南
触发器脚本交互对象介绍
二维表介绍
更新日志
更新日志角色模块管理接口 Actor
具体函数名及描述如下:序号 函数名 函数描述
1 GetItemId(...) 获取掉落物的类型ID
2 GetDropItemNum(...) 获取掉落物品数量
3 SetTeam(...) 设置角色队伍
4 GetTeam(...) 获取角色队伍
5 AddHp(...) 增加角色当前生命量
6 GetMaxHP(...) 获取最大血量(包括加成)
7 SetNickName(...) 设置角色昵称
8 GetNickName(...) 获取角色昵称
9 GetCurMapId(...) 获取角色所在的mapid
10 IsPlayer(...) 检查对象是否为玩家
11 PlaySoundEffectById(...) 在指定角色身上播放音效
12 StopSoundEffectById(...) 停止指定对象身上的音效
13 PauseSoundEffectById(...) 暂停/恢复指定对象身上的音效
14 RotateFaceToActor(...) 使生物朝向目标生物
15 GetActorFacade(...) 获取生物外观(需要确保对象在场景中存在)
16 PlayBodyParticleById(...) 在指定对象身上播放粒子特效
17 StopBodyEffectById(...) 停止指定对象身上的粒子特效
18 SetBodyParticleTransform(...) 设置指定对象身上的特效大小
19 GetRidingActorObjId(...) 获取骑乘生物的objid
20 GetFaceDirection(...) 获取actor朝向
21 TryMoveToActor(...) 使对象向目标行动者移动(如果执行对象是刚创建出来的需要加个等待时间)
22 SetFaceDirection(...) 设置对象朝向
23 KillSelf(...) 击败对象
24 SetAttr(...) 设置角色属性
25 GetAttr(...) 获取角色属性值
26 SetActorPermissions(...) 设置对象权限
27 GetActorPermissions(...) 获取对象权限
28 SetFaceYaw(...) 设置对象面向角度
29 GetFaceYaw(...) 获取actor视角偏移角度
30 SetFacePitch(...) 设置actor视角仰望角度
31 GetFacePitch(...) 获取actor视角仰望角度
32 SetPosition(...) 设置角色位置
33 GetPosition(...) 获取对象位置
34 ChangeCustomModel(...) 改变对象外观
35 RecoverinitialModel(...) 恢复对象外观
36 ActorHurt(...) 使对象A对对象B造成伤害
37 SetImmuneType(...) 设置免疫伤害类型
38 ChangActorMoveType(...) 改变玩家移动方式
39 GetActorMovementMode(...) 取角色的移动模式
40 GetBoundSzie(...) 获取模型大小值
41 RandomFacadeID(...) 随机一个外观获取其 id字符串
42 GetObjType(...) 判断对象是否是玩家/生物
43 TryMoveToPos(...) 尝试移动到某个位置走寻路 方块坐标
44 AppendSpeed(...) 给对象附加一个速度
45 FindNearestBlock(...) 寻找对象附近某个类型方块的最近位置
46 GetEyeHeight(...) 获取角色高度
47 ClearActorWithId(...) 清除生物ID为actorid的生物
48 IsExist(...) 对象是否存在
49 PlayAnim(...) 对象播放动作
50 PlayHandAnim(...) 对象手持播放动作
51 MountActor(...) 角色骑乘
52 DisMountActor(...) 角色取消骑乘
53 PickupActor(...) 对象抓举对象
54 TryPickupActorForward(...) 尝试抓取前方指定距离的对象
55 DropActor(...) 尝试投掷角色
56 EscapePickup(...) 尝试逃脱抓举
GetItemId
参数及类型:
objid:number掉落物objid
返回值及类型:
ret:number掉落物类型ID
该方法的主要作用: 获取掉落物的类型ID
具体使用案例如下:local itemId = Actor:GetItemId(objId)
GetDropItemNum
参数及类型:
objid:number掉落物objid
返回值及类型:
itemnum:number掉落物品数量
该方法的主要作用: 获取掉落物品数量
具体使用案例如下:local num = Actor:GetDropItemNum(objId)
SetTeam
参数及类型:
objid:number角色objid
teamid:number队伍ID AbsoluteCampTypeAbsoluteCampType
bResetAttr:bool是否重置属性(填玩家有效,默认false)
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色队伍
具体使用案例如下:-- 设置玩家为3队
local result = Actor:SetTeam(Player:GetHostUin(), AbsoluteCampType.Team3)
GetTeam
参数及类型:
objid:number角色objid
返回值及类型:
teamId:number队伍ID
该方法的主要作用: 获取角色队伍
具体使用案例如下:local team = Actor:GetTeam(Player:GetHostUin())
AddHp
参数及类型:
objid:number角色objid
hp:number血量值(hp>0增加血量
hp<0减少血量)
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 增加角色当前生命量
具体使用案例如下:local ret = Actor:AddHp(objid, hp)
GetMaxHP
参数及类型:
objid:number角色objid
返回值及类型:
value:number最大生命值
该方法的主要作用: 获取最大血量(包括加成)
具体使用案例如下:local value = Actor:GetMaxHP(objid)
SetNickName
参数及类型:
objid:number角色objid
nickname:string昵称
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色昵称
具体使用案例如下:local result = Actor:SetNickName(Player:GetHostUin(), "昵称123")
GetNickName
参数及类型:
objid:number角色Uin
返回值及类型:
name:string角色昵称
该方法的主要作用: 获取角色昵称
具体使用案例如下:-- 获取玩家昵称
local nickname = Actor:GetNickName(Player:GetHostUin())
GetCurMapId
参数及类型:
objid:number角色objid
返回值及类型:
mapID:number当前地图ID
该方法的主要作用: 获取角色所在的mapid
具体使用案例如下:local mapId = Actor:GetCurMapId(objId)
IsPlayer
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool是否为玩家(true)
该方法的主要作用: 检查对象是否为玩家
具体使用案例如下:local isPlayer = Actor:IsPlayer(objId)
PlaySoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
volume:number音量
pitch:number音调
isLoop:boolean是否循环播放
返回值及类型:
ret:bool播放成功(true)
该方法的主要作用: 在指定角色身上播放音效
具体使用案例如下:-- 对象上播放3d音效10379, 音量100, 音调1, 不循环
local result = Actor:PlaySoundEffectById(Player:GetHostUin(), 10379, 100, 1, false)
StopSoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
返回值及类型:
ret:bool停止成功(true)
该方法的主要作用: 停止指定对象身上的音效
具体使用案例如下:-- 停止播放3d音效10379
local result = Actor:StopSoundEffectById(Player:GetHostUin(), 10379)
PauseSoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
pause:booltrue暂停/false恢复
返回值及类型:
ret:bool停止成功(true)
该方法的主要作用: 暂停/恢复指定对象身上的音效
具体使用案例如下:--暂停播放3d音效10379
local result = Actor:PauseSoundEffectById(Player:GetHostUin(), 10379, true)
RotateFaceToActor
参数及类型:
objid:number生物objid
targetid:number目标生物objid
返回值及类型:
ret:bool旋转成功(true)
该方法的主要作用: 使生物朝向目标生物
具体使用案例如下:local ret = Actor:RotateFaceToActor(objid, targetid)
GetActorFacade
参数及类型:
objid:number生物objid
返回值及类型:
facade:string生物外观对象
该方法的主要作用: 获取生物外观(需要确保对象在场景中存在)
具体使用案例如下:local facade = Actor:GetActorFacade(Player:GetHostUin())
PlayBodyParticleById
参数及类型:
objid:number生物对象objid
particleId:number或者number列表粒子特效ID
ptme:number时长(单位:秒)
offset:table偏移
rot:table旋转
scale:table缩放
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 在指定对象身上播放粒子特效
具体使用案例如下:-- 对象上播放特效,特效id为1005,播放时间10秒,特效偏移y 2个方块位置,特效y旋转45,特效缩放为2倍
local result = Actor:PlayBodyParticleById(Player:GetHostUin(), 1005, 10, {x = 0, y = 2, z = 0}, {x = 0, y = 45, z = 0}, {x = 2, y = 2, z = 2})
StopBodyEffectById
参数及类型:
objid:number生物objid
particleId:number粒子特效ID
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 停止指定对象身上的粒子特效
具体使用案例如下:local result = Actor:StopBodyEffectById(Player:GetHostUin(), 1005)
SetBodyParticleTransform
参数及类型:
objid:number生物对象objid
particleId:number粒子特效ID
offset:table偏移
rot:table旋转
scale:table缩放
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置指定对象身上的特效大小
具体使用案例如下:-- 修改对象上播放的特效,特效id为1005,播放时间10秒,特效偏移y 2个方块位置,特效y旋转45,特效缩放为2倍
local result = Actor:SetBodyParticleTransform(Player:GetHostUin(), 1005, {x = 0, y = 2, z = 0}, {x = 0, y = 45, z = 0}, {x = 2, y = 2, z = 2})
GetRidingActorObjId
参数及类型:
objid:number角色objid
返回值及类型:
objid:number生物objid
该方法的主要作用: 获取骑乘生物的objid
具体使用案例如下:local ridingObjId = Actor:GetRidingActorObjId(Player:GetHostUin())
GetFaceDirection
参数及类型:
objid:number对象objid
返回值及类型:
pos:table轴向上的方向
该方法的主要作用: 获取actor朝向
具体使用案例如下:local face = Actor:GetFaceDirection(objId)
TryMoveToActor
参数及类型:
objid:number执行动作的对象id
targetObjid:number目标的对象id
speed:number移动速度
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 使对象向目标行动者移动(如果执行对象是刚创建出来的需要加个等待时间)
具体使用案例如下:local objs = World:SpawnCreature(x + 5, y + 1, z, 3400)
local objId = objs[1]
self:ThreadWait(0.2)
-- 创建嘟嘟鸟往房主走
local result = Actor:TryMoveToActor(objId, Player:GetHostUin(), 5)
SetFaceDirection
参数及类型:
objid:number对象objid
x,y,z:number轴向上的方向
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置对象朝向
具体使用案例如下:local result = Actor:SetFaceDirection(objId, 0, 90, 0)
KillSelf
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 击败对象
具体使用案例如下:local result = Actor:KillSelf(objId)
SetAttr
参数及类型:
objid:number角色objid
atttype:number属性类型枚举RoleAttrRoleAttr
val:number属性值
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色属性
具体使用案例如下:-- 设置攻击力300
local result = Actor:SetAttr(objId, RoleAttr.Atk, 300)
GetAttr
参数及类型:
objid:number角色objid
atttype:number属性类型
返回值及类型:
value:number属性值
该方法的主要作用: 获取角色属性值
具体使用案例如下:-- 获取最大血量
local maxHp = Actor:GetAttr(objId, RoleAttr.MaxHp)
SetActorPermissions
参数及类型:
objid:number对象Uin
actionattr:number行为枚举 AbilityAbility
switch:boolean是否开启
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置对象权限
具体使用案例如下:local result = Actor:SetActorPermissions(objId, Ability.EnableBeattacked, true)
GetActorPermissions
参数及类型:
objid:number对象Uin
actionattr:number行为枚举 AbilityAbility
返回值及类型:
ret:bool开关
该方法的主要作用: 获取对象权限
具体使用案例如下:local state = Actor:GetActorPermissions(objId, Ability.Attack)
SetFaceYaw
参数及类型:
objid:number生物objid
yaw:number面朝角度
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置对象面向角度
具体使用案例如下:local result = Actor:SetFaceYaw(objId, 90)
GetFaceYaw
参数及类型:
objid:number生物objid
返回值及类型:
yaw:number面朝角度
该方法的主要作用: 获取actor视角偏移角度
具体使用案例如下:local yaw = Actor:GetFaceYaw(objId)
SetFacePitch
参数及类型:
objid:number生物objid
pitch:number面仰角度
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置actor视角仰望角度
具体使用案例如下:local pitch = Actor:GetFacePitch(Player:GetHostUin())
GetFacePitch
参数及类型:
objid:number生物objid
返回值及类型:
pitch:number仰望角度
该方法的主要作用: 获取actor视角仰望角度
具体使用案例如下:local pitch = Actor:GetFacePitch(objid)
SetPosition
参数及类型:
objid:number角色objid
x:number目标X坐标
y:number目标Y坐标
z:number目标Z坐标
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色位置
具体使用案例如下:local result = Actor:SetPosition(objId, x, y, z)
GetPosition
参数及类型:
objid:number对象objid
返回值及类型:
x:number目标X坐标
y:number目标Y坐标
z:number目标Z坐标
该方法的主要作用: 获取对象位置
具体使用案例如下:local x, y, z = Actor:GetPosition(objId)
ChangeCustomModel
参数及类型:
objid:number对象objid
modleName:string对象外观描述
返回值及类型:
ret:bool成功(true),
该方法的主要作用: 改变对象外观
具体使用案例如下:-- 改变玩家外观为萤火虫
local result = Actor:ChangeCustomModel(Player:GetHostUin(), "mob_3419")
RecoverinitialModel
参数及类型:
objid:number对象objid
返回值及类型:
code:bool成功(true)
该方法的主要作用: 恢复对象外观
具体使用案例如下:local result = Actor:RecoverinitialModel(Player:GetHostUin())
ActorHurt
参数及类型:
objid:number攻击者对象的objid
targetid:number目标对象的objid
damage:number伤害值
attacktype:number伤害类型枚举(HurtType)HurtType
ignoreResist:bool忽略伤害抵抗
ignoreTriggerEvent:bool忽略触发伤害事件
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 使对象A对对象B造成伤害
具体使用案例如下:-- 玩家对生物造成近战伤害10点
local result = Actor:ActorHurt(Player:GetHostUin(), objId, 10, HurtType.Melee)
SetImmuneType
参数及类型:
objid:number对象objid
immunetype:number伤害类型枚举(HurtType)HurtType
enable:bool是否开启
返回值及类型:
code:bool成功(true)
该方法的主要作用: 设置免疫伤害类型
具体使用案例如下:-- 设置免疫爆炸伤害
local result = Actor:SetImmuneType(objId, HurtType.Bomb, true)
-- 设置免疫所有伤害
Actor:SetImmuneType(objId, HurtType.All, true)
ChangActorMoveType
参数及类型:
objid:number对象id
moveType:number行枚举 MoveTypeMoveType
返回值及类型: return:bool。如果角色没有设置的移动模式对应的能力,返回失败。
该方法的主要作用: 改变玩家移动方式
具体使用案例如下:local result = Actor:ChangActorMoveType(Player:GetHostUin(), MoveType.Flying)
GetActorMovementMode
参数及类型:
objid:number对象id
返回值及类型:
return:number返回玩家的移动模式
该方法的主要作用: 取角色的移动模式
具体使用案例如下:local moveType = Actor:GetActorMovementMode(Player:GetHostUin())
GetBoundSzie
参数及类型:
objid:number角色objid
返回值及类型:
vec:table返回值
该方法的主要作用: 获取模型大小值
具体使用案例如下:local size = Actor:GetBoundSzie(objId)
RandomFacadeID
参数及类型: 无
返回值及类型:
ret:string随机外观ID
该方法的主要作用: 随机一个外观获取其 id字符串
具体使用案例如下:local facadeID = Actor:RandomFacadeID()
GetObjType
参数及类型:
objid:number生物objid
返回值及类型:
ret:itype获取结果 ObjType
该方法的主要作用: 判断对象是否是玩家/生物
具体使用案例如下:local objType = Actor:GetObjType(objId)
TryMoveToPos
参数及类型:
objid:number角色objid
x,y,z:number坐标
cancontrol:bool是否能控制
bshowtip:bool是否显示提示
返回值及类型:
ret:bool移动成功(true)
该方法的主要作用: 尝试移动到某个位置走寻路 方块坐标
具体使用案例如下:local result = Actor:TryMoveToPos(objId, x + 10, y + 1, z, false, false)
AppendSpeed
参数及类型:
objid:number对象objid
x,y,z:number轴向方向上的速度大小
返回值及类型:
code:bool成功(true)
该方法的主要作用: 给对象附加一个速度
具体使用案例如下:-- 给对象增加个x轴20,y轴10,z轴0的移动速度
local result = Actor:AppendSpeed(objId, 20, 10, 0)
FindNearestBlock
参数及类型:
objid:number对象objid
blockid:number查找的方块类型
blockRange:number查找范围(传1表示1格方块距离)
返回值及类型:
x,y,z:number方块坐标
该方法的主要作用: 寻找对象附近某个类型方块的最近位置
具体使用案例如下:--查找玩家50格子内最近的草块(草块ID为100)
local block = Actor:FindNearestBlock(Player:GetHostUin(), 100, 50)
GetEyeHeight
参数及类型:
objid:number角色objid
返回值及类型:
hight:number高度
该方法的主要作用: 获取角色高度
具体使用案例如下:local height = Actor:GetEyeHeight(objId)
ClearActorWithId
参数及类型: actorid:number:生物类型,bkill:bool:是否杀死生物(默认false,可以区分是否产生掉落物)
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 清除生物ID为actorid的生物
具体使用案例如下:local result = Actor:ClearActorWithId(3400, false)
IsExist
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool存在(true)
该方法的主要作用: 对象是否存在
具体使用案例如下:local isExist = Actor:IsExist(objId)
PlayAnim
参数及类型:
objid:number对象id
animid:number,string动作id
speed:number播放速度
loop:bool,number是否循环或循环模式
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 对象播放动作
具体使用案例如下:local result = Actor:PlayAnim(objId, 100100, 1, AnimMode.Default)
PlayHandAnim
参数及类型:
objid:number对象id
animid:number,string动作id
speed:number播放速度
loop:bool,number是否循环或循环模式
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 对象手持播放动作
具体使用案例如下:local result = Actor:PlayHandAnim(objId, 100100, 1, AnimMode.Once)
MountActor
参数及类型:
objid:number对象id
rideObjid:number被骑乘对象
isContrl:bool是否控制
isCloseAI:bool是否关闭AI
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 角色骑乘
具体使用案例如下:local result = Actor:MountActor(Player:GetHostUin(), objId, true, true)
DisMountActor
参数及类型:
objid:number对象id
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 角色取消骑乘
具体使用案例如下:local result = Actor:DisMountActor(Player:GetHostUin())
PickupActor
参数及类型:
objid:number角色objid
targetobjid:number目标objid
返回值及类型:
ret:bool抓取成功(true)
该方法的主要作用: 对象抓举对象
具体使用案例如下:local result = Actor:PickupActor(Player:GetHostUin(), objId)
TryPickupActorForward
参数及类型:
objid:number角色objid
distance:number距离
返回值及类型:
ret:bool抓取成功(true)
该方法的主要作用: 尝试抓取前方指定距离的对象
具体使用案例如下:local result = Actor:TryPickupActorForward(Player:GetHostUin(), 30)
DropActor
参数及类型:
objid:number投掷动作对象objid
dir:table投掷方向
isThrow:boolean是否投掷
speed:number投掷速度
hasInertance:boolean是否有惯性
返回值及类型:
ret:bool投掷成功(true)
该方法的主要作用: 尝试投掷角色
具体使用案例如下:local result = Actor:DropActor(Player:GetHostUin(), {x = 1, y = 2, z = 0}, true, 500, true)
EscapePickup
参数及类型:
objid:number被抓举的对象objid
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 尝试逃脱抓举
具体使用案例如下:self:ThreadWait(0.1)
local result = Actor:EscapePickup(objId)
Last updated: 2025/4/23 18:37Pager
Previous page
对象模块管理接口 GameObject