幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4430|回复: 20

[NS] [求助]好心人帮我看看这段代码的问题……[已解决]

[复制链接]

36

主题

996

帖子

350万

积分

⑧专业

积分
3507413
发表于 2006-9-23 15:22:05 | 显示全部楼层 |阅读模式
看了一下午……实在是看不出为什么报错…… [s:6] 设计是在循环移动中点一下就break跳至*ss0,不过基本上只要点三次就会出现break和for不对应的报错…… [s:6] 请好心人帮我看一下我究竟是哪里写错了……或者命令用错了……
*d11
for %555=1 to 99999 step 1;第一个循环开始
mov %wind3,%415/%414
mov %x7,%wind1*10/14:mov %y7,%wind1*10/14
mov %y8,%wind1:mov %x8,0
msp 100,%x7,%y7,0
add %y3,%y7
add %x3,%x7
add %y5,%y7
add %x5,-%x7
wait 100
print 1
for %556=1 to %wind3 step 1;第二个循环
mov %x7,%x8:mov %y7,%y8
msp 100,%x7,%y7,0
add %x3,%x7
add %y3,%y7
add %x5,-%x7
add %y5,%y7
wait 100
print 1
gosub *didian
trap *kaishi011_1;用赋值给%fn11来达到break条件
*dd_11_1
if %fn1==10 break
next
trap *kaishi011_2
*dd_11_2
if %fn1==10 break
next
goto *ss0

*kaishi011_1
mov %fn1,10
goto *dd_11_1

*kaishi011_2
mov %fn1,10
goto *dd_11_2

*ss0
mov %fn1,0
goto *d11;再次开始循环


大致就是这样……其实是分为十二个方向的,不过其它段的都一样,为什么点上三到四次后就会不对应了呢…… [s:6]
回复

使用道具 举报

48

主题

215

帖子

2437

积分

⑥精研

提倡爱与正义

积分
2437
发表于 2006-9-24 00:08:52 | 显示全部楼层
已经超出我已知的NS范围,抱歉帮不了你了。
其实最近我也在OTZ这个循环问题上~~~~ [s:6]
  像风一样寻找方向
回复 支持 反对

使用道具 举报

24

主题

193

帖子

2239

积分

⑥精研

偶尔做次标题党

积分
2239
发表于 2006-9-29 15:17:52 | 显示全部楼层
trap *kaishi011_1;用赋值给%fn11来达到break条件
*dd_11_1
if %fn1==10 break
next
trap *kaishi011_2
*dd_11_2
if %fn1==10 break
next
goto *ss0



直觉是这里作祟...
不过我没用过这个指令,对这个问题也不清楚.....
晚上有时间实验下...
人类只不过是由构成世界的最基本元素构成的构成世界的最基本元素之一而已……
回复 支持 反对

使用道具 举报

36

主题

996

帖子

350万

积分

⑧专业

积分
3507413
 楼主| 发表于 2006-9-29 16:31:20 | 显示全部楼层
引用第2楼fatiny2006-09-29 15:17发表的“”:
trap *kaishi011_1;用赋值给%fn11来达到break条件
*dd_11_1
if %fn1==10 break
next
trap *kaishi011_2
.......

我想也是这里……[s:6]

不用break的话会在点十几次后出现内存报错自动退出……用break的话会在点三四次后循环错误自动退出……明明只是一个很简单的循环而已………………
现在用ns都不太敢用循环了……  [s:6]
回复 支持 反对

使用道具 举报

24

主题

193

帖子

2239

积分

⑥精研

偶尔做次标题党

积分
2239
发表于 2006-9-30 07:30:53 | 显示全部楼层
绝对是BREAK同学作祟。。。。
前面和后面还有相关联的代码吗?一起贴出来看看吧。。。
人类只不过是由构成世界的最基本元素构成的构成世界的最基本元素之一而已……
回复 支持 反对

使用道具 举报

36

主题

996

帖子

350万

积分

⑧专业

积分
3507413
 楼主| 发表于 2006-9-30 11:01:54 | 显示全部楼层
这是简化后的代码,前边后边应该没什么关联到的部分了……其他还有十一段类似的……因为是分了十二点钟方向……全贴出来的话……会看起来很混乱……
开始考虑舍弃break……内存报错就内存报错吧…… [s:6]
回复 支持 反对

使用道具 举报

24

主题

193

帖子

2239

积分

⑥精研

偶尔做次标题党

积分
2239
发表于 2006-9-30 11:25:04 | 显示全部楼层
扔掉BREAK的话好象是死循环= =。。。。
内存报错搞不好就是这个原因。。。
人类只不过是由构成世界的最基本元素构成的构成世界的最基本元素之一而已……
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2006-9-30 11:42:42 | 显示全部楼层
[s:4] 换KRKR吧,皆样…… [s:5]
不过有点奇怪……trap不是应该对应trapoff的么……这样一直改变监视状态可以么……
虽然这些偶都很少用的说……
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

36

主题

996

帖子

350万

积分

⑧专业

积分
3507413
 楼主| 发表于 2006-9-30 16:19:22 | 显示全部楼层
引用第7楼CountD2006-09-30 11:42发表的“”:
[s:4] 换KRKR吧,皆样…… [s:5]
不过有点奇怪……trap不是应该对应trapoff的么……这样一直改变监视状态可以么……
虽然这些偶都很少用的说……


啊……我之前也没想到这些……trap之前也没有用过……让我试试看是不是这个原因……
fatiny:

扔掉BREAK的话好象是死循环= =。。。。内存报错搞不好就是这个原因。。。

是这样没错,其实本来只是嵌套五六个好像还是不会出问题的……但是点一下嵌套两个,点上十几下就会出问题……
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2006-9-30 18:47:44 | 显示全部楼层
用debuglog把整个运行过程记录下来,看看是怎么走的,可能会有帮助。
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-5-19 07:04 , Processed in 0.024231 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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