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

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

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

Регистрация: Apr 2010
Сообщений: 137
По умолчанию Вопрос про скроллинг

Игра TDS (вид сверху). Хочу, чтобы при движении персонажа камера сверху следила за ним. Это чисто так образно, на самом деле понимаю, что нужно двигать саму карту, предметы и противников вместо самого персонажа или некой выдуманной "камеры". В общем-то мне всё отлично понятно, кроме самого основного, как мне из всех моих мувиков, которые используются в игре, сделать единый мувик, который я и буду двигать. Ведь не писать же мне в коде сдвиги по х и у каждого мувика отдельно?
На сцену всё добавляется чисто кодом, т.е. перед компиляцией поле пустое.
Я бы показал код (так как без него обычно не помогают), но даже не знаю, что именно показать). Если что нужно, напишите).

Старый 05.12.2012, 02:35
Frost47rus вне форума Посмотреть профиль Отправить личное сообщение для Frost47rus Найти все сообщения от Frost47rus
  № 2  
Ответить с цитированием
Frost47rus
[+4 08.09.13]

Регистрация: May 2012
Сообщений: 131
все объекты кладите в единый контейнер. его и двигайте по сцене.

Старый 05.12.2012, 12:27
TurboDizel вне форума Посмотреть профиль Отправить личное сообщение для TurboDizel Найти все сообщения от TurboDizel
  № 3  
Ответить с цитированием
TurboDizel
 
Аватар для TurboDizel

Регистрация: Apr 2010
Сообщений: 137
Цитата:
Сообщение от Frost47rus Посмотреть сообщение
все объекты кладите в единый контейнер. его и двигайте по сцене.
Попробовал, ничего не происходит. Вот так создал контейнер
private var Level:MovieClip = new MovieClip();
Вот так в него добавлял
Level.addChild(Bg3);

Для проверки движение сделал только в одну сторону вот так
Код AS3:
if (Hero.x >= ((mainx / 2) + sideright)) {
	Level.x -= Hero.speed;
	Hero.x = ((mainx / 2) + sideright);
}
sideright - переменная = 20
Hero.speed - скорость героя

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

Регистрация: Jul 2008
Сообщений: 912
я делаю так:
Код AS3:
public function GameView(){
			super();
 
			_camera = new Sprite();//камера - просто спрайт, является контейнером
			addChild(Dispatcher._store.getBgGame());//задний фон не движимый, если нужен
 
			_avatar = new Sprite();//изображение героя
			_avatar.graphics.beginFill(0xff0000);
			_avatar.graphics.drawCircle(0, 0, 20);
 
			addChild(_camera);
			_camera.addChild(_avatar);
			_camera.addChild(Dispatcher._store.getLevelsGraphic());//графика уровня
			addEventListener(Event.ENTER_FRAME, update);
		}
 
		private function update(evant:Event):void {
 
			_avatar.x = ...;//действуем на героя()
			_avatar.y = ...;
			_camera.x = -_avatar.x / 2.5 + 20;//действуем на камеру 
			_camera.y = -_avatar.y / 1.5 + 70;
 
		}
	}
}
Перемещать нужно героя в общем спрайте-контейнере. И перемещать контейнер, в котором все спрайты находятся. Выходит, что надо перемещать и героя, и камеру.


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

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

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


 


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


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