# 通用设置

# CloseSettingUI

客户端

method in mod.client.component.neteaseWindowCompClient.NeteaseWindowCompClient

  • 描述

    关闭模组信息界面

  • 参数

  • 返回值

    数据类型
    说明
    bool 是否关闭成功
  • 备注

    • 该接口在modPC环境下,将是关闭局内json ui
  • 示例

import mod.client.extraClientApi as clientApi
levelId = clientApi.GetLevelId()
comp = clientApi.GetEngineCompFactory().CreateNeteaseWindow(levelId)
# 关闭界面
result = comp.CloseSettingUI()

# GetSettingInst

客户端

method in mod.client.component.neteaseWindowCompClient.NeteaseWindowCompClient

  • 描述

    获取当前模组的通用设置实例

  • 参数

    参数名
    数据类型
    说明
    modNamespace str 组件命名空间,需唯一性,仅在开发环境预览使用
  • 返回值

    数据类型
    说明
    SettingInst 返回实例对象,未注册则返回None
  • 备注

    • 请先使用RegisterSettingInst注册,再使用GetSettingInst获取。
    • 开发环境中,将会获取modNamespace对应的通用设置实例;正式环境中则仅能获取当前模组注册的实例。
    • 建议不要在__init__的时候就获取实例,过早获取会返回None。
  • 示例

import mod.client.extraClientApi as clientApi
levelId = clientApi.GetLevelId()
comp = clientApi.GetEngineCompFactory().CreateNeteaseWindow(levelId)
settingInst = comp.GetSettingInst()
if settingInst:
    settingInst.AddText("text_uid_01", "这是一段文字").AddToggle("toggle_uid_01", "开关按钮", False, callbackFunction)

# OpenSettingUI

客户端

method in mod.client.component.neteaseWindowCompClient.NeteaseWindowCompClient

  • 描述

    在模组信息界面中打开设置页面(此操作仅可访问本模组的配置选项)

  • 参数

  • 返回值

    数据类型
    说明
    bool 是否打开成功
  • 备注

    • 该接口在modPC环境下,将是打开局内json ui
  • 示例

import mod.client.extraClientApi as clientApi
levelId = clientApi.GetLevelId()
comp = clientApi.GetEngineCompFactory().CreateNeteaseWindow(levelId)
# 打开界面
result = comp.OpenSettingUI()

# RegisterSettingInst

客户端

method in mod.client.component.neteaseWindowCompClient.NeteaseWindowCompClient

  • 描述

    注册通用设置实例

  • 参数

    参数名
    数据类型
    说明
    modNamespace str 组件命名空间,需唯一性,仅在开发环境预览使用
    modName str 组件名字,默认为None,仅在开发环境预览使用
    iconPath str 组件icon图路径,默认为None,仅在开发环境预览使用
  • 返回值

    数据类型
    说明
    SettingInst 返回实例对象,系统未初始化则返回None
  • 备注

    • 每个模组仅能注册一个通用设置实例,重复注册会返回同样的实例。
    • 建议在UiInitFinished触发时再注册,注册过早会导致注册失败而返回None。
    • 设置界面的注册是通过Scripts文件夹名称来判断是由哪个模组注册的实例,开发者的Scripts名称需要确保不与其他模组作者的Scripts名称冲突。
  • 示例

import mod.client.extraClientApi as clientApi
levelId = clientApi.GetLevelId()
comp = clientApi.GetEngineCompFactory().CreateNeteaseWindow(levelId)
settingInst = comp.RegisterSettingInst("123456789", "模组1", "textures/ui/abc")
if settingInst:
    settingInst.AddText("text_uid_01", "这是一段文字").AddToggle("toggle_uid_01", "开关按钮", False, callbackFunction)

# SettingInst 下的方法

# Clear

清除所有控件。

def Clear(self)
  • 参数

  • 返回值


# AddText

添加文本控件。

def AddText(self, key, name, priority=None)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    priority int或None 显示顺序优先级,默认根据添加顺序排列
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# AddToggle

添加开关控件。

def AddToggle(self, key, name, callback, priority=None, default=False)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    callback function 控件的回调函数,定义:def callback(key, value),key为控件id,value为bool类型
    priority int或None 显示顺序优先级,默认根据添加顺序排列
    default bool 默认值,默认为False
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# AddSlider

添加滑动条控件。

def AddSlider(self, key, name, step, callback, priority=None, default=0)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    step int 滑动条的最大值,范围:0~step
    callback function 控件的回调函数,定义:def callback(key, value),key为控件id,value为int类型
    priority int或None 显示顺序优先级,默认根据添加顺序排列
    default int 默认值,默认为0
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# AddDropDown

添加下拉选项控件。

def AddDropDown(self, key, name, options, callback, priority=None, default=None)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    options list[str] 下拉选项列表
    callback function 控件的回调函数,定义:def callback(key, value),key为控件id,value为选项索引int类型
    priority int或None 显示顺序优先级,默认根据添加顺序排列
    default str或None 默认选项,该值需在options中
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# AddInput

添加输入框控件。

