Scrolling Message System

0 Members and 1 Guest are viewing this topic.

***
Rep:
Level 90
Scrolling Message System
Version: 1.2

Last Update

May 13, 2007

Introduction

This script makes message show in two lines of text at a time. If there are more than two lines, the lines will be scrolled in a smoothly way. Letters are drawed one by one.

Features
  • Letter by Letter: the characters are drawed one by one.

  • Scrolling: the text lines are scrolled, the time of this can be changed.

  • Stop: the message window can be stopped until the player press a key. \!

  • Autoclose: the message will close without the player input. \%

  • Choices: the choices are showed in a different window, they are also scrolled when are more than two.

  • Height: The heigth of lines can be changed, everything is adjusted to this.

  • Above Events: You can draw the window above an event. \p[event]
Extra Features
  • Name Box: Text is shown in a small window above message \name[text]
    Spoiler for Name Box:
Code: [Select]
#==============================================================
# ** Scrolling Message System / Name Box
#------------------------------------------------------------------------------
# Slipknot (http://www.creationasylum.net/)
# Version 1.1
# March 13, 2007
#==============================================================

class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # * Alias Listing
  #--------------------------------------------------------------------------
  alias slipknot_sms_nb_refresh refresh
  alias slipknot_sms_nb_repcod replace_code
  alias slipknot_sms_nb_termmes terminate_message
  #--------------------------------------------------------------------------
  # * Terminate Message
  #--------------------------------------------------------------------------
  def terminate_message
    slipknot_sms_nb_termmes
    if @name_box
      @name_box.dispose
      @name_box = nil
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    slipknot_sms_nb_refresh
    if @name_text
      @name_box = Window_MessageNameBox.new(x, y - 16, @name_text)
      @name_box.back.opacity = 0 if $game_system.message_frame == 1
      @name_text = nil
    end
  end
  #--------------------------------------------------------------------------
  # * Replace Code
  #--------------------------------------------------------------------------
  def replace_code
    slipknot_sms_nb_repcod
    @text.gsub!(/\\[Nn]ame\[(.*?)\]/) { @name_text = $1; '' }
  end
end

class Window_MessageNameBox < Window_Base
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :back
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize(x, y, text)
    dumb = Bitmap.new(160, 32)
    dumb.font = Message.font
    color = nil
    text.sub!(/\\[Cc](\d)/) { color = text_color($1.to_i); '' }
    size = dumb.text_size(text).width
    dumb.dispose
    @back = Window_Base.new(x, y, size + 12, 32)
    @back.z = 9998
    super(x - 10, y - 11, size + 32, 54)
    self.z = 9999
    self.opacity = 0
    self.contents = Bitmap.new(size, 22)
    contents.font = Message.font
    contents.font.color = color if color
    contents.draw_text(0, 0, size, 22, text)
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    @back.dispose
    @back = nil
    super
  end
