private void handleBuild(VehicleBuildType vehicleBuildType) { switch (vehicleBuildType) { case VehicleBuildType.VehicleModel: m_VehicleBuilder.Model = ConsoleUtils.ParseModel(); break; case VehicleBuildType.VehicleID: m_VehicleBuilder.ID = ConsoleUtils.ParseVehicleID(); break; case VehicleBuildType.VehicleEngine: m_VehicleBuilder.InitalizeEngine(ConsoleUtils.ReadEnergyAmount()); break; case VehicleBuildType.VehicleWheels: m_VehicleBuilder.Wheels = ConsoleUtils.ParseWheels(m_VehicleBuilder.MaxWheelPressure, m_VehicleBuilder.ValidWheelsCount); break; case VehicleBuildType.VehicleColor: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseColor()); break; case VehicleBuildType.VehicleDoors: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseDoorsType()); break; case VehicleBuildType.VehicleLicence: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseLicenceType()); break; case VehicleBuildType.VehicleHazardous: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseHazardousType()); break; case VehicleBuildType.VehicleEngineCapacity: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseCapacity()); break; case VehicleBuildType.VehicleWeight: m_VehicleBuilder.AddComponent(ConsoleUtils.ParseWeight()); break; default: throw new ArgumentException("Unknown vehicle type"); } }