O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Message+

Iniciado por Corvo, 13/11/2018 às 18:22

13/11/2018 às 18:22 Última edição: 16/11/2018 às 21:15 por Corvo
Message+


Condições de Uso:
Livre para membros registrados em centrorpg.com.


Descrição:
O script faz leves alterações no sistema de mensagens padrão, simplificando-o ainda mais. O número de linhas a ser mostrado é reduzido para três. A largura da janela foi reduzida em vinte pixels por cada lado. Também foi reduzida a velocidade de abertura e fechamento das janelas. A janela de opções foi alterada para adaptar-se ao novo formato, mas não sofreu outras mudanças.


Atualizações:

14/11/2018: Correção de pequeno erro que imobilizava o jogador ao mostrar duas mensagens consecutivamente.
16/11/2018: Faces centralizados. Sugestão de Skyloftian.



Imagens:
Janela Padrão
[close]
Janela Alterada
[close]


Código:
#==============================================================================
# ** Message+
#------------------------------------------------------------------------------
#  O script faz leves alterações no sistema de mensagens padrão. O número de
# linhas a ser mostrado é reduzido para três. A largura da janela foi reduzida
# em vinte pixels em cada lado. Também foi reduzida a velocidade de abertura e
# fechamento das janelas. A janela de opções foi alterada para se adaptar ao
# novo formato, mas não sofreu mudanças consideráveis.
#
# Para mais códigos, suporte e termos de uso acesse: centrorpg.com
#==============================================================================

#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
#  Reduzindo a velocidade de abertura/fechamento.
#==============================================================================

class Window_Base < Window
  #--------------------------------------------------------------------------
  # * Update Open Processing
  #--------------------------------------------------------------------------
  def update_open
    self.openness += 24
    @opening = false if open?
  end
  #--------------------------------------------------------------------------
  # * Update Close Processing
  #--------------------------------------------------------------------------
  def update_close
    self.openness -= 24
    @closing = false if close?
  end
  #--------------------------------------------------------------------------
  # * Draw Face Graphic
  #     enabled : Enabled flag. When false, draw semi-transparently.
  #--------------------------------------------------------------------------
  def draw_face(face_name, face_index, x, y, enabled = true)
    bitmap = Cache.face(face_name)
    rect = Rect.new(face_index % 2 * 96, face_index * (0.5 * 96) + 8, 96, 96)
    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)
    bitmap.dispose
  end
end
#==============================================================================
# ** Window_Message+
#------------------------------------------------------------------------------
#  Reduzindo largura total da janela.
#==============================================================================

class Window_Message < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(20, 0, window_width, window_height)
    self.z = 200
    self.openness = 0
    create_all_windows
    create_back_bitmap
    create_back_sprite
    clear_instance_variables
  end
  #--------------------------------------------------------------------------
  # * Get Window Width
  #--------------------------------------------------------------------------
  def window_width
    Graphics.width - 40
  end
  #--------------------------------------------------------------------------
  # * Get Number of Lines to Show
  #--------------------------------------------------------------------------
  def visible_line_number
    return 3
  end
  #--------------------------------------------------------------------------
  # * Create Background Bitmap
  #--------------------------------------------------------------------------
  def create_back_bitmap
    @back_bitmap = Bitmap.new(width, height)
    rect1 = Rect.new(0, 10, width, 12)
    rect2 = Rect.new(0, 12, width, height - 24)
    rect3 = Rect.new(0, height - 12, width, 12)
    @back_bitmap.gradient_fill_rect(rect1, back_color2, back_color1, true)
    @back_bitmap.fill_rect(rect2, back_color1)
    @back_bitmap.gradient_fill_rect(rect3, back_color1, back_color2, true)
  end
end
#==============================================================================
# ** Window_ChoiceList
#------------------------------------------------------------------------------
#  Corrigindo posição da janela de opções.
#==============================================================================

class Window_ChoiceList < Window_Command
  #--------------------------------------------------------------------------
  # * Update Window Position
  #--------------------------------------------------------------------------
  def update_placement
    self.width = [max_choice_width, 96].max + padding * 2
    self.width = [width, Graphics.width].min
    self.height = fitting_height($game_message.choices.size)
    self.x = Graphics.width - (width + 20)
    if @message_window.y >= Graphics.height * 0.5
      self.y = @message_window.y - (height + 5)
    else
      self.y = @message_window.y + (@message_window.height + 5)
    end
  end
end



Notas:
Não é necessário creditar ninguém, mas caso queira você pode inserir um link para estas aulas. Ao redistribuir, peço que não poste o código diretamente fora deste fórum, apenas redirecione seu público para este tópico.

Show de bola, Poe!
Curti a simplicidade tanto do sistema quanto do código também o/

Nice, Poe! Good Job! ;D
Dominando outras áreas. Isso significa mais um passo para a dominação mundial? haha

Brincadeiras a parte.
O script parece bem leal e útil. Dá para bolar algumas coisas com isso aí.
Gostei da simplicidade também. Ficou show!

Embora para mim não terá uso, certeza que para aqueles com projetos não focados em texto e sim em exploração vai dar aquele ar de beleza.
eu já sofro pra por todo o texto necessário no tamanho atual, imagina em um com apenas 3 e menos largo kkk

~Vici, Sotelie: \o\ /o/
Yangfly Master: Isso foi proposital. Reduzi a janela justamente pra me obrigar a resumir os textos. o/

Show de bola, Corvo! As mensagens ficam bem estilosas desse jeito.

Eu só enquadraria melhor a face de modo que ela ficasse centralizada, assim.


16/11/2018 às 19:09 #6 Última edição: 16/11/2018 às 19:12 por Corvo
Citação de: Skyloftian online 16/11/2018 às 19:02
[...]

Grande Sky. o/
Não sei você se lembra, mas esse script é uma cópia descarada de um sistema seu. Na verdade você só mostrou uma imagem haha. E nem consegui fazer o espaçamento vertical que devia tirar a janela do fim da tela. Obrigado pela sugestão, vou ver isso aí. o/