- Joined
- May 21, 2014
- Messages
- 15
- Reaction score
- 1
- First Language
- German
- Primarily Uses
Auron's Scrolling Help Windows v1.01
AuronAD
Originally ported to Ace by Xypher, originally created for VX by BigEd781
Introduction
I needed to be able to write longer descriptions for my current project, but the problem was displaying it in the help windows. So after searching for quite a bit I stumbled first on BigEd781's script for VX, which didn't run on Ace, and foud later on Xypher's version for Ace. On first sight it did exactly what I wanted, namely providing a scrolling feature to the help windows (used to display weapon, skill, item etc. descriptions), but on further testing I saw 2 problems. First it didn't wait at the end of the line, which made it necessary to read the description multiple times for slow readers. Secondly the scroll behavior seemed strange. It didn't scroll exactly to the end of the first line of the text, but instead to the total length of the text, regardless whether there was an escape character or not. So I decided to change it.
Please notice again, that I'm not the original creator of the script, I merely improved it, since there was no support for the Ace-version.
Features from previous authors
- Scrolls the text in help windows to display long item/skill/weapon descriptions
- Customize waiting time before the scrolling starts
- Customize scrolling speed
Added Features
- Customize waiting time after scrolling
How to Use
It's pretty self explanatory. Just post it under the "Materials" section and above "Main", like all of the scripts.
Demo
Attached. Just look at the equipment of Eric and you'll see what awaits you. (RTP Needed)
Script
#-------------------------------------------------------------------------------# Version 1.01# Original VX script by BigEd781# Converted for VX Ace by Xypher# Modified by AuronAD#-------------------------------------------------------------------------------# Tired of short item descriptions? Do you want to include funny puns or # epic backstorys to your weapons? This script allows you to display a # description, were the length is only limited by that of the database-editor.# With this easy-to-use script the help windows scroll horizontally to display# every last bit of your imagination.#-------------------------------------------------------------------------------# Feel free to use however you like it, but please give credit to all the # authors! #------------------------------------------------------------------------------- # Installing# Just copy the script in the "Materials" section and above "Main" and you# should be fine.#------------------------------------------------------------------------------- class Window_Help < Window_Base#------------------------------------------------------------------------------# Configuration#------------------------------------------------------------------------------- @@SCROLL_DELAY = 2 # After how many seconds should the scroll start? @@SCROLL_SPEED = 1 # Speed of the scrolling in pixels / frame (60 frames / sec) @@SCROLL_STOP_DELAY = 2 # After how many seconds should the scroll begin from start? #-------------------------------------------------------------------------------# DO NOT EDIT PAST THIS POINT!#------------------------------------------------------------------------------- #-------------------------------------------------------------------------- # alias method: initialize #-------------------------------------------------------------------------- alias :scroll_init :initialize def initialize(*args) scroll_init(*args) @internal_frame_count = 0 @text_is_long = false self.windowskin = get_altered_skin @internal_endline_count = 0 end #-------------------------------------------------------------------------- # overwrite method: get_altered_skin #-------------------------------------------------------------------------- def get_altered_skin default = Cache.system('Window') window = Bitmap.new(default.width, default.height) window.blt(0, 0, default, default.rect) window.fill_rect(80, 16, 32, 32, Color.new(0,0,0,0)) return window end #-------------------------------------------------------------------------- # overwrite method: set_text #-------------------------------------------------------------------------- def set_text(text, align = 0) unless (text == @text) && (align == @align) @internal_frame_count = 0 if text.include? "\n" lines = text.split(/\n/) txt_width = self.contents.text_size(lines[0]).width >= self.contents.text_size(lines[1]).width ? self.contents.text_size(lines[0]).width : self.contents.text_size(lines[1]).width else txt_width = self.contents.text_size(text).width end @text_is_long = (txt_width) > (self.width - 32) self.contents.dispose #w = @text_is_long ? (txt_width + self.width - 32) : self.width - 32 w = @text_is_long ? (txt_width) : self.width - 32 self.contents = Bitmap.new(w, self.height) self.contents.clear self.ox = 0 self.contents.font.color = normal_color self.contents.draw_text(4, 0, self.contents.width, fitting_height(1), text, align) @text = text @align = align refresh end end #-------------------------------------------------------------------------- # overwrite method: update #-------------------------------------------------------------------------- def update super @internal_frame_count += 1 if ((@internal_frame_count > @@SCROLL_DELAY * 60) && @text_is_long) if self.ox >= (self.contents.width - self.width + 32) if @internal_endline_count > @@SCROLL_STOP_DELAY * 60 self.ox = 0 @internal_frame_count = 0 @internal_endline_count = 0 else @internal_endline_count += 1 end else self.ox += @@SCROLL_SPEED end end endend
Regards,
AuronAD
Update v1.01:
- Removed some unnecessary code
- Fixed delay issueScrolling_Windows.rar
Attachments
-
323 bytes Views: 105
Last edited by a moderator:


