Visual_Equipment - by Rataime
voila si certains utilisent l'equipement visible sur la map voici celui en combat testé et fonctionnel c'est ma 1ere modification de script et j'en suis assez fier bien que les scripteurs initiés le feraient en 10 secondes
utilisation:
ajoutez a partir de la ligne 33 des lignes de code:
pour une armure:add_armor_sprite(1,"machin")
1=a l'ID de l'armur,accessoire,bouclier
machin:est le nom de 'image a superposer avec votre battler sans son extension noubliez pas les guillemets
pour une arme:add_weapon_sprite(1,"machin")
les images doivent se trouver dans le repertoire Graphics/characters
et voila en esperant avoir pu servir a quelque chose car moi je l'utilise
| Code: |
| #============================================================================== # ■ Visual_Equipment # Written by Rataime # # Edit below # # Note : If you have a custom Window_SaveFile, check the one at the end of the script, # add the added lines to yours, and delete the whole Window_SaveFile class here #============================================================================== def equip_update(light=false) $visual_equipment=Array.new $visual_equipment[0]=light for i in 0..3 $visual_equipment[i+1]=[] end #=================================================== # ● EDIT HERE ! #=================================================== #If weapon n°33 is equiped, add the charset tpl_helmet_1.png (I don't have a weapon charset ><) #add_weapon_sprite(33,"tpl_helmet_1") #If weapon n°6 is equiped, add the charset tpl_helmet_1.png add_armor_sprite(6,"tpl_helmet_2") add_weapon_sprite(7,"tpl_helmet_1") add_armor_sprite(20,"tpl_armor_white") add_armor_sprite(15,"tpl_armor_blue") add_armor_sprite(21,"tpl_armor_cape") add_armor_sprite(1,"shield") add_weapon_sprite(9,"divinesword") #=================================================== # ▼ Visual_equip functions #=================================================== RPG::Cache.clear @game_party = $game_party @game_party = $game_party2 if $visual_equipment[0] for i in 0...@game_party.actors.size for img in $visual_equipment[i+1] bitmap = RPG::Cache.battler(@game_party.actors[i].battler_name, @game_party.actors[i].character_hue) if img!=true and img!=false add_equip(bitmap,img,i) end end end end def add_equip(sprite,to_add,character) @game_party = $game_party @game_party = $game_party2 if $visual_equipment[0] bmp = Sprite.new bmp.visible =false bmp.bitmap = RPG::Cache.character(to_add,@game_party.actors[character].battler_hue) color = bmp.bitmap.get_pixel(0, 0) x=sprite.width y=sprite.height if $visual_equipment[0] x=x/4 y=y/4 end for i in 0..x for j in 0..y color_get=bmp.bitmap.get_pixel(i, j) if color_get!=color sprite.set_pixel(i, j ,color_get) end end end bmp=nil end def add_weapon_sprite(id,sprite) @game_party = $game_party @game_party = $game_party2 if $visual_equipment[0] for i in 0...@game_party.actors.size if @game_party.actors[i].weapon_id==id $visual_equipment[i+1].push(sprite) end end end def add_armor_sprite(id,sprite) @game_party = $game_party @game_party = $game_party2 if $visual_equipment[0] for i in 0...@game_party.actors.size if @game_party.actors[i].armor1_id==id or @game_party.actors[i].armor2_id==id or @game_party.actors[i].armor3_id==id or @game_party.actors[i].armor4_id==id $visual_equipment[i+1].push(sprite) end end end #=================================================== # ▼ CLASS Scene_Equip edit #=================================================== class Scene_Equip alias visual_update_right update_right def update_right if Input.trigger?(Input::B) equip_update $game_system.se_play($data_system.cancel_se) $scene = Scene_Menu.new(2) return end visual_update_right end end class Interpreter alias visual_command_319 command_319 def command_319 actor = $game_actors[@parameters[0]] if actor != nil actor.equip(@parameters[1], @parameters[2]) end equip_update return true end end class Game_Character attr_accessor :battler_hue end class Game_Actor < Game_Battler alias visual_setup setup def setup(actor_id) visual_setup(actor_id) @cbattler_hue = (@battler_hue+1)%256 end end class Scene_Load alias visual_read_save_data read_save_data alias visual_on_cancel on_cancel def on_cancel equip_update visual_on_cancel end def read_save_data(file) visual_read_save_data(file) equip_update end end class Scene_Save alias visual_on_decision on_decision alias visual_on_cancel on_cancel def on_cancel equip_update visual_on_cancel end def on_decision(file) equip_update visual_on_decision(file) end end class Scene_Title alias visual_command_new_game command_new_game def command_new_game visual_command_new_game equip_update end end class Window_SaveFile < Window_Base def initialize(file_index, filename) super(0, 64 + file_index % 4 * 104, 640, 104) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize @file_index = file_index @filename = "Save#{@file_index + 1}.rxdata" @time_stamp = Time.at(0) @file_exist = FileTest.exist?(@filename) if @file_exist file = File.open(@filename, "r") @time_stamp = file.mtime @characters = Marshal.load(file) @frame_count = Marshal.load(file) @game_system = Marshal.load(file) @game_switches = Marshal.load(file) @game_variables = Marshal.load(file) @self_variables = Marshal.load(file)#added @game_screen = Marshal.load(file)#added @game_actors = Marshal.load(file)#added $game_party2=@game_party= Marshal.load(file)#added @total_sec = @frame_count / Graphics.frame_rate file.close end equip_update(true)#added refresh @selected = false end end |
utilisation:
ajoutez a partir de la ligne 33 des lignes de code:
pour une armure:add_armor_sprite(1,"machin")
1=a l'ID de l'armur,accessoire,bouclier
machin:est le nom de 'image a superposer avec votre battler sans son extension noubliez pas les guillemets
pour une arme:add_weapon_sprite(1,"machin")
les images doivent se trouver dans le repertoire Graphics/characters
et voila en esperant avoir pu servir a quelque chose car moi je l'utilise
Publicité