RPG Maker MV
DoubleX RMMV Intercept Item
Introduction
Lets users set states intercepting skills/items conditionally
Designed to mimic FF5's Blue Magic and FF6's Runic command
Features
*============================================================================
* ## Notetag Info
*----------------------------------------------------------------------------
* # Skill/Item/State Notetags:
* 1. <intercept item tier: x>
* - Lets battlers having states with this notetag intercept
* skills/items with this notetag if x is positive for those states
* and skills/items
* - If the intercept tiers of the states are greater than or equal to
* that of the skills/items, they'll be intercepted if other
* conditions that are set by you are also met
* - If more than 1 battler can intercept a skill/item, the one having
* any intercept state for the shortest time will intercept it
* - If more than 1 state of the same battler can intercept a
* skill/item, the one having the highest priority will intercept it
* - This notetag needs <ally intercept item> and/or
* <foe intercept item> to be present as well to work
* 2. <ally intercept item>
* - Interceptors having states with this notetag can intercept
* skills/items with this notetag if their users are allies and
* other conditions are met
* - Putting this notetag above <foe intercept item> means allies
* will always intercept the skills/items if enemies can also
* intercept them
* - The ordering of <ally intercept item> and <foe intercept item>
* in skills/items to be intercepted will be used if intercepting
* states also has both of those notetags
* 3. <foe intercept item>
* - Interceptors having states with this notetag can intercept
* skills/items with this notetag if their users are foes and other
* conditions are met
* - Putting this notetag above <ally intercept item> means foes will
* always intercept the skills/items if enemies can also intercept
* them
* - The ordering of <ally intercept item> and <foe intercept item>
* in skills/items to be intercepted will be used if intercepting
* states also has both of those notetags
* 4. <intercept item chance: x>
* - Interceptors having states with this notetag have a x% chance to
* intercept skills/items that can be intercepted if other
* conditions are met
* - Skills/items that can be intercepted with this notetag have a x%
* chance to be intercepted by interceptors if other conditions are
* met
* - The real chance of success is that of intercepting states
* multiplied by that of skills/items to be intercepted
* - If this notetag is absent, the chance of success will be 100%
* 5. <intercept item mp>
* - Interceptors having states with this notetag absorb mp equal to
* the mp cost of the skills/items intercepted if those skills/items
* also have this notetag
* 6. <intercept item tp>
* - Interceptors having states with this notetag absorb tp equal to
* the tp cost of the skills/items intercepted if those skills/items
* also have this notetag
* 7. <hit intercept item mp>
* - Failed interceptions due to <intercept item mp limit> will cause
* the skill/item to only hit the interceptor if both the
* skills/items and states have this notetag
* 8. <hit intercept item tp>
* - Failed interceptions due to <intercept item tp limit> will cause
* the skill/item to only hit the interceptor if both the
* skills/items and states have this notetag
* 9. <intercept item learnt>
* - Only skills/items that are currently learnt by its battler can be
* intercepted if both them and states have this notetag
* 10. <intercept item usable>
* - Only skills/items that are currently usable by its battler can
* be intercepted if both them and states have this notetag
* 11. <learn intercept item>
* - Successful interceptions will cause its battler to learn the
* intercepted skill/item if both them and states have this notetag
* and they're not already learnt
*----------------------------------------------------------------------------
* # State Notetags:
* 1. <intercept item animation: id>
* - Animation with id id will be played upon successful interceptions
* 2. <intercept item count: x, f>
* - The intercepting state will worn off after its battler used it to
* intercept x skills/items
* - Failed interceptions will also be counted is f is true
* 3. <intercept item mp limit>
* - If this state's used to intercept skills/items and intercepting
* them would lead to the battler's mp being greater than that
* battler's mmp, the intercept will fail
* 4. <intercept item tp limit>
* - If this state's used to intercept skills/items and intercepting
* them would lead to the battler's tp being greater than that
* battler's maximum tp, the intercept will fail
* 5. <intercept item mcr>
* - The mp absorbed by the battler using this state to intercept
* skills/items will be the actual mp used by their users
*============================================================================
* ## Plugin Call Info
*----------------------------------------------------------------------------
* # Skill/Item/State manipulations
* 1. meta.interceptItemTier
* - Returns the intercept item tier in <intercept item tier: x>
* 2. meta.interceptItemTier = tier
* - Sets the intercept item tier in <intercept item tier: x> as tier
* - All meta.interceptItemTier changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 3. meta.battlerInterceptItem
* - Returns the ally/foe intercept item tier in
* <ally intercept item tier> and <foe intercept item tier> in the
* form of { ally: true, foe: true }
* - Property name ally and foe will be defined only if the former and
* latter notetags are used respectively
* - The ordering of those property names is that of those notetags
* 4. meta.battlerInterceptItem = { ally: true, foe: true }
* - Sets the ally/foe intercept item tier in
* <ally intercept item tier> and <foe intercept item tier> in the
* form of { ally: true, foe: true }
* - Property name ally and foe will be defined only if the former and
* latter notetags are used respectively
* - The ordering of those property names is that of those notetags
* - All meta.battlerInterceptItem changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 5. meta.interceptItemChance
* - Returns the intercept item chance in <intercept item chance: x>
* 6. meta.interceptItemChance = percent
* - Sets the intercept item chance in <intercept item chance: x> as
* percent%
* - All meta.interceptItemChance changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 7. meta.interceptItemMp
* - Returns the intercept item mp flag in <intercept item mp>
* 8. meta.interceptItemMp = flag
* - Sets the intercept item mp flag in <intercept item mp> as flag
* - All meta.interceptItemMp changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 9. meta.interceptItemTp
* - Returns the intercept item tp flag in <intercept item tp>
* 10. meta.interceptItemTp = flag
* - Sets the intercept item tp flag in <intercept item tp> as flag
* - All meta.interceptItemTp changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 11. meta.hitInterceptItemMp
* - Returns the hit intercept item mp flag in
* <hit intercept item mp>
* 12. meta.hitInterceptItemMp = flag
* - Sets the hit intercept item mp flag in <hit intercept item mp>
* as flag
* - All meta.hitInterceptItemMp changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 13. meta.hitInterceptItemTp
* - Returns the hit intercept item tp flag in
* <hit intercept item tp>
* 14. meta.hitInterceptItemTp = flag
* - Sets the hit intercept item tp flag in <hit intercept item tp>
* as flag
* - All meta.hitInterceptItemTp changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 15. meta.interceptItemLearnt
* - Returns the intercept item learnt flag in
* <intercept item learnt>
* 16. meta.interceptItemLearnt = flag
* - Sets the intercept item learnt flag in <intercept item learnt>
* as flag
* - All meta.interceptItemLearnt changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 17. meta.interceptItemUsable
* - Returns the intercept item usable flag in
* <intercept item usable>
* 18. meta.interceptItemUsable = flag
* - Sets the intercept item usable flag in <intercept item usable>
* as flag
* - All meta.interceptItemUsable changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 19. meta.learnInterceptItem
* - Returns the learn intercept item flag in <learn intercept item>
* 20. meta.learnInterceptItem = flag
* - Sets the learn intercept item flag in <learn intercept item> as
* flag
* - All meta.learnInterceptItem changes can be saved if
* DoubleX RMMV Dynamic Data is used
*----------------------------------------------------------------------------
* # State manipulations
* 1. meta.interceptItemAnimation
* - Returns the intercept item animation id in
* <intercept item animation: id>
* 2. meta.interceptItemAnimation = id
* - Sets the intercept item animation id in
* <intercept item animation: id> as id
* - All meta.interceptItemAnimation changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 3. meta.interceptItemCount
* - Returns the intercept item count with the fail flag in the form
* of { count: count, fail: fail }
* 4. meta.interceptItemCount = { count: count, fail: fail }
* - Sets the intercept item count with the fail flag as count and
* fail in the form of { count: count, fail: fail }
* - All meta.interceptItemCount changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 5. meta.interceptItemMpLimit
* - Returns the intercept item mp limit flag in
* <intercept item mp limit>
* 6. meta.interceptItemMpLimit = flag
* - Sets the intercept item mp limit flag in
* <intercept item mp limit> as flag
* - All meta.interceptItemMpLimit changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 7. meta.interceptItemTpLimit
* - Returns the intercept item tp limit flag in
* <intercept item tp limit>
* 8. meta.interceptItemTpLimit = flag
* - Sets the intercept item tp limit flag in
* <intercept item tp limit> as flag
* - All meta.interceptItemTpLimit changes can be saved if
* DoubleX RMMV Dynamic Data is used
* 9. meta.interceptItemMcr
* - Returns the intercept item mcr flag in <intercept item mcr>
* 10. meta.interceptItemMcr = flag
* - Sets the intercept item mcr flag in <intercept item mcr> as flag
* - All meta.interceptItemMcr changes can be saved if
* DoubleX RMMV Dynamic Data is used
*============================================================================Video
The Code
License Terms
Attribution 3.0 Unported - You must attribute the work in the manner specified by the author or licensor. Commerical use allowed.
Version History
* v1.00b(GMT 1000 30-1-2016): * 1. Fixed typo $dataStates(stateId) instead of $dataStates[stateId] * 2. Fixed undefined BM.interceptors when changing states outside battle * 3. Fixed missing argument item in GB.possibleInterceptStates bug * 4. Fixed searching interceptors in the interceptor state id pairs bug * 5. Fixed returning interceptor state id pair in GU.interceptor bug * 6. Fixed learning skills that are already learnt bug * 7. Fixed passing a battler instead of an Array to showNormalAnimation * v1.00a(GMT 1500 16-12-2015): * 1. 1st version of this plugin finished
Credits & Thanks
DoubleX(Optional)
Terms & Conditions
* You shall keep this plugin's Plugin Info part's contents intact * You shalln't claim that this plugin's written by anyone other than * DoubleX or his aliases * None of the above applies to DoubleX or his aliases
Comments (0)
Leave a Reply
You must be logged in to post a comment.
DoubleX
[b]Updates[/b]
Added this video:
[url=https://www.youtube.com/watch?v=jsuqdjY3FyE]DoubleX RMMV Intercept Item[/url]
[code] * v1.00b(GMT 1000 30-1-2016):
* 1. Fixed typo $dataStates(stateId) instead of $dataStates[stateId]
* 2. Fixed undefined BM.interceptors when changing states outside battle
* 3. Fixed missing argument item in GB.possibleInterceptStates bug
* 4. Fixed searching interceptors in the interceptor state id pairs bug
* 5. Fixed returning interceptor state id pair in GU.interceptor bug
* 6. Fixed learning skills that are already learnt bug
* 7. Fixed passing a battler instead of an Array to showNormalAnimation [/code]