Exemplo n.º 1
0
        private void initFromExistingSpriteSet(CoronaSpriteSet set)
        {
            this.set = set;
            reloadFramesBitmap();

            refreshSpriteSetFramesListView();
        }
Exemplo n.º 2
0
        public void init(AssetManagerForm mainForm, CoronaSpriteSet set)
        {
            this.mainForm = mainForm;

            initFromExistingSpriteSet(set);

            DisplayObjectProperties();
        }
Exemplo n.º 3
0
 private void stopAnimCurrentSequence()
 {
     if (lastSet != null)
     {
         lastSet.stopAnimation();
         lastSet = null;
     }
 }
Exemplo n.º 4
0
        private void sequencesCmbBx_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (this.sequenceFramesListView.LargeImageList != null)
            {
                this.sequenceFramesListView.LargeImageList.Dispose();
            }

            this.sequenceFramesListView.LargeImageList = null;

            this.sequenceFramesListView.BeginUpdate();
            this.sequenceFramesListView.Items.Clear();

            this.stopAnimCurrentSequence();
            if (this.spriteSetParentCmbBx.SelectedItem != null)
            {
                CoronaSpriteSet set = (CoronaSpriteSet)this.spriteSetParentCmbBx.SelectedItem;
                if (set != null)
                {
                    if (this.sequencesCmbBx.SelectedItem != null)
                    {
                        CoronaSpriteSetSequence sequence = (CoronaSpriteSetSequence)this.sequencesCmbBx.SelectedItem;
                        if (sequence != null)
                        {
                            ImageList sequenceFrames = new ImageList();
                            sequenceFrames.ImageSize = new Size(64, 64);
                            this.sequenceFramesListView.LargeImageList = sequenceFrames;

                            if (sequence.FrameDepart - 1 + sequence.FrameCount - 1 <= set.Frames.Count)
                            {
                                for (int i = sequence.FrameDepart - 1; i < sequence.FrameDepart - 1 + sequence.FrameCount; i++)
                                {
                                    SpriteFrame obj = set.Frames[i];
                                    if (obj.Image != null)
                                    {
                                        sequenceFrames.Images.Add(obj.Image);
                                        ListViewItem item = new ListViewItem((i + 1).ToString(), sequenceFrames.Images.Count - 1);
                                        this.sequenceFramesListView.Items.Add(item);
                                    }
                                }
                                set.SequenceSelected = sequence;
                            }
                        }
                    }
                }
            }

            this.sequenceFramesListView.EndUpdate();
            playAnimCurrentSequence();
        }
Exemplo n.º 5
0
 private void playAnimCurrentSequence()
 {
     stopAnimCurrentSequence();
     if (this.spriteSetParentCmbBx.SelectedItem != null)
     {
         CoronaSpriteSet set = (CoronaSpriteSet)this.spriteSetParentCmbBx.SelectedItem;
         if (this.sequencesCmbBx.SelectedItem != null)
         {
             CoronaSpriteSetSequence sequence = (CoronaSpriteSetSequence)this.sequencesCmbBx.SelectedItem;
             set.SequenceSelected = sequence;
             lastSet = set;
             set.playAnimation(this.animPictBx);
         }
     }
 }
Exemplo n.º 6
0
        private void initFromExistingSpriteSet(CoronaSpriteSet set)
        {
            this.set = set;

            this.sheetCmbBx.Items.Clear();
            if (this.mainForm.CurrentAssetProject != null)
            {
                for (int i = 0; i < this.mainForm.CurrentAssetProject.SpriteSheets.Count; i++)
                {
                    this.sheetCmbBx.Items.Add(this.mainForm.CurrentAssetProject.SpriteSheets[i]);
                }

                if (this.sheetCmbBx.Items.Count > 0)
                {
                    this.sheetCmbBx.SelectedIndex = 0;
                }
            }

            refreshSpriteSetFramesListView();
        }
Exemplo n.º 7
0
        public bool IsSpriteSetInCurrentAssetLib(CoronaSpriteSet set)
        {
            if (this.assetsToSerialize != null)
            {
                for (int i = 0; i < this.assetsToSerialize.ListObjects.Count; i++)
                {
                    DisplayObject obj = this.assetsToSerialize.ListObjects[i];
                    if (obj != null)
                    {
                        if (obj.Type.Equals("SPRITE"))
                        {
                            if (obj.SpriteSet == set)
                            {
                                return(true);
                            }
                        }
                    }
                }
            }

            return(false);
        }
Exemplo n.º 8
0
        public void clean()
        {
            for (int i = 0; i < this.ListObjects.Count; i++)
            {
                DisplayObject obj = this.ListObjects[i];
                if (obj.Image != null)
                {
                    obj.Image.Dispose();
                    obj.Image = null;
                }
            }

            for (int i = 0; i < this.SpriteSets.Count; i++)
            {
                CoronaSpriteSet set = SpriteSets[i];
                for (int j = 0; j < set.Frames.Count; j++)
                {
                    SpriteFrame frame = set.Frames[j];
                    if (frame.Image != null)
                    {
                        frame.Image.Dispose();
                        frame.Image = null;
                    }
                }
            }

            for (int i = 0; i < this.SpriteSheets.Count; i++)
            {
                CoronaSpriteSheet sheet = this.SpriteSheets[i];
                if (sheet.ImageSpriteSheet != null)
                {
                    sheet.ImageSpriteSheet.Dispose();
                    sheet.ImageSpriteSheet = null;
                }
            }
        }
