赞 | 0 |
VIP | 2 |
好人卡 | 2 |
积分 | 1 |
经验 | 36666 |
最后登录 | 2017-9-25 |
在线时间 | 641 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 641 小时
- 注册时间
- 2015-7-29
- 帖子
- 211
|
- #==============================================================================
- # ■ RGSS3 魔物図鑑 ver 1.00 本体プログラム
- #------------------------------------------------------------------------------
- # 配布元:
- # 白の魔 [url]http://izumiwhite.web.fc2.com/[/url]
- #
- # 利用規約:
- # RPGツクールVXの正規の登録者のみご利用になれます。
- # 利用報告・著作権表示とかは必要ありません。
- # 改造もご自由にどうぞ。
- # 何か問題が発生しても責任は持ちません。
- #==============================================================================
-
- #==============================================================================
- # ■ 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
- 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 return_scene
- $game_map.autoplay
- SceneManager.return
- 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 = "- ???? -"
- 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
复制代码 |
|