SkillAPI v2.18

Details

  • Filename
    SkillAPI.zip
  • Uploaded by
  • Uploaded
    Dec 10, 2013
  • Size
    431.44 KB
  • Downloads
    255
  • MD5
    bba4655777df4c1ed956acc157cc2fec

Supported Bukkit Versions

  • CB 1.6.2-R1.0

Changelog

v2.18 - 12/11/13
  • Added a getPlayer() method in PlayerSkills
  • Added a startPassiveAbilities() method in PlayerSkills
  • Added a new option to the Particle mechanic to access the new particle effects
  • Added a build compatible with CraftBukkit 1.5.2
  • Changed APIListener to SkillListener to fix a weird issue
  • Changed custom projectile damage to take materials instead of classes
  • Changed the default period attribute for dynamic skills to 3 (+0) from 3 (+1)
  • Changed the new particles to run more efficiently
  • Fixed projectile damage not applying properly
  • Fixed dynamic classes defaulting to false for gaining mana
  • Fixed passives not working after death
  • Fixed SkillMeta static methods not working
  • Fixed the Target Area target type from not loading correctly from the tool
  • Fixed the new particles not working in 1.7.2
v2.17 - 12/8/13
  • Added a skill*friendly option for DOTs
  • Added 35 new particle effects
  • Changed skill indicators to ItemStacks instead of Materials
  • Changed the Status mechanic to apply max slow potion to mobs for stun and root instead of do nothing
  • Fixed invincible enemies begin considered allies
  • Fixed all enemies being considered allies when class damage is less than normal damage
  • Fixed tamed creatures from being considered enemies
  • Fixed the caster from being considered an enemy sometimes
  • Fixed DOTs running 20x slower than they should
  • Fixed projectiles not firing the correct amount
  • Fixed the class name formatting upon profession
  • Fixed the AttackModifier mechanic not applying to the targets
v2.16 - 11/30/13
  • Added the ability to downgrade skills on right click
  • Added PlayerHealEvent
  • Added PlayerSkillHealEvent
  • Added PlayerSkillDowngradeEvent
  • Added config option to disable checks for lore requirements
  • Added a heal method in PlayerSkills for specifying the skill and healer
  • Changed lore requirements not function in creative mode due to issues
  • Fixed PlayerSkills.heal not behaving correctly with old health bars
  • Fixed skill points not subtracting the correct amounts on upgrade
  • Fixed a click combo of all left clicks from not being possible
  • Fixed strictly passive dynamic skills still receiving a click combo
  • Worked on comments
v2.15 - 11/26/13
  • Added support for double values with attributes
  • Added a method to PlayerSkills to get a player's max mana
  • Added a rainProjectiles method to ProjectileHelper
  • Fixed dynamic skills with multiple effects not working properly
  • Fixed weapon damage modifying skill damage
  • Fixed custom items dealing 1 damage
  • Fixed Cleanse effects from not retrieving the right value
  • Fixed Condition effects from not retrieving the right value
v2.14 - 11/24/13
  • Added the Chance effect
  • Added the Cleanse effect
  • Added the Condition effect
  • Added the Delay effect
  • Added how many levels were gained in PlayerLevelUpEvent
  • Added the hasStatuses() method to StatusHolder
  • Changed PlayerOnHitEvent and PlayerOnDamagedEvent to be called every damage attempt
  • Changed roots to allow turning
  • Fixed multiple dynamic effects not working
  • Fixed setting a class to an invalid, but non-null class from other plugins
  • Fixed class health not applying when old health bars are enabled
  • Fixed the Sound effect not retrieving the right value for its volume
  • Fixed AttackModifier effects not working passively or when embedded
  • Fixed DOT effects not working passively or when embedded
  • Fixed HOT effects not working passively or when embedded
  • Fixed projectile mechanics not registering their embedded usage
  • Removed a reference to MCCore that caused problems when it isn't installed
  • Reworked SkillMeta to work with multiple skills and be easier to use
v2.13 - 11/21/13
  • Added the "Skill" AttackType for when skills deal damage
  • Added the PlayerOnSkillHitEvent
  • Added the SpecialEntityDamagedByEntityEvent
  • Added the beginUsage() and stopUsage() methods to ClassSkill to work with the new events
  • Added multiple requirement support for armor requirement lores
  • Fixed SoundMechanic not working
  • Fixed DamageMechanic not giving credit to the caster
  • Fixed when the PlayerOnAttackEvent and PlayerOnHitEvents were called
v2.12 - 11/20/13
  • Fixed the double .yml suffix on the dynamic configs
