- 注册时间
- 2007-3-18
- 最后登录
- 2019-6-30
②入门
- 积分
- 24
|
剛在逛日本網時看到了此串RGSS,但是卻不知如何使用…
(該如何讓該角色臉圖顯示出來,例如用事件內的腳本輸入什麼,或是對話欄一開始要輸入什麼之類的…)
#==============================================================================
# ■ 顔グラ+名前表示 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
以上。懇請各位大大能幫忙!
出自:http://www.k3.dion.ne.jp/~claimh/rgss/index.html |
|