Exemplo n.º 9
0
 public SpriteSetPropertyConverter(CoronaSpriteSet set, AssetManagerForm MainForm)
 {
     this.set = set;
 }
Exemplo n.º 10
0
        public void removeFrame(int index)
        {
            if (this.sheet != null && this.mainForm.CurrentAssetProject != null)
            {
                AssetsToSerialize assetProject = this.mainForm.CurrentAssetProject;
                SpriteFrame       frame        = this.sheet.Frames[index];
                this.sheet.Frames.Remove(frame);

                //Chercher toutes lespsriteSet utilisant cette frame
                for (int i = 0; i < assetProject.SpriteSets.Count; i++)
                {
                    CoronaSpriteSet    set            = assetProject.SpriteSets[i];
                    List <SpriteFrame> framesToDelete = set.checkFramesIntegrity();
                    if (framesToDelete != null)
                    {
                        for (int j = 0; j < framesToDelete.Count; j++)
                        {
                            set.Frames.Remove(framesToDelete[j]);
                        }
                        framesToDelete = null;

                        List <CoronaSpriteSetSequence> sequencesToDelete = set.checkSequencesIntegrity();
                        if (sequencesToDelete != null)
                        {
                            for (int j = 0; j < sequencesToDelete.Count; j++)
                            {
                                CoronaSpriteSetSequence sequenceToDelete = sequencesToDelete[j];
                                set.Sequences.Remove(sequenceToDelete);
                                MessageBox.Show("The sequence named \"" + sequenceToDelete.Name + "\", located in the sprite set named \"" + set.Name + "\", has been automatically removed because it used a frame index that does not exist anymore!", "Sequence Integrity Corrupted", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                sequenceToDelete = null;
                            }

                            sequencesToDelete = null;
                        }
                    }
                }
                frame.Image.Dispose();


                frame = null;


                //Chercher toutes lespsriteSet utilisant cette frame
                //for (int i = 0; i < assetProject.SpriteSets.Count; i++)
                //{
                //    bool hasFound = false;
                //    CoronaSpriteSet set = assetProject.SpriteSets[i];
                //    for (int j = 0; j < set.Frames.Count; j++)
                //    {
                //        if (set.Frames[j] == frame)
                //        {
                //            hasFound = true;
                //            break;
                //        }
                //    }

                //    if (hasFound == true)
                //    {
                //        this.mainForm.removeSpriteSet(set);
                //    }
                //}
                //frame.Image.Dispose();

                //this.sheet.Frames.Remove(frame);
                //frame = null;
            }
        }
Exemplo n.º 11
0
        public void init(Form1 mainForm, CoronaSpriteSet set)
        {
            this.mainForm = mainForm;

            initFromExistingSpriteSet(set);
        }
Exemplo n.º 12
0
        private void spriteSetParentCmbBx_SelectedIndexChanged(object sender, EventArgs e)
        {
            this.stopAnimCurrentSequence();

            this.sequencesCmbBx.Items.Clear();
            this.sequencesCmbBx.Text = "";
            this.sequenceFramesListView.Items.Clear();

            if (this.frameSpriteSetListView.LargeImageList != null)
            {
                this.frameSpriteSetListView.LargeImageList.Dispose();
            }

            this.frameSpriteSetListView.LargeImageList = null;

            if (this.sequenceFramesListView.LargeImageList != null)
            {
                this.sequenceFramesListView.LargeImageList.Dispose();
            }

            this.sequenceFramesListView.LargeImageList = null;


            this.frameSpriteSetListView.BeginUpdate();
            this.frameSpriteSetListView.Items.Clear();

            if (this.spriteSetParentCmbBx.SelectedItem != null)
            {
                CoronaSpriteSet set = (CoronaSpriteSet)this.spriteSetParentCmbBx.SelectedItem;

                if (set != null)
                {
                    this.obj.SpriteSet = set;

                    ImageList spriteSetFrames = new ImageList();
                    spriteSetFrames.ImageSize = new Size(64, 64);
                    this.frameSpriteSetListView.LargeImageList = spriteSetFrames;

                    for (int i = 0; i < set.Frames.Count; i++)
                    {
                        SpriteFrame obj = set.Frames[i];
                        if (obj.Image != null)
                        {
                            spriteSetFrames.Images.Add(obj.Image);
                            ListViewItem item = new ListViewItem((i + 1).ToString(), spriteSetFrames.Images.Count - 1);
                            this.frameSpriteSetListView.Items.Add(item);
                        }
                    }


                    for (int i = 0; i < set.Sequences.Count; i++)
                    {
                        this.sequencesCmbBx.Items.Add(set.Sequences[i]);
                    }

                    if (this.sequencesCmbBx.Items.Count > 0)
                    {
                        this.sequencesCmbBx.SelectedIndex = 0;
                    }
                }
            }

            this.frameSpriteSetListView.EndUpdate();

            this.animPictBx.Refresh();
        }