Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Странная ошибка ReferenceError: Error #1065 - Flash Professional CC (http://www.flasher.ru/forum/showthread.php?t=208859)

Parez 10.09.2014 16:18

Странная ошибка ReferenceError: Error #1065 - Flash Professional CC
 
Здравствуйте.
Программирую на Flash достаточно давно, но с таким сталкиваюсь впервые. После импорта нескольких swc библиотек в мою игру, стала возникать ошибка в классе, который раньше прекрасно работал. Вот его код (используется starling):
Код AS3:

package src.assets
{
        import flash.display.Bitmap;
        import flash.utils.Dictionary;
 
        import starling.textures.Texture;
        import starling.textures.TextureAtlas;
 
 
        public class GameAssets
        {
 
                [Embed(source="/Graphics/viking.png")]
                public static const AtlasTextureGame:Class;
 
                [Embed(source="/Graphics/viking.xml", mimeType="application/octet-stream")]
                public static const AtlasXmlGame:Class;
 
                public function GameAssets()
                {
 
                }
 
                private static var gameTextures:Dictionary = new Dictionary();
                private static var gameTextureAtlas:TextureAtlas;
 
                public static function getAtlas():TextureAtlas
                {
                        if (gameTextureAtlas == null)
                        {
                                var texture:Texture = getTexture("AtlasTextureGame");
                                var xml:XML = XML(new AtlasXmlGame());
                                gameTextureAtlas=new TextureAtlas(texture, xml);
                        }
 
                        return gameTextureAtlas;
                }
 
                public static function getTexture(name:String):Texture
                {
                        if (gameTextures[name] == undefined)
                        {
                                var bitmap:Bitmap = new GameAssets[name]();
                                gameTextures[name]=Texture.fromBitmap(bitmap);
                        }
 
                        return gameTextures[name];
                }
        }
}

Выдает он следующую ошибку:
Код:

ReferenceError: Error #1065: Variable GameAssets_AtlasTextureGame is not defined.
        at src.assets::GameAssets$cinit()
        at global$init()
        at TestAssets_fla::MainTimeline/frame1()

И та же ошибка для GameAssets_AtlasXmlGame

Меня очень удивляет, что компилятор где-то увидел переменную GameAssets_AtlasTextureGame. Именно с нижним подчеркиванием.
Чтобы убедиться, что ошибка где-то здесь (что очень странно), я попробовал создать новый fla файл и без подключения всяких лишних swc библиотек (кроме CitrusEngine) тупо написать в первом фрейме:
Код AS3:

import src.assets.GameAssets;
 
var assets:GameAssets = new GameAssets();

К моему удивлению, ошибка сохранилась.
Вообще понятия не имею, что можно с этим сделать. Помогите, пожалуйста.

Добавлено через 22 минуты
Нашел тему в интернете - http://stackoverflow.com/questions/2...d-image-assets
Очень похожая ситуация. Я тоже расширял память для компиляции. Поставил на 1024. После этого все перестало работать.

Gerbert 10.09.2014 16:48

Код AS3:

var assets:GameAssets = new GameAssets();

Поменяйте имя свойства на другое, чтобы оно не совпадало с именем пакета.

Parez 10.09.2014 16:54

Решил проблему, хоть и явно ненормальным путем. Видимо, это баг Flash CC. Когда изменяешь выделяемую для компиляции память, все катится к чертям. Как и написано в ответе к теме http://stackoverflow.com/questions/2...d-image-assets, удалил все, что было в папке /Users/"YOURNAME"/Library/Application Support/Adobe/Flash CC/. (правда на Маке в аналогичной папке)

Добавлено через 2 минуты
Цитата:

Сообщение от Gerbert (Сообщение 1171824)
Код AS3:

var assets:GameAssets = new GameAssets();

Поменяйте имя свойства на другое, чтобы оно не совпадало с именем пакета.

Да нет, тут дело не в этом. Как угодно менял, переназывал - результат один и тот же.

caseyryan 10.09.2014 20:34

Это проблема не только Flash CC. Как я понял, это глюк всех компиляторов от Adobe. Я такую же проблему частенько ловлю во FlashDevelop. Но она как появляется сама, так и пропадает. Какой-то закономерности не выявил. Все решения из интернета, которые находил, так же бесполезны


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

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