DOUBLEX RMVXA ITEM TRIGGERS

RPG Maker VX Ace

Sets some skills/items to trigger effects before and/or after being used

  • DoubleX
  • 05/11/2015 01:10 PM
  • 1269 views
Compatibility
DoubleX RMVXA Item Triggers Compatibility

Games using this script
None so far

Notetag
#  * Skill/Item Notetags:                                                      |
#    1. <timing item trigger: itcx, itax>                                      |
#       - Sets a skill/item to trigger itax when timing and itcx are met       |
#       - It only works in battles using the default battle scene(Scene_Battle)|
#       - timing can be pre, post or custom timings set by you                 |
#       - pre means right before using the skill/item                          |
#       - post means right after using the skill/item                          |
#       - timing must only consist of alphanumeric characters                  |
#       - itcx can be set in Item Trigger Condition Notetag Values             |
#       - itax can be set in Item Trigger Action Notetag Values                |

#--------------------------------------------------------------------------|
    #  Item Trigger Condition Notetag Values                                   |
    #  - Setups itcx used by <timing item trigger: itcx, itax>                 |
    #--------------------------------------------------------------------------|
    # itcx are used at:
    # 1. Scene_Battle
    #    - it.send(trigger[1], self) if it.send(trigger[0], self) in
    #      exec_item_triggers
    # itcx are strings of names of methods under DoubleX_RMVXA::Item_Triggers
    # itcx names can only use alphanumeric characters
    # battler is the battler using item
    # item is the skill/item using the itcx
    # The below itcx are examples added to help you set your itcx
    # You can freely use, rewrite and/or delete these examples

    # Sets the item trigger condition as always true
    def self.itc1(battler, item)
      true
    end

    # Sets the item trigger condition as always false
    def self.itc2(battler, item)
      false
    end

    # Sets the item trigger condition as needing switch with id x to be on
    def self.itc3(battler, item)
      $game_switches[x]
    end

    # Adds new itcx here
    

    #--------------------------------------------------------------------------|
    #  Item Trigger Action Notetag Values                                      |
    #  - Setups itax used by <timing item trigger: itcx, itax>                 |
    #--------------------------------------------------------------------------|
    # itax are used at:
    # 1. Scene_Battle
    #    - it.send(trigger[1], self) if it.send(trigger[0], self) in
    #      exec_item_triggers
    # itax are strings of names of methods under DoubleX_RMVXA::Item_Triggers
    # itax names can only use alphanumeric characters
    # battler is the battler using item
    # item is the skill/item using the itax
    # The below itax are examples added to help you set your itax
    # You can freely use, rewrite and/or delete these examples

    # Sets the item trigger action as what Special Effect Escape does
    def self.ita1(battler, item)
      battler.hide
    end

    # Sets the item trigger action as calling common event with id
    # common_event_id
    def self.ita2(battler, item)
      $game_temp.reserve_common_event(common_event_id)
      SceneManager.scene.process_event
    end

    # Sets the item trigger action as executing damage equal to the value of
    # game variable with id x to self with type equal to that of skill with id
    # equal to y
    def self.ita3(battler, item)
      battler.result.clear
      battler.result.make_damage($game_variables[x], $data_skills[y])
      battler.execute_damage(battler)
    end

    # Adds new itax here


Script Call
#  * Scene manipulations                                                       |
#    1. exec_item_triggers(item, timing)                                       |
#       - Executes all item triggers with timing timing of item item           |


Prerequisites
Abilities:
1. Some RGSS3 scripting proficiency to fully utilize this script

Terms Of Use
You shall keep this script's Script Info part's contents intact
You shalln't claim that this script is written by anyone other than DoubleX or his aliases
None of the above applies to DoubleX or his aliases

Instructions
Open the script editor and put this script into an open slot between Materials and Main. Save to take effect.

FAQ
None so far

Authors
DoubleX

Changelog
#    v1.01a(GMT 1300 26-2-2016):                                               |
#    1. itcx and itax take the skill/item calling them as an argument as well  |
#    2. Fixed passing Scene_battle instead of a battler into itcx/itax bug     |
#    v1.00b(GMT 0400 7-11-2015):                                               |
#    1. Notetag values are now symbols of methods in the configuration regions |
#    2. This script doesn't need DoubleX RMVXA Item Triggers Compatibility to  |
#       be compatible with all its addressed scripts                           |
#    3. Further improved this script's compatibility, efficiency and simplicity|
#    v1.00a(GMT 1300 11-5-2015):                                               |
#    1. 1st version of this script finished                                    |