-
Notifications
You must be signed in to change notification settings - Fork 0
API ASC zh tw
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO • Runtime API
讀取字元代碼或整數設定;引數數量決定兩種不同的操作。
ASC(text:String, defaultValue:Integer) -> Integer
ASC(value:String) -> Integer
-
value / text— String:一個引數讀取第一個 UTF-16 碼元;兩個引數解析完整十進位或 0x 十六進位文字,允許正負號及前後空白。 -
defaultValue— Integer 備用值,解析失敗時傳回;僅兩引數形式必填。
Integer:字元碼 0..65535,空字串為 0;兩引數形式傳回 Int32 或備用值。十進位溢位失敗;到 0xFFFFFFFF 的十六進位視為帶符號 32 位元,因此 0xFFFFFFFF 是 -1。不接受小數或額外字尾。
- 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
- 不是成功旗標。讀取 Unicode 而非當地 ANSI;emoji 傳回第一個代理碼元。備用值可能等於有效結果,應選在設定允許範圍之外。
一個引數讀取 text[0] 或零;兩個引數呼叫 TryStr2Int,再傳回解析值或備用值。
一個引數讀取 text[0] 或零;兩個引數呼叫 TryStr2Int,再傳回解析值或備用值。
Integer:字元碼 0..65535,空字串為 0;兩引數形式傳回 Int32 或備用值。十進位溢位失敗;到 0xFFFFFFFF 的十六進位視為帶符號 32 位元,因此 0xFFFFFFFF 是 -1。不接受小數或額外字尾。
專案原始碼: external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs; 函式 BasicAsc / Asc / NumberConversions.TryStr2Int.
不是成功旗標。讀取 Unicode 而非當地 ANSI;emoji 傳回第一個代理碼元。備用值可能等於有效結果,應選在設定允許範圍之外。
# 讀取一位數字
#
# 讀取字元代碼或整數設定;引數數量決定兩種不同的操作。
#
# Integer:字元碼 0..65535,空字串為 0;兩引數形式傳回 Int32 或備用值。十進位溢位失敗;到 0xFFFFFFFF 的十六進位視為帶符號 32 位元,因此
# 0xFFFFFFFF 是 -1。不接受小數或額外字尾。
SUB Main()
# ASC("7") = 55;確認在 48..57 後減去 48,傳回 7。
# 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
Dim code = ASC("7")
If code >= 48 AndAlso code <= 57 Then
Return code - 48
End If
Return -1
END SUB參數與執行說明:
- ASC("7") = 55;確認在 48..57 後減去 48,傳回 7。
- 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
# 讀取物品圖形設定
#
# 讀取字元代碼或整數設定;引數數量決定兩種不同的操作。
#
# Integer:字元碼 0..65535,空字串為 0;兩引數形式傳回 Int32 或備用值。十進位溢位失敗;到 0xFFFFFFFF 的十六進位視為帶符號 32 位元,因此
# 0xFFFFFFFF 是 -1。不接受小數或額外字尾。
SUB Main()
# "0x0EED" 解析為 3821;本例用 -1 表示無效設定,不會移動物品。
# 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
Dim graphicText = "0x0EED"
Dim graphic = ASC(graphicText, -1)
If graphic = -1 Then
Return "invalid graphic"
End If
Return graphic
END SUB參數與執行說明:
- "0x0EED" 解析為 3821;本例用 -1 表示無效設定,不會移動物品。
- 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
# 驗證數量
#
# 讀取字元代碼或整數設定;引數數量決定兩種不同的操作。
#
# Integer:字元碼 0..65535,空字串為 0;兩引數形式傳回 Int32 或備用值。十進位溢位失敗;到 0xFFFFFFFF 的十六進位視為帶符號 32 位元,因此
# 0xFFFFFFFF 是 -1。不接受小數或額外字尾。
SUB Main()
# ReadQuantity 要求 1..100:"invalid" 傳回 -1,"50" 則為 50;不改動物品堆疊。
# 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
Return ReadQuantity("invalid", 1, 100)
END SUB
Function ReadQuantity(text, minimum, maximum)
Dim quantity = ASC(text, -1)
If quantity < minimum OrElse quantity > maximum Then
Return -1
End If
Return quantity
End Function參數與執行說明:
- ReadQuantity 要求 1..100:"invalid" 傳回 -1,"50" 則為 50;不改動物品堆疊。
- 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь