Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проблема с getDefinition (http://www.flasher.ru/forum/showthread.php?t=178660)

Mindman 26.04.2012 16:10

Проблема с getDefinition
 
Поиск ничего конкретного не дал, поэтому спрошу здесь. В общем, имеется класс LevelBase и его подкласс Level1. В одном из основных классов я пытаюсь получить определение таким образом:

Код AS3:

public function changeLevel(id:int):void
{
        if (id > CommonDefinitions.TOTAL_LEVELS || id <= 0)
        {
                trace("Game::changeLevel() - Level doesnt exist");
                return;
        }else {
        var levelDef:Class = stage.loaderInfo.applicationDomain.getDefinition("src.game.levels.Level" + id) as Class;
        }
}

Вся соль в том, что при выполнении Флеш ругается благим матом: "ReferenceError: Error #1065: Переменная Level1 не определена." При этом путь к файлу класса указан верно (проверял и перепечатывал несколько раз, опечаток, в т.ч. букв на русском, нету), а определение класса LevelBase - src.game.levels.LevelBase Флеш находит сразу. Замена строки "src.game.levels.Level" + id на "src.game.levels.Level1" ничего не дает.
Помнится, когда-то давно уже сталкивался с подобной проблемой, да вот никак не вспомню каким образом ее решил. Это очередной внеплановый глюк Флеша или что-то другое?

КорДум 26.04.2012 16:51

Этот класс просто не попадает в конечную флешку. Его нужно где-то упомянуть. Например просто прописав "Level1;" в любом месте программы.

Mindman 26.04.2012 19:27

Точно, спасибо!


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

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