silent.tin 1.4 KB

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