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

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

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

Регистрация: Aug 2012
Сообщений: 38
По умолчанию Добавление персонажа на уровень

Здравствуйте. Есть два класса. Один - уровень, другой - герой. Как добавить героя на уровень или метод, в котором герой создаётся? У меня либо герой на сцене, либо уровень. Выглядит это так:

Код AS3:
package {
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.events.Event;
 
public class TestLevel extends Sprite {
 
private var _car:Car;
 
public function TestLevel():void {
	  if (stage) init();
	  else addEventListener(Event.ADDED_TO_STAGE, init);
	  }
 
	   private function init(e:Event = null):void {
 
              removeEventListener(Event.ADDED_TO_STAGE, init);
 
              createBodies();// создаем тела уровня
 
             _car = new Car();
 
             addChild(_car);
 
            //_car = new Car();
	   //_car.createCar();  //только метод
} 
   }
      }
Код AS3:
package {
 import flash.display.Sprite;
 import flash.events.Event;
 
 public class Car extends Sprite {
 
 public function Car():void {
 
  if (stage) init();
  else addEventListener(Event.ADDED_TO_STAGE, init);
  }
            public function init(e:Event = null):void {
 
	 removeEventListener(Event.ADDED_TO_STAGE, init);
 
            createCar();// создаем героя
}
 } 
   }

Старый 21.07.2013, 14:01
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 2  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
В класс уровня
Код AS3:
public function addObject(object:Sprite):void {
    addChild(object:Sprite);
}
В классе родиля уровня
Код AS3:
var testLevel:TestLevel = new TestLevel();
     testLevel.addObject(new Car());
__________________
return this...

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

Регистрация: Aug 2012
Сообщений: 38
Спасибо, но выдаёт ошибку:
Код AS3:
18 Error: Syntax error: expecting rightparen before colon. addChild(object:Sprite);
Вроде это ругань на скобки, но со скобками всё впорядке на 100%.
Да и родителя, как такавого и нет, все классы расширяют Sprite. Да, есть класс Universe.as, в который я и добавляю уровень:
Код AS3:
package 
{
 
	import flash.display.Sprite;
	import flash.events.Event;
public class Universe extends Sprite
	{
private var _testlevel:TestLevel;
 
public function Universe()
		{
		if (stage)
		{
		init();
		}
		else
		{
		addEventListener(Event.ADDED_TO_STAGE, init);
		}
                      } 
 
                 private function init(event:Event = null):void
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// Тестовый уровень
			_testlevel = new TestLevel();
			addChild(_testlevel);
			testLevel.addObject(new Car());
		}
      }
}


Последний раз редактировалось Fazer; 21.07.2013 в 16:42.
Старый 21.07.2013, 16:43
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 4  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
простите
Код AS3:
addChild(object);
__________________
return this...

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

Регистрация: Aug 2012
Сообщений: 38
Цитата:
Сообщение от AlexCooper Посмотреть сообщение
простите
Код AS3:
addChild(object);
Ок. Спасибо. Но к сожалению, по прежниму герой на сцене не появляется. Уровень - есть, героя -нет.

Старый 21.07.2013, 20:08
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 6  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Попробуйте сначало добавить в классе Universe на сцену героя.
Код AS3:
addChild(new Car())
я более чем уверен что у Вас проблема чисто в визуализации персонажа, не подтянута графика или где-то не проатаченный клип. Ознакомьте полностью с классом Сar
__________________
return this...

Старый 21.07.2013, 20:24
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 7  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
addChild(object:Sprite);
Это КАК???

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

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Цитата:
Сообщение от Babylon Посмотреть сообщение
addChild(object:Sprite);
Это КАК???
Это doubleMouseClick, ctrl+c, ctrl+v + втык что это браузер а не IDE =)
__________________
return this...

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

Регистрация: Aug 2012
Сообщений: 38
Цитата:
Сообщение от AlexCooper Посмотреть сообщение
я более чем уверен что у Вас проблема чисто в визуализации персонажа, не подтянута графика или где-то не проатаченный клип. Ознакомьте полностью с классом Сar
Спасибо, работает) Вы правы, я закоментил функцию отрисовки. Правда теперь возникла проблема, в том, что герой появляется на сцене и падает вниз, но ведь в уровне есть пол, стены и другие объекты. Уровень и герой, как-будто в разных мирах существуют. Подскажите, пожайлуста, как их взаимосвязать?

Старый 22.07.2013, 14:46
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 10  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Цитата:
Сообщение от Fazer Посмотреть сообщение
Уровень и герой, как-будто в разных мирах существуют. Подскажите, пожайлуста, как их взаимосвязать?
Я не могу знать как у Вас прописанная логика, что-то конкретно говорить все равно что гадать на кофейной гуще. Покажите хотя бы классы в полном объеме.
__________________
return this...

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

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

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


 


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


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