if (penok0 == 1 && penok == 1)//条件 { for (i = 1; i <= 9; i = i + 1) { if (eval("xod" add i) == 1) { set("sq" add i, 1); penok = 0; tellTarget("/xxx/xxx" add i) { gotoAndPlay(2); } cxod = 0; i = 9; } } } if (penok0 == 1 && penok == 1)//条件1 { if (cxod == 0)//条件2 { call("OOO"); set("sq" add oxod, 0); penok0 = 0; tellTarget("/ooo/ooo" add oxod) { gotoAndPlay(2); } cxod = 1; } } setProperty("/pen", _visible, penok); setProperty("/penO", _visible, penok0);在flash中是什么意思
时间: 2024-02-14 08:33:45 浏览: 130
这是一段 Flash ActionScript 2.0 代码。该代码包含两个条件语句和一些操作。
第一个条件语句包含一个 for 循环,用于遍历从 1 到 9 的数字。如果变量 penok 和 penok0 的值都为 1,则程序将检查变量 xod1 到 xod9 的值是否等于 1。如果找到一个值等于 1 的变量,程序会将变量 sq1 到 sq9 的值设置为 1,将变量 penok 的值设为 0,然后跳转到 /xxx/xxx1 到 /xxx/xxx9 中的第二帧(使用 tellTarget 函数指定)。最后程序将变量 cxod 的值设为 0,将变量 i 的值设为 9,以退出循环。
第二个条件语句包含一个 if 语句。如果变量 penok 和 penok0 的值都为 1,且变量 cxod 的值为 0,则程序将调用一个名为 OOO 的函数,并将变量 sq1 到 sq9 中某个变量(由变量 oxod 指定)的值设置为 0。然后程序将跳转到 /ooo/ooo1 到 /ooo/ooo9 中的第二帧(使用 tellTarget 函数指定)。最后程序将变量 cxod 的值设为 1。
最后两行代码将根据变量 penok 和 penok0 的值来控制 /pen 和 /penO 的可见性。
相关问题
if (penok0 == 1 && penok == 1) { for (i = 1; i <= 9; i = i + 1) { if (eval("xod" add i) == 1) { set("sq" add i, 1); penok = 0; tellTarget("/xxx/xxx" add i) { gotoAndPlay(2); } cxod = 0; i = 9; } } } if (penok0 == 1 && penok == 1) { if (cxod == 0) { call("OOO"); set("sq" add oxod, 0); penok0 = 0; tellTarget("/ooo/ooo" add oxod) { gotoAndPlay(2); } cxod = 1; } } setProperty("/pen", _visible, penok); setProperty("/penO", _visible, penok0);在flash中是什么意思
这段代码主要是用于实现井字棋游戏中的落子逻辑。具体解释如下:
- `if (penok0 == 1 && penok == 1)`:这是一个条件判断语句,如果满足条件,就会执行大括号中的代码。条件是 `penok0` 和 `penok` 的值都等于 1。
- `for (i = 1; i <= 9; i = i + 1)`:这是一个循环语句,它会执行 9 次。每次循环中,变量 `i` 的值从 1 到 9 递增。
- `{ if (eval("xod" add i) == 1) { set("sq" add i, 1); penok = 0; tellTarget("/xxx/xxx" add i) { gotoAndPlay(2); } cxod = 0; i = 9; } }`:这是循环体,它会在每次循环中执行。它使用 `eval` 函数动态地获取名字为 `"xod1"`、`"xod2"`、...、`"xod9"` 的变量的值,如果值等于 1,就将名字为 `"sq1"`、`"sq2"`、...、`"sq9"` 的变量的值设为 1,将 `penok` 的值设为 0,然后跳转到影片剪辑 `/xxx/xxx1`、`/xxx/xxx2`、...、`/xxx/xxx9` 并从第 2 帧开始播放。最后将 `cxod` 的值设为 0,将 `i` 的值设为 9,以结束循环。
- `if (penok0 == 1 && penok == 1)`:这是另一个条件判断语句,如果满足条件,就会执行大括号中的代码。条件是 `penok0` 和 `penok` 的值都等于 1。
- `{ if (cxod == 0) { call("OOO"); set("sq" add oxod, 0); penok0 = 0; tellTarget("/ooo/ooo" add oxod) { gotoAndPlay(2); } cxod = 1; } }`:这是另一个循环体,它也会在每次循环中执行。如果 `cxod` 的值等于 0,就会调用名字为 `OOO` 的函数,将名字为 `"sq1"`、`"sq2"`、...、`"sq9"` 中其中一个的值设为 0,将 `penok0` 的值设为 0,然后跳转到影片剪辑 `/ooo/ooo1`、`/ooo/ooo2`、...、`/ooo/ooo9` 中其中一个并从第 2 帧开始播放。最后将 `cxod` 的值设为 1。
- `setProperty("/pen", _visible, penok); setProperty("/penO", _visible, penok0);`:这是两个函数调用,它们分别将名字为 `/pen` 和 `/penO` 的影片剪辑的 `_visible` 属性设为 `penok` 和 `penok0` 的值。这样做可以根据游戏状态来显示或隐藏某些元素。
需要注意的是,这段代码使用了一些 ActionScript 2.0 特有的语法,例如 `eval` 函数、`tellTarget` 函数和 `_visible` 属性。在 ActionScript 3.0 中,这些语法都已被废弃或移除,需要使用不同的语法来实现相同的功能。
if (penok0 == 1 && penok == 1) { for (var i:int = 1; i <= 9; i++) { if (this["xod" + i] == 1) { this["sq" + i] = 1; penok = 0; MovieClip(this.getChildByName("xxx" + i)).gotoAndPlay(2); cxod = 0; break; } } } if (penok0 == 1 && penok == 1) { if (cxod == 0) { this["OOO"](); this["sq" + oxod] = 0; penok0 = 0; MovieClip(this.getChildByName("ooo" + oxod)).gotoAndPlay(2); cxod = 1; } } pen.visible = penok; penO.visible = penok0;是什么意思
这也是一段 ActionScript 3.0 的代码,与游戏相关,大致的意思如下:
- 如果 penok0 和 penok 都等于 1,那么循环 9 次,找到第一个 xod 等于 1 的属性,将对应的 sq 属性设为 1,将 penok 设为 0,播放名字为 "xxx" + i 的 MovieClip 的第二帧,将 cxod 设为 0,然后跳出循环。
- 如果 penok0 和 penok 都等于 1,且 cxod 等于 0,那么调用函数 OOO,将对应的 sq 属性设为 0,将 penok0 设为 0,播放名字为 "ooo" + oxod 的 MovieClip 的第二帧,将 cxod 设为 1。
- 根据 penok 和 penok0 的值,控制名为 pen 和 penO 的显示或隐藏状态。
具体代码的作用需要根据上下文来确定,但可以看出这段代码与游戏的逻辑有关。
阅读全文