索引
| 接口 | 端 | 描述 |
|---|---|---|
| InitLingmienAetherMod | 服务端 | [必用]注册灵免以太模组信息 |
| BindNextTickFunction | 双端 | 绑定下一帧执行函数,可以携带该函数所需的参数,1Tick内重复绑定不会生效 |
| BindNextTickFunctionAboutUUID | 双端 | 绑定下一帧执行函数,可以携带该函数所需的参数 |
| SetIsDisable | 服务端 | 服务端设置,需要在服务端初始化后直接调用 |
| GetServerIsDisable | 客户端 | 获取服务端设置信息 |
| AddObjectFunction | 客户端 | 给实例添加函数库 |
| GetLingmienAetherManifest | 客户端 | 获取灵免以太函数库清单 |
| Notify | 双端 | 双端之间的通信 |
| UseServerApi | 客户端 | 使用服务端接口 |
| UseClientApi | 服务端 | 使用客户端接口,但无法获得返回值 |
| GetIsStart | 客户端 | 获取玩家是否处于进入游戏状态(这里指进入灵免以太主界面后是否点击了"单人游戏") |
| BindGameHighTickFunction | 客户端 | 绑定游戏高Tick函数 |
| BindMouseWheelFunction | 客户端 | 绑定鼠标滚轮事件 |
| Lerp | 客户端 | 常规非线性计算 |
| SLerp | 客户端 | 角度形非线性计算 |
| GetLingmienAetherMod | 服务端 | 获取已注册的灵免以太模组数据 |
| GetTwoPosLength | 双端 | 获取目标坐标与第一坐标之间的距离 |
| DeltaDateTime | 双端 | 计算日期差值,FirstDate-SecondDate |
| SplitListByQuantity | 双端 | 按数量拆分list |
| SortListByNumberMagnitude | 双端 | 根据数字排序由Dict元素组成的List--[{}, {}, ...] |
| SortDictByNumberMagnitude | 双端 | 据数字排序由Dict元素组成的Dict--{'x':{}, 'y':{}, ...} |
| GetDictExtremeValueKey | 双端 | 获取Dict中指定Key的极值对应的键--{'x':float, 'y':float, ...} |
| GetPlatForm | 服务端 | 获取服务端运行环境 |
| ConvertUnicodeDictToUtf8 | 双端 | 将字典中的unicode编码转换为utf-8编码 |
| EncryptDict | 服务端 | 加密数据为字符串 |
| DecryptDict | 服务端 | 解密数据 |
InitLingmienAetherMod
服务端
-
描述
[必用]注册灵免以太模组信息 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| ModData | dict | 模组信息 |
-
返回值
无 -
备注
ModData(dict)说明
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| ModName | str | 模组名称 |
| Version | str | 模组版本号 |
| LogoPath | str | logo路径,从textures开始(选填) |
| Content | str | 模组简介 |
效果图:

