---@meta
---@class lualib
---@field MaxPets integer 最大宠物数量
---@field Time integer 时间 系统经过时间
---@field RunInterval integer 角色基础跑步间隔
---@field WalkInterval integer 角色基础移动间隔
---@field AttackInterval integer 角色基础攻击间隔
---@field SpeedInterval integer 角色基础施法间隔
---@field SystemNPC MapObject 系统NPC对象
---@field ItemNPC MapObject 物品NPC对象
---@field SkillNPC MapObject 技能NPC对象
---@field QuestNPC MapObject 任务NPC对象
---@field SkillResistWeight integer 魔法闪避默认值
lualib={}
---@class Ref
Ref={}
---@class Include
Include={}
---@class Point
Point={}
---@class MapObjects
---@field Count integer 数量
MapObjects = {}
---@class EntityObjects
---@field Count integer 数量
EntityObjects = {}
--local players = MapObjects();
-- print(players.Count)
-- for i=0,players.Count-1 do
-- print(players[i].name);
---@class UserItems
UserItems =
{
}
---@class HeroInfos
---@field list HeroInfo[] # 名称
---@field Count integer # 数量
HeroInfos =
{
}
---@class HeroInfo 英雄对象信息
---@field ObjectID integer
---@field Name string
---@field Level integer
---@field IClass integer
---@field IGender integer
---@field CurrentHero boolean
HeroInfo =
{
}
---@class GuildObject 行会对象
---@field Name string 工会名称
---@field Gold integer 工会金币
---@field Lv integer 工会等级
---@field Exp integer 工会经验
GuildObject = {}
---@enum TriggerType 触发器枚举
TriggerType = {
--系统触发器 参数system
Login = 0; --登录触发 (player)
LoginOut = 1; -- 登出前触发 (player)
Die = 2; --死亡触发 (player,Attacker)
MonsterDieDropItem = 3, --怪物死亡掉落物品触发(monster,userItem) 返回 boolean 确认是否掉落
--角色触发器 参数character
Attack = 10; --攻击触发 (player,target,SkillData)
Defence = 11, --受击触发 (player,target,SkillData)
Damage = 12, --受伤害结算触发(player,target,SkillData)
ChangeHP = 15; --血量变化时触发(target)
GetExp = 16; --活得经验(player,num)
LevelUp = 17; --升级触发 (player)
BeforeTakeOn = 18; --穿前装备触发 (player,useritem,site) 返回 boolean 用于确定是否可穿
BeforeTakeOff = 19; --脱前装备触发 (player,useritem,site) 返回 boolean 用于确定是否可脱
TakeOn = 20; --穿装备后触发 (player,useritem,site)
TakeOff = 21; --脱装备后触发 (player,useritem,site)
EquipChanged =22; --身上装备改变后触发 (player)
----穿脱触发顺序说明
----例: 武器位原本无装备 现操作 穿武器
----BeforeTakeOn->TakeOn->EquipChanged
----例: 武器位原本有装备 现操作 穿武器
----BeforeTakeOff->TakeOff->BeforeTakeOn->TakeOn->EquipChanged
----例: 武器位原本有装备 现操作 脱武器
----BeforeTakeOff->TakeOff->EquipChanged
BeforeEnterMap = 23; --角色进入地图前触发
--(player,weapon) -- return false 阻止诅咒 默认不阻止
BeforeUnLuck = 24;
--(player) --挖矿时触发 位于矿区进行挖矿 判断产出前触发
Mining = 27;
--挖到矿触发
--(player,item)
DigUpMineral =28;
--(player,item) --拾取触发
PickUp = 29;
-- 新套装效果触发(player,BuffID,count)
AddItemSet = 30;
-- 移除套装效果触发 (player,BuffID,count)
DelItemSet = 31,
-- 新角色触发 (player)
NewCharacter = 32,
-- 拍卖行提交商品触发|处理扣钱检查商品合格
-- (player,npc,useritem,currencyId,price,type[0 寄售|1 拍卖])
-- return false 不允许上架
Consign = 50,
--角色 怪物触发器 参数monster或character
DieDropItem = 100; --掉落物品(MapObject,userItem,site) 返回 boolean 确认是否掉落 site掉落部位 -1 怪物||背包 0~x 装备栏部位
KillMon = 101; --(myself,monster) ---杀死怪物触发 怪物人物都可以用
KillHum = 102; -- (myself,player) --杀人触发 怪物 人物都可以用
--角色 地图触发器 参数Map或character
EnterMap = 150; ---(MapObject,Map) 进入地图前触发 相同地图不触发
LeaveMap = 151; ---(MapObject,Map)进入地图后触发 相同地图不触发
}
---@enum ItemWhereType 查询物品枚举
ItemWhereType = {
Bag = 1, --查询背包
Equipment = 2, --查询装备
Storage = 4, --查询仓库
Bag_Equipment = ItemWhereType.Bag | ItemWhereType.Equipment, --背包和装备 3
Bag_Storage = ItemWhereType.Bag | ItemWhereType.Storage, --背包和仓库 5
Equipment_Storage = ItemWhereType.Equipment | ItemWhereType.Storage, --装备和背包 6
All = ItemWhereType.Bag | ItemWhereType.Equipment| ItemWhereType.Storage --查询所有 7
}
---@enum ChatType 消息类型枚举
ChatType = {
Normal = 0,
Shout = 1,
System = 2,
Hint = 3,
Announcement = 4,
Group = 5,
WhisperIn = 6,
WhisperOut = 7,
Guild = 8,
Trainer = 9,
LevelUp = 10,
System2 = 11,
Relationship = 12,
Mentor = 13,
Shout2 = 14,
Shout3 = 15,
LineMessage = 16,
}
---@enum MirClass 职业分类枚举
MirClass ={
Warrior = 0, --战士
Wizard = 1, --法师
Taoist = 2, --道士
Assassin = 3, --刺客
Archer = 4 --弓箭手
}
---@enum AttackMode 攻击模式
AttackMode=
{
Peace = 0, --和平攻击
Group = 1, -- 分组攻击
Guild = 2, -- 行会模式
EnemyGuild = 3, -- 敌对工会攻击
RedBrown = 4, -- 红名攻击
All = 5 -- 全体攻击
}
---@enum VarType 变量周期枚举
VarType = {
Temp = 0; --临时 不保存
Day = 1; --天变量
Week = 2; --周变量
Month = 3; --月变量
}
---@enum BindMode 物品绑定枚举 DontDeathdrop|DontDrop|DieDrop
BindMode = {
None = 0;
DontDeathdrop = 1;
DontDrop = 2;
DontSell = 4;
DontStore = 8;
DontTrade = 16;
DontRepair = 32;
DontUpgrade = 64;
DestroyOnDrop = 128;
BreakOnDeath = 256;
BindOnEquip = 512;
NoSRepair = 1024;
NoWeddingRing = 2048;
UnableToRent = 4096;
UnableToDisassemble = 8192;
NoMail = 16384;
NoHero = 32768;
DieDrop = 65536; --新增死亡必掉
JumpDrop = 131072; -- 新增跳转必掉 (包含 随机 跳转地图 等 突然改变坐标的情况 在随机前掉落 跳转地图前掉落 也就是掉落在跳转前的坐标)
}
---@enum ItemTypeClass 物品类型枚举
ItemTypeClass =
{
--普通 不可使用
None = 0,
--道具 可使用
UseItem = 1,
--货币 拾取消失
Currency = 2,
--装备
Equipment = 3,
}
---@class MapObject
---@field ObjectID integer 对象ID
---@field Name string # 名称
---@field CurrentMap Map # 当前地图
---@field RaceType integer #类型
---@field CurrentLocation Point #当前坐标类
---@field Dir integer #当前方向
---@field OperateTime integer 操作时间间隔
---@field Blocking boolean 固定?
system = {}
---@class NPCObject
---@field ObjectID integer 对象ID
---@field Name string # 名称
---@field CurrentMap Map # 当前地图
---@field RaceType integer #类型
---@field CurrentLocation Point #当前坐标类
---@field Dir integer #当前方向
---@field OperateTime integer 操作时间间隔
---@field Blocking boolean 固定?
---@field HasQuest boolean NPC是否存在任务
---@field CanDoQuest boolean NPC是否存在任务
---@field CanFishQuest boolean NPC是否存在任务
npc = {}
---@class MapObject
Item={}
---@class EntityObject -> MapObject monster|player|hero
---@field ObjectID integer 对象ID
---@field Name string # 名称
---@field CurrentMap Map # 当前地图
---@field CurrentLocation Point #当前坐标类
---@field Dir integer #当前方向
---@field OperateTime integer 操作时间间隔
---@field HP integer # 当前血量
---@field MaxHP integer # 最大血量
---@field PercentHealth integer # 当前血量百分比 不含%
---@field MP integer # 当前蓝量
---@field MaxMP integer # 最大蓝量
---@field Exp integer # 当前经验值
---@field MaxExp integer # 当前最大经验值
---@field Level integer # --等级
---@field Gold integer #金币数量
---@field PKPoints integer PK点
---@field Gender integer 性别 男性 = 0, 女性 = 1
---@field MirClass integer 职业枚举编号
---@field GetDC integer 获取攻击随机值 包含幸运算法
---@field GetMC integer 获取魔法随机值 包含幸运算法
---@field GetSC integer 获取道术随机值 包含幸运算法
---@field GetMAC integer 获取魔抗随机值 不包含幸运算法
---@field GetAC integer 获取防御随机值 不包含幸运算法
---@field RaceType integer #类型
---@field IsPlayer boolean 是否玩家
---@field AsPlayer PlayerObject 返回玩家
---@field IsHero boolean 是否英雄
---@field AsHero HeroObject 返回玩家
---@field IsMonster boolean 是否野怪
---@field AsMonster MonsterObject 返回玩家
---@field IsHuman boolean 是否人型[玩家|英雄]
---@field AsHuman HumanObject 返回玩家
---@field Dead boolean 是否死亡
---@field CanRegen boolean 是否可恢复
---@field CanMove boolean 是否可传送
---@field CanAttack boolean 是否可攻击
---@field CanWalk boolean 可走动
---@field CanRun boolean 可跑动
---@field InTrapRock boolean 在陷阱
---@field Blocking boolean 固定?
---@field HasMaster boolean 是否有主人
---@field MasterUid integer 主人ID
---@field CanTame boolean 怪物才有的属性
entity = {}
---@class EntityObject
player = {}
---@class PlayerObject
---@field ObjectID integer 对象ID
---@field Name string # 名称
---@field CurrentMap Map # 当前地图
---@field CurrentLocation Point #当前坐标类
---@field Dir integer #当前方向
player = {}
---@class EntityObject
monster = {}
---@class MonsterObject
monster = {}
---@class EntityObject
hero = {}
---@class HeroObject
hero = {}
---@class EntityObject
human = {}
---@class HumanObject
human = {}
---@class EntityCopy -> 对象属性快照 副本
---@field GetDC integer 获取攻击随机值 包含幸运算法
---@field GetMC integer 获取魔法随机值 包含幸运算法
---@field GetSC integer 获取道术随机值 包含幸运算法
---@field GetMAC integer 获取魔抗随机值 不包含幸运算法
---@field GetAC integer 获取防御随机值 不包含幸运算法
---@field PK integer PK点
---@field Level integer # --等级
---@field HP integer # 当前血量
---@field MaxHP integer # 最大血量
---@field MP integer # 当前蓝量
---@field MaxMP integer # 最大蓝量
---@class BaseData
---@field TargetID integer 锁定目标ID 可修改
---@field Value integer 伤害值|治疗值
---@field IsCritical boolean 是否暴击
---@field DamageWeapon boolean 是否损伤武器耐久判断
---@field Skewing boolean 部分判断需要 例如火球术 技能成功释放 但是无法击中目标 则视为偏移 无法击中
---@field DelayTime integer 技能延迟时间 根据DelayBase 和技能类型进行攻速|施法加速后的实际延迟 可修改
---@field DelayBase integer 技能延迟时间 默认在表格内配置 不可修改
---@field RigidityTime integer 技能后摇 根据RigidityBase 和技能类型进行攻速|施法加速后的实际延迟 可修改
---@field RigidityBase integer 技能后摇 默认在表格内配置 不可修改
---@field EntityCopy EntityCopy 施法人快照
---@field Id integer 技能ID
---@field GetMultiplier number 伤害倍率 (基础倍率 + 技能等级*成长倍率) ---技能快照属性
---@field GetPower integer 附加伤害 (MPower + Power)---技能快照属性
---@field Level integer 技能等级 ---技能快照属性
---@field Radius integer 技能作用范围 ---技能快照属性
---@field Point Point 技能起始坐标点
---@field Termination boolean 技能中断 不会继续接下来的其他操作
---@field MomentDash boolean 野蛮冲撞是否瞬移使用
---MPower和Power算法都是 Random(Base,Bonus+Base) 随机取基本值到变动值
BaseData = {}
---@class SkillData
---@field TargetID integer 锁定目标ID 仅读
---@field BaseData BaseData 记录最初是的数据
---@field Value integer 伤害值|治疗值
---@field IsCritical boolean 是否暴击
---@field DamageWeapon boolean 是否损伤武器耐久判断
---@field EntityCopy EntityCopy 施法人快照
---@field Id integer 技能ID
---@field GetMultiplier number 伤害倍率 (基础倍率 + 技能等级*成长倍率) ---技能快照属性
---@field GetPower integer 附加伤害 (MPower + Power)---技能快照属性
---@field Level integer 技能等级 ---技能快照属性
---@field Radius integer 技能作用范围 ---技能快照属性
---@field Termination boolean 技能中断 不会继续接下来的其他操作
---@field MomentDash boolean 野蛮冲撞是否瞬移使用
---MPower和Power算法都是 Random(Base,Bonus+Base) 随机取基本值到变动值
SkillData = {}
---@class UserItem
---@field ObjectID integer 物品ID
---@field Name string 物品名称
---@field Count integer 物品数量
---@field MaxCount integer 物品最大数量
---@field Bind BindMode 绑定枚举
---@field IBind integer 绑定枚举转int
---@field ItemWhere ItemWhereType 物品所在位置枚举
---@field ItemWhereIndex integer 物品所在位置下标
---@field HasDura boolean 物品是否拥有耐久
---@field CurrentDura integer 当前耐久度
---@field MaxDura integer 最大耐久度
---@field Weight integer 物品总重量|堆叠物品
---@field AddedStats Stats 极品属性|可能为空
---@field ExpireStart boolean 是否已经开始物品计时 物品无超时false | 装备超时未装备 false
---@field ExpireTime integer 物品超时剩余时间 毫秒 -1为 无超时
---@field Equip integer[] 数组 可能为空 测试下是否可以直接访问
---@field ItemInfo ItemInfo 物品表基础数据
userItem ={}
---@class ItemInfo --物品基本数据
---@field ID integer 物品表ID
---@field KeyName string 物品表索引
---@field Name string 物品名称
---@field NameColor string 名称颜色
---@field Type integer 类型|对应物品类型表
---@field Class ItemTypeClass 物品分类枚举
---@field IClass integer 物品分类枚举转int|0杂物 1道具 2货币 3装备
---@field Shape integer 形状|部分物品用到 例如护身符|毒药
---@field Weight integer 重量
---@field ItemSets string[] 套装ID集合
---@field BuffList string[] 物品自带buff集合
---@field Tags integer[] 标签集合
---@field Material integer 物品素材表索引
---@field StackSize integer 最大堆叠数量
---@field Price integer 价格|金币
---@field Bind BindMode 绑定枚举
---@field IBind integer 绑定枚举转int
---@field Stats Stats 基本属性
---@field ToolTip string 描述
---@field Durability integer 最大耐久度
---@field InfoType InfoType 物品类型->对应物品类型表
---@field ItemMaterial ItemMaterial 物品素材表->对应物品素材
ItemInfo={}
---@enum RequiredType
RequiredType =
{
Male = 1, --为1 男性可穿
Female = 2, --为1 女性可穿
Warrior = 3, --为1 战士可穿
Wizard = 4, --为1 法师可穿
Taoist = 5, --为1 道士可穿
HandWeight = 8, --为1 计算负重
Level = 20, --0无等级限制 大于0最低等级限制
MaxLevel = 21, --0无等级限制 大于0最大等级限制
}
---@class InfoType 物品类型
---@field ID integer 类型ID
---@field Name string 类型名称
---@field Group string 类型分类
---@field DamageDura integer 受伤耐久消耗
---@field AttackDura integer 攻击耐久消耗
---@field Equip integer[] 数组 可能为空 测试下是否可以直接访问
InfoType={}
---@class ItemMaterial 物品素材表
---@field ID integer ID
---@field Name string 名称
---@field BagLookFileName string 背包图
---@field BagLookID integer 背包图ID
---@field BagAnyEffect boolean 背包仅使用动态图
---@field BagEffectLookStartID integer 背包动态图开始ID
---@field BagEffectNumber integer 背包动态图张数
---@field BagEffectJumpNumber integer 背包动态图跳过张数
---@field BagEffectSpeed integer 背包动态图播放速度
---@field BagEffectBlend boolean 是否Blend
---@field BagEffectFileName string 背包动态图文件
---@field InnerLookFileName string 内观图
---@field InnerLookID integer 内观图ID
---@field InnerAnyEffect boolean 背包仅使用动态图
---@field InnerEffectLookStartID integer 内观动态图开始ID
---@field InnerEffectNumber integer 内观动态图张数
---@field InnerEffectSpeed integer 内观动态图播放速度
---@field InnerEffectBlend boolean -- 是否Blend
---@field InnerEffectFileName string -- 内观动态图文件
---@field ShowFileName string -- 外观文件
---@field UseSound string -- 使用音效
---@field HitSound string -- 命中音效
---@field AttackSound string -- 攻击音效
ItemMaterial = {}
---@class Map
---@field ID integer #地图下标 用作唯一性判断
---@field KeyName string #UniquID
---@field Title string #名称
---@field Width integer # 宽度
---@field Height integer # 高度
---@field NoTeleport boolean 地图是否可以传送
---@field NoReincarnation boolean 地图是否可以复活
map = {}
--- 添加触发器
--- @param map MapObject|EntityObject # 玩家对象,NPC对象,怪物对象
--- @param lua_trigger_type number # 触发器类型(应为 TriggerType 的值)
--- @param funcName string # 函数名
function lualib.AddTrigger(map, lua_trigger_type, funcName) end
--- 发送系统消息
--- 聊天窗口 选择频道
--- @param player MapObject|EntityObject 玩家对象 system 为广播
--- @param msg string 消息内容
--- @param chatType ChatType 消息类型
function lualib.SendMsg(player,msg,chatType) end
function lualib.SendMsg(player,msg) end
--- 打开浏览器
--- @param player MapObject|EntityObject 玩家对象
--- @param url string 链接
function lualib.OpenBrowser(player,url) end
---声音?
--- @param player MapObject|EntityObject 玩家对象
--- @param id integer id
function lualib.PlaySound(player,id) end
--- 给所有角色发送消息
---@param msg string 消息内容
function lualib.GlobalMessage(msg,chatType) end
function lualib.GlobalMessage(msg) end
---给玩家发送邮寄
---@param player MapObject 玩家对象
---@param title string 邮件标题
---@param msg string 邮件内容
---@param goldstr string 金币数量 字符串 --后期可能会多种货币
---@param log string 日志
---@param keyNameStr string [] 选填 支持多行文本 "KeyName,count","KeyName,count"
--例 lualib.SendMail(player , "GM" , "系统" , "99" , "测试使用" , "终极开天,5" , "随机传送卷,38" , "雷霆战戒" , "修复神水")
function lualib.SendMail(player,title,msg,goldstr,log,keyNameStr) end
function lualib.SendMail(player,title,msg,goldstr,log) end
function lualib.SendMail(player,title,msg,goldstr) end
function lualib.SendMail(player,title,msg) end
---给玩家发送邮寄
---@param player MapObject 玩家对象
---@param title string 邮件标题
---@param msg string 邮件内容
---@param keyNameStr string 物品+数量 拼接字符串 "keyName,count|keyName,count|keyName"
---@param goldstr string 金币数量
---@param log string 日志
---@param Split string 切割符 --默认|
--例 lualib.SendMailSplit(player, "GM", "系统", "99" , "终极开天,5|随机传送卷,38|雷霆战戒|修复神水","|" , "测试使用")
function lualib.SendMailSplit(player,title,msg,keyNameStr,goldstr,log,Split) end
function lualib.SendMailSplit(player,title,msg,keyNameStr,goldstr,log) end
function lualib.SendMailSplit(player,title,msg,keyNameStr,goldstr) end
function lualib.SendMailSplit(player,title,msg,keyNameStr) end
---创建系统邮件 --系统邮件需要时效内玩家上线才会收到 针对所有玩家
---@param title string 邮件标题
---@param msg string 邮件内容
---@param goldstr string 金币数量 字符串 --后期可能会多种货币
---@param outTime integer 超时时间 单位天 默认3天
---@param log string 日志
---@param keyNameStr string [] 选填 支持多行文本 "keyName,count","keyName,count"
--例 lualib.CreateSystemMail("GM", "系统", "999", 30, "测试使用", "终极开天,5", "随机传送卷,38", "雷霆战戒", "修复神水")
function lualib.CreateSystemMail(title, msg,goldstr,outTime,log,keyNameStr) end
function lualib.CreateSystemMail(title, msg,goldstr,outTime,log) end
function lualib.CreateSystemMail(title, msg,goldstr,outTime) end
function lualib.CreateSystemMail(title, msg,goldstr) end
function lualib.CreateSystemMail(title, msg) end
---创建系统邮件 分隔符模式 --系统邮件需要时效内玩家上线才会收到 针对所有玩家
---@param title string 邮件标题
---@param msg string 邮件内容
---@param keyNameStr string 物品+数量 拼接字符串 "keyName,count|keyName,count|keyName"
---@param goldstr string 金币数量 金币数量 字符串 --后期可能会多种货币 默认0
---@param outTime integer 超时时间 单位天 默认3天
---@param log string 日志
---@param Split string 切割符 --默认|
--例 lualib.CreateSystemMailSplit( "GM" , "系统" , "终极开天,5|随机传送卷,38|雷霆战戒|修复神水" , "99" , 30, "测试使用" , "|")
function lualib.CreateSystemMailSplit(title,msg,keyNameStr,goldstr,outTime,log,Split) end
function lualib.CreateSystemMailSplit(title,msg,keyNameStr,goldstr,outTime,log) end
function lualib.CreateSystemMailSplit(title,msg,keyNameStr,goldstr,outTime) end
function lualib.CreateSystemMailSplit(title,msg,keyNameStr) end
---comment 测试用
---@param message string
function lualib.TestRun(message) end
--- 添加货币
--- @param player MapObject 玩家对象
--- @param id integer 货币id
--- @param count integer 数量
--- @param log string 日志
function lualib.AddCurrency(player,id,count,log) end
function lualib.AddCurrency(player,id,count) end
--- 删除货币
--- @param player MapObject 玩家对象
--- @param id integer 货币id
--- @param count integer 数量
--- @param log string 日志
function lualib.DelCurrency(player,id,count,log) end
function lualib.DelCurrency(player,id,count) end
--- 获取货币
function lualib.GetCurrency(player,id) end
---随机
---@param player MapObject
---@param page string
---@param autoRoll boolean
function lualib.RollDie(player,page,autoRoll) end
---随机
---@param player MapObject
---@param page string
---@param autoRoll boolean
function lualib.RollYut(player,page,autoRoll) end
---添加工会金币
---@param player MapObject 玩家对象
---@param gold integer 金币
---@param log string 日志
function lualib.GiveGuildGold(player, gold, log)end
function lualib.GiveGuildGold(player, gold)end
---减少工会金币
---@param player MapObject 玩家对象
---@param gold integer 金币
---@param log string 日志
function lualib.TakeGuildGold(player, gold, log) end
function lualib.TakeGuildGold(player, gold) end
---添加宠物
---@param player MapObject 玩家对象
---@param keyName string 怪物唯一标识
---@param level integer 等级 不填默认1
---@param count integer 数量 不填默认1
function lualib.GivePet(player,keyName,level,count) end
function lualib.GivePet(player,keyName,level) end
function lualib.GivePet(player,keyName) end
---清空宠物
---@param player MapObject 玩家对象
---@param keyName string 怪物唯一标识 如不填则清空所有宠物
function lualib.RemovePets(player,keyName) end
function lualib.RemovePets(player) end
---恢复英雄
---@param player MapObject 玩家对象
function lualib.ReviveHero(player) end
---召回英雄-英雄蛋
---@param player MapObject 玩家对象
function lualib.SealHero(player) end
---删除英雄
---@param player MapObject 玩家对象
function lualib.DeleteHero(player) end
--- 传送
--- @param player EntityObject 玩家对象
--- @param mapKey string 地图索引
--- @param x integer X
--- @param y integer Y
--- @param r integer 范围
function lualib.Move(player,mapKey,x,y,r) end
function lualib.Move(player,mapKey,x,y) end
function lualib.Move(player,mapKey) end
--- 添加经验
--- @param player EntityObject 玩家对象
--- @param exp integer 数量
--- @param log string 日志
function lualib.GiveExp(player,exp,log) end
function lualib.GiveExp(player,exp) end
--- 调整角色等级
--- @param player EntityObject 玩家对象
--- @param lv integer 等级
--- @param log string 日志
function lualib.SetLevel(player, lv,log) end
function lualib.SetLevel(player, lv) end
---升级开关
---@param player EntityObject 玩家对象
---@param open boolean 开关 默认开启 开启不升级
---@param log string 日志
function lualib.DisableLevelUp(player, open,log) end
---联系升级开关
---@param player MapObject 玩家对象
---@param open boolean 开关 默认开启 开启不能连续升级
---@param log string 日志
function lualib.DisableLoopLevelUp(player, open,log) end
---经验开关
---@param player MapObject 玩家对象
---@param open boolean 开关 默认开启 开启不升级
---@param log string 日志
function lualib.DisableAddExp(player, open,log) end
---调整性别
---@param player MapObject 玩家对象
function lualib.ChangeGender(player) end
---调整职业
---@param player MapObject 玩家对象
---@param class MirClass 职业枚举
---@param log string 操作日志
function lualib.ChangeClass(player,class,log) end
---调整发型
---@param player MapObject 玩家对象
---@param hair integer 0~9 发型编号 默认不填随机
function lualib.ChangeHair(player,hair) end
---增减血量
---@param mapObjcet MapObject 玩家对象 怪物对象
---@param hp integer
function lualib.GiveHP(mapObjcet,hp,log) end
function lualib.GiveHP(mapObjcet,hp) end
---增减魔力
---@param player MapObject 玩家对象
---@param mp integer
function lualib.GiveMP(player,mp) end
---移除buff
---@param mapObjcet EntityObject 玩家对象 怪物对象
---@param keyName string buff详细状态 keyName
function lualib.RemoveBuff(mapObjcet, keyName) end
---刷新角色效果
---@param player EntityObject 玩家对象|英雄对象
function lualib.RefreshStats(player) end
---婚戒
--@param player MapObject|EntityObject 玩家对象
--function lualib.MakeWeddingRing(player) end
--离婚
---@param player MapObject 玩家对象
function lualib.ForceDivorce(player) end
---将PK值修改为当前值
---@param player MapObject 玩家对象
---@param pk integer 将PK值修改为当前值
function lualib.SetPKPoints(player,pk) end
---加入公会
---@param player MapObject 玩家对象
---@param name string 公会名称
function lualib.AddToGuild(player,name) end
---退出公会
---@param player MapObject 玩家对象
function lualib.RemoveFromGuild(player) end
---征服
---@param player MapObject 玩家对象
function lualib.ConquestGuard(player,index,infoIndex) end
---征服
---@param player MapObject 玩家对象
function lualib.ConquestGate(player,index,infoIndex) end
---征服
---@param player MapObject 玩家对象
function lualib.ConquestWall(player,index,infoIndex) end
---征服
---@param player MapObject 玩家对象
function lualib.ConquestSiege(player,index,infoIndex) end
---征服
---@param player MapObject 玩家对象
function lualib.TakeConquestGold(player,index) end
---征服
---@param player MapObject 玩家对象
function lualib.SetConquestRate(player,index,range) end
---征服
---@param player MapObject 玩家对象
function lualib.StartConquest(player,index) end
---征服
---@param player MapObject 玩家对象
function lualib.ScheduleConquest(player,index) end
---征服
function lualib.OpenGate(index,infoIndex) end
---征服
function lualib.CloseGate(index,infoIndex) end
---征服
---@param player MapObject 玩家对象
function lualib.ConquestRepairAll(player,index) end
--- 物品掉落 脚本触发一次对应怪物掉落判断 物品直接掉入玩家背包
--- @param Player MapObject 玩家对象
--- @param keyName string 怪物ID
function lualib.Drop(Player,keyName) end
--- 物品掉落
--- @param object MapObject 如果为npc|Monster创建物品掉落 为player|hero 查找背包|装备掉落
--- @param itemKey string 物品唯一ID
--- @param count integer 掉落数量
--- @param mapKey string 地图唯一ID
--- @param x integer 掉落坐标
--- @param y integer 掉落坐标
--- @param r integer 掉落坐标
--- @param owner MapObject 归属对象 为空则无归属
--- @param ownerTime integer 归属等待时间 秒
--- @param log string 日志
--- @return UserItem
function lualib.DropItem(object,itemKey,count,mapKey,x,y,r,owner,ownerTime,log) end
--- 创建物品
--- 返回创建角色物品 注意:创建物品暂无ID 需要添加给角色后才会生成ID 可以将此方法创建的物品添加给多个角色
--- @param keyName string 物品索引
--- @param count integer 数量
--- @return UserItem
function lualib.CreateItem(mapUid,keyName,count) end
--- 给物品
--- 将角色背包物品添加给角色
--- @param player MapObject 玩家对象
--- @param userItem UserItem 物品对象
--- @param log string|nil 日志
--- @return boolean
function lualib.Give(player,userItem,log) end
function lualib.Give(player,userItem) end
--- 给物品
--- 创建角色物品添加给角色背包
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @param count integer|number 数量
--- @param log string 日志
--- @return UserItem
function lualib.Give(player,keyName,count,log) end
function lualib.Give(player,keyName,count) end
---获取物品
---@param keyName string
---@return ItemInfo
function lualib.GetItemInfo(keyName) end
--- 使用物品
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @return boolean
function lualib.UseItem(player, keyName) end
---设置物品绑定装备 DontDeathdrop|DontDrop|DieDrop
---@param userItem UserItem 物品对象
---@param bindMode BindMode 绑定模式
function lualib.SetBindMode(userItem, bindMode) end;
---检测绑定模式
---@param userItem UserItem 物品对象
---@param bindMode BindMode 绑定模式
---@return boolean
function lualib.HasBindMode(userItem, bindMode) end;
---刷新物品属性
---@param player MapObject
---@param item UserItem
function lualib.RefreshItem(player, item) end
---扩充背包
---@param player MapObject
---@param site integer
---@return integer
--英雄最大 42 角色最大86
function lualib.AddBag(player, site) end
---扩充仓库
--- @param player MapObject 玩家对象
---@return integer
function lualib.AddStorage(player) end
---脱装备
---@param player MapObject 玩家对象
---@param slot string 部位名称 -1默认全脱
---@param onTrigger boolean 是否触发触发器
function lualib.UnequipItem(player,slot,onTrigger) end
function lualib.UnequipItem(player,slot) end
function lualib.UnequipItem(player) end
--- 穿装备
--- 如部位已有装备则脱下原有装备
--- 戒指手镯位 自动优先穿到空位上 如无空位,也没指定部位 则循环穿戴左右
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @param useTrigger boolean 是否触发 默认 true
--- @param site integer 指定部位 默认值0 自动判断部位 (
--- @return boolean
function lualib.TakeOn(player, keyName,useTrigger,site) end
function lualib.TakeOn(player, keyName,site) end
function lualib.TakeOn(player, keyName) end
--- 穿装备
--- 如部位已有装备则脱下原有装备
--- 戒指手镯位 自动优先穿到空位上 如无空位,也没指定部位 则循环穿戴左右
--- @param player MapObject 玩家对象
--- @param UserItem UserItem 物品索引
--- @param useTrigger boolean 是否触发 默认 true
--- @param site integer 指定部位 默认值0 自动判断部位 (
--- @return boolean
function lualib.TakeOn(player, UserItem,useTrigger,site) end
function lualib.TakeOn(player, UserItem,useTrigger) end
function lualib.TakeOn(player, UserItem) end
--- 脱装备
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @param useTrigger boolean 是否触发 默认 true
--- @param site integer 指定部位 默认值0 自动判断部位
--- @return boolean
function lualib.TakeOff(player, keyName,useTrigger,site) end
--- 脱装备
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @return boolean
function lualib.TakeOff(player, keyName) end
--- 脱装备
--- @param player MapObject 玩家对象
--- @param UserItem UserItem 物品索引
--- @param useTrigger boolean 是否触发 默认 true
--- @return boolean
function lualib.TakeOff(player, UserItem,useTrigger) end
--- 脱装备
--- @param player MapObject 玩家对象
--- @param UserItem UserItem 物品索引
--- @return boolean
function lualib.TakeOff(player, UserItem) end
--- 获取Int变量
--- Int64
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @return integer
function lualib.GetInt(player,varName) end
--- 设置Int变量
--- Int64
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @param value integer 值
function lualib.SetInt(player,varName,value) end
--- 获取String变量
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @return string
function lualib.GetStr(player,varName) end
--- 获取String变量
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @param value string 值
function lualib.SetStr(player,varName,value) end
---物品转Json
---@param item UserItem
---@return string
function lualib.Item2Json(item) end
---Json转物品
---@param json string
---@return UserItem
function lualib.Json2Item(json) end
--- 获取Int变量
--- Int64
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @return integer
function lualib.GetTempInt(player,varName) end
--- 设置Int变量
--- Int64
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @param value integer 值
--- @param varType VarType 变量周期 默认temp
function lualib.SetTempInt(player,varName,value,varType) end
function lualib.SetTempInt(player,varName,value) end
--- 获取String变量
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @return string
function lualib.GetTempStr(player,varName) end
--- 获取String变量
--- @param player MapObject 玩家对象
--- @param varName string 变量名称
--- @param value string 值
--- @param varType VarType 变量周期 默认temp
function lualib.SetTempStr(player,varName,value,varType) end
function lualib.SetTempStr(player,varName,value) end
--- 添加定时器
--- @param npc MapObject npc对象
--- @param player MapObject 玩家对象||系统system
--- @param timername string 定时器名称
--- @param funcName string 定时器回调函数 (npc,player,timername,curr_count)
--- @param time integer 周期/毫秒
--- @param count integer 次数 执行完成就移除
--- @param turnoff boolean 默认 true
--- @return boolean
--已添加是否覆盖
function lualib.AddTimer(npc,player,timername,funcName,time,count,turnoff) end
function lualib.AddTimer(npc,player,timername,funcName,time,count) end
--- 删除定时器
--- @param player MapObject 玩家对象||系统system
--- @param timername string 定时器名称
function lualib.DelTimer(player,timername) end
---删除所有定时器
--- @param player MapObject 玩家对象||系统system
function lualib.DelAllTimer(player,timername) end
---开关定时器
--- @param player MapObject 玩家对象||系统system
--- @param timername string 定时器名称
--- @param turnoff boolean 开关
function lualib.SetTimer(player,timername,turnoff) end
---延迟执行
--- @param npc MapObject npc对象
--- @param player MapObject 玩家对象||系统system
--- @param time integer 延迟毫秒数
--- @param funcName string 回调函数名 (npc,player,param)
--- @param param string 携带参数
function lualib.DelayCall(npc,player,time,funcName,param) end
function lualib.DelayCall(npc,player,time,funcName,param1,param2) end
--- 直接执行
--- @param npc MapObject npc对象
--- @param player MapObject 玩家对象||系统system
--- @param funcName string 回调函数名 (npc,player,param)
--- @param param string|string[] 携带参数
function lualib.Call(npc,player,funcName,param) end
function lualib.Call(npc,player,funcName,param1,param2) end
--- 添加计划执行
--- 写代码时注意运行时差问题 比如 因为某些原有系统卡了 00 没执行 那下一秒也得把他补上
--- 参数1为 '14:31:00' 参数2为'' 每日执行
--- 参数1为 '14:31:00' 参数2为 '2025-05-01' 为指定日期执行
--- 参数1为 '14:31:00' 参数2为 '-1,-2,-3,-4,-5,-6,-7' 周1-7执行
--- 参数1为 '14:31:00' 参数2为 '1,2,3,4,5,6,7,8,9,10,,,31' 按指定天执行
--- @param npc MapObject npc对象
--- @param player MapObject 玩家对象,大多数情况是添加个system 然后 定时对全服角色进行执行
--- @param name string 计划名称
--- @param funcName string 计划回调函数 (npc,player,schedulename)
--- @param param1 string 计划参数1
--- @param param2 string 计划参数2
function lualib.AddSchedule(npc,player,name,funcName,param1,param2) end
function lualib.AddSchedule(npc,player,name,funcName,param1) end
--- 删除计划
--- @param player MapObject 玩家对象
--- @param name string 计划名称
function lualib.DelSchedule(player,name) end
---打开输入框
---@param npc MapObject
---@param player PlayerObject
---@param funcName string 回调函数
---@param text string 输入框描述
---@param inputType integer 0 文本 1 数字 默认0
---@param btnType integer 0 确定+取消 1 确定 默认0
---@param timeout integer 过期时间/秒 默认0 不过期(但实际会因为其他npc操作而覆盖了funcName的授权)
function lualib.OpenInputBox(npc,player, funcName, text,inputType ,btnType,timeout) end;
---打开仓库对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填如果不填需要手动执行一次NPCSay
function lualib.OpenStorageWindow(npc,player,messages) end
function lualib.OpenStorageWindow(npc,player) end
---打开购买对话框 出售玩家||NPC物品
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填如果不填需要手动执行一次NPCSay
function lualib.OpenBuyWindow(npc,player,messages) end
function lualib.OpenBuyWindow(npc,player) end
---打开购买对话框 出售NPC物品
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenBuyDefaultWindow(npc,player,messages) end
function lualib.OpenBuyDefaultWindow(npc,player) end
---打开购买对话框 出售玩家物品
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenBuyUsedWindow(npc,player,messages) end
function lualib.OpenBuyUsedWindow(npc,player) end
---打开出售对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenSellWindow(npc,player,messages) end
function lualib.OpenSellWindow(npc,player) end
---打开出售+购买对话框 出售玩家||NPC物品
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenBuySellWindow(npc,player,messages) end
function lualib.OpenBuySellWindow(npc,player) end
---打开出售+购买对话框 出售NPC物品
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenBuySellDefaultWindow(npc,player,messages) end
function lualib.OpenBuySellDefaultWindow(npc,player) end
---打开回购对话框
---@param messages string 选填 如果不填需要手动执行一次NPCSay
---@@param npc MapObject
---@param player PlayerObject
function lualib.OpenBuyBackWindow(npc,player,messages) end
function lualib.OpenBuyBackWindow(npc,player) end
---打开修理对话框
---@param npc MapObject
---@param player PlayerObject
---@param isRepair boolean 是否特修
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenRepairWindow(npc,player,isRepair,messages) end
function lualib.OpenRepairWindow(npc,player,isRepair) end
---获取修理价格
---@param player MapObject 是否特修
---@param site integer 装备下标 -1全身
---@param special boolean 是否特修 默认false
---@return integer
function lualib.GetRepairPrice(player,site,special) end
function lualib.GetRepairPrice(player,site) end
---@param slot integer 装备下标枚举
---@return integer
function lualib.GetRepairPrice(player,slot,special) end
function lualib.GetRepairPrice(player,slot) end
---修理装备
---@param player MapObject 是否特修
---@param site integer 装备下标 -1全修
---@param special boolean 是否特修 默认false
function lualib.Repair(player,site,special) end
function lualib.Repair(player,site) end
---@param slot integer 装备下标枚举
function lualib.Repair(player,slot,special) end
function lualib.Repair(player,slot) end
---打开拍卖行对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenMarketWindow(npc,player,messages) end
function lualib.OpenMarketWindow(npc,player) end
---打开提交拍卖物品对话框
----@param npc MapObject
-----@param player PlayerObject
-----@param messages string 选填 如果不填需要手动执行一次NPCSay
--function lualib.OpenConsignWindow(npc,player,messages) end
--function lualib.OpenConsignWindow(npc,player) end
---打开工会创建对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenGuildCreateWindow(npc,player,messages) end
function lualib.OpenGuildCreateWindow(npc,player) end
---打开请求行会战争对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenRequestWarWindow(npc,player,messages) end
function lualib.OpenRequestWarWindow(npc,player) end
---打开创建英雄对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenHeroCreateWindow(npc,player,messages) end
function lualib.OpenHeroCreateWindow(npc,player) end
---打开英雄管理对话框
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenHeroManageWindow(npc,player,messages) end
function lualib.OpenHeroManageWindow(npc,player) end
---打开发送邮件窗口
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenSendParcelWindow(npc,player,messages) end
function lualib.OpenSendParcelWindow(npc,player) end
---打开接收邮件窗口
---@param npc MapObject
---@param player PlayerObject
---@param messages string 选填 如果不填需要手动执行一次NPCSay
function lualib.OpenCollectParcelWindow(npc,player,messages) end
function lualib.OpenCollectParcelWindow(npc,player) end
---生成怪物 地图范围内随机
---@param mapKey string 地图唯一标识
---@param monsterKey string 怪物唯一标识
---@---@param count integer 怪物数量
---@param log string 操作理由
function lualib.Mongen(mapKey,monsterKey,count,log) end
---生成怪物 指定坐标范围随机
---@param mapKey string 地图唯一标识
---@param monsterKey string 怪物唯一标识
---@---@param count integer 怪物数量 默认1
---@param x integer 坐标X
---@param y integer 坐标Y
---@param r integer 范围R
---@param log string 操作理由
function lualib.Mongen(mapKey,monsterKey,count,x,y,r,log) end
---清理地图指定怪物
---@param mapKey string 地图唯一标识 如为nil 则清理地图所有怪物
---@param monsterKey string 怪物唯一标识
---@param log string 日志
function lualib.MonClear(mapKey,monsterKey,log) end
---获取在线玩家
---@param isAlive boolean 默认 true 只获取活人
---@return MapObjects
function lualib.GetOnlinePlayers(isAlive) end
---获取地图内玩家
---@param mapIndex string 地图索引
---@param x integer X
---@param y integer Y
---@param r integer R
---@param isDummy integer 是否为假人 默认0 不包含假人 1包含假人 2只含假人
---@param isAlive boolean 默认 true
---@return MapObjects
function lualib.GetMapPlayers(mapIndex, x, y, r,isDummy, isAlive) end
---获取地图内英雄
---@param mapIndex string 地图索引
---@param x integer X
---@param y integer Y
---@param r integer R
---@return MapObjects
function lualib.GetMapHeros(mapIndex, x, y, r) end
---获取地图内怪物
---只返回活着的
---@param mapIndex string 地图索引
---@param monsterIndex string 怪物索引 如果为'' 则匹配所有怪物
---@param x integer X
---@param y integer Y
---@param r integer R
---@param includeSlave integer 是否包含宝宝 默认0 不含宝宝 1包含宝宝 2只含宝宝 英雄不算宝宝
---@return MapObjects
function lualib.GetMapMonsters(mapIndex,monsterIndex, x, y, r,includeSlave) end
---获取英雄或宝宝的主人
---@param monster EntityObject
---@return EntityObject
function lualib.GetMaster(monster) end
--02/19新增|编辑
---判断角色名称是否重复
---@param name string 名称
---@return boolean true 重复
function lualib.CheckNameExist(name) end
---修改角色名称
---@param player MapObject 角色|英雄对象
---@param name string 名称
---@return boolean true 成功
function lualib.ModifyName(player,name) end
---修改英雄名称
---@param player MapObject 角色
---@param info HeroInfo 英雄数据
---@param name string 名称
---@return boolean true 成功
function lualib.ModifyName(player,info,name) end
---踢下线
---@param player MapObject 角色
function lualib.Kick(player) end
---获取角色下英雄集合
---@param player MapObject 角色
---@return HeroInfos --英雄数据集合XHeroInfo
function lualib.GetPlayerHeros(player) end
---获取角色公会信息
---@param player MapObject 角色
---@return GuildObject 工会对象
function lualib.GetGuild(player) end
---获取公会信息
---@param name string 公会名称
---@return GuildObject 工会对象
function lualib.GetGuild(name) end
---增加行会经验
---@param guild GuildObject 公会名称
---@param exp integer|number? 公会经验
function lualib.AddGuildExp(guild,exp) end
---设置行会等级
---@param guild GuildObject 公会名称
---@param lv integer|number? 设置等级
function lualib.SetGuildLevel(guild,lv) end
---获取伴侣
---@param player MapObject 角色
---@return MapObject
function lualib.GetSpouse(player) end
--02/20新增|编辑
---设置攻击模式
---@param player MapObject
---@param mode AttackMode
---@param lock boolean 锁定状态 锁定后客户端无法调整攻击模式
function lualib.SetAttackMode(player,mode,lock) end
function lualib.SetAttackMode(player,mode) end
---物品呼出NPC对话框操作[已移除]
---function lualib.OpenItemNPCWindow(player,item,funcName) end
--添加buff 可添加自定义属性
---@param target EntityObject 玩家对象 怪物对象
---@param owner EntityObject 施法对象 不填默认为mapObject自己释放
---@param KeyName string buff详细状态 KeyName
---@param duration integer 持续时间 毫秒单位
---@param stackCount integer buff叠加层数 需要[Buff_状态数据]配置可叠加 默认为1
---@param stats string|nil buff属性 注:自定义buff属性
---@param paramStr string|nil 自定义参数 注:自定义参数
---@param x integer 偏移坐标X
---@param y integer 偏移坐标Y
---@说明 lualib.GiveBuff(player,"最强王者",600,1,"1|15,2|15,14|50,15|50","1|15,2|15,14|50,15|50")
---@ --"1|15'SetpAR(1,15)"
function lualib.GiveBuff(target,owner,KeyName,duration,stackCount,stats,paramStr,x,y) end
function lualib.GiveBuff(target,owner,KeyName,duration,stackCount,stats,paramStr) end
function lualib.GiveBuff(target,owner,KeyName,duration,stackCount,stats) end
function lualib.GiveBuff(target,KeyName,duration,stackCount,stats) end
function lualib.GiveBuff(target,KeyName,duration,stackCount) end
function lualib.GiveBuff(target,KeyName,duration) end
---@class Stats 属性集合 UserItem Buff 角色下都应包含可查询集合 与设置/属性配置表.XLSX对应
---@说明 XStats[1] key访问模式 取得id为1的属性 对应数值
---@说明 XStats:Get("最小攻击") Name访问模式 取得Name为最小攻击 对应数值
Stats={}
---@class Buff buff信息
---@field KeyName string buff KeyName
---@field Caster EntityObject buff施加人
---@field StackCount integer buff当前层数
---@field Infinite boolean buff是否永久
---@field ExpireTime integer buff到期时间
---@field StackMax integer buff最大层数 --不可修改
---@field Stats Stats 属性集合
---@field this integer this属性访问器 []访问Params自定义参数
---@field Offset Point 偏移坐标
---@field Class BuffClass buff分类
Buff ={}
--编辑角色buff 持续时间和叠加层数
---@param mapObjcet EntityObject 玩家对象 怪物对象
---@param keyName string buff详细状态 keyName
---@param duration integer 持续时间 分钟单位
---@param stackCount integer buff叠加层数 如果叠加层数为0 视为移除buff
---@param editPoint boolean 是否修改偏移坐标
---@param x integer 偏移坐标X
---@param y integer 偏移坐标Y
function lualib.EditBuff(mapObjcet,keyName,duration,stackCount,editPoint,x,y) end
function lualib.EditBuff(mapObjcet,keyName,duration,stackCount) end
function lualib.EditBuff(mapObjcet,keyName,duration) end
--2025/03/19
---弹出确认框
---@param player EntityObject 玩家对象
---@param context string 文本框显示内容
---@param btnOK string 确认按钮显示内容
---@param OKcallback string 确认按钮回调方法
---@param btnCancel string 取消按钮显示内容
---@param Cancelcalback string 取消按钮回调方法
function lualib.MessageBox(player,context,btnOK,OKcallback,btnCancel,Cancelcalback) end
---2025/03/25
---修改物品极品属性
---@param item UserItem
---@param key integer --由枚举改为key
---@param value integer
function lualib.SetItemStat(item,key,value) end
---获取物品极品属性
---@param item UserItem
---@param key integer --由枚举改为key
---@return integer
function lualib.GetItemStat(item,key) end
--2025/03/28
--- 判断角色背包中是否拥有物品
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @param itemWhereType ItemWhereType 物品定位枚举
--- @return boolean
function lualib.CheckItem(player,keyName,itemWhereType) end
---添加技能 --修改keyName 为技能 ID 看是否需要根据名称获取技能? 名称可能存在重复问题
---@param player MapObject 玩家对象
---@param id integer 技能标识
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.AddSkill(player,id,level,log) end
function lualib.AddSkill(player,id,level) end
function lualib.AddSkill(player,id) end
---@param player MapObject 玩家对象
---@param name string 技能名称 可能存在重复问题
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.AddSkill(player,name,level,log) end
function lualib.AddSkill(player,name,level) end
function lualib.AddSkill(player,name) end
---设置技能等级 --修改keyName 为技能 ID
---@param player MapObject 玩家对象
---@param id integer 技能标识
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.SetSkillLevel(player,id,level,log) end
function lualib.SetSkillLevel(player,id,level) end
function lualib.SetSkillLevel(player,id) end
---@param player MapObject 玩家对象
---@param name string 技能名称 可能存在重复问题
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.SetSkillLevel(player,name,level,log) end
function lualib.SetSkillLevel(player,name,level) end
function lualib.SetSkillLevel(player,name) end
---删除技能 --修改keyName 为技能 ID
---@param player MapObject 玩家对象
---@param id integer 技能标识
---@param log string 操作日志
---@return boolean 是否删除
function lualib.DelSkill(player,id,log) end
function lualib.DelSkill(player,id) end
---@param player MapObject 玩家对象
---@param name string 技能名称 可能存在重复问题
---@param log string 操作日志
---@return boolean 是否删除
function lualib.DelSkill(player,name,log) end
function lualib.DelSkill(player,name) end
---获取对象面板参数
---@param entity MapObject|EntityObject
---@param key integer
---@return integer
function lualib.GetObjPanel(entity,key) end
---获取对象属性参数
---@param entity MapObject|EntityObject
---@param key integer
---@return integer
function lualib.GetObjStats(entity,key) end
---直接造成伤害
---@param target MapObject 对象
---@param attacker MapObject 攻击人
---@param damage integer 伤害数字
---@param DamageType DamageType 飘字类型
function lualib.HPDamage(target,attacker,damage,DamageType) end
---@enum DamageType
DamageType =
{
Hit = 0,
Miss = 1,
Critical = 2
}
---获取表单值
---@param player MapObject 玩家对象
---@param npc MapObject NPC对象
---@param fromName string 表名
---@param controlName string 控件名
---@param value string 设置值
---@return string
function lualib.SetFormValue(player,npc,fromName,controlName,value) end
---获取物品
---@param player MapObject 玩家对象
---@param npc MapObject NPC对象
---@param fromName string 表名
---@param controlName string 控件名
---@return UserItem
function lualib.GetFormItem(player,npc,fromName,controlName) end
---获取表单值
---@param player MapObject 玩家对象
---@param npc MapObject NPC对象
---@param fromName string 表名
---@param controlName string 控件名
---@return integer
function lualib.GetFormInteger(player,npc,fromName,controlName) end
---获取表单值
---@param player MapObject 玩家对象
---@param npc MapObject NPC对象
---@param fromName string 表名
---@param controlName string 控件名
---@return number
function lualib.GetFormNum(player,npc,fromName,controlName) end
---发送消息给客户端 对表单控件赋值
---@param player MapObject 玩家对象
---@param npc MapObject NPC对象
---@param fromName string 表名
---@param controlName string 控件名
---@param value string 控件值
function lualib.SendFormValue(player,npc,fromName,controlName,value) end
---2025/03/31
---取一个随机数 包含最大值
---@param min integer
---@param max integer
---@return integer
function lualib.Random(min,max) end
---执行公式计算暴击
---@param attacker EntityObject|EntityCopy 攻击方
---@param defence EntityObject|EntityCopy 防御方
---@param data SkillData|BaseData 伤害数据
---如果暴击成功 SkillData.IsCritical 变为true SkillData.Value会变会暴击伤害值
---SkillData.IsCritical 可以手动赋值为true 结算伤害时根据IsCritical 确定是否触发暴击飘字
---@return boolean 是否暴击
function lualib.IsCritical(attacker,defence,data) end
---用幸运算法 取属性随机值 例如最小-最大攻击|道术|魔法
---内置的属性 攻击方都默认通过了幸运算法
---@param object EntityObject|EntityCopy 对象
---@param min integer 面板key
---@param max integer 面板key
---@return integer
function lualib.GetLuckPanelPower(object,min,max) end
---不用幸运算法 取属性随机值 例如最小-最大防御|魔抗
---内置的属性 防御方都没走幸运算法
---@param object EntityObject|EntityCopy 对象
---@param min integer 面板key
---@param max integer 面板key
---@return integer
function lualib.GetPanelPower(object,min,max) end
---2025/04/01 新增加
---修改UserItem名称 --并下发物品名称修改
---@param player EntityObject
---@param UserItem UserItem 物品
---@param name string 名称
function lualib.ReNameItem(player,UserItem,name) end
---刷新角色属性
---@param object EntityObject
---@param send boolean 默认true 是否及时下发属性给客户端
function lualib.RefreshStats(object,send) end
--2025/04/02
---获取两个对象之间的距离
---@param _self EntityObject|MapObject
---@param _target EntityObject|MapObject
---@return integer
function lualib.MaxDistance(_self,_target) end
---获取两点之间的距离
---@param _self Point
---@param _target Point
---@return integer
function lualib.MaxDistance(_self,_target) end
---技能获得经验升级
---@param object EntityObject 对象
---@param id integer 技能id
function lualib.LevelSkillExp(object,id) end
--2025/04/07
---获取技能等级
--function lualib.GetSkillLevel(object,id) end
--function lualib.GetSkillLevel(object,name) end
---2025/04/08
---判断飞行道具是否可以飞向目标 类似火球术
---@param _self EntityObject 自身对象
---@param _target EntityObject 目标对象
---@return boolean
function lualib.CanFly(_self, _target) end
---目标是否在自身距离范围内
---@param _self EntityObject 自身对象
---@param _target EntityObject 目标对象
---@param range integer 范围
---@return boolean
function lualib.InRange(_self, _target,range) end
---将目标往对象身边拉近多少距离
---@param _self EntityObject|MapObject 对象
---@param _target EntityObject|MapObject 目标
---@param distance integer 推动距离 默认0 推动到身前
function lualib.CloseTheTarget(_self,_target,distance) end
function lualib.CloseTheTarget(_self,_target) end
---将目标往对象身边推远多少距离
---@param _self EntityObject|MapObject 对象
---@param _target EntityObject|MapObject 目标
---@param distance integer 推动距离
---@param nextBlock boolean 检查下一个是否有障碍对象 默认true
---@param speed integer 推动速度 默认0 0默认为人物跑步速度 怪物移动速度
---@param delay integer 推动延迟 前端表现
function lualib.PushTheTarget(_self,_target,distance,nextBlock,speed,delay) end
function lualib.PushTheTarget(_self,_target,distance,nextBlock,speed) end
function lualib.PushTheTarget(_self,_target,distance,nextBlock) end
function lualib.PushTheTarget(_self,_target,distance) end
---2025-04-09
---@class Point
---@field X integer 坐标X
---@field Y integer 坐标Y
class =
{}
---取目标点身后第index个坐标位置
---@param point Point 坐标对象
---@param dir integer 方向
---@param index integer 后移位标
---@return Point
function lualib.PointMove(point,dir,index) end
---取当前方向的下一个方向
---@param dir integer 方向
---@return integer
function lualib.NextDir(dir) end
---取当前方向的上一个方向
---@param dir integer 方向
---@return integer
function lualib.PreviousDir(dir) end
---取目标点身后第index个坐标位置
---@param map Map 地图对象
---@param point Point 后移位标
---@return boolean
function lualib.ValidPoint(map,point) end
---2025-04-10
---创建一个命中伤害结算延迟方法
---方法结算后 会通过SkillData.Value 对defence进行扣血 如果Value为0 会报miss
---@param defence EntityObject 受伤害方
---@param attacker EntityObject 攻击方
---@param data BaseData 伤害数据|包含暴击|技能|倍率 ---和上面的方法不一样的 这里是BaseData
---@param index integer 技能位标
---@param x integer 坐标x
---@param y integer 坐标y
---@param delayed integer 延迟时间 默认0 0会立即执行
---@param fucName string lua函数方法名称 默认"HitDamage" delayedtime后会执行lua函数
---@param param string|integer|number params参数集合 自定义传参
function lualib.HitDamageDelayed(defence,attacker,data,index,x,y,delayed,fucName,param) end
function lualib.HitDamageDelayed(defence,attacker,data,index,x,y,delayed,fucName) end
function lualib.HitDamageDelayed(defence,attacker,data,index,x,y,delayed) end
function lualib.HitDamageDelayed(defence,attacker,data,index,x,y) end
---创建一个命中目标延迟方法
---方法内触发技能效果等操作 注意如果需要结算伤害 需要调用HitDamageDelayed传入SkillData
---@param map Map 地图对象 --- 注意 如果参数传入地图|延迟交给地图执行 角色死亡后技能仍然生效 否者角色死亡后延迟会清空
---@param target EntityObject 施法对象
---@param owner EntityObject 施法人
---@param data BaseData 伤害数据|包含暴击|技能|倍率 ---和上面的方法不一样的 这里是BaseData
---@param index integer 技能位标
---@param x integer 坐标x
---@param y integer 坐标y
---@param delayed integer 延迟时间 默认0 0会立即执行
---@param fucName string lua函数方法名称 默认"HitTarget" delayedtime后会执行lua函数
---@param param string|integer|number params参数集合 自定义传参
function lualib.HitTargetDelayed(map,target,owner,data,index,x,y,delayed,fucName,param) end
function lualib.HitTargetDelayed(target,owner,data,index,x,y,delayed,fucName,param) end
function lualib.HitTargetDelayed(target,owner,data,index,x,y,delayed,fucName) end
function lualib.HitTargetDelayed(target,owner,data,index,x,y,delayed) end
function lualib.HitTargetDelayed(target,owner,data,index,x,y) end
---创建一个坐标延迟委托 方法会在延迟后根据技能目标抓取坐标内可以作用的对象 触发下一步lua函数
---@param map Map 地图对象 --- 注意 如果参数传入地图|延迟交给地图执行 角色死亡后技能仍然生效 否者角色死亡后延迟会清空
---@param owner EntityObject 施法人
---@param data SkillData|BaseData 伤害数据|包含暴击|技能|倍率
---@param x integer 坐标x
---@param y integer 坐标y
---@param dir integer 技能方向
---@param index integer 技能下标
---@param delayed integer 延迟时间 默认0 0会立即执行
---@param pointFuncName string|nil lua函数方法名称 默认为"HitPoint" 技能检测每个坐标会调用一次函数 用于检测地面是否特殊情况
---@param delayFcName string|nil lua函数方法名称 Skill技能默认"HitTarget" Attack技能默认"HitDamage" delayedtime后会执行lua函数
---@param param string|integer|number params参数集合 自定义传参
function lualib.HitPointDelayed(map,owner,data,x,y,dir,index,delayed,pointFuncName,delayFcName,param) end
function lualib.HitPointDelayed(owner,data,x,y,dir,index,delayed,pointFuncName,delayFcName,param) end
function lualib.HitPointDelayed(owner,data,x,y,dir,index,delayed,pointFuncName,delayFcName) end
function lualib.HitPointDelayed(owner,data,x,y,dir,index,delayed,pointFuncName) end
function lualib.HitPointDelayed(owner,data,x,y,dir,index,delayed) end
function lualib.HitPointDelayed(owner,data,x,y,dir,index) end
---技能传送
---@param target EntityObject 施法人
---@param data SkillData 伤害数据|包含暴击|技能|倍率
---@return boolean
function lualib.SkillTeleport(target,data) end
---创建一个技能副本 SkillData 需要角色学习技能 否者返回为空
---方法可作用于执行判断时 附加额外的多段伤害或者替换其他技能伤害
---技能名称需要角色已拥有 获取技能等级为角色技能等级
---@param object EntityObject 获取技能对象
---@param x integer 技能坐标X
---@param y integer 技能坐标y
---@param keyName string 技能名称
---@return SkillData
function lualib.CreateSkillData(object,x,y,keyName) end
---@param id integer 技能ID
function lualib.CreateSkillData(object,x,y,id) end
---新建一个技能副本 技能与角色无关 凭空创建 只要存在技能即可
---方法可作用于执行判断时 附加额外的多段伤害或者替换其他技能伤害 并且不需要角色已经学习
---@param object EntityObject 获取技能对象
---@param x integer 技能坐标X
---@param y integer 技能坐标y
---@param keyName string 技能名称
---@param level integer 技能等级
---@return SkillData
function lualib.NewSKillData(object,x,y,keyName,level) end
---@param id integer 技能ID
function lualib.NewSKillData(object,x,y,id,level) end
---2025/04/11
---判断地图是否存在技能物体
---@param map Map 地图
---@param x integer X坐标
---@param y integer Y坐标
---@param id integer 技能ID
function lualib.CheckSpellObject(map,x,y,id) end
---2025/04/14
---在地图上创建技能物体
---@param map Map 地图
---@param data BaseData|SkillData 技能数据包
---@param catster EntityObject 施法对象
---@param x integer X坐标
---@param y integer Y坐标
---@param id integer 技能ID
---@param effectId integer 特效ID
---@param index integer 技能位标
---@param expire integer 物体存在时间毫秒
---@param tick integer 物体检查时间毫秒
---@param startDelay integer 延迟检测时间 ||只是延迟检测 物体已经创建 expire到期后不管是否检测 物体都会移除
---@param show boolean 显示物体
---@param block boolean 技能是否为障碍物 默认否
function lualib.CreateSpellObject(map, data, catster,x, y, id,effectId,index,expire,tick,startDelay,show,block) end
function lualib.CreateSpellObject(map, data, catster,x, y, id,effectId,index,expire,tick,startDelay,show) end
function lualib.CreateSpellObject(map, data, catster,x, y, id,effectId,index,expire,tick,startDelay) end
function lualib.CreateSpellObject(map, data, catster,x, y, id,effectId,index,expire,tick) end
---2025/04/17
---清空技能
---@param object EntityObject
---@param log string
function lualib.ClearSkill(object,log) end
function lualib.ClearSkill(object) end
---清空极品属性|需要手动刷新物品
---@param item UserItem 物品
function lualib.ClearItemAddStats(item) end
---重新随机极品属性|需要手动刷新物品
---@param item UserItem 物品
---@param map Map 地图
---@param keyName string 怪物名称
function lualib.RandomItemAddStats(item,map,keyName) end
---获取自定装备栏位的物品类型
---@param object EntityObject 角色对象
---@param slot integer 装备栏位
---@return integer -1无装备 0 符 1 绿粉 2 红粉
function lualib.GetEquipSlotShape(object,slot) end
---删除护栏位置物品数量|耐久
---@param object EntityObject 角色对象
---@param slot integer 装备栏位
---@param count integer 消费数量
---@param compulsory boolean 强制扣除 默认false --- 耐久不够扣除剩余耐久 返回成功
---@return boolean 成功 无装备|数量不够 false true消费成功
function lualib.EquipSlotConsumeDura(object,slot,count,compulsory) end
function lualib.EquipSlotConsumeDura(object,slot,count) end
--弃用
--function lualib.EditBuff(mapObjcet,xbuff) end
---2025/04/16
---获取宠物数量
---@param object EntityObject 对象
---@param uid string 怪物Uid 默认nil 为空则查询所有
function lualib.GetPetCount(object,uid) end
function lualib.GetPetCount(object) end
---杀死宠物数量
---@param object EntityObject 对象
---@param uid string 怪物Uid 默认nil 为空则查询所有
---@param count integer 数量 默认杀所有
function lualib.DiePets(object,uid,count) end
function lualib.DiePets(object,uid) end
function lualib.DiePets(object) end
---创建宠物数量
---@param map Map 地图
---@param x integer X坐标
---@param y integer Y坐标
---@param object EntityObject 对象
---@param uid string 怪物Uid
---@param count integer 数量 默认1
---@return EntityObjects
function lualib.CreatePets(map,x,y,object,uid,count) end
function lualib.CreatePets(map,x,y,object,uid) end
---召唤宠物到身边
---@param object EntityObject 对象
---@param uid string 怪物Uid 默认nil 为空则查询所有
function lualib.RecallPets(object,uid) end
function lualib.RecallPets(object) end
---2025/04/18
---显示目标血条
---@param object EntityObject 对象
---@param timer integer 显示时间 秒
function lualib.BroadcastHealthChange(object,timer) end
---@enum BuffProperty
BuffProperty =
{
None = 0,
RemoveOnDeath = 1,
RemoveOnExit = 2,
Debuff = 4,
PauseInSafeZone = 8,
AbsoluteTime = 16,
RemoveOnMap = 32,
}
---删除自定属性枚举buff
---@param object EntityObject 对象
---@param buffProperty BuffProperty 默认删除 debuff BuffProperty.Debuff
function lualib.RemoveBuffs(object,buffProperty) end
function lualib.RemoveBuffs(object) end
---发送NPC对话框显示消息
---@param npc MapObject
---@param player PlayerObject
---@param messages string NPC对话消息
function lualib.NPCSay(npc,player,messages) end
---迷惑怪物
---@param object EntityObject 对象为怪物才会生效
---@param time integer 迷惑时间 毫秒
function lualib.MonsterHallucination(object,time) end
---判断坐标是否安全区
---@param map Map 地图
---@param x integer x坐标
---@param y integer y坐标
---@return boolean
function lualib.MapSafeZone(map,x,y) end
---移动对象
---@param object EntityObject 对象
---@param point Point 坐标
function lualib.MoveCell(object,point) end
---2025/04/22
---冲撞失败
---@param object EntityObject 对象
function lualib.DashFail(object) end
---检查坐标内是否有不可移动物品|
---@param map Map 地图
---@param x integer X
---@param y integer Y
function lualib.HitPointBlock(map,x,y) end
---恐惧怪物
---@param object EntityObject 对象为怪物才会生效
---@param time integer 恐惧时间 毫秒
function lualib.MonsterShock(object,time) end
---狂暴怪物
---@param object EntityObject 对象为怪物才会生效
---@param time integer 恐惧时间 毫秒
function lualib.MonsterRage(object,time) end
---设置怪物的主人
---@param master EntityObject 对象
---@param monster EntityObject 对象 必须为Monster
---@param MaxPetLevel integer 最大等级
---@param PetLevel integer 最小等级
function lualib.SetMonsterMaster(master,monster,MaxPetLevel,PetLevel) end
---2025/04/23
---伤害人高亮名称
---@param object EntityObject
---@param time integer 恐惧时间 毫秒
function lualib.SetBrownTime(object,time) end
---狂暴怪物
---@param _self EntityObject 对象为人型Human才会生效
---@param target EntityObject 对象为人型Human才会生效
function lualib.AtWar(_self,target) end
---设置攻击目标
---@param _self EntityObject 对象
---@param target EntityObject 对象
function lualib.SetTarget(_self,target) end
---击杀目标
---@param target EntityObject 目标
---@param attacker EntityObject 击杀人
---@param time integer 持续时间--LastHitTime 和 ExpOwnerTime
function lualib.Die(target,attacker,time) end
---2025/04/24
---只返回活着的
---@param map Map 地图
---@param object EntityObject 对象| 用作匹配队友
---@param x integer X
---@param y integer Y
---@param r integer R
---@param includeGroup integer 是否敌对 默认0友方 1敌方 2所有
---@return MapObjects
function lualib.GetMapMonsters(map,object, x, y, r,includeGroup) end
---2025/04/25
---修改物品
---@param object EntityObject 玩家|英雄
---@param uItem UserItem 物品对象
---@param keyName string 物品唯一ID
function lualib.SetItemInfo(object,uItem,keyName) end
---2025/04/28
---2025/04/29
---
---取攻速收益速度
---@param object EntityObject
---@param speed integer
---@return integer
function lualib.AttackSpeedTime(object,speed) end
---取施法收益速度
---@param object EntityObject
---@param speed integer
---@return integer
function lualib.SpellSpeedTime(object,speed) end
---取移动收益速度
---@param object EntityObject
---@param speed integer
---@return integer
function lualib.WalkSpeedTime(object,speed) end
---取移动收益速度
---@param object EntityObject
---@param speed integer
---@return integer
function lualib.RunSpeedTime(object,speed) end
---获取地图内物体集合
---@param map Map 地图
---@param x integer X坐标
---@param y integer Y坐标
---@param r integer 范围
---@param includeEntity boolean 是否包括entity(怪物|人形)
---@return MapObjects
function lualib.GetMapObjects(map,x,y,r,includeEntity) end
---获取地图内物体集合
---@param map Map 地图
---@param object EntityObject 目标对象 判断敌友
---@param x integer X坐标
---@param y integer Y坐标
---@param r integer 范围
---@param group integer 0-所有 1-友军 2-敌人
---@param findDie boolean 是否查找死亡对象 默认否
---@return EntityObjects
function lualib.GetEntityObjects(map,object,x,y,r,group,findDie) end
function lualib.GetEntityObjects(map,object,x,y,r,group) end
---创建容器对象
---@return EntityObjects
function lualib.CreateEntityObjects() end
---判断目标是否是自己的友军
---@return boolean
function lualib.IsFriendlyTarget(_self,target) end
---判断目标是否是自己的敌人
---@return boolean
function lualib.IsAttackTarget(_self,target) end
----2025-05-23
---函数改动---所有NPC交互方法都添加了参数npc player
---@enum QuestState 消息类型枚举
QuestState = {
--None = 0, 不可设置
CanDo = 1, --任务可接
Runing = 2, --任务进行中
CanFinish = 3, --任务可交
Success = 4, --任务已完成--默认会跳转到下一子任务或者全完成
Fail = 5 --任务失败
}
---@class UserQuest 任务类
---@field ID integer 任务线ID
---@field Success boolean 完成标记 如果完成 子ID为-1
---@field Sort integer 任务子id 当前进度
---@field IState integer 任务状态 对应QuestState枚举值
---@field Group string 任务分组
---@field Name string 任务标题
UserQuest=
{
}
---@class UserQuests 任务类词典集合
---@field Count integer
UserQuests=
{
}
---添加一个全新任务 --添加任务任务默认为可接
---@param player PlayerObject 玩家对象
---@param id integer 任务id
---@param restart boolean 强制刷新任务 默认否
---@param sort integer 子任务id 默认0
function lualib.AddQuest(player,id,restart,sort) end
function lualib.AddQuest(player,id,restart) end
function lualib.AddQuest(player,id) end
---任务执行下一步 可接->进行->可交->完成|下一子任务可接
---@param player PlayerObject 玩家对象
---@param quest UserQuest 任务
function lualib.StepQuest(player,quest) end
---改变当前任务状态
---@param player PlayerObject 玩家对象
---@param quest UserQuest 任务
---@param state QuestState 改变当前任务状态
---@param trigger boolean 是否触发任务脚本 默认是
function lualib.StateQuest(player,quest,state,trigger) end
function lualib.StateQuest(player,quest,state) end
---完成整条任务线
---@param player PlayerObject 玩家对象
---@param quest UserQuest 任务
---@param trigger boolean 是否触发任务脚本 默认是 仅会触发所有子任务的success函数 用以领取奖励
function lualib.EndQuest(player,quest,trigger) end
---删除任务线
---@param player PlayerObject 玩家对象
---@param quest UserQuest 任务
function lualib.RemoveQuest(player,quest) end
---获取角色任务
---@param player PlayerObject 玩家对象
---@param id integer 任务id
---@return UserQuest 角色任务
function lualib.GetQuest(player,id) end
---获取角色任务合集
---@param player PlayerObject 玩家对象
---@return UserQuests 角色任务合集
function lualib.GetQuests(player) end
---查询NPC下玩家可接取任务
---@param player PlayerObject 玩家对象
---@param npc MapObject|NPCObject NPC
---@return UserQuests 角色任务合集
function lualib.GetCanDo(player,npc) end
---查询NPC下玩家可交付任务
---@param player PlayerObject 玩家对象
---@param npc MapObject|NPCObject NPC
---@return UserQuests 角色任务合集
function lualib.GetCanFinish(player,npc) end
--- 2025/05/27
---@enum MirDirection 角色方向枚举
MirDirection =
{
--上
Up = 0,
--上右
UpRight = 1,
--右
Right = 2,
--下右
DownRight = 3,
-- 下
Down = 4,
--下左
DownLeft = 5,
--左
Left = 6,
--上左
UpLeft = 7
}
---@enum LocationType 特效类型枚举
LocationType =
{
None = 0, --不使用
Point = 1,--固定点
Object = 2,--固定对象
ObjectDetach = 3 --锁定目标固定点
}
---技能特效
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param sourceType LocationType 来源特效类型
---@param source MapObject 来源对象
---@param targetType LocationType 目标特效类型
---@param target MapObject 目标对象
---@param time integer 特效时间
---@param speed integer 特效加速
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,targetType,target,time,speed) end
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,targetType,target,time) end
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,targetType,target) end
---技能特效
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param map Map 地图对象
---@param source Point 来源坐标
---@param target Point 目标坐标
---@param time integer 特效时间
---@param speed integer 特效加速
function lualib.FlySkillEffect(id, mirDirection, delay,map,source,target,time,speed) end
function lualib.FlySkillEffect(id, mirDirection, delay,map,source,target,time) end
function lualib.FlySkillEffect(id, mirDirection, delay,map,source,target) end
---技能特效
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param sourceType LocationType 来源特效类型
---@param source MapObject 来源对象
---@param target Point 目标坐标
---@param time integer 特效时间
---@param speed integer 特效加速
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,target,time,speed) end
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,target,time) end
function lualib.FlySkillEffect(id, mirDirection, delay,sourceType,source,target) end
---技能特效
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param source Point 来源坐标
---@param targetType LocationType 目标特效类型
---@param target MapObject 目标对象
---@param time integer 特效时间
---@param speed integer 特效加速
function lualib.FlySkillEffect(id, mirDirection, delay,source,target,targetType,time,speed) end
function lualib.FlySkillEffect(id, mirDirection, delay,source,target,targetType,time) end
function lualib.FlySkillEffect(id, mirDirection, delay,source,target,targetType) end
function lualib.FlySkillEffect(id, mirDirection, delay,source,target) end
---技能特效
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param map Map 地图对象
---@param source Point 来源坐标
---@param speed integer 特效加速
function lualib.PointSkillEffect(id, mirDirection, delay,map,source,speed) end
function lualib.PointSkillEffect(id, mirDirection, delay,map,source) end
---comment
---@param id integer 特效ID
---@param mirDirection integer 方向
---@param delay integer 延迟
---@param sourceType LocationType 来源特效类型
---@param source MapObject 来源对象
---@param speed integer 特效加速
function lualib.ObjectSkillEffect(id, mirDirection, delay, source,sourceType,speed) end
function lualib.ObjectSkillEffect(id, mirDirection, delay, source,sourceType) end
---创建坐标
---@param x integer
---@param y integer
---@return Point
function lualib.GetPoint(x,y) end
---根据名称获取特效ID
---@param name string
---@return integer
function lualib.GetEffectID(name) end
---获取特效动画播放时间
---@param id integer 特效Id
---@return integer --返回时间为 (张数-跳过张数)*speed
function lualib.EffectTime(id) end
---2025/06/03
---@enum RankType
RankType =
{
Panel = 0, --面板属性
Varrable = 1, --词典int值
}
---排行榜信息
---@class RankPanel
---@field Name string 排行榜名称
---@field IType integer RankType枚举值
---@field Key string 排行数据Key
---@field Limit integer 最低上榜值
---@field Count integer 最大排名数量
---@field Refresh integer 刷新间隔 毫秒 最低5分钟
RankPanel ={}
---玩家排名信息
---@class Rank
---@field Sort integer 排名
---@field ObjectID integer 角色Uid
---@field Value integer 角色数据值
---@field Name string 角色名称
---@field Class integer 角色职业枚举值
---@field Level integer 角色等级
Rank ={}
---排行榜玩家排名集合
---@class Ranks
---@field Count integer 集合数量
Ranks={}
---创建排行榜
---@param name string 名称 -唯一ID 如存在名称 无法创建
---@param type RankType 排行类型
---@param key string Panel为面板Key Varrable为词典Key 为空无法创建
---@param limit integer 最低上榜值 默认0
---@param count integer 排行最大数量 <=0 无法创建
---@param refresh integer 刷新时间 毫秒
---@return boolean 是否创建成功
function lualib.CreateRankPanel(name, type, key, limit, count, refresh) end
---获取排行榜
---@param name string 名称 -唯一ID
---@return RankPanel 排行榜
function lualib.GetRankPanel(name) end
---删除排行榜
---@param name string 名称 -唯一ID
function lualib.DeleteRankPanel(name) end
---编辑排行榜
---@param name string 名称 -唯一ID
---@param limit integer 最低上榜值 默认0
---@param count integer 排行最大数量 <=0 无法创建
---@param refresh integer 刷新时间 毫秒
---@return boolean
function lualib.EditRankPanel(name,limit,count,refresh) end
---立即刷新排行榜
---@param name string 名称 -唯一ID
function lualib.RefreshRankPanel(name) end
---查询排行-玩家排名
---@param name string 名称 -唯一ID
---@param _start integer 起始排名 1开始
---@param _end integer 结束排名
---@return Ranks
function lualib.SelectRankPanel(name,_start,_end) end
---2025/06/06
---添加隐藏装备
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备部位 --不填自动填充
---@param keyName string 物品表唯一ID
---@param active boolean 是否激活 默认激活
---@param send boolean 是否发送前端
---@param isRepeat boolean 是否检查重复装备 默认检查
---@return boolean
function lualib.AddHideEquip(object,key,keyName,active,send,isRepeat) end
function lualib.AddHideEquip(object,key,keyName,active,send) end
function lualib.AddHideEquip(object,key,keyName,active) end
function lualib.AddHideEquip(object,key,keyName) end
function lualib.AddHideEquip(object,keyName,active,send,isRepeat) end
function lualib.AddHideEquip(object,keyName,active,send) end
function lualib.AddHideEquip(object,keyName,active) end
function lualib.AddHideEquip(object,keyName) end
---删除隐藏装备
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备部位
---@return boolean
function lualib.RemoveHideEquip(object,key) end
---删除隐藏装备
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param keyName string 物品表唯一ID
---@param removeAll boolean 删除所有|删除首个 默认删除首个
---@return boolean
function lualib.RemoveHideEquip(object,keyName,removeAll) end
function lualib.RemoveHideEquip(object,keyName) end
---查询隐藏装备集合
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param active boolean 是否查询仅激活物品
---@param keyName string 物品表唯一ID
---@return HideItems
function lualib.GetHideEquips(object,active,keyName) end
function lualib.GetHideEquips(object,active) end
function lualib.GetHideEquips(object) end
---查询隐藏装备集合
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备集合key
---@return HideItem
function lualib.GetHideEquip(object,key) end
---激活隐藏装备
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备集合key
---@param active boolean 激活|取消激活 默认激活
function lualib.ActiveHideEquip(object,key,active) end
function lualib.ActiveHideEquip(object,key) end
---清空隐藏装备附加属性
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备集合key
function lualib.ClearStatsHideEquip(object,key) end
---设置隐藏装备附加属性
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备集合key
---@param statStr string 附加属性字符串 "1|20,2|30"
function lualib.SetStatsHideEquip(object,key,statStr) end
---编辑隐藏装备
---@param object EntityObject IsPlayer|IsHero|IsHuman 人物对象
---@param key integer 装备集合key
---@param send boolean 是否发送客户端
function lualib.EidtHideEquip(object,key,send) end
---@class HideItem
---@field ID integer 物品表IO
---@field AddedStats Stats 物品附加属性
---@field Active boolean 是否激活
---@field Send boolean 是否下发
---@field Info ItemInfo 物品
HideItem ={}
---@class HideItems
---@field Count integer
HideItems ={}
---2025/06/12
---设置物品超时时间 UserItem.ExpireStart UserItem.ExpireTime 可以获取物品超时时间 和是否开启超时计时
---@param object EntityObject player|Hero
---@param objectID integer UserItem ObjectID
---@param time integer 超时时间 分钟 -1为移除物品超时
function lualib.SetItemExpire(object,objectID,time) end
---添加隐藏装备部位物品类型 --仅影响外观 不影响属性
---@param object EntityObject player|Hero
---@param type integer 物品类型id
---@param hide boolean 是否隐藏
function lualib.HideItemType(object,type,hide) end
---清隐藏装备部位物品类型集合 显示所有
---@param object EntityObject player|Hero
function lualib.ClearHideItemType(object) end
---获取设置的隐藏装备部位集合
---@param object EntityObject player|Hero
---@return integer[]
function lualib.GetHideItemType(object) end
---2025/06/26
---查询地图
---@param keyName string
---@return Map
function lualib.GetMap(keyName) end
---查询地图
---@param id integer
---@return Map
function lualib.GetMap(id) end
---2025/07/01
---回家命令
---@param player PlayerObject
---@param random boolean 默认false 是否随机传送
function lualib.GoHome(player,random) end
function lualib.GoHome(player) end
---2025/07/03
---查询物品限制
---@param userItem UserItem 物品
---@param type RequiredType 物品限制枚举
---@return integer 返回数据值
function lualib.ItemRequired(userItem,type) end
---查询物品属性限制
---@param userItem UserItem 物品
---@param key integer 面板属性ID
---@return integer 返回数据值
function lualib.ItemRequired(userItem,key) end
---创建物品给装备
---@param player HumanObject 玩家|英雄
---@param keyName string 物品表KeyName
---@param slot integer 装备栏下标|不支持-1自动索引
---@param verify boolean 默认false 检测是否存在装备 如果栏位存在装备 不会添加
---@return UserItem|nil 成功添加的装备对象 | null
function lualib.GiveEquipment(player,keyName,slot,verify) end
function lualib.GiveEquipment(player,keyName,slot) end
---开启装备栏位
---@param player HumanObject 玩家|英雄
---@param slot integer 装备栏位
function lualib.OpenEquipSlot(player,slot) end
---关闭装备栏位
---@param player HumanObject 玩家|英雄
---@param slot integer 装备栏位
function lualib.CloseEquipSlot(player,slot) end
---开启所有装备栏位
---@param player HumanObject 玩家|英雄
function lualib.OpenAllEquipSlot(player) end
---查询栏位是否可穿戴
---@param player HumanObject 玩家|英雄
---@return boolean
function lualib.CanEquipSlot(player,slot) end
---查询玩家已开启栏位
---@param player HumanObject 玩家|英雄
---@return integer[]
function lualib.GetCanEquipSlots(player) end
---查询总装备栏位(表配置)
---@return integer[]
function lualib.GetEquipSlots() end
---2025/07/04
---移除以下函数 通过UserItem获取
---lualib.GetItemCount ---获取物品当前数量 UserItem.Count
---lualib.GetItemMaxCount ---获取物品最大数量 UserItem.MaxCount
---lualib.GetItemDura ---获取物品当前耐久 UserItem.CurrentDura
---lualib.GetItemMaxDura ---获取物品最大耐久 UserItem.MaxDura
---lualib.RemoveEquip ---使用lualib.Take or lualib.TakeByName
---lualib.GetItemsNumber --使用lualib.GetItemsCountByTags or lualib.GetItemsCountByName
---lualib.GetBagItemsCount --使用lualib.GetItemsCountsByTags or GetItemsCountsByName
---lualib.GetBagMaxCount --使用lualib.GetBagSize(player,false,type)
---lualib.GetStorageMaxCount 使用lualib.GetBagSize(player,false,ItemWhereType.Storage)
---lualib.GetEquipmentsCount 使用lualib.GetItemsCountByName
---修改函数
---lualib.ClearBag -> lualib.ClearItemGrid
---lualib.GetBagFristNull ->lualib.GetFristNull
---
---修改物品数量
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象|必须存在player下
---@param count integer 物品数量 修改数量不会大于堆叠|小于等于0删除物品
---@param log string 日志|可空
function lualib.SetItemCount(player,item,count,log) end
function lualib.SetItemCount(player,item,count) end
---减少物品数量
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象|必须存在player下
---@param count integer 物品减少数量 物品减少到0删除物品
---@param log string 日志|可空
function lualib.DecItemCount(player,item,count,log) end
function lualib.DecItemCount(player,item,count) end
---增加物品数量
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象|必须存在player下
---@param count integer 物品增加数量 最大不超过堆叠数
---@param log string 日志|可空
function lualib.IncItemCount(player,item,count,log) end
function lualib.IncItemCount(player,item,count) end
---修改物品耐久
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象
---@param dura integer 耐久
---@param log string 可空
function lualib.SetItemDura(player,item,dura,log) end
function lualib.SetItemDura(player,item,dura) end
---降低物品耐久
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象
---@param dura integer 耐久
---@param log string 可空
function lualib.DecItemDura(player,item,dura,log) end
function lualib.DecItemDura(player,item,dura) end
---添加物品耐久
---@param player EntityObject 玩家对象
---@param item UserItem 物品对象
---@param dura integer 耐久
---@param log string 可空
function lualib.IncItemDura(player,item,dura,log) end
function lualib.IncItemDura(player,item,dura) end
---下标|查询物品 UserItem
---@param player EntityObject 玩家对象
---@param index integer 物品所在下标
---@param type ItemWhereType 物品所在地址| 默认背包|不可联合查询
---@return UserItem
function lualib.GetItemByIndex(player,index,type) end
function lualib.GetItemByIndex(player,index) end
---唯一ID|查询物品 UserItem
---@param player EntityObject 玩家对象
---@param objectID integer 物品ObjectID
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return UserItem
function lualib.GetItemByObjectID(player,objectID,type) end
function lualib.GetItemByObjectID(player,objectID) end
---tag|查询物品集合 UserItems
---@param player EntityObject 玩家对象
---@param tags string 标签集合
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return UserItems
function lualib.GetItemsByTags(player,tags,type) end
function lualib.GetItemsByTags(player,tags) end
---keyname|查询物品集合 UserItems
---@param player EntityObject 玩家对象
---@param keyname string 物品表KeyName
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return UserItems
function lualib.GetItemsByName(player,keyname,type) end
function lualib.GetItemsByName(player,keyname) end
---ItemInfoType|查询物品集合 UserItems
---@param player EntityObject 玩家对象
---@param infoType integer 物品类型
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return UserItems
function lualib.GetItemsByType(player,infoType,type) end
function lualib.GetItemsByType(player,infoType) end
---tag|查询物品总数量
---@param player EntityObject 玩家对象
---@param tags string 标签集合 "1,2,3&4"
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer
function lualib.GetItemsCountByTags(player,tags,type) end
function lualib.GetItemsCountByTags(player,tags) end
---ItemInfoType|查询物品总数量
---@param player EntityObject 玩家对象
---@param infoType integer 物品类型
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer
function lualib.GetItemsCountByType(player,infoType,type) end
function lualib.GetItemsCountByType(player,infoType) end
---ItemInfoType|查询物品总数量
---@param player EntityObject 玩家对象
---@param class ItemTypeClass 物品类型
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer
function lualib.GetItemsCountByType(player,class,type) end
function lualib.GetItemsCountByType(player,class) end
---tag|批量查询物品总数量集合
---@param player EntityObject 玩家对象
---@param tags string 标签集合 "1,2,3&4|2,3"
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer[]
function lualib.GetItemsCountsByTags(player,tags,type) end
function lualib.GetItemsCountsByTags(player,tags) end
---keyname|查询物品总数量
---@param player EntityObject 玩家对象
---@param keyname string 物品表KeyName
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer
function lualib.GetItemsCountByName(player,keyname,type) end
function lualib.GetItemsCountByName(player,keyname) end
---keyname|查询物品总数量
---@param player EntityObject 玩家对象
---@param keyname string 物品表KeyName "name1,name2,name3"
---@param type ItemWhereType 物品所在地址| 默认背包|可联合查询
---@return integer[]
function lualib.GetItemsCountsByName(player,keyname,type) end
function lualib.GetItemsCountsByName(player,keyname) end
--- 删除物品 -- 返回删除具体数量
--- 删除指定物品
--- @param player MapObject 玩家对象
--- @param userItem UserItem 物品对象
--- @param log string 日志
--- @return integer 删除数量
function lualib.Take(player,userItem,log) end
function lualib.Take(player,userItem) end
--- 删除物品-- 返回删除具体数量
--- 删除指定数量|keyName的物品
--- @param player MapObject 玩家对象
--- @param keyName string 物品索引
--- @param count integer 数量
--- @param type ItemWhereType 删除地址 可联合查询|默认背包
--- @param log string 日志
--- @return integer 删除数量
function lualib.TakeByName(player,keyName,count,type,log) end
function lualib.TakeByName(player,keyName,count,type) end
function lualib.TakeByName(player,keyName,count) end
--- 删除物品-- 返回删除具体数量
--- 删除指定数量|物品标签的物品
--- @param player MapObject 玩家对象
--- @param tags string 物品标签
--- @param count integer 数量
--- @param type ItemWhereType 删除地址 可联合查询|默认背包
--- @param log string 日志
--- @return integer 删除数量
function lualib.TakeByTags(player,tags,count,type,log) end
function lualib.TakeByTags(player,tags,count,type) end
function lualib.TakeByTags(player,tags,count) end
---清空角色对应物品包 || 注意会删除对应包的所有物品
---@param object EntityObject 获取技能对象
---@param type ItemWhereType 清空对象|默认背包
function lualib.ClearItemGrid(object,type) end
function lualib.ClearItemGrid(object) end
--- 获取指定栏位格子数量
--- @param player HumanObject 玩家对象
--- @param empty boolean 默认true 获取背包空格数 false获取最大背包格子数
--- @param type ItemWhereType 位置 默认背包 不可联合查询
--- @return integer 返回格子数量
function lualib.GetBagSize(player,empty,type) end
function lualib.GetBagSize(player,empty) end
function lualib.GetBagSize(player) end
--- 获取第一个空格位置
--- @param player MapObject 玩家对象 查询背包空余
--- @param type ItemWhereType 指定位置 不可联合查询
--- @param asc boolean 排序 默认顺序
--- @return integer 背包空余
function lualib.GetFristNull(player,type,asc) end
function lualib.GetFristNull(player,type) end
function lualib.GetFristNull(player) end
---@enum BuffClass Buff分类枚举
BuffClass =
{
---普通buff
None = 0,
---装备buff
Equipment = 1,
}
--获取角色buff 查看属性 持续时间 状态等
---@param mapObjcet EntityObject 玩家对象 怪物对象
---@param keyName string buff详细状态 keyName
---@param class BuffClass buff分类 默认普通buff
---@return Buff Buff 查询不到为nil
function lualib.GetBuff(mapObjcet,keyName,class) end
function lualib.GetBuff(mapObjcet,keyName) end
---查询是否存在buff
---@param mapObjcet EntityObject 玩家对象 怪物对象
---@param keyName string buff详细状态 keyName
---@param class BuffClass buff分类 默认普通buff
---@return boolean
function lualib.HasBuff(mapObjcet,keyName,class) end
function lualib.HasBuff(mapObjcet,keyName) end
---@class UserSkill 技能类型
---@field Index integer 技能顺序
---@field ID integer ID
---@field Name string 技能名称
---@field Level integer 技能等级
---@field AddLevel integer 脚本附加等级
---@field Experience integer 技能当前经验
---@field ExperienceMax integer 技能最大经验
---@field CanUP boolean 是否可自动升下一级
---@field NeedNextLevel integer 升级需要角色等级
---@field MPCost integer MP消耗
---@field HPCost integer HP消耗
UserSkill =
{
}
---查询技能对象
---@param player EntityObject
---@param id integer
---@return UserSkill
function lualib.GetSkill(player,id) end
---查询技能对象
---@param player EntityObject
---@param keyName string
---@return UserSkill
function lualib.GetSkill(player,keyName) end
---设置技能附加等级
---@param player MapObject 玩家对象
---@param id integer 技能标识
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.SetSkillAddLevel(player,id,level,log) end
function lualib.SetSkillAddLevel(player,id,level) end
function lualib.SetSkillAddLevel(player,id) end
---设置技能附加等级
---@param player MapObject 玩家对象
---@param keyName string 技能名称 可能存在重复问题
---@param level integer 技能等级 默认0
---@param log string 操作日志 默认无
---@---@return boolean 是否添加成功
function lualib.SetSkillAddLevel(player,keyName,level,log) end
function lualib.SetSkillAddLevel(player,keyName,level) end
function lualib.SetSkillAddLevel(player,keyName) end
---@enum MirColor 颜色枚举
MirColor=
{
-- 默认色
None = 0,
-- 绿色 |工会战(同工会)|
Green = 1,
-- 红色
Red = 1<<1,
-- 深红色
DarkRed = 1<<2,
-- 紫色
Purple = 1<<3,
-- 黄色 PK>=100
Yellow = 1<<4,
-- 中紫色
MediumVioletRed = 1<<5,
-- 蓝色| 本工会
Blue = 1<<6,
-- 灰色
Gray = 1<<7,
-- 橙色|工会战(敌工会)|敌对工会
Orange = 1 << 8,
-- 鞍棕色 | 攻击色SlateBlue
SaddleBrown = 1 << 9,
-- 白色
White = 1 << 10,
-- 英雄默认色
MediumOrchid = 1 << 11,
-- 宠物等级变色
Aqua=1<<12,
-- 宠物等级变色
Aquamarine = 1<<13,
-- 宠物等级变色
LightSeaGreen = 1<<14,
-- 宠物等级变色
SlateBlue = 1<<15,
-- 宠物等级变色
SteelBlue = 1<<16,
-- 宠物等级变色
Navy = 1<<17,
-- 宠物等级变色
Peru = 1<<18,
}
---修改临时名称颜色
---@param player EntityObject 玩家
---@param color MirColor 颜色 多颜色组合为轮播
function lualib.ChangeTempNameColor(player,color) end
---修改临时名称
---@param player EntityObject 玩家
---@param name string 临时名称
function lualib.ChangeTempName(player,name) end
---修改临时外观
---@param player EntityObject 玩家
---@param looks string "屠龙,雷霆战甲,"
function lualib.ChangeTempLooks(player,looks) end
return lualib;
作者:a475529060 创建时间:2024-12-25 11:32
最后编辑:yilin01 更新时间:2025-08-20 18:55
最后编辑:yilin01 更新时间:2025-08-20 18:55