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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.08.2008, 20:32
darkvam вне форума Посмотреть профиль Отправить личное сообщение для darkvam Найти все сообщения от darkvam
  № 1  
Ответить с цитированием
darkvam
[+1 20.08.08]

Регистрация: Aug 2008
Сообщений: 52
По умолчанию Нумерованная переменная

здравствуйте. боюсь что я опять с глупым вопросо, но всё же задам его.
Можно ли переменную типа, num нумеровать как мувиклипы?

вот код:

Код:
	//Стрельба;
	if (Key.isDown(Key.SPACE)) {
		shootreload++;
		if (shootreload>=_global.shootreload) {
			plazmanum += 1;
			_root.attachMovie("PlazmaShip", "PlazmaShip"+plazmanum, this.getNextHighestDepth(), {_x:tank._x, _y:tank._y});
			_root["PlazmaShip"+plazmanum]._rotation = tank._rotation;
			_root["PlazmaShip"+plazmanum].gotoAndPlay(2);
			shootreload = 0;
			lasttankrot = tank._rotation;
		}
	} else {
		shootreload = 10;
	}
	_root["PlazmaShip"+plazmanum].onEnterFrame = function() {
		if (this._currentframe<5) {
			this._rotation = tank._rotation;
			this._x = tank._x;
			this._y = tank._y;
		} else {
			this._x += 15*Math.cos(lasttankrot*(Math.PI/180));
			this._y += 15*Math.sin(lasttankrot*(Math.PI/180));
			if (this._x>1024 || this._x<0 || this._y>678 || this._y<0) {
				this.unloadMovie();
			}
		}
	};
в данном случае я создаю пули, и для каждой пули выполняется действие передвижения относительно того угла поворота коробля при котором был произведён выстрел (переменная lasttankrot). Дело в том, что эта переменная не должна быть одна и должна быть привязана к определённому мувиклипу пули в котором сейчас выполняется действие.
(наверное опять ничего не понятно? если так, то спрашивайте и я попытаюсь сказать умнее, извините меня за мой корявый язык.)

Старый 26.08.2008, 21:10
BBOY Ильич вне форума Посмотреть профиль Отправить личное сообщение для BBOY Ильич Найти все сообщения от BBOY Ильич
  № 2  
Ответить с цитированием
BBOY Ильич
 
Аватар для BBOY Ильич

Регистрация: Nov 2007
Сообщений: 256
Записей в блоге: 1
Отправить сообщение для BBOY Ильич с помощью ICQ
попробуйте так
Код:
//Стрельба;
	if (Key.isDown(Key.SPACE)) {
		shootreload++;
		if (shootreload>=_global.shootreload) {
			plazmanum += 1;
			_root.attachMovie("PlazmaShip", "PlazmaShip"+plazmanum, this.getNextHighestDepth(), {_x:tank._x, _y:tank._y});
			_root["PlazmaShip"+plazmanum]._rotation = tank._rotation;
			_root["PlazmaShip"+plazmanum].gotoAndPlay(2);
			shootreload = 0;
			_root["PlazmaShip"+plazmanum].lasttankrot = tank._rotation;
		}
	} else {
		shootreload = 10;
	}
	_root["PlazmaShip"+plazmanum].onEnterFrame = function() {
		if (this._currentframe<5) {
			this._rotation = tank._rotation;
			this._x = tank._x;
			this._y = tank._y;
		} else {
			this._x += 15*Math.cos(this.lasttankrot*(Math.PI/180));
			this._y += 15*Math.sin(this.lasttankrot*(Math.PI/180));
			if (this._x>1024 || this._x<0 || this._y>678 || this._y<0) {
				this.unloadMovie();
			}
		}
	};
Код:
if (this._x>1024 || this._x<0 || this._y>678 || this._y<0) {
может все-таки лучше использовать Stage.width и Stage.height?

Старый 26.08.2008, 22:05
darkvam вне форума Посмотреть профиль Отправить личное сообщение для darkvam Найти все сообщения от darkvam
  № 3  
Ответить с цитированием
darkvam
[+1 20.08.08]

Регистрация: Aug 2008
Сообщений: 52
BBOY Ильич
большое спасибо, помогло!)))

а как можно использовать Stage.width и Stage.height? извините за вопрос конечно, но всё же)))

Старый 26.08.2008, 22:16
BBOY Ильич вне форума Посмотреть профиль Отправить личное сообщение для BBOY Ильич Найти все сообщения от BBOY Ильич
  № 4  
Ответить с цитированием
BBOY Ильич
 
Аватар для BBOY Ильич

Регистрация: Nov 2007
Сообщений: 256
Записей в блоге: 1
Отправить сообщение для BBOY Ильич с помощью ICQ
я так понимаю, 1024 и 678 (может все же 768?) являются размерами сцены. А что будет, если я потяну за краешек окошка? Правильно. Сцена станет больше, а цифры не изменятся... А Stage.width и Stage.height всегда будут возвращать точные размеры окна.

Старый 27.08.2008, 05:36
darkvam вне форума Посмотреть профиль Отправить личное сообщение для darkvam Найти все сообщения от darkvam
  № 5  
Ответить с цитированием
darkvam
[+1 20.08.08]

Регистрация: Aug 2008
Сообщений: 52
BBOY Ильич
всё правильно! ещё раз спасибо большое)))

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

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

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


 


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


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