- 示例
def __init__(self, namespace, systemNam):
...
self.LA = self.GetLASys('密钥')
@Event.ClientEvent('UiInitFinished')
def UiInitFinished(self, *args)
ModData = {
'ModName': 'Lingmien Aether',
'Version': '1.0.2',
'LogoPath': 'textures/ui/LA/logo_text',
'Content': 'Lingmien Aether(灵免以太)'
'\n版本:1.0.2'
'\n制作人员:大肥免开发组\n'
'\nLAAPI Mod前置组件管理器',
}
self.LA.UseServerApi('InitLingmienAetherMod', [ModData])
BindNextTickFunction
双端
-
描述
绑定下一帧执行函数,可以携带该函数所需的参数,1Tick内重复绑定不会生效 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FunctionInstance | function | 函数,例如self.CreateMsg,不要填写成self.CreateMsg()样式 |
| *args | any | 绑定函数的参数 |
-
返回值
无 -
备注
无 -
示例 无
BindNextTickFunctionAboutUUID
双端
-
描述
绑定下一帧执行函数,可以携带该函数所需的参数 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FunctionInstance | function | 函数,例如self.CreateMsg,不要填写成self.CreateMsg()样式 |
| *args | any | 绑定函数的参数 |
-
返回值
无 -
备注
无 -
示例 无
SetIsDisable
服务端
-
描述
服务端设置,需要在服务端初始化后直接调用 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Type | str | 设置类型 |
| Bool | bool | 是否启用,默认为None |
-
返回值
该设置的布尔值(bool) -
备注
-
设置类型:
参数名 数据类型 默认值 说明 AntiCheatUseServerApi bool True 联机大厅、网络游戏UseServerApi反作弊 AntiCheatPing bool True 联机大厅、网络游戏弱网反作弊 IsStartUI bool True 是否启用灵免以太主界面,禁用后主界面相关接口及功能将失效 IsLobby bool Auto 是否为联机大厅、网络游戏环境 IsLobbyKick bool False 是否限制玩家二次进入本房间/存档 -
-
示例
def __init__(self, namespace, systemName):
...
self.LA = self.GetLASys('密钥')
self.LA.SetIsDisable('IsStartUI', False)
GetServerIsDisable
客户端
-
描述
获取服务端设置信息 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Type | str | 设置类型 |
-
返回值
该设置的布尔值(bool) -
备注
设置类型列表 -
示例 空
AddObjectFunction
客户端
-
描述
给实例添加函数库 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Manifest | list | 函数库清单 |
-
返回值
无 -
备注
def QuerySet(Value):
pass
Manifest = [
('QuerySet', QuerySet, False, None, None),
...
]
tuple说明
| 参数位置 | 数据类型 | 说明 |
|---|---|---|
| 0 | str | 添加后的函数名字 |
| 1 | function | 添加后的函数名字 |
| 2 | bool | 是否拥有装饰器(已废弃,请填写为False) |
| 3 | object | 监听装饰器(已废弃,请填写为None) |
| 4 | str | 事件名(已废弃,请填写为None) |
- 示例 空
GetLingmienAetherManifest
客户端
-
描述
获取灵免以太函数库清单 -
参数
无 -
返回值
灵免以太函数库清单(list) -
备注
能够直接在非灵免以太客户端实例中使用一些接口,双端往返类型的通常不支持。 -
示例
self.LA = self.GetLASys('密钥')
LingmienAetherManifest = self.LA.GetLingmienAetherManifest()
self.AddObjectFunction(LingmienAetherManifest)
Notify
双端
-
描述
服务端使用:服务端通信至使用灵免以太引擎的客户端事件客户端使用:客户端通信至使用灵免以太引擎的服务端事件
-
服务端参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| LAConfig | object | 灵免以太脚本配置config,用于指定脚本系统通信 |
| ClientFunctionName | str | 该灵免以太脚本配置客户端系统的函数名称 |
| DataDict | dict | 通信数据 |
| PlayerIdList | str,list,None | 通信玩家的客户端列表,默认为None则为广播至所有玩家 |
| DelayTime | float | 通信客户端失败时,延迟多久(单位:秒)重试,默认为None则下一帧重试 |
- 客户端参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| LAConfig | object | 灵免以太脚本配置config,用于指定脚本系统通信 |
| ServerFuncitonName | str | 该灵免以太脚本配置服务端系统的函数名称 |
| DataDict | dict | 通信数据 |
-
返回值
无 -
备注
该接口会自动优化通信效率,节省流量。 -
示例 服务端广播至客户端
服务端发送
LASystem.Notify(config, 'CustomFunction', {'a': 1})
客户端接收
def CustomFunction(self, args):
print args
# 结果为 {'a': 1}
UseServerApi
客户端
-
描述
使用服务端接口,但无法获得返回值 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| ApiName | str | 服务端接口名称 |
| ArgsList | list | 服务端接口参数列表 |
| OnlyClient | bool | 是否仅在客户端调用缓存数据,默认为False |
-
返回值
ApiId,用于获取接口返回值 (str) -
备注
- 该接口禁止在联机大厅、网络游戏中执行!
- 在返回数据量较大的时候,推荐开启
OnlyClient。
-
示例
self.LA = self.GetLASys('密钥')
ApiId = self.LA.UseServerApi('PlaySound', [playerId, 'random.click'])
# 需要考虑玩家延迟,已防无法获取到返回值
ApiId = self.LA.UseServerApi('GetItemDictByInv', [playerId, 0, 0])
Ping = self.LA.GetPlayerPing(playerId)
# 由于ping单位为毫秒,因此使用0.02倍率计时器来进行获取
compTimer.AddTimer(0.02 * Ping, self.CallBack, ApiId)
def CallBack(self, ApiId):
# 获取返回值
self.LA.GetModRenderAttrByKey(playerId, ApiId)
UseClientApi
服务端
-
描述
使用客户端接口,但无法获得返回值 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| ApiName | str | 客户端接口名称 |
| ArgsList | list | 客户端接口参数列表 |
| PlayerId | str | 指定客户端玩家Id,默认为None,则广播所有客户端使用该接口 |
-
返回值
无 -
备注
无 -
示例 无
GetIsStart
客户端
-
描述
获取玩家是否处于进入游戏状态(这里指进入灵免以太主界面后是否点击了"单人游戏") -
参数
无 -
返回值
玩家是否处于进入游戏状态 (bool) -
备注
无 -
示例 无
BindGameHighTickFunction
客户端
-
描述
绑定游戏高Tick函数 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FunctionInstance | function | 函数(无参数),例如self.CreateMsg,不要填写成self.CreateMsg()样式 |
| IsAdd | bool | 是否是添加绑定,默认为True,则为添加类型反之为删除 |
-
返回值
无 -
备注
原版MC每秒20Tick,网易MC脚本每秒30Tick,该Tick的基准以玩家当前Fps为准 -
示例
def __init__(self, namespace, systemName):
...
self.LA = self.GetLASys('密钥')
@Event.ClientEvent('UiInitFinished')
def UiInitFinished(self, *args):
self.LA.BindGameHighTickFunction(self.CreateMsg)
def CreateMsg(self):
self.LA.Msg('高刷Tick')
BindMouseWheelFunction
客户端
-
描述
绑定鼠标滚轮事件 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FunctionInstance | function | 函数(是否向上滚的一个bool参数),例如self.CreateMsg,不要填写成self.CreateMsg()样式 |
| IsAdd | bool | 是否是添加绑定,默认为True,则为添加类型反之为删除 |
-
返回值
无 -
备注
无 -
示例 无
Lerp
客户端
-
描述
常规非线性计算 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Start | float | 开始数值 |
| End | float | 结束数值 |
| Factor | float | 非线性系数 |
-
返回值
线性插值后的结果 (float) -
备注
无 -
示例 无
SLerp
客户端
-
描述
角度形非线性计算 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Start | float | 开始角度 |
| End | float | 结束角度 |
| Factor | float | 非线性系数 |
-
返回值
线性插值后的结果 (float) -
备注
无 -
示例 无
GetLingmienAetherMod
服务端
-
描述
获取已注册的灵免以太模组数据 -
参数
无 -
返回值
灵免以太模组数据 (dict) -
备注
无 -
示例 无
GetTwoPosLength
双端
-
描述
获取目标坐标与第一坐标之间的距离 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FirstPos | tuple | 第一三维坐标 |
| TargetPos | tuple | 目标三维坐标 |
-
返回值
距离 (float) -
备注
无 -
示例 无
DeltaDateTime
双端
-
描述
计算日期差值,FirstDate-SecondDate -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| FirstDate | str | 格式为%Y-%m-%d %H:%M:%S |
| SecondDate | str | 格式为%Y-%m-%d %H:%M:%S |
-
返回值
差值(datetime), <type 'datetime.timedelta'> -
备注
无 -
示例 无
SplitListByQuantity
双端
-
描述
按数量拆分list -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| List | list | 需要拆分的List |
| Number | int | 拆分结果:几个元素为一个新变量 |
-
返回值
处理完毕之后的list (list) -
备注
无 -
示例 无
SortListByNumberMagnitude
双端
-
描述
根据数字排序由Dict元素组成的List--[{}, {}, ...] -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| List | list | 需要排序的List |
| Key | str | 按List内的哪个Key排序,没有则填None |
| IsPositiveSequence | bool | 是否为正序 |
-
返回值
处理完毕之后的list (list) -
备注
无 -
示例 无
SortDictByNumberMagnitude
双端
-
描述
据数字排序由Dict元素组成的Dict--{'x':{}, 'y':{}, ...} -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Dict | dict | 需要排序的Dict |
| Key | str | 需要排序的Dict中的Dict的Key |
| IsPositiveSequence | bool | 是否为正序 |
| Num | int | 排出多少个 |
-
返回值
处理完毕之后的dictlist (list) -
备注
无 -
示例 无
GetDictExtremeValueKey
双端
-
描述
获取Dict中指定Key的极值对应的键--{'x':float, 'y':float, ...} -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Dict | dict | 需要获取的Dict |
| Key | str | 用于比较的目标Key,字典中该Key的值用于比较 |
| FindMax | bool | 是否寻找最大值,默认为True |
-
返回值
极值对应的键 (any) -
备注
无 -
示例 无
GetPlatForm
服务端
-
描述
获取服务端运行环境 -
参数
无 -
返回值
运行环境 0:Windows平台;1:IOS;2:Android;-1:其他,例如联机大厅,阿波罗等linux服务器 (int) -
备注
无 -
示例 无
ConvertUnicodeDictToUtf8
双端
-
描述
将字典中的unicode编码转换为utf-8编码 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| UnicodeDict | dict | 输入的字典 |
-
返回值
转换后的字典 (dict) -
备注
无 -
示例
EncryptDict
服务端
-
描述
加密数据为字符串 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Data | any | 数据 |
-
返回值
加密后的字符串 (str) -
备注
无 -
示例
Data = {
'Name': 'Minecraft'
}
LASecret = LASystem.Secret()
SecretData = LASecret.EncryptDict(Data)
print LASecret.DecryptDict(SecretData)
DecryptDict
服务端
-
描述
解密数据 -
参数
| 参数名 | 数据类型 | 说明 |
|---|---|---|
| Password | str | 加密的数据字符串 |
-
返回值
解密后的内容,第一个为加密时的日期,第二个为加密的数据 (tuple[datetime, any]) -
备注
无 -
示例
Data = {
'Name': 'Minecraft'
}
LASecret = LASystem.Secret()
SecretData = LASecret.EncryptDict(Data)
print LASecret.DecryptDict(SecretData)