Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 4075 miembros registrados.
El último usuario registrado es chuwakal.

Nuestros miembros han publicado un total de 84152 mensajes en 11989 argumentos.

Ayuda con faces en los mensajes

Ver el tema anterior Ver el tema siguiente Ir abajo

Ayuda con faces en los mensajes

Mensaje por DrNaoto el 2014-07-14, 22:07

Hola necesito ayuda, he conseguido un script para RPG XP, con la finalidad de conseguir colocar faces en los mensajes, pero hay un error en la siguiente linea
text.gsub!(/\[Cc][([0-9]+)]/) { "�01[#{$1}]" }text.gsub!(/\[Gg]/) { "�02" }

y el script

Spoiler:

Codigo
Código:

#==============================================================================
class Window_Message < Window_Selectable
#--------------------------------------------------------------------------
##--------------------------------------------------------------------------
  def initialize
    super(80, 304, 480, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.visible = falseself.z = 9998
    @fade_in = false
    @fade_out = false
    @contents_showing = false
    @cursor_width = 0
    @pic_width = 96
    @pic_height = 96
    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
    @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
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsizex = 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!(/\[Ww][([0-9]+)]/) do
        @pic_width = $1.to_i""
      end
      text.gsub!(/\[Hh][([0-9]+)]/) do
        @pic_height = $1.to_i""
      end
      text.gsub!(/\[Ff][([w]+)]/) do
        temp = RPG::Cache.picture($1)
        pic_x = self.contents.width - @pic_width - 10
        pic_y = self.contents.height / 2 - @pic_height / 2
        dest = Rect.new(pic_x,pic_y,@pic_width, @pic_height)
        src = Rect.new(0,0,temp.width, temp.height)
        self.contents.stretch_blt(dest, temp, src)
        ""
      end
      text.gsub!(/\\/) { "�00" }
      text.gsub!(/\[Cc][([0-9]+)]/) { "�01[#{$1}]" }text.gsub!(/\[Gg]/) { "�02" }
      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
          next
        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 = 192else
              @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 += 1x = 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
      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
  end
#--------------------------------------------------------------------------
##--------------------------------------------------------------------------
  def reset_window
    if $game_temp.in_battle
      self.y = 16
    else
      case $game_system.message_position
      when 0 # ?self.y = 16when 1 # ?self.y = 160when 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
super
if @fade_in
self.contents_opacity += 24
if @input_number_window != nil
@input_number_window.contents_opacity += 24
end
if self.contents_opacity == 255
@fade_in = false
end
return
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 $game_temp.choice_max == 0
self.pause = true
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
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 -= 48
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


¿Que es lo que pasa en el?
AYUDAAAAAAA
avatar
DrNaoto
Iniciado
Iniciado

0/3

Créditos 5

Gracias : 2

Volver arriba Ir abajo

Re: Ayuda con faces en los mensajes

Mensaje por Faye Valentine el 2014-07-14, 22:23

Bota eso, y usa mejor el UMS. Creeme, te viene mejor. Hasta puedes colocar faces animadas.

Es que encontrar el error en esa línea es increiblemente dificil, vamos.

Faye Valentine
Soñador
Soñador

0/3

Créditos 281

Gracias : 34

Volver arriba Ir abajo

Re: Ayuda con faces en los mensajes

Mensaje por DrNaoto el 2014-07-14, 22:24

¿Donde puedo encontrar el UMS?
avatar
DrNaoto
Iniciado
Iniciado

0/3

Créditos 5

Gracias : 2

Volver arriba Ir abajo

Re: Ayuda con faces en los mensajes

Mensaje por Wecoc el 2014-07-14, 22:32

Hay dos errores en esa línea. El primero es que de donde lo copiaste salió mal y te salen esos �, tienes que cambiarlos todos por \0 (con un remplazar desde el word o algo puedes hacerlo rápido)

Y el segundo, pues que en realidad son dos líneas y falta un enter, debería ser así:
Código:
text.gsub!(/\[Cc][([0-9]+)]/) { "\001[#{$1}]" }
text.gsub!(/\[Gg]/) { "\002" }


El UMS está en ésta web:
http://www.gdunlimited.net/forums/files/file/63-ccoas-ums-18/
avatar
Wecoc
Administrador
Administrador



Créditos 9138

Gracias : 472

Volver arriba Ir abajo

Re: Ayuda con faces en los mensajes

Mensaje por DrNaoto el 2014-07-14, 22:37

Gracias a todos son los mejores del mundo creo que voy a
T.T T.T T.T
JAJAJAJA, Bueno gracias XD
avatar
DrNaoto
Iniciado
Iniciado

0/3

Créditos 5

Gracias : 2

Volver arriba Ir abajo

Re: Ayuda con faces en los mensajes

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.