Class VehicleModel.Builder

java.lang.Object
nl.sbdeveloper.vehiclesplus.api.vehicles.VehicleModel.Builder
Enclosing class:
VehicleModel

public static class VehicleModel.Builder extends Object
The builder class for constructing VehicleModel instances.
  • Method Details

    • id

      public VehicleModel.Builder id(String id)
      Sets the ID of the vehicle model.
      Parameters:
      id - The unique identifier.
      Returns:
      The builder instance.
    • displayName

      public VehicleModel.Builder displayName(String displayName)
      Sets the display name of the vehicle model.
      Parameters:
      displayName - The human-readable name.
      Returns:
      The builder instance.
    • typeId

      public VehicleModel.Builder typeId(String typeId)
      Sets the type ID of the vehicle model.
      Parameters:
      typeId - The type identifier.
      Returns:
      The builder instance.
    • price

      public VehicleModel.Builder price(double price)
      Sets the price of the vehicle model.
      Parameters:
      price - The cost of the vehicle.
      Returns:
      The builder instance.
    • permissions

      public VehicleModel.Builder permissions(Permissions permissions)
      Sets the permissions for the vehicle model.
      Parameters:
      permissions - The permissions object.
      Returns:
      The builder instance.
    • availableColors

      public VehicleModel.Builder availableColors(nl.sbdeveloper.vehiclesplus.utils.jackson.ColorList availableColors)
      Sets the available colors for the vehicle model.
      Parameters:
      availableColors - A list of available colors.
      Returns:
      The builder instance.
    • parts

      public VehicleModel.Builder parts(List<Part> parts)
      Adds multiple parts to the vehicle model.
      Parameters:
      parts - The list of parts to add.
      Returns:
      The builder instance.
    • part

      public VehicleModel.Builder part(Part part)
      Adds a single part to the vehicle model.
      Parameters:
      part - The part to add.
      Returns:
      The builder instance.
    • maxSpeed

      public VehicleModel.Builder maxSpeed(UpgradableSetting maxSpeed)
      Sets the maximum speed setting.
      Parameters:
      maxSpeed - The upgradable speed setting.
      Returns:
      The builder instance.
    • fuelTank

      public VehicleModel.Builder fuelTank(UpgradableSetting fuelTank)
      Sets the fuel tank capacity.
      Parameters:
      fuelTank - The upgradable fuel tank setting.
      Returns:
      The builder instance.
    • turningRadius

      public VehicleModel.Builder turningRadius(UpgradableSetting turningRadius)
      Sets the turning radius.
      Parameters:
      turningRadius - The upgradable turning radius setting.
      Returns:
      The builder instance.
    • acceleration

      public VehicleModel.Builder acceleration(UpgradableSetting acceleration)
      Sets the acceleration setting.
      Parameters:
      acceleration - The upgradable acceleration setting.
      Returns:
      The builder instance.
    • hitbox

      public VehicleModel.Builder hitbox(Hitbox hitbox)
      Sets the hitbox for the vehicle model.
      Parameters:
      hitbox - The hitbox object.
      Returns:
      The builder instance.
    • fuel

      public VehicleModel.Builder fuel(Fuel fuel)
      Sets the fuel type of the vehicle.
      Parameters:
      fuel - The fuel object.
      Returns:
      The builder instance.
    • exhaust

      public VehicleModel.Builder exhaust(Exhaust exhaust)
      Sets the exhaust system for the vehicle.
      Parameters:
      exhaust - The exhaust object.
      Returns:
      The builder instance.
    • horn

      public VehicleModel.Builder horn(Horn horn)
      Sets the horn for the vehicle.
      Parameters:
      horn - The horn object.
      Returns:
      The builder instance.
    • sounds

      public VehicleModel.Builder sounds(Sounds sounds)
      Sets the vehicle sounds.
      Parameters:
      sounds - The sounds object.
      Returns:
      The builder instance.
    • heightLimit

      public VehicleModel.Builder heightLimit(HeightLimit heightLimit)
      Sets the height limit for the vehicle.
      Parameters:
      heightLimit - The height limit object.
      Returns:
      The builder instance.
    • realisticSteering

      public VehicleModel.Builder realisticSteering(boolean realisticSteering)
      Enables or disables realistic steering.
      Parameters:
      realisticSteering - Boolean flag for realistic steering.
      Returns:
      The builder instance.
    • trunkSize

      public VehicleModel.Builder trunkSize(int trunkSize)
      Sets the trunk size of the vehicle.
      Parameters:
      trunkSize - The size of the trunk.
      Returns:
      The builder instance.
    • drift

      public VehicleModel.Builder drift(boolean drift)
      Enables or disables drifting capability.
      Parameters:
      drift - Boolean flag for drifting.
      Returns:
      The builder instance.
    • exitWhileMoving

      public VehicleModel.Builder exitWhileMoving(boolean exitWhileMoving)
      Allows exiting the vehicle while moving.
      Parameters:
      exitWhileMoving - Boolean flag for exit while moving.
      Returns:
      The builder instance.
    • health

      public VehicleModel.Builder health(int health)
      Sets the health points of the vehicle.
      Parameters:
      health - The health value.
      Returns:
      The builder instance.
    • gearbox

      public VehicleModel.Builder gearbox(Gearbox gearbox)
      Sets the gearbox for the vehicle.
      Parameters:
      gearbox - The gearbox object.
      Returns:
      The builder instance.
    • typeStrategies

      public VehicleModel.Builder typeStrategies(MovementStrategy... typeStrategies)
      Adds movement strategies to the vehicle.
      Parameters:
      typeStrategies - The movement strategies.
      Returns:
      The builder instance.
    • build

      public VehicleModel build()
      Builds and returns the VehicleModel instance.
      Returns:
      The constructed vehicle model.