| 
 
| 赞 | 11 |  
| VIP | 4 |  
| 好人卡 | 4 |  
| 积分 | 45 |  
| 经验 | 76902 |  
| 最后登录 | 2025-10-31 |  
| 在线时间 | 191 小时 |  
 Lv3.寻梦者 
	梦石0 星屑4486 在线时间191 小时注册时间2010-7-17帖子181 | 
| 
本帖最后由 xiaolu0415 于 2012-7-31 13:19 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 最近从日文网上找到一个怪物图鉴的脚本。其他都改好了,就是特性和说明总是无法取数文本。有哪位高手可以帮我看一下,谢谢。
 
 图鉴初始化:
 #==============================================================================
 # ¡ RGSS3 –‚•¨}ŠÓ ver 1.01@‰ŠúÝ’è
 #------------------------------------------------------------------------------
 # @”z•zŒ³:
 #     ”’‚Ì–‚ http://izumiwhite.web.fc2.com/
 #
 # @—˜—p‹K–ñ:
 #     RPGƒcƒN[ƒ‹VX Ace‚̳‹K‚Ì“o˜^ŽÒ‚݂̂²—˜—p‚ɂȂê‚Ü‚·B
 #     —˜—p•ñE’˜ìŒ •\ަ‚Æ‚©‚Í•K—v‚ ‚è‚Ü‚¹‚ñB
 #     ‰ü‘¢‚à‚²Ž©—R‚ɂǂ¤‚¼B
 #     ‰½‚©–â‘肪” ¶‚µ‚Ä‚àÓ”C‚ÍŽ‚¿‚Ü‚¹‚ñB
 #==============================================================================
 
 #-------------------------------------------------------------------------------
 # š ‰ŠúÝ’èB
 #-------------------------------------------------------------------------------
 module WD_monsterdictionary_layout
 
 #=== Še€–ڂ̃ŒƒCƒAƒEƒgÝ’è€–Ú ================================================
 #
 #   *_***_display       : true‚Å•\ަBfalse‚Å”ñ•\ަB
 #   *_***_display_x     : •\ަˆÊ’u‚ÌxÀ•W
 #   *_***_display_y     : •\ަˆÊ’u‚ÌyÀ•W
 #   *_***_display_width : •\ަƒeƒLƒXƒg‚Ì•
 #   *_***_display_text* : •\ަƒeƒLƒXƒg
 #
 #===============================================================================
 
 #===‘S}ŠÓ‹¤’ÊÝ’è==============================================================
 
 #}ŠÓŠ®¬“x‚ɂǂ̒iŠK‚Ŕɉh‚·‚é‚©
 Perfection_timing = 1 #1Ë‘˜‹öŽžA2ËŒ‚”jŽž
 
 #ƒtƒHƒ“ƒgƒTƒCƒY
 C_font_size = 18
 
 #===–‚•¨}ŠÓÝ’è================================================================
 
 #”Ô†‚Ì•\ަ
 M_id_display            = true
 M_id_display_x          = 0
 M_id_display_y          = 0
 M_id_display_width      = 60
 M_id_display_digit      = 3 #Œ…”
 
 #–¼‘O‚Ì•\ަ
 M_name_display          = true
 M_name_display_x        = 84
 M_name_display_y        = 0
 M_name_display_width    = 172
 
 #‰æ‘œ‚Ì•\ަ
 M_pic_display           = true
 M_pic_display_x         = 140
 M_pic_display_y         = 380
 M_pic_display_opacity   = 255 #‰æ‘œ‚Ì•s“§–¾“x
 
 #Å‘å‚g‚o‚Ì•\ަ
 M_mhp_display           = true
 M_mhp_display_x         = 0
 M_mhp_display_y         = 33
 M_mhp_display_width     = 136
 
 #Å‘å‚l‚o‚Ì•\ަ
 M_mmp_display           = true
 M_mmp_display_x         = 150
 M_mmp_display_y         = 33
 M_mmp_display_width     = 136
 
 #UŒ‚—͂̕\ަ
 M_atk_display           = true
 M_atk_display_x         = 0
 M_atk_display_y         = 51
 M_atk_display_width     = 136
 
 #–hŒä—͂̕\ަ
 M_def_display           = true
 M_def_display_x         = 150
 M_def_display_y         = 51
 M_def_display_width     = 136
 
 #–‚–@—͂̕\ަ
 M_mat_display           = true
 M_mat_display_x         = 0
 M_mat_display_y         = 69
 M_mat_display_width     = 136
 
 #–‚–@–hŒä‚Ì•\ަ
 M_mdf_display           = true
 M_mdf_display_x         = 150
 M_mdf_display_y         = 69
 M_mdf_display_width     = 136
 
 #•q·«‚Ì•\ަ
 M_agi_display           = true
 M_agi_display_x         = 0
 M_agi_display_y         = 87
 M_agi_display_width     = 136
 
 #‰^‚Ì•\ަ
 M_luk_display           = true
 M_luk_display_x         = 150
 M_luk_display_y         = 87
 M_luk_display_width     = 136
 
 #属性
 M_feature_display       = true
 M_feature_display_x     = 0
 M_feature_display_y     = 114
 M_feature_display_width = 286
 M_feature_display_text1 = "属性"
 M_feature_display_text2 = "|"
 
 
 #经验
 M_exp_display           = true
 M_exp_display_x         = 0
 M_exp_display_y         = 213
 M_exp_display_width     = 136
 M_exp_display_text1     = "经验"
 
 #金钱
 M_gold_display          = true
 M_gold_display_x        = 150
 M_gold_display_y        = 213
 M_gold_display_width    = 136
 M_gold_display_text1    = "金钱"
 
 #ƒhƒƒbƒvƒAƒCƒeƒ€‚Ì•\ަ
 M_drop_display          = true
 M_drop_display_x        = 0
 M_drop_display_y        = 240
 M_drop_display_width    = 286
 M_drop_display_text1    = "掉落"
 M_drop_display_text2    = "‚È‚µ"
 
 #à–¾‚Ì•\ަ
 M_help_display          = true
 M_help_display_x        = 0
 M_help_display_y        = 321
 M_help_display_width    = 286
 M_help_display_text1    = "说明"
 M_help_display_text2    = "|"
 
 
 #Œ‚”j”‚Ì•\ަ
 M_geno_display          = false
 M_geno_display_x        = 0
 M_geno_display_y        = 321
 M_geno_display_width    = 136
 M_geno_display_text1    = "Œ‚”j”"
 
 end
 #-------------------------------------------------------------------------------
 # š ‰Šúݒ肨‚í‚è
 #-------------------------------------------------------------------------------
 
 图鉴本体脚本:
 #==============================================================================
 # ■ RGSS3 魔物図鑑 ver 1.01 本体プログラム
 #------------------------------------------------------------------------------
 #  配布元:
 #     白の魔 http://izumiwhite.web.fc2.com/
 #
 #  利用規約:
 #     RPGツクールVX Aceの正規の登録者のみご利用になれます。
 #     利用報告・著作権表示とかは必要ありません。
 #     改造もご自由にどうぞ。
 #     何か問題が発生しても責任は持ちません。
 #==============================================================================
 
 #==============================================================================
 # ■ WD_monsterdictionary
 #------------------------------------------------------------------------------
 #  魔物図鑑用の共通メソッドです。
 #==============================================================================
 
 module WD_monsterdictionary
 def m_dictionary_encount_switch_on(id)
 $game_system.m_dic_encount_sw = [] if $game_system.m_dic_encount_sw == nil
 $game_system.m_dic_encount_sw[id] = false if $game_system.m_dic_encount_sw[id] == nil
 $game_system.m_dic_encount_sw[id] = true
 end
 def m_dictionary_encount_switch_off(id)
 $game_system.m_dic_encount_sw = [] if $game_system.m_dic_encount_sw == nil
 $game_system.m_dic_encount_sw[id] = false if $game_system.m_dic_encount_sw[id] == nil
 $game_system.m_dic_encount_sw[id] = false
 end
 def m_dictionary_encount_switch_on?(id)
 $game_system.m_dic_encount_sw = [] if $game_system.m_dic_encount_sw == nil
 $game_system.m_dic_encount_sw[id] = false if $game_system.m_dic_encount_sw[id] == nil
 return $game_system.m_dic_encount_sw[id]
 end
 def m_dictionary_victory_switch_on(id)
 $game_system.m_dic_victory_sw = [] if $game_system.m_dic_victory_sw == nil
 $game_system.m_dic_victory_sw[id] = false if $game_system.m_dic_victory_sw[id] == nil
 $game_system.m_dic_victory_sw[id] = true
 end
 def m_dictionary_victory_switch_off(id)
 $game_system.m_dic_victory_sw = [] if $game_system.m_dic_victory_sw == nil
 $game_system.m_dic_victory_sw[id] = false if $game_system.m_dic_victory_sw[id] == nil
 $game_system.m_dic_victory_sw[id] = false
 end
 def m_dictionary_victory_switch_on?(id)
 $game_system.m_dic_victory_sw = [] if $game_system.m_dic_victory_sw == nil
 $game_system.m_dic_victory_sw[id] = false if $game_system.m_dic_victory_sw[id] == nil
 return $game_system.m_dic_victory_sw[id]
 end
 def m_dictionary_drop_switch_on(id, n)
 $game_system.m_dic_drop_sw = [] if $game_system.m_dic_drop_sw == nil
 $game_system.m_dic_drop_sw[id] = [] if $game_system.m_dic_drop_sw[id] == nil
 $game_system.m_dic_drop_sw[id][n] = false if $game_system.m_dic_drop_sw[id][n] == nil
 $game_system.m_dic_drop_sw[id][n] = true
 end
 def m_dictionary_drop_switch_off(id, n)
 $game_system.m_dic_drop_sw = [] if $game_system.m_dic_drop_sw == nil
 $game_system.m_dic_drop_sw[id] = [] if $game_system.m_dic_drop_sw[id] == nil
 $game_system.m_dic_drop_sw[id][n] = false if $game_system.m_dic_drop_sw[id][n] == nil
 $game_system.m_dic_drop_sw[id][n] = false
 end
 def m_dictionary_drop_switch_on?(id, n)
 $game_system.m_dic_drop_sw = [] if $game_system.m_dic_drop_sw == nil
 $game_system.m_dic_drop_sw[id] = [] if $game_system.m_dic_drop_sw[id] == nil
 $game_system.m_dic_drop_sw[id][n] = false if $game_system.m_dic_drop_sw[id][n] == nil
 return $game_system.m_dic_drop_sw[id][n]
 end
 def m_dictionary_genoside_number_add(id, n)
 $game_system.m_dic_genoside_num = [] if $game_system.m_dic_genoside_num == nil
 $game_system.m_dic_genoside_num[id] = 0 if $game_system.m_dic_genoside_num[id] == nil
 $game_system.m_dic_genoside_num[id] += n
 end
 def m_dictionary_genoside_number(id)
 $game_system.m_dic_genoside_num = [] if $game_system.m_dic_genoside_num == nil
 $game_system.m_dic_genoside_num[id] = 0 if $game_system.m_dic_genoside_num[id] == nil
 return $game_system.m_dic_genoside_num[id]
 end
 
 def print_dictionary?(enemy)
 if enemy != nil
 if enemy.name.size > 0
 hantei = /<図鑑無効>/ =~ enemy.note
 if hantei == nil
 return true
 end
 end
 end
 return false
 end
 def monster_dictionary_perfection
 dic_max = 0
 dic_num = 0
 $data_enemies.each do |enemy|
 if print_dictionary?(enemy)
 dic_max += 1
 if WD_monsterdictionary_layout::Perfection_timing == 1
 if m_dictionary_encount_switch_on?(enemy.id) == true
 dic_num += 1
 end
 elsif WD_monsterdictionary_layout::Perfection_timing == 2
 if m_dictionary_victory_switch_on?(enemy.id) == true
 dic_num += 1
 end
 end
 end
 end
 return (100*dic_num)/dic_max
 end
 end
 
 class Game_Interpreter
 include WD_monsterdictionary
 end
 
 class Game_System
 #--------------------------------------------------------------------------
 # ● 公開インスタンス変数
 #--------------------------------------------------------------------------
 attr_accessor :m_dic_encount_sw
 attr_accessor :m_dic_victory_sw
 attr_accessor :m_dic_drop_sw
 attr_accessor :m_dic_genoside_num
 #--------------------------------------------------------------------------
 # ● オブジェクト初期化
 #--------------------------------------------------------------------------
 alias wd_orig_initialize002 initialize
 def initialize
 wd_orig_initialize002
 @m_dic_encount_sw = []
 @m_dic_victory_sw = []
 @m_dic_drop_sw = []
 @m_dic_genoside_num = []
 end
 end
 
 class Game_Troop < Game_Unit
 include WD_monsterdictionary
 #--------------------------------------------------------------------------
 # ● 図鑑への登録(遭遇済み判定)
 #--------------------------------------------------------------------------
 def dictionary1
 for enemy in members
 m_dictionary_encount_switch_on(enemy.enemy_id) unless enemy.hidden? #遭遇済み図鑑登録
 end
 end
 #--------------------------------------------------------------------------
 # ● 図鑑への登録(撃破済み判定)
 #--------------------------------------------------------------------------
 def dictionary2
 for enemy in dead_members
 m_dictionary_victory_switch_on(enemy.enemy_id) unless enemy.hidden? #撃破済み図鑑登録
 m_dictionary_genoside_number_add(enemy.enemy_id, 1) unless enemy.hidden? #撃破数カウント
 end
 end
 end
 
 class << BattleManager
 #--------------------------------------------------------------------------
 # ● 戦闘開始
 #--------------------------------------------------------------------------
 alias wd_orig_battle_start002 battle_start
 def battle_start
 wd_orig_battle_start002
 $game_troop.dictionary1 #図鑑への登録(遭遇済み判定)
 end
 #--------------------------------------------------------------------------
 # ● 勝利の処理
 #--------------------------------------------------------------------------
 alias wd_orig_process_victory002 process_victory
 def process_victory
 $game_troop.dictionary2 #図鑑への登録(撃破済み判定)
 wd_orig_process_victory002
 end
 end
 
 class Game_Interpreter
 #--------------------------------------------------------------------------
 # ● 敵キャラの出現
 #--------------------------------------------------------------------------
 alias wd_orig_command_335_002 command_335
 def command_335
 wd_orig_command_335_002
 $game_troop.dictionary1 #図鑑への登録(遭遇済み判定)
 end
 #--------------------------------------------------------------------------
 # ● 敵キャラの変身
 #--------------------------------------------------------------------------
 alias wd_orig_command_336_002 command_336
 def command_336
 wd_orig_command_336_002
 $game_troop.dictionary1 #図鑑への登録(遭遇済み判定)
 end
 end
 
 class Game_Enemy < Game_Battler
 include WD_monsterdictionary
 #--------------------------------------------------------------------------
 # ● ドロップアイテムの配列作成(再定義)
 #--------------------------------------------------------------------------
 def make_drop_items
 n = -1
 enemy.drop_items.inject([]) do |r, di|
 n += 1
 if di.kind > 0 && rand * di.denominator < drop_item_rate
 m_dictionary_drop_switch_on(@enemy_id, n)
 r.push(item_object(di.kind, di.data_id))
 else
 r
 end
 end
 end
 end
 
 #==============================================================================
 # ■ Scene_MonsterDictionary
 #------------------------------------------------------------------------------
 #  魔物図鑑画面の処理を行うクラスです。
 #==============================================================================
 
 class Scene_MonsterDictionary < Scene_ItemBase
 #--------------------------------------------------------------------------
 # ● 開始処理
 #--------------------------------------------------------------------------
 def start
 super
 create_status_window
 create_item_window
 create_perfection_window
 end
 #--------------------------------------------------------------------------
 # ● アイテムウィンドウの作成
 #--------------------------------------------------------------------------
 def create_item_window
 wy = 0
 wh = Graphics.height- 48
 @item_window = Window_MonsterDictionaryList.new(Graphics.width-172-48, wy, 172+48, wh)
 @item_window.viewport = @viewport
 @item_window.status_window = @status_window
 @item_window.set_handler(:cancel, method(:return_scene))
 @item_window.update_help
 end
 #--------------------------------------------------------------------------
 # ● アイテムステータスウィンドウの作成
 #--------------------------------------------------------------------------
 def create_status_window
 wy = 0
 wh = Graphics.height
 @status_window = Window_MonsterDictionaryStatus.new(0, wy, Graphics.width-172-48, wh)
 @status_window.viewport = @viewport
 end
 #--------------------------------------------------------------------------
 # ● 図鑑完成度ウィンドウの作成
 #--------------------------------------------------------------------------
 def create_perfection_window
 wy = @item_window.y + @item_window.height
 wh = 48
 @perfection_window = Window_MonsterDictionaryPerfection.new(Graphics.width-172-48, wy, 172+48, wh)
 @perfection_window.viewport = @viewport
 end
 end
 
 
 #==============================================================================
 # ■ Window_MonsterDictionaryList
 #------------------------------------------------------------------------------
 #  魔物図鑑画面で、魔物の一覧を表示するウィンドウです。
 #==============================================================================
 
 class Window_MonsterDictionaryList < Window_Selectable
 include WD_monsterdictionary
 #--------------------------------------------------------------------------
 # ● オブジェクト初期化
 #--------------------------------------------------------------------------
 def initialize(x, y, width, height)
 super
 @data = []
 refresh
 activate
 select(0)
 end
 #--------------------------------------------------------------------------
 # ● 桁数の取得
 #--------------------------------------------------------------------------
 def col_max
 return 1
 end
 #--------------------------------------------------------------------------
 # ● 項目数の取得
 #--------------------------------------------------------------------------
 def item_max
 @data ? @data.size : 1
 end
 #--------------------------------------------------------------------------
 # ● アイテムの取得
 #--------------------------------------------------------------------------
 def enemy
 @data && index >= 0 ? @data[index] : nil
 end
 #--------------------------------------------------------------------------
 # ● アイテムリストの作成
 #--------------------------------------------------------------------------
 def make_item_list
 @data = []
 $data_enemies.each do |enemy|
 if print_dictionary?(enemy)
 @data.push(enemy)
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● 項目の描画
 #--------------------------------------------------------------------------
 def draw_item(index)
 enemy = @data[index]
 if enemy
 rect = item_rect(index)
 rect.width -= 4
 if m_dictionary_encount_switch_on?(enemy.id)
 change_color(normal_color, true)
 draw_text(rect.x, rect.y, 172, line_height, enemy.name)
 else
 change_color(normal_color, false)
 draw_text(rect.x, rect.y, 172, line_height, "???????")
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● ヘルプウィンドウ更新メソッドの呼び出し
 #--------------------------------------------------------------------------
 def call_update_help
 update_help if active
 end
 #--------------------------------------------------------------------------
 # ● ヘルプテキスト更新
 #--------------------------------------------------------------------------
 def update_help
 if @status_window
 if m_dictionary_encount_switch_on?(enemy.id)
 @status_window.set_item(enemy, @index, true)
 else
 @status_window.set_item(enemy, @index, false)
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● リフレッシュ
 #--------------------------------------------------------------------------
 def refresh
 make_item_list
 create_contents
 draw_all_items
 end
 #--------------------------------------------------------------------------
 # ● ステータスウィンドウの設定
 #--------------------------------------------------------------------------
 def status_window=(status_window)
 @status_window = status_window
 end
 end
 
 #==============================================================================
 # ■ Window_MonsterDictionaryPerfection
 #------------------------------------------------------------------------------
 #  魔物図鑑画面で、図鑑の完成度を表示するウィンドウです。
 #==============================================================================
 
 class Window_MonsterDictionaryPerfection < Window_Selectable
 include WD_monsterdictionary
 #--------------------------------------------------------------------------
 # ● オブジェクト初期化
 #--------------------------------------------------------------------------
 def initialize(x, y, width, height)
 super
 refresh(width)
 end
 #--------------------------------------------------------------------------
 # ● リフレッシュ
 #--------------------------------------------------------------------------
 def refresh(width)
 contents.clear
 draw_text(0, 0, width-24, line_height, "図鑑完成度: #{monster_dictionary_perfection} %", 1)
 end
 end
 
 
 #==============================================================================
 # ■ Window_MonsterDictionaryStatus
 #------------------------------------------------------------------------------
 #  魔物図鑑画面で、エネミーの詳細を表示するウィンドウです。
 #==============================================================================
 
 class Window_MonsterDictionaryStatus < Window_Selectable
 include WD_monsterdictionary
 #--------------------------------------------------------------------------
 # ● オブジェクト初期化
 #--------------------------------------------------------------------------
 def initialize(x, y, width, height)
 super
 @enemy = nil
 refresh
 end
 #--------------------------------------------------------------------------
 # ● アイテムの設定
 #--------------------------------------------------------------------------
 def set_item(enemy, index=-1, print=false)
 return if ((@enemy == enemy) and (@index == index))
 @enemy = enemy
 @index = index
 @print = print
 refresh
 end
 #--------------------------------------------------------------------------
 # ● アイテムオブジェクトの取得
 #--------------------------------------------------------------------------
 def item_object(kind, data_id)
 return $data_items  [data_id] if kind == 1
 return $data_weapons[data_id] if kind == 2
 return $data_armors [data_id] if kind == 3
 return nil
 end
 #--------------------------------------------------------------------------
 # ● リフレッシュ
 #--------------------------------------------------------------------------
 def refresh
 contents.clear
 contents.font.size = 24
 
 if @print
 
 if WD_monsterdictionary_layout::M_id_display
 text1  = sprintf("%0#{WD_monsterdictionary_layout::M_id_display_digit}d",@index+1)
 x      = WD_monsterdictionary_layout::M_id_display_x
 y      = WD_monsterdictionary_layout::M_id_display_y
 width  = WD_monsterdictionary_layout::M_id_display_width
 height = line_height
 draw_text(x, y, width, height, text1, 0)
 end
 if WD_monsterdictionary_layout::M_name_display
 text1  = @enemy.name
 x      = WD_monsterdictionary_layout::M_name_display_x
 y      = WD_monsterdictionary_layout::M_name_display_y
 width  = WD_monsterdictionary_layout::M_name_display_width
 height = line_height
 draw_text(x, y, width, height, text1, 0)
 end
 if WD_monsterdictionary_layout::M_pic_display
 pic_name = @enemy.battler_name
 pic_hue  = @enemy.battler_hue
 x      = WD_monsterdictionary_layout::M_pic_display_x
 y      = WD_monsterdictionary_layout::M_pic_display_y
 opacity= WD_monsterdictionary_layout::M_pic_display_opacity
 bitmap = Cache.battler(pic_name, pic_hue)
 rect = Rect.new(0, 0, bitmap.width, bitmap.height)
 contents.blt(x - rect.width/2, y - rect.height, bitmap, rect, opacity)
 end
 
 font_size = WD_monsterdictionary_layout::C_font_size
 contents.font.size = font_size
 if WD_monsterdictionary_layout::M_mhp_display
 text1  = Vocab::param(0)
 text2  = "?"
 text2  = @enemy.params[0] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_mhp_display_x
 y      = WD_monsterdictionary_layout::M_mhp_display_y
 width  = WD_monsterdictionary_layout::M_mhp_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_mmp_display
 text1  = Vocab::param(1)
 text2  = "?"
 text2  = @enemy.params[1] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_mmp_display_x
 y      = WD_monsterdictionary_layout::M_mmp_display_y
 width  = WD_monsterdictionary_layout::M_mmp_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_atk_display
 text1  = Vocab::param(2)
 text2  = "?"
 text2  = @enemy.params[2] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_atk_display_x
 y      = WD_monsterdictionary_layout::M_atk_display_y
 width  = WD_monsterdictionary_layout::M_atk_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_def_display
 text1  = Vocab::param(3)
 text2  = "?"
 text2  = @enemy.params[3] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_def_display_x
 y      = WD_monsterdictionary_layout::M_def_display_y
 width  = WD_monsterdictionary_layout::M_def_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_mat_display
 text1  = Vocab::param(4)
 text2  = "?"
 text2  = @enemy.params[4] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_mat_display_x
 y      = WD_monsterdictionary_layout::M_mat_display_y
 width  = WD_monsterdictionary_layout::M_mat_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_mdf_display
 text1  = Vocab::param(5)
 text2  = "?"
 text2  = @enemy.params[5] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_mdf_display_x
 y      = WD_monsterdictionary_layout::M_mdf_display_y
 width  = WD_monsterdictionary_layout::M_mdf_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_agi_display
 text1  = Vocab::param(6)
 text2  = "?"
 text2  = @enemy.params[6] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_agi_display_x
 y      = WD_monsterdictionary_layout::M_agi_display_y
 width  = WD_monsterdictionary_layout::M_agi_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_luk_display
 text1  = Vocab::param(7)
 text2  = "?"
 text2  = @enemy.params[7] if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_luk_display_x
 y      = WD_monsterdictionary_layout::M_luk_display_y
 width  = WD_monsterdictionary_layout::M_luk_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_feature_display
 text1  = WD_monsterdictionary_layout::M_feature_display_text1
 text2  = "?"
 text2  = WD_monsterdictionary_layout::M_feature_display_text2 if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_feature_display_x
 y      = WD_monsterdictionary_layout::M_feature_display_y
 width  = WD_monsterdictionary_layout::M_feature_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 i = 0
 if m_dictionary_victory_switch_on?(@enemy.id)
 @enemy.note.scan(/<図鑑特徴:(.*)>/){|matched|
 i += 1
 self.contents.draw_text(x + font_size, y + font_size * i, width - font_size, font_size, matched[0], 0)
 }
 end
 if i == 0
 self.contents.draw_text(x + font_size, y + font_size, width - font_size, font_size, text2, 0)
 end
 end
 if WD_monsterdictionary_layout::M_exp_display
 text1  = WD_monsterdictionary_layout::M_exp_display_text1
 text2  = "?"
 text2  = @enemy.exp if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_exp_display_x
 y      = WD_monsterdictionary_layout::M_exp_display_y
 width  = WD_monsterdictionary_layout::M_exp_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 if WD_monsterdictionary_layout::M_gold_display
 text1  = WD_monsterdictionary_layout::M_gold_display_text1
 text2  = "?"
 text2  = @enemy.gold if m_dictionary_victory_switch_on?(@enemy.id)
 text3  = Vocab::currency_unit
 x      = WD_monsterdictionary_layout::M_gold_display_x
 y      = WD_monsterdictionary_layout::M_gold_display_y
 width  = WD_monsterdictionary_layout::M_gold_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 cx = text_size(Vocab::currency_unit).width
 change_color(normal_color)
 draw_text(x, y, width - cx - 2, font_size, text2, 2)
 change_color(system_color)
 draw_text(x, y, width, font_size, text3, 2)
 change_color(normal_color)
 end
 if WD_monsterdictionary_layout::M_drop_display
 text1  = WD_monsterdictionary_layout::M_drop_display_text1
 text2  = WD_monsterdictionary_layout::M_drop_display_text2 if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_drop_display_x
 y      = WD_monsterdictionary_layout::M_drop_display_y
 width  = WD_monsterdictionary_layout::M_drop_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 i = 0
 @enemy.drop_items.each do |di|
 if di.kind > 0
 i += 1
 item = item_object(di.kind, di.data_id)
 n = i -1
 if m_dictionary_drop_switch_on?(@enemy.id, n)
 text2 = item.name
 text3 = "1/#{di.denominator}"
 else
 text2  = "???????"
 text3  = ""
 end
 self.contents.draw_text(x + font_size, y + font_size * i, width - font_size, font_size, text2, 0)
 self.contents.draw_text(x + font_size, y + font_size * i, width - font_size, font_size, text3, 2)
 end
 end
 if i == 0
 self.contents.draw_text(x + font_size, y + font_size, width - font_size, font_size, text2, 0)
 end
 end
 if WD_monsterdictionary_layout::M_help_display
 text1  = WD_monsterdictionary_layout::M_help_display_text1
 text2  = "?"
 text2  = WD_monsterdictionary_layout::M_help_display_text2 if m_dictionary_victory_switch_on?(@enemy.id)
 x      = WD_monsterdictionary_layout::M_help_display_x
 y      = WD_monsterdictionary_layout::M_help_display_y
 width  = WD_monsterdictionary_layout::M_help_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 i = 0
 if m_dictionary_victory_switch_on?(@enemy.id)
 @enemy.note.scan(/<図鑑説明:(.*)>/){|matched|
 i += 1
 self.contents.draw_text(x + font_size, y + font_size * i, width - font_size, font_size, matched[0], 0)
 }
 end
 if i == 0
 self.contents.draw_text(x + font_size, y + font_size, width - font_size, font_size, text2, 0)
 end
 end
 if WD_monsterdictionary_layout::M_geno_display
 text1  = WD_monsterdictionary_layout::M_geno_display_text1
 text2  = "#{m_dictionary_genoside_number(@enemy.id)}"
 x      = WD_monsterdictionary_layout::M_geno_display_x
 y      = WD_monsterdictionary_layout::M_geno_display_y
 width  = WD_monsterdictionary_layout::M_geno_display_width
 change_color(system_color)
 draw_text(x, y, width, font_size, text1, 0)
 change_color(normal_color)
 draw_text(x, y, width, font_size, text2, 2)
 end
 
 elsif @enemy != nil
 
 if WD_monsterdictionary_layout::M_id_display
 text1  = sprintf("%0#{WD_monsterdictionary_layout::M_id_display_digit}d",@index+1)
 x      = WD_monsterdictionary_layout::M_id_display_x
 y      = WD_monsterdictionary_layout::M_id_display_y
 width  = WD_monsterdictionary_layout::M_id_display_width
 height = line_height
 draw_text(x, y, width, height, text1, 0)
 end
 if WD_monsterdictionary_layout::M_name_display
 text1  = "- No Data -"
 x      = WD_monsterdictionary_layout::M_name_display_x
 y      = WD_monsterdictionary_layout::M_name_display_y
 width  = WD_monsterdictionary_layout::M_name_display_width
 height = line_height
 draw_text(x, y, width, height, text1, 0)
 end
 
 end
 end
 end
 
 我做出来的效果为:
 
   原作者的效果:
 
   应该是通过怪物备注里添加给这两个字段赋值。
 
   原作者的效果见该网:http://izumiwhite.web.fc2.com/rgss3/rgss3_002.html
 
 | 
 |