傳奇變量-文本相關
功能: 創(chuàng)建新目錄.
ForceDirectories \QuestDiary\新目錄\
在指定位置建立一個文本文件.?
CreateFile ..\QuestDiary\NewFile.txt
檢查行會名字是不是在列表中
CHECKGUILDLIST? ?GuildList.txt
將人物行會名加入列表?
ADDGUILDLIST? ? guildlist.txt
刪除列表行會名
DELGUILDLIST? ? guildlist.txt
檢查人物名字是不是在列表中
CHECKNAMELIST namelist.txt
檢查人物在列表中的位置。
CHECKNAMELISTPOSITION List.txt? (> < = ) 10 P0
可以檢查登錄帳號與IP是否匹配
CHECKACCOUNTIPLIST AccountIPList.txt
增加人物帳號在列表中
ADDACCOUNTLIST AccountList.txt
增加人物名在列表中
ADDNAMELIST? NameList.txt
刪除人物名在列表中
DELNAMELIST NameList.txt
清除列表內容
CLEARNAMELIST namelist.txt
;==========================================
;增加字符串
AddTextList ..\TestList.txt <$USERNAME>?
AddTextList ..\TestList.txt 您的名字 您的性別
;刪除字符串
DelTextList ..\TestList.txt 您的名字
DelTextList ..\TestList.txt 您的名字 您的性別?
功能: 把字符串寫入到指定的文本文件中,可以指定寫入行.
格式: AddTextListEx 路徑 字符串 行(0-65535)
AddTextListEx ..\TestList.txt <$USERNAME> 0
;==========================================
功能: 從文件中隨機獲取一行字符串
格式: GetRandomText 文件路徑 變量(S0--S99) 指定行(0-10000)
例如:隨機取一行字符串到S10中.
GetRandomText ..\QuestDiary\測試.txt S10
取特定行的字符串.
GetRandomText ..\QuestDiary\測試.txt S10 5
;==========================================
功能: 取字符串在列表中的下標.
格式: GetStringPos 路徑 字符串
說明: 返回值放在人物的N0變量中,如果值=9999999說明沒有找到.
其他: 返回值可以通過EQUAL做條件檢測
[@main]
#IF
#ACT
GetStringPos ..\QuestDiary\測試.txt 管理員
SendMsg 5 字符串在列表中的位置:<$STR(N0)>?
;==========================================
檢查字符串是否在指定文件中?
CHECKTEXTLIST ..\QuestDiary\充值系統(tǒng)\10元卡號.txt <$STR(S$2)>
CHECKTEXTLIST ..\QuestDiary\充值系統(tǒng)\10元卡號.txt <$STR(S$2)> <$STR(S$3)>
;==========================================
字符串比較處理。
CheckContainsText 字符 字符串檢查 //檢查字符串是否包涵在另外一個字符串中.?
CompareText 字符 字符 // 比較兩個字符串是否一樣?
CheckContainsText gameofmir game
CompareText gameofmir game
;==========================================
檢查字符串是否在指定文件中 包含檢測 檢測的字符串不需要完全相同,文件里的字符包含檢測的字符,就會成功
CheckContainsTextList ..\QuestDiary\充值系統(tǒng)\10元卡號.txt <$STR(S2)>
CheckContainsTextListEx ..\QuestDiary\充值系統(tǒng)\10元卡號.txt <$STR(S2)>
CheckContainsTextList 和 CheckContainsTextListEx 區(qū)別
CheckContainsTextList 列表文件里保存的是完整的字符。檢測列表里的某一行字符是否包含檢測的關鍵字
CheckContainsTextListEx 列表文件里保存的是關鍵字。檢測字符是否包含列表里的某一行關鍵字
;==========================================
檢測字符串長度命令
CheckStringlength 字符串 操作符(<,>,=) 位數(shù)
一個漢字位數(shù)為2, "》"也為2個字符
CheckStringlength sf100 > 3
;==========================================
? ? 字符串替換
? ? ANSIREPLACETEXT 字符串變量 舊字符串 新字符串?
mov S1 haom2
ANSIREPLACETEXT <$STR(S1)> gameofmir qq
SENDMSG 6 <$STR(S1)>
;==========================================
功能: 給字符串在前面或者后面增加指定個數(shù)的空格.?
格式: SetStringBlank 變量(S,A) 長度(1-100) 格式(0, 1)?
說明: 可支持人物S變量或者全局A變量,格式0=前面,1=后面
注意: 第二個參數(shù)長度是指增加空格后整個字符串的長度,例如字符HaoM2引擎長度是13,
如果第二個參數(shù)設置1 那么實際增加7個空格.
注意: 英文字母和數(shù)字占用1個字節(jié)(長度),漢字占用2個字節(jié)(長度).?
MOV S10 HaoM2引擎
SetStringBlank <$STR(S10)> 20 0
SendMsg 5 <$STR(S10)>
MOV S10 HaoM2引擎
SetStringBlank <$STR(S10)> 20 1
;==========================================
DEC對字符型變量操作命令。
MOV命令做了一些改進。
[@Main]
#ACT
MOV S1 HaoM2引擎M2
MOV S2 HaoM2引擎M2
DEC S1 HaoM2引擎 ;刪除S1中的“HaoM2引擎”字符串
DEC S2 1 3 ;刪除S2中的第1至第3個字符串 這個要注意,一個漢字是2個字節(jié)長度,不要刪除半個漢字的情況,否則會亂碼。
結果 S1=M2
S2=引擎M2
;==========================================
字符串分隔命令:
#IF
gender man
checkjob warrior
#ACT
GetRandomText ..\QuestDiary\裝備列表.txt S0 0
EXTRACTSTRING : <$STR(S0)> s1 s2 s3 s4 s5 s6 s7 s8
GIVE <$STR(S1)> 1
GIVE <$STR(S2)> 1
GIVE <$STR(S3)> 1
GIVE <$STR(S4)> 1
GIVE <$STR(S5)> 1
GIVE <$STR(S6)> 1
GIVE <$STR(S7)> 1
GIVE <$STR(S8)> 1
TakeOn <$STR(S1)> 0
TakeOn <$STR(S2)> 1
TakeOn <$STR(S3)> 3
TakeOn <$STR(S4)> 4
TakeOn <$STR(S5)> 5
TakeOn <$STR(S6)> 6
TakeOn <$STR(S7)> 7
TakeOn <$STR(S8)> 8
BREAK
;======================================================
;裝備列表.txt 內容
;戰(zhàn)神盔甲(男):裁決之杖:綠色項鏈:黑鐵頭盔:騎士手鐲:騎士手鐲:力量戒指:力量戒指
;戰(zhàn)神盔甲(女):裁決之杖:綠色項鏈:黑鐵頭盔:騎士手鐲:騎士手鐲:力量戒指:力量戒指
;魔法長袍(男):血飲:惡魔鈴鐺:道士頭盔:龍之手鐲:龍之手鐲:紫碧螺:紫碧螺
;魔法長袍(女):血飲:惡魔鈴鐺:道士頭盔:龍之手鐲:龍之手鐲:紫碧螺:紫碧螺
;靈魂戰(zhàn)衣(男):無極棍:靈魂項鏈:道士頭盔:三眼手鐲:三眼手鐲:泰坦戒指:泰坦戒指
;靈魂戰(zhàn)衣(女):無極棍:靈魂項鏈:道士頭盔:三眼手鐲:三眼手鐲:泰坦戒指:泰坦戒指
;======================================================
;寫變量可配合inc實現(xiàn)寫入數(shù)據(jù)
#act
inc S0 <$DRESS>
inc S0 :
inc S0 <$WEAPON>
inc S0 :
inc S0 <$HELMET>
;.........后面的自己寫
;======================================================
擴展支持自定義變量并支持自動填寫數(shù)字編號
[@aaa]
#IF
#ACT
; 分隔字符串后,按順序往S11及以后放
ExtractStringEx | aaa|bbb|ccc|ddd|000 S11
SendMsg 6 <$STR(S11)>,<$STR(S12)>,<$STR(S13)>,<$STR(S14)>,<$STR(S15)>
; 分隔字符串后,依次放自定義變量1,2,3,4及以后放
ExtractStringEx | aaa|bbb|ccc|ddd|000 S$拆分
SendMsg 4 <$STR(S$拆分1)>,<$STR(S$拆分2)>,<$STR(S$拆分3)>,<$STR(S$拆分4)>,<$STR(S$拆分5)>