# Class Hierarchy
Date: 2020-04-18

# Hierarchy For All Packages

Package Hierarchies:

- me.legofreak107.vehiclesplus,
- me.legofreak107.vehiclesplus.libraries.armorstands,
- me.legofreak107.vehiclesplus.libraries.chatinput,
- me.legofreak107.vehiclesplus.libraries.cloneable,
- me.legofreak107.vehiclesplus.libraries.commandlibrary,
- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations,
- me.legofreak107.vehiclesplus.libraries.commandlibrary.objects,
- me.legofreak107.vehiclesplus.libraries.commandlibrary.util,
- me.legofreak107.vehiclesplus.libraries.config,
- me.legofreak107.vehiclesplus.libraries.gui.objects,
- me.legofreak107.vehiclesplus.libraries.gui.objects.components,
- me.legofreak107.vehiclesplus.libraries.gui.objects.types,
- me.legofreak107.vehiclesplus.libraries.itemstacks,
- me.legofreak107.vehiclesplus.libraries.materialchecker,
- me.legofreak107.vehiclesplus.libraries.nbtsaving,
- me.legofreak107.vehiclesplus.libraries.serialization.annotations,
- me.legofreak107.vehiclesplus.libraries.serialization.config,
- me.legofreak107.vehiclesplus.libraries.serialization.custom,
- me.legofreak107.vehiclesplus.vehicles.api,
- me.legofreak107.vehiclesplus.vehicles.api.events,
- me.legofreak107.vehiclesplus.vehicles.api.objects.collision,
- me.legofreak107.vehiclesplus.vehicles.api.objects.custominput,
- me.legofreak107.vehiclesplus.vehicles.api.objects.spawn,
- me.legofreak107.vehiclesplus.vehicles.commands,
- me.legofreak107.vehiclesplus.vehicles.firstrun,
- me.legofreak107.vehiclesplus.vehicles.fuel,
- me.legofreak107.vehiclesplus.vehicles.hitbox,
- me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.enums,
- me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects,
- me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.components,
- me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.serializables,
- me.legofreak107.vehiclesplus.vehicles.listeners,
- me.legofreak107.vehiclesplus.vehicles.locale.enums,
- me.legofreak107.vehiclesplus.vehicles.locale.objects,
- me.legofreak107.vehiclesplus.vehicles.managers.collision,
- me.legofreak107.vehiclesplus.vehicles.managers.config,
- me.legofreak107.vehiclesplus.vehicles.managers.eco,
- me.legofreak107.vehiclesplus.vehicles.managers.main,
- me.legofreak107.vehiclesplus.vehicles.managers.skulls,
- me.legofreak107.vehiclesplus.vehicles.managers.sound,
- me.legofreak107.vehiclesplus.vehicles.menus,
- me.legofreak107.vehiclesplus.vehicles.reflection.movement,
- me.legofreak107.vehiclesplus.vehicles.reflection.versions,
- me.legofreak107.vehiclesplus.vehicles.rims,
- me.legofreak107.vehiclesplus.vehicles.settings,
- me.legofreak107.vehiclesplus.vehicles.vehicles.enums,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types,
- me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.base

## Class Hierarchy

