RMRK is retiring.
Server is paid up for the rest of 2026, but the forum may go after that. See here for more information. Please archive or save anything you would like to keep before 2027.
Main Menu
  • Welcome to The RPG Maker Resource Kit.

Dual Weapons

Started by Algid, March 26, 2007, 08:38:22 PM

0 Members and 1 Guest are viewing this topic.

Algid

Let it be known, I did not make this nor am I trying to take credit away from the author.


[spoiler]#=================================
# class Game_Actor mod's... -Midge-
#=================================
# This is where the meat of the script takes place...
# there is alot to be accounted for here too..
# i had to make sure that all the stat stuff was being
# from all the right things... in fact i think most of the
# original class has been modded here... not sure on that
# and too lazy to check and see... let's hope that you haven't
# made any forgetable changes to this before...
#=================================
class Game_Actor < Game_Battler

attr_accessor :weapon_type
attr_accessor :armor_type
attr_accessor :sec_attack

alias double_weapons_initialize initialize

def initialize(actor_id)
   double_weapons_initialize(actor_id)
   @weapon_type = $data_weapons[@weapon_id]
   @armor_type = $data_armors[@armor1_id]
   @sec_attack = nil
end

def animation3_id
  weapon = $data_weapons[@armor1_id]
  return (weapon != nil ? weapon.animation1_id : 0)
end

def animation4_id
  weapon = $data_weapons[@armor1_id]
  return (weapon != nil ? weapon.animation2_id : 0)
end

def two_shields
   if (self.weapon_type.is_a?(RPG::Armor) and self.armor_type.is_a?(RPG::Armor)) and
     (self.weapon_id != 0 and self.armor1_id != 0)
     return true
   else
     return false
   end
end

def two_weapons
   if (self.weapon_type.is_a?(RPG::Weapon) and self.armor_type.is_a?(RPG::Weapon)) and
     (self.weapon_id != 0 and self.armor1_id != 0)
     return true
   else
     return false
   end
end
   
def equip(equip_type, id, item = RPG::Armor)
   case equip_type
   
   when 0
     
     if @weapon_id == 0
       if item.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           self.weapon_type = $data_weapons[id]
           @weapon_id = id
           $game_party.lose_weapon(id, 1)
         end
       elsif item.is_a?(RPG::Armor)
         if id == 0 or $game_party.weapon_number(id) > 0
           self.weapon_type = $data_armors[id]
           @weapon_id = id
           $game_party.lose_armor(id, 1)
         end
       end
     end
     
     if item == nil
       if self.weapon_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_weapon(@weapon_id, 1)
           @weapon_id = id
         end
       elsif self.weapon_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_armor(@weapon_id, 1)
           @weapon_id = id
         end
       end
     end
     
     if item.is_a?(RPG::Weapon)
       if self.weapon_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_weapon(@weapon_id, 1)
           self.weapon_type = $data_weapons[id]
           @weapon_id = id
           $game_party.lose_weapon(id, 1)
         end
       elsif self.weapon_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_armor(@weapon_id, 1)
           self.weapon_type = $data_weapons[id]
           @weapon_id = id
           $game_party.lose_weapon(id, 1)
         end
       end
       
      elsif item.is_a?(RPG::Armor)
       if self.weapon_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_armor(@weapon_id, 1)
           self.weapon_type = $data_armors[id]
           @weapon_id = id
           $game_party.lose_armor(id, 1)
         end
       elsif self.weapon_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_weapon(@weapon_id, 1)
           self.weapon_type = $data_armors[id]
           @weapon_id = id
           $game_party.lose_armor(id, 1)
         end
       end   
     end

   when 1 

     if @armor1_id == 0
       if item.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           self.armor_type = $data_weapons[id]
           @armor1_id = id
           $game_party.lose_weapon(id, 1)
         end
       elsif item.is_a?(RPG::Armor)
         if id == 0 or $game_party.armor_number(id) > 0
           self.armor_type = $data_armors[id]
           @armor1_id = id
           $game_party.lose_armor(id, 1)
         end
       end
     end
     
     if item == nil
       if self.armor_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_weapon(@armor1_id, 1)
           @armor1_id = id
         end
       elsif self.armor_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_armor(@armor1_id, 1)
           @armor1_id = id
         end
       end
     end
     
     if item.is_a?(RPG::Weapon)
       if self.armor_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_weapon(@armor1_id, 1)
           self.armor_type = $data_weapons[id]
           @armor1_id = id
           $game_party.lose_weapon(id, 1)
         end
       elsif self.armor_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.weapon_number(id) > 0
           $game_party.gain_armor(@armor1_id, 1)
           self.armor_type = $data_weapons[id]
           @armor1_id = id
           $game_party.lose_weapon(id, 1)
         end
       end
       
      elsif item.is_a?(RPG::Armor)
       if self.armor_type.is_a?(RPG::Armor)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_armor(@armor1_id, 1)
           self.armor_type = $data_armors[id]
           @armor1_id = id
           $game_party.lose_armor(id, 1)
         end
       elsif self.armor_type.is_a?(RPG::Weapon)
         if id == 0 or $game_party.armor_number(id) > 0
           $game_party.gain_weapon(@armor1_id, 1)
           self.armor_type = $data_armors[id]
           @armor1_id = id
           $game_party.lose_armor(id, 1)
         end
       end   
     end
     
   when 2 
     if id == 0 or $game_party.armor_number(id) > 0
       update_auto_state($data_armors[@armor2_id], $data_armors[id])
       $game_party.gain_armor(@armor2_id, 1)
       @armor2_id = id
       $game_party.lose_armor(id, 1)
     end
   when 3
     if id == 0 or $game_party.armor_number(id) > 0
       update_auto_state($data_armors[@armor3_id], $data_armors[id])
       $game_party.gain_armor(@armor3_id, 1)
       @armor3_id = id
       $game_party.lose_armor(id, 1)
     end
   when 4
     if id == 0 or $game_party.armor_number(id) > 0
       update_auto_state($data_armors[@armor4_id], $data_armors[id])
       $game_party.gain_armor(@armor4_id, 1)
       @armor4_id = id
       $game_party.lose_armor(id, 1)
     end
   end