v2.11 - 11/120/13
  • Added blocking mob spawner experience
  • Added blocking mob egg experience
  • Added an IStatus interface for custom statuses
  • Changed PlayerSkills.heal(int) to now accept a double
  • Changed StatusHolder to use IStatus
  • Fixed damage modifiers not expiring correctly (thanks ct63960)
  • Moved registration/accessors for classes/skills into a manager
  • Removed an unwanted MCCore reference
v2.10 - 11/17/13
  • Added permission checks for experience gain, skill usage, damage modification, and a few other mechanics
  • Added an option to show player level/exp in the enchanting level bar
  • Added an option to use click combos along with binds
  • Added a CooldownManager utility class in case someone needs cooldowns outside of the provided one
  • Fixed the comment not displaying the right formula for experience requirements
v2.9 - 11/16/13
  • Added the DOT effect
  • Added the HOT effect
  • Added a DOT helper class accessible through SkillAPI.getDOTHelper()
  • Added helper methods for saving player data
  • Added methods to increase or decrease skill cooldowns by a number of seconds
  • Fixed SkillAPI.getPlayer(String) from returning null sometimes
  • Fixed the reload command from breaking when players didn't have a class
  • Fixed experience formula not being the correct format
  • Fixed PlayerSkills.addMaxHeath(int) giving all players with the same class health
  • Made significant changes to the comments
  • Removed the SkillAPI.addPlayer(PlayerSkills) method
v2.8 - 11/15/13
  • Added Sound effect
  • Added support for setting the damage of custom projectiles for classes in code
  • Fixed classes not saving mana variables
v2.7 - 11/14/13
  • Added Attack Modifier effect
  • Added Lightning effect
  • Added "Potion Break" option to particle effects (value is 3)
  • Added a data value to particle effects for the potion break particle
  • Added custom item support for setting class damage in code
  • Added a data option to the ParticleHelper methods
  • Added an attack type to the PlayerOnHitEvent and PlayerOnDamagedEvent
  • Added class armor exclusion
  • Fixed potion effects not having the right duration
  • Fixed the default damage amounts for tools
v2.6 - 11/12/13
  • Added a Circle option to Projectile effects (non-horizontal)
  • Added a ProjectileHelper class for firing projectiles
  • Fixed problems with the join event
  • Fixed projectile damage events
  • Moved the horizontal circle implementation in the Projectile effect into the new helper class
v2.5 - 11/11/13
  • Added Particle mechanic
  • Fixed bug with colorless prefixes
v2.4 - 11/7/13
  • Added Basic Vertical tree arrangement
  • Added Level Vertical tree arrangement
  • Added Level Horizontal tree arrangement
  • Added option to disable passive mana gain for specific classes
  • Added option to change the display name of mana for specific classes
  • Fixed loading in some values from dynamic configs from the external tool
v2.3 - 10/31/13
  • Added a new skill tree arrangement
  • Added a config option for skill tree arrangement
  • Added projectile type value for dynamic projectile effects
  • Added teleport effect
  • Added teleport target effect
  • Changed default profess-reset option to false from true
  • Fixed implementation for old health bars so it is more compatible with other plugins
  • Fixed player damage events from calling on each attempt at damage, rather than when damage is dealt
  • Moved skill tree mechanics from CustomClass into the SkillTree class
v2.2 - 10/26/13
  • Added damage reduction effect
  • Added damage percent reduction effect
  • Added projectile effect
  • Added embedded mechanics (only used by projectile effects so far)
  • Added item requirements for skills
  • Fixed passive abilities not registering attributes correctly
  • Fixed enemy group including the caster
v2.1 - 10/24/13
  • Added Mana effect
  • Added Mana Damage effect
  • Fixed Damage Bonus effects and Damage Percent mechanics from not being detected
  • Fixed an incorrect import causing problems when not using MCCore
v2.0 - 10/22/13
  • Added dynamic skills
  • Added dynamic classes
  • Added a restriction on skill tree size to prevent glitched skill tree menus
  • Added a StatusHolder class for players and mobs
  • Added statuses working on mobs
  • Added damage bonuses and multipliers for players and mobs
  • Added a hasClass helper method to PlayerSkills
  • Changed return type of PlayerSkillUnlockEvent.getUnlockedSkill() to ClassSkill
  • Changed return type of PlayerSkillUpgradeEvent.getUpgradedSkill() to ClassSkill
  • Changed return type of SkillAPI.getSkill(String) to ClassSkill
  • Changed return type of SkillAPI.getClass(String) to CustomClass
  • Fixed class names being displayed as how you entered them
  • Fixed custom mana amounts not working
  • Fixed errors when a skill was removed from a class
  • Fixed resetting on profession not refunding skill points
  • Fixed professing into a class, that doesn't inherit the previous class, not refunding skill points
  • Fixed passive abilities not being cancelled when professing into a class without the skill
  • Fixed class inheritance
  • Moved PlayerSkills from com.sucy.skill.skill to com.sucy.skill.api
  • Moved SkillTreeException from com.sucy.skill.skill to com.sucy.skill.api
  • Removed player damage bonuses from CustomClass
  • Removed Skill class and moved functionality into ClassSkill
  • Removed SkillTree class and moved functionality into CustomClass
