potential adobe animate texture atlas bullshit WIP

This commit is contained in:
Cameron Taylor 2021-03-29 18:00:30 -07:00
parent 526f91fe5f
commit 519c187fd9
6 changed files with 147 additions and 1 deletions

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,65 @@
{"ATLAS": {"SPRITES":[
{"SPRITE" : {"name": "0000","x":1150,"y":0,"w":387,"h":220,"rotated": false}},
{"SPRITE" : {"name": "0001","x":399,"y":594,"w":194,"h":122,"rotated": false}},
{"SPRITE" : {"name": "0002","x":982,"y":700,"w":88,"h":148,"rotated": false}},
{"SPRITE" : {"name": "0003","x":210,"y":514,"w":184,"h":173,"rotated": false}},
{"SPRITE" : {"name": "0004","x":625,"y":548,"w":184,"h":173,"rotated": false}},
{"SPRITE" : {"name": "0005","x":1916,"y":649,"w":113,"h":152,"rotated": false}},
{"SPRITE" : {"name": "0006","x":1916,"y":492,"w":114,"h":152,"rotated": false}},
{"SPRITE" : {"name": "0007","x":982,"y":571,"w":40,"h":100,"rotated": false}},
{"SPRITE" : {"name": "0008","x":1295,"y":700,"w":121,"h":48,"rotated": false}},
{"SPRITE" : {"name": "0009","x":1421,"y":700,"w":122,"h":44,"rotated": false}},
{"SPRITE" : {"name": "0010","x":444,"y":721,"w":122,"h":42,"rotated": false}},
{"SPRITE" : {"name": "0011","x":814,"y":723,"w":97,"h":33,"rotated": false}},
{"SPRITE" : {"name": "0012","x":1599,"y":625,"w":97,"h":32,"rotated": false}},
{"SPRITE" : {"name": "0013","x":1599,"y":625,"w":97,"h":32,"rotated": false}},
{"SPRITE" : {"name": "0014","x":1490,"y":517,"w":97,"h":34,"rotated": false}},
{"SPRITE" : {"name": "0015","x":317,"y":721,"w":122,"h":44,"rotated": false}},
{"SPRITE" : {"name": "0016","x":1744,"y":439,"w":32,"h":19,"rotated": false}},
{"SPRITE" : {"name": "0017","x":1072,"y":570,"w":261,"h":125,"rotated": false}},
{"SPRITE" : {"name": "0018","x":1166,"y":700,"w":124,"h":68,"rotated": false}},
{"SPRITE" : {"name": "0019","x":1338,"y":570,"w":256,"h":125,"rotated": false}},
{"SPRITE" : {"name": "0020","x":1742,"y":662,"w":107,"h":154,"rotated": false}},
{"SPRITE" : {"name": "0021","x":1075,"y":700,"w":86,"h":145,"rotated": false}},
{"SPRITE" : {"name": "0022","x":285,"y":364,"w":116,"h":135,"rotated": false}},
{"SPRITE" : {"name": "0023","x":2036,"y":0,"w":1,"h":4,"rotated": false}},
{"SPRITE" : {"name": "0024","x":835,"y":0,"w":310,"h":377,"rotated": false}},
{"SPRITE" : {"name": "0025","x":192,"y":692,"w":120,"h":119,"rotated": false}},
{"SPRITE" : {"name": "0026","x":424,"y":363,"w":196,"h":226,"rotated": false}},
{"SPRITE" : {"name": "0027","x":1599,"y":662,"w":138,"h":130,"rotated": false}},
{"SPRITE" : {"name": "0028","x":868,"y":382,"w":199,"h":184,"rotated": false}},
{"SPRITE" : {"name": "0029","x":625,"y":382,"w":238,"h":161,"rotated": false}},
{"SPRITE" : {"name": "0030","x":0,"y":364,"w":280,"h":145,"rotated": false}},
{"SPRITE" : {"name": "0031","x":1795,"y":0,"w":236,"h":241,"rotated": false}},
{"SPRITE" : {"name": "0032","x":814,"y":571,"w":163,"h":147,"rotated": false}},
{"SPRITE" : {"name": "0033","x":1542,"y":0,"w":248,"h":267,"rotated": false}},
{"SPRITE" : {"name": "0034","x":1072,"y":395,"w":204,"h":170,"rotated": false}},
{"SPRITE" : {"name": "0035","x":1281,"y":395,"w":204,"h":170,"rotated": false}},
{"SPRITE" : {"name": "0036","x":1709,"y":492,"w":202,"h":165,"rotated": false}},
{"SPRITE" : {"name": "0037","x":0,"y":514,"w":205,"h":162,"rotated": false}},
{"SPRITE" : {"name": "0038","x":1491,"y":225,"w":40,"h":34,"rotated": false}},
{"SPRITE" : {"name": "0039","x":1854,"y":662,"w":51,"h":62,"rotated": false}},
{"SPRITE" : {"name": "0040","x":1709,"y":272,"w":65,"h":79,"rotated": false}},
{"SPRITE" : {"name": "0041","x":1709,"y":356,"w":53,"h":78,"rotated": false}},
{"SPRITE" : {"name": "0042","x":571,"y":721,"w":47,"h":64,"rotated": false}},
{"SPRITE" : {"name": "0043","x":1709,"y":439,"w":30,"h":42,"rotated": false}},
{"SPRITE" : {"name": "0044","x":2015,"y":246,"w":23,"h":36,"rotated": false}},
{"SPRITE" : {"name": "0045","x":2015,"y":287,"w":20,"h":31,"rotated": false}},
{"SPRITE" : {"name": "0046","x":2015,"y":323,"w":17,"h":22,"rotated": false}},
{"SPRITE" : {"name": "0047","x":0,"y":681,"w":187,"h":90,"rotated": false}},
{"SPRITE" : {"name": "0048","x":0,"y":0,"w":419,"h":359,"rotated": false}},
{"SPRITE" : {"name": "0049","x":424,"y":0,"w":406,"h":358,"rotated": false}},
{"SPRITE" : {"name": "0050","x":1150,"y":225,"w":336,"h":165,"rotated": false}},
{"SPRITE" : {"name": "0051","x":1599,"y":517,"w":90,"h":103,"rotated": false}},
{"SPRITE" : {"name": "0052","x":1795,"y":246,"w":215,"h":241,"rotated": false}},
{"SPRITE" : {"name": "0053","x":1491,"y":272,"w":213,"h":240,"rotated": false}}
]},
"meta": {
"app": "Adobe Animate",
"version": "21.0.4.39603",
"image": "spritemap1.png",
"format": "RGBA8888",
"size": {"w":2038,"h":848},
"resolution": "1"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 KiB

View File

@ -1,5 +1,6 @@
package;
import animate.AnimationAtlas;
import flixel.FlxG;
import flixel.FlxSprite;
import flixel.addons.transition.FlxTransitionSprite.GraphicTransTileDiamond;
@ -50,6 +51,8 @@ class TitleState extends MusicBeatState
polymod.Polymod.init({modRoot: "mods", dirs: ['introMod'], framework: OPENFL});
#end
AnimationAtlas.fromAnimate(Paths.image('money'), Paths.file('images/money.json'));
swagShader = new ColorSwap();
FlxG.sound.muteKeys = [ZERO];

View File

@ -0,0 +1,11 @@
package animate;
import flixel.group.FlxGroup;
class Aniamtion extends FlxGroup
{
public function new(symbolName:String, atlas:AnimationAtlas):Void
{
super();
}
}

View File

@ -0,0 +1,67 @@
package animate;
import flixel.FlxG;
import flixel.graphics.FlxGraphic;
import flixel.graphics.frames.FlxAtlasFrames;
import flixel.system.FlxAssets.FlxGraphicAsset;
import haxe.Json;
import openfl.Assets;
class AnimationAtlas
{
public function new(data:Dynamic, atlas:FlxAtlasFrames):Void {}
public static function fromAnimate(Source:FlxGraphicAsset, Description:String):FlxAtlasFrames
{
var graphic:FlxGraphic = FlxG.bitmap.add(Source);
if (graphic == null)
return null;
var frames:FlxAtlasFrames = FlxAtlasFrames.findFrame(graphic);
if (frames != null)
return frames;
if (graphic == null || Description == null)
return null;
frames = new FlxAtlasFrames(graphic);
var data:AnimateObject;
var json:String = Description;
trace(json);
if (Assets.exists(json))
json = Assets.getText(json);
trace(json);
data = cast Json.parse(json).ATLAS;
for (sprite in data.SPRITES)
{
// probably nicer way to do this? Oh well
var swagSprite:AnimateSprite = sprite.SPRITE;
trace(swagSprite);
}
return frames;
}
}
typedef AnimateObject =
{
SPRITES:Array<Dynamic>
}
typedef AnimateSprite =
{
var name:String;
var x:Int;
var y:Int;
var w:Int;
var h:Int;
var rotated:Bool;
}