IAbilitySet

From Virtual World Web Wiki
Jump to: navigation, search

An Ability Set represents the combined set abilities available to a Connection Identity (See also IConnectionIdentity). Abilities are organized as a hierarchy if ability groups with abilities which can be enabled or blocked at any level. Abilities can be presented by UI Scripts, and when "fired" can be responded to by components to carry out all sorts of operations.

See also: Ability System

See also: UI Scripting

Remarks [edit]

Properties

IConnectionIdentity Identity {get;}
The Connection Identity who's abilities this set represents

Events

AbilityFired(EventHandler<AbilityEventArgs>)
Fired when the connected user fires an ability

Methods

bool AbilityExists(Guid abilityID)
Tests to see if the specified ability exists for this connection
bool Activate(Guid itemID)
Marks the ability as "in use" optionally beginning it's cooldown timer
bool Allow(Guid itemID)
Allows an ability or group to be enabled
void Clear()
Clears all abilities created by this component
bool CreateAbility(Guid abilityID, Guid parentGroupID, string identifier, Dictionary<string, object> initialMetadata = NULL, float? cooldown = NULL)
Creates a new ability
bool CreateGroup(Guid groupID, string identifier, Dictionary<string, object> initialMetadata = NULL, Guid? parentGroupID = NULL)
Creates a new ability group. You must create at least one group for your abilities
bool Deactivate(Guid itemID)
Marks the ability as no longer "in use" optionally resetting it's cooldown timer
bool Deny(Guid itemID)
Prevents an ability or group from being enabled
bool Disable(Guid itemID)
Disables an ability or group
bool Enable(Guid itemID)
Enables an ability or group
bool Execute(Guid abilityID, bool ignoreCooldown = false)
Attempts to execute the specified ability
IAbilityInfo GetAbilityInfo(Guid abilityID)
Gets an ability info strucrture for the requested ability
T GetItemMetadata<T>(Guid itemID, string name)
Gets a metatdata value from an ability or ability group
bool GroupExists(Guid groupID)
Tests to see if the specified ability group exists for this connection
bool Remove(Guid itemID)
Removes a group or ability
void RemoveItemMetadata(Guid itemID, string name)
Removes a metadata value from an ability or ability group
void SetItemMetadata(Guid itemID, string name, object value)
Sets a metadata value on an ability or ability group