#============================================================================== # 本脚本来自www.66RPG.com,使用和转载请保留此信息 #============================================================================== #============================================================================== # ■ 地图名显示脚本 # by Yuee #------------------------------------------------------------------------------ # 在Main的上方插入一个页,将本脚本复制到那页中即可 #============================================================================== #============================================================================== # ■ Window_MapName #------------------------------------------------------------------------------ # 显示地图名字的窗口。 #============================================================================== class Window_MapName < Window_Base #-------------------------------------------------------------------------- # ● 类常量定义 #-------------------------------------------------------------------------- # 暂时屏蔽用的开关 SWITCH = 35 # 窗口位置设定 NAME_X = 380 # 矩形左上顶点X坐标 NAME_Y = 20 # 矩形左上顶点Y坐标 NAME_W = 220 # 矩形宽 NAME_H = 60 # 矩形高 # 显示时间设置 SHOW_TIME_0 = 10 # 地图名出现前等待的帧数 SHOW_TIME_1 = 10 # 地图名从不可见变成可见的帧数 SHOW_TIME_2 = 34 # 地图名完全可见的帧数 SHOW_TIME_3 = 16 # 地图名从可见变成不可见的帧数 # 完全可见时的透明度设置 OPACITY_1 = 244 # 边框 OPACITY_2 = 144 # 背景 OPACITY_3 = 255 # 文字 # 地图名字的颜色 TEXT_COLOR = Color.new(255, 255, 255, 255) #-------------------------------------------------------------------------- # ● 初始化状态 #-------------------------------------------------------------------------- def initialize super(NAME_X , NAME_Y, NAME_W, NAME_H) # 初始化窗口透明度 self.opacity = 0 self.back_opacity = 0 self.contents_opacity = 0 self.contents = Bitmap.new(width - 32, height - 32) # 剩余帧数初始化 @show_time = 0 end #-------------------------------------------------------------------------- # ● 输出文字 #-------------------------------------------------------------------------- def setname unless $game_switches[SWITCH]==true # 获取地图ID newid = $game_map.map_id time = SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3 # 如果现在的地图的ID不是刚才显示的地图ID则开始显示 if newid != @id @id = newid @show_time = SHOW_TIME_0 + SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3 # 剩余帧数为0是时,全部窗口透明 elsif @show_time < 1 self.opacity = 0 self.back_opacity = 0 self.contents_opacity = 0 return end self.contents.clear self.contents.font.color = TEXT_COLOR # 描绘地图名 self.contents.draw_text(4, 0 , width - 40, 32, $data_mapinfos[@id].name, 1) # 根本帧数设定窗口透明度 if @show_time > (SHOW_TIME_2 + SHOW_TIME_3) self.opacity = @show_time < time ? (((OPACITY_1 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0 self.back_opacity = @show_time < time ? (((OPACITY_2 / SHOW_TIME_1 )* (time - @show_time)).to_i) : 0 self.contents_opacity = @show_time < time ? (((OPACITY_3 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0 else self.opacity = @show_time < (SHOW_TIME_3 / 16 * 14) ? ((OPACITY_1 / SHOW_TIME_3) * @show_time).to_i : OPACITY_1 self.back_opacity = @show_time < (SHOW_TIME_3 / 16 * 9) ? ((OPACITY_2 / SHOW_TIME_3) * @show_time).to_i : OPACITY_2 self.contents_opacity = @show_time < SHOW_TIME_3 ? ((OPACITY_3 / SHOW_TIME_3)* @show_time).to_i : OPACITY_3 end @show_time -= 1 end end end #============================================================================== # ■ Scene_Map #------------------------------------------------------------------------------ # 处理地图画面的类。(追加定义) #============================================================================== class Scene_Map alias smn_main main def main @mapname = Window_MapName.new smn_main @mapname.dispose end alias smn_update update def update @mapname.setname smn_update end end #============================================================================== # ■ Scene_Title #------------------------------------------------------------------------------ # 处理标题画面的类。(追加定义) #============================================================================== class Scene_Title alias smn_main main def main # 读取地图信息文件 $data_mapinfos = load_data("Data/MapInfos.rxdata") smn_main end end #============================================================================== # 本脚本来自www.66RPG.com,使用和转载请保留此信息
#============================================================================== # 本脚本来自www.66RPG.com,使用和转载请保留此信息 #============================================================================== #============================================================================== # ■ 图片标题菜单1.0 # Scene_Title #------------------------------------------------------------------------------ # 作者:chaochao # http://zhuchao.go1.icpcn.com #============================================================================== class Scene_Title def main if $BTEST battle_test return end $data_actors = load_data("Data/Actors.rxdata") $data_classes = load_data("Data/Classes.rxdata") $data_skills = load_data("Data/Skills.rxdata") $data_items = load_data("Data/Items.rxdata") $data_weapons = load_data("Data/Weapons.rxdata") $data_armors = load_data("Data/Armors.rxdata") $data_enemies = load_data("Data/Enemies.rxdata") $data_troops = load_data("Data/Troops.rxdata") $data_states = load_data("Data/States.rxdata") $data_animations = load_data("Data/Animations.rxdata") $data_tilesets = load_data("Data/Tilesets.rxdata") $data_common_events = load_data("Data/CommonEvents.rxdata") $data_system = load_data("Data/System.rxdata") $game_system = Game_System.new # 生成标题图形 @sprite = [Sprite.new] for i in 0..6 @sprite[i] = Sprite.new @sprite[i].opacity = 0 end @sprite[0].bitmap = RPG::Cache.title($data_system.title_name) @sprite[0].opacity = 0 #开始游戏的图片 @sprite[1].bitmap = Bitmap.new("Graphics/Pictures/start-1.png") @sprite[2].bitmap = Bitmap.new("Graphics/Pictures/start-2.png") #继续游戏的图片 @sprite[3].bitmap = Bitmap.new("Graphics/Pictures/continue-1.png") @sprite[4].bitmap = Bitmap.new("Graphics/Pictures/continue-2.png") #结束游戏的图片 @sprite[5].bitmap = Bitmap.new("Graphics/Pictures/exit-1.png") @sprite[6].bitmap = Bitmap.new("Graphics/Pictures/exit-2.png") #图片位置 for i in 1..6 x=220 y=(i+1)/2*50+240 @sprite[i].x =x @sprite[i].y =y end @continue_enabled = false for i in 0..3 if FileTest.exist?("Save#{i+1}.rxdata") @continue_enabled = true end end if @continue_enabled @command_index = 1 else @command_index = 0 @sprite[3].tone = Tone.new(0, 0, 0, 255) @sprite[4].tone = Tone.new(0, 0, 0, 255) end $game_system.bgm_play($data_system.title_bgm) Audio.me_stop Audio.bgs_stop Graphics.transition loop do Graphics.update #淡出背景圖形 if @sprite[0].opacity <= 255 @sprite[0].opacity += 15 end Input.update update if $scene != self break end end Graphics.freeze # 釋放圖形 for i in 0..6 @sprite[i].bitmap.dispose @sprite[i].dispose end end def update chaochaocommandchaochao if Input.trigger?(Input::C) case @command_index when 0 command_new_game when 1 command_continue when 2 command_shutdown end end end def chaochaocommandchaochao if Input.trigger?(Input::UP) @command_index -= 1 if @command_index < 0 @command_index = 2 end $game_system.se_play($data_system.cursor_se) end if Input.trigger?(Input::DOWN) @command_index += 1 if @command_index > 2 @command_index = 0 end $game_system.se_play($data_system.cursor_se) end case @command_index when 0 if @sprite[1].opacity >= 0 @sprite[1].opacity -= 30 end if @sprite[2].opacity <= 240 @sprite[2].opacity += 30 end if @sprite[3].opacity <= 210 @sprite[3].opacity += 30 end if @sprite[4].opacity >= 0 @sprite[4].opacity -= 30 end if @sprite[5].opacity <= 210 @sprite[5].opacity += 30 end if @sprite[6].opacity >= 0 @sprite[6].opacity -= 30 end when 1 if @sprite[1].opacity <= 210 @sprite[1].opacity += 30 end if @sprite[2].opacity >= 0 @sprite[2].opacity -= 30 end if @sprite[3].opacity >= 0 @sprite[3].opacity -= 30 end if @sprite[4].opacity <= 240 @sprite[4].opacity += 30 end if @sprite[5].opacity <= 210 @sprite[5].opacity += 30 end if @sprite[6].opacity >= 0 @sprite[6].opacity -= 30 end when 2 if @sprite[1].opacity <= 210 @sprite[1].opacity += 30 end if @sprite[2].opacity >= 0 @sprite[2].opacity -= 30 end if @sprite[3].opacity <= 210 @sprite[3].opacity += 30 end if @sprite[4].opacity >= 0 @sprite[4].opacity -= 30 end if @sprite[5].opacity >= 0 @sprite[5].opacity -= 30 end if @sprite[6].opacity <= 240 @sprite[6].opacity += 30 end end end end #============================================================================== # 本脚本来自www.66RPG.com,使用和转载请保留此信息 #==============================================================================
屏幕截图 2025-09-15 191643.png (722.58 KB, 下载次数: 0)
307.25 KB, 下载次数: 0
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |