RPG Maker Forums

Simple Message Busts v1.0
by Hollow​

Introduction
This script allows the use of large portraits (busts) in place of facesets in message boxes.

Features

  • Easy to install, and easy to use.
  • Show more detailed portraits of your characters.



How to Use:

  • Create a new script slot below Materials and above Main in the Script Editor.
  • Copy and paste the script into the new slot.
  • Adjust the settings to your preferences.
  • Save all busts to the "Faces" folder.
  • Enjoy! :wub:
Image Requirements
Each individual bust must be in its own file, but the bust itself may be any size. In addition, the bust's filename must include the symbol chosen in the settings. If not, the script won't recognize it as a bust, and so it won't display properly in the message box.

Script

Code:
#==============================================================================
# ** Simple Message Busts
#------------------------------------------------------------------------------ 
# Engine: RPG Maker VX Ace
# Author: Hollow
#==============================================================================
# * Instructions
#------------------------------------------------------------------------------
#  This script allows the use of large portraits (busts) in place of facesets 
# in message boxes. All busts should be saved to the "Graphics/Faces" folder,
# and it's file-name must include the symbol chosen in the settings below. To 
# use in game, simply select the bust you wish to use in the faceset box of the 
# "Show Text" command. The script will do the rest. 
#==============================================================================
# ** Settings
#============================================================================== 
module HMB  
  BUST_INDENT = 180           
  # Indentation width for text when bust is shown.
  BUST_OFFSET = -75           
  # Bust image's offset on the x-axis.
  BUST_SYMBOL = "!"           
  # Symbol to differentiate busts from facesets.
end # HMB 
#==============================================================================
# ** Window_Message
#============================================================================== 
class Window_Message < Window_Base  
  #--------------------------------------------------------------------------  
  # * Alias  
  #--------------------------------------------------------------------------  
  alias hmb_window_message_create_back_bitmap create_back_bitmap  
  alias hmb_window_message_dispose dispose  
  alias hmb_window_message_update_back_sprite update_back_sprite  
  #--------------------------------------------------------------------------  
  # * Create Background Bitmap  
  #--------------------------------------------------------------------------  
  def create_back_bitmap    
    @bust = Sprite.new if @bust.nil?    
    @bust.visible = true    
    @bust.z = z + 1    
    hmb_window_message_create_back_bitmap  
  end  
  #--------------------------------------------------------------------------  
  # * Free  
  #--------------------------------------------------------------------------  
  def dispose    
    hmb_window_message_dispose    
    dispose_bust  
  end  
  #--------------------------------------------------------------------------  
  # * Free Bust  
  #--------------------------------------------------------------------------  
  def dispose_bust    
    @bust.dispose if !@bust.nil?    
    @bust.bitmap.dispose if !@bust.bitmap.nil?  
  end  
  #--------------------------------------------------------------------------  
  # * Update Background Sprite  
  #--------------------------------------------------------------------------  
  def update_back_sprite    
    hmb_window_message_update_back_sprite    
    update_bust if openness > 0  
  end  
  #--------------------------------------------------------------------------  
  # * Update Bust  
  #--------------------------------------------------------------------------  
  def update_bust    
    if $game_message.face_name.include?(HMB::BUST_SYMBOL)      
      @bust.bitmap = Cache.face($game_message.face_name)      
      @bust.x = HMB::BUST_OFFSET      
      @bust.y = Graphics.height - @bust.height    
    else      
      @bust.bitmap = nil    
    end    
    @bust.update  
  end  
  #--------------------------------------------------------------------------  
  # * Get New Line Position  
  #--------------------------------------------------------------------------  
  def new_line_x    
    if $game_message.face_name.include?(HMB::BUST_SYMBOL)      
      $game_message.face_name.empty? ? 0 : HMB::BUST_INDENT    
    else      
      $game_message.face_name.empty? ? 0 : 112   
    end  
  end  
  #--------------------------------------------------------------------------  
  # * Draw Face Graphic  
  #--------------------------------------------------------------------------  
  def draw_face(face_name, face_index, x, y, enabled = true)    
    return if $game_message.face_name.include?(HMB::BUST_SYMBOL)    
    super  
  end
end # Window_Message
Terms
Free for non-commercial and commercial use as long as you credit me. :)

Author's Note
I wrote this up a little while ago for personal use but decided to share since it is pretty simple. I hope you guys can get some good use out of it!

Latest Threads

Latest Posts

Latest Profile Posts

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.
time for a new avatar :)

Forum statistics

Threads
106,017
Messages
1,018,354
Members
137,801
Latest member
topsan
Top