コード例 #1
0
 public static void RSDKvU_Import_Frame(EditorAnimation.EditorFrame frame, string filepath)
 {
     RSDKv5.Reader readerv5 = new RSDKv5.Reader(filepath);
     RSDKv5.Animation.AnimationEntry.Frame framev5 = new RSDKv5.Animation.AnimationEntry.Frame(readerv5);
     readerv5.Close();
     RSDKv5_Load_Frame(frame, framev5);
 }
 public static void RSDKvU_Export_Frame(EditorAnimation.EditorFrame frame, string filepath)
 {
     RSDKv5.Animation.AnimationEntry.Frame framev5 = new RSDKv5.Animation.AnimationEntry.Frame();
     RSDKv5_Save_Frame(frame, framev5);
     RSDKv5.Writer writerv5 = new RSDKv5.Writer(filepath);
     framev5.Write(writerv5);
     writerv5.Close();
 }
        public static void RSDKv5_Save_AnimEntry(EditorAnimation.EditorAnimationInfo animEntry, RSDKv5.Animation.AnimationEntry animv5)
        {
            animv5.AnimName        = animEntry.AnimName;
            animv5.LoopIndex       = animEntry.LoopIndex;
            animv5.SpeedMultiplyer = animEntry.SpeedMultiplyer;
            animv5.RotationFlags   = animEntry.RotationFlags;

            for (int i = 0; i < animEntry.Frames.Count; i++)
            {
                RSDKv5.Animation.AnimationEntry.Frame frame = new RSDKv5.Animation.AnimationEntry.Frame();
                RSDKv5_Save_Frame(animEntry.Frames[i], frame);
                animv5.Frames.Add(frame);
            }
        }
        public static void RSDKv5_Save_Frame(EditorAnimation.EditorFrame frame, RSDKv5.Animation.AnimationEntry.Frame framev5)
        {
            framev5.CollisionBox = frame.CollisionBox;
            framev5.Delay        = frame.Delay;
            framev5.Height       = frame.Height;
            framev5.ID           = (short)frame.ID;
            framev5.PivotX       = frame.PivotX;
            framev5.PivotY       = frame.PivotY;
            framev5.SpriteSheet  = frame.SpriteSheet;
            framev5.Width        = frame.Width;
            framev5.X            = frame.X;
            framev5.Y            = frame.Y;

            for (int i = 0; i < frame.HitBoxes.Count; i++)
            {
                RSDKv5.Animation.AnimationEntry.Frame.HitBox hb = new RSDKv5.Animation.AnimationEntry.Frame.HitBox();
                RSDKv5_Save_Hitbox(frame.HitBoxes[i], hb);
                framev5.HitBoxes.Add(hb);
            }
        }
コード例 #5
0
        public static void RSDKv5_Load_Frame(EditorAnimation.EditorFrame frame, RSDKv5.Animation.AnimationEntry.Frame framev5)
        {
            frame.engineType   = EngineType.RSDKv5;
            frame.CollisionBox = framev5.CollisionBox;
            frame.Delay        = framev5.Delay;
            frame.Height       = framev5.Height;
            frame.ID           = (ushort)framev5.ID;
            frame.PivotX       = framev5.PivotX;
            frame.PivotY       = framev5.PivotY;
            frame.SpriteSheet  = framev5.SpriteSheet;
            frame.Width        = framev5.Width;
            frame.X            = framev5.X;
            frame.Y            = framev5.Y;
            frame.HitBoxes     = new List <EditorAnimation.EditorHitbox>();

            for (int i = 0; i < framev5.HitBoxes.Count; i++)
            {
                EditorAnimation.EditorHitbox hb = new EditorAnimation.EditorHitbox();
                RSDKv5_Load_Hitbox(hb, framev5.HitBoxes[i]);
                frame.HitBoxes.Add(hb);
            }
        }
コード例 #6
0
        Point GetFrame(RSDKv5.Animation.AnimationEntry.Frame Frame)
        {
            int AdditionalX = 0;
            int AdditionalY = 0;

            if (Frame.PivotX > 0)
            {
                AdditionalX = Frame.PivotX;
            }
            else
            {
                AdditionalX = -Frame.PivotX;
            }
            if (Frame.PivotY > 0)
            {
                AdditionalY = -Frame.PivotY;
            }
            else
            {
                AdditionalY = Frame.PivotY;
            }
            return(new Point(AdditionalX, 4));
        }