arshes Jongleur Itinérant


 Nombre de messages: 82 Age: 17 Date d'inscription: 23/06/2007
 | Sujet: Equipement visible Mar 10 Juil 2007 - 12:13 | |
| Ce scrîpt permettra de rendre les equipements visibles sur votre perso ! Le scrîpt (comme d'hab', a mettre au dessus de main et à nommer comme vous voulez) : | Code: | #===================================================== # ■ Visual_Equipment # Written by Rataime # # Edit below # # Note : If you have a custom Window_SaveFile, check the one at the end of the scrîpt, # 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[/color[color=red]]#=================================================== # ● 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_1")
add_armor_sprite(7,"tpl_helmet_2") add_armor_sprite(20,"tpl_armor_white") add_armor_sprite(15,"tpl_armor_blue") add_armor_sprite(21,"tpl_armor_cape")[/color][color=red]#=================================================== # ▼ 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.character(@game_party.actors[i].character_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].character_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 :character_hue end
class Game_Actor < Game_Battler alias visual_setup setup def setup(actor_id) visual_setup(actor_id) @character_hue = (@character_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 |
Ensuite, regardez entre les lignes 15 et 30 :
| Code: | add_armor_sprite(6,"tpl_helmet_1") |
Voilà, à cet endroit vous aurez à rajouter les lignes qui correspondront aux différents équipements. Elles se présenteront sous la forme suivante :
| Code: | add_armor_sprite(ID,nom_image) |
ou
| Code: | add_weapon_sprite(ID,nom_image) |
Armor pour armure, weapon pour arme.
Remplacez ID par le numéro correspondant à l'equipement dans la base de données, et nom_image par le nom de l'image que vous aurez placée dans le dossier "Characters" de votre projet.
Reste à faire les images des équipements |
|
Don Estebahn Maître du Savoir


 Nombre de messages: 2172 Age: 22 Jeux Préférés: Soul Reaver, Morrowind, Way of the Samurai Date d'inscription: 18/02/2007
 | Sujet: Re: Equipement visible Lun 23 Juil 2007 - 12:02 | |
| C'est peut-être que ça nécessite des ressources particulières? (les images de l'équipement qui appraîtront sur le héros par exemple?). Sinon, c'est juste que ça ne marche pas ou ça vous donne un message d'erreur? (et si c'est le cas, lequel?) |
|
Arrya Rôdeur


 Nombre de messages: 35 Age: 21 Date d'inscription: 30/08/2007
 | Sujet: Re: Equipement visible Ven 31 Aoû 2007 - 21:24 | |
| aprés l'avoir tester voila une erreur ici add_armor_sprite(21,"tpl_armor_cape")[/color][color=red]#=================================================== à voir ... Edit :
Voila aprés deux petits trucs ^^ en fait , ceci | Citation: | | [/color][color=red]#=================================================== |
Voila vous en avez un à la ligne 16 , et un autre à la ligne 29
Il suffit de les supprimer et c'est régler , enfin presque ...
Le problème qui se présente après est simple , il faut tout simplement avoir les images des équipements voila.
N'ayant pas tester avec les équipements intégrés à Rmxp, je ne sais pas si cela va résoudre entièrement le problème. |
|
deadcell Trouvère Follet


 Nombre de messages: 639 Age: 23 Niveau Rpg Maker: Excellent Niveau Jeux Préférés: Final Fantasy, Resident evil... Date d'inscription: 21/03/2007
 | Sujet: Re: Equipement visible Sam 1 Sep 2007 - 14:30 | |
| Necropost...
Mais tu es pardonnés, merci à toi opur avoir corriger cette erreur. Cela ma fait pareil après avoir testé le script. |
|
Arrya Rôdeur


 Nombre de messages: 35 Age: 21 Date d'inscription: 30/08/2007
 | Sujet: Re: Equipement visible Sam 1 Sep 2007 - 20:25 | |
| necropost ????? ca veut dire quoi enfin c'est quoi plutôt?? |
|
Don Estebahn Maître du Savoir


 Nombre de messages: 2172 Age: 22 Jeux Préférés: Soul Reaver, Morrowind, Way of the Samurai Date d'inscription: 18/02/2007
 | Sujet: Re: Equipement visible Sam 1 Sep 2007 - 20:37 | |
| Un nécropost, par définition (enfin, si on regarde les racines du mot, on va dire ^^) c'est une réponse postée sur un sujet mort ; donc en clair, une réponse sur un topic ancien de plusieurs mois et qui n'intéresse plus personne (l'exemple le plus classique, c'est le membre qui poste pour donner son avis sur un projet tout en fin de liste... une réponse qui n'a donc aucun intérêt, que ce soit pour l'auteur ou le forum). Le problème avec ça, c'est que ça remonte inutilement des vieux topics au détriment des autres. Mais en l'occurence, puisque tu postais pour corriger le script ça ne pose aucun problème, donc t'es absolument pas en tort, si ça peut te rassurer ![[Don hypocrite]](http://r24.imgfast.net/users/2414/24/76/28/smiles/93380.gif) . _________________  |
|
Arrya Rôdeur


 Nombre de messages: 35 Age: 21 Date d'inscription: 30/08/2007
 | Sujet: Re: Equipement visible Dim 2 Sep 2007 - 20:46 | |
| |
|