Browse Source

feat(pkuxkx): 支持 jobquery 新格式

dzp 1 year ago
parent
commit
6e348f48b0
1 changed files with 76 additions and 63 deletions
  1. 76 63
      mud/pkuxkx/plugins/basic/cmds/jobquery.tin

+ 76 - 63
mud/pkuxkx/plugins/basic/cmds/jobquery.tin

@@ -14,62 +14,64 @@ PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 
 };
 
 /*
-
-2023-12-15 22:58:47 INPUT: jq
-╭──┬北侠任务查询助理──────────┬─────────────────────────────────────╮
-│编号│类型  │名称                        │状态                                                                      │
-│[01]│[门]  │门忠任务                    │现在即可接到下个任务。                                                    │
-│[02]│[门]  │门派任务                    │现在即可接到下个任务。                                                    │
-│[03]│[新]  │送信                        │现在即可接到下个任务。                                                    │
-│[04]│[新]  │唱戏任务                    │现在即可接到下个任务。                                                    │
-│[05]│[新]  │灵鹫护卫                    │现在即可接到下个任务。                                                    │
-│[06]│[主]  │慕容(13)                    │现在即可接到下个任务。                                                    │
-│[07]│[主]  │韩员外                      │现在即可接到下个任务。                                                    │
-│[08]│[主]  │都府刺杀                    │现在即可接到下个任务。                                                    │
-│[09]│[主]  │胡一刀(1) 100.0%            │现在即可接到下个任务。                                                    │
-│[10]│[主]  │萧峰(21) 84.0%              │现在即可接到下个任务。                                                    │
-│[11]│[主]  │韩世忠(10) 100.0%           │现在即可接到下个任务。                                                    │
-│[12]│[主]  │公孙止(10) 76.9%            │现在即可接到下个任务。                                                    │
-│[13]│[主]  │万安塔(100) 82.6%           │现在即可接到下个任务。                                                    │
-│[14]│[主]  │破阵                        │现在即可接到下个任务。                                                    │
-│[15]│[主]  │天珠(10) 83.3%              │现在即可接到下个任务。                                                    │
-│[16]│[主]  │偷学                        │未满足接受此任务的所有条件,前置任务次数不够。                            │
-│[17]│[主]  │宋远桥                      │现在即可接到下个任务。                                                    │
-│[18]│[主]  │谍报(10) 83.3%              │现在即可接到下个任务。                                                    │
-│[19]│[主]  │海棠(65)                    │任务已经失败。                                                            │
-│[20]│[主]  │捉蛊                        │未满足接受此任务的所有条件,身上必须有蛊盒。                              │
-│[21]│[主]  │神游八方                    │未满足接受此任务的所有条件,级别必须达到60。                              │
-│[22]│[主]  │苗王                        │现在即可接到下个任务。                                                    │
-│[23]│[主]  │活人祭                      │未满足接受此任务的所有条件,蛊术的级别不足100级。                         │
-│[24]│[主]  │见性成佛                    │现在即可接到下个任务。                                                    │
-│[25]│[主]  │心上人                      │现在即可接到下个任务。                                                    │
-│[26]│[主]  │暗杀                        │未满足接受此任务的所有条件,杀手帮积分至少积累20点。                      │
-│[27]│[主]  │纪晓芙(26)                  │现在即可接到下个任务。                                                    │
-│[28]│[主]  │南国围猎(26) 96.3%          │现在即可接到下个任务。                                                    │
-│[29]│[主]  │山宗锄奸                    │未满足接受此任务的所有条件,完成山宗上祭礼才能接到这个任务。              │
-│[30]│[主]  │西行                        │现在即可接到下个任务。                                                    │
-│[31]│[主]  │香闺怨                      │未满足接受此任务的所有条件,级别必须达到40。                              │
-│[32]│[主]  │破解武功                    │未满足接受此任务的所有条件,职业等阶必须达到1。                           │
-│[33]│[主]  │青城山采药(11) 100.0%       │现在即可接到下个任务。                                                    │
-│[34]│[主]  │青城派追查                  │未满足接受此任务的所有条件,经验必须达到30000000。                        │
-│[35]│[主]  │华山送信任务                │现在即可接到下个任务。                                                    │
-│[36]│[主]  │投名状任务                  │现在即可接到下个任务。                                                    │
-│[37]│[主]  │萧半和任务                  │现在即可接到下个任务。                                                    │
-│[38]│[主]  │鄱阳湖寻宝(19)              │现在即可接到下个任务。                                                    │
-│[39]│[主]  │运镖(2384)                  │现在即可接到下个任务。[普通镖局]                                          │
-│[40]│[特]  │藏经阁                      │现在即可接到下个任务。今天还能进行2次藏经阁任务。                         │
-│[41]│[特]  │大唐爵位任务                │现在即可接到下个任务。                                                    │
-│[42]│[特]  │锻造任务                    │现在即可接到下个任务。                                                    │
-│[43]│[特]  │铜雀台任务                  │现在即可接到下个任务。                                                    │
-│[44]│[特]  │百晓生任务                  │现在即可接到下个任务。                                                    │
-│[45]│[特]  │公孙绿萼任务                │                                                                          │
-╰──┴───┴──────────────┴─────────────────────────────────────╯
-╭─────────────────────────────────────────┬─────────────────╮
-│全局事件 (天魔) 任务环剩余                                                        │jobquery支持参数++/-- 增加/ 减少任│
-│胡一刀任务->韩员外任务->胡一刀任务->萧峰任务->护镖任务->天珠任务->破阵任务->破阵任│务到自定义列表,参数intro 给出所有│
-│务->绝情谷任务->绝情谷任务->宋远桥任务->萧峰任务->宋远桥任务->萧峰任务->谍报任务->│任务简介。                        │
-│胡一刀任务->胡一刀任务->都府刺杀任务->胡一刀任务->都府刺杀任务。#(已完成:0)       │                                  │
-╰─────────────────────────────────────────┴────────北大侠客行────╯
+2024-12-01 11:33:51 INPUT: jq
+╭─┬─北侠任务查询助理──────┬────────────────────╮
+│  │类型│名称                    │状态                                    │
+│ 1│门派│门忠任务                │门忠任务细节请用loyalty list查询        │
+│ 2│门派│门派任务                │现在即可接到下个任务。                  │
+│ 3│新手│送信                    │现在即可接到下个任务。                  │
+│ 4│新手│唱戏                    │现在即可接到下个任务。                  │
+│ 5│新手│灵鹫护卫                │现在即可接到下个任务。                  │
+│ 6│主  │慕容◆(38)              │现在即可接到下个任务。                  │
+│ 7│主  │韩员外◆◆              │现在即可接到下个任务。                  │
+│ 8│主▎│刺杀◆◆                │现在即可接到下个任务。                  │
+│ 9│主▎│胡一刀◆◆              │未达成条件:级别必须达到22。            │
+│10│主  │萧峰◆                  │现在即可接到下个任务。                  │
+│11│主▎│韩世忠◆                │现在即可接到下个任务。                  │
+│12│主  │公孙止◆                │现在即可接到下个任务。                  │
+│13│主  │万安塔                  │现在即可接到下个任务。                  │
+│14│主  │破阵(73) 71.6%          │现在即可接到下个任务。                  │
+│15│主▎│天珠◆◆(907) 91.8%     │现在即可接到下个任务。                  │
+│16│主▎│偷学◆                  │未达成条件:级别必须达到30。            │
+│17│主  │宋远桥◆(1)             │现在即可接到下个任务。                  │
+│18│主  │谍报◆                  │现在即可接到下个任务。                  │
+│19│主▎│海棠(10)                │现在即可接到下个任务。                  │
+│20│主▎│捉蛊◆◆                │未达成条件:身上必须有蛊盒。            │
+│21│主▎│神游八方                │未达成条件:级别必须达到65。            │
+│22│主▎│苗王◆◆                │现在即可接到下个任务。                  │
+│23│主▎│活人祭◆◆              │未达成条件:蛊术低于100级。             │
+│24│主▎│见性成佛                │未达成条件:经验必须达到5000000。       │
+│25│主▎│心上人◆◆              │现在即可接到下个任务。                  │
+│26│主  │暗杀◆◆                │未达成条件:杀手帮积分积累20点。        │
+│27│主▎│纪晓芙◆◆(4)           │现在即可接到下个任务。                  │
+│28│主▎│南国围猎                │未达成条件:级别必须达到25。            │
+│29│主▎│山宗锄奸                │未达成条件:级别必须达到30。            │
+│30│主  │西行                    │未达成条件:级别必须达到35。            │
+│31│主▎│香闺怨                  │未达成条件:级别必须达到40。            │
+│32│主▎│破解武功                │未达成条件:级别必须达到60。            │
+│33│主▎│采药◆◆                │未达成条件:级别必须达到32。            │
+│34│主▎│追查◆◆                │未达成条件:级别必须达到45。            │
+│35│主▎│打擂◆◆                │未达成条件:韩世忠任务需完成1000次。    │
+│36│主▎│按图索骥                │未达成条件:级别必须达到35。            │
+│37│主▎│失散古谱◆              │未达成条件:级别必须达到50。            │
+│38│特殊│华山送信(10)            │现在即可接到下个任务。                  │
+│39│特殊│投名状(36)              │现在即可接到下个任务。                  │
+│40│特殊│萧半和                  │现在即可接到下个任务。                  │
+│41│特殊│鄱阳湖寻宝(5)           │现在即可接到下个任务。今日剩余5次       │
+│42│特殊│运镖(825)               │任务已经失败。                          │
+│43│限制│藏经阁                  │未达成条件:经验必须达到15000000。      │
+│44│限制│大唐爵位                │现在即可接到下个任务。                  │
+│45│限制│锻造                    │现在即可接到下个任务。                  │
+│46│限制│铜雀台                  │现在即可接到下个任务。                  │
+│47│限制│百晓生                  │现在即可接到下个任务。                  │
+│48│限制│公孙绿萼                │                                        │
+╰─┴──┴────────────┴────────────────────╯
+╭──────────────────────────┬───────────╮
+│                                                    │jobquery支持参数++/-- │
+│                                                    │增加/ 减少任务到自定义│
+│                                                    │列表,参数intro 给出所│
+│                                                    │有任务简介。          │
+╰──────────────────────────┴──北大侠客行────╯
 */
 
 event.Define {jobquery} {无参} {$MODULE} {任务CD状态查询结果已更新,内容在变量 gJobState 中};
