PDA

Просмотр полной версии : Проблема с глобальными переменными


400kg
06.03.2012, 12:05
Всем привет. Я немного запутался. Помогите разобраться плиз. Ситуация такая, есть структура project/games/code

в папке code лежат .as файлы к играм
в папке games лежат сами игры .fla (swf) и так же класс с глобальными переменными для всех игр к примеру Gl.as

Все игры работают, пользуются переменными, все довольны.

Теперь в папке project создаю флешку main.fla, в которую будут подгружаться по мере надобности все эти игры. Основной класс для нее Main.as лежит тут же в project.

Проблема вот в чем. Мне необходимо, чтобы глобальные переменные из класса Gl.as, были понятны классу Main.as. Как это осуществить?

Gl.as
package
{
public class Gl
{
public static var logged:Boolean = false;
public static var vol:Number = 0.3;
}
}

Пробую импортировать в Main.as
import games.Gl;

Пишет "5001: The name of package 'games' does not reflect the location of this file. Please change the package definition's name inside this file, or move the file. D:\Flash\_project01\project\games\Gl.as"

Если в Gl.as указываю имя пакета

package games
{
public class Gl
{
public static var logged:Boolean = false;
public static var vol:Number = 0.3;
}
}

тогда игры выдают "5001: The name of package 'games' does not reflect the location of this file. Please change the package definition's name inside this file, or move the file. D:\Flash\_project01\project\games\Gl.as"

Если перемещаю Gl.as в папку project, то как обеспечить видимость переменных играм? ... В общем хэлп плиз :)

Deimos747
06.03.2012, 12:15
Разместите Main.as в папке code (если она ещё не там) и подключайте как в первом случае, должно работать

Gaen
06.03.2012, 12:15
main.fla -> настройки публикации -> настройки AS3 -> classpath -> убрать "./", добавить "./games/"

400kg
06.03.2012, 12:46
Спасибо, все разложил "по полочкам".