找回密码
 点一下
查看: 2200|回复: 8

关于循环整数重复动作

[复制链接]
发表于 2013-2-9 22:03:16 | 显示全部楼层 |阅读模式
本帖最后由 冷漠 于 2013-2-10 22:25 编辑

比如循环整数Index 1-10 做动作,因为某个条件要再循环动作一次的话,不就是设置Index为1么,为啥我需要设置为0才有效果……

循环整数 Index 1 - Count 做动作
触发条件XX
设置Index为1
设置Count为XX(大于1)

以上的做法只有把Index设置为0的时候才有效果,是什么原因呢?
发表于 2013-2-9 23:12:27 | 显示全部楼层
LZ能写的再稍微详细点不。。个人表示这种T看不出来……

点评

详细点…… 就是说一个循环整数动作正在动作,因为某某又触发了条件,改变了循环整数的最大值 如果需要让该条循环整数从头再来的话是设置为0还是1?  详情 回复 发表于 2013-2-10 08:53
回复

使用道具 举报

 楼主| 发表于 2013-2-10 08:53:24 | 显示全部楼层
chyj4747 发表于 2013-2-9 23:12
LZ能写的再稍微详细点不。。个人表示这种T看不出来……

详细点……

就是说一个循环整数动作正在动作,因为某某又触发了条件,改变了循环整数的最大值

如果需要让该条循环整数从头再来的话是设置为0还是1?
回复

使用道具 举报

发表于 2013-2-10 09:05:26 | 显示全部楼层
冷漠 发表于 2013-2-10 08:53
详细点……

就是说一个循环整数动作正在动作,因为某某又触发了条件,改变了循环整数的最大值

要我来说的话如果循环是1-10那么设成0或1都可以从头开始,关键是看这个动作放在哪。。
不过我是用J来看这个问题的,T的话可能需要LZ放一个有问题的样本上来……

点评

For Order_Index 从 1 到 Order_Count, 做动作 Loop - 动作 如果所有条件成立则做动作1,否则做动作2 If - 条件 (截取 Order_String[0] 的 Order_Index - (Order_Index  详情 回复 发表于 2013-2-10 21:26
回复

使用道具 举报

发表于 2013-2-10 17:52:17 | 显示全部楼层
从没在循环上遇到过问题

评分

参与人数 1印象 -3 收起 理由
冷漠 -3 灌你妹的水啊。

查看全部评分

回复

使用道具 举报

发表于 2013-2-10 19:46:30 | 显示全部楼层
這麼說吧
我用C++舉個例子
for(int i = 1 ; i <= 10 ; i++ ){      //for(int i = 初始值 ; i <= 結束迴圈條件值 ; i = i + 1 )
    if( i == 10) i = 1;                   //if( i 等於 10 ) 就設定 迴圈整數 i 的值為 1
}
這麼一來回圈整數i的值就會是1,2,3,4,5,6,7,8,9,10,1,2,3,4,........如此這般無限迴圈
這就跟觸發裡的迴圈是一樣的意思
回复

使用道具 举报

 楼主| 发表于 2013-2-10 21:26:10 | 显示全部楼层
chyj4747 发表于 2013-2-10 09:05
要我来说的话如果循环是1-10那么设成0或1都可以从头开始,关键是看这个动作放在哪。。
不过我是用J来看这 ...

For Order_Index 从 1 到 Order_Count, 做动作
    Loop - 动作
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                (截取 Order_String[0] 的 Order_Index - (Order_Index + 4) 字节部分) 等于 trade
            Then - 动作
                设置 Order_String[0] = ((截取 Order_String[0] 的 1 - (Order_Index - 1) 字节部分) + (截取 Order_String[0] 的 (Order_Index + 5) - 0 字节部分))
                设置 Order_Index = 0
                设置 Order_Count = (Order_String[0]的长度)
                游戏 - 对 玩家1(红色) 在屏幕位移(0.00,0.00)处显示文本: tr
            Else - 动作


比如这样,需要把循环整数设置为0才可以,1无效。
回复

使用道具 举报

发表于 2013-2-10 22:20:35 | 显示全部楼层
只要你懂得看Jass代码,就知道每执行完一遍循环体,循环整数+1的操作是在循环体执行之后才执行的。

所以你在设置Order_Index = 1后,它会自动执行一次+1操作然后再继续进行循环。所以你必须将它设为0才行。

点评

噢,原来如此 多谢头目。  详情 回复 发表于 2013-2-10 22:25
回复

使用道具 举报

 楼主| 发表于 2013-2-10 22:25:23 | 显示全部楼层
麦德三世 发表于 2013-2-10 22:20
只要你懂得看Jass代码,就知道每执行完一遍循环体,循环整数+1的操作是在循环体执行之后才执行的。

所以 ...

噢,原来如此

多谢头目。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-23 06:18 , Processed in 0.037984 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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