end
[/spoiler]

  • Face: A small graphic is shown inside the message \face[file]
    Spoiler for Face:
    Code: [Select]
    #==============================================================
    # ** Scrolling Message System / Face
    #------------------------------------------------------------------------------
    # Slipknot (http://www.creationasylum.net/)
    # Version 1.0
    # May 13, 2007
    #==============================================================

    class Window_Message < Window_Selectable
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias slipknot_sms_f_refresh refresh
      alias slipknot_sms_f_repcod replace_code
      alias slipknot_sms_f_termmes terminate_message
      #--------------------------------------------------------------------------
      # * Refresh
      #--------------------------------------------------------------------------
      def terminate_message
        slipknot_sms_f_termmes
        if @face
          @face.dispose
          @face = nil
        end
      end
      #--------------------------------------------------------------------------
      # * Refresh
      #--------------------------------------------------------------------------
      def refresh
        slipknot_sms_f_refresh
        if @face_name
          @face = Sprite.new
          @face.x = self.x + 16
          @face.y = self.y + 16
          @face.z = self.z + 1
          @face.bitmap = RPG::Cache.picture(@face_name)
          @face_name = nil
        end
      end
      #--------------------------------------------------------------------------
      # * Replace Code
      #--------------------------------------------------------------------------
      def replace_code
        slipknot_sms_f_repcod
        @text.sub!(/\\[Ff]ace\[(.*?)\]/) do
          @face_name = $1
          @ex += Message::Height * 2 + 4
          ''
        end
      end
    end

  • Bold: \b
       Italic: \i
    Spoiler for Bold and Italic:
    Code: [Select]
    #==============================================================
    # ** Scrolling Message System / Bold & Italic
    #------------------------------------------------------------------------------
    # Slipknot (http://www.creationasylum.net/)
    # Version 1.0
    # May 13, 2007
    #==============================================================

    class Window_Message < Window_Selectable
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias slipknot_sms_bi_evalextra eval_extra
      alias slipknot_sms_bi_repbcod replace_basic_code
      #--------------------------------------------------------------------------
      # * Eval Extra
      #--------------------------------------------------------------------------
      def eval_extra(bitmap)
        slipknot_sms_bi_evalextra(bitmap)
        if @c == "\005"
          bitmap.font.bold = bitmap.font.bold ? false : true
          @c = ''
        end
        if @c == "\006"
          bitmap.font.italic = bitmap.font.italic ? false : true
          @c = ''
        end
      end
      #--------------------------------------------------------------------------
      # * Replace Basic Code
      #--------------------------------------------------------------------------
      def replace_basic_code
        slipknot_sms_bi_repbcod
        @text.gsub!('\\b', "\005")
        @text.gsub!('\\i', "\006")
      end
    end
    Versions History

    Version 1.2 (13/05/07)
     - added: Face
     - added: Name Box
     - added: Bold & Italic
     - fixed: Easier to expand the script
     - fixed: Small bug when using slow scrolling

    Version 1.1 (23/01/07)
     - added: Choices supports "message code".
     - fixed: Small bug with the scroll arrows.

    Version 1.0 (15/12/06)
     - First release

    Screenshots



    Demo

    http://www.fileul.com/view.php?file=o2KsIL

    Script

    Spoiler for "Script":
    Code: [Select]
    #==============================================================
    # ** Scrolling Message System
    #------------------------------------------------------------------------------
    # Slipknot (http://www.creationasylum.net/)
    # Version 1.2
    # May 13, 2007
    #==============================================================

    module Message
      #--------------------------------------------------------------------------
      # * Settings
      #--------------------------------------------------------------------------
      # ~ Font
      FontName = 'High Tower Text'
      FontSize = 20
      # ~ Size
      Width = 388
      Height = 24
      # ~ Delay
      TextDelay = 2
      Scroll = 30
      Autoclose = 16
      #--------------------------------------------------------------------------
      # * Font
      #--------------------------------------------------------------------------
      def self.font
        Font.new(FontName, FontSize)
      end
    end


    class Game_Temp
      #--------------------------------------------------------------------------
      # * Public Instance Variables
      #--------------------------------------------------------------------------
      attr_accessor :mes_choices
    end


    class Spriteset_Map
      #--------------------------------------------------------------------------
      # * Public Instance Variables
      #--------------------------------------------------------------------------
      attr_reader :character_sprites
    end


    class Interpreter
      #--------------------------------------------------------------------------
      # * Show Text
      #--------------------------------------------------------------------------
      def command_101
        return false if (temp = $game_temp).message_text
        @message_waiting = true
        temp.message_proc = Proc.new { @message_waiting = false }
        temp.message_text = @list.at(@index).parameters.at(0) + "\n"
        loop do
          com = @list.at(@index + 1)
          if com.code == 401 || com.code == 101
            temp.message_text += com.parameters.at(0) + "\n"
          else
            if com.code == 102
              temp.choice_max = com.parameters.at(0).size
              temp.mes_choices = com.parameters.at(0)
              temp.choice_cancel_type = com.parameters.at(1)
              current_indent = com.indent
              temp.choice_proc = Proc.new { |n| @branch[current_indent] = n }
              @index += 1
            elsif com.code == 103
              @index += 1
              temp.message_text += "\n"
              temp.num_input_variable_id = com.parameters.at(0)
              temp.num_input_digits_max = com.parameters.at(1)
            end
            return true
          end
          @index += 1
        end
      end
    end


    class Window_Message < Window_Selectable
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias slipknot_sms_init initialize
      #--------------------------------------------------------------------------
      # * Initialize
      #--------------------------------------------------------------------------
      def initialize
        slipknot_sms_init
        self.height = Message::Height * 2 + 32
        self.back_opacity = 160
        self.windowskin = windowskin.clone
        self.windowskin.fill_rect(144, 16, 32, 32, Color.new(0, 0, 0, 0))
        @ey = 1.0
        @y = 0
      end
      #--------------------------------------------------------------------------
      # * Opacity
      #--------------------------------------------------------------------------
      def opacity=(val)
        super
        @choices.opacity = val if @choices
      end
      #--------------------------------------------------------------------------
      # * Refresh
      #--------------------------------------------------------------------------
      def refresh
        contents.clear
        contents.font = Message.font
        @x = @y = @ex = @ey = 0
        return if ! (@text = temp.message_text)
        replace_code
        gold_win |= @text.gsub!(/\\[Gg]/, '')
        if fit |= @text[/\\[Pp]/]
          if @text.sub!(/\\[Pp]\[([-1,0-9]+)\]/, '')
            event = $1.to_i
          elsif @text.gsub!(/\\[Pp]/, '')
            event = ev_ac
          end
        end
        lines_size = [0]
        save, @lines = @text.clone, 0
        while @c = @text.slice!(/./m)
          if @c == "\n"
            @lines += 1
            lines_size << 0
            next
          end
          lines_size[@lines] += eval_text(self.contents, true)
        end
        if temp.choice_max > 0
          @c_data = [Bitmap.new(640 - Message::Width, Message::Height *
            temp.choice_max), Array.new(temp.choice_max, 0)]
          @c_data.at(0).font = Message.font
          @text = temp.mes_choices.join("\n")
          replace_basic_code
          @y = 0
          while @c = @text.slice!(/./m)
            @c_data.at(1)[@y] += eval_text(@c_data.at(0))
          end
          @c_data[1] = @c_data.at(1).max + 8
          @x = @y = 0
        end
        @text = save
        twidth = temp.choice_max > 0 ? @c_data.at(1) + 32 : 0
        self.width = fit ? lines_size.max + 40 + @ex : Message::Width - twidth
        twidth += self.width
        self.contents = Bitmap.new(self.width - 32, @lines * Message::Height)
        contents.font = Message.font
        if ! event
          h2 = self.height / 2
          self.y = temp.in_battle ? 96 - h2 :
            case $game_system.message_position
            when 0 then 96 - h2
            when 1 then 240 - h2
            when 2 then 384 - h2
            end
          self.x = 320 - twidth / 2
        else
          c = event > 0 ? $game_map.events[event] : $game_player
          mx, my = 636 - twidth, 476 - self.height
          fx = [[c.screen_x - twidth / 2, 4].max, mx].min
          ch = [$scene.spriteset.character_sprites[event - 1].bitmap.height /
            4 + 4, 48].max
          fy = [[c.screen_y - (ch + self.height), 4].max, my].min
          self.x, self.y = fx, fy
        end
        self.opacity = $game_system.message_frame == 0 ? 255 : 0
        if gold_win
          @gold_window = Window_Gold.new
          @gold_window.x = 560 - @gold_window.width
          if temp.in_battle
            @gold_window.y = 192
          else
            @gold_window.y = self.y >= 128 ? 32 : 384
          end
          @gold_window.opacity = self.opacity
        end
        if temp.choice_max > 0
          @choices = Window_MesChoices.new(self.x + self.width, self.y, @c_data)
          @choices.back_opacity = self.back_opacity
        end
      end
      #--------------------------------------------------------------------------
      # * Replace Code
      #--------------------------------------------------------------------------
      def replace_code
        replace_basic_code
        @text.gsub!('\!') { "\003" }
        @text.gsub!('\.') { "\004" }
        @text.gsub!(/\\\%\[(\d+)\]/) { "\011[#$1]" }
        @text.gsub!('\%') { "\011" }
      end
      def replace_basic_code
        @text.gsub!(/\\\\/) { "\000" }
        @text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
        @text.gsub!('\$') { $game_party.gold.to_s }
        @text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
          $game_actors[$1.to_i] ? $game_actors[$1.to_i].name : ''
        end
        @text.gsub!('\$') { $game_party.gold.to_s }
        @text.gsub!(/\\[Cc]\[([0-9]+?)\]/) { "\001[#$1]" }
      end
      #--------------------------------------------------------------------------
      # * Evaluate Text
      #--------------------------------------------------------------------------
      def eval_text(bitmap, read = false)
        case @c
        when "\000"
          @c = '\\'
        when "\001"
          @text.sub!(/\[(\d+)\]/, '')
          return 0 if read
          bitmap.font.color = text_color($1.to_i)
          return 0
        when "\002"
          @text.sub!(/\[(.*?)\]/, '')
          return 24 if read
          y = Message::Height * @y
          bitmap.blt(@ex + @x + 4, y, RPG::Cache.icon($1.to_s), Rect.new(0, 0, 24, 24))
          @x += 24
          return 0
        when "\003"
          return 0 if read
          @stop = true
          return 0
        when "\004"
          return 0 if read
          @wait_count += 10
          return 0
        when "\011"
          @text.sub!(/\[(\d+)\]/, '')
          return 0 if read || temp.num_input_variable_id > 0 || temp.choice_max > 0
          @autoclose = $1 ? $1.to_i : Message::Autoclose
          return 0
        end
        eval_extra(bitmap)
        return 0 if @c == '' || @c == nil
        if @c == "\n"
          @y += 1
          @x = 0
          return 0
        end
        w = bitmap.text_size(@c).width
        unless read
          bitmap.draw_text(@ex + @x + 4, Message::Height * @y, w, Message::Height, @c)
          @x += w
        end
        return w
      end
      def eval_extra(bitmap)
      end
      #--------------------------------------------------------------------------
      # * Variables
      #--------------------------------------------------------------------------
      def temp() $game_temp end
      def input_number() @input_number_window end
      def ev_ac() $game_system.map_interpreter.event_id end
      #--------------------------------------------------------------------------
      # * Frame Update
      #--------------------------------------------------------------------------
      def update
        if @contents_showing
          super
          if self.oy < (@y - 1) * Message::Height && @y < @lines
            @ey += Message::Height / Message::Scroll.to_f
            ey = @ey - @ey.floor
            self.oy += @ey.floor
            @ey = ey
          end
          if @text
            if Input.trigger?(13) && @stop
              self.pause = @stop = false
              return
            elsif @stop
              return
            elsif @wait_count > 0
              @wait_count -= 1
              return
            end
            @wait_count = 0
            return if self.oy < (@y - 1) * Message::Height && @y != @lines
            if (@c = @text.slice!(/./m))
              eval_text(contents)
              if @stop
                self.pause = true
                return
              end
              @wait_count += Input.press?(13) ? 0 : Message::TextDelay
            else
              @text = nil
            end
            return if @text || @autoclose != -1
            if temp.num_input_variable_id > 0
              digits_max = temp.num_input_digits_max
              @input_number_window = Window_InputNumber.new(digits_max)
              input_number.number = $game_variables[temp.num_input_variable_id]
              input_number.x = self.x + (self.width / 2 - input_number.width / 2)
              input_number.y = self.y + Message::Height
              @y -= 1
              @ey -= 1.0
            end
            @choices.index, @choices.active = 0, true if @choices
            return
          else
            if @autoclose > 0
              @autoclose -= 1
              return
            elsif @autoclose == 0
              terminate_message
              @autoclose = -1
              return
            end
          end
          if input_number
            input_number.update
            if Input.trigger?(13)
              $game_system.se_play($data_system.decision_se)
              $game_variables[temp.num_input_variable_id] = input_number.number
              $game_map.need_refresh = true
              input_number.dispose
              @input_number_window = nil
              terminate_message
            end
            return
          elsif @choices
            @choices.update
          end
          self.pause = true
          if Input.trigger?(12)
            if temp.choice_max > 0 && temp.choice_cancel_type > 0
              $game_system.se_play($data_system.cancel_se)
              temp.choice_proc.call(temp.choice_cancel_type - 1)
              terminate_message
            end
          end
          if Input.trigger?(13)
            if temp.choice_max > 0
              $game_system.se_play($data_system.decision_se)
              temp.choice_proc.call(@choices.index)
            end
            terminate_message
          end
          return
        end
        if ! @fade_out && temp.message_text
          @contents_showing = temp.message_window_showing = true
          if @choices
            @choices.dispose
            @choices = nil
          end
          self.oy = 0
          @stop = false
          @autoclose = -1
          refresh
          @wait_count, self.visible = 0.0, true
          return
        end
        return if ! visible
        @fade_out = true
        self.opacity -= 48
        if self.opacity == 0
          self.visible = @fade_out = false
          if @choices
            @choices.dispose
            @choices = nil
          end
          temp.message_window_showing = false
        end
      end
    end


    class Window_MesChoices < Window_Selectable
      #--------------------------------------------------------------------------
      # * Initialize
      #--------------------------------------------------------------------------
      def initialize(x, y, data)
        super(x, y, data.at(1) + 32, 2 * (h = Message::Height) + 32)
        self.opacity = $game_system.message_frame == 0 ? 255 : 0
        self.index, self.active, @item_max = -1, false, $game_temp.choice_max
        self.contents = Bitmap.new(data.at(1), @item_max * h)
        contents.blt(0, 0, data.at(0), Rect.new(0, 0, data.at(1), h * @item_max))
      end
      #--------------------------------------------------------------------------
      # * Update Cursor
      #--------------------------------------------------------------------------
      def update_cursor_rect
        if @index < 0
          self.cursor_rect.empty
          return
        end
        self.oy = [[@index, @item_max].min - 1, 0].max * Message::Height
        y = @index * Message::Height - self.oy
        cursor_rect.set(0, y, width - 32, Message::Height)
      end
    end


    class Window_InputNumber < Window_Base
      #--------------------------------------------------------------------------
      # * Initialize
      #--------------------------------------------------------------------------
      def initialize(digits)
        @digits_max = digits
        @number = 0
        dummy = Bitmap.new(32, 32)
        dummy.font = Message.font
        @cursor_width = dummy.text_size('0').width + 8
        dummy.dispose
        super(0, 0, @cursor_width * @digits_max + 32, Message::Height + 32)
        self.contents = Bitmap.new(width - 32, height - 32)
        contents.font = Message.font
        self.z += 9999
        self.opacity = @index = 0
        refresh
        update_cursor_rect
      end
      #--------------------------------------------------------------------------
      # * Update Cursor
      #--------------------------------------------------------------------------
      def update_cursor_rect
        cursor_rect.set(@index * @cursor_width, 0, @cursor_width, Message::Height)
      end
      #--------------------------------------------------------------------------
      # * Refresh
      #--------------------------------------------------------------------------
      def refresh
        contents.clear
        contents.font.color = normal_color
        s = sprintf("%0*d", @digits_max, @number)
        for i in 0...@digits_max
          contents.draw_text(i * @cursor_width + 4, 0, 32, Message::Height, s[i, 1])
        end
      end
    end


    class Interpreter
      #--------------------------------------------------------------------------
      # * Public Instance Variables
      #--------------------------------------------------------------------------
      attr_reader :event_id
    end


    class Scene_Map
      #--------------------------------------------------------------------------
      # * Public Instance Variables
      #--------------------------------------------------------------------------
      attr_reader :spriteset
    end

    Instructions

    You need paste the code before Main.
    Take a look to the demo and see how it works.
    • FontName: is the font used for the text.
    • FontSize: the size of the text.
    • Width: the width of the message window.
    • Height: the height of each line, the height of the window is Height * 2 + 32.
    • TextDelay: the higher this value is, higher the delay between characters.
    • Scroll: the delay of the "scrolling".
    • Autoclose: the number of frames before close the message when autoclose is used.
    Compatibility

    This script couldn't work with other message window script.

    Author's Notes

    Credit me and report bugs!
    « Last Edit: May 14, 2007, 02:49:24 AM by Season In The Abyss »

    *
    Rep:
    Level 97
    2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Most Mature Member2011 Best Veteran2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
    This looks cool. I am testing now.

    ******
    Revolution is not a bed of roses.
    Rep:
    Level 91
    Project of the Month winner for July 2009
    Wow, this looks very nice :)

    pokeball :)OfflineMale
    ********
    Cheese
    Rep:
    Level 95
    ?
    Looks sweet!  :)
    Watch out for: HaloOfTheSun

    ***
    Rep:
    Level 90

    *
    ? ? ? ? ? ? ? ? ? The nice kind of alien~
    Rep:
    Level 92
    Martian - Occasionally kind
    A very nice and clean script. Great job ^_^

    *
    Rep:
    Level 102
    2014 Biggest Narcissist Award2014 Biggest Forum Potato2014 Best Non-RM Creator2013 Best Game Creator (Non-RM)2013 Best IRC ChatterboxParticipant - GIAW 112012 Best IRC Chatterbox2012 Most Successful Troll2012 Funniest Member2012 Best Use Of Avatar and Signature spaceSecret Santa 2012 ParticipantProject of the Month winner for November 2009For being a noted contributor to the RMRK Wiki2010 Most Successful Troll2010 Biggest Forum Couch Potato2010 Best IRC Chatterbox
    Awesome job.

    I was playing Earthbound a few days ago, and wondered if there was a script like this. ;)

    *
    Meet me in the middle
    Rep:
    Level 89
    or left of the dial.
    For frequently finding and reporting spam and spam botsSecret Santa 2012 Participant
    I get an error with the name box script, error reads:

    Script'' line 14 NameError occurred
    undefined method 'replace_code' for class 'window_message'

    ***
    Rep:
    Level 90
    Be sure to paste the main script before the rest ;)

    *
    A Random Custom Title
    Rep:
    Level 96
    wah
    "I'm Slipknot." XD Anyways, is this a more advanced version of the letter by letter? If so, awesome! If not, awesome! ;D Job good. :)

    *
    Meet me in the middle
    Rep:
    Level 89
    or left of the dial.
    For frequently finding and reporting spam and spam botsSecret Santa 2012 Participant
    Be sure to paste the main script before the rest ;)
    I have. :(

    ****
    MONOCLE MAN
    Rep:
    Level 89
    -::Gone::-
    Nice, I love it. You get a bean. :bb:

    ***
    Rep:
    Level 90
    @Lac: The order of the scripts should be like this:
     - Scene_Debug
     - SDK (if you use it)
     - SMS (main code)
     - Name Box
     - Others scripts
     - Main


    @rest: thanks  ;D

    *
    Rep:
    Level 97
    2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Most Mature Member2011 Best Veteran2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
    Yup, I think I'm definitely using this Message system for my game. Thank you for writing and posting this. You made me very happy  ;D

    ***
    Rep:
    Level 91
    Blah blah blah...
    Project of the Month winner for November 2008
    With the window above the event, anybody know how to get it above the player?


    - -

    *
    Rep:
    Level 97
    2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Most Mature Member2011 Best Veteran2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member

    *
    Rep:
    Level 98
    2010 Best Veteran2014 Best Use of Avatar and Signature Space2014 Best IRC Chatterbox2014 Most Mature Member2014 Best Writer2014 Best Counsel2014 Favorite Staff Member2014 King of RMRK2013 Favorite Staff MemberSecret Santa 2013 ParticipantFor the great victory in the Breakfast War.Secret Santa 2012 Participant2011 Best Counsel2011 Best Writer2010 Best IRC Chatterbox2010 Funniest Member
    This script is made out of immediant win.

    ( ???) This is terrifyingly relevant to my intrests today, isn't it?
    you awoke in a burning paperhouse
    from the infinite fields of dreamless sleep

    *
    Crew Slut
    Rep:
    Level 93
    You'll love it!
    For taking a crack at the RMRK Wiki
    Wow, this is such an amazing script!

    *
    Rep: +0/-0Level 86
    The text doesn't show up for me. :/

    Any idea on how to fix that?

    ***
    Rep:
    Level 85
    i really like this script, could you make it so you can have endless choices, like this:

    show choices: choice 1, choice 2, choice 3, choice 4
    (call script)
    show choice: choice 5, choiche 6, choice 7, choice 8

    and so on

    **
    Rep:
    Level 85
    The Final Chapter
    Neat looking script! Looks very nice!  ;D

    **
    Rep: +0/-0Level 85
    The text doesn't show up for me. :/

    Any idea on how to fix that?
    Is the font you've defined in the script installed on your system? If it's not, it just won't show up

    **
    Rep:
    Level 86
    When I test play it won't let me move the cursor on the title screen!! Help!
    « Last Edit: November 11, 2008, 07:39:44 PM by Dralel »
    ==-+-==ACTIVE PROJECT==-+-==
              Kingdom of Warfare I

    *
    Rep: +0/-0Level 83
    Hey..this is justin chael. from jworks production.
    it's my first time to use this program and i also bought it.
    i just want you to help me with my problem..
    everytime i use use script..and put it in to the script editor..on the top of the main..this message always shows up."script "Main"line 14: name error occurred.
    undefined method 'replace_code' for class 'window_message' i cant figure out how to solve that problem..i tried to download your Demo but the link is broken..

    please help me out with this...
    thank you for your time.
    Justine.

    One more thing..
    do you have any idea how can i put a "Quest" menu in the menu?
    thanks again..

    Good Day And Good luck!

    **
    Rep: +0/-0Level 81
    RMRK Junior
    Ok sorry for this but i can not get the demo to download. the script sounds nice but i dont know how to use it (how to get text to scroll or how to add the choices