Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Changing Message Font

HoRe

Member

Hey guys! I've figured out how to change the text in the Title menu, or the party switcher, but whenever one character talks to another, the font is still Arial. What script did I miss to change this? Thanks!
 

khmp

Sponsor

Font.default_name = 'Trebuchet MS'

Put that line almost anywhere in your code. You can simply stick it above the begin statement in Main.

Good luck with it HoRe! :thumb:
 

HoRe

Member

See, that's the most bizarre part... I did! And it changes, say, the text in the party switcher and the "New Game" "Quit" part in the beginning, but not when characters talk to each other.... :-/

But I appreciate the help. ^_^
 

HoRe

Member

Well I'm using MOG Menus made by Moghunter, for things like Equip, Status, Item, etc. I'm also using a Party Switcher script made by Blizzard. Would any of those affect it?
 

khmp

Sponsor

I was hoping I could quickly point my finger at advanced message script :wink:

MOG Menus possibly I'll go check it.

[edit]
Yes MOG Menus have their own font. It uses "Georgia" for text. In my personal opinion you will have a much easier time changing your font to Georgia than hunting down and deleting every line that overrides the text. However if you want the MOG Menus to conform to your font. Go through each MOG Menu and delete every line that looks like this:
Code:
self.contents.font.name = "Georgia"
Then the Menus will use the font you specified in the line I told you to use.

Good luck with it HoRe! :thumb:
 

HoRe

Member

Huzzah!! I finally got it... I just had to start a new game for it all to activate, which is why it hadn't before (I had been using a saved game.)

Now if I can bug you some more, what about color? I've been able to change most of the things I need to black, but I'm running into trouble in my Skills menu. For some reason, one of the characters has her skills show up in black (what I need) while the others still have their skills in white/gray. Here's the script:

Code:
#_______________________________________________________________________________
# MOG Scene Skill Nami V2.0            
#_______________________________________________________________________________
# By Moghunter    
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Transition Time.
MSK_TT = 20
#Transition Type(Name).
MSK_TTT = "004-Blind04"  
end
$mogscript = {} if $mogscript == nil
$mogscript["menu_nami"] = true
##############
# Game_Actor #
##############
class Game_Actor < Game_Battler
def now_exp
return @exp - @exp_list[@level]
end
def next_exp
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
end
end
###############
# Window_Base #
###############
class Window_Base < Window
def nada
face = RPG::Cache.picture("")
end    
def drw_face(actor,x,y)
face = RPG::Cache.picture(actor.name + "_fc") rescue nada
cw = face.width 
ch = face.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, face, src_rect)    
end     
def draw_lay(x,y)
lay = RPG::Cache.picture("MSK_Status")
cw = lay.width 
ch = lay.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, lay, src_rect)    
end  
def nada
face = RPG::Cache.picture("") 
end  
def draw_heroface3(actor,x,y)
face = RPG::Cache.picture(actor.name + "_fc3") rescue nada
cw = face.width 
ch = face.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, face, src_rect)    
end 
def draw_maphp3(actor, x, y)
back = RPG::Cache.picture("BAR0")    
cw = back.width  
ch = back.height 
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("HP_Bar")    
cw = meter.width  * actor.hp / actor.maxhp
ch = meter.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("HP_Tx")    
cw = text.width  
ch = text.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.hp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.hp.to_s, 2)    
end  
def draw_mapsp3(actor, x, y)
back = RPG::Cache.picture("BAR0")    
cw = back.width  
ch = back.height 
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("SP_Bar")    
cw = meter.width  * actor.sp / actor.maxsp
ch = meter.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("SP_Tx")    
cw = text.width  
ch = text.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.sp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.sp.to_s, 2)    
end  
def draw_maphp4(actor, x, y)
back = RPG::Cache.picture("BAR")    
cw = back.width  
ch = back.height 
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("HP_Bar2")    
cw = meter.width  * actor.hp / actor.maxhp
ch = meter.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 66, y - 1, 100, 32, actor.hp.to_s + "/" + actor.maxhp.to_s, 1)  
self.contents.font.color = Color.new(250,255,255,255) 
self.contents.draw_text(x + 65, y - 2, 100, 32, actor.hp.to_s + "/" + actor.maxhp.to_s, 1)  
end  
def draw_mapsp4(actor, x, y)
back = RPG::Cache.picture("BAR")    
cw = back.width  
ch = back.height 
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65 , y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("SP_Bar2")    
cw = meter.width  * actor.sp / actor.maxsp
ch = meter.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65 , y - ch + 30, meter, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 66, y - 1, 100, 32, actor.sp.to_s + "/" + actor.maxsp.to_s, 1)  
self.contents.font.color = Color.new(250,255,255,255) 
self.contents.draw_text(x + 65, y - 2, 100, 32, actor.sp.to_s + "/" + actor.maxsp.to_s, 1)  
end
def draw_mexp4(actor, x, y)
actor = $game_party.actors[0]
bitmap2 = RPG::Cache.picture("Exp_Back")
cw = bitmap2.width 
ch = bitmap2.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 30, bitmap2, src_rect)
if actor.next_exp != 0
rate = actor.now_exp.to_f / actor.next_exp
else
rate = 1
end
bitmap = RPG::Cache.picture("Exp_Meter")
if actor.level < 99
cw = bitmap.width * rate 
else
cw = bitmap.width
end   
ch = bitmap.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 30, bitmap, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 55, y + 1, 84, 32, "Exp",0)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 54, y, 84, 32, "Exp",0)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 190, y - 125, 60, 32,"LV " +  actor.level.to_s, 1)
self.contents.font.color = Color.new(255,255,255,255)    
self.contents.draw_text(x + 191, y - 124, 60, 32,"LV " + actor.level.to_s, 1)    
end
def draw_mexp_it(actor, x, y)
lv_tx = RPG::Cache.picture("LV_tx")
cw = lv_tx.width 
ch = lv_tx.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 32, lv_tx, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 101, y + 5, 24, 32, actor.level.to_s, 1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 100, y + 4, 24, 32, actor.level.to_s, 1)
end
def draw_actor_state_it(actor, x, y, width = 80)
text = make_battler_state_text(actor, width, true)
self.contents.font.color = actor.hp == 0 ? knockout_color : normal_color
self.contents.draw_text(x, y, width, 32, text,1)
end
end
######################
# Window_Target_Item #
######################
class Window_Target_face < Window_Selectable
def initialize
super(0, 130, 280, 300)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Kelt Caps Freehand"
self.z += 10
@item_max = $game_party.actors.size
refresh
end
def refresh
self.contents.clear
for i in 0...$game_party.actors.size
x = 4
y = i * 65
actor = $game_party.actors[i]
drw_face(actor,x,y + 55)
if $mogscript["TP_System"] == true
draw_actor_tp(actor, x + 168, y + 27 ,4)
else
draw_mexp_it(actor, x + 110, y + 25 )
end
draw_actor_state_it(actor, x + 165, y )
draw_maphp3(actor, x + 20, y + 0)
draw_mapsp3(actor, x + 20, y + 32)
end
end
def update_cursor_rect
if @index <= -2
self.cursor_rect.set(0, (@index + 10) * 65, self.width - 32, 60)
elsif @index == -1
self.cursor_rect.set(0, 0, self.width - 32, @item_max * 64 )
else
self.cursor_rect.set(0, @index * 65, self.width - 32, 60)
end
end
end
#######################
# Window_SkillStatus2 #
#######################
class Window_SkillStatus2 < Window_Base
def initialize(actor)
super(350, 75, 290, 340)
self.contents = Bitmap.new(width - 32, height - 32)
@actor = actor
self.opacity = 0
self.contents.font.name = "Kelt Caps Freehand"
refresh
end

