login.tin 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #nop vim: set filetype=tt:;
  2. /*
  3. 模块名称:几个常用的别名
  4. 模块说明:本文件属于框架代码的一部分,不建议修改。如有需求请在 GitHub 发 issue 或者 PR
  5. 版权声明:本文件属于 PaoTin++ 的一部分
  6. ===========
  7. PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 享有并保留一切法律权利
  8. 你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。
  9. ===========
  10. */
  11. #var login[session] {};
  12. #var login[user] {};
  13. #var login[autoexec] {};
  14. #alias {login} {
  15. #var login[session] {%1};
  16. #var login[user] {%2};
  17. #var login[autoexec] {%3};
  18. #session {$session[name]} {$session[host]} {$session[port]};
  19. };
  20. #event {SESSION CONNECTED} {
  21. #if { "%0" !== "$login[session][name]" } {
  22. #return;
  23. };
  24. login.auto-login;
  25. };
  26. #alias {login.login-success} {
  27. #local type {%%1};
  28. #showme 登录成功。;
  29. #if { @isTrue{$login[user][manual]} } {
  30. login.write-id-file;
  31. login.init-game;
  32. };
  33. #local handler $login[autoexec];
  34. #class login.auto-login kill;
  35. #undelay login.login-success;
  36. kill-module login;
  37. $handler;
  38. #if { "$user[GMCP]" == "true" } {
  39. #delay 1 {
  40. load-module gmcp;
  41. gmcp.${gCurrentMUDLIB}.Enable;
  42. };
  43. };
  44. };
  45. #alias {login.init-game} {
  46. #if { "$login[user][id]" == "" || "$user[id]" != "" } {
  47. #return;
  48. };
  49. #var user[id] {$login[user][id]};
  50. #var user[passwd] {$login[user][passwd]};
  51. #gts #var user[id] {$login[user][id]};
  52. #gts #var user[passwd] {$login[user][passwd]};
  53. #local path {$user[id]};
  54. #if { "$session[log_path]" != "" } {
  55. #local path {$session[log_path]};
  56. };
  57. #if { !@InitLog{$path} } {
  58. #echo {<119>创建日志目录 $gLog[PATH]/$path 时遇到错误。<299>};
  59. #echo {<139>请检查你的安装环境,或者参考使用手册重新安装本软件。<299>};
  60. #return;
  61. };
  62. log.Open;
  63. #screen set title GAME-$user[id];
  64. NOTE 启动配置文件已生成,下次你可以直接 start $login[user][id] 进入游戏。;
  65. };
  66. #alias {login.write-id-file} {
  67. #if { "$login[user][id]" == "" || "$user[id]" != "" } {
  68. #return;
  69. };
  70. #local id-file {ids/$login[user][id]};
  71. #if { @existsDir{var/ids} } {
  72. #local id-file {var/$id-file};
  73. };
  74. #if { @existsFile{$id-file} } {
  75. #return;
  76. };
  77. #line quiet #script output {cp ids/$gCurrentMUDLIB $id-file};
  78. #line quiet #script output {sed -i.bak 's/^#var user\[id\] {.*};$/#var user[id] {$login[user][id]};/' $id-file};
  79. #line quiet #script output {sed -i.bak 's/^#var user\[name\] {.*};$/#var user[name] {};/' $id-file};
  80. #line quiet #script output {sed -i.bak 's/^#var user\[passwd\] {.*};$/#var user[passwd] {$login[user][passwd]};/' $id-file};
  81. #line quiet #script output {sed -i.bak '/^#nop 上面三处修改完毕之后,请删除下面这行文字:;$/d' $id-file};
  82. #line quiet #script output {sed -i.bak '/^#var user\[manual\] {true};$/d' $id-file};
  83. #line quiet #script output {rm ${id-file}.bak};
  84. };