예제 #1
0
        private static GearBuilder AddContainerItems(this GearBuilder builder, string unitContainer, Item item)
        {
            if (item is ItemStack)
            {
                builder.AddCommandWithParameters($"{unitContainer} {GearBuilderResources.AddItemsCommand}", item.Classname, (item as ItemStack).Count);
            }
            else
            {
                builder.AddCommandWithParameters($"{unitContainer} {GearBuilderResources.AddItemsCommand}", item.Classname, 1);
            }

            return(builder);
        }
예제 #2
0
        private static GearBuilder AddBackpack(this GearBuilder builder, string classname)
        {
            if (String.IsNullOrEmpty(classname))
            {
                return(builder);
            }

            return(builder
                   .AddCommandWithParameters($"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddBackpackCommand}", classname)
                   .AddCommand(GearBuilderResources.ClearBackpackCommand)
                   .NewLine());
        }
예제 #3
0
        private static GearBuilder AddPrimaryWeapon(this GearBuilder builder, Weapon primaryWeapon)
        {
            if (primaryWeapon == null)
            {
                return(builder);
            }

            return(builder
                   .AddCommandWithParameters($"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddWeaponCommand}", primaryWeapon.Classname)
                   .ApplyForEach(
                       (current, attachment) =>
                       current.AddCommandWithParameters(
                           $"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddPrimaryWeaponItemCommand}",
                           attachment.Classname), primaryWeapon.Attachments)
                   .AddCommandWithParameters(
                       $"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddPrimaryWeaponItemCommand}",
                       primaryWeapon.Magazine?.Classname)
                   .NewLine());
        }
예제 #4
0
        private static GearBuilder AddSidearm(this GearBuilder builder, Weapon sidearm)
        {
            if (sidearm == null)
            {
                return(builder);
            }

            return(builder
                   .AddCommandWithParameters($"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddWeaponCommand}", sidearm.Classname)
                   .ApplyForEach(
                       (current, attachment) =>
                       current.AddCommandWithParameters(
                           $"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddSidearmItemCommand}",
                           attachment.Classname), sidearm.Attachments)
                   .AddCommandWithParameters(
                       $"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddSidearmItemCommand}",
                       sidearm.Magazine?.Classname)
                   .NewLine());
        }
예제 #5
0
 private static GearBuilder AddHeadgear(this GearBuilder builder, string classname)
 {
     return(builder
            .AddCommandWithParameters($"{GearBuilderResources.UnitFunc} {GearBuilderResources.AddHeadgearCommand}", classname));
 }