YAL-Haxe / openfl-bitfive

Alternative blitting-targeted HTML5 backend for OpenFL.
103 stars 19 forks source link

=BG= DefaultAssetLibrary --> openfl.AssetLibrary #32

Closed bguiz closed 9 years ago

bguiz commented 10 years ago

Note: This PR does not fix the problem fully. It enables the compilation step to work, but fails at run time with the following problem:

In the generated source, openfl.Assets.getBitmapData("images/foo.png", false) always returns null.

May have been introduced by changing DefaultAssetLibrary to openfl.AssetLibrary, but not sure what the correct fix is --> this is the default implementation, found in /openflAssets.hx:1050 (classAssetLibrary {) which simply return "falsy" values for everything.

Where can the correct implementation for AssetLibrary be found?

A run time inspection of openfl.Assets.libraries (which is a map) reveals that it contains only one value, keyed on "default", which is the default implementation mentioned above. I am assuming that this is the root cause of the bug - that this map was supposed to be populated with at least one more implementation of AssetLibrary during the start up of the app, but for some reason has failed to.

YellowAfterlife commented 10 years ago

AssetLibrary/DefaultAssetLibrary is not quite a cause of problem, there's more than it to changes needed. I'll get to a proper fix soon (currently loaded with other tasks).

bguiz commented 10 years ago

AssetLibrary/DefaultAssetLibrary is not quite a cause of problem, there's more than it to changes needed. I'll get to a proper fix soon (currently loaded with other tasks).

Ah ok. Thanks for letting me know.

YellowAfterlife commented 9 years ago

Closing as per https://github.com/YellowAfterlife/openfl-bitfive/issues/31

bguiz commented 9 years ago

+1

Could you cut a release and push to haxelib please? On 24 Nov 2014 01:00, "Vadim" notifications@github.com wrote:

Closed #32 https://github.com/YellowAfterlife/openfl-bitfive/pull/32.

— Reply to this email directly or view it on GitHub https://github.com/YellowAfterlife/openfl-bitfive/pull/32#event-197316666 .

YellowAfterlife commented 9 years ago

Done. Was going to test a bit more (the Assets system is a pretty large change) but my largest projects build and work just fine, so I guess it'll be okay.

bguiz commented 9 years ago

Am I missing something here? Targets for neko and flash work, but html5 does not.

FWIW, the errors are different from the ones I was getting before haxelib update openfl-bitfive

$ haxelib upgrade
Checking hxcpp
Checking flixel-ui
Checking flixel
Checking flixel-addons
Checking flixel-demos
Checking openfl-bitfive
Checking lime
Checking flixel-templates
Checking openfl
Checking flixel-tools
All libraries are up-to-date
$ haxelib list
flixel-addons: [1.1.0]
flixel-demos: [1.1.1]
flixel-templates: [1.0.2]
flixel-tools: [1.0.2]
flixel-ui: [1.0.2]
flixel: 3.3.5 [3.3.6]
hxcpp: [3.1.39]
lime: 2.0.0-alpha.7 [2.0.0]
openfl-bitfive: 2.0.1 [2.1.5]
openfl: [2.1.6] 2.1.5
$ lime build neko

$ lime build flash

$ lime build html5

/usr/lib/haxe/lib/flixel/3,3,6/flixel/system/frontEnds/BitmapFrontEnd.hx:389: characters 3-32 : openfl.AssetCache has no field removeBitmapData
/usr/lib/haxe/lib/flixel/3,3,6/flixel/system/ui/FlxFocusLostScreen.hx:32: characters 2-30 : flash.display.IGraphics should be flash.display.Graphics
/usr/lib/haxe/lib/flixel/3,3,6/flixel/util/FlxSpriteUtil.hx:37: characters 15-78 : flash.display.IGraphics should be flash.display.Graphics
/usr/lib/haxe/lib/flixel/3,3,6/flixel/system/FlxSplash.hx:62: characters 2-25 : flash.display.IGraphics should be flash.display.Graphics
/usr/lib/haxe/lib/flixel/3,3,6/flixel/system/ui/FlxFocusLostScreen.hx:18: characters 21-34 : flash.display.IGraphics should be flash.display.Graphics
/usr/lib/haxe/lib/flixel/3,3,6/flixel/system/ui/FlxFocusLostScreen.hx:18: characters 21-34 : For function argument 'graph'