end

def element_rate(element_id)
   table = [0,200,150,100,50,0,-100]
   result = table[$data_classes[@class_id].element_ranks[element_id]]
   if self.armor_type.is_a?(RPG::Weapon)
     for i in [@armor2_id, @armor3_id, @armor4_id]
       armor = $data_armors
       if armor != nil and armor.guard_element_set.include?(element_id)
         result /= 2
       end
     end
   else 
     for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
       armor = $data_armors
       if armor != nil and armor.guard_element_set.include?(element_id)
         result /= 2
       end
     end
   end
   for i in @states
     if $data_states.guard_element_set.include?(element_id)
       result /= 2
     end
   end
   return result
end

def state_guard?(state_id)
   if self.armor_type.is_a?(RPG::Weapon)
     for i in [@armor2_id, @armor3_id, @armor4_id]
       armor = $data_armors
       if armor != nil
         if armor.guard_state_set.include?(state_id)
           return true
         end
       end
     end
   else 
     return false
     for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
       armor = $data_armors
       if armor != nil
         if armor.guard_state_set.include?(state_id)
           return true
         end
       end
     end
     return false
   end
end

def element_set
   n = []
   unless self.weapon_type.is_a?(RPG::Armor)
   weapon = $data_weapons[@weapon_id]
   n += weapon != nil ? weapon.element_set : []
   end
   unless self.armor_type.is_a?(RPG::Armor)
   weapon2 = $data_weapons[@armor1_id]
   n += weapon2 != nil ? weapon2.element_set : []
   end
   n.flatten!
   n.uniq!
   return n
end


def plus_state_set
   n = []
   unless self.weapon_type.is_a?(RPG::Armor)
   weapon = $data_weapons[@weapon_id]
   n += weapon != nil ? weapon.plus_state_set : []
   end
   unless self.armor_type.is_a?(RPG::Armor)
   weapon2 = $data_weapons[@armor1_id]
   n += weapon2 != nil ? weapon2.plus_state_set : []
   end
   n.flatten!
   n.uniq!
   return n
end

def minus_state_set
   n = []
   unless self.weapon_type.is_a?(RPG::Armor)
   weapon = $data_weapons[@weapon_id]
   n += weapon != nil ? weapon.minus_state_set : []
   end
   unless self.armor_type.is_a?(RPG::Armor)
   weapon2 = $data_weapons[@armor1_id]
   n += weapon2 != nil ? weapon2.minus_state_set : []
   end
   n.flatten!
   n.uniq!
   return n
end

def base_str
   n = $data_actors[@actor_id].parameters[2, @level]
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.str_plus : 0
   n += armor1 != nil ? armor1.str_plus : 0
   n += armor2 != nil ? armor2.str_plus : 0
   n += armor3 != nil ? armor3.str_plus : 0
   n += armor4 != nil ? armor4.str_plus : 0
   return [[n, 1].max, 999].min
end

