Ejemplo n.º 1
0
        internal void CreateObjectCategoryFromSelectedTile()
        {
            CreateObjectCategoryForm createObjectCategoryForm = new CreateObjectCategoryForm();

            try
            {
                createObjectCategoryForm.ObjCategoryImage = Tilesheet.CropImage(new RectangleF(_selectedTile.X * @interface.TileWidth,
                                                                                               _selectedTile.Y * @interface.TileHeight,
                                                                                               @interface.TileWidth,
                                                                                               @interface.TileHeight));
            }
            catch
            {
                return;
            }

            createObjectCategoryForm.CollisionTypeDataSource = @interface.CollisionTypeTable;
            if (createObjectCategoryForm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                int tileIndex = _selectedTile.Y * _columns + _selectedTile.X;
                foreach (var obj in @interface.GameObjectCategories)
                {
                    if (obj.TileIndex == tileIndex)
                    {
                        @interface.AddTileObjectFromAvailableObjectCategory(tileIndex, obj);
                        return;
                    }
                }
                GameObjectCategory gameObjectCategory = new GameObjectCategory();
                gameObjectCategory.Id   = createObjectCategoryForm.ObjectCategoryId;
                gameObjectCategory.Name = createObjectCategoryForm.ObjectCategoryName;
                gameObjectCategory.ObjectCategoryImage = createObjectCategoryForm.ObjCategoryImage;
                gameObjectCategory.TileIndex           = tileIndex;
                @interface.AddCollisionType(createObjectCategoryForm.CollisionTypeName);
                gameObjectCategory.CollisionType = createObjectCategoryForm.CollisionTypeName;
                @interface.AddGameObjectCategory(gameObjectCategory);
            }
        }
 private void picObject_Click(object sender, EventArgs e)
 {
     if (openFileDialog1.ShowDialog() == DialogResult.OK)
     {
         String[] fileNames = openFileDialog1.FileNames;
         foreach (var fileName in fileNames)
         {
             var name = GetFileName(fileName);
             int id   = 0;
             int.TryParse(name, out id);
             var image = Image.FromFile(fileName);
             GameObjectCategory objectCategory = new GameObjectCategory();
             objectCategory.Id   = id;
             objectCategory.Name = name;
             objectCategory.ObjectCategoryImage = (Image)image.Clone();
             image.Dispose();
             Interface.AddGameObjectCategory(objectCategory, TreeViewObjectType.CategoryObjectFromFile);
             ChooseObjectTypeEnum = ChooseObjectTypeEnum.ObjectFromFile;
         }
         DialogResult = DialogResult.OK;
         this.Close();
     }
 }
 public AddObjectCategoryAction(GameObjectCategory objectCategory, IObjectsManager objectManager)
 {
     this.objectCategory = objectCategory;
     this.objectManager  = objectManager;
 }
Ejemplo n.º 4
0
        public void RemoveObjectCategory(GameObjectCategory objectCategory, IObjectsManager objectManager)
        {
            var action = new RemoveObjectCategoryAction(objectCategory, objectManager);

            HandlePushAction(action);
        }