Example #1
0
        private static void DemoVehicleInventory()
        {
            IVehicleInventory inventory = new VehicleInventory();
            var vehicle = VehicleFactory.CreateVehicle("vinnumber3", VehicleMake.Tesla, "Model S", 2017, "yellow", 1500, 2500, 100);

            //var temp = vehicle.Mfg;
            inventory.Add(vehicle);
            vehicle = VehicleFactory.CreateVehicle("vinnumber1", VehicleMake.BMW, "325i", 2016, "red", 2500, 4000, 100);
            inventory.Add(vehicle);

            inventory.Remove(vehicle);

            inventory.Add(vehicle);
            var v1 = inventory.List(SortOrder.Vin);

            Console.WriteLine("List of Vehicles");
            v1.ForEach(v => Console.WriteLine($"{v.VinNumber}, {v.Make}, {v.Model}"));

            var v2 = inventory.FindByYear(2017);

            var v3 = inventory.List(SortOrder.Vin).FindByMake(VehicleMake.BMW);

            v3.AddToMileage(99);
            var v3_1 = inventory.List().FindByMake(VehicleMake.BMW);

            var v4 = inventory.List().FindByMake(VehicleMake.Ford);

            var stringList = inventory.ListAsString(SortOrder.Vin);

            Console.WriteLine("List of Vehicles - in Json(string) format");
            Console.WriteLine($"{stringList}");
        }
Example #2
0
        public static void Event_InteractPressed(Client player, int id)
        {
            switch (id)
            {
            case 54:
                NAPI.Entity.SetEntityPosition(player, ExitAlcoShop[player.GetData("CLUB")] + new Vector3(0, 0, 1.2));
                return;

            case 55:
                NAPI.Entity.SetEntityPosition(player, EnterAlcoShop[player.GetData("CLUB")] + new Vector3(0, 0, 1.2));
                return;

            case 56:
                if (!Main.Players.ContainsKey(player))
                {
                    return;
                }

                if (Main.Players[player].FractionID != player.GetData("CLUB"))
                {
                    Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, $"Вы не состоите в {Fractions.Manager.getName(player.GetData("CLUB"))}", 3000);
                    return;
                }

                if (!player.IsInVehicle)
                {
                    Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "Вы должны находиться в машине", 3000);
                    return;
                }

                int club = player.GetData("CLUB");

                var matCount = VehicleInventory.GetCountOfType(player.Vehicle, ItemType.Material);
                if (matCount == 0)
                {
                    Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "В машине нет материала", 3000);
                    return;
                }

                if (ClubsStocks[club].Materials >= MaxMats)
                {
                    Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "Склад заполнен", 3000);
                    return;
                }

                VehicleInventory.Remove(player.Vehicle, ItemType.Material, matCount);
                ClubsStocks[club].Materials += matCount;
                ClubsStocks[club].UpdateLabel();
                Notify.Send(player, NotifyType.Success, NotifyPosition.BottomCenter, "Вы выгрузили весь материал из машины на склад клуба", 3000);
                return;

            case 57:
                if (!Main.Players.ContainsKey(player))
                {
                    return;
                }
                OpenBuyAlcoholMenu(player);
                return;
            }
        }
Example #3
0
        public void TestMethod_BasicFeatures()
        {
            IVehicleInventory inventory = new VehicleInventory();
            var vehicle = VehicleFactory.CreateVehicle("vinnumber3", VehicleMake.Tesla, "model", 2017, "yellow", 1500, 2500, 100);

            //var temp = vehicle.Mfg;
            inventory.Add(vehicle);
            vehicle = VehicleFactory.CreateVehicle("vinnumber1", VehicleMake.BMW, "model", 2016, "red", 2500, 4000, 100);
            inventory.Add(vehicle);
            var v1 = inventory.List(SortOrder.Vin);

            Assert.AreEqual(2, v1.Count);
            Assert.AreEqual(v1[0].VinNumber, "vinnumber1");

            inventory.Remove(vehicle);
            v1 = inventory.List(SortOrder.Vin);
            Assert.AreEqual(1, v1.Count);

            inventory.Add(vehicle);

            var v2 = inventory.FindByYear(2017);

            Assert.AreEqual(1, v2.Count);

            var v3 = inventory.List(SortOrder.Vin).FindByMake(VehicleMake.BMW);

            Assert.AreEqual(1, v3.Count);
            Assert.IsTrue(v3[0].Disclaimer.Contains("Copyright BMW AG, Munich, Germany"));

            v3.AddToMileage(99);
            var v3_1 = inventory.List().FindByMake(VehicleMake.BMW);

            Assert.AreEqual(199, v3_1[0].Miles);

            var v4 = inventory.List().FindByMake(VehicleMake.Ford);

            Assert.AreEqual(0, v4.Count);

            var stringList = inventory.ListAsString(SortOrder.Vin);

            Assert.IsTrue(stringList.Contains("vinnumber3"));
            Assert.IsTrue(stringList.Contains("vinnumber1"));
            // verify that the BMW has the disclaimer
            Assert.IsTrue(stringList.Contains("Copyright BMW AG, Munich, Germany"));

            // test for tesla manufacturer info
            Assert.IsTrue(stringList.Contains("Teslaphone"));
        }