Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   глюк с глобальными переменными (http://www.flasher.ru/forum/showthread.php?t=92533)

definite 27.02.2007 21:46

глюк с глобальными переменными
 
Скажите, пожалуйста, ничего не понимаю. Упрощенно, ситуация такая - на одном слое управляется клавишами чувак, он же объект-клип. Его меняющиеся координаты заносятся в 2 глобальные переменные, объявленные на верхнем слое, где накатала код. Замечательно меняются. И все это работает на 30 зацикленных кадрах. А в 31 кадр попадаю по выполнению условия. Там первый мувик убирается, вместо него появляется другой. Передаю ему координаты того, первого, а он не хочет. Вывожу в текстовое поле энту самую глобальную переменную. А она пишется, как undefined. Хотя до этого совершенно замечательно выводилась.
HELP!!!
Что за йо мойо?!

kruasan 27.02.2007 22:18

А если через _global. обращаться к переменным, то все равно undefined?
Покажи простенький исходник, иллюстрирующий проблему.
Цитата:

Передаю ему координаты того, первого, а он не хочет
:confused:

definite 27.02.2007 23:48

по почте послать?

kruasan 28.02.2007 00:41

нет, надо аттачить исходник zip-архивом в сообщение.

vadja 28.02.2007 01:57

если в глобальные переменные пишутся те значения, которые возникают, вычесляются и тп с помощью мувиклипа, которого нет в 31ом кадре, соответственно, например, если переменные передаются с интервалом, а
в какой-то момент исчезает мувик, из которого высчитываются значения, то в глобальные переменные и должны заносится значения "undefined"

Это мои догадки, а вообще хорошобы на код взглянуть.

definite 28.02.2007 20:19

Вложений: 1
дизайн дебильный. тренировочное упражнение. управление стрелками и пробелом.
чувак и враг должны бы вроде вертеться, когда встречаются в том же месте, а вертятся там, где поставлены в кадр изначально.
к переменным обращаюсь, не как _global, кажется. Но это все равно. С глобалом тоже пробовала.

iNils 28.02.2007 23:08

В данном примере:
1. Я не нашел кода который переносит нас в 31 кадр.
2. Какая именно переменная не записывается в _global?

definite 01.03.2007 09:55

большой пардон. В 32 кадр.
Пожалуйста. Help.

definite 01.03.2007 09:56

переменные xpos1,ypos1,xpos2,ypos2

kruasan 01.03.2007 13:28

вот фрагмент твоего кода
Код:

if((xpos1 - en._x)<60 && (xpos1 - en._x)>-60 && (ypos1 - en._y)<60 && (ypos1 - en._y)>-60)
        { i = 0;       
        _root.gotoAndPlay(32);
                _root.car1._x = 40;
                _root.car1._y = 100;
                  _root.car1.play();
                _root.car2.stop();
                _root.car3.stop();
                _root.car4.stop();
                _global.xpos1 = _root.car1._x;
                _global.ypos1 = _root.car1._y;
                }
       
        _global.xpos2 = _root.en._x;
        _global.ypos2 = _root.en._y;
        }

У тебя последнее присвоение значений переменным xpos1,ypos1,xpos2,ypos2 происходит уже после перехода на 32 кадр. Клипов car1 и en в 32 кадре нет. Отсюда undefined.


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

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