package; import flixel.FlxG; import flixel.FlxSprite; import flixel.graphics.frames.FlxAtlasFrames; using StringTools; class Boyfriend extends Character { public var stunned:Bool = false; public function new(x:Float, y:Float) { super(x, y); var tex = FlxAtlasFrames.fromSparrow(AssetPaths.BOYFRIEND__png, AssetPaths.BOYFRIEND__xml); frames = tex; animation.addByPrefix('idle', 'BF idle dance', 24, false); animation.addByPrefix('singUP', 'BF NOTE UP0', 24, false); animation.addByPrefix('singLEFT', 'BF NOTE LEFT0', 24, false); animation.addByPrefix('singRIGHT', 'BF NOTE RIGHT0', 24, false); animation.addByPrefix('singDOWN', 'BF NOTE DOWN0', 24, false); animation.addByPrefix('singUPmiss', 'BF NOTE UP MISS', 24, false); animation.addByPrefix('singLEFTmiss', 'BF NOTE LEFT MISS', 24, false); animation.addByPrefix('singRIGHTmiss', 'BF NOTE RIGHT MISS', 24, false); animation.addByPrefix('singDOWNmiss', 'BF NOTE DOWN MISS', 24, false); animation.addByPrefix('hey', 'BF HEY', 24, false); animation.addByPrefix('firstDeath', "BF dies", 24, false); animation.addByPrefix('deathLoop', "BF Dead Loop", 24, true); animation.addByPrefix('deathConfirm', "BF Dead confirm", 24, false); playAnim('idle'); antialiasing = true; addOffset('idle', -5); addOffset("singUP", -29, 27); addOffset("singRIGHT", -38, -7); addOffset("singLEFT", 12, -6); addOffset("singDOWN", -10, -50); addOffset("singUPmiss", -29, 27); addOffset("singRIGHTmiss", -30, 21); addOffset("singLEFTmiss", 12, 24); addOffset("singDOWNmiss", -11, -19); addOffset("hey", 7, 4); addOffset('firstDeath', 37, 11); addOffset('deathLoop', 37, 5); addOffset('deathConfirm', 37, 69); } override function update(elapsed:Float) { if (animation.curAnim.name.endsWith('miss') && animation.curAnim.finished && !debugMode) { playAnim('idle', true, false, 10); } if (animation.curAnim.name == 'firstDeath' && animation.curAnim.finished) { playAnim('deathLoop'); } super.update(elapsed); } }