[MZ] DoubleX RMMZ Unit Filters

Started by DoubleX, August 24, 2020, 02:36:38 am

Previous topic - Next topic

DoubleX

August 24, 2020, 02:36:38 am Last Edit: August 27, 2020, 08:56:49 pm by DoubleX
DoubleX RMMZ Unit Filters
Authors: DoubleX
Version: v1.01a
Type: Party/Troop member filtering Add-on
Key Term: Player / Party / Troop Add-on

Purpose
Lets you use script calls to filter unit members with less codes and eventing

Introduction
*      1. Without any plugin, getting a member with specific conditions
*        relative to the belonging unit, like finding the party member with
*        the highest amount of hp, demands relatively heavy event setups,
*        even with the aid of common events, which boost event reusability.
*      2. With this plugin, the same can be done using several easy, simple
*        and small script calls instead of writing several common events
*        from scratch, thus further improving effectiveness and efficiency.

Games using this plugin
None so far

Script Calls
 *    # Battler manipulations
 *      1. isAnyStateAffected(stateIds)
 *         - Returns whether the battler involved has any state included by
 *           stateIds, which is a list of id of states
 *         - stateIds must be an Array of natural numbers
 *         - E.g.:
 *           $gameParty.members()
.isAnyStateAffected([1, 2]) returns *           whether the 1st party member has any state with id 1 or 2
 *      2. isAllStatesAffected(stateIds)
 *         - Returns whether the battler involved has all states included by
 *           stateIds, which is a list of id of states
 *         - stateIds must be an Array of natural numbers
 *         - E.g.:
 *           $gameActors.actor(1).isAllStatesAffected([1, 2]) returns whether
 *           the actor with id 1 has all states with id 1 or 2
 *      3. isAnyBuffAffected(paramIds)
 *         - Returns whether the battler involved has any buff included by
 *           paramIds, which is a list of id of corresponding parameters
 *         - paramIds must be an Array of non negative numbers
 *         - E.g.:
 *           $gameParty.members()
.isAnyBuffAffected([0, 1]) returns *           whether the 1st party member has any mhp or mmp buff
 *      4. isAllBuffsAffected(paramIds)
 *         - Returns whether the battler involved has all buffs included by
 *           paramIds, which is a list of id of corresponding parameters
 *         - paramIds must be an Array of non negative numbers
 *         - E.g.:
 *           $gameActors.actor(1).isAllBuffsAffected([0, 1]) returns whether
 *           the actor with id 1 has all mhp and mmp buffs
 *      5. isAnyDebuffAffected(paramIds)
 *         - Returns whether the battler involved has any debuff included by
 *           paramIds, which is a list of id of corresponding parameters
 *         - paramIds must be an Array of non negative numbers
 *         - E.g.:
 *           $gameParty.members()
.isAnyDebuffAffected([0, 1]) returns *           whether the 1st party member has any mhp or mmp debuff
 *      6. isAllDebuffsAffected(paramIds)
 *         - Returns whether the battler involved has all debuffs included by
 *           paramIds, which is a list of id of corresponding parameters
 *         - paramIds must be an Array of non negative numbers
 *         - E.g.:
 *           $gameActors.actor(1).isAllDebuffsAffected([0, 1]) returns whether
 *           the actor with id 1 has all mhp and mmp debuffs
 *      7. hasAnySkill(skillIds)
 *         - Returns whether the battler involved has any skill included by
 *           skillIds, which is a list of id of corresponding skills
 *         - paramIds must be an Array of natural numbers
 *         - E.g.:
 *           $gameParty.members()
.hasAnySkill([1, 2]) returns whether the *           1st party member has skill with id 1 or 2
 *      8. hasAllSkills(skillIds)
 *         - Returns whether the battler involved has all skills included by
 *           skillIds, which is a list of id of corresponding skills
 *         - paramIds must be an Array of natural numbers
 *         - E.g.:
 *           $gameActors.actor(1).hasAllSkills([1, 2]) returns whether the
 *           actor with id 1 has all skills with id 1 and 2
 *      (v1.01a+)9. hasAnyUsableSkill(skillIds)
 *         - Returns whether the battler involved has any usable skill
 *           included by skillIds, which is a list of id of corresponding
 *           skills
 *         - paramIds must be an Array of natural numbers
 *         - E.g.:
 *           $gameParty.members()
