meta data for this page
  •  

📚 差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
scripting:native:core [2025/08/27 14:21] bibiboxsscripting:native:core [2025/12/04 11:33] (当前版本) bibiboxs
行 111: 行 111:
 > (只读)射线检测函数的返回值,属性可获取射线检测结果(是否碰撞、最终坐标、检测实体等)。 > (只读)射线检测函数的返回值,属性可获取射线检测结果(是否碰撞、最终坐标、检测实体等)。
  
-- `IsHit`是否碰撞射线(如果`IsHit == true && Entity == null`,可能表示检测到世界地形)+- `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("Error") >= 0)
 +    {
 +        //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/MyCode.js`) - `path`脚本目录下的 同级或子级 脚本文件路径(例如:`Test/MyCode.js`)
 +- `IIFE`是否为独立作用域,否则默认脚本续写加载
  
 ```javascript ```javascript
行 273: 行 303:
 LoadScript("Test/MyCode.js"); //√ LoadScript("Test/MyCode.js"); //√
 LoadScript("Test/MyCode"); //√ LoadScript("Test/MyCode"); //√
-LoadScript("MyCode.js"); //√ 正确+LoadScript("MyCode.js"); //√
 LoadScript("../MyCode.js"); //× LoadScript("../MyCode.js"); //×
  
行 814: 行 844:
 > 如果只希望获取`Entity`部分类型,可使用`layer`参数进行[实体类型层(位)](reference/instances)(位操作),默认`0`表示检测全部。 > 如果只希望获取`Entity`部分类型,可使用`layer`参数进行[实体类型层(位)](reference/instances)(位操作),默认`0`表示检测全部。
 > >
-> **注意:此方法会检测世界地形(除非参数`includeTerrain = false`),如果`IsHit == true && Entity == null`,表示最终检测到地形**。+> **注意:此方法会检测世界地形(除非参数`includeTerrain = false`),如果`IsHit = true && Entity = null`,表示最终检测到地形**。
  
 ```javascript ```javascript
行 1023: 行 1053:
 RemoveVectorPoint("HomePos"); RemoveVectorPoint("HomePos");
 ``` ```
 +
 +
 +
 +### 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: bool = true )+function FormatDefineText( text: string, includeColor: bool = true ): string
 ``` ```
  
行 1099: 行 1141:
  
 - `sampleAll`是否采样所有静态对象,否则仅采样地面对象(陆地)。 - `sampleAll`是否采样所有静态对象,否则仅采样地面对象(陆地)。
 +
 +
 +
 +
 +
 +