module Base
{

/* <<<<<  Spice Racks  >>>>> */

    craftRecipe VFX_MakeSpiceRackSmallLight
    {
        timedAction = MakingHammer_Surface,
        time = 60,
        Tags = AnySurfaceCraft;CanBeDoneFromFloor,
        category = Carpentry,
        xpAward = Woodwork:5,
        SkillRequired = Woodwork:2,

        inputs
        {
            item 2 [Base.Plank] flags[Prop2],
            item 6 [Base.Nails],
        }

        outputs
        {
            item 1 VFX.SpiceRackSmallLight,
        }
    }

    craftRecipe VFX_MakeSpiceRackSmallDark
    {
        timedAction = MakingHammer_Surface,
        time = 60,
        Tags = AnySurfaceCraft;CanBeDoneFromFloor,
        category = Carpentry,
        xpAward = Woodwork:5,
        SkillRequired = Woodwork:2,

        inputs
        {
            item 2 [Base.Plank] flags[Prop2],
            item 6 [Base.Nails],
        }

        outputs
        {
            item 1 VFX.SpiceRackSmallDark,
        }
    }

    craftRecipe VFX_MakeSpiceRackLargeLight
    {
        timedAction = MakingHammer_Surface,
        time = 60,
        Tags = AnySurfaceCraft;CanBeDoneFromFloor,
        category = Carpentry,
        xpAward = Woodwork:10,
        SkillRequired = Woodwork:4,

        inputs
        {
            item 3 [Base.Plank] flags[Prop2],
            item 10 [Base.Nails],
        }

        outputs
        {
            item 1 VFX.SpiceRackLargeLight,
        }
    }

    craftRecipe VFX_MakeSpiceRackLargeDark
    {
        timedAction = MakingHammer_Surface,
        time = 60,
        Tags = AnySurfaceCraft;CanBeDoneFromFloor,
        category = Carpentry,
        xpAward = Woodwork:10,
        SkillRequired = Woodwork:4,

        inputs
        {
            item 3 [Base.Plank] flags[Prop2],
            item 10 [Base.Nails],
        }

        outputs
        {
            item 1 VFX.SpiceRackLargeDark,
        }
    }

/* <<<<<  Glass Jars and Bottles  >>>>> */

    craftRecipe VFX_MakeSmallGlassJar
    {
        timedAction = Craft_Glassmaking,
        time = 100,
        Tags = AnySurfaceCraft;Glassmaking,
        category = Glassmaking,
        NeedToBeLearn = true,
        SkillRequired = Glassmaking:5,
        AutoLearnAny = Glassmaking:6,
        xpAward = Glassmaking:75,

        inputs
        {
            item 1 tags[base:pliers] mode:keep flags[MayDegradeLight],
            item 1 [Base.GlassBlowingPipe] mode:keep,
            item 1 [Base.CeramicCrucibleWithGlass],
        }
        outputs
        {
            item 2 VFX.SmallJar,
        }
    }

    craftRecipe VFX_MakeBeerBottle
    {
        timedAction = Craft_Glassmaking,
        time = 120,
        Tags = AnySurfaceCraft;Glassmaking,
        category = Glassmaking,
        NeedToBeLearn = true,
        AutoLearnAny = Glassmaking:5,
        SkillRequired = Glassmaking:6,
        xpAward = Glassmaking:60,

        inputs
        {
            item 1 tags[base:pliers] mode:keep flags[MayDegradeLight],
            item 1 [Base.GlassBlowingPipe] mode:keep,
            item 1 [Base.CeramicCrucibleWithGlass],
        }

        outputs
        {
            item 1 VFX.BottleBeerEmpty,
        }
    }

    craftRecipe VFX_MakeWineBottle
    {
        timedAction = Craft_Glassmaking,
        time = 120,
        Tags = AnySurfaceCraft;Glassmaking,
        category = Glassmaking,
        NeedToBeLearn = true,
        AutoLearnAny = Glassmaking:5,
        SkillRequired = Glassmaking:6,
        xpAward = Glassmaking:60,

        inputs
        {
            item 1 tags[base:pliers] mode:keep flags[MayDegradeLight],
            item 1 [Base.GlassBlowingPipe] mode:keep,
            item 1 [Base.CeramicCrucibleWithGlass],
        }

        outputs
        {
            item 1 VFX.BottleWineEmpty,
        }
    }