v1.4 - 10/14/13
  • Added dynamic values to players (setValue, getValue, addValue, subtractValue, and hasValue methods)
  • Added getLivingTargets method to TargetHelper to get all targets along a players vision line
  • Changed the return type of PlayerSkills.getSkills from Hashtable to HashMap
  • Fixed TargetHelper.getLivingTarget from getting a random target instead of the closest one
  • Fixed the output filter for the options command
v1.3 - 10/12/13
  • Added a config option for skill points gained per level
  • Added an addMaxHealth(int) method for giving players more health
  • Added an API reference to ClassSkill so all skills can easily access the API
  • Fixed settings config values not showing up in older config files
  • Renamed PlayerSkills.setMaxHealth(int) to PlayerSkills.applyMaxHealth(int)
v1.2 - 10/10/13
  • Added built-in statuses with language options
  • Added a PlayerStatusEvent
  • Added a heal(int) method to PlayerSkills
v1.1 - 10/9/13
  • Added an option to use the old health bar mechanics
  • Added a cast method to the PlayerSkills class to easily cast skills
  • Added a reload admin command
  • Added permissions per class
  • Fixed hybrid spells that used PassiveSkill to not work with /cast
v1.0 - 10/8/13
  • Added lore equipment requirements
  • Fixed skills having separate cooldowns on two items for the same skill
  • Fixed an NPE when calculating custom damage
  • Fixed the reset command
  • Moved ManaTask from com.sucy.skill.skills to com.sucy.skill.tasks
v0.8 - 10/4/13
  • Added compatibility for target skills with the /cast command
  • Added the Range default attribute for target skills
  • Added a TargetHelper class to get a target the player is looking at
  • Added methods to ClassSkill to manage cooldowns
  • Added a method to ClassSkill to get the status of the skill for a player
  • Added maximum levels for classes
  • Added an admin command to give player levels
  • Added messages in the language config
  • Fixed skill requirements not showing up in the skill tree
  • Fixed skill requirements not being checked while leveling up skills
  • Fixed skill attributes showing stats past the max level
  • Fixed cooldown and mana not being checked or applied in the /cast command
  • Renamed TreeValues to ClassValues
v0.7 - 10/3/13
  • Fixed another problem when MCCore is not installed
v0.6 - 10/3/13
  • Added a particle effect helper class
  • Fixed an error when MCcore is not installed
  • Fixed an error on plugin disable
  • Moved the AttributeHelper class functions into the Attributed class
  • Renamed DefaultAttributes to SkillAttributes
  • Removed some accessor methods from the Skill class
v0.5 - 10/3/13
  • Added an abstract Attributed class that now works with the AttributeHelper class
  • Added checks to make sure registration is happening correctly
  • Added checks to make sure attributes aren't being re-defined
  • Added many comments and clarifications for the Javadocs
  • Changed health and mana for classes to attributes
  • Changed ClassSkill to extend Attributed (has the same methods though)
  • Changed CustomClass to extend Attributed (get/set health/mana is now different)
  • Moved the configured health/mana data into CustomClass
  • Renamed Class back to SkillTree
v0.4 - 10/2/13
  • Added the scoreboard titles to the language config
  • Added level up, cooldown, and mana messages to the language config
  • Added the PlayerClassChangeEvent
  • Added the PlayerExperienceGainEvent
  • Added the PlayerLevelUpEvent
  • Added the PlayerManaGainEvent
  • Added the PlayerManaUseEvent
  • Added the PlayerSkillUnlockEvent
  • Added the PlayerSkillUpgradeEvent
  • Added controlling health in CustomClass
  • Added controlling mana in CustomClass
  • Fixed a bug with saving/loading player data
  • Removed debug messages for the skill tree generation
v0.3 - 10/2/13
  • Added a Protection utility class to determine allies from enemies
  • Added command messages to the language configuration
  • Changed the name of the Default class to DefaultAttributes
  • Changed the DefaultAttributes to be strings rather than enum values
  • Changed packages around (likely won't happen again)
  • Changed player arguments to not be case-sensitive
  • Fixed the API requiring MCCore when it should be optional
  • Fixed a bug with instantiating player data
  • Renamed SkillTree to Class
v0.2 - 10/1/13
  • Added the stopEffects(Player, int) method to the PassiveSkill interface
  • Made the skill description in skill trees configurable
v0.1 - 9/29/13
  • Initial Release