| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- #nop vim: set filetype=tt:;
- /*
- 本文件属于 PaoTin++ 的一部分
- ===========
- PaoTin++ © 2020~2024 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 享有并保留一切法律权利
- 你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。
- ===========
- */
- /*
- 宝石囊的名字现在有好几种版本:钵盂(僧侣)、布袋(丐帮)、人偶(五毒教)、锦囊(其他门派)
- 以上功能都一样,区别在于名字和 ID 不同。
- 另外,jiancha 命令现在要求必须带 ID 才能看到宝石内容,否则只能看到数量,因此实际上存在带参数
- 和不带参数两个版本。
- 格式分别如下:
- 不带参数:
- 钵盂[141/141]
- 带参数:
- 钵盂(Bo yu) [141/141]
- 这是一只紫金色的钵盂,在出家人手中很常见。
- ╭───五行宝石──┬─────────┬─────────┬──────────╮
- │[J4A]风☆精金*1 │[M5B]雷★木灵*17 │[B7A]泽☆玄冰*1 │[Y3B]水★炎晶*2 │
- │[J3A]水☆精金*2 │[M4B]风★木灵*48 │[B4A]风☆玄冰*4 │[Y2B]山★炎晶*1 │
- │[J2A]山☆精金*2 │[M3B]水★木灵*8 │[B3A]水☆玄冰*34 │[Y1B]地★炎晶*1 │
- │[J1A]地☆精金*1 │[M2B]山★木灵*2 │[B2A]山☆玄冰*1 │ │
- │ │[M1B]地★木灵*4 │ │ │
- ├───日月及中性五行宝石───────┴─────────┴──────────┤
- │[S4C]风◎玉髓*3 │
- │[S3C]水◎玉髓*1 │
- │[S2C]山◎玉髓*3 │
- ├───四灵宝石──────┬─────────────┬────────────┤
- │[G1B]地★神龙骨*1 │[Q4B]风★麒麟角*1 │[X2B]山★玄武甲*1 │
- │ │[Q1A]地☆麒麟角*1 │[X1B]地★玄武甲*1 │
- ╰─────────────┴─────────────┴───北大侠客行────╯
- 对玩家来说,jiancha 后面带不同 ID 颇有不便,所以现在改成统一 jiancha gem 表示查看详情。
- */
- #list char[锦囊] create {};
- #alias {jiancha} {char.sachet.jiancha};
- #alias {char.sachet.jiancha} {
- #local id {%0};
- #if { "$id" == "" } {
- xtt.Send {jiancha};
- #return;
- };
- #if { "$id" == "gem" } {
- #switch {"$char[档案][门派]"} {
- #case {"{少林派|峨嵋派|天龙寺|大轮寺}"} {#local id {bo yu}};
- #case {"五毒教"} {#local id {ren ou}};
- #case {"丐帮"} {#local id {baoshi dai}};
- #default {#local id {jin nang}};
- };
- };
- #list char[锦囊] create {};
- #line oneshot #action {^{人偶|布袋|钵盂|锦囊}(%*) [%*/%*]{|ID=char.sachet}$} {
- char.sachet.parse.output;
- };
- xtt.Send {jiancha $id};
- };
- #alias {char.sachet.parse.output} {
- #class char-parse-sachet open;
- #local level {地|山|水|风|雷|火|泽|天};
- #local type {☆|★|◎};
- #local wuxing {精金|木灵|玄冰|炎晶|玉髓};
- #local beast {玄武甲|神龙骨|凤凰羽|麒麟角};
- #local special {日魂|月魄};
- #local pattern {\(\s*(\d+)\)($level)($type)($wuxing|$beast|$special)\*(\d+)\s+};
- #action {^├───%*宝石───────┴─────────┴──────────┤$} {
- #nop;
- };
- #action {^│%*│$} {
- #local line {%%1};
- #replace line {│} {;};
- #local item {};
- #foreach {$line} {item} {
- #if { "$item" == "" } {
- #continue;
- };
- #nop {[M5B]雷★木灵*30};
- #local item {@__char_sachet_parse__{{$item}}};
- #var char[锦囊] {$char[锦囊]{$item[序号]}{$item}};
- };
- };
- #action {^╰──{(─|┴)+}─%S────╯{|ID=char.sachet}$} {
- #class char-parse-sachet kill;
- };
- event.HandleOnce GA {char.sachet} {char} {
- #class char-parse-sachet kill;
- okLog 锦囊数据已更新。;
- #nop 吞参数专用,不要删除本行,也不要在末尾加分号或是别的语句
- };
- #class char-parse-sachet close;
- };
- #func {__char_sachet_parse__} {
- #local item {%1};
- #replace {item} {[%S]%*{☆|★|◎}%**%d} {
- {序号}{&1}
- {等级}{&2}
- {阴阳}{&3}
- {种类}{&4}
- {数量}{&5}
- };
- #return {$item};
- };
|