<р> скачать Исходный код
<р> вернуться на главную учебник
<р> При доступе к ресурсам, например, изображений, MP3-файлов или XML- Вы, как правило, есть два варианта. Во-первых, загрузить эти ресурсы в качестве внешних файлов. Это держит ваш размер SWF-файла вниз, и если вы создавали массивный игру, где ресурсы из 10-го уровня не используются на уровне 1 имеет смысл, что вы не хотите, чтобы скачать эти ресурсы в начале игры.
<р> Недостатком этого подхода является то, что ваша игра должна быть распределена в виде нескольких файлов, запросы к серверу будут должны быть сделаны для каждого ресурса, и вполне возможно, что ресурсы не могут быть доступны заставляя вас иметь дело с ошибки, которые подобная ситуация неизбежно приведет.
<р> Для большинства флеш-игр второй вариант, вложения ресурсов в SWF напрямую, делает намного больше смысла. Ваша игра будет содержаться в одном SWF файл, вы можете смело предположить, что ресурсы будут доступны, и компилятор будет сжимать ресурсы в результате небольших загрузок.
<Р> PushButton позволяет работать с внешней и встроенные ресурсы прозрачно. Во-первых, мы доработаем игрок сущность, чтобы отобразить изображение загружается из PNG файла, а не отображать круг. Для этого мы заменяем SimpleShapeRenderComponent с SpriteRenderComponent. После установки свойства loadFromImage, чтобы указать на местном PNG файл сущность будет использовать это изображение при рендеринге себя на экране.
<Р> Обратите внимание, что расположение файла PNG должны быть по отношению к расположению файла SWF, не файлы исходного кода
<р> Entityfactory.
as
<р> статический общественная функция createPlayer. (имя: String, сцена: String): IEntity {//... вар Визуализация: SpriteRenderComponent = новый SpriteRenderComponent ( ); Render.loadFromImage = "../media/idleright.png"; Render.positionReference = новый PropertyReference ("@ Spatial.position"); entity.addComponent (Рендер, "Визуализация"); //...}
<Р> Когда вы запустите приложение круг теперь заменен на изображения в файле PNG. Это пример загрузки внешних ресурсов. Для того, чтобы вставлять файл PNG в SWF, нам нужно создать новый класс, который расширяет класс ResourceBundle.
<Р> Resources.as
<р> пакет {импорт com.pblabs.engine.resource. ResourceBundle; Ресурсы общественных класс расширяет ResourceBundle {[Вставить (источник = "../СМИ /idleright.png", MimeType = "приложения /октет-поток")] общественный вар ImgIdleRight: Класс; }}