求rpg制作大师vx的各种实用脚本!急!

我最想要的是横战和出现地名的两个!越多越好!非常急!
2025-06-20 15:55:35
推荐回答(1个)
回答1:

  #==============================================================================
  # ■ 地图名显示脚本
  # 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,使用和转载请保留此信息
  #==============================================================================

  # ▼▲▼ XRXS25. ダッシュ机能 ver.2 ▼▲▼
  # by 桜雅 在土 (基本、再改订)
  # Tetra-Z (改订原案)

  #==============================================================================
  # □ カスタマイズポイント
  #==============================================================================
  module XRXS_Dash
  #
  # 按下加速键之后的速度増加量
  #
  PLUSPEED = 1
  #
  # 行走加速的按键
  #
  BUTTON = Input::C
  end
  #==============================================================================
  # ■ Game_Player
  #==============================================================================
  class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias xrxs25_update update
  def update
  # 例外补正
  if @move_speed_arcadia == nil
  @move_speed_arcadia = @move_speed
  end
  # 移动中、イベント実行中、移动ルート强制中、
  # メッセージウィンドウ表示中、
  # ダッシュボタン挿下中、のいずれでもない场合
  unless moving? or $game_system.map_interpreter.running? or
  @move_route_forcing or $game_temp.message_window_showing
  # 速度の変更
  if Input.press?(XRXS_Dash::BUTTON)
  @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
  else
  @move_speed = @move_speed_arcadia
  end
  end
  # 呼び戻す
  xrxs25_update
  end
  #--------------------------------------------------------------------------
  # ○ 移动タイプ : カスタム [オーバーライド]
  #--------------------------------------------------------------------------
  def move_type_custom
  # 例外补正
  if @move_speed_arcadia == nil
  @move_speed_arcadia = @move_speed
  end
  # 标准速度に戻す
  @move_speed = @move_speed_arcadia
  # 呼び戻す
  super
  # 速度の保存
  @move_speed_arcadia = @move_speed
  end
  end

  #==============================================================================
  # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  #==============================================================================

  第一个是出现地图名脚本,第二个是空格加速脚本,直接复制就行