@@ -130,7 +132,7 @@ VAR {任务CD状态查询结果} gJobState {};
         #delay jobquery {job.Query {%1} {%2}} $cd;
     };
 
-    #line oneshot #action {^╭─┬北侠任务查询助理─{(─|┬)+}─╮$} {
+    #line oneshot #action {^╭─┬北侠任务查询助理─{(─|┬)+}─╮$} {
         jobquery.parse.output {%1};
         #if { "%1" == "gag" } {
             #line gag;
@@ -169,23 +171,34 @@ VAR {任务CD状态查询结果} gJobState {};
     link.Enable jobquery 0 {藏经阁;大唐爵位任务};
 
     #nop 这里一共有 7 个占位符;
-    #local jobLeader {│[%d]%!s│[{门|新|主|特}]%!s│%S{?:(?:◆)*}{|\((\d+)\)} {|([0-9.]+)%}%!s};
+    #local jobLeader {│%!s%d│{门派|新手|特殊|限制|主|主▎}%!s│%S{?:(?:◆)*}{|\(([0-9万+]+)\)} {|([0-9.]+)%}%!s};
     #local jobEnd {%!s│};
 
     #alias {jq.set} {
         #local {rawLine}    {%%1};
+        #local {type}       {%%3};
         #local {name}       {%%4};
         #local {times}      {%%5};
         #local {pct}        {%%7};
