RPGツクールXP/VX用のRGSS素材です。
一部英語版対応です。
(A few materials can be used for English RPG MAKER XP/VX.)
競合率はルファーの独断と偏見なのでたまにハズレます。
↑スクリーンショット (クリックで拡大)
#==============================================================================
# ■ マップ名を表示
#------------------------------------------------------------------------------
# マップ画面で、マップ名を表示するスクリプトです。カスタマイズもできます。
# (C) ルファー
# WebSite https://tkoolerlufar.pages.dev/
#==============================================================================
=begin
=対応RGSS
1 2
=必要なライブラリ
ルファー作スクリプト素材共通ライブラリ
=他の素材との競合の可能性
!.. 低い
=RPGツクールXPでの導入方法
Scene_Titleより下に新セクションを作成して、このプログラムをそこにコピーする
=設定の変更方法。
項目の説明を見て目的の項目を探し、
半角の「=」の横に値を入れます。
* 「整数」 と書かれている場合
・・・項目ごとに指定された範囲の整数をそのまま半角で入力
* 「文字列」と書かれている場合
・・・半角の二重引用符("←これ)の中に任意の文字列を入力
二重引用符の中の文字列は全角でも良い
* 「真偽」 と書かれている場合
・・・tureで真(ON)、falseで偽(OFF)
もちろん半角
* 「配列」 と書かれている場合
・・・複数の値を入力
値を半角カンマで区切って大カッコで囲む
「[値1, 値2, ...]」という感じで増やします
値の量は項目ごとに指定されています
値を0個にしたい場合は「[]」、
1個にしたい場合は「[値]」と入れます
* 「nil」 と書かれている場合・・・半角で「nil」と入力
=項目の説明。
* Arial 使用フラグ (真偽)
・・・真にすると半角の英文が Arial で表示されます。
* メイリオ 使用フラグ (真偽)
・・・真にすると Windows Vista では メイリオ で表示されます。
* 標準の書体番号 (整数)
・・・0以上4以下の数値を入れて書体を変化させます。
0:ゴシック (MS ゴシック)
1:明朝 (MS 明朝)
2:プロポーショナル ゴシック (MS Pゴシック)
3:プロポーショナル 明朝 (MS P明朝)
4:ユーザー インターフェース用ゴシック (MS UI Gothic)
* その他のフォント (文字列の配列)
・・・それ以外で使用したいフォントを指定します。
値の数はいくつでも構いません。
* 文字の大きさ (整数)
・・・文字の高さを入れます。単位はピクセルです。
エラーを起こさない範囲ならいくつでもOK。
* 区切り文字 (文字列 または nil)
・・・親マップが存在する場合、親マップと子マップの名前を区切る時に使う
文字列を入れます。
nilの場合は、親マップの名前を表示しません。
=更新履歴
2010/03/01 RPGツクールVXに対応
2008/02/03 導入した瞬間バグる致命的バグ修正
----/--/-- 公開
=再定義しているメソッド
Spriteset_Map#initialize (エイリアス使用)
Spriteset_Map#dispose (エイリアス使用)
Spriteset_Map#update (エイリアス使用)
=新規定義しているメソッド
なし
=end
#----------------------------------------------------------------------------
# ◇ Lufar モジュール
#----------------------------------------------------------------------------
module Lufar
#--------------------------------------------------------------------------
# ◇ MapName モジュール
#--------------------------------------------------------------------------
module MapName
#------------------------------------------------------------------------
# ◇ 素材ユーザーによる設定項目
#------------------------------------------------------------------------
FONT_USE_ARIAL = false # Arial 使用フラグ
FONT_USE_MEIRYO = false # メイリオ 使用フラグ
FONT_NUMBER = 2 # 書体番号
FONT_OTHER = ["UmePlus Gothic"] # その他のフォント
TEXT_SIZE = 24 # 文字の大きさ
PUNC_CHAR = "/" # 区切り文字
end
end
#----------------------------------------------------------------------------
# ◇ Sprite_MapName クラス
#----------------------------------------------------------------------------
class Sprite_MapName < Sprite
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize
super
if (defined? $data_mapinfos) != "global_variable"
extension = rpgxp? ? "rxdata" : "rvdata"
$data_mapinfos = load_data("Data/MapInfos." + extension)
end
screen_width = (rpgxp? ? 640 : Graphics.width) - 88
self.bitmap = Bitmap.new(548, Lufar::MapName::TEXT_SIZE + 16)
font_name = Array.new(Lufar::MapName::FONT_OTHER)
font_name.push("Arial") if Lufar::MapName::FONT_USE_ARIAL
font_name.push("メイリオ") if Lufar::MapName::FONT_USE_MEIRYO
case Lufar::MapName::FONT_NUMBER
when 0
font_name.push("MS ゴシック")
when 1
font_name.push("MS 明朝")
when 2
font_name.push("MS Pゴシック")
when 3
font_name.push("MS P明朝")
when 4
font_name.push("MS UI Gothic")
end
self.bitmap.font = Font.new(font_name, Lufar::MapName::TEXT_SIZE)
self.x = 4
self.y = 0
self.z = 500
update
end
#--------------------------------------------------------------------------
# ○ 解放
#--------------------------------------------------------------------------
def dispose
unless self.bitmap.nil?
self.bitmap.dispose
end
super
end
#--------------------------------------------------------------------------
# ○ フレーム更新
#--------------------------------------------------------------------------
def update
super
if @map_id != $game_map.map_id
@map_id = $game_map.map_id
self.bitmap.clear
self.bitmap.font.color.set(255, 255, 255)
self.bitmap.draw_text(self.bitmap.rect, map_name(@map_id))
end
end
#--------------------------------------------------------------------------
# ● マップ名を取得
#--------------------------------------------------------------------------
def map_name(n)
if $data_mapinfos[n].parent_id != 0 and Lufar::MapName::PUNC_CHAR
text = map_name($data_mapinfos[n].parent_id) + Lufar::MapName::PUNC_CHAR
else
text = ""
end
text.concat($data_mapinfos[n].name)
return text
end
end
#----------------------------------------------------------------------------
# ◆ Spriteset_Map クラス
#----------------------------------------------------------------------------
class Spriteset_Map
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
alias _LufarMN_old_init initialize
def initialize
@mapname_sprite = Sprite_MapName.new
_LufarMN_old_init
end
#--------------------------------------------------------------------------
# ● 解放
#--------------------------------------------------------------------------
alias _LufarMN_old_disp dispose
def dispose
@mapname_sprite.dispose
_LufarMN_old_disp
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias _LufarMN_old_updt update
def update
@mapname_sprite.update
_LufarMN_old_updt
end
end
戻る