RPG Maker Forums

Battle Background Change 
Version. 1.0
Devil Knight

Introduction
 
This Script allow you to change battle Background depend on skill use and get affected from it
 
Features

- Easy To use
- You can give each Field State Effect
- You can change whole Background By using skill

How to Use
All Instruction in The Script

Demo
https://www.dropbox.com/s/mew0nd9ol1qskie/Demo%20Battle%20Background%20Change.rar?dl=0
Script

Code:
 #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
#                       Condition Battle Background Change

#                       Version: 1.0

#                       Author: Devil Knight

#                       Date: 24th  Sep, 2014

#-------------------------------------------------------------------------------

# Description:

#

#       This Script allow you to change battle Background depend on skill use 

#         and get affected from it

#

#-------------------------------------------------------------------------------

# Instruction:

#

#     - In Editablel Region do the following:

#       

#       - In Skill Section Write The name of the skills that will affect fields

#

#       - In Fields area section write the name of fields (wall or floor)  

#         that will have elemental power with state ID that will accur in those

#         fields

#

#       - From field_affect_by_flame to field_affect_by_wind write Sections 

#         the names of the fieldsthat will get affect from skill, 

#         field that will change to, and the state ID that will accur 

#         (Note: In each secion the :affected_field, :field_change, and 

#             :state_id must be in the same order)

#

#     - You Can Resist State Effect from feature window in DateBase 

#       (From Rate  =>  State Resist  =>  State_Name)

#

#

#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

