Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Помогите вставить правильный оператор (http://www.flasher.ru/forum/showthread.php?t=205116)

Графиня 19.11.2013 13:57

Помогите вставить правильный оператор
 
Здравствуйте. Вопрос пустяковый, но что-то до меня не доходит.

Есть 3 кнопки: b1,b2,b3

Когда на каждую нажимаешь, она становится невидимой, и в конце, когда нажаты именно все 3 кнопки, переход на 1 кадр.

Код AS3:

import flash.events.ActivityEvent;
 
function ba(event:MouseEvent):void
{
b1.alpha = 0;
}
b1.addEventListener(MouseEvent.CLICK, ba);
 
function be(event:MouseEvent):void
{
b2.alpha = 0;
}
b2.addEventListener(MouseEvent.CLICK, be);
 
function bu(event:MouseEvent):void
{
b3.alpha = 0;
}
b3.addEventListener(MouseEvent.CLICK, bu);
 
function vseb(event:MouseEvent):void
{
gotoAndStop(1);
}
b1.addEventListener+b2.addEventListener+b3.addEventListener(MouseEvent.CLICK, vseb);

Я подозреваю, что что-то вставила не так в последней строчке, потому что часто переход осуществляется после нажатия 1 или 2 кнопок, не дожидаясь третьей. Пожалуйста, подскажите, какой там нужно вставить оператор.

Добавлено через 10 минут
Пробовала и так:

Код AS3:

b1+b2+b3.addEventListener(MouseEvent.CLICK, vseb);

,
но результат такой же.

Isfet 19.11.2013 14:09

Код AS3:

function ba(event:MouseEvent):void
{
b1.visible = false;
checkOnBtnsVisible();
}
b1.addEventListener(MouseEvent.CLICK, ba);
 
function be(event:MouseEvent):void
{
b2.visible = false;
checkOnBtnsVisible();
}
b2.addEventListener(MouseEvent.CLICK, be);
 
function bu(event:MouseEvent):void
{
b3.visible = false;
checkOnBtnsVisible();
}
b3.addEventListener(MouseEvent.CLICK, bu);
 
function vseb():void
{
gotoAndStop(1);
}
 
function checkOnBtnsVisible():void {
    if(b1.visible == false  && b2.visible=false && b3.visible ==false){
        vseb();
  }
}

и вам стоит почитать книжки, уж оооооочень слабый у вас код.

alexcon314 19.11.2013 14:15

А где вызов checkOnBtnsVisible()?

Графиня 19.11.2013 14:18

Не знаю такого ))
Кнопочки работают нормально, что касается видимости, но именно переход не фурычит ((.

Isfet 19.11.2013 14:24

пардон на скорую руку писал) исправил

Графиня 19.11.2013 14:27

Isfet, Мерси!
Книжки читаю :). Просто доходит с трудом ;).

alexcon314 19.11.2013 14:27

Код AS3:

b1.addEventListener+b2.addEventListener+b3.addEventListener(MouseEvent.CLICK, vseb);

Код AS3:

b1+b2+b3.addEventListener(MouseEvent.CLICK, vseb);

Скажите, вы всегда складываете все, что под руку попадет, в надежде, что все само собой "зафурычит"?
Чудеса.. свалим в сарай болты-гайки-колеса и просто подождем, когда из сарая выкатится автомобиль. Отличная логика. У Буратино на Поле Чудес было больше шансов :). Но он хоть поливал..

Графиня 19.11.2013 14:36

Я сначала попробовала &&, а плюсики вроде лучше работают )).
Спасибо всем за помощь.

alexcon314 19.11.2013 16:55

Плюсики работают ровно так же хорошо, как и &&. Беда в том, что вы совершенно бездумно их применяете.
Плюсики (+) - это математическое сложение чисел. Оператор && - это логичесоке 'И' (AND). Или еще раз, тоже самое:
"+" для чисел (не кнопок), "&&" для логических переменных (true, false, не кнопок опять же). Заметьте, каждая операция дает результат: + дает число, && дает логическую величину. Как вам пришло в голову применять эти операторы к кнопкам?
А
Цитата:

b1.addEventListener+b2.addEventListener
я даже прокомментировать не берусь.


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

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