迷你世界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
KV表变量数据管理接口 Map
全局函数
全局函数
枚举
枚举库
脚本常见问题
开发者常见问题
进阶指南
全局函数
触发器脚本交互
对象介绍
KV&排行榜介绍
二维表介绍
道具实例
更新日志
更新日志
角色模块管理接口 Actor
具体函数名及描述如下:
序号 函数名 函数描述
1 GetItemId(...) 获取掉落物的类型ID
2 GetDropItemNum(...) 获取掉落物品数量
3 SetTeam(...) 设置角色队伍
4 GetTeam(...) 获取角色队伍
5 AddHp(...) 增加角色当前生命量
6 GetMaxHP(...) 获取最大血量(包括加成)
7 ShowNickName(...) 设置对象昵称是否显示
8 SetNickName(...) 设置角色昵称
9 GetNickName(...) 获取角色昵称
10 GetObjWorldId(...) 获取角色所在的星球id
11 IsPlayer(...) 检查对象是否为玩家
12 PlaySoundEffectById(...) 在指定角色身上播放音效
13 StopSoundEffectById(...) 停止指定对象身上的音效
14 PauseSoundEffectById(...) 暂停/恢复指定对象身上的音效
15 RotateFaceToActor(...) 使生物朝向目标生物
16 GetMotion(...) 获取对象的当前移动速度
17 SetBeHurtTarget(...) 设置目标仇恨目标
18 GetActorFacade(...) 获取角色外观(需要确保对象在场景中存在)
19 CompareMainModel(...) 比较两个主模型外观是否相等
20 PlayBodyParticleById(...) 在指定对象身上播放粒子特效
21 StopBodyEffectById(...) 停止指定对象身上的粒子特效
22 SetBodyParticleTransform(...) 设置指定对象身上的特效大小
23 Jump(...) 使玩家/生物跳跃一次
24 GetRidingActorObjId(...) 获取骑乘生物的objid
25 GetFaceDirection(...) 获取actor朝向
26 TryMoveToActor(...) 使对象向目标行动者移动(如果执行对象是刚创建出来的需要加个等待时间)
27 SetFaceDirection(...) 设置对象朝向
28 KillSelf(...) 击败对象
29 SetAttr(...) 设置角色属性
30 IncreasesAttr(...) 增加角色属性值
31 GetAttr(...) 获取角色属性值
32 SetActorPermissions(...) 设置对象权限
33 GetActorPermissions(...) 获取对象权限
34 SetFaceYaw(...) 设置对象面向角度
35 GetFaceYaw(...) 获取actor视角偏移角度
36 SetFacePitch(...) 设置actor视角仰望角度
37 GetFacePitch(...) 获取actor视角仰望角度
38 SetPosition(...) 设置角色位置
39 GetPosition(...) 获取对象位置
40 ChangeCustomModel(...) 改变对象外观
41 RecoverinitialModel(...) 恢复对象外观
42 ActorHurt(...) 使对象A对对象B造成伤害
43 SetImmuneType(...) 设置免疫伤害类型
44 ChangActorMoveType(...) 改变玩家移动方式
45 GetActorMovementMode(...) 取角色的移动模式
46 GetBoundSzie(...) 获取模型大小值
47 RandomFacadeID(...) 随机一个外观获取其 id字符串
48 GetObjType(...) 判断对象是否是玩家/生物
49 TryMoveToPos(...) 尝试移动到某个位置走寻路 方块坐标
50 AppendSpeed(...) 给对象附加一个速度
51 FindNearestBlock(...) 寻找对象附近某个类型方块的最近位置
52 GetEyeHeight(...) 获取角色高度
53 ClearActorWithId(...) 清除生物类型为actorid的生物
54 IsExist(...) 对象是否存在
55 PlayAnim(...) 对象播放动作
56 PlayHandAnim(...) 对象手持播放动作
57 MountActor(...) 角色骑乘
58 DisMountActor(...) 角色取消骑乘
59 PickupActor(...) 角色和角色尝试举起
60 TryPickupActorForward(...) 尝试抓取前方指定距离的对象
61 DropActor(...) 尝试投掷角色
62 EscapePickup(...) 尝试逃脱抓举
63 SetBtreeVarValue(...) 设置行为树变量
64 GetBtreeVarValue(...) 获取行为树变量
65 GetDropItemInstanceId(...) 根据掉落物objid获取道具实例id
66 SetAblePick(...) 设置掉落物是否可以拾取
67 GetEntityFacade(...) 获取实体类型外观
68 PickupItem(...) 角色拾取地上的掉落物或者投掷物
69 GetPickupObjID(...) 角色举起的角色
70 HasTags(...) 添加标签
71 GetTags(...) 获取对象标签
72 AddTags(...) 添加标签
73 RemoveTags(...) 删除标签
74 ClearTags(...) 清空所有标签
75 PlayAnimByObj(...) 对象A播放对象B动作
GetItemId
参数及类型:
objid:number掉落物objid
返回值及类型:
ret:number掉落物类型ID
该方法的主要作用: 获取掉落物的类型ID
具体使用案例如下:
lua
local itemId = Actor:GetItemId(objId)
GetDropItemNum
参数及类型:
objid:number掉落物objid
返回值及类型:
itemnum:number掉落物品数量
该方法的主要作用: 获取掉落物品数量
具体使用案例如下:
lua
local num = Actor:GetDropItemNum(objId)
SetTeam
参数及类型:
objid:number角色objid
teamid:number队伍ID AbsoluteCampTypeAbsoluteCampType
bResetAttr:bool是否重置属性(填玩家有效,默认false)
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色队伍
具体使用案例如下:
lua
-- 设置玩家为3队
local result = Actor:SetTeam(Player:GetHostUin(), AbsoluteCampType.Team3)
GetTeam
参数及类型:
objid:number角色objid
返回值及类型:
teamId:number队伍ID
该方法的主要作用: 获取角色队伍
具体使用案例如下:
lua
local team = Actor:GetTeam(Player:GetHostUin())
AddHp
参数及类型:
objid:number角色objid
hp:number血量值(hp>0增加血量
hp<0减少血量)
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 增加角色当前生命量
具体使用案例如下:
lua
local ret = Actor:AddHp(objid, hp)
GetMaxHP
参数及类型:
objid:number角色objid
返回值及类型:
value:number最大生命值
该方法的主要作用: 获取最大血量(包括加成)
具体使用案例如下:
lua
local value = Actor:GetMaxHP(objid)
ShowNickName
参数及类型:
objid:number角色objid
bshow:bool是否显示
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置对象昵称是否显示
具体使用案例如下:
lua
-- 显示昵称
local result = Actor:ShowNickName(Player:GetHostUin(), true)
-- 隐藏昵称
local result2 = Actor:ShowNickName(Player:GetHostUin(), false)
SetNickName
参数及类型:
objid:number角色objid
nickname:string昵称
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色昵称
具体使用案例如下:
lua
local result = Actor:SetNickName(Player:GetHostUin(), "昵称123")
GetNickName
参数及类型:
objid:number角色Uin
返回值及类型:
name:string角色昵称
该方法的主要作用: 获取角色昵称
具体使用案例如下:
lua
-- 获取玩家昵称
local nickname = Actor:GetNickName(Player:GetHostUin())
GetObjWorldId
参数及类型:
objid:number角色objid
返回值及类型:
mapID:number星球id
该方法的主要作用: 获取角色所在的星球id
具体使用案例如下:
lua
local worldId = Actor:GetObjWorldId(Player:GetHostUin())
IsPlayer
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool是否为玩家(true)
该方法的主要作用: 检查对象是否为玩家
具体使用案例如下:
lua
local isPlayer = Actor:IsPlayer(objId)
PlaySoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
volume:number音量
pitch:number音调
isLoop:boolean是否循环播放
返回值及类型:
ret:bool播放成功(true)
该方法的主要作用: 在指定角色身上播放音效
具体使用案例如下:
lua
-- 对象上播放3d音效10379, 音量100, 音调1, 不循环
local result = Actor:PlaySoundEffectById(Player:GetHostUin(), 10379, 100, 1, false)
StopSoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
返回值及类型:
ret:bool停止成功(true)
该方法的主要作用: 停止指定对象身上的音效
具体使用案例如下:
lua
-- 停止播放3d音效10379
local result = Actor:StopSoundEffectById(Player:GetHostUin(), 10379)
PauseSoundEffectById
参数及类型:
objid:number角色objid
soundId:number声音ID
pause:booltrue暂停/false恢复
返回值及类型:
ret:bool停止成功(true)
该方法的主要作用: 暂停/恢复指定对象身上的音效
具体使用案例如下:
lua
--暂停播放3d音效10379
local result = Actor:PauseSoundEffectById(Player:GetHostUin(), 10379, true)
RotateFaceToActor
参数及类型:
objid:number生物objid
targetid:number目标生物objid
返回值及类型:
ret:bool旋转成功(true)
该方法的主要作用: 使生物朝向目标生物
具体使用案例如下:
lua
local result = Actor:RotateFaceToActor(objId, Player:GetHostUin())
GetMotion
参数及类型:
objid:number对象objid
返回值及类型:
x:number运动速度X
y:number运动速度Y
z:number运动速度Z (未移动速度是0)
该方法的主要作用: 获取对象的当前移动速度
具体使用案例如下:
lua
local x, y, z = Actor:GetMotion(objId)
SetBeHurtTarget
参数及类型:
objid:number生物objid
targetid:number目标生物objid
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置目标仇恨目标
具体使用案例如下:
lua
local result = Actor:SetBeHurtTarget(objId, Player:GetHostUin())
GetActorFacade
参数及类型:
objid:number对象objid
bhasequip:boolean是否包含装备(默认false,目前仅玩家角色有效)
返回值及类型:
facade:string对象外观描述信息
该方法的主要作用: 获取角色外观(需要确保对象在场景中存在)
具体使用案例如下:
lua
local facade = Actor:GetActorFacade(Player:GetHostUin()) --不带装备信息
local facade2 = Actor:GetActorFacade(Player:GetHostUin(),true) --附带装备信息目前只有使用avatar模型的玩家可以生效
CompareMainModel
参数及类型:
facade1:string外观类型1
facade2:string外观类型2
返回值及类型:
ret:bool是否相等(true) ,传入参数错误返回false
该方法的主要作用: 比较两个主模型外观是否相等
具体使用案例如下:
lua
local ret = Actor:CompareMainModel(facade1, facade2)
PlayBodyParticleById
参数及类型:
objid:number生物对象objid
particleId:number或者number列表粒子特效ID
ptme:number时长(单位:秒)
offset:table偏移
rot:table旋转
scale:table缩放
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 在指定对象身上播放粒子特效
具体使用案例如下:
lua
-- 对象上播放特效,特效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)
该方法的主要作用: 停止指定对象身上的粒子特效
具体使用案例如下:
lua
local result = Actor:StopBodyEffectById(Player:GetHostUin(), 1005)
SetBodyParticleTransform
参数及类型:
objid:number生物对象objid
particleId:number粒子特效ID
offset:table偏移
rot:table旋转
scale:table缩放
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置指定对象身上的特效大小
具体使用案例如下:
lua
-- 修改对象上播放的特效,特效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})
Jump
参数及类型:
objid:number对象的objid
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 使玩家/生物跳跃一次
具体使用案例如下:
lua
local result = Actor:Jump(objId)
GetRidingActorObjId
参数及类型:
objid:number角色objid
返回值及类型:
objid:number生物objid
该方法的主要作用: 获取骑乘生物的objid
具体使用案例如下:
lua
local ridingObjId = Actor:GetRidingActorObjId(Player:GetHostUin())
GetFaceDirection
参数及类型:
objid:number对象objid
返回值及类型:
pos:table轴向上的方向
该方法的主要作用: 获取actor朝向
具体使用案例如下:
lua
local face = Actor:GetFaceDirection(objId)
TryMoveToActor
参数及类型:
objid:number执行动作的对象id
targetObjid:number目标的对象id
speed:number移动速度
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 使对象向目标行动者移动(如果执行对象是刚创建出来的需要加个等待时间)
具体使用案例如下:
lua
local objs = World:SpawnCreature(x + 5, y + 1, z, 3400, 1, true, WorldId)
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)
该方法的主要作用: 设置对象朝向
具体使用案例如下:
lua
local result = Actor:SetFaceDirection(objId, 0, 90, 0)
KillSelf
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 击败对象
具体使用案例如下:
lua
local result = Actor:KillSelf(objId)
SetAttr
参数及类型:
objid:number角色objid
atttype:number属性类型枚举RoleAttrRoleAttr
val:number属性值
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色属性
具体使用案例如下:
lua
-- 设置攻击力300
local result = Actor:SetAttr(objId, RoleAttr.Atk, 300)
IncreasesAttr
参数及类型:
objid:number角色objid
atttype:number属性类型枚举RoleAttrRoleAttr
val:number增加值
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 增加角色属性值
具体使用案例如下:
lua
local ret = Actor:IncreasesAttr(objid, atttype, val)
GetAttr
参数及类型:
objid:number角色objid
atttype:number属性类型
返回值及类型:
value:number属性值
该方法的主要作用: 获取角色属性值
具体使用案例如下:
lua
-- 获取最大血量
local maxHp = Actor:GetAttr(objId, RoleAttr.MaxHp)
SetActorPermissions
参数及类型:
objid:number对象Uin
actionattr:number行为枚举 AbilityAbility
switch:boolean是否开启
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置对象权限
具体使用案例如下:
lua
local result = Actor:SetActorPermissions(objId, Ability.EnableBeattacked, true)
GetActorPermissions
参数及类型:
objid:number对象Uin
actionattr:number行为枚举 AbilityAbility
返回值及类型:
ret:bool开关
该方法的主要作用: 获取对象权限
具体使用案例如下:
lua
local state = Actor:GetActorPermissions(objId, Ability.Attack)
SetFaceYaw
参数及类型:
objid:number生物objid
yaw:number面朝角度
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置对象面向角度
具体使用案例如下:
lua
local result = Actor:SetFaceYaw(objId, 90)
GetFaceYaw
参数及类型:
objid:number生物objid
返回值及类型:
yaw:number面朝角度
该方法的主要作用: 获取actor视角偏移角度
具体使用案例如下:
lua
local yaw = Actor:GetFaceYaw(objId)
SetFacePitch
参数及类型:
objid:number生物objid
pitch:number面仰角度
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置actor视角仰望角度
具体使用案例如下:
lua
local pitch = Actor:GetFacePitch(Player:GetHostUin())
GetFacePitch
参数及类型:
objid:number生物objid
返回值及类型:
pitch:number仰望角度
该方法的主要作用: 获取actor视角仰望角度
具体使用案例如下:
lua
local pitch = Actor:GetFacePitch(objid)
SetPosition
参数及类型:
objid:number角色objid
x:number目标X坐标
y:number目标Y坐标
z:number目标Z坐标
返回值及类型:
ret:bool设置成功(true)
该方法的主要作用: 设置角色位置
具体使用案例如下:
lua
local result = Actor:SetPosition(objId, x, y, z)
GetPosition
参数及类型:
objid:number对象objid
返回值及类型:
x:number目标X坐标
y:number目标Y坐标
z:number目标Z坐标
该方法的主要作用: 获取对象位置
具体使用案例如下:
lua
local x, y, z = Actor:GetPosition(objId)
ChangeCustomModel
参数及类型:
objid:number对象objid
modleName:string对象外观描述
返回值及类型:
ret:bool成功(true),
该方法的主要作用: 改变对象外观
具体使用案例如下:
lua
-- 改变玩家外观为萤火虫
local result = Actor:ChangeCustomModel(Player:GetHostUin(), "mob_3419")
RecoverinitialModel
参数及类型:
objid:number对象objid
返回值及类型:
code:bool成功(true)
该方法的主要作用: 恢复对象外观
具体使用案例如下:
lua
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造成伤害
具体使用案例如下:
lua
-- 玩家对生物造成近战伤害10点
local result = Actor:ActorHurt(Player:GetHostUin(), objId, 10, HurtType.Melee)
SetImmuneType
参数及类型:
objid:number对象objid
immunetype:number伤害类型枚举(HurtType)HurtType
enable:bool是否开启
返回值及类型:
code:bool成功(true)
该方法的主要作用: 设置免疫伤害类型
具体使用案例如下:
lua
-- 设置免疫爆炸伤害
local result = Actor:SetImmuneType(objId, HurtType.Bomb, true)
-- 设置免疫所有伤害
Actor:SetImmuneType(objId, HurtType.All, true)
ChangActorMoveType
参数及类型:
objid:number对象id
moveType:number行枚举 MoveTypeMoveType
返回值及类型: return:bool。如果角色没有设置的移动模式对应的能力,返回失败。
该方法的主要作用: 改变玩家移动方式
具体使用案例如下:
lua
local result = Actor:ChangActorMoveType(Player:GetHostUin(), MoveType.Flying)
GetActorMovementMode
参数及类型:
objid:number对象id
返回值及类型:
return:number返回玩家的移动模式
该方法的主要作用: 取角色的移动模式
具体使用案例如下:
lua
local moveType = Actor:GetActorMovementMode(Player:GetHostUin())
GetBoundSzie
参数及类型:
objid:number角色objid
返回值及类型:
vec:table返回值
该方法的主要作用: 获取模型大小值
具体使用案例如下:
lua
local size = Actor:GetBoundSzie(objId)
RandomFacadeID
参数及类型: 无
返回值及类型:
ret:string随机外观ID
该方法的主要作用: 随机一个外观获取其 id字符串
具体使用案例如下:
lua
local facadeID = Actor:RandomFacadeID()
GetObjType
参数及类型:
objid:number生物objid
返回值及类型:
ret:itype获取结果 ObjType
该方法的主要作用: 判断对象是否是玩家/生物
具体使用案例如下:
lua
local objType = Actor:GetObjType(objId)
TryMoveToPos
参数及类型:
objid:number角色objid
x,y,z:number坐标
cancontrol:bool是否能控制
bshowtip:bool是否显示提示
返回值及类型:
ret:bool移动成功(true)
该方法的主要作用: 尝试移动到某个位置走寻路 方块坐标
具体使用案例如下:
lua
local result = Actor:TryMoveToPos(objId, x + 10, y + 1, z, false, false)
AppendSpeed
参数及类型:
objid:number对象objid
x,y,z:number轴向方向上的速度大小
返回值及类型:
code:bool成功(true)
该方法的主要作用: 给对象附加一个速度
具体使用案例如下:
lua
-- 给对象增加个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方块坐标
该方法的主要作用: 寻找对象附近某个类型方块的最近位置
具体使用案例如下:
lua
local x|y|z = Actor:FindNearestBlock(objid, blockid, blockRange)
GetEyeHeight
参数及类型:
objid:number角色objid
返回值及类型:
hight:number高度
该方法的主要作用: 获取角色高度
具体使用案例如下:
lua
local height = Actor:GetEyeHeight(objId)
ClearActorWithId
参数及类型:
actorid:number:生物类型,bkill:bool:是否杀死生物(默认false,可以区分是否产生掉落物)
worldId:number星球id(默认当前主机所在星球)
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 清除生物类型为actorid的生物
具体使用案例如下:
lua
local result = Actor:ClearActorWithId(3400, false, WorldId)
local count = 0
for _, objId in ipairs(objs) do
local obj = GameObject:FindObject(objId)
if obj then
count = count + 1
end
end
IsExist
参数及类型:
objid:number生物objid
返回值及类型:
ret:bool存在(true)
该方法的主要作用: 对象是否存在
具体使用案例如下:
lua
local isExist = Actor:IsExist(objId)
PlayAnim
参数及类型:
objid:number对象id
animid:number,string动作id
speed:number播放速度
loop:number播放模式(AnimMode)AnimMode
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 对象播放动作
具体使用案例如下:
lua
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)
该方法的主要作用: 对象手持播放动作
具体使用案例如下:
lua
local result = Actor:PlayHandAnim(objId, 100100, 1, AnimMode.Once)
MountActor
参数及类型:
objid:number对象id
rideObjid:number被骑乘对象
isContrl:bool是否控制
isCloseAI:bool是否关闭AI
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 角色骑乘
具体使用案例如下:
lua
local result = Actor:MountActor(Player:GetHostUin(), objId, true, true)
DisMountActor
参数及类型:
objid:number对象id
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 角色取消骑乘
具体使用案例如下:
lua
local result = Actor:DisMountActor(Player:GetHostUin())
PickupActor
参数及类型:
objidA:number对象objidA
objidB:number对象objidB
返回值及类型:
ret:bool成功(true) 失败(false)
该方法的主要作用: 角色和角色尝试举起
具体使用案例如下:
lua
-- local result = Actor:PickupActor(uin, objId)
-- Actor:EscapePickup(objId) --取消抓举
--偏移量方块距离
local offset = {
x = 0,
y = 1,
z = 0,
}
--偏移量
local rotate = {
x = 0,
y = 0,
z = 0,
}
local result = Actor:PickupActor(uin,objId,100502,100113,offset,rotate)
TryPickupActorForward
参数及类型:
objid:number角色objid
distance:number距离
返回值及类型:
ret:bool抓取成功(true)
该方法的主要作用: 尝试抓取前方指定距离的对象
具体使用案例如下:
lua
local result = Actor:TryPickupActorForward(Player:GetHostUin(), 30)
DropActor
参数及类型:
objid:number投掷动作对象objid
dir:table投掷方向
isThrow:boolean是否投掷
speed:number投掷速度
hasInertance:boolean是否有惯性
返回值及类型:
ret:bool投掷成功(true)
该方法的主要作用: 尝试投掷角色
具体使用案例如下:
lua
local result = Actor:DropActor(Player:GetHostUin(), {x = 1, y = 2, z = 0}, true, 500, true)
EscapePickup
参数及类型:
objid:number被抓举的对象objid
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 尝试逃脱抓举
具体使用案例如下:
lua
self:ThreadWait(0.1)
local result = Actor:EscapePickup(objId)
SetBtreeVarValue
参数及类型:
objid:number生物对象objid
varid:string变量id
val:any根据需要传入值
返回值及类型:
ret:bool成功(true) 失败(false) 组数据无法设置
该方法的主要作用: 设置行为树变量
具体使用案例如下:
lua
local result = Actor:SetBtreeVarValue(objId, "7321982627776387751_26396", 1)
GetBtreeVarValue
参数及类型:
objid:number生物对象objid
varid:string变量id
返回值及类型: ret:成功有值 失败(nil) 组数据无法获取
该方法的主要作用: 获取行为树变量
具体使用案例如下:
lua
local result = Actor:GetBtreeVarValue(objId, "7321982627776387751_26396")
GetDropItemInstanceId
参数及类型:
objid:number掉落物objid
返回值及类型:
InstanceId:string道具实例id
该方法的主要作用: 根据掉落物objid获取道具实例id
具体使用案例如下:
lua
local InstanceId = Actor:GetDropItemInstanceId(objid)
SetAblePick
参数及类型:
objid:number掉落物objid
able:boolean是否可以拾取
返回值及类型:
ret:bool成功(true)
该方法的主要作用: 设置掉落物是否可以拾取
具体使用案例如下:
lua
local result = Actor:SetAblePick(objId, false)
GetEntityFacade
参数及类型:
objid:string实体类型
返回值及类型:
ret:string外观
该方法的主要作用: 获取实体类型外观
具体使用案例如下:
lua
--传入自定义实体prefabid
local result = Actor:GetEntityFacade("s_7509852525127419914_23098")
PickupItem
参数及类型:
objid:number角色objid
itemobjid:number掉落物或投掷物objid
bforcepickup:boolean是否强制拾取
返回值及类型:
num:number拾取数量
该方法的主要作用: 角色拾取地上的掉落物或者投掷物
具体使用案例如下:
lua
local result = Actor:PickupItem(Player:GetHostUin(), objId)
if result then
print("拾取掉落物成功 数量 = " ,result)
end
GetPickupObjID
参数及类型:
objid:number角色objid
roleType:number角色类型
返回值及类型:
ret:number举起的角色objid
该方法的主要作用: 角色举起的角色
具体使用案例如下:
lua
local ret = Actor:GetPickupObjID(objid, roleType)
HasTags
参数及类型:
objid:number对象objid
tags:string,table标签或标签数组
mathcmode:number匹配方式 (MatchMode)MatchMode
bexactmatch:bool每条标签是否精确匹配
返回值及类型:
ret:bool成功(true) 失败(false)
该方法的主要作用: 添加标签
具体使用案例如下:
lua
local result = Actor:HasTags(uin, {"A.B.C", "A.D.E", "F.G.H" },MatchMode.All,true)
local result2 = Actor:HasTags(uin, {"A.B.C", "D.E", "S.T.D" },MatchMode.All,false)
local result3 = Actor:HasTags(uin, {"A.B.C","B.C", },MatchMode.Any,false)
local result4 = Actor:HasTags(uin, { "G.H" },MatchMode.Any,false)
GetTags
参数及类型:
objid:number对象objid
返回值及类型: ret:table:标签(nil:失败)
该方法的主要作用: 获取对象标签
具体使用案例如下:
lua
local tags = Actor:GetTags(uin)
if tags then
print("玩家定义中的标签:", tags)
end
AddTags
参数及类型:
objid:number对象objid
tags:string,table标签或标签数组(数值字母下划线组合)
icount:number引用计数
返回值及类型:
ret:bool成功(true) 失败(false)
该方法的主要作用: 添加标签
具体使用案例如下:
lua
local tags = { "A.B.C", "A.D.E", "F.G.H" }
local result = Actor:AddTags(uin, tags, 1)
if result then
print("添加标签成功", result)
end
RemoveTags
参数及类型:
objid:number对象objid
tags:string,table标签或标签数组
icount:number引用计数(默认为0 ,传0全部删除)
返回值及类型:
ret:bool成功(true) 失败(false)
该方法的主要作用: 删除标签
具体使用案例如下:
lua
local ret = Actor:RemoveTags(objid, tags, icount)
ClearTags
参数及类型:
objid:number对象objid
返回值及类型:
ret:bool成功(true) 失败(false)
该方法的主要作用: 清空所有标签
具体使用案例如下:
lua
local result = Actor:ClearTags(uin)
PlayAnimByObj
参数及类型:
objidA:number对象objidA
objidB:number对象objidB
breplay:boolean是否重新播放 默认false
返回值及类型:
ret:bool成功(true)仅玩家,生物 实体生效,模型外观最好一致
该方法的主要作用: 对象A播放对象B动作
具体使用案例如下:
lua
local ret = Actor:PlayAnim(uin, "100101", 1, AnimMode.Loop) -- 玩家播放奔跑动画
if ret then
self:ThreadWait(0.2)
-- 如果objId对应的模型如果没有动画 就播放不成功 跟随播放的生物最好不要动 可能会被其他状态打断
ret = Actor:PlayAnimByObj(objId , uin ,true) -- 重新播放
end
Last updated: 2026/1/13 11:46
Pager
Previous page
对象模块管理接口 GameObject
Next page
玩家模块管理接口 Player