왼손에도 도끼 오른손에도 도끼~
난 쌍칼이 될래~

=begin
Duel Wield -> Free Hands
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
No requirements
Changes dual wielding to allow characters to equip shield or one handed
weapons in the shield slot. Also allows for two handed weapons.
----------------------
Instructions
----------------------
Notetag two handed weapon with <two-handed> and have them
disable the shield slot.
I would reccomend changing the slot name to Main Hand and Off Hand
or something similiar
----------------------
Known bugs
----------------------
None
=end
class Game_Actor
def equip_slots
return [0,1,2,3,4]
end
def change_equip(slot_id, item)
return unless trade_item_with_party(item, equips[slot_id])
return if (item && equip_slots[slot_id] != item.etype_id) and
not (dual_wield? and (equip_slots[slot_id] == 1 and item.etype_id == 0))
@equips[slot_id].object = item
refresh
end
def release_unequippable_items(item_gain = true)
@equips.each_with_index do |item, i|
if !equippable?(item.object,equip_slots[i]) || (item.object.etype_id != equip_slots[i] and
not (dual_wield? and (equip_slots[i] == 1 and item.object.etype_id == 0)))
trade_item_with_party(nil, item.object) if item_gain
item.object = nil
end
end
end
def equippable?(item, slot = nil)
unless slot.nil?
if slot == 1 and dual_wield?
return (super(item) and not equip_type_sealed?(1)) if item.is_a?(RPG::Weapon)
end
end
return super(item)
end
end
class RPG::Weapon
def two_handed?
return self.note.include?("<two-handed>")
end
end
class Window_EquipItem < Window_ItemList
def include?(item)
return true if item == nil
return false unless item.is_a?(RPG::EquipItem)
return false if @slot_id < 0
return false if @actor.equip_slots[@slot_id] == 1 and
(item.is_a?(RPG::Weapon) and item.two_handed?)
return false if (item.etype_id != @actor.equip_slots[@slot_id]) and
not (@actor.dual_wield? and (@actor.equip_slots[@slot_id] == 1 and item.etype_id == 0))
return @actor.equippable?(item,@actor.equip_slots[@slot_id])
end
end