module Devil_Knight

  module Battle_Background_Change

    

    #---------------------------------------------------------------------  

    #                                                                 #

    #                   EDITABLE REGION                               #

    #                                                                 #

    #--------------------------------------------------------------------

    #-----------------------------------------------------------------------

    # Write All Skill Name That Will Affect Field

    #-----------------------------------------------------------------------

    Skill   = 

    {

          :skill    =>  

                {

                                :flame    =>  ["Fire"],            # Flame Skills

                                :ice      =>  ["Ice"],             # Ice Skills

                                :poison   =>  ["Poison Cloud"],    # Poison Skills

                                :dark     =>  ["Dark Cloud"],            # Dark Skills

                                :water    =>  ["Water"],           # Water Skills

                                :light    =>  ["Saint", "Shock"],  # Light Skills

                                :wind     =>  ["Wind"],               # Wind Skills

                },

    }

    #-----------------------------------------------------------------------

    # Write All Fields Name That Will Be Affect (Name of Wall or Floor)

    #-----------------------------------------------------------------------

    Fields  = 

    {

          #Fields Elements 

          :area     =>

          {

                          :flame_field  =>    ["Lava2", "LavaCave"],  # Fields That Have Flame Element

                          :flame_state_id =>  26,                      # Original Flame Field State ID

                          :ice_field    =>    ["Snow", "Snowfield"],  # Fields That Have Ice Element

                          :ice_state_id =>  27,                      # Original Ice Field State ID

                          :poison_field =>    ["PoisonSwamp"],        # Fields That Have Poison Element

                          :poison_state_id =>  2,                     # Original Poison Field State ID

                          :lighting_field =>  [nil],                  # Fields That Have Light Element

                          :light_state_id =>  7,                      # Original Light area State ID

                          :water_area   =>    ["Sea"],                # Fields That Have Water Element

                          :water_state_id =>  nil,                      # Original Water area State ID

                          :dark_area    =>    ["DarkSpace"],          # Fields That Have Dark Element

                          :dark_state_id =>  3,                      # Original Dark Area State ID

                          :wind_area    =>    [nil],                  # Fields That Have Wind Element

                          :wind_state_id =>  nil,                      # Original Wind Area State ID

          },

          

          # Fields That will Affect From Flame Skills

          :field_affect_by_flame => 

          {

            :affected_field   =>  ["Grassland", "Snowfield"], # Fields That Will Affect From Flame 

            #                         |              |

            #                         V              V

            :field_change     =>  ["LavaCave",  "Grassland"], # Fields That Will Change To

            #                         |              |

            #                         V              V

            :state_id         =>  [   26,           nil    ], # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Ice Skills

          :field_affect_by_ice => 

          {

            :affected_field   =>  ["Grassland", "LavaCave", "Lava2"],  # Fields That Will Affect From Ice

            #                         |              |

            #                         V              V

            :field_change     =>  ["Snowfield", "Grassland", "Grassland"], # Fields That Will Change To

            #                         |              |

            #                         V              V

            :state_id         =>  [   27,           nil    ,    nil     ], # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Poison Skills

          :field_affect_by_poison => 

          {

            :affected_field   =>  ["Grassland"],      # Fields That Will Affect From Poison

            #                         |              

            #                         V              

            :field_change     =>  ["PoisonSwamp"],    # Fields That Will Change To

            #                         |

            #                         V              

            :state_id         =>  [   2],             # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Dark Skills

          :field_affect_by_dark => 

          {

            :affected_field   =>  ["Grassland", "Snowfield"], # Fields That Will Affect From Dark

            #                         |              |

            #                         V              V

            :field_change     =>  ["DarkSpace", "DarkSpace"], # Fields That Will Change To

            #                         |              |

            #                         V              V

            :state_id         =>  [   3,             3    ],  # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Water Skills

          :field_affect_by_water => 

          {

            :affected_field   =>  ["LavaCave"], # Fields That Will Affect From Water

            #                         |

            #                         V              

            :field_change     =>  ["Lava1"],    # Fields That Will Change To

            #                         |              

            #                         V              

            :state_id         =>  [   nil ],    # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Light Skills

          :field_affect_by_light => 

          {

            :affected_field   =>  ["DarkSpace"],  # Fields That Will Affect From Light

            #                         |              

            #                         V              

            :field_change     =>  ["Road1"],  # Fields That Will Change To

            #                         |              

            #                         V

            :state_id         =>  [   nil ],  # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          # Fields That will Affect From Wind Skills

          :field_affect_by_wind => 

          {

            :affected_field   =>  ["Sand", "Desert"], # Fields That Will Affect From Wind

            #                         | 

            #                         V              

            :field_change     =>  ["Sand", "Desert"], # Fields That Will Change To

            #                         |

            #                         V              

            :state_id         =>  [   3,        3  ],   # State ID Trigger Depend on Field Change To (Take The State From State Menu)

          },

          

    }

    #---------------------------------------------------------------------  

    #                                                                 #

    #                   End Of EDITABLE REGION                        #

    #                                                                 #

    #--------------------------------------------------------------------

  end

end

#==============================================================================

# ** Scene_Battle

#------------------------------------------------------------------------------

#  This class performs battle screen processing.

#==============================================================================

 

class Scene_Battle < Scene_Base

  include Devil_Knight::Battle_Background_Change

  attr_accessor   :skill_name                 # Skill that has Been Used

  attr_accessor   :previous_effect_id         # Last State ID Has Been Trigger

  attr_accessor   :battle_start_state_trigger # To Apply Field State Effect At Battle Start

  #--------------------------------------------------------------------------

  # * Start Processing

  #--------------------------------------------------------------------------

  alias devil_knight_Battle_background_change_Scene_Battle_start    start

  def start

    devil_knight_Battle_background_change_Scene_Battle_start()

    @battle_start_state_trigger = false # The state of original field did not active

  end

  #--------------------------------------------------------------------------

  # * Event Processing

  #--------------------------------------------------------------------------

  alias devil_knight_Battle_background_change_Scene_Battle_process_event    process_event

  def process_event

    if @spriteset.field_type != "normal" && @battle_start_state_trigger == false

      all_battle_members.each do |battler|

        battler.add_state(@spriteset.original_field_state_id) # Add the state of original field

        @log_window.display_affected_status(battler, nil)

        @log_window.wait_and_clear

      end

       @battle_start_state_trigger = true # The state of original field has activated

    end

    devil_knight_Battle_background_change_Scene_Battle_process_event()

  end

  #--------------------------------------------------------------------------

  # * Battle Action Processing

  #--------------------------------------------------------------------------

  def process_action

    return if scene_changing?

    if !@subject || !@subject.current_action

      @subject = BattleManager.next_subject

    end

    return turn_end unless @subject

    if @subject.current_action

      @subject.current_action.prepare

      if @subject.current_action.valid?

        @status_window.open

        execute_action

        skill_effect(@skill_name) # Call the new method

      end

      @subject.remove_current_action

    end

    process_action_end unless @subject.current_action

  end

  #--------------------------------------------------------------------------

  # * New Method: Skill Effect

  #--------------------------------------------------------------------------

  def skill_effect(skill_name)

    if @spriteset.update_field(skill_name)  # To check is there any change need to do

      all_battle_members.each do |battler|

          if battler.alive? && @spriteset.state_id == nil # To check is the used skill element oppose the original field element

            battler.remove_state(@spriteset.original_field_state_id)  # Remove the original field state effect from battler

            @log_window.display_removed_states(battler)

            @log_window.wait_and_clear

          elsif battler.alive? && @spriteset.state_id != nil  # If used skill element does not oppose the original filed element 

            if @spriteset.state_id != @spriteset.original_field_state_id  # To check is the used skill element same as original field element

              battler.remove_state(@spriteset.original_field_state_id)  # Remove the original field state effect from battler

              @log_window.display_removed_states(battler) 

              @log_window.wait_and_clear

            end

            battler.add_state(@spriteset.state_id)  # Add new field state affect to battler

            @log_window.display_affected_status(battler, nil)

            @log_window.wait_and_clear

          end

          if battler.alive? && @previous_effect_id != nil # Remove the field state effect from battler

            battler.remove_state(@previous_effect_id)

            @log_window.display_affected_status(battler, nil)

            @log_window.wait_and_clear

          end

        end

        @previous_effect_id = @spriteset.state_id # Assign the last state affect has been used

    end

  end

  #--------------------------------------------------------------------------

  # * End Turn

  #--------------------------------------------------------------------------

  alias devil_knight_Battle_Background_change_Scene_Battle_turn_end   turn_end

  def turn_end

    @spriteset.timer -= 1   if @spriteset.timer > 0 # Number of turn end of the new field element

    if @spriteset.timer == 0  

      update_basic  # Change Field Background

      all_battle_members.each do |battler|

        battler.remove_state(@previous_effect_id) # Remove the field state effect from battler

        @log_window.display_auto_affected_status(battler)

        @log_window.wait_and_clear

        if @spriteset.field_type != "normal" # To Check is original field has element effect  

          battler.add_state(@spriteset.original_field_state_id) # Add original field state effect to battler

          @log_window.display_affected_status(battler, nil)

          @log_window.wait_and_clear

        end

      end

    end

    @spriteset.timer = -1 if @spriteset.timer == 0  

    devil_knight_Battle_Background_change_Scene_Battle_turn_end()

  end

  #--------------------------------------------------------------------------

  # * Use Skill/Item

  #--------------------------------------------------------------------------

  alias devil_knight_Battle_Background_change_Scene_Battle_use_item   use_item

  def use_item

    item = @subject.current_action.item

    @skill_name = item.name # Assign Skill name

    devil_knight_Battle_Background_change_Scene_Battle_use_item()

  end

end

#==============================================================================

# ** Spriteset_Battle

#------------------------------------------------------------------------------

#  This class brings together battle screen sprites. It's used within the

# Scene_Battle class.

#==============================================================================

 

class Spriteset_Battle

  include Devil_Knight::Battle_Background_Change

  

  attr_accessor   :field_change_active           # Is Field Change By Skill Or Not?

  attr_accessor   :flame                         # Field Has Flame Element

  attr_accessor   :water                         # Field Has Water Element

  attr_accessor   :ice                           # Field Has Ice Element

  attr_accessor   :dark                          # Field Has Dark Element

  attr_accessor   :poison                        # Field Has Poison Element

  attr_accessor   :light                         # Field Has Light Element

  attr_accessor   :wind                          # Field Has Wind Element

  attr_accessor   :timer                         # Number Of Turn That Affect Remain

  attr_accessor   :p _wall                        # Original Wall Background

  attr_accessor   :p _floor                       # Original Floor Background

  attr_accessor   :field_type                    # Original Field Element   

  attr_accessor   :state_id                      #  State ID that Will Trigger 

  attr_accessor   :previous_Affected_Field_type  # Name Of Last Skill Used

  

  #--------------------------------------------------------------------------

  # * Object Initialization

  #--------------------------------------------------------------------------

  alias devil_knight_battle_background_change_spriteset_battle_initialize   initialize 

  def initialize

    devil_knight_battle_background_change_spriteset_battle_initialize()

    @p_floor  = @back1_sprite.bitmap  # Save Previous Floor

    @p_wall   = @back2_sprite.bitmap  # Save Previous Wall

    @field_type = original_field_type # Get Field Element Type

    @timer  = -1  

    @state_id = -1

    @field_change_active = false

  end

  #--------------------------------------------------------------------------

  # * New Method: Assign State ID to Each Type of Field

  #--------------------------------------------------------------------------

  def original_field_state_id

    return Fields[:area][:flame_state_id]    if @field_type == "flame" && Fields[:area][:flame_state_id] != nil

    return Fields[:area][:ice_state_id]     if @field_type == "ice"  && Fields[:area][:ice_state_id] != nil

    return Fields[:area][:poison_state_id]   if @field_type == "poison"  && Fields[:area][:poison_state_id] != nil

    return Fields[:area][:light_state_id]   if @field_type == "lighting" && Fields[:area][:light_state_id]

    return Fields[:area][:dark_state_id]  if @field_type == "dark" && Fields[:area][:dark_state_id] != nil

    return Fields[:area][:wind_state_id]  if @field_type == "wind" && Fields[:area][:wind_state_id] != nil

    return Fields[:area][:water_state_id]  if @field_type == "water" && Fields[:area][:water_state_id]  != nil

  end

  #--------------------------------------------------------------------------

  # * New Method: Change Battle Field Background

  #--------------------------------------------------------------------------

  def update_field(skillname)

    position = -1

    affected_field_type = nil

    affected_field_type = find_skill(skillname)                               # Find If The Skill Affect Original Field

    position = find_field(affected_field_type) if affected_field_type != nil  # Get The Position Of affected Field, New Field, And State ID For The New Field

    # If Flame Skill used On Flame Element Field That Has been Changed By Previous Skill

    if @field_change_active && affected_field_type == :field_affect_by_flame && @field_type == "flame" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Ice Skill used On Ice Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_ice && @field_type == "ice" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Dark Skill used On Dark Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_dark && @field_type == "dark" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Poison Skill used On Poison Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_poison && @field_type == "poison" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Light Skill used On Light Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_light && @field_type == "lighting" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Water Skill used On Water Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_water && @field_type == "water" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Wind Skill used On Wind Element Field That Has been Changed By Previous Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_wind && @field_type == "wind" 

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = original_field_state_id

      return true

    # If Ice Element Skill used On Field That Has been Changed By Flame Element Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_ice && @flame

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = nil

      return true

    # If Water Element Skill used On Field That Has been Changed By Flame Element Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_water && @flame

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = nil

      return true

    # If Flame Element Skill used On Field That Has been Changed By Ice Element Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_flame && @ice

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = nil

      return true

    # If Light Element Skill used On Field That Has been Changed By Dark Element Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_light && @dark

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = nil

      return true

    # If Dark Element Skill used On Field That Has been Changed By Light Element Skill

    elsif @field_change_active && affected_field_type == :field_affect_by_dark && @light

      Graphics.fadeout(30)

      return_original_floor

      return_original_wall

      Graphics.fadein(30)

      @timer  = -1

      @field_change_active = false

      @state_id = nil

      return true

    # If Element Skill used On Field That Has been Changed By same Element Skill

    elsif @field_change_active  &&  @previous_affected_field_type == affected_field_type

      @timer  = 4

      return false

    # Change Field Element And Background Depend on The Used Skill

    elsif position > -1 

      Graphics.fadeout(30)

      change_floor(Fields[affected_field_type][:field_change][position])

      change_wall(Fields[affected_field_type][:field_change][position])

      @timer  = 4

      @field_change_active = true

      @state_id = Fields[affected_field_type][:state_id][position]

      lava_field      if affected_field_type == :field_affect_by_flame

      ice_field       if affected_field_type == :field_affect_by_ice

      water_area      if affected_field_type == :field_affect_by_water

      dark_area       if affected_field_type == :field_affect_by_dark

      poison_field    if affected_field_type == :field_affect_by_poison

      lighting_field  if affected_field_type == :field_affect_by_light

      wind_area       if affected_field_type == :field_affect_by_wind

      Graphics.fadein(30)

      @previous_affected_field_type = affected_field_type

      return true

    else

      return false

    end

  end

  #--------------------------------------------------------------------------

  # * New Method: Check Original Field Status

  #--------------------------------------------------------------------------

  def original_field_type

    # Check Original Field In The Flame Field

    Fields[:area][:flame_field].each do |flame_field|

      if  flame_field ==  battleback1_name || flame_field ==  battleback2_name

        lava_field

        return "flame" 

      end

    end

    # Check Original Field In The Ice Field

    Fields[:area][:ice_field].each do |snow_field|

      if  snow_field ==  battleback1_name || snow_field ==  battleback2_name

        ice_field

        return "ice" 

      end

    end

    # Check Original Field In The Water Field

    Fields[:area][:water_area].each do |water|

      if  water ==  battleback1_name  || water ==  battleback2_name

        water_area

        return "water" 

      end

    end

    # Check Original Field In The Dark Field

    Fields[:area][:dark_area].each do |dark_field|

      if  dark_field ==  battleback1_name || dark_field ==  battleback2_name

        dark_area

        return "dark" 

      end

    end

    # Check Original Field In The Poison Field

    Fields[:area][:poison_field].each do |poison_area|

      if  poison_area ==  battleback1_name  || poison_area ==  battleback2_name

        poison_field

        return "poison" 

      end

    end

    # Check Original Field In The Light Field

    Fields[:area][:lighting_field].each do |lighting_area|

      if  lighting_area ==  battleback1_name  || lighting_area ==  battleback2_name

        lighting_field

        return "lighting" 

      end

    end

    # Check Original Field In The Wind Field

    Fields[:area][:wind_area].each do |wind|

      if  wind ==  battleback1_name  || wind ==  battleback2_name

        wind_area

        return "wind" 

      end

    end

    normal_field

    return "normal"

  end

  #--------------------------------------------------------------------------

  # * New Method: Change Floor Background To New One

  #--------------------------------------------------------------------------

  def change_floor(floor)

    @back1_sprite.bitmap = Cache.battleback1(floor)

    @back1_sprite.z = 0

    center_sprite(@back1_sprite)

  end

  #--------------------------------------------------------------------------

  # * New Method: Change Wall Background To New One

  #--------------------------------------------------------------------------

  def change_wall(wall)

    @back2_sprite.bitmap = Cache.battleback1(wall)

    @back2_sprite.z = 1

    center_sprite(@back2_sprite)

  end

  #--------------------------------------------------------------------------

  # * New Method: Find Used Skill Element

  #--------------------------------------------------------------------------

  def find_skill(skillname)

    # Check Flame Skills Element

    Skill[:skill][:flame].each do |flame_skill|

      if flame_skill == skillname

        return :field_affect_by_flame

      end

    end

    # Check Ice Skills Element

    Skill[:skill][:ice].each do |ice_skill|

      if ice_skill == skillname

        return :field_affect_by_ice

      end

    end

    # Check Poison Skills Element

    Skill[:skill][:poison].each do |poison_skill|

      if poison_skill == skillname 

        return :field_affect_by_poison

      end

    end

    # Check Water Skills Element

    Skill[:skill][:water].each do |water_skill|

      if water_skill == skillname

        return :field_affect_by_water

      end

    end

    # Check Dark Skills Element

    Skill[:skill][:dark].each do |dark_skill|

      if dark_skill == skillname

        return :field_affect_by_dark

      end

    end

    # Check Light Skills Element

    Skill[:skill][:light].each do |light_skill|

      if light_skill == skillname

        return :field_affect_by_light

      end

    end

    # Check Wind Skills Element

    Skill[:skill][:wind].each do |wind_skill|

      if wind_skill == skillname

        return :field_affect_by_wind

      end

    end

    return nil

  end

  #--------------------------------------------------------------------------

  # * New Method: Find Field That Affect From Skill

  #--------------------------------------------------------------------------

  def find_field(skill_element)

    position = 0

    Fields[skill_element][:affected_field].each do |field|

      if field == battleback1_name || field == battleback2_name

        return position

      else

        position += 1

      end

    end

    return -1

  end

  #--------------------------------------------------------------------------

  # * New Method: Return Original Floor Background

  #--------------------------------------------------------------------------

  def return_original_floor

    @back1_sprite.bitmap = @p_floor

    @back1_sprite.z = 0

    center_sprite(@back1_sprite)

  end

  #--------------------------------------------------------------------------

  # * New Method: Return Original Wall Background

  #--------------------------------------------------------------------------

  def return_original_wall

    @back2_sprite.bitmap = @p_wall

    @back2_sprite.z = 1

    center_sprite(@back2_sprite)

  end

  #--------------------------------------------------------------------------

  # * Update Battle Background (Floor) Sprite

  #--------------------------------------------------------------------------

  alias devil_knight_battle_background_change_spriteset_battle_update_battleback1   update_battleback1

  def update_battleback1

      if @field_change_active == true &&  @timer  ==  0

        Graphics.fadeout(30)

        return_original_floor

      else

        devil_knight_battle_background_change_spriteset_battle_update_battleback1()

      end

  end

  #--------------------------------------------------------------------------

  # * Update Battle Background (Wall) Sprite

  #--------------------------------------------------------------------------

  alias devil_knight_battle_background_change_spriteset_battle_update_battleback2   update_battleback2

  def update_battleback2

    if @field_change_active == true &&  @timer  ==  0

      return_original_wall

      Graphics.fadein(30)

      @field_change_active = false

      original_field_status

    else

      devil_knight_battle_background_change_spriteset_battle_update_battleback2

    end

  end

  #--------------------------------------------------------------------------

  # * New Method: Return Original Field Status

  #--------------------------------------------------------------------------

  def original_field_status

    normal_field    if @field_type == "normal"

    lava_field      if @field_type == "flame"

    ice_field       if @field_type == "ice"

    poison_field    if @field_type == "poison"

    lighting_field  if @field_type == "lighting"

    dark_area       if @field_type == "dark"

    wind_area       if @field_type == "wind"

    water_area      if @field_type == "water"

  end

  #==========================================================================

  # * New Methods: Field Status

  #========================================================================== 

  #--------------------------------------------------------------------------

  # * Normal Field Status

  #-------------------------------------------------------------------------- 

  def normal_field

    @flame    = false

    @water    = false

    @ice      = false

    @dark     = false

    @poison   = false

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Flame Field Status

  #-------------------------------------------------------------------------- 

  def lava_field

    @flame    = true

    @water    = false

    @ice      = false

    @dark     = false

    @poison   = false

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Ice Field Status

  #-------------------------------------------------------------------------- 

  def ice_field

    @flame    = false

    @water    = false

    @ice      = true

    @dark     = false

    @poison   = false

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Poison Field Status

  #-------------------------------------------------------------------------- 

  def poison_field

    @flame    = false

    @water    = false

    @ice      = false

    @dark     = false

    @poison   = true

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Dark Area Status

  #-------------------------------------------------------------------------- 

  def dark_area

    @flame    = false

    @water    = false

    @ice      = false

    @dark     = true

    @poison   = false

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Water Area Status

  #-------------------------------------------------------------------------- 

  def water_area

    @flame    = false

    @water    = true

    @ice      = false

    @dark     = false

    @poison   = false

    @light    = false

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Light Field Status

  #-------------------------------------------------------------------------- 

  def lighting_field

    @flame    = false

    @water    = false

    @ice      = false

    @dark     = false

    @poison   = false

    @light    = true

    @wind     = false

  end

  #--------------------------------------------------------------------------

  # * Wind Area Status

  #-------------------------------------------------------------------------- 

  def wind_area

    @flame    = false

    @water    = false

    @ice      = false

    @dark     = false

    @poison   = false

    @light    = false

    @wind     = true

  end

end

 
 
Credit and Thanks
- all Members of this community For all help they gave me to do this

Author's Notes
- Any Question I am More Than happy to answer
- Please Feedback because it is really Help

Latest Threads

Latest Profile Posts

Our latest feature is an interview with... me?!

People4_2 (Capelet off and on) added!

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.

Forum statistics

Threads
106,034
Messages
1,018,446
Members
137,820
Latest member
georg09byron
Top