Save-Point
Splash Script - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+---- Forum: RPGMaker XP (RGSS) Engine (https://www.save-point.org/forum-116.html)
+---- Thread: Splash Script (/thread-700.html)

Pages: 1 2 3


Splash Script - rm-rf - 02-24-2010

Splash Script
Version: 1.1

Introduction
I've rewrote Lambchop's Super Simple Splash Script to make it even more simple-er ;o
You only need to edit 5 constants and you're set to go.
if you want more than 3 screens, just add more filenames to SplashFiles, you could have 490434034903 screen probably (lolwhat?)
to use this script before title screen, you need to change the Main script.
Look for $scene = Scene_Title.new and replace it with $scene = Scene_Splash.new

Demo
Requested by Villain: http://www.box.net/shared/vj5vqvvp7z (v1.0)

Script
Standard Development Kit Version
Code:
#==============================================================================
# ** Splash Script
#------------------------------------------------------------------------------
# - Coded by :rm-rf
# - Original by :Lambchops
# - Version :1.1
# - 24/02/2010
#------------------------------------------------------------------------------
# * How to Use:
# - Just add more filenames to SplashFiles = ['filename', ..., ...]
# - and configure the speed of loading each images.
# - That's it ;o
#==============================================================================

#------------------------------------------------------------------------------
# * Begin SDK Log
#------------------------------------------------------------------------------
SDK.log('Splash Script', 'rm-rf', 1.0, '24/02/2010')
#------------------------------------------------------------------------------
# * Begin SDK Requirement Check
#------------------------------------------------------------------------------
SDK.check_requirements(2.4)

#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.enabled?('Splash Script')

module SSConfig
  #----------------------------------------------------------------------------
  # * Splash Files
  #     :folder- :Graphics/Picture
  #     :config- :['filename', 'filename', ..., ...]
  #----------------------------------------------------------------------------
  SplashFiles = ['splash_sample01', 'splash_sample02', 'splash_sample03']
  #----------------------------------------------------------------------------
  # * Splash Speed / Wait
  #     :the speed of transition, 2-4 is ideal
  #     :wait is for how long the image will show for
  #----------------------------------------------------------------------------
  SplashSpeed = 8
  SplashWait = 100
  #----------------------------------------------------------------------------
  # * Play Music During Splash?
  #     :config- :true / false
  #     :do you want to play music during the splash?
  #----------------------------------------------------------------------------
  PlayMusic = true
  #----------------------------------------------------------------------------
  # * Music File
  #     :folder- :Audio/BGM
  #     :use the filename for the audio. (dont need the extention i suppose)
  #----------------------------------------------------------------------------
  MusicFile = '014-Theme03'
end

class Scene_Splash < SDK::Scene_Base
  #----------------------------------------------------------------------------
  # * Main: Variable
  #----------------------------------------------------------------------------
  def main_variable
    # Setup important variables
    @index = 0
    @hide = false
    @show = true
    @opacity = 0
    @wait = 0
  end
  #----------------------------------------------------------------------------
  # * Main: Sprite
  #----------------------------------------------------------------------------
  def main_sprite
    # Setup array
    @sprites = []
    # Make sprites
    SSConfig::SplashFiles.each_with_index do |filename, i|
      @sprites[i] = Sprite.new
      @sprites[i].bitmap = RPG::Cache.picture(filename)
      @sprites[i].opacity = 0
    end
  end
  #----------------------------------------------------------------------------
  # * Main: Audio
  #----------------------------------------------------------------------------
  def main_audio
    # Play BGM
    Audio.bgm_play('Audio/BGM/' + SSConfig::MusicFile) if SSConfig::PlayMusic
  end
  #----------------------------------------------------------------------------
  # * Frame Update
  #----------------------------------------------------------------------------
  def update
    # If input triggered
    if Input.trigger?(Input::C) || Input.trigger?(Input::B)
      # Switch to Title
      Audio.bgm_fade(1000) if SSConfig::PlayMusic
      $scene = Scene_Title.new
    end
    # Do Hide/Show images
    process_transition
  end
  #----------------------------------------------------------------------------
  # * Process Transition
  #----------------------------------------------------------------------------
  def process_transition
    # Fade In
    if @show
      # Increase Opacity
      @opacity += SSConfig::SplashSpeed
      # If Opacity's at maximum
      if @opacity > 255
        # Hide images
        @show = false
        @opacity = 255
        @wait = SSConfig::SplashWait
      end
    end
    # Wait for a bit
    if @wait > 0
      # Decrease Wait Count
      @wait -= 1
      # Done waiting
      if @wait <= 0
        # Fade out
        @hide = true
        # Reset wait
        @wait = 0
      end
    end
    # Fade Out
    if @hide
      # Decrease Opacity
      @opacity -= SSConfig::SplashSpeed
      # If Opacity's at minimum
      if @opacity < 0
        # Show images
        @hide = false
        @show = true
        @opacity = 0
        # Change Index
        @index += 1
      end
    end
    # Branch by index
    case @index
    when 0...SSConfig::SplashFiles.size
      # Set Opacity
      @sprites.each {|i| i.opacity = 0}
      @sprites[@index].opacity = @opacity
    when (SSConfig::SplashFiles.size)
      # Switch to Title
      Audio.bgm_fade(1000) if SSConfig::PlayMusic
      $scene = Scene_Title.new
    end
  end
end

#------------------------------------------------------------------------------
# * End SDK Enable Test
#------------------------------------------------------------------------------
end

Normal Version (Doesnt need the SDK)
Code:
#==============================================================================
# ** Splash Script
#------------------------------------------------------------------------------
# - Coded by :rm-rf
# - Original by :Lambchops
# - Version :1.1
# - 24/02/2010
#------------------------------------------------------------------------------
# * How to Use:
# - Just add more filenames to SplashFiles = ['filename', ..., ...]
# - and configure the speed of loading each images.
# - That's it ;o
#==============================================================================

module SSConfig
  #----------------------------------------------------------------------------
  # * Splash Files
  #     :folder- :Graphics/Picture
  #     :config- :['filename', 'filename', ..., ...]
  #----------------------------------------------------------------------------
  SplashFiles = ['splash_sample01', 'splash_sample02', 'splash_sample03']
  #----------------------------------------------------------------------------
  # * Splash Speed / Wait
  #     :the speed of transition, 2-4 is ideal
  #     :wait is for how long the image will show for
  #----------------------------------------------------------------------------
  SplashSpeed = 3
  SplashWait = 100
  #----------------------------------------------------------------------------
  # * Play Music During Splash?
  #     :config- :true / false
  #     :do you want to play music during the splash?
  #----------------------------------------------------------------------------
  PlayMusic = true
  #----------------------------------------------------------------------------
  # * Music File
  #     :folder- :Audio/BGM
  #     :use the filename for the audio. (dont need the extention i suppose)
  #----------------------------------------------------------------------------
  MusicFile = '015-Theme04'
end

class Scene_Splash
  #----------------------------------------------------------------------------
  # * Main
  #----------------------------------------------------------------------------
  def main
    # Setup Variables
    main_variable
    # Setup Sprites
    main_sprite
    # Setup Audio
    main_audio
    # Execute transition
    Graphics.transition
    # Run main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      break if $scene != self
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose sprites
    @sprites.each {|i| i.dispose}
  end  
  #----------------------------------------------------------------------------
  # * Main: Variable
  #----------------------------------------------------------------------------
  def main_variable
    # Setup important variables
    @index = 0
    @hide = false
    @show = true
    @opacity = 0
    @wait = 0
  end
  #----------------------------------------------------------------------------
  # * Main: Sprite
  #----------------------------------------------------------------------------
  def main_sprite
    # Setup array
    @sprites = []
    # Make sprites
    SSConfig::SplashFiles.each_with_index do |filename, i|
      @sprites[i] = Sprite.new
      @sprites[i].bitmap = RPG::Cache.picture(filename)
      @sprites[i].opacity = 0
    end
  end
  #----------------------------------------------------------------------------
  # * Main: Audio
  #----------------------------------------------------------------------------
  def main_audio
    # Play BGM
    Audio.bgm_play('Audio/BGM/' + SSConfig::MusicFile) if SSConfig::PlayMusic
  end
  #----------------------------------------------------------------------------
  # * Frame Update
  #----------------------------------------------------------------------------
  def update
    # If input triggered
    if Input.trigger?(Input::C) || Input.trigger?(Input::B)
      # Switch to Title
      Audio.bgm_fade(1000) if SSConfig::PlayMusic
      $scene = Scene_Title.new
    end
    # Do Hide/Show images
    process_transition
  end
  #----------------------------------------------------------------------------
  # * Process Transition
  #----------------------------------------------------------------------------
  def process_transition
    # Fade In
    if @show
      # Increase Opacity
      @opacity += SSConfig::SplashSpeed
      # If Opacity's at maximum
      if @opacity > 255
        # Hide images
        @show = false
        @opacity = 255
        @wait = SSConfig::SplashWait
      end
    end
    # Wait for a bit
    if @wait > 0
      # Decrease Wait Count
      @wait -= 1
      # Done waiting
      if @wait <= 0
        # Fade out
        @hide = true
        # Reset wait
        @wait = 0
      end
    end
    # Fade Out
    if @hide
      # Decrease Opacity
      @opacity -= SSConfig::SplashSpeed
      # If Opacity's at minimum
      if @opacity < 0
        # Show images
        @hide = false
        @show = true
        @opacity = 0
        # Change Index
        @index += 1
      end
    end
    # Branch by index
    case @index
    when 0...SSConfig::SplashFiles.size
      # Set Opacity
      @sprites[@index].opacity = @opacity
    when (SSConfig::SplashFiles.size)
      # Switch to Title
      Audio.bgm_fade(1000) if SSConfig::PlayMusic
      $scene = Scene_Title.new
    end
  end
end

Instructions
Just edit 4 constants and you're set to go

FAQ
"hay!!!!11 i got 9484393893 images, will this script wurrrk wiv it????"
- probably

"this script suxxxxxx!!!11"
- boohoo

"where can I find the original splash script by lambchops?????
- PM me and ill send you it. I dont know if i should post it here on Lambchops's behalf.

Compatibility
Requires SDK, latest version

Credits and Thanks
Lambchops
shadowseer (not bothered if i dont get credited)
Ryu-ka for requesting Wait feature

Author's Notes
Original script was by Lambchops, I just rewrote it and made it even more simple-er.
Only took me 20 minutes :x
Please report any bugs you find >:|


Splash Script - deValdr - 02-24-2010

I don't get what this script actually does.


Splash Script - rm-rf - 02-24-2010

All it does is make logos/splashscreen appears before the title.
the script enables you to have many logos as you want without adding stuff to the script (you only need to add 'filename' to SplashFiles array ;o


Splash Script - deValdr - 02-24-2010

Awesome, I will probably use it ;)


Splash Script - Villain - 02-25-2010

there is an error with SDK at line 18


Splash Script - rm-rf - 02-25-2010

Villian: I've checked the script in a blank project with the SDK 2.4, it works fine so Im not sure how you got the error,
but on line 18 is to log the script in the SDK.
is it possible that you dont have the SDK? (This script needs the SDK 2.4)


Splash Script - Villain - 02-25-2010

so where i can get a SDK? :)


Splash Script - rm-rf - 02-26-2010

SDK
^ the link to SDK. (at HBGames, i dont have permission to repost the script here (well, i never asked (there might be sdk hidden away in this forum)))


Splash Script - deValdr - 02-26-2010

It seems to be incompitable with blizz-abs


Splash Script - Ace - 02-26-2010

yeah Blizz doesn't like the SDK (the SDK can screw many scripts up because it rewrites many classes)