more timeline shit in progress

This commit is contained in:
Cameron Taylor 2021-08-20 11:01:37 -04:00
parent d0e6e340e7
commit 0a0a1c4e2f
3 changed files with 52 additions and 3 deletions

View file

@ -52,7 +52,7 @@ class AnimateTimeline extends FlxTypedGroup<FlxSprite>
for (frame in layer.FR) for (frame in layer.FR)
{ {
var coolFrame:TimelineFrame = new TimelineFrame((frame.I * 12) + 12 * 5, layerNum * 12, frame.DU); var coolFrame:TimelineFrame = new TimelineFrame((frame.I * 12) + 12 * 5, layerNum * 12, frame.DU, frame);
add(coolFrame); add(coolFrame);
frameNum++; frameNum++;
} }

View file

@ -68,7 +68,7 @@ class FlxSymbol extends FlxSprite
{ {
case LOOP: case LOOP:
var tempFrame = layer.FR[newFrameNum + firstFrame % layer.FR.length]; var tempFrame = layer.FR[newFrameNum + firstFrame % layer.FR.length];
trace(tempFrame); // trace(tempFrame);
// newFrameNum += firstFrame; // newFrameNum += firstFrame;
// newFrameNum = newFrameNum % (tempFrame.I + tempFrame.DU); // newFrameNum = newFrameNum % (tempFrame.I + tempFrame.DU);
// newFrameNum = FlxMath.wrap(newFrameNum, tempFrame.I, tempFrame.I + tempFrame.DU); // newFrameNum = FlxMath.wrap(newFrameNum, tempFrame.I, tempFrame.I + tempFrame.DU);

View file

@ -1,14 +1,63 @@
package animate; package animate;
import animate.FlxSymbol.Frame;
import flixel.FlxSprite; import flixel.FlxSprite;
import flixel.input.mouse.FlxMouseEventManager;
import flixel.util.FlxColor; import flixel.util.FlxColor;
class TimelineFrame extends FlxSprite class TimelineFrame extends FlxSprite
{ {
public function new(x:Float, y:Float, length:Int = 0) public var data:Frame;
public function new(x:Float, y:Float, length:Int = 0, data:Frame)
{ {
super(x, y); super(x, y);
this.data = data;
makeGraphic((10 * length) + (2 * (length - 1)), 10, FlxColor.RED); makeGraphic((10 * length) + (2 * (length - 1)), 10, FlxColor.RED);
FlxMouseEventManager.add(this, null, null, function(spr:TimelineFrame)
{
alpha = 0.5;
}, function(spr:TimelineFrame)
{
alpha = 1;
}, false, true, true);
}
override function update(elapsed:Float)
{
// if (FlxG.mouse.overlaps(this, cameras[1]))
// alpha = 0.6;
// else
// alpha = 1;
if (FlxG.mouse.overlaps(this, cameras[0]) && FlxG.mouse.justPressed)
{
trace("\nFRAME DATA - \n\tFRAME NUM: " + data.I + "\n\tFRAME DURATION: " + data.DU);
for (e in data.E)
{
var elementOutput:String = "\n";
if (Reflect.hasField(e, 'ASI'))
{
elementOutput += "ELEMENT IS ASI!";
elementOutput += "\n\t";
elementOutput += "FRAME NAME: " + e.ASI.N;
}
else
{
elementOutput += "ELEMENT IS SYMBOL INSTANCE!";
elementOutput += "\n\tSYMBOL NAME: " + e.SI.SN;
}
trace(elementOutput);
}
}
super.update(elapsed);
} }
} }