Change Title Graphic based on Game Progress

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
Made for a request here.

This script is meant for games with only 1 save slot.

It reads from the 1st save slot in the game to decide whether or not to change the title's graphic.

Handy for those who wish to change their title graphic based on game progress the player is currently on.

For those who are interested in the single file save system. You can find my script for it here.

Features:

Change title graphic using based on save file check point.

How to Use:

[1] Paste this script below Material and above Main.

[2] Set up the graphic and sound to use in the SETTINGS AREA
[3] Use this script call in game to set the check point

init_change_title(n)where n = true or false

eg.

init_change_title(true)

Compatibility:

This script overwrites the title scene's create background method and play bgm method.

If you have custom scripts overwriting these, there can be conflicts.

Terms of Use:

Free for both commercial and non-commercial.

Script:

Code:
#==============================================================================# ■ Meow Face Title Background Change#------------------------------------------------------------------------------# Change Title Background based on Save file Check point#==============================================================================# How to Use:# [1] Paste This script Below Material and Above Main# [2] Set up the graphic and sound to use in the SETTINGS AREA# [3] Use this script call in game to set the check point#      init_change_title(n)#         where n = true or false#==============================================================================module MeowFaceTitleControl#==============================================================================# Settings Area#==============================================================================  TITLE1 = "Book" #Title1 graphic (set to "" if not used)  TITLE2 = "Mist"  #Title2 graphic (set to "" if not used)  BGM = RPG::BGM.new("Town7", 100, 100) #Title BGM "filename",volumn,pitch#==============================================================================# End of Settings Area# Edit anything past this line at your own risk!#==============================================================================endmodule DataManager  class <<self      alias meowhead_save make_save_header  end  def self.make_save_header    meowheader = meowhead_save    meowheader[:titlechange] = $game_variables.change_title    meowheader  endendclass Game_Variables  attr_accessor :change_title  alias meow_gv_init initialize  def initialize #aliased    meow_gv_init    @change_title = false  endendclass Game_Interpreter  def init_change_title(n)    $game_variables.change_title = n  endendclass Scene_Title < Scene_Base  alias meow_title_start start  def start #aliased    get_meow_head    meow_title_start  end  def get_meow_head    if DataManager.save_file_exists?      meowreadheader = DataManager.load_header(0)      @change = (meowreadheader[:titlechange] == true)    else      @change = false    end  end  def create_background #Overwrite    @sprite1 = Sprite.new    @sprite2 = Sprite.new    if @change == true      @sprite1.bitmap = Cache.title1(MeowFaceTitleControl::TITLE1)      @sprite2.bitmap = Cache.title2(MeowFaceTitleControl::TITLE2)    else      @sprite1.bitmap = Cache.title1($data_system.title1_name)      @sprite2.bitmap = Cache.title2($data_system.title2_name)    end    center_sprite(@sprite1)    center_sprite(@sprite2)  end  def play_title_music #Overwrite    if @change == true      MeowFaceTitleControl::BGM.play    else      $data_system.title_bgm.play    end    RPG::BGS.stop    RPG::ME.stop  endend
 
Last edited by a moderator:

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
Due to the V3 to V4 forum update, i am leaving the top post as is until they have a fix for the code part.


Please use this alternative version in the meantime: (it's the same as the top post, just not messed up in format)

Code:
#==============================================================================
# ■ Meow Face Title Background Change
#------------------------------------------------------------------------------
# Change Title Background based on Save file Check point
#==============================================================================
# How to Use:
# [1] Paste This script Below Material and Above Main
# [2] Set up the graphic and sound to use in the SETTINGS AREA
# [3] Use this script call in game to set the check point
#      init_change_title(n)
#         where n = true or false
#==============================================================================
module MeowFaceTitleControl
#==============================================================================
# Settings Area
#==============================================================================
  TITLE1 = "Book" #Title1 graphic (set to "" if not used)
  TITLE2 = "Mist"  #Title2 graphic (set to "" if not used)
  BGM = RPG::BGM.new("Town7", 100, 100) #Title BGM "filename",volumn,pitch
#==============================================================================
# End of Settings Area
# Edit anything past this line at your own risk!
#==============================================================================
end
module DataManager
  class <<self  
    alias meowhead_save make_save_header
  end
  def self.make_save_header
    meowheader = meowhead_save
    meowheader[:titlechange] = $game_variables.change_title
    meowheader
  end
end
class Game_Variables
  attr_accessor :change_title
  alias meow_gv_init initialize
  def initialize
    meow_gv_init
    @change_title = false
  end
end
class Game_Interpreter
  def init_change_title(n)
    $game_variables.change_title = n
  end
end
class Scene_Title < Scene_Base
  alias meow_title_start start
  def start
    get_meow_head
    meow_title_start
  end
  def get_meow_head
    if DataManager.save_file_exists?
      meowreadheader = DataManager.load_header(0)
      @change = (meowreadheader[:titlechange] == true)
    else
      @change = false
    end
  end
  def create_background
    @sprite1 = Sprite.new
    @sprite2 = Sprite.new
    if @change == true
      @sprite1.bitmap = Cache.title1(MeowFaceTitleControl::TITLE1)
      @sprite2.bitmap = Cache.title2(MeowFaceTitleControl::TITLE2)
    else
      @sprite1.bitmap = Cache.title1($data_system.title1_name)
      @sprite2.bitmap = Cache.title2($data_system.title2_name)
    end
    center_sprite(@sprite1)
    center_sprite(@sprite2)
  end
  def play_title_music
    if @change == true
      MeowFaceTitleControl::BGM.play
    else
      $data_system.title_bgm.play
    end
    RPG::BGS.stop
    RPG::ME.stop
  end
end
 

Cupidity

Warper
Member
Joined
Dec 1, 2014
Messages
2
Reaction score
0
First Language
English
Primarily Uses
Trying to use this in a project where the last ending achieved changes the title screen image to a picture relating to that ending. 
The problem is that there are 4 endings and it seems like this awesome script is set up to only support changing between one image and another, so it's either one thing or the other thing.



I think it would be possible for it to support more than 1 other Title image if instead of using a true/false scriptcall, it used the value of a set variable. 
Like, instead of: True=on, False=off 
maybe have it be like: if variable101 = 2 use image2; if variable101 = 3 use image3, etc...


I've been tearing my hair out trying to edit this in myself, but alas I am a moron -_-
I really like this script and use it with your other 1-save-only script, so would it be possible for it to support multiple image changes? :)
 

BoredSoul

Probably Drunk
Veteran
Joined
Aug 25, 2016
Messages
191
Reaction score
202
First Language
English
Primarily Uses
RMVXA
This is a big help.Thanks a lot!
 

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

Latest Threads

Latest Posts

Latest Profile Posts

I should realize that error was produced by a outdated version of MZ so that's why it pop up like that
Ami
i can't wait to drink some ice after struggling with my illness in 9 days. 9 days is really bad for me,i can't focus with my shop and even can't do something with my project
How many hours have you got in mz so far?

A bit of a "sparkle" update to the lower portion of the world map. :LZSexcite:
attack on titan final season is airing tomorrow, I'm excited and scared at the same time!

Forum statistics

Threads
105,882
Messages
1,017,231
Members
137,607
Latest member
Maddo
Top