the help of RPG Maker XP
 
Retour au forum
 

Ajouter une réponse

Pseudo :    S'inscrire ?
Mot de passe :    Mot de passe perdu ?
Icône :
                                
                                
Message :
 
 
 
Smilies personnalisés
 
Options :
Notification par email en cas de réponse
Désactiver les smilies
Activer votre signature
 
 
Dernières réponses
zubrus
je vous est du je n'utilise pas se script..lol
sansanb
Non, ce n'est pas normal Lerua :s

en tout cas moi ca me le fait pas !

si qunlqu'un d'autres sur ce forum utlilsé ce script

AVEZ VOUS LE MEME PROBLEME QUE LERUA ?

Message édité le 04-05-2005 à 12:33:07 par sansanb
zubrus
non moi je ne veux pas faire sa se n,est pas utile
lerua
il fait que le messages s'affiche lettre pas lettre (par exemple lerua : ca fait : l apres le apres ler, etc.)
tu comprends ?
par contre moi ca me fait ca : l0e0r0u0a c'est normal ?
zubrus
je en comprend pas se que se sripte est suposer faire...
sansanb
Bonjour

Ce script permet d'afficher les messages lettre par lettre comme dans rpg maker 2000 et 2003.

Ouvrez l'éditeur de script, puis remplacer le script Window_Message par celui qui suit.



[citation=Snake]Bonjour

Ce script permet d'afficher les messages lettre par lettre comme dans rpg maker 2000 et 2003.

Ouvrez l'éditeur de script, puis remplacer le script Window_Message par celui qui suit.

Citation :


class Window_Message < Window_Selectable
# ------------------------------------
def initialize
super(80, 304, 480, 160)
self.contents = Bitmap.new(width - 32, height - 32)
self.visible = false
self.z = 9998
@update_text = true
@fade_in = false
@fade_out = false
@contents_showing = false
@cursor_width = 0
self.active = false
self.index = -1
end
# ------------------------------------
def dispose
terminate_message
$game_temp.message_window_showing = false
if @input_number_window != nil
@input_number_window.dispose
end
super
end
# ------------------------------------
def terminate_message
self.active = false
self.pause = false
self.index = -1
self.contents.clear
@update_text = true
@contents_showing = false
if $game_temp.message_proc != nil
$game_temp.message_proc.call
end
$game_temp.message_text = nil
$game_temp.message_proc = nil
$game_temp.choice_start = 99
$game_temp.choice_max = 0
$game_temp.choice_cancel_type = 0
$game_temp.choice_proc = nil
$game_temp.num_input_start = 99
$game_temp.num_input_variable_id = 0
$game_temp.num_input_digits_max = 0
if @gold_window != nil
@gold_window.dispose
@gold_window = nil
end
end
# ------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
@x = @y = 0
@cursor_width = 0
if $game_temp.choice_start == 0
@x = 8
end
if $game_temp.message_text != nil
@text = $game_temp.message_text
begin
last_text = @text.clone
@text.gsub!(/[Vv][([0-9]+)]/) { $game_variables[$1.to_i] }
end until @text == last_text
@text.gsub!(/[Nn][([0-9]+)]/) do
$game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
end
@text.gsub!(/\/) { "00" }
@text.gsub!(/[Cc][([0-9]+)]/) { "01[#{$1}]" }
@text.gsub!(/[Gg]/) { "02" }
end
end
# ------------------------------------
def reset_window
if $game_temp.in_battle
self.y = 16
else
case $game_system.message_position
when 0
self.y = 16
when 1
self.y = 160
when 2
self.y = 304
end
end
if $game_system.message_frame == 0
self.opacity = 255
else
self.opacity = 0
end
self.back_opacity = 160
end
# ------------------------------------
def update_text
if @text != nil
while ((c = @text.slice!(/./m)) != nil)
if c == "00"
c = ""
end
if c == "01"
@text.sub!(/[([0-9]+)]/, ""
color = $1.to_i
if color >= 0 and color <= 7
self.contents.font.color = text_color(color)
end
end
if c == "02"
if @gold_window == nil
@gold_window = Window_Gold.new
@gold_window.x = 560 - @gold_window.width
if $game_temp.in_battle
@gold_window.y = 192
else
@gold_window.y = self.y >= 128 ? 32 : 384
end
@gold_window.opacity = self.opacity
@gold_window.back_opacity = self.back_opacity
end
next
end
if c == "n"
if @y >= $game_temp.choice_start
@cursor_width = [@cursor_width, @x].max
end
@y += 1
@x = 0
if @y >= $game_temp.choice_start
@x = 8
end
next
end
self.contents.draw_text(4 + @x, 32 * @y, 40, 32, c)
@x += self.contents.text_size(c).width
$game_system.se_play($data_system.decision_se)
return
end
end
if $game_temp.choice_max > 0
@item_max = $game_temp.choice_max
self.active = true
self.index = 0
end
if $game_temp.num_input_variable_id > 0
digits_max = $game_temp.num_input_digits_max
number = $game_variables[$game_temp.num_input_variable_id]
@input_number_window = Window_InputNumber.new(digits_max)
@input_number_window.number = number
@input_number_window.x = self.x + 8
@input_number_window.y = self.y + $game_temp.num_input_start * 32
end
@update_text = false #š
end
# ------------------------------------
def update
super
if @fade_in
self.contents_opacity = 255
if @input_number_window != nil
@input_number_window.contents_opacity = 255
end
if self.contents_opacity == 255
@fade_in = false
end
end
if @input_number_window != nil
@input_number_window.update
if Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
$game_variables[$game_temp.num_input_variable_id] =
@input_number_window.number
$game_map.need_refresh = true
@input_number_window.dispose
@input_number_window = nil
terminate_message
end
return
end
if @contents_showing
if @update_text
update_text
return
end
if $game_temp.choice_max == 0
self.pause = true
end
if self.pause == true && Input.dir4 != 0
terminate_message
end
if Input.trigger?(Input::B)
if $game_temp.choice_max > 0 and $game_temp.choice_cancel_type > 0
$game_system.se_play($data_system.cancel_se)
$game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
terminate_message
end
terminate_message if self.pause == true
end
if Input.trigger?(Input::C)
if $game_temp.choice_max > 0
$game_system.se_play($data_system.decision_se)
$game_temp.choice_proc.call(self.index)
end
terminate_message
end
return
end
if @fade_out == false and $game_temp.message_text != nil
@contents_showing = true
$game_temp.message_window_showing = true
reset_window
refresh
Graphics.frame_reset
self.visible = true
self.contents_opacity = 0
if @input_number_window != nil
@input_number_window.contents_opacity = 0
end
@fade_in = true
return
end
if self.visible
@fade_out = true
self.opacity = 0
if self.opacity == 0
self.visible = false
@fade_out = false
$game_temp.message_window_showing = false
end
return
end
end
# ------------------------------------
def update_cursor_rect
if @index >= 0
n = $game_temp.choice_start + @index
self.cursor_rect.set(8, n * 32, @cursor_width, 32)
else
self.cursor_rect.empty
end
end
end


Voila...

BY SNAKE OF http://forum.alloforum.com/sujet-6492-0-101814-0-0-1-377073-1.html

Message édité le 25-04-2005 à 17:31:25 par sansanb
 
Retour au forum
 
créer forum