Inscrit le: 02 Nov 2007, 01:00 Messages: 24 Points d'aide: 0/60
Créations :
Voir ses créations
|
Script - Partie 1 : - Code: Tout sélectionner
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ** Window_Base # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ class Window_Base # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_element_icon(actor, x, y, skill_id, element_id) if($data_skills[skill_id].element_set.to_s != "") @element_id = $data_skills[skill_id].element_set[element_id] @elt_icon = RPG::Cache.icon("Elements/"+@element_id.to_s) self.contents.blt(x, y, @elt_icon, Rect.new(0, 0, 24, 24)) end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_skill_plus_status_icon( x, y, skill_id, status_id) @status_name = $data_skills[skill_id].plus_state_set[status_id] @status_name = $data_states[@status_name].name if(@status_name != "") @status_icon = RPG::Cache.icon("Statuts/"+@status_name) self.contents.blt(x, y, @status_icon, Rect.new(0, 0, 24, 24)) end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_skill_minus_status_icon( x, y, skill_id, status_id) @status_name = $data_skills[skill_id].minus_state_set[status_id] @status_name = $data_states[@status_name].name if(@status_name != "") @status_icon = RPG::Cache.icon("Statuts/"+@status_name) self.contents.blt(x, y, @status_icon, Rect.new(0, 0, 24, 24)) end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_occasion(nombre) @occasion = ["toujours","en combat","depuis le menu","jamais"] for i in 0...@occasion.size if(nombre==i) return @occasion[i] end end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_scope(nombre) @portee = ["Aucun","Un ennemi","Tous les ennemis", "Un allié", "Tous les alliés", "Un allié KO","Tous les alliés KO", "Utilisateur"] for i in 0...@portee.size if(nombre==i) return @portee[i] end end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ** Window_Skill_List # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ class Window_Skill_List < Window_Selectable # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def initialize(actor) super(0, 128, 640, 352) @actor = actor @column_max = 2 refresh self.index = 0 if $game_temp.in_battle self.y = 64 self.height = 256 self.back_opacity = 160 end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def skill return @data[self.index] end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def refresh if self.contents != nil self.contents.dispose self.contents = nil end @data = [] for i in 0...@actor.skills.size skill = $data_skills[@actor.skills[i]] if skill != nil @data.push(skill) end end @item_max = @data.size if @item_max > 0 self.contents = Bitmap.new(width - 32, row_max * 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize for i in 0...@item_max draw_item(i) end end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def draw_item(index) skill = @data[index] x = 4 + index % 2 * (288 + 32) y = index / 2 * 32 rect = Rect.new(x, y, self.width / @column_max - 32, 32) self.contents.fill_rect(rect, Color.new(0, 0, 0, 0)) bitmap = RPG::Cache.icon(skill.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0) end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def update_help @help_window.set_text(self.skill == nil ? "" : self.skill.description) end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ** Window_Help # Modifier par Loup Malade # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ class Window_Skill_Description < Window_Base # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ attr_accessor :skill # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def initialize(actor) super(0, 0, 640, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize @skill = nil @actor = actor end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def refresh self.contents.clear skill_id = @skill.id if @actor.skills.size > 0 bitmap = RPG::Cache.icon(skill.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(0, 0, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.font.color = system_color self.contents.draw_text(36, 0, self.width - 40, 32, "-Nom") self.contents.font.color = normal_color text= @skill.name self.contents.draw_text(36, 32, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(256, 0, self.width - 40, 32, "-MP") self.contents.font.color = normal_color text= @skill.sp_cost.to_s self.contents.draw_text(256, 32, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(36, 64, self.width - 40, 32, "-Description : ") self.contents.font.color = normal_color text= @skill.description self.contents.draw_text(36, 96, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(36, 128, self.width - 40, 32, "-Portée de l'action : ") self.contents.font.color = normal_color text= draw_scope(@skill.scope) self.contents.draw_text(228, 128, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(36, 160, self.width - 40, 32, "-Utilisation : ") self.contents.font.color = normal_color text= draw_occasion(@skill.occasion) self.contents.draw_text(164, 160, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(36, 192, self.width - 40, 32, "-Puissance de l'attaque : ") self.contents.font.color = normal_color text= @skill.power.to_s self.contents.draw_text(296, 192, self.width - 40, 32, text) self.contents.font.color = system_color self.contents.draw_text(36, 228, self.width - 40, 32, "-Eléments : " ) self.contents.font.color = normal_color for i in 0...skill.element_set.size draw_element_icon(@actor, 152+i*32, 228, skill_id, i) end self.contents.font.color = system_color self.contents.draw_text(36, 260, self.width - 40, 32, "-Status infligés : ") self.contents.font.color = normal_color for i in 0...skill.plus_state_set .size draw_skill_plus_status_icon( 208+i*32, 260 , skill_id, i) end self.contents.font.color = system_color self.contents.draw_text(36, 292, self.width - 40, 32, "-Status soignés : ") self.contents.font.color = normal_color for i in 0...skill.minus_state_set .size draw_skill_minus_status_icon( 206+i*32, 292 , skill_id, i) end end end # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ end
|
|