Text Bar
Author: Death10
Introduction
Running text
Script
*Call script:
-On: $game_system.ads_option = 1
-Off: $game_system.ads_option = 2
-Change:
+Text: $game_system.ads_x = "Text"
+Background: $game_system.ads_back = "Back.png"
Spoiler Code: - #==============================================================================
- # ** Text Bar
- #==============================================================================
- # Author: Death10
- # http://gamesvts.com
- # http://taotrochoi.com
- #==============================================================================
- # *Call script:
- # -On: $game_system.ads_option = 1
- # -Off: $game_system.ads_option = 2
- # -Change:
- # +Text: $game_system.ads_x = "Text"
- # +Background: $game_system.ads_back = "Back.png"
- #==============================================================================
- $game_system = Game_System.new #DataManager.load_normal_database
- module Cache
- def self.load_bitmap2(file, hue = 0)
- @cache ||= {}
- if file.empty?
- empty_bitmap
- elsif hue == 0
- normal_bitmap(file)
- else
- hue_changed_bitmap(file, hue)
- end
- end
- end
- class Game_System
- attr_accessor :ads
- attr_accessor :ads_on
- attr_accessor :ads_x
- attr_accessor :ads_option
- attr_accessor :ads_back
- alias initialize_ads initialize
- def initialize
- initialize_ads
- @ads = "Text Bar"
- @ads_back = "Graphics/Titles1/#{$data_system.title1_name}"
- @ads_option = 1
- @ads_on = 1
- @ads_x = 0
- end
- end
- class TB < Window_Base
- def initialize
- super(0, 0, 544, 64)
- self.opacity = 0
- #$game_system = Game_System.new
- check
- refresh
- end
- def check
- case $game_system.ads_option
- when 1
- $game_system.ads_on = 1
- $game_system.ads_x = -contents.text_size($game_system.ads).width
- $game_system.ads_option = 0
- when 2
- $game_system.ads_on = 0
- $game_system.ads_option = 0
- end
- end
- def refresh
- check
- contents.clear
- cx = contents.text_size($game_system.ads).width
- if $game_system.ads_x == -cx
- $game_system.ads_x = 544
- else
- $game_system.ads_x -= 0.5
- end
- if $game_system.ads_on == 1
- contents.blt(0, 0, Cache.load_bitmap2($game_system.ads_back), Rect.new(0, 0, 544, 32), 160)
- contents.draw_text($game_system.ads_x, 0, cx, 32, $game_system.ads, 2)
- end
- end
- def open
- super
- refresh
- end
- end
- class Scene_Map < Scene_Base
- alias caw create_all_windows
- def create_all_windows
- caw
- @ads = TB.new
- end
- alias update_ads update
- def update
- update_ads
- @ads.open
- end
- alias utp update_transfer_player
- def update_transfer_player
- utp
- case $game_system.ads_on
- when 0
- @map_name_window.y = 0
- when 1
- @map_name_window.y = 44
- end
- end
- end
复制代码
Screenshot
Spoiler
本贴来自国际rpgmaker官方论坛作者:Death10处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址: https://forums.rpgmakerweb.com/threads/text-bar.3321/ |