status.tin 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. #nop 角色生命值信息解析模块;
  2. load-lib event;
  3. event.Define {char/status} {无参} {$MODULE} {已经获取到 status_me 命令输出结果,并更新 char[STATUS]。};
  4. #nop ╭────个人状态────┬────┬──────┬────┬──────┬────┬─────╮;
  5. #nop │姓名 │马后炮 │ID │Mhp │级别 │32 │战斗力 │104611 │;
  6. #nop ├───攻击属性────┼────┼──────┼────┼──────┼────┼──────┤;
  7. #nop │武器伤害│264 │出招速度│0.58 │外伤命中│806 │内伤命中│-2级 │;
  8. #nop │外伤增益│15% │内伤增益│6% │要害攻击│2% │要害伤害│152% │;
  9. #nop │毒伤增强│0% │致晕命中│0级 │ │ │ │ │;
  10. #nop ├───防御属性────┼────┼──────┼────┼──────┼────┼──────┤;
  11. #nop │护甲 │597 │防御 │382 │躲闪 │818 │招架 │2846 │;
  12. #nop │外伤抗性│50% │外伤绝抗│0% │内伤抗性│45% │内伤绝抗│0% │;
  13. #nop │真气减伤│9% │伤害吸收│0% │外伤减伤│0 │技能防御│4级 │;
  14. #nop │要害抗性│1% │毒伤抗性│50% │致晕抗性│+3级 │ │ │;
  15. #nop ├───其他属性────┼────┼──────┼────┼──────┼────┼──────┤;
  16. #nop │臂力影响│54 │悟性影响│45 │根骨影响│75 │身法影响│59 │;
  17. #nop │后天身法│10点 │ │ │ │ │ │ │;
  18. #nop ├───技能加成────┼────┼──────┼────┼──────┼────┼──────┤;
  19. #nop │基本轻功│+57级 │基本招架│+40级 │基本拳法│+25级 │基本爪法│+25级 │;
  20. #nop │基本手法│+24级 │基本剑法│+50级 │基本刀法│+50级 │ │ │;
  21. #nop ├───恢复状态────┼────┼──────┼────┼──────┼────┼──────┤;
  22. #nop │气血基础│3381 │等级加成│1589 │高等加成│0 │其他加成│18050 │;
  23. #nop │精神基础│1964 │等级加成│926 │高等加成│0 │其他加成│2882 │;
  24. #nop │气血恢复│309.37 │气血治疗│49.79 │精神恢复│389.58 │精神治疗│49.79 │;
  25. #nop │内力恢复│43.05 │精力恢复│14.32 │内力精纯│100.00% │加力减耗│0% │;
  26. #nop ├───战斗信息────┴────┴──────┴────┴──────┴────┴──────┤;
  27. #nop │你使用「太极剑法」中的绝招「太极剑·连」攻击对手:喻永思(yu yongsi),命中(986),对方躲闪(1509 │;
  28. #nop │),招架(1795),最终命中概率12.00%。 │;
  29. #nop ├───特殊状态────────────────────────────────────────┤;
  30. #nop │身轻如燕永久有效,躲闪几率增加10%。 │;
  31. #nop │太极神功永久有效,最大气血 + 5100点。 │;
  32. #nop │铜皮铁骨永久有效,防御躲闪 + 117级,护甲防御 + 235点。 │;
  33. #nop ├───健康状态────────────────────────────────────────┤;
  34. #nop │受伤、怒、梯云纵(127秒)、太极剑·随(11秒)、太极剑·连(4秒)、太极剑·缠(1秒) │;
  35. #nop ├───奖励状态────┬────┬──────┬────┬──────┬────┬──────┤;
  36. #nop │幸运值 │25 │奖励系数│115% │识图检查│完整奖励 │ │ │;
  37. #nop ╰────┴──────┴────┴──────┴────┴──────┴──北大侠客行────╯;
  38. #alias {char.status_me.parse.output} {
  39. #local silent {%1};
  40. #class char-parse-status-me open;
  41. #if { "$silent" == "gag" } {
  42. #gag {^%*$};
  43. };
  44. #nop │气血恢复│6.42 │气血治疗│0.11 │精神恢复│3.16 │精神治疗│0.11 │;
  45. #action {^│气血恢复│%S%!s│气血治疗│%S%!s│精神恢复│%S%!s│精神治疗│%S%!s│$} {
  46. #var char[STATUS][气血恢复] {@trim{%%1}};
  47. #var char[STATUS][气血治疗] {@trim{%%2}};
  48. #var char[STATUS][精神恢复] {@trim{%%3}};
  49. #var char[STATUS][精神治疗] {@trim{%%4}};
  50. };
  51. #nop │内力恢复│4.11 │精力恢复│12.63 │内力精纯│97.69% │加力减耗│0% │;
  52. #action {^│内力恢复│%S%!s│精力恢复│%S%!s│内力精纯│%S\%%!s│加力减耗│%*│$} {
  53. #var char[STATUS][内力恢复] {@trim{%%1}};
  54. #var char[STATUS][精力恢复] {@trim{%%2}};
  55. #var char[STATUS][内力精纯] {@trim{%%3}};
  56. };
  57. #nop 兜底儿的触发,捕获其它所有数值类型字段;
  58. #action {^│%*│%S%!s│%*│%S%!s│%*│%S%!s│%*│%S%!s│$} {
  59. #local data {
  60. {%%1} {%%2}
  61. {%%3} {%%4}
  62. {%%5} {%%6}
  63. {%%7} {%%8}
  64. };
  65. #local key {};
  66. #foreach {*data[]} {key} {
  67. #local value {@trim{$data[$key]}};
  68. #local key {@trim{$key}};
  69. #if { "$key" != "" } {
  70. #replace value {{[^0-9.-]+}} {};
  71. #var char[STATUS][$key] {$value};
  72. };
  73. };
  74. } {5.1};
  75. #nop ├───健康状态────────────────────────────────────────┤;
  76. #nop │ 受伤、怒、梯云纵(127秒)、太极剑· 随(11秒)、太极剑· 连(4秒)、太极剑· 缠(1秒) │;
  77. #action {^├───健康状态──{(┴|─)+}───┤$} {
  78. #line oneshot #action {~^\e[0m│%*\e[2;37;0m{?:|、\x1b\[1;36m(.*)\x1b\[2;37;0m}%s\e[2;37;0m\e[2;37;0m│\e[0m$} {
  79. #var char[STATUS][健康状态] {%%%1};
  80. #var char[STATUS][持续效果] {%%%2};
  81. };
  82. };
  83. #nop  持续效果提示  梯云纵(87秒)、太极剑· 随(37秒)  ;
  84. #action {^ 持续效果提示  %* $} {
  85. #local status {@trim{%%1}};
  86. };
  87. #nop │幸运值 │2 │奖励系数 │100% │识图检查 │需要 │;
  88. #action {^│幸运值%!s│%d%!s│奖励系数%!s│%d%!.%!s│识图检查%!s│%*│$} {
  89. #var char[STATUS][幸运值] {@trim{%%1}};
  90. #var char[STATUS][奖励系数] {@trim{%%2}};
  91. #var char[STATUS][识图检查] {@trim{%%3}};
  92. };
  93. #nop ╰────┴──────┴────┴──────┴────┴──────┴──北大侠客行────╯;
  94. #line oneshot #action {^╰{(─|┴)+}──%S────╯{|ID=char.status}$} {
  95. #if { "%1" == "gag" } {#line gag};
  96. char.status_me.parse.done;
  97. };
  98. #alias {char.status_me.parse.done} {
  99. #class char-parse-status-me kill;
  100. #class char.GetStatusMe kill;
  101. event.UnHandle GA {char.status_me};
  102. #delay 0 {okLog 人物状态信息已更新。};
  103. event.Emit char/status;
  104. };
  105. event.HandleOnce GA {char.status_me} {char} {
  106. char.status_me.parse.done;
  107. #nop 吞参数专用,不要删除本行,也不要在末尾加分号或是别的语句
  108. };
  109. #class char-parse-status-me close;
  110. };
  111. #alias {char.GetStatusMe} {
  112. #local silent {%1};
  113. #local args {%2};
  114. #class char.GetStatusMe open;
  115. #nop ╭───个人状态─────┬────────────┬─────────────╮;
  116. #action {^╭─{(─)*}─个人状态─{((─)+┬){2}}──{(─)*}─╮$} {
  117. #if { "%1" == "gag" } {#line gag};
  118. #class char.GetStatusMe kill;
  119. char.status_me.parse.output %1;
  120. };
  121. #nop │当头炮(Dtp) │级别:64 │战斗力:99999999 │;
  122. #action {^│%S(%S)%s│级别:%d%s│战斗力:%d%s│$} {
  123. #if { "%1" == "gag" } {#line gag};
  124. #class char.GetStatusMe kill;
  125. char.status_me.parse.output %1;
  126. };
  127. #action {^等等,系统喘气中......$} {
  128. #class char.GetStatusMe kill;
  129. };
  130. #class char.GetStatusMe close;
  131. xtt.Send status_me %2;
  132. };
  133. #alias {status_me} {char.GetStatusMe gag {%0}};
  134. #alias {sm} {char.GetStatusMe nogag {%0}};
  135. #delay status_me.Init {char.GetStatusMe gag} 3;