mirror of
https://github.com/ninjamuffin99/Funkin.git
synced 2025-01-04 19:28:30 +00:00
Merge branch 'nitpix' of github.com:ninjamuffin99/Funkin-secret into testtrack
This commit is contained in:
commit
65256b77fd
|
@ -1,5 +1,6 @@
|
|||
package;
|
||||
|
||||
import animate.AnimationAtlas;
|
||||
import flixel.FlxG;
|
||||
import flixel.FlxSprite;
|
||||
import flixel.addons.transition.FlxTransitionSprite.GraphicTransTileDiamond;
|
||||
|
@ -52,6 +53,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];
|
||||
|
|
11
source/animate/Animation.hx
Normal file
11
source/animate/Animation.hx
Normal file
|
@ -0,0 +1,11 @@
|
|||
package animate;
|
||||
|
||||
import flixel.group.FlxGroup;
|
||||
|
||||
class Aniamtion extends FlxGroup
|
||||
{
|
||||
public function new(symbolName:String, atlas:AnimationAtlas):Void
|
||||
{
|
||||
super();
|
||||
}
|
||||
}
|
78
source/animate/AnimationAtlas.hx
Normal file
78
source/animate/AnimationAtlas.hx
Normal file
|
@ -0,0 +1,78 @@
|
|||
package animate;
|
||||
|
||||
import flixel.FlxG;
|
||||
import flixel.addons.ui.FlxUIColorSwatchSelecter.SwatchGraphic;
|
||||
import flixel.graphics.FlxGraphic;
|
||||
import flixel.graphics.frames.FlxAtlasFrames;
|
||||
import flixel.math.FlxPoint;
|
||||
import flixel.math.FlxRect;
|
||||
import flixel.system.FlxAssets.FlxGraphicAsset;
|
||||
import haxe.Json;
|
||||
import openfl.Assets;
|
||||
import openfl.geom.Rectangle;
|
||||
|
||||
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;
|
||||
|
||||
var rect = FlxRect.get(swagSprite.x, swagSprite.y, swagSprite.w, swagSprite.h);
|
||||
|
||||
var size = new Rectangle(0, 0, rect.width, rect.height);
|
||||
|
||||
var offset = FlxPoint.get(-size.left, -size.top);
|
||||
var sourceSize = FlxPoint.get(size.width, size.height);
|
||||
|
||||
frames.addAtlasFrame(rect, sourceSize, offset, swagSprite.name);
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
Loading…
Reference in a new issue