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

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

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

Регистрация: Nov 2012
Сообщений: 5
По умолчанию Flash приложение

Здравствуйте, разрабатываю код будущей игры. Решил сделать такую структуру игры. Главный файл, регистрируется на сервере, получает данные о пользователе, потом начинает работу свой класс Preloader, он начинает загружать файлы игры. После загрузки второстепенных файлов, программа запускает класс GUI, который отображает все что загрузилось на сцене. Хотел бы, что бы вы чего-нибудь посоветовали..

Привет первые наброски.
//Главный Класс
Код AS3:
package src.main
{
 
	import vk.APIConnection;
	import src.lap.FirstLap;
	import flash.display.MovieClip;
	import flash.events.Event;
 
	public class TwoGuns extends MovieClip
	{
		var flashVars:Object;
		var VK:APIConnection;
 
		public function TwoGuns()
		{
			addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		function init(e:Event):void
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
 
			flashVars = stage.loaderInfo.parameters as Object;
 
			if (! flashVars.api_id)
			{
				flashVars['api_id'] = 3252185;
				flashVars['viewer_id'] = 101471034;
				flashVars['sid'] = "ab60794b0ddae8653739d51cc44158b3205c87d865715388e90f6b15bc83bc";
				flashVars['secret'] = "159ce7af6e";
			}
 
			 VK = new APIConnection(flashVars);
 
			var firstLap:FirstLap = new FirstLap(VK, flashVars);
		}
	}
}

Код AS3:
package src.lap
{
	import vk.APIConnection;
	import src.lap.Preload;
 
	public class FirstLap
	{
 
		public function FirstLap(VK:APIConnection, flashVars:Object)
		{
			firstLap(VK, flashVars);
		}
 
		function firstLap(VK:APIConnection, flashVars:Object):void
		{
 
			VK.api("isAppUser", {}, isAppUserTrue, isAppUserFalse);
 
			function isAppUserTrue(data:Object):void
			{
				isDataBase(flashVars['viewer_id']);
			}
 
			function isAppUserFalse(data:Object):void
			{
				trace('Добавить приложение!');
			}
 
			function isDataBase(id:Number):void
			{
				trace('Проверка, существует ли данный пользователь в базе id ' + id);
				var isDataBase:Boolean = true;//Временное значение
 
				if (! isDataBase)
				{
					trace('Регистрация ' + id);
					isDataBase = true;//Временное значение
				}
 
				if (isDataBase)
				{
					trace('загрузка');
					var loader:Preload = new Preload();
 
				} else
				{
					trace('Ошибка при регистрации');
				}
			}
		}
	}
 
}


Код AS3:
package src.lap
{
	import flash.display.Loader;
	import flash.net.URLRequest;
	import flash.display.MovieClip;
	import flash.events.Event;
 
	public class Preload extends MovieClip
	{
		public var loader:Loader;
		public var request:URLRequest;
		private const ARRAY_DOWNALDS:Array = new Array('http://cs10646.userapi.com/u1417875/e_9eb6acc4.jpg');
 
		public function Preload()
		{
			request = new URLRequest(ARRAY_DOWNALDS[0]);
			loader = new Loader();
			loader.load(request);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imgLoaded);  
		}
 
		function imgLoaded(e:Event)
		{
			loader.x = 150;
			loader.y = 150;
			addChild(loader)
		}
	}
}

И еще вопрос, почему класс Preloader, после загрузки файла не отображает загруженную картинку? Спасибо.
Не судите строго, изучаю не так много.

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

Регистрация: May 2012
Сообщений: 131
Мои глаза медленно вытекают...
Изучаете немного, говорите? Вернитесь лучше к азам.
DisplayObjectContainer - и манипулирование с ним...
Событийность...
Понятие линейного выполнения кода...
Вы не понимаете сути того, что пишете и что происходит (и что должно происходить). А без Вашего понимания - Вы обрекаете любого советчика на абсолютно бесполезный труд.
Ещё раз повторюсь - возвращайтесь к азам. Пока не поздно. (и если Вас конечно интересует программирование в принципе).
Хотя, судя по характеру кода и намеренному влезанию в апи уютненького - Вы просто хотите перед кем-то выпендриться.

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
И еще вопрос, почему класс Preloader, после загрузки файла не отображает загруженную картинку?
А где, по вашему, он должен ее отобразить? Сам класс Preloader не доавлен в дисплей лист. То, что картинка добавляется в него, не значит, что она должна в принципе отобразиться на экране. Нет в дисплей листе контейнера, нет и его содержимого. Логично?

п.с. Класс FirstLap вообще работает?
В нем вообще структура кривая. Нужно избавляться от вложенных функций и выносить их на уровень класса. Так же не мешало бы добавить функциям модификаторы доступа. Тут можно всем добавить private.
Пока в них по умолчанию используется internal.
Советую так же почитать про модификаторы доступа.

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

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

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


 


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


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