- java.lang.Object
  - me.legofreak107.vehiclesplus.vehicles.commands.AddonCommand
  - me.legofreak107.vehiclesplus.vehicles.api.API
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.Argument
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.ArmorStand_1_12_2 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.ArmorStand_1_13 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.ArmorStand_1_13_1 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.ArmorStand_1_14 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.ArmorStand_1_15 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand)
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.BaseVehicle
  - me.legofreak107.vehiclesplus.libraries.chatinput.ChatConfirmation (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.libraries.chatinput.ChatConfirmCallback
  - me.legofreak107.vehiclesplus.libraries.cloneable.Clone
  - me.legofreak107.vehiclesplus.vehicles.managers.collision.CollisionManager
  - me.legofreak107.vehiclesplus.libraries.serialization.custom.ColorSerializer
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.util.CommandConstructor
  - me.legofreak107.vehiclesplus.libraries.config.ConfigConverter
  - me.legofreak107.vehiclesplus.vehicles.managers.config.ConfigManager
  - me.legofreak107.vehiclesplus.libraries.serialization.config.ConfigSerializer
  - me.legofreak107.vehiclesplus.libraries.armorstands.CustomArmorStand
  - me.legofreak107.vehiclesplus.libraries.gui.objects.CustomGui
    - me.legofreak107.vehiclesplus.libraries.gui.objects.types.ConfirmGui (implements org.bukkit.event.Listener)
    - me.legofreak107.vehiclesplus.libraries.gui.objects.types.NormalGui (implements org.bukkit.event.Listener)
    - me.legofreak107.vehiclesplus.libraries.gui.objects.types.PaginationGui (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.libraries.itemstacks.CustomItemStack
  - me.legofreak107.vehiclesplus.vehicles.managers.eco.EcoManager
  - me.legofreak107.vehiclesplus.vehicles.listeners.EntityDismount (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.vehicles.listeners.EntityInteractAtEntity (implements org.bukkit.event.Listener)
  - org.bukkit.event.Event
    - me.legofreak107.vehiclesplus.vehicles.api.events.ClickVehicleEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.SendKeyEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleCollisionEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleDamageEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleDestroyEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleEnterEvent (implements org.bukkit.event.Cancellable)
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleLeaveEvent
    - me.legofreak107.vehiclesplus.vehicles.api.events.VehicleSpawnEvent (implements org.bukkit.event.Cancellable)
  - me.legofreak107.vehiclesplus.vehicles.firstrun.FirstRun
  - me.legofreak107.vehiclesplus.vehicles.commands.FuelCommand
  - me.legofreak107.vehiclesplus.vehicles.fuel.FuelItem
  - me.legofreak107.vehiclesplus.vehicles.fuel.FuelType
  - me.legofreak107.vehiclesplus.libraries.gui.objects.components.GuiItem
  - me.legofreak107.vehiclesplus.libraries.gui.objects.components.GuiPage (implements org.bukkit.inventory.InventoryHolder)
  - me.legofreak107.vehiclesplus.vehicles.hitbox.HitBox
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler_1_12_2 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler_1_13 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler_1_13_1 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler_1_14 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler_1_15 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler)
  - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.InputManager
  - me.legofreak107.vehiclesplus.libraries.serialization.custom.InventorySerializer
  - me.legofreak107.vehiclesplus.libraries.serialization.custom.ItemStackSerializer
  - me.legofreak107.vehiclesplus.vehicles.listeners.KeyPress (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.LibraryCommand
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.LibraryCommandExecutor (implements org.bukkit.command.CommandExecutor)
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.LibraryTabCompleter (implements org.bukkit.command.TabCompleter)
  - me.legofreak107.vehiclesplus.vehicles.locale.objects.Locale
  - me.legofreak107.vehiclesplus.vehicles.managers.main.MainManager
  - me.legofreak107.vehiclesplus.vehicles.menus.MainVehicleMenu
  - me.legofreak107.vehiclesplus.libraries.materialchecker.MaterialChecker
  - me.legofreak107.vehiclesplus.vehicles.api.objects.custominput.MovementInput
  - me.legofreak107.vehiclesplus.vehicles.reflection.movement.MovementMethods
  - me.legofreak107.vehiclesplus.libraries.nbtsaving.NBTSave
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack_1_12_2 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack_1_13 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack_1_13_1 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack_1_14 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack)
  - me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack_1_15 (implements me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack)
  - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.serializables.Offset
  - me.legofreak107.vehiclesplus.libraries.nbtsaving.Pair<L,R>
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.Part
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.Colorable
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.Addon
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.Rotor
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.Skin
        - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.BikeSkin
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.Turret
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.Wheel
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats.Seat
      - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats.ControllingSeat
        - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats.BikeSeat
        - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats.TurretSeat
  - me.legofreak107.vehiclesplus.vehicles.listeners.PlayerJoin (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.vehicles.listeners.PlayerQuit (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.libraries.gui.objects.types.PlayerSelectionGui
  - org.bukkit.plugin.PluginBase (implements org.bukkit.plugin.Plugin)
    - org.bukkit.plugin.java.JavaPlugin
      - me.legofreak107.vehiclesplus.libraries.commandlibrary.CommandLibrary
      - me.legofreak107.vehiclesplus.Main
  - me.legofreak107.vehiclesplus.vehicles.settings.PluginSettings
  - me.legofreak107.vehiclesplus.vehicles.rims.RimDesign
  - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.components.Seat
  - me.legofreak107.vehiclesplus.vehicles.managers.skulls.SkullManager (implements org.bukkit.event.Listener)
  - me.legofreak107.vehiclesplus.vehicles.managers.sound.SoundManager
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.SpawnedVehicle
  - me.legofreak107.vehiclesplus.libraries.config.StorageConverter
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageFuel
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageHitbox
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageHorn
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageSmoke
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageUpgradeable
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.StorageVehicle
  - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.SubCommand
  - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Vehicle
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Bike
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Boat
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Car
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Helicopter
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Plane
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Speeder
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.objects.Tank
  - me.legofreak107.vehiclesplus.vehicles.menus.VehicleAddonMenu
  - me.legofreak107.vehiclesplus.vehicles.menus.VehicleEnterMenu
  - me.legofreak107.vehiclesplus.vehicles.commands.VehiclesCommand
  - me.legofreak107.vehiclesplus.vehicles.menus.VehicleSettingsMenu
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.VehicleStats
  - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.base.VehicleType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.BikeType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.BoatType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.CarType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.HelicopterType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.HovercraftType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.PlaneType
  - me.legofreak107.vehiclesplus.vehicles.menus.VehicleUpgradeMenu

## Interface Hierarchy

- me.legofreak107.vehiclesplus.vehicles.reflection.versions.InputHandler
- me.legofreak107.vehiclesplus.vehicles.reflection.versions.MyArmorStand
- me.legofreak107.vehiclesplus.vehicles.reflection.versions.NMSItemStack

## Annotation Type Hierarchy

- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations.SubCommand (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations.TabCompleter (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.serialization.annotations.VPSerializable (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.serialization.annotations.IncludeInSerialize (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations.Indefinite (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations.Command (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.serialization.annotations.IncludeInBaseSerialize (implements java.lang.annotation.Annotation)
- me.legofreak107.vehiclesplus.libraries.commandlibrary.annotations.Optional (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - me.legofreak107.vehiclesplus.vehicles.vehicles.enums.MovementType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.enums.MomentumType
    - me.legofreak107.vehiclesplus.vehicles.vehicles.enums.TiltType
    - me.legofreak107.vehiclesplus.vehicles.api.objects.spawn.SpawnMode
    - me.legofreak107.vehiclesplus.libraries.gui.objects.MenuItem
    - me.legofreak107.vehiclesplus.vehicles.api.objects.collision.CollisionMode
    - me.legofreak107.vehiclesplus.libraries.commandlibrary.objects.ArgumentOption
    - me.legofreak107.vehiclesplus.vehicles.locale.enums.Message
    - me.legofreak107.vehiclesplus.vehicles.hitbox.HitBoxSide
    - me.legofreak107.vehiclesplus.libraries.nbtsaving.NBTDataType
    - me.legofreak107.vehiclesplus.vehicles.legacy.vehicles.enums.VehicleType