-- @field [parent=#SkillProgression] #number version
version=0,
--- Add new skill level up handler for this actor
--- Add new skill level up handler for this actor.
-- For load order consistency, handlers should be added in the body if your script.
-- If `handler(skillid, source, options)` returns false, other handlers (including the default skill level up handler)
-- will be skipped. Where skillid and source are the parameters passed to @{SkillProgression#skillLevelUp}, and options is
-- will be skipped. Where skillid and source are the parameters passed to @{#skillLevelUp}, and options is
-- a modifiable table of skill level up values, and can be modified to change the behavior of later handlers.
-- These values are calculated based on vanilla mechanics. Setting any value to nil will cause that mechanic to be skipped. By default contains these values:
--- Trigger a skill use, activating relevant handlers
-- @function [parent=#SkillProgression] skillUsed
-- @param #string skillid The if of the skill that was used
-- @param #SkillUseType useType A number from 0 to 3 (inclusive) representing the way the skill was used, with each use type having a different skill progression rate. Available use types and its effect is skill specific. See @{SkillProgression#skillUseType}
-- @param #number scale A number that linearly scales the skill progress received from this use. Defaults to 1.
-- @param options A table of parameters. Must contain one of `skillGain` or `useType`. It's best to always include `useType` if applicable, even if you set `skillGain`, as it may be used
-- by handlers to make decisions. See the addSkillUsedHandler example at the top of this page.
--
-- * `skillGain` - The numeric amount of skill to be gained.
-- * `useType` - #SkillUseType, A number from 0 to 3 (inclusive) representing the way the skill was used, with each use type having a different skill progression rate. Available use types and its effect is skill specific. See @{#SkillUseType}
--
-- And may contain the following optional parameter:
--
-- * `scale` - A numeric value used to scale the skill gain. Ignored if the `skillGain` parameter is set.
--
-- Note that a copy of this table is passed to skill used handlers, so any parameters passed to this method will also be passed to the handlers. This can be used to provide additional information to
-- custom handlers when making custom skill progressions.
--
skillUsed=skillUsed,
--- @{#SkillUseType}
@ -256,11 +272,16 @@ return {
Usage='usage',
Trainer='trainer',
},
--- Compute the total skill gain required to level up a skill based on its current level, and other modifying factors such as major skills and specialization.