.hasAnyUsableSkill([1, 2]) returns whether *           the 1st party member has usable skill with id 1 or 2
 *      (v1.01a+)10. hasAllUsableSkills(skillIds)
 *          - Returns whether the battler involved has all usable skills
 *            included by skillIds, which is a list of id of corresponding
 *            skills
 *          - paramIds must be an Array of natural numbers
 *          - E.g.:
 *            $gameActors.actor(1).hasAllUsableSkills([1, 2]) returns whether
 *            the actor with id 1 has all usable skills with id 1 and 2
 *    # Unit manipulations
 *      1. memWithAnyState(stateIds, mems)
 *         - Returns the list of members with any state included by stateIds,
 *           which is a list of id of states, among all battlers included by
 *           mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stateIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithAnyState([1, 2]) returns the list of party
 *           members with any state with id 1 or 2
 *      2. memWithAllStates(stateIds, mems)
 *         - Returns the list of members with all states included by
 *           stateIds, which is a list of id of states, among all battlers
 *           included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stateIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithAllStates([1, 2], $gameTroop.memWithAnyState([3, 4]))
 *           returns the list of troop members with all states with id 1 or 2
 *           among those with any state with id 3 or 4
 *      3. memWithoutAnyState(stateIds, mems)
 *         - Returns the list of members without any state included by
 *           stateIds, which is a list of id of states, among all battlers
 *           included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stateIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithoutAnyState([1, 2]) returns the list of party
 *           members without any state with id 1 or 2
 *      4. memWithoutAllStates(stateIds, mems)
 *         - Returns the list of members without all states included by
 *           stateIds, which is a list of id of states, among all battlers
 *           included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stateIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithoutAllStates([1, 2], $gameTroop.memWithoutAnyState([3, 4]))
 *           returns the list of troop members without all states with id 1 or
 *           2 among those without any state with id 1 or 2
 *      5. memWithAnyBuff(paramIds, mems)
 *         - Returns the list of members with any buff included by paramIds,
 *           which is a list of id of corresponding parameters, among all
 *           battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithAnyBuff([0, 1]) returns the list of party
 *           members with any mhp or mmp buff
 *      6. memWithAllBuffs(paramIds, mems)
 *         - Returns the list of members with all buffs included by paramIds,
 *           which is a list of id of corresponding parameters, among all
 *           battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithAllBuffs([0, 1], $gameTroop.memWithAnyBuff([2, 3]))
 *           returns the list of troop members with all mhp and mmp buffs
 *           among those with any atk or def buff
 *      7. memWithoutAnyBuff(paramIds, mems)
 *         - Returns the list of members without any buff included by
 *           paramIds, which is a list of id of corresponding parameters,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithoutAnyBuff([0, 1]) returns the list of party
 *           members without any mhp or mmp buff
 *      8. memWithoutAllBuffs(paramIds, mems)
 *         - Returns the list of members without all buffs included by
 *           paramIds, which is a list of id of corresponding parameters,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithoutAllBuffs([0, 1], $gameTroop.memWithoutAnyBuff([2, 3]))
 *           returns the list of troop members without all mhp and mmp buffs
 *           among those without any atk or def buff
 *      9. memWithAnyDebuff(paramIds, mems)
 *         - Returns the list of members with any debuff included by paramIds,
 *           which is a list of id of corresponding parameters, among all
 *           battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithAnyDebuff([0, 1]) returns the list of party
 *           members with any mhp or mmp debuff
 *      10. memWithAllDebuffs(paramIds, mems)
 *         - Returns the list of members with all debuffs included by
 *           paramIds, which is a list of id of corresponding parameters,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithAllDebuffs([0, 1], $gameTroop.memWithAnyDebuff([2, 3]))
 *           returns the list of troop members with all mhp and mmp debuffs
 *           among those with any atk or def debuff
 *      11. memWithoutAnyDebuff(paramIds, mems)
 *         - Returns the list of members without any debuff included by
 *           paramIds, which is a list of id of corresponding parameters,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithoutAnyDebuff([0, 1]) returns the list of party
 *           members without any mhp or mmp debuff
 *      12. memWithoutAllDebuffs(paramIds, mems)
 *         - Returns the list of members without all debuffs included by
 *           paramIds, which is a list of id of corresponding parameters,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - paramIds must be an Array of non negative numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithoutAllDebuffs([0, 1], $gameTroop.memWithoutAnyDebuff([2, 3]))
 *           returns the list of troop members without all mhp and mmp debuffs
 *           among those without any atk or def debuff
 *      13. memWithAnySkill(skillIds, mems)
 *         - Returns the list of members with any skill included by skillIds,
 *           which is a list of id of corresponding skills, among all battlers
 *           included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithAnySkill([1, 2]) returns the list of party
 *           members with skill having id 1 or 2
 *      14. memWithAllSkills(skillIds, mems)
 *         - Returns the list of members with all skills included by skillIds,
 *           which is a list of id of corresponding skills, among all battlers
 *           included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithAllSkills([1, 2], $gameParty.memWithAnySkill([3, 4]))
 *           returns the list of troop members with skills having id 1 and 2
 *           among those with skill having id 3 or 4
 *      15. memWithoutAnySkill(skillIds, mems)
 *         - Returns the list of members without any skill included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithoutAnySkill([1, 2]) returns the list of party
 *           members without skills having id 1 nor 2
 *      16. memWithoutAllSkills(skillIds, mems)
 *         - Returns the list of members without all skills included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithoutAllSkills([1, 2], $gameParty.memWithoutAnySkill([3, 4]))
 *           returns the list of troop members without skills having id 1 and
 *           2 among those without skill having id 3 or 4
 *      17. anyHighestStatMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, include those being the
 *           highest among the caller, among all battlers included by mems,
 *           which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.anyHighestStatMem(["hp", "mp"]) returns the list of
 *           party members with the highest amount of hp or mp among the party
 *      18. allHighestStatsMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, are all the highest among
 *           the caller, among all battlers included by mems, which is a list
 *           of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.allHighestStatsMem(["hp", "mp"], $gameTroop.anyHighestStatMem(["mhp", "mmp"]))
 *           returns the list of troop members with the highest amount of hp
 *           and mp among those with the highest amount of mhp or mmp among
 *           the troop
 *      19. notAnyHighestStatMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, don't include those being
 *           the highest among the caller, among all battlers included by
 *           mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.notAnyHighestStatMem(["hp", "mp"]) returns the list of
 *           party members with neither the highest amount of hp nor mp among
 *           the party
 *      20. notAllHighestStatsMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, aren't all the highest
 *           among the caller, among all battlers included by mems, which is
 *           a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.notAllHighestStatsMem(["hp", "mp"], $gameTroop.notAnyHighestStatMem(["mhp", "mmp"]))
 *           returns the list of troop members without the highest amount of
 *           both hp and mp among those with neither the highest amount of mhp
 *           nor mmp among the troop
 *      21. anyLowestStatMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, include those being the
 *           lowest among the caller, among all battlers included by mems,
 *           which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.anyLowestStatMem(["hp", "mp"]) returns the list of
 *           party members with the lowest amount of hp or mp among the party
 *      22. allLowestStatsMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, are all the lowest among
 *           the caller, among all battlers included by mems, which is a list
 *           of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.allLowestStatsMem(["hp", "mp"], $gameTroop.anyLowestStatMem(["mhp", "mmp"]))
 *           returns the list of troop members with the lowest amount of hp
 *           and mp among those with the lowest amount of mhp or mmp among the
 *           troop
 *      23. notAnyLowestStatMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, don't include those being
 *           the lowest among the caller, among all battlers included by mems,
 *           which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.notAnyLowestStatMem(["hp", "mp"]) returns the list of
 *           party members with neither the lowest amount of hp nor mp among
 *           the party
 *      24. notAllLowestStatsMem(stats, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, aren't all the lowest
 *           among the caller, among all battlers included by mems, which is a
 *           list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.notAllLowestStatsMem(["hp", "mp"], $gameParty.notAnyLowestStatMem(["mhp", "mmp"]))
 *           returns the list of troop members without the lowest amount of
 *           both hp and mp among those with neither the lowest amount of mhp
 *           nor mmp among the troop
 *      25. anyAboveStatMem(stats, val, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, include those above val,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - val must be a number
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.anyAboveStatMem(["hp", "mp"], 100) returns the list of
 *           party members with the value of hp or mp above 100
 *      26. allAboveStatMem(stats, val, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, are all above val, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - val must be a number
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.allAboveStatMem(["hp", "mp"], 100, $gameTroop.anyAboveStatMem(["mhp", "mmp"], 1000))
 *           returns the list of troop members with the value of hp and mp
 *           above 100 among those with the value of mhp or mmp above 1000
 *      27. anyBelowStatMem(stats, val, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, include those below val,
 *           among all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - val must be a number
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.anyBelowStatMem(["hp", "mp"], 100) returns the list of
 *           party members with the value of hp or mp below 100
 *      28. allBelowStatMem(stats, val, mems)
 *         - Returns the list of members whose values of
 *           parameters/ex-parameters/sp-parameters included by stats, which
 *           is a list of names of corresponding
 *           parameters/ex-parameters/sp-parameters, are all below val, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - stats must be an Array of strings as names of Game_Battler
 *           properties with the get function
 *         - val must be a number
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.allBelowStatMem(["hp", "mp"], 100, $gameTroop.anyBelowStatMem(["mhp", "mmp"], 1000))
 *           returns the list of troop members with the value of hp and mp
 *           below 100 among those with the value of mhp or mmp below 1000
 *      (v1.01a+)29. memWithAnyUsableSkill(skillIds, mems)
 *         - Returns the list of members with any usable skill included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithAnyUsableSkill([1, 2]) returns the list of
 *           party members with usable skill having id 1 or 2
 *      (v1.01a+)30. memWithAllUsableSkills(skillIds, mems)
 *         - Returns the list of members with all usable skills included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithAllUsableSkills([1, 2], $gameParty.memWithAnyUsableSkill([3, 4]))
 *           returns the list of troop members with usable skills having id 1
 *           and 2 among those with usable skill having id 3 or 4
 *      (v1.01a+)31. memWithoutAnyUsableSkill(skillIds, mems)
 *         - Returns the list of members without any usable skill included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameParty.memWithoutAnyUsableSkill([1, 2]) returns the list of
 *           party members without usable skills having id 1 nor 2
 *      (v1.01a+)32. memWithoutAllUsableSkills(skillIds, mems)
 *         - Returns the list of members without all usable skills included by
 *           skillIds, which is a list of id of corresponding skills, among
 *           all battlers included by mems, which is a list of battlers
 *         - The return value should be an Array of Game_Battler
 *         - skillIds must be an Array of natural numbers
 *         - mems must be an Array of Game_Battler
 *         - If mems isn't specified, it'll be default to all unit members
 *           outside battles and battle members inside battles respectively
 *         - E.g.:
 *           $gameTroop.memWithoutAllUsableSkills([1, 2], $gameParty.memWithoutAnyUsableSkill([3, 4]))
 *           returns the list of troop members without usable skills having id
 *           1 and 2 among those without usable skill having id 3 or 4

Author Notes
*      1. This plugin's meant to be a convenience tool to facilitate the use
 *        of some unit filters that aren't already available from the default
 *        RMMZ codebase, so you're still supposed to write some Javascript
 *        codes with the aid of the new script calls provided by this plugin.

Prerequisites
*      Abilities:
 *      1. Nothing special for most ordinary cases
 *      2. Little RMMZ plugin development proficiency to fully utilize this
 *        (Elementary Javascript exposures being able to write beginner codes
 *        up to 300LoC scale)

Terms Of Use
*      1. Commercial use's always allowed and crediting me's always optional.
 *      2. You shall keep this plugin's Plugin Info part's contents intact.
 *      3. You shalln't claim that this plugin's written by anyone other than
 *        DoubleX or my aliases. I always reserve the right to deny you from
 *        using any of my plugins anymore if you've violated this.
 *      4. If you repost this plugin directly(rather than just linking back),
 *        you shall inform me of these direct repostings. I always reserve
 *        the right to request you to edit those direct repostings.
 *      5. CC BY 4.0, except those conflicting with any of the above, applies
 *        to this plugin, unless you've my permissions not needing follow so.
 *      6. I always reserve the right to deny you from using this plugin
 *        anymore if you've violated any of the above.

Contributors
*      Authors:
 *      1. DoubleX
 *      Plugin Development Collaborators:
 *      - None So Far
 *      Bug Reporters:
 *      - None So Far
 *      Compatibility Issue Raisers:
 *      - None So Far
 *      Feature Requesters:
 *      - None So Far

Changelog
*      { codebase: "1.0.0", plugin: "v1.01a" }(2020 Aug 28 GMT 0000):
 *      1. Added the following battler manipulation script calls  -
 *        - hasAnyUsableSkill(skillIds)
 *        - hasAllUsableSkills(skillIds)
 *      2. Added the following unit manipulation script calls  -
 *        - memWithAnyUsableSkill(skillIds, mems)
 *        - memWithAllUsableSkills(skillIds, mems)
 *        - memWithoutAnyUsableSkill(skillIds, mems)
 *        - memWithoutAllUsableSkills(skillIds, mems)
*      { codebase: "1.0.0", plugin: "v1.00a" }(2020 Aug 23 GMT 0400):
 *      1. 1st version of this plugin finished

Download Link
My RMVXA/RMMV/RMMZ scripts/plugins: http://rpgmaker.net/users/DoubleX/scripts/

Blizzard

I just quickly fixed your Key Term and topic title. Spaces do matter for the database to pick it up properly.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

DoubleX

Updates
*      { codebase: "1.0.0", plugin: "v1.01a" }(2020 Aug 28 GMT 0000):
 *      1. Added the following battler manipulation script calls  -
 *         - hasAnyUsableSkill(skillIds)
 *         - hasAllUsableSkills(skillIds)
 *      2. Added the following unit manipulation script calls  -
 *         - memWithAnyUsableSkill(skillIds, mems)
 *         - memWithAllUsableSkills(skillIds, mems)
 *         - memWithoutAnyUsableSkill(skillIds, mems)
 *         - memWithoutAllUsableSkills(skillIds, mems)
My RMVXA/RMMV/RMMZ scripts/plugins: http://rpgmaker.net/users/DoubleX/scripts/