def AddInput(self, key, name, callback, priority=None, default="")
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    callback function 控件的回调函数,定义:def callback(key, value),key为控件id,value为str类型
    priority int或None 显示顺序优先级,默认根据添加顺序排列
    default str 默认显示的文本,默认为空字符串
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# AddButton

添加按钮控件。

def AddButton(self, key, name, buttonText, callback, priority=None)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    name str 控件的文字描述
    buttonText str 按钮的文字描述
    callback function 控件的回调函数,定义:def callback(key, value),key为控件id,value为None
    priority int或None 显示顺序优先级,默认根据添加顺序排列
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# GetToggleDefault

获取开关控件的默认值。

def GetToggleDefault(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    bool 开关状态

# GetInputDefault

获取输入框的默认输入文本。

def GetInputDefault(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str 输入框的文本

# GetDropDownDefault

获取下拉选项控件的默认值。

def GetDropDownDefault(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str 默认选项在列表中的索引

# GetSliderDefault

获取滑动条控件的默认值。

def GetSliderDefault(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    int 滑块的值

# GetText

获取文字控件的文本。

def GetText(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str 显示的文本

# GetButtonText

获取按钮控件的文字。

def GetButtonText(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str或None 按钮文字,控件不存在时返回 None

# GetToggleValue

获取开关控件的当前值。

def GetToggleValue(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    bool或None 开关状态,控件不存在时返回 None

# GetSliderValue

获取滑动条控件的当前值。

def GetSliderValue(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    int或None 滑块的值,控件不存在时返回 None

# GetDropDownValue

获取下拉选项控件的当前选中文本。

def GetDropDownValue(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str或None 选中的文本,控件不存在时返回 None

# GetInputValue

获取输入框控件的当前值。

def GetInputValue(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    str或None 输入的文本,控件不存在时返回 None

# SetToggleDefault

设置开关控件的默认值。

def SetToggleDefault(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value bool 开关的值
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetInputDefault

设置输入框控件的默认文本。

def SetInputDefault(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value str 显示的文本
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetDropDownDefault

设置下拉选项控件的默认选项。

def SetDropDownDefault(self, key, option)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    option str 选项文字,如文字不在选项列表里,会自动添加到列表
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetSliderDefault

设置滑动条控件的默认值。

def SetSliderDefault(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value int 滑块的值
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetToggleValue

设置开关控件的当前值,保存到本地存储,不会触发回调。

def SetToggleValue(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value bool 开关的值
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetSliderValue

设置滑动条控件的当前值,保存到本地存储,不会触发回调。

def SetSliderValue(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value int 滑块的值
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetDropDownValue

设置下拉选项控件的当前值,保存到本地存储,不会触发回调。

def SetDropDownValue(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value str 选项文本,如果选项不在options中,则设置失败
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetInputValue

设置输入框控件的当前值,保存到本地存储,不会触发回调。

def SetInputValue(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value str 输入的文本
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetButtonText

设置按钮控件的文字。

def SetButtonText(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value str 显示的文字
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetText

设置文本控件的值。

def SetText(self, key, value)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    value str 显示的文本
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# SetLockSettingComp

设置锁定控件,锁定后无法点击。

def SetLockSettingComp(self, key, is_locked)
  • 参数

    参数名 数据类型 说明
    key str 控件id
    is_locked bool 是否锁定
  • 返回值

    数据类型 说明
    SettingInst 当前实例,支持链式调用

# GetFormatData

获取当前实例的结构化数据,控件数据根据priority的值升序排序。

def GetFormatData(self)
  • 参数

  • 返回值

    数据类型 说明
    dict 结构化数据
  • 返回格式

    {
        "modId": "str  // 模组ID",
        "name": "str  // 名称",
        "icon": "str  // 图标路径",
        "settings": "list  // 设置项列表,按priority升序排序"
    }
    

# GetSettingsControl

获取控件的结构化数据。

def GetSettingsControl(self, key)
  • 参数

    参数名 数据类型 说明
    key str 控件id
  • 返回值

    数据类型 说明
    dict 控件的结构化数据

# GetModId

获取实例的modId。

def GetModId(self)
  • 参数

  • 返回值

    数据类型 说明
    str 模组ID

# GetAutoPriority

获取自动设置的优先级的值。

def GetAutoPriority(self)
  • 参数

  • 返回值

    数据类型 说明
    int 当前自动优先级的值
  • 备注

    当添加控件时,如果不设置优先级,则会自动从0开始设置。优先级会影响控件排列顺序,升序排列。

CloseSettingUI

GetSettingInst

OpenSettingUI

RegisterSettingInst

SettingInst 下的方法

Clear

AddText

AddToggle

AddSlider

AddDropDown

AddInput

AddButton

GetToggleDefault

GetInputDefault

GetDropDownDefault

GetSliderDefault

GetText

GetButtonText

GetToggleValue

GetSliderValue

GetDropDownValue

GetInputValue

SetToggleDefault

SetInputDefault

SetDropDownDefault

SetSliderDefault

SetToggleValue

SetSliderValue

SetDropDownValue

SetInputValue

SetButtonText

SetText

SetLockSettingComp

GetFormatData

GetSettingsControl

GetModId

GetAutoPriority