Beispiel #1
0
 public Sprite(SpriteSheet sheet, Rectangle sourceRect, Point origin, Resources res)
 {
     Resources = res;
     Sheet = sheet;
     SourceRect = sourceRect;
     Origin = origin;
 }
Beispiel #2
0
 public Sprite(SpriteSheet sheet, Rectangle sourceRect, Resources res)
 {
     Resources = res;
     Sheet = sheet;
     SourceRect = sourceRect;
     Origin = Point.Zero;
 }
Beispiel #3
0
 public void Add(string name, SpriteSheet sheet)
 {
     if (!SpriteSheets.ContainsKey(name))
         SpriteSheets.Add(name, sheet);
 }
Beispiel #4
0
 public string GetName(SpriteSheet sheet)
 {
     if (SpriteSheets.ContainsValue(sheet))
         return SpriteSheets.Where(pair => pair.Value == sheet).First().Key;
     return "";
 }
        public override void Update(GameTime gameTime, bool isInForeground)
        {
            base.Update(gameTime, isInForeground);

            if (!isInForeground)
                return;

            panel.Update(gameTime);

            if (lastElementSelected != tree.SelectedElement && tree.SelectedElement.IsFile)
                textureDrawer.Texture = Manager.Game.Content.Load<Texture2D>(tree.SelectedElement.Path.Substring(8));

            if (submitButton.IsPressed())
            {
                IsSubmitted = true;
                Manager.CloseScreen();
            }

            if (addSpriteButton.IsPressed() && textureDrawer.SelectedRectangle != null && textureDrawer.SelectedPoint != null)
            {
                SpriteSheet sheet = Resources.GetSpriteSheet(tree.SelectedElement.Path.Split('/', '\\').Last());
                if (!Resources.SpriteSheets.ContainsKey(tree.SelectedElement.Path.Split('/', '\\').Last()))
                {
                    sheet = new SpriteSheet(Manager.Game, tree.SelectedElement.Path.Substring(8));
                    Resources.Add(tree.SelectedElement.Path.Split('/', '\\').Last(), sheet);
                }
                Rectangle r = textureDrawer.SelectedRectangle.Value;
                Point origin = new Point((int)textureDrawer.SelectedPoint.Value.X - r.Location.X, (int)textureDrawer.SelectedPoint.Value.Y - r.Location.Y);
                Resources.Add(addSpriteText.Text, new Sprite(sheet, (Rectangle)textureDrawer.SelectedRectangle, origin, Resources));
            }

            Vector2 vec = textureDrawer.ConvertScreenToPicture(new Vector2(Input.X, Input.Y));
            coordinate.Text = "X : " + vec.X + " / Y : " + vec.Y;

            lastElementSelected = tree.SelectedElement;
        }