def refresh
self.contents.clear
draw_lay(0,300)
draw_heroface3(@actor,50,140)
draw_actor_name(@actor, 15, 10)
draw_actor_state(@actor, 120, 140)
draw_mexp4(@actor, -30, 135)
draw_maphp4(@actor, 5, 195)
draw_mapsp4(@actor, 5, 240)
if $mogscript["TP_System"] == true
draw_actor_tp(@actor, 40, 265,1)
end
end
end
#################
# Window_Skill2 #
#################
class Window_Skill2 < Window_Selectable
def initialize(actor)
super(0, 95, 335, 290)
@actor = actor
@column_max = 1
refresh
self.index = 0
end
def skill
return @data[self.index]
end
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 0...@actor.skills.size
skill = $data_skills[@actor.skills[i]]
if skill != nil
@data.push(skill)
end
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 32, row_max * 32)
for i in 0...@item_max
draw_item(i)
end
end
end
def draw_item(index)
skill = @data[index]
if @actor.skill_can_use?(skill.id)
self.contents.font.color = normal_color
else
self.contents.font.color = disabled_color
end
self.contents.font.name = "Kelt Caps Freehand"
x = index % 1 * (288)
y = index / 1 * 32
rect = Rect.new(x, y, self.width / @column_max - 32, 32)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
bitmap = RPG::Cache.icon(skill.icon_name)
opacity = self.contents.font.color == normal_color ? 255 : 128
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0)
self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2)
if $mogscript["TP_System"] == true
tp_cost = MOG::TP_COST[skill.id] 
if tp_cost != nil   
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 170, y, 48, 32, MOG::TP_NAME, 2)    
else
self.contents.font.color = Color.new(200,200,0,255)
self.contents.draw_text(x + 170, y, 48, 32, $data_system.words.sp, 2)      
end
else
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 170, y, 48, 32, $data_system.words.sp, 2)    
end
end
def update_help
@help_window.set_text(self.skill == nil ? "" : self.skill.description)
end
end
###############
# Scene_Skill #
###############
class Scene_Skill
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
def main
@actor = $game_party.actors[@actor_index]
@msk_lay = Sprite.new
@msk_lay.bitmap = RPG::Cache.picture("MSK_Lay")
@msk_lay.z = 100
@msk_back1 = Plane.new
@msk_back1.bitmap = RPG::Cache.picture("purple35")
@msk_back1.z = 10
@help_window = Window_Help.new
@help_window.y = 500
@status_window = Window_SkillStatus2.new(@actor)
@status_window.z = 110
@status_window.x = 640
@skill_window = Window_Skill2.new(@actor)
@skill_window.help_window = @help_window
@skill_window.help_window.y = 500
@target_window = Window_Target_face.new
@target_window.x = 640
@target_window.y = 100
@target_window.opacity = 0
@target_window.visible = false
@target_window.active = false
@skill_window.opacity = 0
@help_window.opacity = 0
@slide = true
Graphics.transition(MOG::MSK_TT, "Graphics/Transitions/" + MOG::MSK_TTT)
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
for i in 0..30
@status_window.x += 25
@target_window.x += 25
Graphics.update  
end  
Graphics.freeze
@help_window.dispose
@status_window.dispose
@skill_window.dispose
@target_window.dispose
@msk_lay.dispose
@msk_back1.dispose
end
def update
if @target_window.active == true
@target_window.visible = true
if @target_window.x > 340
@target_window.x -= 15
elsif @target_window.x <= 340
@target_window.x = 340
end
else    
if @target_window.x < 640
@target_window.x += 15
elsif @target_window.x >= 640
@target_window.x = 640 
@target_window.visible = false
end
end  
if @slide == true
@status_window.visible = true
if @status_window.x > 350
@status_window.x -= 15
elsif @status_window.x <= 350
@status_window.x = 350
end      
else
if @status_window.x < 640
@status_window.x += 15
elsif @status_window.x >= 640
@status_window.x = 640 
@status_window.visible = false
end  
end
@help_window.update
@status_window.update
@skill_window.update
@target_window.update
@msk_back1.ox += 1
@msk_back1.oy += 1
if @skill_window.help_window.y > 425
@skill_window.help_window.y -= 5
elsif @skill_window.help_window.y <= 425  
@skill_window.help_window.y = 425
end   
if @skill_window.active
update_skill
return
end
if @target_window.active  
update_target
return
end
end
def update_skill
if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) 
@help_window.y = 500  
end  
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Menu.new(1)
return
end
if Input.trigger?(Input::C)
@skill = @skill_window.skill
if @skill == nil or not @actor.skill_can_use?(@skill.id)
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
if @skill.scope >= 3
@skill_window.active = false
@target_window.active = true
@slide = false
if @skill.scope == 4 || @skill.scope == 6
@target_window.index = -1
elsif @skill.scope == 7
@target_window.index = @actor_index - 10
else
@target_window.index = 0
end
else
if @skill.common_event_id > 0
$game_temp.common_event_id = @skill.common_event_id
$game_system.se_play(@skill.menu_se)
@actor.sp -= @skill.sp_cost
@status_window.refresh
@skill_window.refresh
@target_window.refresh
$scene = Scene_Map.new
return
end
end
return
end
if Input.trigger?(Input::R) or Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@actor_index += 1
@actor_index %= $game_party.actors.size
$scene = Scene_Skill.new(@actor_index)
return
end
if Input.trigger?(Input::L) or Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@actor_index += $game_party.actors.size - 1
@actor_index %= $game_party.actors.size
$scene = Scene_Skill.new(@actor_index)
return
end
end
def update_target
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@skill_window.active = true
@target_window.active = false
@slide = true
return
end
if Input.trigger?(Input::C)
unless @actor.skill_can_use?(@skill.id)
$game_system.se_play($data_system.buzzer_se)
return
end
if @target_window.index == -1
used = false
for i in $game_party.actors
used |= i.skill_effect(@actor, @skill)
end
end
if @target_window.index <= -2
target = $game_party.actors[@target_window.index + 10]
used = target.skill_effect(@actor, @skill)
end
if @target_window.index >= 0
target = $game_party.actors[@target_window.index]
used = target.skill_effect(@actor, @skill)
end
if used
$game_system.se_play(@skill.menu_se)
@actor.sp -= @skill.sp_cost
@status_window.refresh
@skill_window.refresh
@target_window.refresh
if $game_party.all_dead?
$scene = Scene_Gameover.new
return
end
if @skill.common_event_id > 0
$game_temp.common_event_id = @skill.common_event_id
$scene = Scene_Map.new
return
end
end
unless used
$game_system.se_play($data_system.buzzer_se)
end
return
end
end
end

And lastly, how can I change the size in just the windows the characters use for speaking... if that's possible?...

khmp: code tags around code please even if its trapped in a spoiler. You can delete this line when you see it.
 

khmp

Sponsor

Getting the message font size a different size from the rest of the game:

I set it to 24 but just change that number in the constant variables section till you get a number you like. To install this script just create an empty section above main and paste in this code:
Code:
#==============================================================================
# ** Window_Message
#------------------------------------------------------------------------------
#  This message window is used to display text.
#==============================================================================

class Window_Message < Window_Selectable
  alias_method :hore_fontfun_window_message_initialize, :initialize
  #--------------------------------------------------------------------------
  # * Constant Variables
  #--------------------------------------------------------------------------
  MESSAGE_FONT_SIZE = 24
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    # Call the old initialize code
    hore_fontfun_window_message_initialize
    self.contents.font.size = MESSAGE_FONT_SIZE
  end
end

As for the font color thing. There's probably 50 lines changing the text color and not to values defined inside Window_Base. It's also an awful script to sift through. Untabbed, uncommented. So what I want to know is if you would be willing to take a screen shot and circle what text should be what color. It can be crudely done doesn't matter to me. Also I remember helping you change the text color by overriding normal and system color. I guess I should find that post and see what I did there.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top