Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Отправка на строку кода (http://www.flasher.ru/forum/showthread.php?t=95250)

Bestflashes 01.05.2007 23:39

Отправка на строку кода
 
Можно ли заставить флэш отправится на какую-то строку кода и продолжить его выполнение с указанного места??? Например, если есть какой-то иф, и если он не выполняется, отправляемся на пару строк назад, меняем переменную, снова смотрим иф, если не подходит - снова валим назад, если подходит - идём дальше???
Заранее спасибо!!!

Kikasso 01.05.2007 23:48

gotoAndPlay

BigDan 02.05.2007 00:09

через
Код:

while(.....){
 if(.....){
 }else{
  continue;
 }
}


Kikasso 02.05.2007 00:15

BigDan, и что будет?

lowka 02.05.2007 00:22

Цитата:

Сообщение от Kikasso
gotoAndPlay

Вы каждую кода строчку в отдельный фрейм предлагаете вынести?

MINASTIS 02.05.2007 00:35

Kikasso он имел ввиду аналог методу goto из Паскаля. Где ставишь где-нибудь в коде например #metka А после пишешь где-нибудь goto(metka) и он выполняет код со строки где эта метка.

Bestflashes кроме как условиями или циклами никак не сделать.
Например
Код:


if (first) {
if (second) {
// here code
}
if (third) {
// here code
}
}

Вот так и избираешь включая на true нужные переменные.
И кстати такие вот (хоть здесь и нет) методы перехода на строку вроде goto из Паскаля считаются плохой практикой программрования. Короче плохим тоном. Учись делать циклами и условиями.
Или удобно функциями, просто вызываешь нужную в нужный момент и все.

iNils 02.05.2007 00:37

lowka, если вы хотите как в бейсике сделать goto 10, то нельзя. Но правильно как указал BigDan, надо использовать while.

Kikasso 02.05.2007 00:37

MINASTIS, я тупанул. Я думал что надо мувик перемотать назад на несколько кадров.
BigDan извинения.
Но лучше использовать "обратную логику":
Код:

while(.....){
 if(! ..... ) continue;
 
.....


}

Потому что скобок меньше.

MINASTIS 02.05.2007 00:42

По моему все-таки для таких случаев были созданы функции... или я в чем-то ошибаюсь? (function)
Ими удобнее.

Kikasso 02.05.2007 02:32

Разные задачи бывают. Например, найти ноду с нужным аттрибутом:
Код:

var node:XMLNode = my_xml.firstChild.firstChild;
while( node = node.nextSibling ){
 if( node.attributes.itsMe != wantedValue ) continue;
 // а вот тут ты и попалась ....
}

Еще есть словечко break, тоже помогает. К сожалению, оно не так работает, как в php, там можно сказать break(2) и выходишь из 2-х циклов, а в 3-м остаешься, удобно. В AS такого нет, насколько мне известно - выходишь из всех циклов.


Часовой пояс GMT +4, время: 11:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.