北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 3359|回复: 4

新人tintin代码的问题。

[复制链接]
发表于 2020-2-20 14:59:07 | 显示全部楼层 |阅读模式
tintin代码:
  1. #class xiulian open;
  2. #alias {lianxi} {learn guxu for tiyunzong 1
  3.         #math bool 0;
  4.         #while {$bool == 0}{
  5.                 lianxi;
  6.                 #action {也许是缺乏实战经验,你对谷虚道长的回答总是无法领会。} {
  7.                         #math bool 1;
  8.                 };
  9.                 #action {你今天太累了,结果什么也没有学到。} {
  10.                         e;e;sleep;
  11.                         #action {你刚在三分钟内睡过一觉, 多睡对身体有害无益!} {
  12.                                 #delay {8} {sleep}
  13.                         };
  14.                 };
  15.         };
  16. };
  17. #class xiulian close;
复制代码
这个练功机器人的代码,一运行就死循环报错:
  1. DEBUG_STACK[000] = script_driver(0x110527000,3,0x1104c90d4)
  2. DEBUG_STACK[001] = parse_input(xkx,lianxi)
  3. DEBUG_STACK[002] = script_driver(0x110527000,1,0x7fc678001000)
  4. DEBUG_STACK[003] = parse_input(xkx,lianxi)
  5. DEBUG_STACK[004] = script_driver(0x110527000,1,0x7fc67880a600)
  6. DEBUG_STACK[005] = parse_input(xkx,lianxi)
  7. DEBUG_STACK[006] = script_driver(0x110527000,1,0x7fc678812400)
  8. DEBUG_STACK[007] = parse_input(xkx,lianxi)
  9. DEBUG_STACK[008] = script_driver(0x110527000,1,0x7fc678008e00)
  10. DEBUG_STACK[009] = parse_input(xkx,lianxi)
  11. DEBUG_STACK[010] = script_driver(0x110527000,1,0x7fc67881a200)
  12. DEBUG_STACK[011] = parse_input(xkx,lianxi)
  13. DEBUG_STACK[012] = script_driver(0x110527000,1,0x7fc679001c00)
  14. DEBUG_STACK[013] = parse_input(xkx,lianxi)
  15. DEBUG_STACK[014] = script_driver(0x110527000,1,0x7fc679009a00)
  16. DEBUG_STACK[015] = parse_input(xkx,lianxi)
  17. DEBUG_STACK[016] = script_driver(0x110527000,1,0x7fc679011800)
  18. DEBUG_STACK[017] = parse_input(xkx,lianxi)
  19. DEBUG_STACK[018] = script_driver(0x110527000,1,0x7fc679019600)
  20. DEBUG_STACK[019] = parse_input(xkx,lianxi)
  21. DEBUG_STACK[020] = script_driver(0x110527000,1,0x7fc679021400)
  22. DEBUG_STACK[021] = parse_input(xkx,lianxi)
  23. DEBUG_STACK[022] = script_driver(0x110527000,1,0x7fc679029200)
  24. DEBUG_STACK[023] = parse_input(xkx,lianxi)
  25. DEBUG_STACK[024] = script_driver(0x110527000,1,0x7fc679031000)
  26. DEBUG_STACK[025] = parse_input(xkx,lianxi)
  27. DEBUG_STACK[026] = script_driver(0x110527000,1,0x7fc679038e00)
  28. DEBUG_STACK[027] = parse_input(xkx,lianxi)
  29. DEBUG_STACK[028] = script_driver(0x110527000,1,0x7fc679040c00)
  30. DEBUG_STACK[029] = parse_input(xkx,lianxi)
  31. DEBUG_STACK[030] = script_driver(0x110527000,1,0x7fc679048a00)
  32. DEBUG_STACK[031] = parse_input(xkx,lianxi)
  33. DEBUG_STACK[032] = script_driver(0x110527000,1,0x7fc679050800)
  34. DEBUG_STACK[033] = parse_input(xkx,lianxi)
  35. DEBUG_STACK[034] = script_driver(0x110527000,1,0x7fc679058600)
  36. DEBUG_STACK[035] = parse_input(xkx,lianxi)
  37. DEBUG_STACK[036] = script_driver(0x110527000,1,0x7fc679060400)
  38. DEBUG_STACK[037] = parse_input(xkx,lianxi)
  39. DEBUG_STACK[038] = script_driver(0x110527000,1,0x7fc679068200)
  40. DEBUG_STACK[039] = parse_input(xkx,lianxi)
  41. DEBUG_STACK[040] = script_driver(0x110527000,1,0x7fc679070000)
  42. DEBUG_STACK[041] = parse_input(xkx,lianxi)
  43. DEBUG_STACK[042] = script_driver(0x110527000,1,0x7fc679077e00)
  44. DEBUG_STACK[043] = parse_input(xkx,lianxi)
  45. DEBUG_STACK[044] = script_driver(0x110527000,1,0x7fc67907fc00)
  46. DEBUG_STACK[045] = parse_input(xkx,lianxi)
  47. DEBUG_STACK[046] = script_driver(0x110527000,1,0x7fc679087a00)
  48. DEBUG_STACK[047] = parse_input(xkx,lianxi)
  49. DEBUG_STACK[048] = script_driver(0x110527000,1,0x7fc67908f800)
  50. DEBUG_STACK[049] = parse_input(xkx,lianxi)
  51. DEBUG_STACK[050] = script_driver(0x110527000,1,0x7fc679097600)
