Kade-Engine/source/HealthIcon.hx

66 lines
1.3 KiB
Haxe

package;
import flixel.FlxG;
import flixel.FlxSprite;
using StringTools;
class HealthIcon extends FlxSprite
{
public var char:String = 'bf';
public var isPlayer:Bool = false;
public var isOldIcon:Bool = false;
/**
* Used for FreeplayState! If you use it elsewhere, prob gonna annoying
*/
public var sprTracker:FlxSprite;
public function new(?char:String = "bf", ?isPlayer:Bool = false)
{
super();
this.char = char;
this.isPlayer = isPlayer;
isPlayer = isOldIcon = false;
if (FlxG.save.data.antialiasing)
{
switch(char)
{
case 'bf-pixel' | 'senpai' | 'senpai-angry' | 'spirit' | 'gf-pixel':
antialiasing = false;
default:
antialiasing = true;
}
}
changeIcon(char);
scrollFactor.set();
}
public function swapOldIcon()
{
(isOldIcon = !isOldIcon) ? changeIcon("bf-old") : changeIcon(char);
}
public function changeIcon(char:String)
{
if (char != 'bf-pixel' && char != 'bf-old')
char = char.split("-")[0];
loadGraphic(Paths.image('icons/icon-' + char), true, 150, 150);
animation.add(char, [0, 1], 0, false, isPlayer);
animation.play(char);
}
override function update(elapsed:Float)
{
super.update(elapsed);
if (sprTracker != null)
setPosition(sprTracker.x + sprTracker.width + 10, sprTracker.y - 30);
}
}