Enderdragons+

33.4k Downloads

Enderdragons Plus

Description

The plugin controls the spawning of Enderdragons. It fixes the feature that Enderdragons will always fly to the point 0,70,0 if they have no target. It also gives the dragons a home position, where it will return, if he flies to far away.

The Plugin will replace all dragons witch are spawned by these dragons. (except they are not of class: net.minecraft.server.EntityEnderdragon). It is compatible with DragonTravel. It is compatible with RideThaDragon.

There are multiple possibility to configure Dragons. Also there is the possibility to have different Dragon types (different Ages of Dragons) on the Server (see the section Dragon Ages).

Also you can ride dragons with this plugin and fire fireballs while riding (pure Awsomeness)!!

IMPORTANT! This will only work with CraftBukkit!!! (Tested with Version 1.7.2 R0.1) All other Bukkit Implementation and Versions can work, but it is not guaranteed.

Commands

  • /edp : gives some info to the plugin
  • /sedp : spawns an EnderDragon.
  • /kedp [range] : kills all registered EnderDragons in the given range. range = 0 means All Enderdragons regardless of range and world.
  • /edpunload : unloads all EnderDragons to an extenal files.
  • /edpload : loads all external EnderDragons from files.
  • /edpinfo : gives info how many EnderDragons are loaded.
  • /edpreload : reloads the config of EnderDragons+.
  • /edpgohome : sends all Enderdragons to their Home-Locations
  • /edprespawner ... : does respawner commands
  • /edpride [speed] : lets you ride a dragon.

PermissionNodes

Permissions are bound to the commands:

  • edplus.create : /sedp
  • edplus.kill : /kedp [range]
  • edplus.commandback : /edpgohome
  • edplus.reloadconfig : /edpreload
  • edplus.unloadall : /edpuload
  • edplus.loadall : /edpload
  • edplus.info : /edpinfo
  • edplus.riding.ride : /edpride [speed]
  • edplus.riding.fireball : firing a fireball while riding a dragon (press q, key for throwing item away. Has to have an Item in hand)

Others:

  • edplus.targeting.ignore : The person gets ignored by Dragons
  • edplus.riding.fireball : fires a Fireball while riding with key 'q' (throw Item away).

Riding a Dragon

Simply use /edpride [speed] . The Speed is from very slow to unlimited. Recomondations are: slow: speed = 1, medium: speed = 3, fast: speed = 5.
You can Fire fireballs when riding a dragon. Simply press 'q' (throw Item away Key). Then The Dragon will fire a fireball on your Target location.

There are 2 Permissions. One for Riding, one for Fireball spitting. -> see Chapter: PermissionNodes.

Respawners:

IMPORTANT!!!!: if a player does not have the edplus.resawner.see Permission, he will not see the Respawner-Sign! Permissions:

  • edplus.respawner.create: '/edprespawner create <spawnername> [respawnTime] [dragons]' and '/edprespawner link <spawnername>'
  • edplus.respawner.remove: Hitting the sign to kill the respawner
  • edplus.respawner.clear: /edprespawner clear
  • edplus.respawner.info: /edprespawner info
  • edplus.respawner.debug: /edprespawner debugsigns
  • edplus.respawner.see: IMPORTANT: If the Player has this permission, he sees the Respawner Sign, if not, he does not see it!!
  • edplus.respawner.port: /edprespawner port [number]

Commands:

  • /edprespawner create <spawnername> [RespawnTime] [MaxDragons] : creates a respawner named: as in <spawnername>, with [RespawnTime] as respawn time and [MaxDragons] as maximum dragons at the same time (respawn time is in SECONDS).
  • /edprespawner link <spawnername> : links your current location to the spawner named in: <spawnername>
  • /edprespawner clear : clears all respawners and deletes them. (Emergency command)
  • /edprespawner info : gives info where and how many Respawners are.
  • /edprespawner debugsigns : if the respawner exists, but the Sign is not there, it will be replaced. ATTENTION, noticing, if the Sign is invisible!!
  • /edprespawner port <Respawner Name> [number] : ports to the respawner with the name in <Respawner Name> and the Number: [number] (can be seen on sign or with /edprespawner info)

The Plugin is compatible to the following PermissionSystems:

  • Vault
  • PermissionsEx
  • GroupManager
  • BukkitPermissions
  • bPermissions (experimental)
  • No permissions (Op only)

Config

The Configuration is mostly good documented (config.yml).

Dragon Ages

There is another configuration. The Dragon ages located in the ageTable.yml.

Different Dragons with different ages can be spawned. This makes it possible to have different difficulties (like: small, normal, hard, etc.). For further information and syntax look at: Dragon Ages.

API (for developer)

API class: de.tobiyas.enderdragonsplus.API.DragonAPI Methods:

  • public static boolean setTarget(LivingEntity dragon, LivingEntity target);
  • public static boolean setTarget(LivingEntity dragon, Player player);
  • public static boolean setTarget(LivingEntity dragon, Location location);
  • public static boolean sendHome(LivingEntity dragon);
  • public static boolean setNewHome(LivingEntity dragon, Location location);
  • public static boolean setNewHomeAndGoTo(LivingEntity dragon, Location location);
  • public static LivingEntity spawnNewEnderdragon(Location location);
  • public static boolean setPropertyToDragon(LivingEntity dragon, String property, Object value);
  • public static Object getPropertyToDragon(LivingEntity dragon, String property);
  • public static boolean spitFireballOnTarget(LivingEntity dragon, Entity target);

Information that has to be given (Disclaimer):

  • The Plugin is capable of uploading errors to a database. This is disabled by default. To Enable this feature, enable it in the configuration (uploadErrors: true).
  • The Plugin collects metric data for usage (https://mcstats.org/). This is enabled by default. To disable this feature, set the config option to false (uploadMetrics: false).

Known Bugs (V1.11.0)

  • On dragon reloading (chunk unload and reload) it will give a Bukkit warning that the dragon was stored wrong

Upcoming in next Version (V1.11.1)

  • Currently working on V1.11.1:
  • Untested:
  • Still missing: - Fire breath (70%, looks promising, but needs more testing)

Thanks To:

  • @NazzyDragon: for the Idea and the support for testing :)
  • @V10Lator: for the Plugin: RideThaDragon (gonna miss you :( thanks for the cool plugin!)
  • @XemsDoom, @Phiwa: for the Plugin: DragonTravel (gonna miss you :( thanks for the cool plugin!)
  • @CraftBukkit team: for the API and "cleaning" Notch's code

OTHER

If you want to help me by donating, this would be great! This Project consumes a lot of time. The changes the bukkit Team / Mojang do are not always that fine to look through. Donating always motivates to do more/better work ;) . The link is on the top right!

I need some 'Beta testing people' to help me find bugs to already existing stuff. :/ can't do coding + testing at once (unfortunately I only have 2 arms...).