复制代码
有高手知道原因吗?

北大侠客行MUD,中国最好的MUD
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-2-20 18:11:04 | 显示全部楼层
你的while不应该用的。
你等不到#math bool 1的触发条件就已经循环死了
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-2-20 18:14:57 | 显示全部楼层
action 最好别多层嵌套,到时候查问题不好查。
感觉你对如何来写tintin在逻辑理解上还有问题。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-2-20 18:17:51 | 显示全部楼层
本帖最后由 youzi 于 2020-2-20 10:20 AM 编辑

我的学功夫的代码给你参考一下你就理解了。



  1. #alias {doxue} {

  2.         #var skill %2;
  3.         #var master %1;

  4.         xue $master for $skill 50;

  5.         #class doxue open;

  6.         #act {你共请教了五十次} {
  7.                 #delay {1}  {xue $master for $skill 50;};
  8.         };

  9.           #act {{书生笑着说道:您见笑了,我这点雕虫小技怎够资格「指点」您什么?|看上去书生并不想教你!|书生像是受宠若惊一样,说道:请教?这怎么敢当?|书生说道:您太客气了>,这怎么敢当?}} {
  10.                 give shu 1 cash;
  11.                 #delay {4}  {xue $master for $skill 50;};
  12.           };

  13.         #act {你今天太累了,结果什么也没有学到。} {
  14.                 yun regenerate;
  15.         };

  16.         #act {你略一凝神,精神看起来好多了。} {
  17.                 #delay {1} {xue $master for $skill 50;};
  18.         };

  19.         #act {你的内力不够。} {
  20.                 $gosleep;
  21.                 #delay {1} {drink soup;drink jiudai;eat liang;sleep;};
  22.         };

  23.         #act {你一觉醒来,精神抖擞地活动了几下手脚。} {
  24.                 dazuo max;
  25.         };

  26.         #action {{你将内息走了个小周天,流回丹田,收功站了起来。|你运功完毕,深深吸了口气,站了起来。}} {
  27.                 $gomaster;
  28.                 #delay {1} {xue $master for $skill 50;};
  29.         };

  30.         #action {你只觉神元归一,全身精力弥漫,无以复加,忍不住长啸一声,徐徐站了起来。} {
  31.                 $gomaster;
  32.                 #delay {1} {xue $master for $skill 50;};
  33.         };

  34.         #act {你刚在三分钟内睡过一觉, 多睡对身体有害无益!} {
  35.                 #delay {6} {drink jiudai;drink soup;eat liang;sleep;};
  36.         };
  37.         #class doxue close;
  38. };
复制代码
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2020-2-20 23:32:29 | 显示全部楼层
回复 4# youzi

根据您的代码重新写了一下,运行很完美,真的非常感谢您!!
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-4-27 08:13 AM , Processed in 0.014531 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表