Help - Search - Members - Calendar
Full Version: Chapters Script v2.
RPG RPG Revolution Forums > Scripting > Script Tutorials > RGSS2
Genshyu
Chapter window v2.

Updates:
Added new percentage window.

Screenshots:



Script:

CODE
=begin
Script made from Genshyu.
Instructions:
Use variables 40, 41, 42, and 43. The names of the variables are in this demo.
=end

class Window_Chapter1 < Window_Base
  def initialize(actor)
    super(0, 104, 544, 208)
    refresh
  end
  def refresh
        self.contents.clear
      end
      def update
        self.contents.clear
        self.contents.draw_text(0, 0, 544, 49, "Chapter Complete.")
        end
    end
    class Window_Chapter2 < Window_Base
  def initialize(actor)
    super(0, 104, 544, 208)
    @items = $game_variables[41]
    @items2 = $game_variables[42]
    @chapter = $game_variables[40]
    refresh
  end
  def refresh
        self.contents.clear
      end
      def update
        self.contents.clear
        self.contents.draw_text(0, 0, 544, 49, "Results:")
        self.contents.draw_text(0, 49, 544, 49, "Items Collected:" + " " + @items.to_s + " " + "/" + " " + @items2.to_s)
        self.contents.draw_text(0, 65, 544, 49, "Next Chapter:" + " " + @chapter.to_s)
        if @items == @items2
          self.contents.draw_text(0, 96, 544, 49, "All Items Collected!")
        end
      end
    end
    class Window_ChapterIntro < Window_Base
      def initialize
        super(0, 104, 544, 208)
        @items2 = $game_variables[42]
        @chapter = $game_variables[40]
        refresh
      end
      def refresh
        self.contents.clear
      end
      def update
        self.contents.clear
        self.contents.draw_text(0, 0, 544, 49, "Chapter" + " " + @chapter.to_s + ".")
        self.contents.draw_text(0, 49, 544, 49, "Items:" + " " + @items2.to_s)
      end
    end
class Scene_Chapter < Scene_Base
  def initialize(actor_index = 0)
    @actor_index = actor_index
  end
  def start
    super
    create_menu_background
    @Window_Loading = Window_Chapter1.new(@actor)
  end
  def terminate
    super
    @Window_Loading.dispose
    dispose_menu_background
  end
  def update
    update_menu_background
    @Window_Loading.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      $scene = Scene_Chapter2.new
    end
    super
  end
end
class Scene_Chapter2 < Scene_Base
  def initialize(actor_index = 0)
    @actor_index = actor_index
  end
  def start
    super
    create_menu_background
    @Window_Loading = Window_Chapter2.new(@actor)
  end
  def terminate
    super
    @Window_Loading.dispose
    dispose_menu_background
  end
  def update
    update_menu_background
    @Window_Loading.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      $scene = Scene_Map.new
    end
    super
  end
end
class Scene_ChapterIntro < Scene_Base
  def initialize(actor_index = 0)
    @actor_index = actor_index
  end
  def start
    super
    create_menu_background
    @Window_Loading = Window_ChapterIntro.new
  end
  def terminate
    super
    @Window_Loading.dispose
    dispose_menu_background
  end
  def update
    update_menu_background
    @Window_Loading.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      $scene = Scene_Map.new
    end
    super
  end
end
class WindowChaperHud < Window_Base
  def initialize
    super(188, 134, 189, 149)
    @items = $game_variables[41]
    @maxitems = $game_variables[42]
    @percent = $game_variables[43]
    refresh
  end
  def refresh
  end
  def update
    self.contents.clear
    self.contents.draw_text(0, 16, 544, 49, "Items:" + " " + @items.to_s + "/ " + @maxitems.to_s)
    self.contents.draw_text(0, 32, 544, 49, @percent.to_s + "%" + " " + "complete.")
  end
end
class Scenechapterstatus < Scene_Base
  def initialize
    @chaptermessage = WindowChapermessage.new
    @chapterstatus = WindowChaperHud.new
  end
  def terminate
    @chaptermessage.dispose
    @chapterstatus.dispose
  end
  def update
    @chaptermessage.update
    @chapterstatus.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      $scene = Scene_Map.new
    end
  end
end
class WindowChapermessage < Window_Base
  def initialize
    super(188, 283, 189, 96)
    refresh
  end
  def refresh
  end
  def update
    self.contents.draw_text(0, 0, 149, 49, "Press enter to continue.")
  end
end
class Scene_Map < Scene_Base
    def update_call_capterwindow
    if Input.trigger?(Input::L)
      Sound.play_decision
      return if $game_map.interpreter.running?        # Event being executed?
      return if $game_system.menu_disabled            # Menu forbidden?
      $game_temp.menu_beep = true                     # Set SE play flag
      $scene = Scenechapterstatus.new
    end
  end
    def update
    super
    $game_map.interpreter.update      # Update interpreter
    $game_map.update                  # Update map
    $game_player.update               # Update player
    $game_system.update               # Update timer
    @spriteset.update                 # Update sprite set
    @message_window.update            # Update message window
    unless $game_message.visible      # Unless displaying a message
      update_transfer_player
      update_encounter
      update_call_menu
      update_call_debug
      update_scene_change
      update_call_capterwindow
    end
  end
end



Demo:
http://www.mediafire.com/download.php?y4tdjnzzoxc
l33tpie 6
Hey, this looks like a pretty nice script! I'll use this in my side project on VX.
Genshyu
QUOTE (l33tpie 6 @ Jan 14 2009, 02:40 AM) *
Hey, this looks like a pretty nice script! I'll use this in my side project on VX.

Cool ^^.
Leaff-kun~desu
Quick question,
do the items in the shops interfere with this at all?
Lets say i have a Red Leaff in my shop [a restorative item], but its not anywhere outside the shop.
Does the script count that as an item?
ninjaheldransom
on my current game im working on using vx
this script would be a nice touch to it.
its great
Genshyu
QUOTE (Leaff-kun~desu @ Feb 16 2009, 01:11 PM) *
Quick question,
do the items in the shops interfere with this at all?
Lets say i have a Red Leaff in my shop [a restorative item], but its not anywhere outside the shop.
Does the script count that as an item?

No, the items in the shops dont have anything to do with this script. The variables are only increased when you tell them to be.
Genshyu
Updated.
rgangsta
can you please repost the demo. or add the instructions in the script?
Genshyu
QUOTE (rgangsta @ Aug 19 2009, 05:49 PM) *
can you please repost the demo. or add the instructions in the script?

Sorry I dont have that comp anymore, hmm.. I assume the link is dead. Darn, I forgot how to use this too sad.gif Sorry guys
Fonstw
CODE
=begin
Script made from Genshyu.
Instructions:
Use variables 40, 41, 42, and 43. The names of the variables are in this demo.
=end

What are the names?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.