+        #local {reason}     {%%10};
 
-        #replace name {▎}  {};
+        #replace type {▎}  {};
+        #if { "$type" == "主" } {#local type {主流}};
 
         #if { "$times" != "" } {#local {times} {%%6}};
         #if { "$pct" != "" }   {#local {pct}   {%%8}};
 
+        #replace {reason} {。$} {};
+
+        #if { "$times" == "%d万+" } {
+            #replace times {万+} {};
+            #math times {$times * 10000};
+        };
+
         #local color {\e\[[0-9;]+m};
 
-        #replace {rawLine} {^%*[主]%C│%+1c{(($color)+)▎$color|}%+0..2c$name{(?:\e\[2;37;0m($color)+◆)*}%*} {
+        #replace {rawLine} {^%*│%!c{(主|特殊)($color(($color)+)▎$color|)}%!C│%!+1c%+0..2c$name{(?:\e\[2;37;0m($color)+◆)*}%*} {
+            {type}  {&3}
             {group} {&5}
             {buff}  {&7}
             {color} {&8}
@@ -215,13 +228,13 @@ VAR {任务CD状态查询结果} gJobState {};
 
         #var gJobState[$name] {
             {ID}        {%%2}
-            {类型}      {%%3}
+            {类型}      {$type}
             {名称}      {$name}
             {次数}      {$times}
             {成功率}    {$pct}
             {CD}        {$cd}
             {NEXT}      {$next}
-            {附加信息}  {%%10}
+            {附加信息}  {$reason}
             {增益}      {$moreInfo[buff]}
             {增益联动}  {$moreInfo[group]}
             {名号加成}  {$moreInfo[color]}
@@ -248,7 +261,7 @@ VAR {任务CD状态查询结果} gJobState {};
         jq.set {%%99} {%%1} {%%2} {%%3} {%%4} {%%5} {%%6} {%%7} {-2} {%%8};
     };
 
-    #action {^$jobLeader│未满足接受此任务的所有条件,%S$jobEnd$} {
+    #action {^$jobLeader│未达成条件:%S$jobEnd$} {
         jq.set {%%99} {%%1} {%%2} {%%3} {%%4} {%%5} {%%6} {%%7} {-1} {%%8};
     };