Package-level declarations

Contains all the ability related stuff

Types

Link copied to clipboard

Enum used to easily access most simple ability types

Link copied to clipboard
abstract class AbilityBase(val type: AbilityType, val name: String, val description: String, val cost: AbilityCost? = null) : MacrocosmAbility

An abstract wrapper class for the MacrocosmAbility interface, allowing for easier abstraction

Link copied to clipboard
data class AbilityCost(val mana: Int = 0, val health: Int = 0, val cooldown: Number = 0, val summonDifficulty: Int = 0)

Cost of the ability in mana, health and cooldown

Link copied to clipboard

Represents type of the ability, used for lore manipulations only

Link copied to clipboard
abstract class AccessoryAbility(accs: String, val description: String) : AbilityBase
Link copied to clipboard
abstract class EquipmentAbility(val name: String, val description: String) : AbilityBase

An abstract class describing an ability bound to equipment items

Link copied to clipboard
open class FullSetBonus(val name: String, val description: String, val threePiece: Boolean = false) : AbilityBase

A wrapper for abstract AbilityBase, which provides some minor features. Can also be inherited for more abstraction.

Link copied to clipboard

Represents an item ability, that can execute various actions.

Link copied to clipboard
open class TieredSetBonus(val name: String, val description: String) : AbilityBase

Represents a tiered set bonus, that increases buffs based on amount of armor pieces worn