def base_dex
   n = $data_actors[@actor_id].parameters[3, @level]
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.dex_plus : 0
   n += armor1 != nil ? armor1.dex_plus : 0
   n += armor2 != nil ? armor2.dex_plus : 0
   n += armor3 != nil ? armor3.dex_plus : 0
   n += armor4 != nil ? armor4.dex_plus : 0
   return [[n, 1].max, 999].min
end

def base_agi
   n = $data_actors[@actor_id].parameters[4, @level]
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.agi_plus : 0
   n += armor1 != nil ? armor1.agi_plus : 0
   n += armor2 != nil ? armor2.agi_plus : 0
   n += armor3 != nil ? armor3.agi_plus : 0
   n += armor4 != nil ? armor4.agi_plus : 0
   return [[n, 1].max, 999].min
end

def base_int
   n = $data_actors[@actor_id].parameters[5, @level]
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.int_plus : 0
   n += armor1 != nil ? armor1.int_plus : 0
   n += armor2 != nil ? armor2.int_plus : 0
   n += armor3 != nil ? armor3.int_plus : 0
   n += armor4 != nil ? armor4.int_plus : 0
   return [[n, 1].max, 999].min
end

def base_atk
   n = 0
   unless self.weapon_type.is_a?(RPG::Armor)
   weapon = $data_weapons[@weapon_id]
   n += weapon != nil ? weapon.atk : 0
   end
   unless self.armor_type.is_a?(RPG::Armor)
   weapon2 = $data_weapons[@armor1_id]
   n += weapon2 != nil ? weapon2.atk : 0
   end
   return n
end

def base_pdef
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   pdef1 = weapon != nil ? weapon.pdef : 0
   pdef2 = armor1 != nil ? armor1.pdef : 0
   pdef3 = armor2 != nil ? armor2.pdef : 0
   pdef4 = armor3 != nil ? armor3.pdef : 0
   pdef5 = armor4 != nil ? armor4.pdef : 0
   return pdef1 + pdef2 + pdef3 + pdef4 + pdef5
end

def base_mdef
   if self.weapon_type.is_a?(RPG::Weapon)
     weapon = $data_weapons[@weapon_id]
   elsif self.weapon_type.is_a?(RPG::Armor)
     weapon = $data_armors[@armor1_id]
   end
   if self.armor_type.is_a?(RPG::Armor)
     armor1 = $data_armors[@armor1_id]
   elsif self.armor_type.is_a?(RPG::Weapon)
     armor1 = $data_weapons[@armor1_id]
   end
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   mdef1 = weapon != nil ? weapon.mdef : 0
   mdef2 = armor1 != nil ? armor1.mdef : 0
   mdef3 = armor2 != nil ? armor2.mdef : 0
   mdef4 = armor3 != nil ? armor3.mdef : 0
   mdef5 = armor4 != nil ? armor4.mdef : 0
   return mdef1 + mdef2 + mdef3 + mdef4 + mdef5
end

def base_eva
   armor1 = $data_armors[@armor1_id]
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   eva1 = armor1 != nil ? armor1.eva : 0
   eva2 = armor2 != nil ? armor2.eva : 0
   eva3 = armor3 != nil ? armor3.eva : 0
   eva4 = armor4 != nil ? armor4.eva : 0
   return eva1 + eva2 + eva3 + eva4
end

end
#=================================
# end -O- Game_Actor changes -Midge-
#=================================


#=================================
# class Window_EquipRight mods... -Midge-
#=================================
# this is just so that it will display the right stuff that
# you have equipped in the two hands...
#=================================

class Window_EquipRight < Window_Selectable
def refresh
   self.contents.clear
   @data = []
   @data.push($data_weapons[@actor.weapon_id])
   @data.push($data_armors[@actor.armor1_id])
   if @actor.weapon_type.is_a?(RPG::Weapon)
     @data[0] = $data_weapons[@actor.weapon_id]
   elsif @actor.weapon_type.is_a?(RPG::Armor)
     @data[0] = $data_armors[@actor.weapon_id]
   end
   if @actor.armor_type.is_a?(RPG::Weapon)
     @data[1] = $data_weapons[@actor.armor1_id]
   elsif @actor.armor_type.is_a?(RPG::Armor)
     @data[1] = $data_armors[@actor.armor1_id]
   end
   @data.push($data_armors[@actor.armor2_id])
   @data.push($data_armors[@actor.armor3_id])
   @data.push($data_armors[@actor.armor4_id])
   @item_max = @data.size
   self.contents.font.color = system_color
   self.contents.draw_text(4, 32 * 0, 92, 32, $data_system.words.weapon)
   self.contents.draw_text(4, 32 * 1, 92, 32, $data_system.words.armor1)
   self.contents.draw_text(4, 32 * 2, 92, 32, $data_system.words.armor2)
   self.contents.draw_text(4, 32 * 3, 92, 32, $data_system.words.armor3)
   self.contents.draw_text(5, 32 * 4, 92, 32, $data_system.words.armor4)
   draw_item_name(@data[0], 92, 32 * 0)
   draw_item_name(@data[1], 92, 32 * 1)
   draw_item_name(@data[2], 92, 32 * 2)
   draw_item_name(@data[3], 92, 32 * 3)
   draw_item_name(@data[4], 92, 32 * 4)
