- 注册时间
- 2006-5-13
- 最后登录
- 2006-5-28
③业余
- 积分
- 220
|
原地址:http://www.k3.dion.ne.jp/~claimh/

使用方法:
1.顔グラ(128×128)をPicturesへインポート
2.スクリプト内に名前と顔グラのセットを記述
3.イベント中で顔グラ+名前を表示させるには、
show_face_name(id, type)
id:2.でセットした顔グラ+名前の登録ID
type:表示タイプ(0→左、1→右)
4.表示した顔グラ+名前を消すには、
hide_face_name(type)
(注)左右のどちらかしか消せませんので、
両方表示させている場合は、2回実行してください。
(本人不懂日语,有懂的翻译一下,如果你像偶一样聪明,不翻也能用......哈哈)
#==============================================================================
# ■ 顔グラ+名前表示 Ver.1.0.1 by Claimh
#------------------------------------------------------------------------------
# 会話時に顔グラと名前を別ウィンドウに表示できます。
#==============================================================================
module Face_Name
FACENAME_SET = []
#==============================================================================
# □ カスタマイズSTART
#==============================================================================
# 顔グラ+名前セットの設定
# FACENAME_SET[登録ID] = [ 名前(""とすれば、名無し), 顔グラのファイル名]
FACENAME_SET[0] = ["アルシェス", "aru.png"]
#==============================================================================
# □ カスタマイズEND
#==============================================================================
end
class Interpreter
#--------------------------------------------------------------------------
# ● 顔グラ+名前表示
# id : 顔グラ+名前セットID
# type : 表示タイプ(0:左 1:右)
#--------------------------------------------------------------------------
def show_face_name(id, type)
if type == 0
@l_face_window = Window_Face.new
if Face_Name::FACENAME_SET[id][0] != ""
@l_face_window.set_face_name(id)
@l_name_window = Window_Name.new(id)
@l_dummy_window = Window_NameDummy.new
end
elsif type == 1
@r_face_window = Window_Face.new
@r_face_window.x = 480
if Face_Name::FACENAME_SET[id][0] != ""
@r_face_window.set_face_name(id)
@r_name_window = Window_Name.new(id)
@r_dummy_window = Window_NameDummy.new
@r_name_window.x = 336
@r_dummy_window.x = 336
end
end
end
#--------------------------------------------------------------------------
# ● 顔グラ+名前消去
#--------------------------------------------------------------------------
def hide_face_name(type)
if type == 0
@l_face_window.dispose
@l_face_window = nil
if @l_name_window != nil
@l_name_window.dispose
@l_name_window = nil
@l_dummy_window.dispose
@l_dummy_window = nil
end
elsif type == 1
@r_face_window.dispose
@r_face_window = nil
if @r_name_window != nil
@r_name_window.dispose
@r_dummy_window.dispose
@r_name_window = nil
@r_dummy_window = nil
end
end
end
end
class Window_Face < Window_Base
include Face_Name
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize
super(0, 160, 160, 160)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
end
#--------------------------------------------------------------------------
# ● 顔グラ+名前表示
#--------------------------------------------------------------------------
def set_face_name(id)
face = FACENAME_SET[id]
bitmap = RPG::Cache.picture(face[1])
src_rect = Rect.new(0, 0, self.width, self.height)
self.contents.blt(0, 0, bitmap, src_rect)
end
end
class Window_Name < Window_Base
include Face_Name
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(id)
name = FACENAME_SET[id]
return if name[0] == nil
super(144, 256, 160, 64)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
self.contents.draw_text(0, 0, 128, 32, name[0])
end
end
class Window_NameDummy < Window_Base
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize
super(144, 272, 160, 32)
end
end |
|