常用NML功能
对于BasicMod
日志
BasicMod
提供了LogInfo
, LogWarning
, LogError
三个静态函数来打印日志, 会带上模组名称的前缀
实例
BasicMod
提供了Instance
静态属性可以直接访问模组主类的实例
模组信息
BasicMod
提供了GetDeclaration
能够获取模组声明信息(ModDeclare
, 不是ModDeclaration
, 这个名给可恶的NCMS用作命名空间了, 为了方便代码编写, 故改名), 包括模组名, 所在文件夹等, 具体定义如下
BasicMod
提供了GetLocaleFilesDirectory(ModDeclare)
能够直接获取本地化文件所在文件夹路径. 传入GetDeclaration
的结果作为参数.
模组设置
BasicMod
默认是一个提供设置界面的Mod, 你可以通过GetConfig
来获取ModConfig
实例, 具体用法见模组设置
多语言
在模组文件夹下创建Locales
文件夹, 参考ModTemplate
中的写法即可. 目前仅支持json和csv文件.
其他常用特性
日志
NeoModLoader.services.LogService
提供了
一般的
LogInfo
,LogWarning
,LogError
三件套,打印调用堆栈的
LogStackTraceAsInfo
,LogStackTraceAsWarning
,LogStackTraceAsError
在多线程情况下使用的
LogInfoConcurrent
,LogWarningConcurrent
,LogErrorConcurrent
.
贴图
在模组文件夹下创建一个名为GameResources
的文件夹, 其中的.png
,.jpg
,.jpeg
会由对应的.meta
文件或sprites.json
文件解释然后加载进游戏, 可以通过Resources.Load
, SpriteTextureLoader.getSprite
相关函数进行加载. 具体见模组资源概览.
NeoModLoader.utils.SpriteLoadUtils
提供了
LoadSingleSprite(string)
来加载指定系统路径下的图片文件LoadSprites(string)
搜寻相关联的.meta
文件(解释为一个TextureImporter
, 并提供了一个SpriteSheet
)或sprites.json
来加载路径下的图片文件
模组名/作者/简介多语言
如果要你的模组在英文环境下 模组名/作者/简介显示为英文(en),则需要添加本地化文本,相应的key为:
模组名_en
作者_en
简介_en
AssetBundle拓展
NeoModLoader.utils.AssetBundleUtils
提供了加载AssetBundle
文件为WrappedAssetBundle
的方法(同时避免重复加载).
NeoModLoader.utils.WrappedAssetBundle
提供了类似Resources.Load
, Resources.LoadAll
的方法来加载资源
Last updated