Показать сообщение отдельно
Старый 18.03.2015, 12:31
WaldeMar1321 вне форума Посмотреть профиль Отправить личное сообщение для WaldeMar1321 Найти все сообщения от WaldeMar1321
  № 1  
Ответить с цитированием
WaldeMar1321

Регистрация: Mar 2015
Сообщений: 26
По умолчанию Помощь с ООП

Здравствуйте! Есть одна проблема, и вы возможно можете помочь.
Описание - есть три класса: Class1, Class2, и собственно Main (все MovieClip)
Class1 проигрывает свою анимацию на собственном таймере с использованием nextFrame,
Class2 должен подождать до нужного кадра анимации Class1 и выполнить свою со своим таймером.
Логично будет отслеживать Class1.currentFrame, я пытался сделать это внутри Class2.
Проблема 1: Я не знаю возможно ли это? Так как я обращаюсь к свойству MovieClip через Class1
без явных определений типа "Class1::MovieClip::currenFrame" или как-то так. В С++ с этим по проще.
И вторая проблема: весь не большой код имеет структуру

Код AS3:
package { //Main.as
 
	import flash.*//и все такое
 
	public class Main extends Movie Clip {
		var C1:MovieClip = new Class1;
		var C2:MovieClip = new Class2;
 
		public function Main()
		{
 
		}
 //Везде Main видит оба класса и свойства и методы базового класса MovieClip
	}
}
 
package { //Class1.as
 
	import flash.*
 
	public class Class1 extends MovieClip {
	public function Class1 () {}
	}
}
 
package { // Class2.as
 
import flash.*
 
	public class Class2 extends MovieClip 
	{
		public function Class2 () {}
 
		public function Panic()
		{
			if(Class1.currenFrame == 666) 
			{
				//Do something!
			}
		}
	}
}
Код имеет примерно такой вид. Но эти два класса
друг друга не видят. Как только я не обявлял их в Main.
Подскажите пожалуйста, что не так? Эти файлы в одном проекте, в одной папке.
Спасибо.