mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2024-11-30 03:25:47 -05:00
64 lines
1.3 KiB
Haxe
64 lines
1.3 KiB
Haxe
package;
|
|
|
|
import flixel.FlxSprite;
|
|
|
|
class BGSprite extends FlxSprite
|
|
{
|
|
/**
|
|
Cool lil utility thing just so that it can easy do antialiasing and scrollfactor bullshit
|
|
*/
|
|
public var idleAnim:String;
|
|
|
|
/**
|
|
* NOTE: loadOldWay param is just for current backward compatibility! Will be moved later!
|
|
*/
|
|
public function new(image:String, x:Float = 0, y:Float = 0, parX:Float = 1, parY:Float = 1, ?daAnimations:Array<String>, ?loopingAnim:Bool = false,
|
|
?loadOldWay:Bool = true)
|
|
{
|
|
super(x, y);
|
|
|
|
if (loadOldWay)
|
|
{
|
|
if (daAnimations != null)
|
|
{
|
|
setupSparrow(image, daAnimations, loopingAnim);
|
|
}
|
|
else
|
|
{
|
|
justLoadImage(image);
|
|
}
|
|
}
|
|
|
|
scrollFactor.set(parX, parY);
|
|
antialiasing = true;
|
|
}
|
|
|
|
public function setupSparrow(image:String, daAnimations:Array<String>, ?loopingAnim:Bool = false)
|
|
{
|
|
frames = Paths.getSparrowAtlas(image);
|
|
for (anims in daAnimations)
|
|
{
|
|
var daLoop:Bool = loopingAnim;
|
|
if (loopingAnim == null)
|
|
daLoop = false;
|
|
|
|
animation.addByPrefix(anims, anims, 24, daLoop);
|
|
animation.play(anims);
|
|
|
|
if (idleAnim == null)
|
|
idleAnim = anims;
|
|
}
|
|
}
|
|
|
|
public function justLoadImage(image:String)
|
|
{
|
|
loadGraphic(Paths.image(image));
|
|
active = false;
|
|
}
|
|
|
|
public function dance():Void
|
|
{
|
|
if (idleAnim != null)
|
|
animation.play(idleAnim);
|
|
}
|
|
}
|