RPGツクールXP/VX用のRGSS素材です。
一部英語版対応です。
(A few materials can be used for English RPG MAKER XP/VX.)
競合率はルファーの独断と偏見なのでたまにハズレます。
#==============================================================================
# ■ XPにもドロップシャドウを!
#------------------------------------------------------------------------------
# RPGツクールXPで、VXの影付き文字を再現します。
# (C) ルファー
# WebSite https://tkoolerlufar.pages.dev/
#==============================================================================
=begin
=対応RGSS
1
=他の素材との競合の可能性
... ないでしょ?
=導入方法
Mainより上に新セクションを作成して、このプログラムをそこにコピーする
= フォントの裏技。
Lufar モジュールの「DROPSHADOW_NAME」をいろいろいじると
いろんなフォントが使えるかも。
= 初期状態で影付き文字を書きたくない方へ。
Lufar モジュールの「DROPSHADOW_DEFAULT」の横の青いのを
"false"に修正してください。
=更新履歴
2010/04/13 公開
=再定義しているメソッド (いずれもエイリアス使用)
Font#initialize
Bitmap#draw_text
=新規定義しているプロパティ
Font#shadow
Font.default_shadow
=end
#----------------------------------------------------------------------------
# ◇ Lufar モジュール
#----------------------------------------------------------------------------
module Lufar
DROPSHADOW_NAME = ["UmePlus P Gothic", "MS Pゴシック", "Arial"]
DROPSHADOW_DEFAULT = true
end
#----------------------------------------------------------------------------
# ◆ Font クラス
#----------------------------------------------------------------------------
class Font
#--------------------------------------------------------------------------
# ● クラス変数
#--------------------------------------------------------------------------
@@default_name = Lufar::DROPSHADOW_NAME
@@default_shadow = Lufar::DROPSHADOW_DEFAULT
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
unless private_method_defined? :_Lufar15_PrototypeOfInitialization
alias :_Lufar15_PrototypeOfInitialization :initialize
end
def initialize(*args)
_Lufar15_PrototypeOfInitialization(*args)
@shadow = @@default_shadow
end
#--------------------------------------------------------------------------
# ○ シャドウフラグの取得
#--------------------------------------------------------------------------
def shadow
@shadow
end
#--------------------------------------------------------------------------
# ○ シャドウフラグの設定
#--------------------------------------------------------------------------
def shadow=(flag)
@shadow = flag
end
#--------------------------------------------------------------------------
# ○ シャドウフラグデフォルト値の取得
#--------------------------------------------------------------------------
def self.default_shadow
@@default_shadow
end
#--------------------------------------------------------------------------
# ○ シャドウフラグデフォルト値の設定
#--------------------------------------------------------------------------
def self.default_shadow=(flag)
@@default_shadow = flag
end
end
#----------------------------------------------------------------------------
# ◆ Bitmap クラス
#----------------------------------------------------------------------------
class Bitmap
#--------------------------------------------------------------------------
# ● 文字列の描画
#--------------------------------------------------------------------------
unless method_defined?(:_Lufar15_PrototypeOfDt)
alias _Lufar15_PrototypeOfDt draw_text
end
def draw_text(*args)
if self.font.shadow
sargs = Array.new(args)
if sargs[0].kind_of?(Rect)
sargs[0] = args[0].clone
sargs[0].x += 1
sargs[0].y += 1
else
sargs[0] += 1
sargs[1] += 1
end
set_color = self.font.color.clone
self.font.color.set(0.0, 0.0, 0.0, set_color.alpha)
_Lufar15_PrototypeOfDt(*sargs)
self.font.color = set_color
end
_Lufar15_PrototypeOfDt(*args)
end
end
戻る