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.

Title Screen Fade to White Instead of Black

Culex

Member

How can I edit Scene_Title to make the game screen fade to white instead of black? I do know where this occurs in the script:

#--------------------------------------------------------------------------
# * Command: New Game
#--------------------------------------------------------------------------
def command_new_game
confirm_player_location
Sound.play_decision
$game_party.setup_starting_members # Initial party
$game_map.setup($data_system.start_map_id) # Initial map position
$game_player.moveto($data_system.start_x, $data_system.start_y)
$game_player.refresh
$scene = Scene_Map.new
RPG::BGM.fade(1500)
close_command_window
Graphics.fadeout(60)
Graphics.wait(40)
Graphics.frame_count = 0
RPG::BGM.stop
$game_map.autoplay
end
However, I can't seem to come up with a method to make the screen fade into white. If I delete Graphics.fadeout(60) or line 221, the screen transitions to the map but you can see the map before the parallel process cuts in to tint the screen (and yes, I made sure to not check "Wait for Completion" and set it to the min. frame count, like I always do). Any help would be appreciated.
 
Hope, this is what you want

Code:
class Scene_Title < Scene_Base
  alias old_fade_to_white_start start
  def start
    old_fade_to_white_start
    @fade_to_white = Sprite.new
    @fade_to_white.bitmap = Bitmap.new(544,416)
    @fade_to_white.bitmap.fill_rect(Rect.new(0,0,544,416),Color.new(255,255,255))
    @fade_to_white.opacity = 0
    @fade_to_white.z = 1000
  end
  
  def command_new_game
    confirm_player_location
    Sound.play_decision
    loop do
      @fade_to_white.opacity += 1
      Graphics.update
      if @fade_to_white.opacity == 255
        break
      end
    end
    $game_party.setup_starting_members            # Initial party
    $game_map.setup($data_system.start_map_id)    # Initial map position
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $scene = Scene_Map.new
    RPG::BGM.fade(1500)
    close_command_window
    Graphics.fadeout(60)
    Graphics.wait(40)
    Graphics.frame_count = 0
    RPG::BGM.stop
    $game_map.autoplay
  end
  
  alias old_fade_to_white_terminate terminate
  def terminate
    old_fade_to_white_terminate
    @fade_to_white.bitmap.dispose
    @fade_to_white.dispose
  end
end
 

Culex

Member

It doesn't seem to work quite right. While it does fade to white the map still shows before the parallel process starts. The parallel process is set up correctly, I double-checked. Also, where can I change the speed at which the screen fades? 40 frames should do because this transition is a little bit slow. Thank you.
 

Culex

Member

Basically, I want the screen to stay white until I choose to fade it in myself via event. When I select New Game, the screen fades to white, but immediately shows the map before the parallel process gets a chance to white out the screen again. There's a gap between the two screen tone adjustments, so the player sees the map for a split second when they shouldn't. Thanks again.
 

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