Ejemplo n.º 1
0
        public frmSpriteFrameAdd(RoSprite Sprite)
        {
            mSprite = Sprite;

            InitializeComponent();

            for (int i = 0; i < mSprite.Images.Count; i++)
            {
                cmbAddPosition.Items.Add((i + 1));
            }

            cmbAddType.SelectedIndex     = 0;
            cmbAddPosition.SelectedIndex = cmbAddPosition.Items.Count - 1;
        }
Ejemplo n.º 2
0
        public bool ExportImage(RoGrfFileItem grfItem)
        {
            byte[] spriteData  = grfItem.FileData;
            string sprFilepath = Path.GetTempFileName();

            File.WriteAllBytes(sprFilepath, spriteData);
            spriteData = null;

            try {
                using (RoSprite sprFile = new RoSprite(sprFilepath)) {
                    sprFile.DrawImage(0);

                    using (Bitmap bmp = sprFile.GetImageTransparent(0)) {
                        bmp.Save(Environment.CurrentDirectory + @"\data\mobs\" + ID + ".png");
                    }
                }
            } catch (Exception ex) {
                return(false);
            }

            return(true);
        }
Ejemplo n.º 3
0
        public void SetData(byte[] spriteData, string name)
        {
            if (spriteData == null || spriteData.Length == 0)
            {
                ResetAllOperations();
                return;
            }

            mName   = name;
            mSprite = new RoSprite(spriteData);
            if (mSprite.ImagesPal.Count == 0 && mSprite.ImagesRgba.Count == 0)
            {
                ResetAllOperations();
                return;
            }

            mCurrentTypePal = (mSprite.ImagesPal.Count > 0);

            // force to update image
            mCurrentIndex = -1;

            SetImage(0);
        }
Ejemplo n.º 4
0
        private bool OpenSprite(string spritepath, bool fromBash)
        {
            mSprite = new RoSprite(spritepath);
            if (mSprite.Images.Count == 0)               // lol
            {
                mSprite = null;

                if (fromBash)
                {
                    SetControls(false);
                }
                return(false);
            }

            InitializePalette();
            mWndSprite.SpriteControl.BackColor = mSprite.Palette[0];
            SetImage(0);

            if (fromBash)
            {
                SetControls(true);
            }
            return(true);
        }
Ejemplo n.º 5
0
 public void TestPoring()
 {
     var spr = new RoSprite(GetDataPath("poring.spr"));
 }