Tm
Messages : 215 Points d'Aide : 327 Réputation : 9 Date d'inscription : 12/03/2012
| Sujet: #Affichage des Dégats en Image Mar 20 Mar - 23:53 | |
| #Affichage des Dégats en Image Ce script est à placé au dessus de Main : - Code:
-
#==================================================================== # Remodeled Damage Display (Normal Variant) ver 1.02b # Distribution original support URL # http://members.jcom.home.ne.jp/cogwheel/ #==================================================================== # Modification par DERVVULFMAN #====================================================================
=begin Normalement, les dommages affichées sur l'écran sont en blanc et utilisent la police d'écriture standard. Ce système est different car il utilise des images. Pour installer ce systeme, les images DOIVENT être placées dans le dossier picture. Aux lignes 36 et 37 vous pouvez changer la hauteur et la largeur en pixel des nombres du fichier .png concernant les dégats des combats. NOTE DE DERVVULFMAN : En plus de changer le dossier où se trouvent les images, j'ai rajouté une condition lors de l'affichage des dégats. Cette modification (utilisée pour les effects qui ne font pas de dommages) activent les dégats seulement SI il y a des dégats à montrer. =end
class Scene_Battle alias :main_damage :main def main for path in ["num", "critical", "miss"] RPG::Cache.numeric(path) end main_damage end end
module RPG class Sprite < ::Sprite WIDTH = 18 # Largeur d'un seul des chiffres dans l'image. HEIGHT = 12 # Hauteur d'un seul des chiffres dans l'image. def damage(value, critical) dispose_damage if value.is_a?(Numeric) damage_string = value.abs.to_s else damage_string = value.to_s end if value.is_a?(Numeric) damage_string = value.abs.to_s else damage_string = value.to_s end if value.is_a?(Numeric) if value >= 0 if critical d_bitmap = draw_damage(value, 1) else d_bitmap = draw_damage(value, 0) end else d_bitmap = draw_damage(value, 2) end else d_bitmap = draw_damage(value, 3) end # Added Fix (Only show damage if there IS a damage value to show.) if d_bitmap != nil @_damage_sprite = ::Sprite.new @_damage_sprite.bitmap = d_bitmap @_damage_sprite.ox = d_bitmap.width / 2 @_damage_sprite.oy = d_bitmap.height / 2 @_damage_sprite.x = self.x + self.viewport.rect.x @_damage_sprite.y = self.y - self.oy / 2 + self.viewport.rect.y @_damage_sprite.z = 3000 @_damage_duration = 40 end end def draw_damage(value, element) width = 0 if value.is_a?(Numeric) value = value.abs fig = value.to_s.size - 1 file = RPG::Cache.numeric("num") d_width = WIDTH * fig + file.rect.width / 10 if element == 1 critical = RPG::Cache.numeric("critical") d_width = [d_width, critical.rect.width].max d_bitmap = Bitmap.new(d_width, HEIGHT + file.rect.height / 3) d_x = (width - critical.rect.width / 10) / 2 d_bitmap.blt(d_x, 0, critical, critical.rect) else d_bitmap = Bitmap.new(d_width, HEIGHT + file.rect.height / 3) end d_x = ((d_width) - (WIDTH * fig + file.rect.width / 10)) / 2 while fig >= 0 d_bitmap.blt(d_x, HEIGHT, file, Rect.new((value / (10 ** fig)) * file.rect.width / 10, element * file.rect.height / 3, file.rect.width / 10, file.rect.height / 3)) d_x += WIDTH value %= 10 ** fig fig -= 1 end else case value when "" return when "Miss" file = RPG::Cache.numeric("miss") else file = RPG::Cache.numeric(value) end d_bitmap = file end return d_bitmap end end module Cache def self.numeric(filename) self.load_bitmap("Graphics/Pictures/", filename) end end end Maintenant voici les image à enregistrer dans votre dossier "Picture" : - Spoiler:
Les 3 images sont à nommer respectivement : - "critical" - "miss" - "num" | |
|
Darkman974
Messages : 182 Points d'Aide : 222 Réputation : 14 Date d'inscription : 18/04/2012 Age : 26 Localisation : Devant mon ordinateur, ou ma PS3...
| Sujet: Re: #Affichage des Dégats en Image Dim 20 Mai - 8:49 | |
| Ca marche que pour le A-RPG ou pour tous les système de combats ? | |
|
Tm
Messages : 215 Points d'Aide : 327 Réputation : 9 Date d'inscription : 12/03/2012
| Sujet: Re: #Affichage des Dégats en Image Dim 20 Mai - 10:11 | |
| Cela marche pour tous les système de combat | |
|
Contenu sponsorisé
| Sujet: Re: #Affichage des Dégats en Image | |
| |
|