Advertisement
QuasiXi

Quasi Title

Mar 16th, 2014
298
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 23.72 KB | None | 0 0
  1. module Quasi
  2.   module Title
  3.   #=========================================================================
  4.   # ** Quasi Title v 1.0
  5.   #=========================================================================
  6.   # Splash Screen Settings
  7.   # + Optional multiple Splash Screens
  8.   #=========================================================================
  9.   # Instructions:
  10.   # Part 1. Splash Set up
  11.   #  Step 1 Turn on/off
  12.   #   SPLASH_SHOW     = true or false, false skips splash screen
  13.   #--------------------------------------------------------------------------
  14.     SPLASH_SHOW     = false
  15.   #--------------------------------------------------------------------------
  16.   # Step 2 Making splashes
  17.   #  Add values to the hash below
  18.   #  Setup:
  19.   #   'filename'   => [duration,:effect,setting1,setting2,skip?,audio],
  20.   #    **^All hash values should have a comma at the end unless it's the final one!^**
  21.   #
  22.   #  filename  - The name of the image inside Graphics/Titles1
  23.   #  duration  - Time to wait before moving to next splash.  60 = 1 sec,
  24.   #              runs after effect is finished
  25.   #
  26.   #  :effect   - :slide   Slides image into setting2
  27.   #              :spin    Spins image until it reaches angle from setting1
  28.   #              :zoom    Zooms into value from setting1, best for larger pictures.
  29.   #              :zoom2   Begins with an initial zoom and zooms out to normal size
  30.   #              :fade    Fades in
  31.   #              :flash   Flashes
  32.   #
  33.   #  settings1 - Depends on effect
  34.   #            when effect is :slide
  35.   #                 - setting1 is :vert or :horz
  36.   #            when effect is :spin
  37.   #                 - setting1 is the angle to spin to, any number, 360 = 1 spin
  38.   #            when effect is :zoom
  39.   #                 - setting1 is how much to zoom in, 100 = 2x, 50 = 1.5x
  40.   #            when effect is :zoom2
  41.   #                 - same as above
  42.   #            when effect is :fade
  43.   #                 - doesn't use this, can be left blank or with a 0
  44.   #            when effect is :flash
  45.   #                 - setting1 is the duration of the flash
  46.   #
  47.   #  settings2 - Depends on effect
  48.   #            when effect is :slide
  49.   #                 - setting2 is an array [pos, speed, from?]
  50.   #                   pos  for :vert, the X to stop at, for :horz, the Y to stop at
  51.   #                   speed  the speed to scroll
  52.   #                   from? is true or false
  53.   #                     true = slide from Top or Right
  54.   #                     false = slide from Left or Bottom
  55.   #            when effect is :spin
  56.   #                 - settings2 is the speed of the spin
  57.   #            when effect is :zoom
  58.   #                 - setting2 is the speed of the zoom
  59.   #            when effect is :zoom2
  60.   #                 - same as above
  61.   #            when effect is :fade
  62.   #                 - setting2 is the speed of the fade
  63.   #            when effect is :flash
  64.   #                 - setting2 is an array [red,green,blue,alpha]
  65.   #                   all values range from - 255, alpha is optional, default 255
  66.   #
  67.   #  skip?     - If you can skip splash with Confirm key, true or false
  68.   #  audio     - *Optional, can be left out*
  69.   #              is an array [type, audioname, volume, pitch]
  70.   #              type is :ME, :BGM, :SE, BGS
  71.   #
  72.   # Can play a movie too! (Can't skip)
  73.   #  for a movie use:
  74.   #   'filename'  => :movie,
  75.   #--------------------------------------------------------------------------
  76.     SPLASH          = {
  77.    
  78.     # Put values in here between { and }
  79.     # Few Examples: (won't work unless you have images with those names)
  80.     #
  81.     #  'disclaimer' => [120,:slide,:vert,[Graphics.height/2,30,false],false,[:ME,'Victory1',80,100]],
  82.     #  'sponsor'    => [180,:spin,360,5,true,[:BGM,'Dungeon5',100,100]],
  83.     #  'splash'     => [180,:zoom,60,1,true,[:BGM,'Theme4',100,100]]
  84.    
  85.     }
  86.    
  87.   #--------------------------------------------------------------------------
  88.   # Part 2 Set up Title Screen
  89.   #  Step 1. Turn on/off Custom Title
  90.   #   If set to false, it will run the default title screen settings instead.
  91.   #--------------------------------------------------------------------------
  92.     TITLE_SHOW      = true
  93.   #--------------------------------------------------------------------------
  94.   #  Step 2. Making the Title Screen
  95.   #   Insert the values inside the hash, between { and }
  96.   #   Images are layered! the image you want at the very top should be
  97.   #   at the bottom of the list!
  98.   #   Setup:
  99.   #    'filename'  => [type, effect,settings, position(optional)],
  100.   #  
  101.   #    filename   - Name of the image inside Graphics/Titles2
  102.   #    type       - :trans or anything else
  103.   #                 :trans uses transiton effects (From Splash settings!)
  104.   #                 :trans setup is similiar to Splash setup, but has :trans instead of duration!
  105.   #                 anything else, uses looping effects
  106.   #
  107.   #    effect     - if using :trans, these effects do not work/work the same!
  108.   #                 :slidehorz   slides horzontally, repeatly
  109.   #                 :slidevert   slides vertically, repeatly
  110.   #                 :slidedia    slides horzontally+vertically, repeatly
  111.   #                 :spin        spins nonstop
  112.   #                 :wave        wavey effect
  113.   #                 :color       changes to color then back to orginal
  114.   #                 :flash       flashes
  115.   #                 :expand      zooms in/out then back to orginal size
  116.   #                 :frame       splites image into frames and animates
  117.   #
  118.   #   settings    - An array, values varry on effect
  119.   #                 when :slidehorz  [speed, x]
  120.   #                 when :slidevert  [speed, y]
  121.   #                 when :slidedia   [speed, x, y]
  122.   #                 when :spin       [speed, x]
  123.   #                 when :wave       [amp, length, speed]
  124.   #                      amp is the wave amplitude and length is the wave frequency,
  125.   #                      speed is the speed of the wave, default 360, larger = faster
  126.   #                 when :color      [duration, [red,green,blue,alpha], repeat?(true or false)]
  127.   #                 when :flash      [duration, red,green,blue,alpha]
  128.   #                 when :expand     [speed, zoomx, zoomy]
  129.   #                      for zoomx/zoomy use values like 1.5 being 50%, 2 = 100% 0.5 = -50%
  130.   #                 when :frame      [time between?,split direction, frames]
  131.   #                      time between?  number of frames until it changes to next frame
  132.   #                      split direction  :horz or :vert (which way to splite the frames)
  133.   #                      frames    number of frames, 1+
  134.   #
  135.   #  position     - Optional, images are centered by default
  136.   #                 [x,y,center orgin?(true or false)]
  137.   #--------------------------------------------------------------------------
  138.     TITLE_OVERLAY   = {
  139.    
  140.     # Put values in here between { and }
  141.     # Few Examples: (won't work unless you have images with those names)
  142.     #
  143.     #'fog'     => [:loop,:slidehorz,[3,5]],
  144.     #'edge'    => [:loop,:spin,[5,1]],
  145.     #'logo'    => [:loop,:color,[120,[150,150,150,180],true]]   < last one doesn't have comma!
  146.    
  147.     }
  148.    
  149.     #--------------------------------------------------------------------------
  150.     # Part 3 Setting up commands
  151.     #  Step 1 Turn commands images on/off
  152.     #      true or false
  153.     #  Images must be 2 frames oriented vertically, width/height can be any size
  154.     #  1st frame is when command is inactive/disabled
  155.     #  2nd frame is when command is selected
  156.     #--------------------------------------------------------------------------
  157.     TITLE_CMDS_IMGS  = true
  158.     #--------------------------------------------------------------------------
  159.     # Step 2 Make Commands
  160.     #  This still needs to be here if TITLE_CMDS_IMGS is false
  161.     #  Setup:
  162.     #  :commandname  => [:method, ['Name',x,y],scene(only for custom!)]
  163.     #
  164.     #  :commandname  - :newgame, :continue, :custom or :exit
  165.     #  :method       -:command_continue, :command_newgame, :command_q_custom, :command_shutdown
  166.     #                 with scripting you can make your own methods inside scene_title~
  167.     #  'Name'        - Name to display in the command box, also the name of the image inside
  168.     #                  Graphics/Titles1
  169.     #  x             - x for the image (doesn't use if TITLE_CMDS_IMGS is false)
  170.     #  y             - y for the image (doesn't use if TITLE_CMDS_IMGS is false)
  171.     #  scene         - ONLY IF USING :command_q_custom for the method!!!
  172.     #                  Runs the scene when command is selected.
  173.     #--------------------------------------------------------------------------
  174.     TITLE_CMDS       = {
  175.     :newgame     => [:command_new_game, ['New Game',170,250]],
  176.     :continue    => [:command_continue, ['Continue',170,280]],
  177.     :custom      => [:command_q_custom, ['Gameover',170,310],Scene_Gameover],
  178.     :exit        => [:command_shutdown, ['Quit',170,340]]
  179.     }
  180.     #--------------------------------------------------------------------------
  181.     # Step 3 Commands Effects
  182.     #  ONLY IF TITLE_CMDS_IMGS = true!
  183.     # setup:
  184.     #  TITLE_CMD_EFX  = [:effct, [settings]]
  185.     # The commented out effects are other possible examples
  186.     #  (Other effects don't work well for this)
  187.     #--------------------------------------------------------------------------
  188.     #TITLE_CMD_EFX   = [:color,[60,[255,255,255,90],true]]
  189.     #TITLE_CMD_EFX   = [:wave,[5,200,600]]
  190.     TITLE_CMD_EFX   = [:expand,[150,1.2,1.2]]
  191.     #TITLE_CMD_EFX   = nil # No effect
  192.     #--------------------------------------------------------------------------
  193.     # Step 4 Cursor
  194.     #  ONLY IF TITLE_CMDS_IMGS = true!
  195.     # TITLE_CURSOR = true or false
  196.     #      true if you want to use a cursor image
  197.     # CURSOR = ['filename', frames, split]
  198.     #      filename  => name of cursor image inside Graphics/System
  199.     #      frames    => number of frames
  200.     #      split     => :horz or :vert
  201.     #--------------------------------------------------------------------------
  202.     TITLE_CURSOR    = true
  203.     CURSOR        = ['cursor',3,:vert]
  204.   end
  205. end
  206. #==============================================================================#
  207. # By Quasi (http://quasixi.wordpress.com/)
  208. #  - 3/16/14
  209. #==============================================================================#
  210. #   ** Stop! Do not edit anything below, unless you know what you      **
  211. #   ** are doing!                                                      **
  212. #==============================================================================#
  213. if !$imported["Quasi_Core"].nil?
  214. Quasi.version(1.01,"Quasi_Title")
  215. if !$quasi["Quasi_Title"]
  216.  
  217. #==============================================================================
  218. # ** Scene_Title
  219. #------------------------------------------------------------------------------
  220. #  This class performs the title screen processing.
  221. #==============================================================================
  222.  
  223. class Scene_Title < Scene_Base
  224.   include Quasi
  225.   alias quasi_title_create_bg create_background
  226.   alias quasi_title_d_foreground dispose_foreground
  227.  
  228.   #--------------------------------------------------------------------------
  229.   # * Start Processing
  230.   #--------------------------------------------------------------------------
  231.   def start
  232.     super
  233.     SceneManager.clear
  234.     Graphics.freeze
  235.     @splashon = Quasi::Title::SPLASH_SHOW
  236.     create_splash if @splashon
  237.     normal_start if !@splashon
  238.   end
  239.  
  240.   #--------------------------------------------------------------------------
  241.   # * Makes splash images
  242.   #--------------------------------------------------------------------------
  243.   def create_splash(key=nil)
  244.     if key.nil?
  245.       key = []
  246.       Quasi::Title::SPLASH.each_key {|k| key.push(k)}
  247.       key = key[0]
  248.     end
  249.     @q_splash = Quasi::Title::SPLASH[key]
  250.    
  251.     if @q_splash2.nil?
  252.       @q_splash2 = []
  253.       for i in 0...Quasi::Title::SPLASH.length
  254.         @q_splash2.push(false)
  255.       end
  256.     end
  257.     @wait = 0
  258.    
  259.     if @q_splash != :movie
  260.       if @q_splash[5].is_a?(Array)
  261.         case @q_splash[5][0]
  262.         when :BGM
  263.           Audio.bgm_play('Audio/BGM/'+@q_splash[5][1], @q_splash[5][2], @q_splash[5][3]) rescue nil
  264.         when :BGS
  265.           Audio.bgs_play('Audio/BGS/'+@q_splash[5][1], @q_splash[5][2], @q_splash[5][3]) rescue nil
  266.         when :SE
  267.           Audio.se_play('Audio/SE/'+@q_splash[5][1], @q_splash[5][2], @q_splash[5][3]) rescue nil
  268.         when :ME
  269.           Audio.me_play('Audio/ME/'+@q_splash[5][1], @q_splash[5][2], @q_splash[5][3]) rescue nil
  270.         end
  271.       end
  272.      
  273.       @splash = Sprite.new
  274.       @splash.bitmap = Cache.title1(key)
  275.       @splash.opacity = 0 if @q_splash[1] == :fade
  276.    
  277.       if @q_splash[1] == :zoom2
  278.         @splash.zoom_x += (@q_splash[2] / 100.0)
  279.         @splash.zoom_y += (@q_splash[2] / 100.0)
  280.       end
  281.       center_sprite(@splash)
  282.       if @q_splash[1] == :slide
  283.         if @q_splash[2] == :horz
  284.           @splash.x=(@q_splash[3][2] ? Graphics.width + (@splash.width/2) : (@splash.width/2)* -1 )
  285.         else
  286.           @splash.y=(@q_splash[3][2] ? Graphics.height + (@splash.height/2) : (@splash.height/2)* -1 )
  287.         end
  288.       end
  289.     else
  290.       @spmovie = key
  291.     end
  292.     Quasi.efx=true
  293.     @csplash = 0 if @csplash.nil?
  294.   end
  295.  
  296.   #--------------------------------------------------------------------------
  297.   # * Reordered update
  298.   #--------------------------------------------------------------------------
  299.   def update
  300.     super
  301.     update_splash if @splashon
  302.     update_title if @titleon
  303.     update_commands if @cmdson
  304.   end
  305.  
  306.   #--------------------------------------------------------------------------
  307.   # * Runs splash effects / settings
  308.   #--------------------------------------------------------------------------
  309.   def update_splash
  310.     if @spmovie.nil?
  311.       sprite_efx_trans(@splash, @q_splash)
  312.    
  313.       if @q_splash[4] == true
  314.         if Input.trigger?(:C) or Input.trigger?(:B)
  315.           @qtefx = false
  316.           @wait = @q_splash[0]
  317.         end
  318.       end
  319.    
  320.       return if @qtefx
  321.       if @wait > @q_splash[0]
  322.         hide_splash
  323.       else
  324.         @wait += 1
  325.       end
  326.     else
  327.       Graphics.play_movie("Movies/"+@spmovie)
  328.       next_splash
  329.     end
  330.   end
  331.  
  332.   #--------------------------------------------------------------------------
  333.   # * Checks for next splash
  334.   #--------------------------------------------------------------------------
  335.   def next_splash
  336.     dispose_splash(@csplash) if @splash
  337.     end_movie(@csplash) if @spmovie
  338.     if @csplash != (Quasi::Title::SPLASH.length-1)
  339.       @csplash += 1
  340.       key = []
  341.       Quasi::Title::SPLASH.each_key{|k| key.push(k)}
  342.       create_splash(key[@csplash])
  343.     else
  344.       normal_start
  345.     end
  346.   end
  347.  
  348.   #--------------------------------------------------------------------------
  349.   # * Dispose Splash images
  350.   #--------------------------------------------------------------------------
  351.   def dispose_splash(n=0)
  352.     @q_splash2[n] = true
  353.     @splash.bitmap.dispose
  354.     @splash.dispose
  355.   end
  356.   #--------------------------------------------------------------------------
  357.   # * End Movie
  358.   #--------------------------------------------------------------------------
  359.   def end_movie(n=0)
  360.     @q_splash2[n] = true
  361.     @spmovie = nil
  362.   end
  363.   #--------------------------------------------------------------------------
  364.   # * Exit Transition
  365.   # Fades out current splash then runs next
  366.   #--------------------------------------------------------------------------
  367.   def hide_splash
  368.     if @splash.opacity > 0
  369.       @splash.opacity -= 10
  370.     else
  371.       if @q_splash[5].is_a?(Array)
  372.         case @q_splash[5][0]
  373.         when :BGM
  374.           Audio.bgm_stop
  375.         when :BGS
  376.           Audio.bgs_stop
  377.         when :SE
  378.           Audio.se_stop
  379.         when :ME
  380.           Audio.me_stop
  381.         end
  382.       end
  383.       next_splash
  384.     end
  385.   end
  386.  
  387.   #--------------------------------------------------------------------------
  388.   # * Old Start Method
  389.   #--------------------------------------------------------------------------
  390.   def normal_start
  391.     @splashon = false
  392.     @titleon = Quasi::Title::TITLE_SHOW
  393.     create_background
  394.     create_foreground if !@titleon
  395.     create_command_window
  396.     play_title_music
  397.   end
  398.  
  399.   #--------------------------------------------------------------------------
  400.   # * Create Background
  401.   #--------------------------------------------------------------------------
  402.   def create_background
  403.     if @titleon
  404.       @sprite1 = Sprite.new
  405.       @sprite1.bitmap = Cache.title1($data_system.title1_name)
  406.      
  407.       @sprite2 = {}
  408.       Quasi::Title::TITLE_OVERLAY.each do |key,value|
  409.         sefx = [:expand,:spin, :color, :wave, :flash, :frame]
  410.         @z2 = 1 if @z2.nil?
  411.         @z2 += 1
  412.         @sprite2[key] = Plane.new
  413.         @sprite2[key] = Sprite.new if sefx.include?(value[1])
  414.         @sprite2[key] = Sprite.new if value[0] == :trans
  415.         @sprite2[key].bitmap = Cache.title2(key) rescue nil
  416.         @sprite2[key].z = 1 + @z2
  417.         @sprite2[key].opacity = 0 if [:frame].include?(value[1])
  418.         v = value[0] == :trans ? value[4] : value[3]
  419.         if v.nil?
  420.           center_sprite(@sprite2[key]) if sefx.include?(value[1])
  421.         else
  422.           @sprite2[key].x = v[0]
  423.           @sprite2[key].y = v[1]
  424.           if v[2]
  425.             @sprite2[key].ox = @sprite2[key].width / 2
  426.             @sprite2[key].oy = @sprite2[key].height / 2
  427.           end
  428.         end
  429.       end
  430.       center_sprite(@sprite1)
  431.     else
  432.       quasi_title_create_bg
  433.     end
  434.   end
  435.  
  436.   #--------------------------------------------------------------------------
  437.   # * Runs Title effects
  438.   #--------------------------------------------------------------------------
  439.   def update_title
  440.     Quasi::Title::TITLE_OVERLAY.each_key do |key|
  441.       k = Quasi::Title::TITLE_OVERLAY[key]
  442.       nk = k.clone
  443.       nk.delete_at(0)
  444.       sprite_efx_trans(@sprite2[key], k) if k[0] == :trans
  445.       sprite_efx(@sprite2[key], nk) if k[0] != :trans
  446.     end
  447.   end
  448.  
  449.   #--------------------------------------------------------------------------
  450.   # * Free Background
  451.   #--------------------------------------------------------------------------
  452.   def dispose_background
  453.     @sprite1.bitmap.dispose
  454.     @sprite1.dispose
  455.     @sprite2.each_key{|s| @sprite2[s].bitmap.dispose; @sprite2[s].dispose} if @titleon == true
  456.     @sprite3.each_key{|s| @sprite3[s].bitmap.dispose; @sprite3[s].dispose} if @cmdson == true
  457.     return if @cursor.nil?
  458.     @cursor.bitmap.dispose
  459.     @cursor.dispose
  460.   end
  461.  
  462.   #--------------------------------------------------------------------------
  463.   # * Free Foreground
  464.   #--------------------------------------------------------------------------
  465.   def dispose_foreground
  466.     quasi_title_d_foreground if !@titleon
  467.   end
  468.  
  469.   #--------------------------------------------------------------------------
  470.   # * Create Command Window
  471.   #--------------------------------------------------------------------------
  472.   def create_command_window
  473.     # Create window + New commands
  474.     @cmdson = Quasi::Title::TITLE_CMDS_IMGS
  475.     @command_window = Window_TitleCommand.new
  476.     @index = -1
  477.     @cmd = Quasi::Title::TITLE_CMDS
  478.    
  479.     # Puts commands into command window
  480.     @cmd.each_key do |key|
  481.       @command_window.set_handler(key, method(@cmd[key][0]))
  482.     end
  483.    
  484.     # Creates sprites if imgs is true
  485.     if @cmdson
  486.       @sprite3 = {}
  487.       @cmd.each_key do |key|
  488.         sprite3_reset(key)
  489.       end
  490.       # Hides command window
  491.       @command_window.hide
  492.       # Creates cursor if cursor is true
  493.       if Quasi::Title::TITLE_CURSOR
  494.         @cursor = Sprite.new
  495.         @cursor.bitmap = Cache.system(Quasi::Title::CURSOR[0]) rescue nil
  496.         draw_qsprite(@cursor, Quasi::Title::CURSOR[2], Quasi::Title::CURSOR[1], 0)
  497.         @cursor.z = 4
  498.       end
  499.     end
  500.    
  501.     @custom = []
  502.     @cmd.each_key {|key| @custom.push(key)}
  503.   end
  504.  
  505.   def sprite3_reset(key)
  506.     sefx = [:expand,:spin]
  507.     @sprite3[key].dispose if !@sprite3[key].nil?
  508.     @sprite3[key] = Sprite.new
  509.     @sprite3[key].bitmap = Cache.title1(@cmd[key][1][0]) rescue nil
  510.     draw_qsprite(@sprite3[key],:vert,2,0)
  511.     @sprite3[key].z = 5
  512.     @sprite3[key].x = @cmd[key][1][1]
  513.     @sprite3[key].y = @cmd[key][1][2]
  514.     return if !Quasi::Title::TITLE_CMD_EFX.is_a?(Array)
  515.     if sefx.include?(Quasi::Title::TITLE_CMD_EFX[0])
  516.       @sprite3[key].ox = @sprite3[key].width / 2
  517.       @sprite3[key].oy = @sprite3[key].height / 2
  518.       @sprite3[key].x += @sprite3[key].ox
  519.       @sprite3[key].y += @sprite3[key].oy
  520.     end
  521.   end
  522.  
  523.   #--------------------------------------------------------------------------
  524.   # * Updates Selected Command IMG
  525.   # Only runs if index changed.
  526.   #--------------------------------------------------------------------------
  527.   def update_commands
  528.     update_cursor
  529.     return if @sprite3.nil?
  530.     if Quasi::Title::TITLE_CMD_EFX.is_a?(Array)
  531.       @custom.each_index do |i|
  532.         key = @custom[i]
  533.         if i == @index
  534.           sprite_efx(@sprite3[key],Quasi::Title::TITLE_CMD_EFX)
  535.         else
  536.           sprite3_reset(key)
  537.         end
  538.       end
  539.     end
  540.    
  541.     return if @index == @command_window.index
  542.     @index = @command_window.index
  543.     @custom.each_index do |i|
  544.       key = @custom[i]
  545.       if i == @index
  546.         enable = key == :continue ? (@command_window.continue_enabled ? 1 : 0) : 1
  547.         draw_qsprite(@sprite3[key],:vert,2,enable)
  548.         if Quasi::Title::TITLE_CURSOR
  549.           sefx = [:expand,:spin]
  550.           @cursor.x = @sprite3[key].x
  551.           @cursor.y = @sprite3[key].y + (@sprite3[key].height/4)
  552.           return if !Quasi::Title::TITLE_CMD_EFX.is_a?(Array)
  553.           if sefx.include?(Quasi::Title::TITLE_CMD_EFX[0])
  554.             @cursor.x -= @sprite3[key].ox
  555.             @cursor.y -= @sprite3[key].oy
  556.           end
  557.         end
  558.       else
  559.         draw_qsprite(@sprite3[key],:vert,2,0)
  560.       end
  561.     end
  562.   end
  563.  
  564.   #--------------------------------------------------------------------------
  565.   # * Loops cursor through it's frames if Cursor is turned on
  566.   #--------------------------------------------------------------------------
  567.   def update_cursor
  568.     return unless Quasi::Title::TITLE_CURSOR
  569.     @c = 0 if @c.nil?
  570.     @wait = 0 if @wait.nil?
  571.     if @wait > 10
  572.       if @c < 2
  573.         @c += 1
  574.         draw_qsprite(@cursor, Quasi::Title::CURSOR[2], Quasi::Title::CURSOR[1], @c)
  575.       else
  576.         @c = 0
  577.         draw_qsprite(@cursor, Quasi::Title::CURSOR[2], Quasi::Title::CURSOR[1], @c)
  578.       end
  579.       @wait = 0
  580.     else
  581.       @wait += 1
  582.     end
  583.   end
  584.  
  585.   #--------------------------------------------------------------------------
  586.   # * Custom Command Call
  587.   #--------------------------------------------------------------------------
  588.   def command_q_custom
  589.     i = @command_window.index
  590.     SceneManager.goto(@cmd[@custom[i]][2])
  591.   end
  592. end
  593.  
  594. #==============================================================================
  595. # ** Window_TitleCommand
  596. #------------------------------------------------------------------------------
  597. #  This window is for selecting New Game/Continue on the title screen.
  598. #==============================================================================
  599.  
  600. class Window_TitleCommand < Window_Command
  601.   #--------------------------------------------------------------------------
  602.   # * Create Command List
  603.   #  ** Remade
  604.   #--------------------------------------------------------------------------
  605.   def make_command_list
  606.     cmd = Quasi::Title::TITLE_CMDS
  607.     cmd.each_key do |key|
  608.       if key == :continue
  609.         add_command(cmd[key][1][0],key, continue_enabled)
  610.       else
  611.         add_command(cmd[key][1][0],key)
  612.       end
  613.     end
  614.   end
  615. end
  616. end
  617. else
  618.   msgbox_p "[Quasi_Title] needs [Quasi Core] in order to run."
  619. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement