themrmystery 0 Report post Posted February 5, 2009 RESOLVED #=============================================================================== # Multi-Weapon Sets, by TheMrMystery # v. 1.0 #---------------------------------------------------------------------- # Instructions: Put below all other scripts and above Main. # Look for the Configuration section, near the top. # # Features: Allows actors that know specific skills, to use the weapons of # another class. # # Creates the ability to make weapon proficiencies as such; # - allowing a Wizard to become a Spell Sword, by letting him # take the skill "Use Swords" and unlocking all weapons listed # in the "Use Sword" class. # # Why was this script made? # For creation of a Dungeons & Dragons style weapon proficiency. # # Compatability: # There are no known clashes with other scripts. # # Notes: # This script aliases the equippable? in Game_Actor, and rewrites the refresh # method in Window_EquipItem. # # Special Thanks: # Modern Algebra: rmrk.net (My "mentor" in writing my first script: this one) # # Legal: # This script is not to be used for commercial use without express permission # by myself (TheMrMystery, copywrite@themrmystery.com) # # This script may be edited to suit your needs, however, please first suggest # any additions to me via, forum @ rmrk.net # # If you use this script, please provide some credit to myself (TheMrMystery) # somewhere in your game. #=============================================================================== #=============================================================================== # Start Code #=============================================================================== class Game_Actor alias mystery_multi_item_sets equippable? def equippable?(item) #---- Start Configuration ---- # Enter the skill_id of the skill required to unlock the weapon list # Enter the class_id of the class that has the weapons wanted # Example: skill_id = 28 is Weapon Mastery: Whip # class_id = 13 is Whip Master (class); which contains all whips # in his class weapon list skill_id_array = [50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35] class_id_array = [39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 43, 42, 41, 40] #---- End Configuration ------ eqp_check = mystery_multi_item_sets (item) return true if eqp_check if item.is_a?(RPG::Weapon) real_class = @class_id # If weapon proficiency learned for i in 0...skill_id_array.size if skill_learn? (skill_id_array[i]) @class_id = class_id_array[i] eqp_check |= mystery_multi_item_sets (item) @class_id = real_class end end end return eqp_check end end class Window_EquipItem #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh if self.contents != nil self.contents.dispose self.contents = nil end @data = [] # Add equippable weapons if @equip_type == 0 for i in 1...$data_weapons.size if $game_party.weapon_number(i) > 0 && @actor.equippable? ($data_weapons[i]) @data.push($data_weapons[i]) end end end # Add equippable armor if @equip_type != 0 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[i].kind == @equip_type-1 @data.push($data_armors[i]) end end end end # Add blank page @data.push(nil) # Make a bit map and draw all items @item_max = @data.size self.contents = Bitmap.new(width - 32, row_max * 32) for i in 0...@item_max-1 draw_item(i) end end end #=============================================================================== # End Code #=============================================================================== Share this post Link to post Share on other sites