Class AbstractKingdomBuildingManager<T extends KingdomBuilding<?>>

java.lang.Object
org.kingdoms.managers.buildings.structures.AbstractKingdomBuildingManager<T>
All Implemented Interfaces:
org.kingdoms.constants.land.KingdomBuildingHandler<T>, org.kingdoms.constants.namespace.Namespaced
Direct Known Subclasses:
StructureManager, TurretManager

public abstract class AbstractKingdomBuildingManager<T extends KingdomBuilding<?>> extends Object implements org.kingdoms.constants.land.KingdomBuildingHandler<T>
  • Constructor Details

    • AbstractKingdomBuildingManager

      public AbstractKingdomBuildingManager()
  • Method Details

    • evaluateConditions

      @Nullable public static @Nullable Messenger evaluateConditions(KingdomBuilding<?> building, String type)
    • handleManualBreak

      public Messenger handleManualBreak(org.kingdoms.managers.land.block.KingdomsBlockBreakContext<? extends KingdomBuilding<?>> context)
    • buildingInfo

      protected abstract AbstractKingdomBuildingManager<T>.Info buildingInfo()
    • canBePlacedInWorld

      protected static boolean canBePlacedInWorld(KingdomBuilding<?> building, org.bukkit.entity.Player player)
    • onUpgrade

      @Nullable public @Nullable Messenger onUpgrade(@NotNull @NotNull org.kingdoms.managers.land.block.KingdomsBlockUpgradeContext<T> context)
      Specified by:
      onUpgrade in interface org.kingdoms.constants.land.KingdomBuildingHandler<T extends KingdomBuilding<?>>
    • onRepair

      @Nullable public @Nullable Messenger onRepair(@NotNull @NotNull org.kingdoms.managers.land.block.KingdomsBlockRepairContext<T> context)
      Specified by:
      onRepair in interface org.kingdoms.constants.land.KingdomBuildingHandler<T extends KingdomBuilding<?>>
    • onInteract

      public Messenger onInteract(@NotNull @NotNull org.kingdoms.managers.land.block.KingdomsBlockInteractContext<T> context)
      Specified by:
      onInteract in interface org.kingdoms.constants.land.KingdomBuildingHandler<T extends KingdomBuilding<?>>
    • onPlace

      public Messenger onPlace(@NotNull @NotNull org.kingdoms.managers.land.block.KingdomsBlockPlaceContext<T> context)
      Specified by:
      onPlace in interface org.kingdoms.constants.land.KingdomBuildingHandler<T extends KingdomBuilding<?>>
    • onBreak

      public Messenger onBreak(@NotNull @NotNull org.kingdoms.managers.land.block.KingdomsBlockBreakContext<T> context)
      Specified by:
      onBreak in interface org.kingdoms.constants.land.KingdomBuildingHandler<T extends KingdomBuilding<?>>