end
end
#=================================
# End -O- Window_EquipRight Mods... -Midge-
#=================================


#=================================
# class Window_EquipItem mods... -Midge-
#=================================
# basically i just made it so that both the weapons and
# sheilds would be displayed in the weapon and shield
# hands... both of them... so you can equip either in
# either hand... anyway.. its all cool and stuff...
#=================================

class Window_EquipItem < Window_Selectable

def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   if @equip_type == 0
     weapon_set = $data_classes[@actor.class_id].weapon_set
     for i in 1...$data_weapons.size
       if $game_party.weapon_number(i) > 0 and weapon_set.include?(i)
         @data.push($data_weapons)
       end
     end
     armor_set = $data_classes[@actor.class_id].armor_set
     for i in 1...$data_armors.size
       if $game_party.armor_number(i) > 0 and armor_set.include?(i)
         if $data_armors.kind == 0
           @data.push($data_armors)
         end
       end
     end
   end
   if @equip_type != 0
     if @equip_type == 1
       weapon_set = $data_classes[@actor.class_id].weapon_set
       for i in 1...$data_weapons.size
         if $game_party.weapon_number(i) > 0 and weapon_set.include?(i)
           @data.push($data_weapons)
         end
       end
     end
     armor_set = $data_classes[@actor.class_id].armor_set
     for i in 1...$data_armors.size
       if $game_party.armor_number(i) > 0 and armor_set.include?(i)
         if $data_armors.kind == @equip_type-1
           @data.push($data_armors)
         end
       end
     end
   end
   
   @data.push(nil)
   @item_max = @data.size
   self.contents = Bitmap.new(width - 32, row_max * 32)
   self.contents.font.name = $defaultfonttype
   self.contents.font.size = $defaultfontsize
   for i in 0...@item_max-1
     draw_item(i)
   end
end

end
#=================================
# End -O- Window_EquipItem mod's... -Midge-
#=================================


class Scene_Equip

def refresh
   @item_window1.visible = (@right_window.index == 0)
   @item_window2.visible = (@right_window.index == 1)
   @item_window3.visible = (@right_window.index == 2)
   @item_window4.visible = (@right_window.index == 3)
   @item_window5.visible = (@right_window.index == 4)
   item1 = @right_window.item
   case @right_window.index
   when 0
     @item_window = @item_window1
   when 1
     @item_window = @item_window2
   when 2
     @item_window = @item_window3
   when 3
     @item_window = @item_window4
   when 4
     @item_window = @item_window5
   end
   if @right_window.active
     @left_window.set_new_parameters(nil, nil, nil)
   end
   if @item_window.active
     item2 = @item_window.item
     last_hp = @actor.hp
     last_sp = @actor.sp
     @actor.equip(@right_window.index, item2 == nil ? 0 : item2.id, item2)
     new_atk = @actor.atk
     new_pdef = @actor.pdef
     new_mdef = @actor.mdef
     @actor.equip(@right_window.index, item1 == nil ? 0 : item1.id, item1)
     @actor.hp = last_hp
     @actor.sp = last_sp
     @left_window.set_new_parameters(new_atk, new_pdef, new_mdef)
   end
end

def update_item
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     @right_window.active = true
     @item_window.active = false
     @item_window.index = -1
     return
   end
   if Input.trigger?(Input::C)
     $game_system.se_play($data_system.equip_se)
     item = @item_window.item
     @actor.equip(@right_window.index, item == nil ? 0 : item.id, item)
     @right_window.active = true
     @item_window.active = false
     @item_window.index = -1
     @right_window.refresh
     @item_window.refresh
     return
   end
end

def update
   @left_window.update
   @right_window.update
   @item_window.update
   @item_window1.refresh
   @item_window2.refresh
   refresh
   if @right_window.active
     update_right
     return
   end
   if @item_window.active
     update_item
     return
   end
end
end

class Scene_Battle


