silent.tin 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #nop 做一个安静的客户端。;
  2. #nop 「隐藏自己,做好清理。」—— 《三体·黑暗森林》;
  3. #nop 命令白名单。;
  4. #nop 只有纯小写字母,空格,减号组成的命令无需再加白名单。这里只维护例外;
  5. #var silent-WhiteList {
  6. chat; chat*; qq; qq*;
  7. helpme; helpme*; tt; tt*;
  8. rumor; rumor*; tell; say;
  9. bd; bd*; group; group*;
  10. nation; nation*; ask; i2;
  11. buy; list; node; fullme;
  12. shu; dang; verify; perform;
  13. amber_alert; status_me; set; unset;
  14. };
  15. #nop 文字表情;
  16. #cat silent-WhiteList {
  17. ...; :)..; :D; :P; ?;
  18. ??; @@; ad.;
  19. };
  20. #var silent-LastCmd {};
  21. #alias {^%*{|ID=paotin/silent}$} {
  22. #local cmd {%0};
  23. #replace {cmd} {%S %*} {&1};
  24. #if { {$silent-WhiteList[$cmd]} == {true}
  25. || {$cmd} == {{[a-z]{1,10}}} && {%0} == {{[a-z0-9 -]*}} } {
  26. #var silent-LastCmd {};
  27. #send {%0};
  28. #return;
  29. };
  30. #echo {<169>命令「<139>$cmd<169>」不是一个合法的 MUD 命令,如果确认是,请更新白名单。<099>};
  31. #if { {%0} != {$silent-LastCmd} } {
  32. #echo {<169>本次命令<119>已被抑制<169>。如果你着急输入,可以重复一次本命令,将临时通过一次。<099>};
  33. #var silent-LastCmd {%0};
  34. };
  35. #else {
  36. #var silent-LastCmd {};
  37. #send {%0};
  38. };
  39. } {9.999};
  40. #alias {silent.Init} {
  41. #local list {$silent-WhiteList};
  42. #local cmd {};
  43. #var silent-WhiteList {};
  44. #foreach {$list} {cmd} {
  45. #var {silent-WhiteList[$cmd]} {true};
  46. };
  47. };
  48. silent.Init;