public KitTemplate(int id_, string name_, KitCategory cat_, int price_, string prop_, int stock_qtt_, int stock_location_x_, int stock_location_y_, int bike_qtt_)
 {
     id               = id_;
     name             = name_;
     price            = price_;
     cat              = cat_;
     properties       = prop_;
     stock_qtt        = stock_qtt_;
     stock_location_x = stock_location_x_;
     stock_location_y = stock_location_y_;
     bike_qtt         = bike_qtt_;
 }
Beispiel #2
0
        public string Execute(
            KitCategory category = KitCategory.rBasic,
            [CurrentCharacterIfNull] ICharacter player = null)
        {
            switch (category)
            {
            case KitCategory.rBasic:
                CreateItem <ItemLogs>();
                CreateItem <ItemStone>();
                CreateItem <ItemPlanks>();
                CreateItem <ItemTwigs>();
                CreateItem <ItemIngotCopper>();
                CreateItem <ItemIngotIron>();
                CreateItem <ItemIngotSteel>();
                CreateItem <ItemFibers>();
                CreateItem <ItemRope>();
                return("Added basic resources.");

            case KitCategory.wT1:
                CreateItem <ItemCrossbow>();
                CreateItem <ItemFlintlockPistol>();
                CreateItem <ItemMusket>();
                CreateItem <ItemAmmoArrowIron>();
                CreateItem <ItemAmmoArrowStone>();
                CreateItem <ItemAmmoPaperCartridge>();
                return("Added T1 arms and ammo.");

            case KitCategory.w8mm:
                CreateItem <ItemLuger>();
                CreateItem <ItemRevolver8mm>();
                CreateItem <ItemMachinePistol>();
                CreateItem <ItemRifleBoltAction>();
                CreateItem <ItemAmmo8mmStandard>();
                CreateItem <ItemAmmo8mmToxic>();
                return("Added 8mm arms and ammo.");

            case KitCategory.w10mm:
                CreateItem <ItemHandgun10mm>();
                CreateItem <ItemSubmachinegun10mm>();
                CreateItem <ItemRifle10mm>();
                CreateItem <ItemAmmo10mmStandard>();
                CreateItem <ItemAmmo10mmArmorPiercing>();
                CreateItem <ItemAmmo10mmArmorPiercing>();
                CreateItem <ItemAmmo10mmArmorPiercing>();
                CreateItem <ItemAmmo10mmHollowPoint>();
                CreateItem <ItemAmmo10mmBlank>();
                return("Added 10mm arms and ammo.");

            case KitCategory.w12ga:
                CreateItem <ItemShotgunDoublebarreled>();
                CreateItem <ItemShotgunMilitary>();
                CreateItem <ItemAmmo12gaPellets>();
                CreateItem <ItemAmmo12gaSlugs>();
                CreateItem <ItemAmmo12gaBuckshot>();
                CreateItem <ItemAmmo12gaSaltCharge>();
                return("Added 12ga arms and ammo.");

            case KitCategory.w300:
                CreateItem <ItemMachinegun300>();
                CreateItem <ItemRifle300>();
                CreateItem <ItemAmmo300ArmorPiercing>();
                CreateItem <ItemAmmo300ArmorPiercing>();
                CreateItem <ItemAmmo300ArmorPiercing>();
                CreateItem <ItemAmmo300Incendiary>();
                return("Added .300 arms and ammo.");

            case KitCategory.wGL:
                CreateItem <ItemGrenadeLauncher>();
                CreateItem <ItemGrenadeLauncherMulti>();
                CreateItem <ItemAmmoGrenadeHE>();
                CreateItem <ItemAmmoGrenadeIncendiary>();
                CreateItem <ItemAmmoGrenadeFreeze>();
                CreateItem <ItemAmmoGrenadeFragmentation>();
                return("Added grenade launchers and ammo.");

            case KitCategory.wEnergy:
                CreateItem <ItemLaserPistol>();
                CreateItem <ItemLaserRifle>();
                CreateItem <ItemPlasmaPistol>();
                CreateItem <ItemPlasmaRifle>();
                CreateItem <ItemPowerBankLarge>();
                CreateItem <ItemBatteryDisposable>(amount: 100);
                return("Added energy weapons and related items.");

            case KitCategory.wExotic:
                CreateItem <ItemToxinProliferator>();
                CreateItem <ItemSwarmLauncher>();
                CreateItem <ItemAmmoKeinite>();
                CreateItem <ItemAmmoKeinite>();
                return("Added exotic weapons and related items.");

            case KitCategory.wMelee:
                CreateItem <ItemKnifeStone>();
                CreateItem <ItemKnifeIron>();
                CreateItem <ItemMaceCopper>();
                CreateItem <ItemMaceIron>();
                CreateItem <ItemMachete>();
                CreateItem <ItemRapierLaserBlue>();
                CreateItem <ItemRapierLaserGreen>();
                CreateItem <ItemRapierLaserPurple>();
                CreateItem <ItemRapierLaserRed>();
                CreateItem <ItemRapierLaserWhite>();
                CreateItem <ItemRapierLaserYellow>();
                CreateItem <ItemPowerBankLarge>();
                CreateItem <ItemBatteryDisposable>();
                return("Added 12ga arms and ammo.");

            case KitCategory.iMedicine:
                CreateItem <ItemAntiNausea>();
                CreateItem <ItemAntiRadiation>();
                CreateItem <ItemAntiRadiationPreExposure>();
                CreateItem <ItemAntiToxin>();
                CreateItem <ItemAntiToxinPreExposure>();
                CreateItem <ItemBandage>();
                CreateItem <ItemHeatPreExposure>();
                CreateItem <ItemHemostatic>();
                CreateItem <ItemHerbGreen>();
                CreateItem <ItemHerbPurple>();
                CreateItem <ItemHerbRed>();
                CreateItem <ItemHerbBlue>();
                CreateItem <ItemMedkit>();
                CreateItem <ItemNeuralEnhancer>();
                CreateItem <ItemPainkiller>();
                CreateItem <ItemPeredozin>();
                CreateItem <ItemPsiPreExposure>();
                CreateItem <ItemRemedyHerbal>();
                CreateItem <ItemSplint>();
                CreateItem <ItemStimpack>();
                CreateItem <ItemStrengthBoostBig>();
                CreateItem <ItemStrengthBoostSmall>();
                return("Added medicine.");

            case KitCategory.iImplants:
                CreateItem <ItemImplantArtificialRetina>();
                CreateItem <ItemImplantArtificialStomach>();
                CreateItem <ItemImplantATPEnergyExtractor>();
                CreateItem <ItemImplantHealingGland>();
                CreateItem <ItemImplantMetabolismModulator>();
                CreateItem <ItemImplantNanofiberSkin>();
                CreateItem <ItemVialBiomaterial>();
                CreateItem <ItemVialEmpty>();
                return("Added implants and related items.");

            case KitCategory.iFarming:
                CreateItem <ItemWateringCanWood>();
                CreateItem <ItemWateringCanCopper>();
                CreateItem <ItemWateringCanSteel>();
                CreateItem <ItemWateringCanPlastic>();
                CreateItem <ItemBottleWater>(100);
                CreateItem <ItemSeedsBellPepper>();
                CreateItem <ItemSeedsCarrot>();
                CreateItem <ItemSeedsChiliPepper>();
                CreateItem <ItemSeedsCorn>();
                CreateItem <ItemSeedsCucumber>();
                CreateItem <ItemSeedsFlowerBlueSage>();
                CreateItem <ItemSeedsFlowerOni>();
                CreateItem <ItemSeedsMilkmelon>();
                CreateItem <ItemSeedsTobacco>();
                CreateItem <ItemSeedsTomato>();
                CreateItem <ItemSeedsWheat>();
                return("Added farming-related items.");

            case KitCategory.iFishing:
                CreateItem <ItemFishingRod>();
                CreateItem <ItemFishingBaitFish>();
                CreateItem <ItemFishingBaitInsect>();
                CreateItem <ItemFishingBaitMix>();
                return("Added fishing-related items.");

            case KitCategory.tToolsAll:
                CreateItem <ItemAxeStone>();
                CreateItem <ItemAxeIron>();
                CreateItem <ItemAxeSteel>();
                CreateItem <ItemPickaxeStone>();
                CreateItem <ItemPickaxeIron>();
                CreateItem <ItemPickaxeSteel>();
                CreateItem <ItemHammerPragmium>();
                CreateItem <ItemToolboxT1>();
                CreateItem <ItemToolboxT2>();
                CreateItem <ItemToolboxT3>();
                CreateItem <ItemCrowbar>();
                return("Added all basic tools.");

            case KitCategory.iDrones:
                CreateItem <ItemDroneControlStandard>();
                CreateItem <ItemDroneControlAdvanced>();
                CreateItem <ItemDroneIndustrialStandard>(amount: 3);
                CreateItem <ItemDroneIndustrialAdvanced>(amount: 3);
                return("Added drone-related items.");

            default:
                return("Incorrect argument given.");
            }

            void CreateItem <TProtoItem>(ushort amount = 0)
                where TProtoItem : class, IProtoItem, new()
        public static string GetCatName(KitCategory c)
        {
            switch (c)
            {
            case KitCategory.frame:
                return("Frame");

            case KitCategory.tire:
                return("Tire");

            case KitCategory.wheels:
                return("Wheels");

            case KitCategory.saddle:
                return("Saddle");

            case KitCategory.brake:
                return("Brake");

            case KitCategory.speed:
                return("Speed");

            case KitCategory.crankset:
                return("Crankset");

            case KitCategory.sproket:
                return("Sproke");

            case KitCategory.chain:
                return("Chain");

            case KitCategory.air_chamber:
                return("Air chamber");

            case KitCategory.derailler:
                return("Derailler");

            case KitCategory.brake_disq:
                return("Brake disque");

            case KitCategory.fork:
                return("Fork");

            case KitCategory.handlebar:
                return("Handleber");

            case KitCategory.tray:
                return("Tray");

            case KitCategory.light:
                return("Light");

            case KitCategory.luggage:
                return("Luggage");

            case KitCategory.mudgard:
                return("Mudgard");

            case KitCategory.reflector:
                return("Reflector");

            case KitCategory.crutch:
                return("Crutch");

            default:
                return("Unkown");
            }
        }
 public void setCategory(KitCategory c)
 {
     cat = c;
     DatabaseClassInterface.updateKitTemplate(this);
 }