def update_phase3_basic_command
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     phase3_prior_actor
     return
   end
   if @active_battler.two_shields
     @actor_command_window.disable_item(0)
   else
     @actor_command_window.enable_item(0)
   end

   
   if Input.trigger?(Input::C)
     case @actor_command_window.index
     when 0
       if @active_battler.two_shields
         $game_system.se_play($data_system.buzzer_se)
         return         
       end
       if @active_battler.two_weapons == true
         @active_battler.current_action.kind = 0
         @active_battler.current_action.basic = 4
       else
         @active_battler.current_action.kind = 0
         @active_battler.current_action.basic = 0
       end     
       $game_system.se_play($data_system.decision_se)
       start_enemy_select
     when 1
       $game_system.se_play($data_system.decision_se)
       @active_battler.current_action.kind = 1
       start_skill_select
     when 2
       $game_system.se_play($data_system.decision_se)
       @active_battler.current_action.kind = 0
       @active_battler.current_action.basic = 1
       phase3_next_actor
     when 3
       $game_system.se_play($data_system.decision_se)
       @active_battler.current_action.kind = 2
       start_item_select
     end
     return
   end
end 
   
def make_basic_action_result
   if @active_battler.current_action.basic == 0
     @animation1_id = @active_battler.animation1_id
     @animation2_id = @active_battler.animation2_id
     if @active_battler.is_a?(Game_Enemy)
       if @active_battler.restriction == 3
         target = $game_troop.random_target_enemy
       elsif @active_battler.restriction == 2
         target = $game_party.random_target_actor
       else
         index = @active_battler.current_action.target_index
         target = $game_party.smooth_target_actor(index)
       end
     end
     if @active_battler.is_a?(Game_Actor)
       if @active_battler.armor_type.is_a?(RPG::Weapon)
         @animation1_id = @active_battler.animation3_id
         @animation2_id = @active_battler.animation4_id
       end
       if @active_battler.restriction == 3
         target = $game_party.random_target_actor
       elsif @active_battler.restriction == 2
         target = $game_troop.random_target_enemy
       else
         index = @active_battler.current_action.target_index
         target = $game_troop.smooth_target_enemy(index)
       end
     end
     @target_battlers = [target]
     for target in @target_battlers
       target.attack_effect(@active_battler)
     end
     return
   end

   if @active_battler.current_action.basic == 1
     @help_window.set_text($data_system.words.guard, 1)
     return
   end
   
   if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2
     @help_window.set_text("???", 1)
     @active_battler.escape
     return
   end
   
   if @active_battler.current_action.basic == 3
     $game_temp.forcing_battler = nil
     @phase4_step = 1
     return
   end
   
   if @active_battler.current_action.basic == 4
     @animation1_id = @active_battler.animation1_id
     @animation2_id = @active_battler.animation2_id
     @animation3_id = @active_battler.animation3_id
     @animation4_id = @active_battler.animation4_id
     if @active_battler.is_a?(Game_Actor)
       if @active_battler.restriction == 3
         target = $game_party.random_target_actor
       elsif @active_battler.restriction == 2
         target = $game_troop.random_target_enemy
       else
         index = @active_battler.current_action.target_index
         target = $game_troop.smooth_target_enemy(index)
       end
     end
     @target_battlers = [target]
     for target in @target_battlers
       target.attack_effect(@active_battler)
     end   
     return
   end
end



def update_phase4_step4
  if @active_battler.is_a?(Game_Actor)   
    if @active_battler.two_weapons == true && @active_battler.sec_attack == 0
      for target in @target_battlers
        target.animation_id = @animation4_id
        target.animation_hit = (target.damage != "Miss")
        @phase4_step = 5
        return
      end
    end
  end
  for target in @target_battlers
    target.animation_id = @animation2_id
    target.animation_hit = (target.damage != "Miss")
  end
  @wait_count = 8
  @phase4_step = 5
end 

def update_phase4_step5
  @help_window.visible = false
  @status_window.refresh
  if @active_battler.is_a?(Game_Actor)   
    if @active_battler.current_action.basic == 4   
      if @active_battler.two_weapons == true && @active_battler.sec_attack == nil
        @active_battler.sec_attack = 0
        @phase4_step = 3
        return
      else
        @active_battler.sec_attack = nil
      end
    end
  end
  for target in @target_battlers
    if target.damage != nil
      target.damage_pop = true
    end
  end
  @phase4_step = 6
end
end


class Window_Command

def enable_item(index)
   draw_item(index, normal_color)
end
end
[/spoiler]
FFFFFFFFFFFFFFFFFFFFFF

Blizzard

Use [ code ] tags, otherwise the code gets corrupted.
Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.



Get DropBox, the best free file syncing service there is!