Interface MythicMob

All Superinterfaces:
Comparable<MythicMob>
All Known Implementing Classes:
MobType

public interface MythicMob extends Comparable<MythicMob>
Represents a custom mob type
Author:
Ashijin
  • Method Details

    • getInternalName

      String getInternalName()
      Gets the internal name of the mob type
      Returns:
      String
    • getPack

      Pack getPack()
      Gets the pack the mob is located in
    • getFile

      File getFile()
      Gets the file the mob type is located in
      Returns:
      String
    • buildCache

      void buildCache()
      Rebuilds the menu item
    • getDisplayName

      PlaceholderString getDisplayName()
      Gets the display name of the mob type
      Returns:
      String
    • setDisplayName

      void setDisplayName(PlaceholderString display)
      Sets the display name of the mob type
    • getEntityType

      MythicEntityType getEntityType()
      Gets the entity type of the mob
      Returns:
      MythicEntityType
    • setEntityType

      void setEntityType(MythicEntityType type)
      Sets the entity type of the mob
    • getEntityTypeString

      String getEntityTypeString()
      Gets the string name of the entity type of the mob type
      Returns:
      String
    • getMythicEntity

      BukkitEntityType getMythicEntity()
      Gets the MythicEntity object for the mob type
      Returns:
      MythicEntity
      See Also:
    • getDespawnMode

      DespawnMode getDespawnMode()
      Gets the method by which this mob despawns
      Returns:
      DespawnMode
    • getEggDisplay

      String getEggDisplay()
    • getModel

      MobModel getModel()
    • getDropTable

      DropTable getDropTable()
    • getEquipmentTable

      DropTable getEquipmentTable()
    • getOptionLockPitch

      Boolean getOptionLockPitch()
    • getDamageModifiers

      Map<String,Double> getDamageModifiers()
    • getEntityDamageModifiers

      Map<String,Double> getEntityDamageModifiers()
    • getAiNavigator

      String getAiNavigator()
    • isUsingTimers

      boolean isUsingTimers()
    • getNoDamageTicks

      int getNoDamageTicks()
    • getMaxAttackRange

      int getMaxAttackRange()
    • getMaxAttackableRange

      int getMaxAttackableRange()
    • getMaxThreatDistance

      int getMaxThreatDistance()
    • isUseCustomNameplate

      boolean isUseCustomNameplate()
    • getRepeatAllSkills

      Boolean getRepeatAllSkills()
    • getPreventOtherDrops

      Boolean getPreventOtherDrops()
    • getPreventRandomEquipment

      Boolean getPreventRandomEquipment()
    • getPreventLeashing

      Boolean getPreventLeashing()
    • getPreventRename

      Boolean getPreventRename()
    • getPreventEndermanTeleport

      Boolean getPreventEndermanTeleport()
    • getPreventItemPickup

      Boolean getPreventItemPickup()
    • getPreventSilverfishInfection

      Boolean getPreventSilverfishInfection()
    • getPreventSunburn

      Boolean getPreventSunburn()
    • getPreventExploding

      Boolean getPreventExploding()
    • getPreventMobKillDrops

      Boolean getPreventMobKillDrops()
    • getPreventTransformation

      Boolean getPreventTransformation()
    • getPreventMounts

      Boolean getPreventMounts()
    • getPassthroughDamage

      Boolean getPassthroughDamage()
    • getApplyInvisibility

      Boolean getApplyInvisibility()
    • getDigOutOfGround

      Boolean getDigOutOfGround()
    • getUsesHealthBar

      Boolean getUsesHealthBar()
    • getSpawnVelocityX

      double getSpawnVelocityX()
    • getSpawnVelocityXMax

      double getSpawnVelocityXMax()
    • getSpawnVelocityY

      double getSpawnVelocityY()
    • getSpawnVelocityYMax

      double getSpawnVelocityYMax()
    • getSpawnVelocityZ

      double getSpawnVelocityZ()
    • getSpawnVelocityZMax

      double getSpawnVelocityZMax()
    • getSpawnVelocityXRange

      Boolean getSpawnVelocityXRange()
    • getSpawnVelocityYRange

      Boolean getSpawnVelocityYRange()
    • getSpawnVelocityZRange

      Boolean getSpawnVelocityZRange()
    • getDisguise

      String getDisguise()
    • isFakePlayer

      boolean isFakePlayer()
    • getConfig

      MythicConfig getConfig()
      Returns:
      MythicConfig The configuration section for the mob
    • spawn

      default ActiveMob spawn(AbstractLocation location, double level)
      Spawns this mob type
      Parameters:
      location - The location to spawn the mob at
      level - The level of the mob to spawn
      Returns:
      ActiveMob The instance of the spawned mob
      See Also:
    • spawn

      ActiveMob spawn(AbstractLocation location, double level, SpawnReason reason)
      Spawns this mob type
      Parameters:
      location - The location to spawn the mob at
      level - The level of the mob to spawn
      reason - The reason the mob is being spawned
      Returns:
      ActiveMob The instance of the spawned mob
      See Also:
    • spawn

      ActiveMob spawn(AbstractLocation location, double level, SpawnReason reason, Consumer<org.bukkit.entity.Entity> prespawnFunc)
      Spawns this mob type
      Parameters:
      location - The location to spawn the mob at
      level - The level of the mob to spawn
      reason - The reason the mob is being spawned
      Returns:
      ActiveMob The instance of the spawned mob
      See Also:
    • spawn

      ActiveMob spawn(AbstractLocation location, double level, SpawnReason reason, Consumer<org.bukkit.entity.Entity> prespawnFunc, MythicSpawner spawner)
    • applyMobOptions

      ActiveMob applyMobOptions(ActiveMob am, double level)
      Applies the options relating to this mob type to an entity
      Parameters:
      am - The ActiveMob instance to apply the options to
      level - The mob level to apply and scale with
      Returns:
      ActiveMob The updated ActiveMob instance
      See Also:
    • applyMobVolatileOptions

      ActiveMob applyMobVolatileOptions(ActiveMob am)
      Applies all volatile options relating to this mob type to an entity Volatile options must be applied after every server restart
      Parameters:
      am - The ActiveMob instance to apply the options to
      Returns:
      ActiveMob The updated ActiveMob instance
      See Also:
    • applySpawnModifiers

      ActiveMob applySpawnModifiers(ActiveMob am)
      Applies Spawn Modifiers to the given mob for this mob type Spawn Modifiers are only applied when the mob is spawned
      Parameters:
      am - The ActiveMob instance to apply the options to
      Returns:
      ActiveMob The updated ActiveMob instance
      See Also:
    • executeSkills

      void executeSkills(SkillTrigger cause, SkillMetadata data)
    • executeSignalSkill

      void executeSignalSkill(String signal, SkillMetadata data)
    • getSkills

      Queue<SkillMechanic> getSkills(SkillTrigger trigger)
    • hasSkills

      boolean hasSkills(SkillTrigger trigger)
    • getTimerSkills

      Queue<SkillMechanic> getTimerSkills()
    • getAttrHealth

      PlaceholderDouble getAttrHealth()
    • setAttrHealth

      void setAttrHealth(PlaceholderDouble value)
    • getAttrDamage

      PlaceholderDouble getAttrDamage()
    • setAttrDamage

      void setAttrDamage(PlaceholderDouble value)
    • getAttrArmor

      PlaceholderDouble getAttrArmor()
    • setAttrArmor

      void setAttrArmor(PlaceholderDouble value)
    • getAttrMovementSpeed

      PlaceholderDouble getAttrMovementSpeed()
    • setAttrMovementSpeed

      void setAttrMovementSpeed(PlaceholderDouble value)
    • getPerLevelHealth

      double getPerLevelHealth()
      Gets the health scaling value of the mob type
      Returns:
      double
    • getPerLevelDamage

      double getPerLevelDamage()
    • getPerLevelPower

      double getPerLevelPower()
    • getArmor

      PlaceholderDouble getArmor()
    • getPerLevelArmor

      double getPerLevelArmor()
    • getArmor

      double getArmor(ActiveMob am)
    • getDamage

      PlaceholderDouble getDamage()
    • getDamage

      double getDamage(ActiveMob am)
    • getMovementSpeed

      double getMovementSpeed(ActiveMob am)
    • getReviveHealth

      double getReviveHealth(ActiveMob am)
    • getFlyingSpeed

      double getFlyingSpeed(ActiveMob am)
    • getKnockbackResistance

      double getKnockbackResistance(double level)
    • getAttackSpeed

      double getAttackSpeed(double level)
    • hasFaction

      boolean hasFaction()
    • getFaction

      String getFaction()
    • setFaction

      void setFaction(String value)
    • getHealth

      PlaceholderDouble getHealth()
    • getHealth

      double getHealth(ActiveMob am)
    • getIsInvincible

      boolean getIsInvincible()
    • usesThreatTable

      boolean usesThreatTable()
    • usesImmunityTable

      boolean usesImmunityTable()
    • getThreatTableUseDamageTaken

      boolean getThreatTableUseDamageTaken()
    • getThreatTableDecaysUnreachable

      boolean getThreatTableDecaysUnreachable()
    • getLevelModifiers

      List<String> getLevelModifiers()
    • getAIGoalSelectors

      List<String> getAIGoalSelectors()
    • getAITargetSelectors

      List<String> getAITargetSelectors()
    • hasKillMessages

      boolean hasKillMessages()
    • getKillMessage

      PlaceholderString getKillMessage()
    • getIsInteractable

      boolean getIsInteractable()
    • usesBossBar

      boolean usesBossBar()
    • getBossBarRangeSquared

      int getBossBarRangeSquared()
    • getBossBar

      Optional<AbstractBossBar> getBossBar()
    • getBossBarTitle

      PlaceholderString getBossBarTitle()
    • getShowHealthInChat

      boolean getShowHealthInChat()
    • getShowNameOnDamaged

      boolean getShowNameOnDamaged()
    • getStats

    • getSpeechBubbleOffset

      float getSpeechBubbleOffset()