Форум 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)
-   -   3 важных вопроса :) (http://www.flasher.ru/forum/showthread.php?t=81641)

Carmack 23.06.2006 17:30

3 важных вопроса :)
 
Первым делом хочу поблагодарить всех участников этого форума за все те советы которые они дают. Благодаря вам я многому научился.
Я делаю сайт и уменя появилось несколько "ламерских" вопросов. Не знаю может тему я создал не в том разделе, а надо было открывать в програмировании... но это уже пусть решают модеры :)

1. На многих флешсайтах я видел что можно выбирать несколько фоновых треков. Меня интересует способ, где есть допустим 3 кнопки, и нажимая на одну начинает играть музыка. Нажимая на следующую первая музыка выключается и начинает играть следующая. Так же хотелось бы чтоб эти треки загружались с сайта. Я искал в поиске подобные темы и нашел несколько. Но там они "обрывались" и в итоге понять мне как ламеру было сложно что и как.
2. Допустим ролик состоит из 5 сцен. 1 сцена - прелоадер. 2 сцена - интро. 3 - сцена вариант меню, 4 - сцена второй вариант меню, 5 - сцена третий вариант меню.
Задача - сделать так что бьы после сцены с интро рандомно выбиралась следующая сцена из трех возможных. Т.е. при каждой загрузке ролика игрались разные сцены :) ну вы поняли... я не думаю что это очень сложно (ошибаюсь?) но мои ламерские познания не дают мне это сделать.
3. Меня интересует как можно сделать так - что у ролика был фоновый звук и он не зависел от тех музыкальных треков. Т.е. он выключался отдельно от них, нажатием на подобную кнопку :)

может быть некоторые скажут что я слишком много хочу... но мне бы хотелось все-таки получить ответ на мои вопросы ;)
Заранее спасибо за любой отклик!

BigDan 23.06.2006 17:53

1.Почитай про класс Sound
2.Основной совет:читать хелп.
Воспользоватся Math.random. Например:
if(Math.random>=someNumber){
gotoAndPlay(....);
}
3.Найдя ответ на первый вопрос ты узнаешь ответ на этот вопрос.

Carmack 26.06.2006 05:10

1. ок буду читать
2.
Тут все сложнее :)
я ламер.. пытался разобраться со всеми этими if-ами и нифига не получилось вроде код пишу правильно но не пашет...
но поидее есть же более простой способ такой:
Код:

gotoAndstop("Scene"+random(3), 1);
но не пашет! И выдает ошибку:
Цитата:

**Error** Scene=test, layer=Layer 1, frame=1:Line 1: Scene name must be quoted string
gotoAndstop("Scene"+random(3), 1);

Total ActionScript Errors: 1 Reported Errors: 1
сцены названы у меня правильно scene0,scene1,scene2
в чем проблема?
подскажите какой-нибудь код пожалуйста :( я не могу разобраться

Morozov1982 26.06.2006 05:34

Ну, во-первых: не gotoAndstop, а gotoAndStop, а дальше, лучше всего будет посмотреть на твой исходник, а то не совсем понятно, что у тебя там получается :)

BigDan 26.06.2006 12:54

random(3)-такого не существует во флеше:Math.random

Carmack 26.06.2006 14:30

Вложений: 1
Исходник простой
4 сцены.
1 сцена с одним кадром и этим кодом (уже измененным):
Код:

gotoAndStop("Scene"+Math.ceil(Math.random()*3), 1);
и три сцены где по одному кадру и все :)
не фига не переходит и пишет такую же ошибку...
Я очень плохо знаю AS но все же...
если задать переменную значение которой будет рандомно генерится при каждой загрузке ролика... и исходя из этого значения будет выбираться сцена - то код должен выглядить как?
так?
Код:

var x = Math.ceil(Math.random()*3);
if (x = 1) { gotoAndPlay("Scene1", 1);
}
if (x = 2) {gotoAndPlay("Scene2", 1);
}
if (x = 3) {gotoAndPlay("Scene3", 1);
}

но если это вставить в первый кадр то нифига не пашет :) ошибок никаких нет... просто ничего не происходит

motor4ik 26.06.2006 14:34

Цитата:

Сообщение от BigDan
random(3)-такого не существует во флеше:Math.random

учим флэш, прежде чем говорить что-то! устное замечание.

Цитата:

Flash Player 4. This function was deprecated in Flash 5 in favor of Math.random().

Usage
random(value)

Example
The following use of random() returns a value of 0, 1, 2, 3, or 4:

random(5);


BigDan 26.06.2006 15:04

Ну, sorry.

Vertax 26.06.2006 15:15

Цитата:

var x = Math.ceil(Math.random()*3);
if (x = 1) { gotoAndPlay("Scene1", 1);
}
if (x = 2) {gotoAndPlay("Scene2", 1);
}
if (x = 3) {gotoAndPlay("Scene3", 1);
}
Вспомни разницу между "=" и "==".

Carmack 26.06.2006 15:22

БОЛЬШОЕ СПАСИБО :)
респект тебе! ;)
теперь работает :) я уж думал я безнадежный дурак и никогда не смогу написать даже такого простого скрипта.. ;)
спасибо


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

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