Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.09.2010, 11:55
Andrej вне форума Посмотреть профиль Отправить личное сообщение для Andrej Найти все сообщения от Andrej
  № 1  
Ответить с цитированием
Andrej

Регистрация: Sep 2010
Сообщений: 49
По умолчанию Как разделить время на 4 и более частей

Сдраствуйте уважаемые мастера.
Возможно не совсем правельно тему называю.Не знаю, как точно спросить.Проблема такая.Например есть переменная по умолчанию равная 0.
Код AS3:
var time:Number=0;
Далее мы ее плюсуем в функции ENTER_FRAME
Код AS3:
function timeplus(e:Event):void
		{
 
			times++;
 
if (time ==1000){то останавливаем и что либо делаем}
}

Далее в другой функции исходя из значения time например добовляем очки

Код AS3:
function rezultat(e:Event):void
		{
		if(time<=500  ){score+=200;}
    if(time>=501){score+=100;}	//либо можно else{score+=100;}
 
}
Я разделил на 2 возможных результата.Вопрос как разделить на больше например на 4,что то не могу сообразить.Спасибо.С уважением Андрей.

Старый 29.09.2010, 12:03
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Заголовок темы доставляет, определенно.

А что вам мешает написать кучу if/else if? Или else if не проходили ещё?

Старый 29.09.2010, 13:06
Andrej вне форума Посмотреть профиль Отправить личное сообщение для Andrej Найти все сообщения от Andrej
  № 3  
Ответить с цитированием
Andrej

Регистрация: Sep 2010
Сообщений: 49
Почему не проходили Ясно спасибо.Я что то подумал,что они начнут путаться.Вобщем глупый вопрос.Спасибо.

Старый 29.09.2010, 13:42
drnet_ua вне форума Посмотреть профиль Отправить личное сообщение для drnet_ua Найти все сообщения от drnet_ua
  № 4  
Ответить с цитированием
drnet_ua
 
Аватар для drnet_ua

Регистрация: Jul 2010
Адрес: 50° 27′ 0″ N, 30° 30′ 0″ E
Сообщений: 256
Записей в блоге: 2
как вариант:

Код AS3:
protected function ScoreTimeBonus(myTime:Number):Number {
            var timeRange:Array =  new Array(100, 200, 300, 400, 500, 600, 700, 800, 900, 1000);
            var scoreBonus:Array = new Array(  1,  10,  50, 100, 150, 225, 300, 450, 500,  550);
 
            var i:Number = 0;
 
            while ((myTime > timeRange[i]) && (i<timeRange.length)) { i++ }
 
            return scoreBonus[i];
 
        }
Код AS3:
function rezultat(e:Event):void
        {
  score += ScoreTimeBonus(time);
}

Старый 29.09.2010, 15:38
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 5  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
единственно, не знаю, какие цели преследуются, но фрагмент кода, где что-то плюсуется по ENTER_FRAME, будет работать непредсказуемо.

надо быть готовым к тому, что у одного пользователя переменная, в которой копится результат, достигнет 100 после 3-й секунды, а у другого - после 5-й (а то и после 10-й)

Старый 29.09.2010, 16:36
Andrej вне форума Посмотреть профиль Отправить личное сообщение для Andrej Найти все сообщения от Andrej
  № 6  
Ответить с цитированием
Andrej

Регистрация: Sep 2010
Сообщений: 49
Спасибо ребят за советы.

Добавлено через 23 минуты
Цитата:
Сообщение от drnet_ua Посмотреть сообщение
как вариант:

Код AS3:
protected function ScoreTimeBonus(myTime:Number):Number {
            var timeRange:Array =  new Array(100, 200, 300, 400, 500, 600, 700, 800, 900, 1000);
            var scoreBonus:Array = new Array(  1,  10,  50, 100, 150, 225, 300, 450, 500,  550);
 
            var i:Number = 0;
 
            while ((myTime > timeRange[i]) && (i<timeRange.length)) { i++ }
 
            return scoreBonus[i];
 
        }
Код AS3:
function rezultat(e:Event):void
        {
  score += ScoreTimeBonus(time);
}

protected function ScoreTimeBonus(myTime:Number):Number

А как правельно ей слушатель добавить,пока еще не использовал такую .Спасибо.


Последний раз редактировалось Andrej; 29.09.2010 в 17:02.
Старый 29.09.2010, 17:47
AndreyKlimov592 вне форума Посмотреть профиль Отправить личное сообщение для AndreyKlimov592 Найти все сообщения от AndreyKlimov592
  № 7  
Ответить с цитированием
AndreyKlimov592

Регистрация: Sep 2010
Сообщений: 1
Замечательно!

Старый 29.09.2010, 18:17
drnet_ua вне форума Посмотреть профиль Отправить личное сообщение для drnet_ua Найти все сообщения от drnet_ua
  № 8  
Ответить с цитированием
drnet_ua
 
Аватар для drnet_ua

Регистрация: Jul 2010
Адрес: 50° 27′ 0″ N, 30° 30′ 0″ E
Сообщений: 256
Записей в блоге: 2
никак, "protected" вычеркни

или так:

Код AS3:
function rezultat(e:Event):void {
            var timeRange:Array =  new Array(100, 200, 300, 400, 500, 600, 700, 800, 900, 1000);
            var scoreBonus:Array = new Array(  1,  10,  50, 100, 150, 225, 300, 450, 500,  550);
 
            var i:Number = 0;
 
            while ((time > timeRange[i]) && (i<timeRange.length)) { i++ }
 
            score += scoreBonus[i];
}

Старый 29.09.2010, 22:12
Andrej вне форума Посмотреть профиль Отправить личное сообщение для Andrej Найти все сообщения от Andrej
  № 9  
Ответить с цитированием
Andrej

Регистрация: Sep 2010
Сообщений: 49
drnet_ua Спасибо.

Старый 08.10.2010, 16:41
VovanDymov908 вне форума Посмотреть профиль Отправить личное сообщение для VovanDymov908 Найти все сообщения от VovanDymov908
  № 10  
Ответить с цитированием
VovanDymov908

Регистрация: Oct 2010
Сообщений: 1
все равно не чего не понял (

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:12.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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