| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261 |
- #nop vim: set filetype=tt:;
- /*
- 本文件属于 PaoTin++ 的一部分
- ===========
- PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 享有并保留一切法律权利
- 你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。
- ===========
- */
- #var basic_char_score[META] {
- {NAME} {角色档案}
- {DESC} {解析 score 命令,并储存到变量 char[档案]}
- {AUTHOR} {担子炮}
- {NOTE} {本文件属于 PaoTin++ 的一部分}
- };
- load-module {basic/title};
- load-module {basic/cmds/link};
- load-lib event;
- event.Define {char/score} {无参} {$MODULE} {score 命令的数据解析成功时,发送本事件};
- event.Define {char/saving} {无参} {$MODULE} {银行存款数据更新};
- /*
- ╭───人物详情────────────────────────┬───────╮
- │ 武当派真人 马后炮(Mhp) │ ▂▃▅▃▂ │
- │ 膂力:[ 69] 悟性:[ 47] 根骨:[ 83] 身法:[ 79] │ - - │
- │ 福缘:[ 23] 容貌:[ 39] 灵性:[ 39] 胆识:[ ?] │ ▂ ▂ │
- │ 距离上榜还需增加206218点经验。 │ 32/32 │
- ├───────────────────┬───────────┴───────┤
- │个人信息 │门派履历 │
- │国籍:大夏 户籍:扬州 │门派:武当派 [丹心] 道心:86 │
- │性别:男性 上线:扬州客店 │师承:张三丰 │
- │年龄:二十岁 姻缘:未遇良人 │门忠:3274 │
- │身高:七尺六寸 体重:约一百一十斤 │出师:无 │
- │生日:己亥年一月三十一日申时七刻 │叛师:无 │
- ├────────────┬──────┴─────┬─────────────┤
- │杀生:0人 │职业:甲士 │存款:527金条 21713黄金 │
- │被杀:4次 │道德:100.12万 │门派例钱:无 │
- │死亡:4次 │声望:322.77万 │国家积分:0 │
- │杀气:正常 │愿望:160 │活跃兑换:0 │
- ├───休闲任务─────┼────────────┼─────────────┤
- │高级任务:0次 │低级任务:6次 │劫匪掉宝:0次 │
- ╰────────────┴────────────┴────北大侠客行────╯
- */
- #var char-menpai-id {
- {少林派} {slp}
- {武当派} {wdp}
- {峨嵋派} {emp}
- {华山派} {hsp}
- {星宿派} {xxp}
- {神龙教} {slj}
- {白驼山} {bts}
- {灵鹫宫} {ljg}
- {丐帮} {gb}
- {全真派} {qzp}
- {古墓派} {gmp}
- {天龙寺} {tls}
- {朝廷} {ct}
- {天地会} {tdh}
- {桃花岛} {thd}
- {雪山派} {xsp}
- {明教} {mj}
- {日月神教} {rysj}
- {姑苏慕容} {gsmr}
- {大轮寺} {dls}
- {绝情谷} {jqg}
- {五毒教} {wdj}
- {青城派} {qcp}
- };
- #action {^╭───人物详情────────────────────────┬───────╮$} {
- #class char-score-parser open;
- #var char[档案][高级任务] {-1};
- #var char[档案][低级任务] {-1};
- #var char[档案][劫匪掉宝] {-1};
- link.Enable score 5 {个人信息;门派履历;年龄;存款;死亡};
- #line oneshot #action {~^%c│%c %* %c%+1..S%c(%+3..S){|\e\[1;32m √}%c%s%c│%*│%c$} {
- #local obj {@ParseTitle{@str.Trim{@str.Plain{%%3 %%5(%%7)}}}};
- #var char[档案][头衔] {$obj[title]};
- #var char[档案][大名] {$obj[name]};
- #var char[档案][账号] {$obj[id]};
- #var char[档案][彩色头衔] {%%3};
- #var char[档案][彩色大名] {%%4%%5%%6};
- #if { "%%8" == "" } {
- #var char[档案][唯一昵称] {false};
- };
- #else {
- #var char[档案][唯一昵称] {true};
- };
- };
- #var char-score-parser-lineNo {0};
- #action {^│%*│%*│$} {
- #math char-score-parser-lineNo {$char-score-parser-lineNo + 1};
- #switch {$char-score-parser-lineNo} {
- #case {1} {
- #local level {@str.Trim{%%2}};
- #replace level {%d/%d} {{cur}{&1}{max}{&2}};
- #local level {$level};
- #var char[档案][人物等级] {$level[cur]};
- #var char[档案][最大等级] {$level[max]};
- };
- #default {
- #nop;
- };
- };
- } {6};
- #nop │ 膂力:[ 69] 悟性:[ 47] 根骨:[ 83] 身法:[ 79] │ - - │;
- #action {~^\e[0m│\e[2;37;0m 膂力:[%+] 悟性:[%+] 根骨:[%+] 身法:[%+]%+│%+│} {
- #local str {%%1};
- #local int {%%2};
- #local con {%%3};
- #local dex {%%4};
- #local key {先天};
- #if { "$str$int$con$dex" == "%*[1;33m%*" } {
- #local key {天赋};
- };
- #elseif { "$str$int$con$dex" == "%*[36m%*" } {
- #local key {初始};
- };
- #replace str {{\x1b\[[0-9;\\]+m}} {};
- #replace int {{\x1b\[[0-9;\\]+m}} {};
- #replace con {{\x1b\[[0-9;\\]+m}} {};
- #replace dex {{\x1b\[[0-9;\\]+m}} {};
- #var char[档案][$key][膂力] {@str.Trim{$str}};
- #var char[档案][$key][悟性] {@str.Trim{$int}};
- #var char[档案][$key][根骨] {@str.Trim{$con}};
- #var char[档案][$key][身法] {@str.Trim{$dex}};
- };
- #nop │ 福缘:[ 23] 容貌:[ 39] 灵性:[ 39] 胆识:[ ?] │ ▂ ▂ │;
- #action {^│ 福缘:[%+] 容貌:[%+] 灵性:[%+] 胆识:[%+]%*│%*│$} {
- #var char[档案][天赋][福缘] {@str.Trim{%%1}};
- #var char[档案][天赋][容貌] {@str.Trim{%%2}};
- #var char[档案][天赋][灵性] {@str.Trim{%%3}};
- };
- #nop │国籍:大理 户籍:扬州 │门派:天龙寺 [丹心] 禅机:86 │;
- #action {^│%+:%* %+:%+│%+:%* %+:%+│$} {
- #var char[档案][%%1] {@str.Trim{%%2}};
- #var char[档案][@str.Trim{%%3}] {@str.Trim{%%4}};
- #var char[档案][%%5] {@str.Trim{%%6}};
- #var char[档案][@str.Trim{%%7}] {@str.Trim{%%8}};
- } {5.01};
- #nop │国籍:大夏 户籍:暂无 │门派:武当派 [丹心] │;
- #nop │性别:男性 上线:扬州客店 │师承:张三丰 │;
- #nop │年龄:二十岁 姻缘:未遇良人 │门忠:3274 │;
- #nop │身高:七尺六寸 体重:约一百一十斤 │出师:无 │;
- #action {^│%+:%* %+:%+│%+:%*│$} {
- #var char[档案][%%1] {@str.Trim{%%2}};
- #var char[档案][@str.Trim{%%3}] {@str.Trim{%%4}};
- #var char[档案][%%5] {@str.Trim{%%6}};
- } {5.02};
- #nop │生日:辛丑年十二月五日亥时八刻 │叛师:无 │;
- #action {^│%+:%*│%+:%*│$} {
- #var char[档案][%%1] {@str.Trim{%%2}};
- #var char[档案][%%3] {@str.Trim{%%4}};
- } {5.03};
- #nop │杀生:0人 │职业:甲士 │存款:527金条 21713黄金 │;
- #nop │被杀:4次 │道德:100.12万 │门派例钱:无 │;
- #nop │死亡:4次 │声望:322.77万 │国家积分:0 │;
- #nop │杀气:正常 │愿望:160 │活跃兑换:0 │;
- #nop ├───休闲任务─────┼────────────┼─────────────┤;
- #nop │高级任务:0次 │低级任务:6次 │劫匪掉宝:0次 │;
- #action {^│%+:%*│%+:%*│%+:%*│$} {
- #var char[档案][%%1] {@str.Trim{%%2}};
- #var char[档案][%%3] {@str.Trim{%%4}};
- #if { "%%5" == "存款"} {
- #regex {@str.Trim{%%6}} {{(\d+)金条 |}%d黄金} {
- #var char[档案][存款][金条] {&2};
- #var char[档案][存款][黄金] {&3};
- };
- };
- #elseif { "%%5" == "门派例钱" } {
- #var char[档案][存款][门派例钱] {@math.ParseCN{%%6}};
- };
- #else {
- #var char[档案][%%5] {@str.Trim{%%6}};
- };
- };
- #action {^╰────────────┴────────────┴────%S────╯{|ID=char.score}$} {
- #class char-score-parser kill;
- #if { "$char[档案][门派]" == "%S [丹心]" } {
- #var char[档案][丹心] {true};
- #replace char[档案][门派] {%S %*} {&1};
- };
- #var char[档案][门派ID] {$char-menpai-id[$char[档案][门派]]};
- #local age {$char[档案][年龄]};
- #replace age {%*岁{|(.*)个月}$} {@math.Eval{@math.ParseCN{&1} + @math.Eval{@math.ParseCN{@default{&3;0}} * 1.0 / 12}}};
- #var char[档案][年龄] {$age};
- #local height {$char[档案][身高]};
- #replace height {%*尺{|(.*)寸}$} {@math.Eval{@math.ParseCN{&1} + @math.Eval{@math.ParseCN{@default{&3;0}} * 1.0 / 10}}};
- #var char[档案][身高] {$height};
- #local weight {$char[档案][体重]};
- #replace weight {约%*斤} {&1};
- #var char[档案][体重] {@math.ParseCN{$weight}};
- #replace char[档案][杀生] {人} {};
- #replace char[档案][被杀] {次} {};
- #replace char[档案][死亡] {次} {};
- #replace char[档案][高级任务] {次} {};
- #replace char[档案][低级任务] {次} {};
- #replace char[档案][劫匪掉宝] {次} {};
- event.DelayEmit {char/score};
- event.DelayEmit {char/saving};
- };
- #class char-score-parser close;
- };
- #nop 取钱提示;
- #action {^%+1..4u记完帐,告诉你:「您在敝商号现还有%*。」$} {
- score.update-balance {%2};
- };
- #nop 存钱提示;
- #action {^%+1..4u记完帐,点了点头:“您在敝商号现有%*。”$} {
- score.update-balance {%2};
- };
- #nop 存款上限;
- #action {^%+1..4u翻了翻帐簿,告诉你:“您在敝商号共存有%*,以阁下的信用,在敝商号的存款上限是:%*锭黄金%*。”$} {
- score.update-balance {%2};
- #var char[档案][存款][上限] {@math.ParseCN{%3}};
- };
- #alias {score.update-balance} {
- #local balance {%1};
- #nop 四万二千七百六十三锭黄金十八两白银二十二枚铜板;
- #regex {$balance} {^{.*锭黄金|}%*$} {
- #local balance {@math.ParseCN{&1}};
- #var char[档案][存款][黄金] {$balance};
- event.DelayEmit {char/saving};
- };
- };
- event.HandleOnce {user-online} {score/init} {basic/char} {
- score;
- };
|