Simple Message Busts

Hollow

(◡‿◡✿)
Veteran
Joined
Jul 14, 2012
Messages
519
Reaction score
439
First Language
English
Primarily Uses
RMMV
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!
 
Last edited:

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,341
Reaction score
12,841
First Language
English
Primarily Uses
RMMV
Nice! Got resource specifications? Is it still 8 per file, and what size do they have to be?
 
Last edited by a moderator:

Hollow

(◡‿◡✿)
Veteran
Joined
Jul 14, 2012
Messages
519
Reaction score
439
First Language
English
Primarily Uses
RMMV
Oh, I totally forgot those! It's only one bust per file, but the busts themselves can be any size. :)

I'll add that to the OP right now.
 

Probotector 200X

Probotect and Serve
Veteran
Joined
Mar 14, 2012
Messages
903
Reaction score
162
Primarily Uses
I second this request. It looks really cool but that formatting, it's giving me nightmares...
 

Phonantiphon

Veteran
Veteran
Joined
Jan 17, 2016
Messages
261
Reaction score
145
First Language
English
Primarily Uses
Yep - the formatting is making my teeth itch... >_>
 

TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
5,268
Reaction score
6,012
First Language
Indonesian
Primarily Uses
RMVXA
The fixed ver of the script bcz someone want this to be fixed (untested tho, so test it urself and report the result :p )
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
#==============================================================================
# ** 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
 
Last edited:

BunnyNubNub

Veteran
Veteran
Joined
Sep 27, 2016
Messages
99
Reaction score
23
First Language
English
Primarily Uses
N/A


I wonder what could be causing this. :elsad:
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Before I am done with even one game, I am going to need Psychiatric assistance after doing all these sprites!
Still I am improving, Spriting not mental fortitude.
It's still early days, and I was going to keep this under wraps until development is a bit further along, but I'm just so damn proud of how robust the integrity-checking in this plugin is that I have to share it.
Do you think the new RPG Maker MZ has support for Android devices ?
JDgoldvox wrote on Mr. Detective's profile.
hey, could u help me with a problem? basically, How do I delete a character from a map after a cut scene is over? I am really new with RPG maker MV. Please help!
The most rewarding part of making custom body character parts is absolutely not making the masks work. Somebody please put me out of my misery.

Forum statistics

Threads
99,265
Messages
963,648
Members
130,862
Latest member
Makina_Yuki
Top