meta data for this page
📚 差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
| scripting:native:core [2025/08/27 14:21] – bibiboxs | scripting:native:core [2025/12/04 11:33] (当前版本) – bibiboxs | ||
|---|---|---|---|
| 行 111: | 行 111: | ||
| > (只读)射线检测函数的返回值,属性可获取射线检测结果(是否碰撞、最终坐标、检测实体等)。 | > (只读)射线检测函数的返回值,属性可获取射线检测结果(是否碰撞、最终坐标、检测实体等)。 | ||
| - | - `IsHit`是否碰撞射线(如果`IsHit | + | - `IsHit`是否碰撞射线(如果`IsHit = true && Entity = null`,可能表示检测到世界地形) |
| - `Point`射线检测坐标(如没有产生碰撞,则坐标即是默认终点) | - `Point`射线检测坐标(如没有产生碰撞,则坐标即是默认终点) | ||
| - `Entity`射线碰撞实体(如果对象不是标准的`Entity`实体,或对象为**静态模型(本地静态模型)**,则返回为`null`) | - `Entity`射线碰撞实体(如果对象不是标准的`Entity`实体,或对象为**静态模型(本地静态模型)**,则返回为`null`) | ||
| + | - `Distance`射线实际产生距离 | ||
| + | - `Normal`射线检测表面角度 | ||
| 行 140: | 行 142: | ||
| > 当游戏配置(通过`SetGameOption`被绑定过的)发生主动更新时触发(或有数值被改变)。 | > 当游戏配置(通过`SetGameOption`被绑定过的)发生主动更新时触发(或有数值被改变)。 | ||
| > | > | ||
| - | > 每次客户端脚本加载完成时,都会自动触发一次(`optionKey==null`)。 | + | > 每次客户端脚本加载完成时,都会自动触发一次(`optionKey = null`)。 |
| ```javascript | ```javascript | ||
| 行 186: | 行 188: | ||
| function QuitGame() | function QuitGame() | ||
| ``` | ``` | ||
| + | |||
| + | |||
| + | |||
| + | ### SetDisconnectMethod() | ||
| + | |||
| + | > 设置断开连接监听处理方法,允许设置为`null`。 | ||
| + | > | ||
| + | > 此功能允许根据断开原因选择处理方式(断开、重连、关闭模组)。 | ||
| + | |||
| + | ```javascript | ||
| + | function SetDisconnectMethod( (output: string ): int => {} ) | ||
| + | ``` | ||
| + | ```javascript | ||
| + | SetDisconnectMethod((output) => { | ||
| + | if(output.indexOf(" | ||
| + | { | ||
| + | //Unload Mod | ||
| + | return 2; | ||
| + | } | ||
| + | }); | ||
| + | ``` | ||
| + | |||
| + | | Method | 说明 | ||
| + | | ------ | ------------ | | ||
| + | | 0 | 默认 | ||
| + | | 1 | 重新连接 | ||
| + | | 2 | 关闭运行模组 | | ||
| 行 264: | 行 293: | ||
| ```javascript | ```javascript | ||
| - | function Env.LoadScript( path: string ) | + | function Env.LoadScript( path: string, IIFE: bool = false) |
| ``` | ``` | ||
| - `path`脚本目录下的 同级或子级 脚本文件路径(例如:`Test/ | - `path`脚本目录下的 同级或子级 脚本文件路径(例如:`Test/ | ||
| + | - `IIFE`是否为独立作用域,否则默认脚本续写加载 | ||
| ```javascript | ```javascript | ||
| 行 273: | 行 303: | ||
| LoadScript(" | LoadScript(" | ||
| LoadScript(" | LoadScript(" | ||
| - | LoadScript(" | + | LoadScript(" |
| LoadScript(" | LoadScript(" | ||
| 行 814: | 行 844: | ||
| > 如果只希望获取`Entity`部分类型,可使用`layer`参数进行[实体类型层(位)](reference/ | > 如果只希望获取`Entity`部分类型,可使用`layer`参数进行[实体类型层(位)](reference/ | ||
| > | > | ||
| - | > **注意:此方法会检测世界地形(除非参数`includeTerrain = false`),如果`IsHit | + | > **注意:此方法会检测世界地形(除非参数`includeTerrain = false`),如果`IsHit = true && Entity = null`,表示最终检测到地形**。 |
| ```javascript | ```javascript | ||
| 行 1023: | 行 1053: | ||
| RemoveVectorPoint(" | RemoveVectorPoint(" | ||
| ``` | ``` | ||
| + | |||
| + | |||
| + | |||
| + | ### FormatPlainText() | ||
| + | |||
| + | > 格式化指定文本为纯文本(去除`HTML|UBB`),可用于获取除表情外等真实文本及长度。 | ||
| + | |||
| + | ```javascript | ||
| + | function FormatPlainText( text: string, includeUBB: bool = true ): string | ||
| + | ``` | ||
| + | |||
| + | - `includeUBB`:如果设置为`true`,则允许包含`UBB`(忽略处理)。 | ||
| 行 1033: | 行 1075: | ||
| ```javascript | ```javascript | ||
| - | function FormatRichText( text: string, onlyEmoji: bool = false ) | + | function FormatRichText( text: string, onlyEmoji: bool = false ): string |
| ``` | ``` | ||
| 行 1047: | 行 1089: | ||
| ### FormatDefineText() | ### FormatDefineText() | ||
| - | > 格式化指定文本为[引擎宏文本](reference/define " | + | > 格式化指定文本为[引擎宏文本](developer/define " |
| ```javascript | ```javascript | ||
| - | function FormatDefineText( text: string, includeColor: | + | function FormatDefineText( text: string, includeColor: |
| ``` | ``` | ||
| 行 1099: | 行 1141: | ||
| - `sampleAll`是否采样所有静态对象,否则仅采样地面对象(陆地)。 | - `sampleAll`是否采样所有静态对象,否则仅采样地面对象(陆地)。 | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||