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.

Redd's Icons

What this basically do is make the Title Screen, Menu, and End Game screen have icons next to their options. You can customize the icons, by the way. And yes, I know, there are TONS of scripts like this, but it is the first script I ever made.

Put all of these above main and below any other scripts you might have

Hope you like them. YOU MUST GIVE ME CREDIT AT SOME POINT IN YOUR GAME!

Here's the script! Make sure to read the instructions at the top of every single one, okay? There are 3 scripts put together in one here, so make sure to read ALL of their instructions!
[rgss]#==============================================================================
# ** Redd's TitleIcons
#==============================================================================
#  Gives the title screen the ability to have icons in the choices
#==============================================================================
#  Instructions
#
#  After configuring what you want your icons to be, go into Scene_Title, look
#  for line 40, and change
#  @command_window = Window_Command.new(192, [s1, s2, s3])
#  to...
#  @command_window = Window_TitleIcons.new(192, [s1, s2, s3])
#
#  And there you have it. If you need any support just email redredd@live.com
#==============================================================================
 
class Window_TitleIcons < Window_Command
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
self.contents.clear
for i in 0...@item_max
  draw_item(i, normal_color)
  # Draw the icon associated with the index.
  draw_icon(i)
end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #--------------------------------------------------------------------------
  def draw_item(index, color)
self.contents.font.color = color
# rect = Rect.new(x, y, width, height) Note the x is 32, not the default 4.
rect = Rect.new(32, 32 * index, self.contents.width - 8, 32)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  # * Draw Icon
  #--------------------------------------------------------------------------
  def draw_icon(index)
# Case index
case index
# Conditional branch ^_^
when 0
  # Sets the icon name (Case Sensitive)
  icon = '001-Weapon01'
when 1
  icon = '035-Item04'
when 2
  icon = '046-Skill03'
# If there are more than 3 commands:
else
  # Don't draw anything.
  icon = ''
end
# Create the bitmap image for the icon
bitmap = RPG::Cache.icon(icon)
# Make the rectangle for the image to be in
src_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
# Draw the bitmap inside the rectangle, at 4 pixels across,
# and down according to the index
self.contents.blt(4, 32*index+5, bitmap, src_rect)
  end
end
#==============================================================================
# ** Redd's MenuIcons
#==============================================================================
#  Gives the menu the ability to have icons in the choices
#==============================================================================
#  Instructions
#
#  After configuring what you want your icons to be, go into Scene_Title, look
#  for line 26, and change
#  @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
#  to...
#  @command_window = Window_MenuIcons.new(160, [s1, s2, s3, s4, s5, s6])
#
#  And there you have it. If you need any support just email redredd@live.com
#==============================================================================
 
class Window_MenuIcons < Window_Command
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
self.contents.clear
for i in 0...@item_max
  draw_item(i, normal_color)
  # Draw the icon associated with the index.
  draw_icon(i)
end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #--------------------------------------------------------------------------
  def draw_item(index, color)
self.contents.font.color = color
# rect = Rect.new(x, y, width, height) Note the x is 32, not the default 4.
rect = Rect.new(32, 32 * index, self.contents.width - 8, 32)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  # * Draw Icon
  #--------------------------------------------------------------------------
  def draw_icon(index)
# Case index
case index
# Conditional branch ^_^
when 0
  # Sets the icon name (Case Sensitive)
  icon = '032-Item01'
when 1
  icon = '050-Skill07'
when 2
  icon = '013-Body01'
when 3
  icon = '040-Item09'
when 4
  icon = '035-Item04'
when 5
  icon = '046-Skill03'
# If there are more than 6 commands:
else
  # Don't draw anything.
  icon = ''
end
# Create the bitmap image for the icon
bitmap = RPG::Cache.icon(icon)
# Make the rectangle for the image to be in
src_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
# Draw the bitmap inside the rectangle, at 4 pixels across,
# and down according to the index
self.contents.blt(4, 32*index+5, bitmap, src_rect)
  end
end
#==============================================================================
# ** Redd's EndIcons
#==============================================================================
#  Gives the ending screen the ability to have icons in the choices
#==============================================================================
#  Instructions
#
#  After configuring what you want your icons to be, go into Scene_End, look
#  for line 16, and change
#  @command_window = Window_Command.new(192, [s1, s2, s3])
#  to...
#  @command_window = Window_EndIcons.new(192, [s1, s2, s3])
#
#  And there you have it. If you need any support just email redredd@live.com
#==============================================================================
 
class Window_EndIcons < Window_Command
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
self.contents.clear
for i in 0...@item_max
  draw_item(i, normal_color)
  # Draw the icon associated with the index.
  draw_icon(i)
end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #--------------------------------------------------------------------------
  def draw_item(index, color)
self.contents.font.color = color
# rect = Rect.new(x, y, width, height) Note the x is 32, not the default 4.
rect = Rect.new(32, 32 * index, self.contents.width - 8, 32)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  # * Draw Icon
  #--------------------------------------------------------------------------
  def draw_icon(index)
# Case index
case index
# Conditional branch ^_^
when 0
  # Sets the icon name (Case Sensitive)
  icon = '048-Skill05'
when 1
  icon = '046-Skill03'
when 2
  icon = '036-Item05'
# If there are more than 3 commands:
else
  # Don't draw anything.
  icon = ''
end
# Create the bitmap image for the icon
bitmap = RPG::Cache.icon(icon)
# Make the rectangle for the image to be in
src_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
# Draw the bitmap inside the rectangle, at 4 pixels across,
# and down according to the index
self.contents.blt(4, 32*index+5, bitmap, src_rect)
  end
end
[/rgss]
 
Sounds useful Red, thanks for posting. :)
One thing I will say is using screenshots makes the difference. Might want to get a screenie up to show people what it can do.
 

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