rayon-gama Modérateur
Nombre de messages : 352 Age : 44 Localisation : &é"'(-è_çà)=#{[|\^@]} (Rege Date d'inscription : 03/04/2010
| Sujet: Tutorial >> Meilleur affichage du choix des nombres. Mar 6 Avr - 11:35 | |
| Bonjour ceci est un script permettant un meilleur affichage et de transformer ceci : en: Pour l'intégrer dans votre projet remplacez le script Window_InputNumber par ceci - Code:
-
#============================================================================== # ■ Window_InputNumber_2 #¤¤¤¤¤Version améliorer¤¤¤¤¤ #By Rayon-Gama #|-| |-| |-| |-| |-| #Meilleur affichage du choix de nombre #------------------------------------------------------------------------------ # メッセージウィンドウの内部で使用する、数値入力用のウィンドウです。 #==============================================================================
class Window_InputNumber < Window_Base #Ici la version améliorer ! #Début du changement : def initialize(digits_max) @digits_max = digits_max @number = 0 # 数字の幅からカーソルの幅を計算 (0~9 は等幅と仮定) dummy_bitmap = Bitmap.new(32, 32) @cursor_width = dummy_bitmap.text_size("0").width + 20 dummy_bitmap.dispose super(0, 0, @cursor_width * @digits_max + 42, 74) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize self.z += 9999 self.opacity = 5 @index = 0 refresh update_cursor_rect end #Fin du changement! def number return @number end def number=(number) @number = [[number, 0].max, 10 ** @digits_max - 1].min refresh end def update_cursor_rect self.cursor_rect.set(@index * @cursor_width, 0, @cursor_width, 32) end def update super if Input.repeat?(Input::UP) or Input.repeat?(Input::DOWN) $game_system.se_play($data_system.cursor_se) place = 10 ** (@digits_max - 1 - @index) n = @number / place % 10 @number -= n * place # 上なら +1、下なら -1 n = (n + 1) % 10 if Input.repeat?(Input::UP) n = (n + 9) % 10 if Input.repeat?(Input::DOWN) @number += n * place refresh end if Input.repeat?(Input::RIGHT) if @digits_max >= 2 $game_system.se_play($data_system.cursor_se) @index = (@index + 1) % @digits_max end end # カーソル左 if Input.repeat?(Input::LEFT) if @digits_max >= 2 $game_system.se_play($data_system.cursor_se) @index = (@index + @digits_max - 1) % @digits_max end end update_cursor_rect end def refresh self.contents.clear self.contents.font.color = normal_color s = sprintf("%0*d", @digits_max, @number) for i in 0...@digits_max self.contents.draw_text(i * @cursor_width + 4, 0, 32, 32, s[i,1]) end end end | |
|
kilam1110 Webmaster
Nombre de messages : 1165 Age : 104 Localisation : Devant mon ordi Date d'inscription : 12/02/2009
| Sujet: Re: Tutorial >> Meilleur affichage du choix des nombres. Mar 6 Avr - 18:25 | |
| Je déplace dans scripts, merci de ta contribution | |
|
rayon-gama Modérateur
Nombre de messages : 352 Age : 44 Localisation : &é"'(-è_çà)=#{[|\^@]} (Rege Date d'inscription : 03/04/2010
| Sujet: Re: Tutorial >> Meilleur affichage du choix des nombres. Mar 6 Avr - 18:28 | |
| Oui désoler j'ai vus cette partie qu'après avoir poster mon message. | |
|
Contenu sponsorisé
| Sujet: Re: Tutorial >> Meilleur affichage du choix des nombres. | |
| |
|