    craftRecipe VFX_MakeJamJar
    {
        timedAction = Craft_Glassmaking,
        time = 120,
        Tags = AnySurfaceCraft;Glassmaking,
        category = Glassmaking,
        NeedToBeLearn = true,
        AutoLearnAny = Glassmaking:5,
        SkillRequired = Glassmaking:6,
        xpAward = Glassmaking:60,

        inputs
        {
            item 1 tags[base:pliers] mode:keep flags[MayDegradeLight],
            item 1 [Base.GlassBlowingPipe] mode:keep,
            item 1 [Base.CeramicCrucibleWithGlass],
        }

        outputs
        {
            item 1 VFX.EmptyJamJar,
        }
    }

/* <<<<<  Jars with Lids  >>>>> */

    craftRecipe VFX_MakeJarWithLid
    {
        timedAction = VFX.JarCanning,
        time = 10,
        tags = InHandCraft,
        category = Cooking,

        inputs
        {
            item 1 tags[base:jar] mode:destroy flags[ItemCount],
            item 1 [Base.JarLid] mode:destroy,
        }

        outputs
        {
            item 1 VFX.JarWithLid,
        }
    }

    craftRecipe VFX_SeperateJarWithLid
    {
        timedAction = VFX.JarCanning,
        time = 10,
        tags = InHandCraft,
        category = Cooking,

        inputs
        {
            item 1 [VFX.JarWithLid],
        }

        outputs
        {
            item 1 Base.EmptyJar,
            item 1 Base.JarLid,
        }
    }

    craftRecipe VFX_MakeSmallJarWithLid
    {
        timedAction = VFX.JarCanning,
        time = 10,
        tags = InHandCraft,
        category = Cooking,

        inputs
        {
            item 1 [VFX.SmallJar] mode:destroy flags[ItemCount],
            item 1 [Base.JarLid] mode:destroy,
        }

        outputs
        {
            item 1 VFX.SmallJarWithLid,
        }
    }

    craftRecipe VFX_SeperateSmallJarWithLid
    {
        timedAction = VFX.JarCanning,
        time = 10,
        tags = InHandCraft,
        category = Cooking,

        inputs
        {
            item 1 [VFX.SmallJarWithLid],
        }

        outputs
        {
            item 1 VFX.SmallJar,
            item 1 Base.JarLid,
        }
    }

/* <<<<<  Bottle Caps and Wine Corks  >>>>> */

    craftRecipe VFX_MakeBottleCaps
    {
        timedAction = SawSmallItemMetal,
        time = 250,
        Tags = AnySurfaceCraft,
        category = Metalworking,

        inputs
        {
            item 1 [Base.SmallSheetMetal],
            item 1 tags[base:sheetmetalsnips] mode:keep flags[MayDegradeLight],
        }
        outputs
        {
            item 12 VFX.BottleCap,
        }
    }

    craftRecipe VFX_MakeWineCorks
    {
        timedAction = SharpenStakeWood,
        time = 200,
        Tags = AnySurfaceCraft,
        xpAward = Carving:5,
        category = Carving,
        SkillRequired = Carving:1,

        inputs
        {
            item 1 tags[base:sharpknife;base:meatcleaver] mode:keep flags[Prop1;IsNotDull;MayDegradeLight],
            item 1 [Base.TreeBranch2;Base.WoodenStick2;Base.LongStick_Broken;Base.Plank_Broken;Base.TableLeg_Broken] flags[AllowDestroyedItem;Prop2],
        }
        outputs
        {
            item 6 Base.Cork,
        }
    }

/* <<<<<  Food Container  >>>>> */
    
    craftRecipe VFX_WeldingMakeMetalFoodContainer
    {
        timedAction = Welding,
        time = 150,
        NeedToBeLearn = true,
        SkillRequired = MetalWelding:4,
        Tags = InHandCraft;Welding,
        category = Metalworking,
        xpAward = MetalWelding:25,
        AutoLearnAny = MetalWelding:4,

        inputs
        {
            item 2 [Base.SmallSheetMetal],
            item 1 [Base.BlowTorch],
            item 1 tags[base:weldingmask] mode:keep,
        }
        outputs
        {
            item 1 VFX.MetalFoodStorageContainer,
        }
    }

/* <<<<<  Wooden Cheese Mold  >>>>> */
    
    craftRecipe VFX_MakeWoodenCheeseMold
    {
        timedAction = Making,
        time = 150,
        category = Carpentry,
        Tags = AnySurfaceCraft;Carpentry,
        xpAward = Woodwork:2,
        SkillRequired = Woodwork:1,

        inputs
        {
            item 1 tags[base:hammer] mode:keep flags[MayDegradeVeryLight],
            item 1 tags[base:saw;base:smallsaw;base:crudesaw] mode:keep flags[MayDegradeLight;Prop1],
            item 1 [Base.Plank] flags[Prop2],
            item 1 [Base.Nails],
        }
        outputs
        {
            item 1 VFX.WoodenCheeseMold,
        }
    }



}