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

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

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

Регистрация: Sep 2011
Сообщений: 25
По умолчанию Регенерация!

Привет!
Хочу узнать как вы реализовываете такие действия как добавление чего нибуть по времени!
Вот пример ситуации:
Есть герой у которого раз в секунду добовляется 1 НР, как лучше сделать?
1) Через enterFrame (fps = 30)
Код AS3:
var _delayRegen:int = 0;
var _regenTime:int = 30;
public function reger():void
{
     if (_delayRegen >= _regenTime)
     {
          hp++;
          _delayRegen = 0;
     }
     else
     {
         _delayRegen++;
     }
}
2) Через new Timer.

Старый 11.10.2011, 23:35
saikspaik вне форума Посмотреть профиль Отправить личное сообщение для saikspaik Найти все сообщения от saikspaik
  № 2  
saikspaik

Регистрация: Nov 2009
Сообщений: 300
Я делаю примерно как в первом варианте, только короче:
Код AS3:
var _delayRegen:int = 0;
var _regenTime:int = 30;
public function reger():void
{
     if (_delayRegen++ >= _regenTime)
     {
          hp++;
          _delayRegen = 0;
     }
}

Старый 11.10.2011, 23:38
pytachok вне форума Посмотреть профиль Отправить личное сообщение для pytachok Найти все сообщения от pytachok
  № 3  
pytachok

Регистрация: Sep 2011
Сообщений: 25
ну тогда у тебя отчет с 1 начинаетя а не с 0, не кретично, но все же)

Старый 11.10.2011, 23:43
trng вне форума Посмотреть профиль Отправить личное сообщение для trng Найти все сообщения от trng
  № 4  
trng

Регистрация: Jun 2011
Сообщений: 212
Через enterFrame у вас 30 раз в секунду выполняется код, который должен выполняться 1 раз в секунду.
Нелогично.

Старый 11.10.2011, 23:46
pytachok вне форума Посмотреть профиль Отправить личное сообщение для pytachok Найти все сообщения от pytachok
  № 5  
pytachok

Регистрация: Sep 2011
Сообщений: 25
ну этот код делает всего лишь проверку и инкремент!

Старый 11.10.2011, 23:48
saikspaik вне форума Посмотреть профиль Отправить личное сообщение для saikspaik Найти все сообщения от saikspaik
  № 6  
saikspaik

Регистрация: Nov 2009
Сообщений: 300
Цитата:
ну тогда у тебя отчет с 1 начинаетя а не с 0, не кретично, но все же)
Все должно работать точно так же как в твоем коде.

Старый 12.10.2011, 00:04
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 7  
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Название темы не отражает сути вопроса.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

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

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


 


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


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