private static void AddFrameToAnim(Directions8Way direction, AnimationDetails ad, List <PixelSet> leftWalk) { int dir = Directions8WayHelper.GetDirectionIndex(direction); int index = 0; foreach (var frame in leftWalk) { ad.SetAnimFrame(dir, index++, frame); } }
private void InportFromUnity(object sender, EventArgs e) { string filename = @"C:\GitHub\eWolfPixel\Pixel\eWolfUnity3DParser.UnitTests\TestingData\Player04.png"; SpriteSheetData spriteSheetData = SpriteParser.ParseLoad(filename + ".meta"); // spin up a bitmap reader to read the image and create pixelSets for each sprite. PixelSet image = ServiceLocator.Instance.GetService <IPixelLoader>().LoadImage(filename); Dictionary <string, PixelSet> frames = image.CutFrames(spriteSheetData); ProjectHolder projectHolder = ServiceLocator.Instance.GetService <ProjectHolder>(); AnimationDetails ad = new AnimationDetails($"Walk", "\\Root\\Char1"); projectHolder.Items.Add(ad); ad.PostLoadFix(); // PL04_DownLeft_Walk0 List <PixelSet> leftWalk = new List <PixelSet>(); leftWalk.Add(frames["PL04_Left_Walk0"]); leftWalk.Add(frames["PL04_Left_Walk1"]); leftWalk.Add(frames["PL04_Left_Walk0"]); leftWalk.Add(frames["PL04_Left_Walk2"]); AddFrameToAnim(Directions8Way.Left, ad, leftWalk); List <PixelSet> downLeftWalk = new List <PixelSet>(); downLeftWalk.Add(frames["PL04_DownLeft_Walk0"]); downLeftWalk.Add(frames["PL04_DownLeft_Walk1"]); downLeftWalk.Add(frames["PL04_DownLeft_Walk0"]); downLeftWalk.Add(frames["PL04_DownLeft_Walk2"]); AddFrameToAnim(Directions8Way.DownLeft, ad, downLeftWalk); List <PixelSet> downRightWalk = new List <PixelSet>(); downRightWalk.Add(frames["PL04_DownRight_Walk0"]); downRightWalk.Add(frames["PL04_DownRight_Walk1"]); downRightWalk.Add(frames["PL04_DownRight_Walk0"]); downRightWalk.Add(frames["PL04_DownRight_Walk2"]); AddFrameToAnim(Directions8Way.DownRight, ad, downRightWalk); List <PixelSet> rightWalk = new List <PixelSet>(); rightWalk.Add(frames["PL04_Right_Walk0"]); rightWalk.Add(frames["PL04_Right_Walk1"]); rightWalk.Add(frames["PL04_Right_Walk0"]); rightWalk.Add(frames["PL04_Right_Walk2"]); AddFrameToAnim(Directions8Way.Right, ad, rightWalk); List <PixelSet> upLeftWalk = new List <PixelSet>(); upLeftWalk.Add(frames["PL04_UpLeft_Walk0"]); upLeftWalk.Add(frames["PL04_UpLeft_Walk1"]); upLeftWalk.Add(frames["PL04_UpLeft_Walk0"]); upLeftWalk.Add(frames["PL04_UpLeft_Walk2"]); AddFrameToAnim(Directions8Way.UpLeft, ad, upLeftWalk); List <PixelSet> upWalk = new List <PixelSet>(); upWalk.Add(frames["PL04_Up_Walk0"]); upWalk.Add(frames["PL04_Up_Walk1"]); upWalk.Add(frames["PL04_Up_Walk0"]); upWalk.Add(frames["PL04_Up_Walk2"]); AddFrameToAnim(Directions8Way.Up, ad, upWalk); List <PixelSet> downWalk = new List <PixelSet>(); downWalk.Add(frames["PL04_Down_Walk0"]); downWalk.Add(frames["PL04_Down_Walk1"]); downWalk.Add(frames["PL04_Down_Walk0"]); downWalk.Add(frames["PL04_Down_Walk2"]); AddFrameToAnim(Directions8Way.Down, ad, downWalk); List <PixelSet> upRightWalk = new List <PixelSet>(); upRightWalk.Add(frames["PL04_UpRight_Walk0"]); upRightWalk.Add(frames["PL04_UpRight_Walk1"]); upRightWalk.Add(frames["PL04_UpRight_Walk0"]); upRightWalk.Add(frames["PL04_UpRight_Walk2"]); AddFrameToAnim(Directions8Way.UpRight, ad, upRightWalk); ad.Save(projectHolder.ProjectPath); }