lunariafantasia/Scripts/_.145.rb
2024-01-12 03:12:38 -06:00

1167 lines
51 KiB
Ruby
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#==============================================================================
# ■ Game_Party
#------------------------------------------------------------------------------
#  パーティを扱うクラスです。所持金やアイテムなどの情報が含まれます。このクラ
# スのインスタンスは $game_party で参照されます。
#==============================================================================
class Game_Party < Game_Unit
#--------------------------------------------------------------------------
# ● アイテムの増加(減少)
# include_equip : 装備品も含める
#--------------------------------------------------------------------------
alias book_gain_item gain_item
def gain_item(item, amount, include_equip = false)
book_gain_item(item, amount, include_equip)
$game_system.item_record(item) if has_item?(item, include_equip)
end
end
#==============================================================================
# ■ Game_System
#------------------------------------------------------------------------------
#  システム周りのデータを扱うクラスです。セーブやメニューの禁止状態などを保存
# します。このクラスのインスタンスは Book で参照されます。
#==============================================================================
class Game_System
#--------------------------------------------------------------------------
# ● 公開インスタンス変数
#--------------------------------------------------------------------------
attr_accessor :book #
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
alias book_initialize initialize
def initialize
book_initialize
book_set
end
#--------------------------------------------------------------------------
# ○ 図鑑用意
#--------------------------------------------------------------------------
def book_set
@book ||= {}
@book["monster"] ||= {}
@book["character"] ||= {}
@book["quest"] ||= {}
@book["item"] ||= {}
end
#--------------------------------------------------------------------------
# ○ アイテム図鑑登録
#--------------------------------------------------------------------------
def item_record(item)
@book ||= {}
@book["item"] = {} if !@book["item"]
return if Book::OMIT_ITEM[item_category(item)].include?(item.id)
@book["item"][[item_category(item),item.id]] ||= true
end
#--------------------------------------------------------------------------
# ○ アイテム図鑑手動登録
#--------------------------------------------------------------------------
def item_record_manual(symbol, id)
@book ||= {}
@book["item"] = {} if !@book["item"]
@book["item"][[symbol, id]] ||= true
end
#--------------------------------------------------------------------------
# ○ 魔物図鑑手動登録
#--------------------------------------------------------------------------
def enemy_record_manual(id,level, d = false)
@book ||= {}
@book["monster"] = {} if !@book["monster"]
if d
@book["monster"].delete(id)
else
@book["monster"][id] ||= level
@book["monster"][id] = level if @book["monster"][id] && @book["monster"][id] < level
end
end
#--------------------------------------------------------------------------
# ○ アイテム分類
#--------------------------------------------------------------------------
def item_category(item)
if item.is_a?(RPG::Item) && !item.key_item? && !item.skill_book? && !item.hide_item?
:item
elsif item.is_a?(RPG::Item) && item.key_item? && !item.hide_item?
:key_item
elsif item.is_a?(RPG::Weapon)
:weapon
elsif item.is_a?(RPG::Armor) && !item.rune?
:armor
elsif item.is_a?(RPG::Armor) && item.rune?
:rune
elsif item.is_a?(RPG::Item) && !item.key_item? && item.skill_book?
:skill_book
else
:none
end
end
#--------------------------------------------------------------------------
# ○ 魔物図鑑登録
#--------------------------------------------------------------------------
def enemy_record(enemy)
@book ||= {}
@book["monster"] = {} if !@book["monster"]
@book["monster"][enemy.enemy_id] ||= enemy.base_level
@book["monster"][enemy.enemy_id] = enemy.base_level if @book["monster"][enemy.enemy_id] && @book["monster"][enemy.enemy_id] < enemy.base_level
end
#--------------------------------------------------------------------------
# ○ クエスト図鑑登録 ※variables クエスト管理変数
#--------------------------------------------------------------------------
def quest_record(variables)
@book ||= {}
@book["quest"] = {} if !@book["quest"]
@book["quest"][variables] = true
end
#--------------------------------------------------------------------------
# ○ 人物図鑑登録 ※ id = n1 kp1 等の識別子  num = 説明進行度
# マリアナの様に後半に説明が変化するタイプは説明進行度を増やしていく
#--------------------------------------------------------------------------
def character_record(id, num)
@book ||= {}
@book["character"] = {} if !@book["character"]
@book["character"][id] ||= num
@book["character"][id] = num if @book["character"][id] < num
end
end
#==============================================================================
# ■ Scene_Battle
#------------------------------------------------------------------------------
#  バトル画面の処理を行うクラスです。
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# ● 終了処理
#--------------------------------------------------------------------------
alias book_terminate terminate
def terminate
book_terminate
$game_troop.members.each {|enemy| $game_system.enemy_record(enemy)} unless $game_switches[FAKEREAL::NO_RECORD]
end
end
#==============================================================================
# ■ Game_Interpreter
#------------------------------------------------------------------------------
#  イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、
# Game_Troop クラス、Game_Event クラスの内部で使用されます。
#==============================================================================
class Game_Interpreter
#--------------------------------------------------------------------------
# ○ 人物図鑑登録  ※ idは "" で囲む事, numは数字
#--------------------------------------------------------------------------
def character_record(id, num = 1)
$game_system.character_record(id, num)
end
#--------------------------------------------------------------------------
# ○ アイテム図鑑手動登録 ※ symbolは頭に : をつける
#--------------------------------------------------------------------------
def item_record_manual(symbol, id)
$game_system.item_record_manual(symbol, id)
end
#--------------------------------------------------------------------------
# ○ アイテム図鑑手動登録 
#--------------------------------------------------------------------------
def enemy_record_manual(id, level, d = false)
$game_system.enemy_record_manual(id, level, d)
end
end
#==============================================================================
# ■ Game_Temp
#------------------------------------------------------------------------------
#  セーブデータに含まれない、一時的なデータを扱うクラスです。このクラスのイン
# スタンスは $game_temp で参照されます。
#==============================================================================
class Game_Temp
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
#alias book_initialize initialize
#def initialize
#book_initialize
#book_reset
#end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def item_book_reset
@item_book = nil
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def monster_book
@monster_book ||= monster_book_set #$data_enemies.select{|enemy| !enemy.name.empty? && enemy.id < 89 if enemy }#.each{|e| @monster_book.push(e.id) }
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def monster_book_set(true_route = false)
#book = []
#m = $data_enemies.select{|enemy| !enemy.name.empty? && enemy.id < 89 if enemy }#.each{|e| @monster_book.push(e.id) }
#m.each{|e| book.push(e.id) }
book = []
if true_route
m = $data_enemies.select{|enemy| !enemy.name.empty? && enemy.id > 90 if enemy }#.each{|e| @monster_book.push(e.id) }
else
m = $data_enemies.select{|enemy| !enemy.name.empty? && enemy.id < 89 if enemy }#.each{|e| @monster_book.push(e.id) }
end
m = m.sort_by {|e| [e.category_id, e.id] }
m.each{|e| book.push([e.id, e.base_level]) }
return book
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def true_monster_book
@true_monster_book ||= monster_book_set(true)#$data_enemies.select{|enemy| !enemy.name.empty? && enemy.id > 90 }
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def change_level_search(id, lv)
@enemy_change_level[id] ||= change_level_set(id)
@enemy_change_level[id][lv]
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def change_level_set(id)
change_level = Hash.new
enemy = $data_enemies[id]
if enemy.note.include?("<LV")
enemy.note.each_line do |line|
case line
when /\<LV(\d+)\s*:\s*HP(\d+)\s*:\s*MP(\d+)\s*:\s*SP(\d+)\s*:\s*攻(\d+)\s*:\s*防(\d+)\s*:\s*魔(\d+)\s*:\s*魔防(\d+)\s*:\s*敏(\d+)\s*:\s*運(\d+)\s*:\s*E(\d+)\s*:\s*G(\d+)\s*:\s*A(\d+)\>/
change_level[$1.to_i] = [$2.to_i, $3.to_i, $5.to_i, $6.to_i, $7.to_i, $8.to_i, $9.to_i, $10.to_i, $4.to_i, $11.to_i, $12.to_i, $13.to_i]
end
end
end
return change_level
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def item_book
@item_book ||= item_book_set($game_switches[FAKEREAL::BOOK_EXTEND]) #$data_enemies.select{|enemy| !enemy.name.empty? && enemy.id < 89 if enemy }#.each{|e| @monster_book.push(e.id) }
end
#--------------------------------------------------------------------------
# ○
#--------------------------------------------------------------------------
def item_book_set(true_route = false)
book = {}
book[:item] = []
book[:key_item] = []
book[:weapon] = []
book[:armor] = []
book[:rune] = []
book[:skill_book] = []
i = $data_items.select{|item| item_category(item, :item) if item }
i = i.select {|item| !Book::TRUE_ITEM[:item].include?(item.id) } if !true_route
i = i.sort_by {|item| [item.category_id, item.id] }
book[:item] = i#i.each{|item| book[:item].push(item.id) }
k = $data_items.select{|item| item_category(item, :key_item) if item }
k = k.select {|item| !Book::TRUE_ITEM[:key_item].include?(item.id) } if !true_route
k = k.sort_by {|item| [item.category_id, item.id] }
book[:key_item] = k
w = $data_weapons.select{|item| item_category(item, :weapon) if item }
w = w.select {|item| !Book::TRUE_ITEM[:weapon].include?(item.id) } if !true_route
w = w.sort_by {|item| [item.category_id, item.id] }
book[:weapon] = w
a = $data_armors.select{|item| item_category(item, :armor) if item }
a = a.select {|item| !Book::TRUE_ITEM[:armor].include?(item.id) } if !true_route
a = a.sort_by {|item| [item.category_id, item.id] }
book[:armor] = a
r = $data_armors.select{|item| item_category(item, :rune) if item }
r = r.select {|item| !Book::TRUE_ITEM[:rune].include?(item.id) } if !true_route
r = r.sort_by {|item| [item.category_id, item.id] }
book[:rune] = r
s = $data_items.select{|item| item_category(item, :skill_book) if item }
s = s.select {|item| !Book::TRUE_ITEM[:skill_book].include?(item.id) } if !true_route
s = s.sort_by {|item| [item.category_id, item.id] }
book[:skill_book] = s
return book
end
#--------------------------------------------------------------------------
# ○ アイテム分類
#--------------------------------------------------------------------------
def item_category(item, symbol)
(!item.name.empty? && item.name != "------------------" && omit_condition(item, symbol)) && !Book::OMIT_ITEM[symbol].include?(item.id) && $game_system.item_category(item) == symbol
end
#--------------------------------------------------------------------------
# ○ アイテム分類
#--------------------------------------------------------------------------
def omit_condition(item, symbol)
!(item.name =~ /^×.*/) && !(item.name =~ /^△.*/)
end
end
module Book
CHARA = Hash[ # 2の表示衣装は配列の場合 draw_costume_set で衣装を選定
# id => 0 リスト表記名 1 立ちグラフィック名 2 表示衣装 3 年齢 4 フルネーム 5 キャラid 6 3サイズの有無 7 キャラ進行度いくつで名前を明かすか 8 表示画像調整値 nilなら50
"n1" => {0=>"ルナリア",1=>"Lunaria",2=>[["cos01","story",2],["cos02","", 0]],3=>19,4=>"ルナリア・セレネス・ムーンリット",5=>"n1",6=>true,7=>1,
},
"n1_3" => {0=>"ルナリア(覚醒)",1=>"Lunaria",2=>"cos11b",3=>19,4=>"ルナリア・セレネス・ムーンリット",5=>"n1",6=>true,7=>1,
},
"n1_2" => {0=>"ルナリア(淫魔)",1=>"Lunaria",2=>"cos08b",3=>19,4=>"淫魔の女王ルナリア",5=>"n1b",6=>true,7=>1,
},
"n2" => {0=>"ソニア",1=>"Sonia",2=>"cos01",3=>36,4=>"ソニア・サンディール",5=>"n2",6=>true,7=>1,
},
"n2_2" => {0=>"ソニア(洗脳)",1=>"Sonia",2=>"cos05b",3=>36,4=>"ソニア・サンディール",5=>"n2",6=>true,7=>1,
},
"n3" => {0=>"マナ",1=>"Mana",2=>"cos01",3=>20,4=>"九条 愛",5=>"n3",6=>true,7=>1,
},
# 立ち絵サブキャラ------------------------------------------------------------------------------------------------------------------------------
"kp1" => {0=>Person::Name[1][0],1=>Person::Name[1][2],2=>"cos01",3=>28,4=>"マリアナ・アルテール",5=>"kp1",6=>true,7=>1,
},
"kp1_2" => {0=>"#{Person::Name[1][0]}()",1=>Person::Name[1][2],2=>"cos02",3=>28,4=>"マリアナ・メルテシア・サジタリーズ",5=>"kp1",6=>true,7=>1,
},
"kp1_3" => {0=>"#{Person::Name[1][0]}(淫魔)",1=>Person::Name[1][2],2=>"cos03b",3=>28,4=>"淫魔マリアナ",5=>"kp1b",6=>true,7=>1,
},
"kp2" => {0=>Person::Name[2][0],1=>Person::Name[2][2],2=>"cos01",3=>27,4=>"ディアナ・アルテミア・サジタリーズ",5=>"kp2",6=>true,7=>1,
},
"kp2_2" => {0=>"#{Person::Name[2][0]}(洗脳)",1=>Person::Name[2][2],2=>"cos03b",3=>27,4=>"ディアナ・アルテミア・サジタリーズ",5=>"kp2",6=>true,7=>1,
},
"kp3" => {0=>Person::Name[3][0],1=>Person::Name[3][2],2=>"cos01",3=>125,4=>"ミレイ・ニーレンベルギア",5=>"kp3",6=>true,7=>1,
},
"kp3_2" => {0=>"#{Person::Name[3][0]}(洗脳)",1=>Person::Name[3][2],2=>"cos03b",3=>125,4=>"ミレイ・ニーレンベルギア",5=>"kp3",6=>true,7=>1,
},
"kp4" => {0=>Person::Name[4][0],1=>Person::Name[4][2],2=>"cos01",3=>19,4=>"シャーリー・フェンネル",5=>"kp4",6=>true,7=>1,
},
"kp5" => {0=>Person::Name[5][0],1=>Person::Name[5][2],2=>"cos01",3=>19,4=>"エスティア・ユキ・エリンジウム",5=>"kp5",6=>true,7=>1,
},
"kp12" => {0=>Person::Name[12][0],1=>Person::Name[12][2],2=>"cos01",3=>41,4=>"九条 月羽",5=>"kp12",6=>true,7=>1,
},
"kp13" => {0=>Person::Name[13][0],1=>Person::Name[13][2],2=>"cos01",3=>27,4=>"フィリカ・レイン・ダリア",5=>"kp13",6=>true,7=>1,
},
"kp13_2" => {0=>"#{Person::Name[13][0]}(発情)",1=>Person::Name[13][2],2=>"cos02b",3=>27,4=>"フィリカ・レイン・ダリア",5=>"kp13",6=>true,7=>1,
},
"n5" => {0=>"アネモネ",1=>"Anemone",2=>"cos01",3=>"?",4=>"アネモネ",5=>"n5",6=>true,7=>1,
},
"n5_2" => {0=>"アネモネ()",1=>"Anemone",2=>[["cos02","item",312],["cos01","",0]],3=>"?",4=>"アネモネ",5=>"n5",6=>true,7=>1,
},
"kp14" => {0=>Person::Name[14][0],1=>Person::Name[14][2],2=>"cos01",3=>"?",4=>"シグン・レグエル・サジタリーズ",5=>"kp14",6=>false,7=>1,8=>20,
},
"kp31" => {0=>Person::Name[31][0],1=>Person::Name[31][2],2=>"cos01",3=>"?",4=>"レノ",5=>"kp31",6=>true,7=>2,
},
"kp31_2" => {0=>"#{Person::Name[31][0]}(真)",1=>Person::Name[31][2],2=>"cos01b",3=>"?",4=>"レノ",5=>"kp31",6=>true,7=>1,
},
"kp32" => {0=>Person::Name[32][0],1=>Person::Name[32][2],2=>"cos01",3=>"?",4=>"アスモリオス",5=>"kp32",6=>true,7=>1,
},
"kp32_2" => {0=>"#{Person::Name[32][0]}(真)",1=>Person::Name[32][2],2=>"cos01b",3=>"?",4=>"アスモリオス",5=>"kp32",6=>true,7=>1,8=>180,
},
"kp21" => {0=>"謎の男",1=>Person::Name[21][2],2=>"cos01",3=>"?",4=>"",5=>"kp21",6=>false,7=>1,8=>20,
},
"kp21_2" => {0=>Person::Name[21][0],1=>Person::Name[21][2],2=>"cos02",3=>"36",4=>"ライト・サンディール",5=>"kp21",6=>false,7=>1,8=>20,
},
"kp23" => {0=>Person::Name[23][0],1=>Person::Name[23][2],2=>"cos01",3=>"44",4=>"デルタ・アベラーゼ",5=>"kp23",6=>false,7=>1,
},
"kp42" => {0=>Person::Name[42][0],1=>Person::Name[42][2],2=>"cos01",3=>"?",4=>"マガツオロチ",5=>"kp42",6=>false,7=>1,
},
"kp42_2" => {0=>"#{Person::Name[42][0]}(真)",1=>Person::Name[42][2],2=>"cos01b",3=>"?",4=>"マガツオロチ",5=>"kp42b",6=>false,7=>1,8=>-10,
},
"kp41" => {0=>Person::Name[41][0],1=>Person::Name[41][2],2=>"cos01",3=>"?",4=>"ゼパール",5=>"kp41",6=>false,7=>1,
},
"kp51" => {0=>Person::Name[51][0],1=>Person::Name[51][2],2=>"cos01",3=>"?",4=>"ベルゼリアン",5=>"kp51",6=>false,7=>1,
},
"kp51_2" => {0=>"#{Person::Name[51][0]}(真)",1=>Person::Name[51][2],2=>"cos01b",3=>"?",4=>"ベルゼリアン",5=>"kp51b",6=>false,7=>1,8=>120,
},
# 立ち絵無し・サジタリーズ------------------------------------------------------------------------------------------------------------------------------
"kp6" => {0=>Person::Name[6][0],1=>Person::Name[6][2],2=>"cos01",3=>42,4=>"エレノア・リリエス・ムーンリット",5=>"kp6",6=>true,7=>1,8=>-70,
},
"kp11" => {0=>Person::Name[11][0],1=>Person::Name[11][2],2=>"cos01",3=>31,4=>"リリ・エクスコリネ",5=>"kp11",6=>true,7=>1,8=>-70,
},
"kp8" => {0=>Person::Name[8][0],1=>Person::Name[8][2],2=>"cos01",3=>34,4=>"ドレイク・ガーベニア",5=>"kp8",6=>false,7=>1,
},
"sb31" => {0=>Person::Sub[31][0],1=>Person::Sub[31][2],2=>"cos01",3=>38,4=>"ベルベット・ウォード",5=>"sb31",6=>true,7=>1,8=>0,
},
"kp9" => {0=>Person::Name[9][0],1=>Person::Name[9][2],2=>"cos01",3=>43,4=>"サルビア・フローネ・エルメラリア",5=>"kp9",6=>true,7=>1,8=>-70,
},
# 立ち絵無し・スノーフレーク家------------------------------------------------------------------------------------------------------------------------------
"sb32" => {0=>Person::Sub[32][0],1=>Person::Sub[32][2],2=>"cos01",3=>19,4=>"エリオラ・レティ・スノーフレーク",5=>"sb32",6=>true,7=>1,8=>-70,
},
"sb19" => {0=>Person::Sub[19][0],1=>Person::Sub[19][2],2=>"cos01",3=>44,4=>"エリューシア・ルミナ・スノーフレーク",5=>"sb19",6=>true,7=>1,8=>-70,
},
"sb17" => {0=>Person::Sub[17][0],1=>Person::Sub[17][2],2=>"cos01",3=>22,4=>"エリス・ティオーネ・スノーフレーク",5=>"sb17",6=>true,7=>1,8=>-70,
},
# 立ち絵無し・トキワ巫女------------------------------------------------------------------------------------------------------------------------------
"sb14" => {0=>Person::Sub[14][0],1=>Person::Sub[14][2],2=>"cos01",3=>22,4=>"大宮 春奈",5=>"sb14",6=>true,7=>1,8=>-70,
},
"sb42" => {0=>Person::Sub[42][0],1=>Person::Sub[42][2],2=>"cos01",3=>45,4=>"烏丸 百合",5=>"sb42",6=>true,7=>1,8=>-70,
},
"sb43" => {0=>Person::Sub[43][0],1=>Person::Sub[43][2],2=>"cos01",3=>21,4=>"烏丸 小花",5=>"sb43",6=>true,7=>1,8=>-70,
},
"sb41" => {0=>Person::Sub[41][0],1=>Person::Sub[41][2],2=>"cos01",3=>20,4=>"伏見 桜",5=>"sb41",6=>true,7=>1,8=>-70,
},
# 立ち絵無し・ダリア関連・その他------------------------------------------------------------------------------------------------------------------------------
"sb16" => {0=>Person::Sub[16][0],1=>Person::Sub[16][2],2=>"cos01",3=>18,4=>"ローザ・セルフィーユ",5=>"sb16",6=>true,7=>1,8=>-70,
},
"sb16_2" => {0=>"#{Person::Sub[16][0]}(発情)",1=>Person::Sub[16][2],2=>"cos02",3=>18,4=>"ローザ・セルフィーユ",5=>"sb16",6=>true,7=>1,8=>0,
},
"sb18" => {0=>Person::Sub[18][0],1=>Person::Sub[18][2],2=>"cos01",3=>19,4=>"フェリシア・カレンデュラ",5=>"sb18",6=>true,7=>1,8=>-70,
},
"sb33" => {0=>Person::Sub[33][0],1=>Person::Sub[33][2],2=>"cos01",3=>37,4=>"ベリア・マークス",5=>"sb33",6=>true,7=>1,8=>-70,
},
"kp7" => {0=>Person::Name[7][0],1=>Person::Name[7][2],2=>"cos01",3=>19,4=>"メリス・インペリアリス",5=>"kp7",6=>true,7=>1,8=>-70,
},
"sb38" => {0=>Person::Sub[38][0],1=>Person::Sub[38][2],2=>"cos01",3=>"?",4=>"マキ",5=>"sb38",6=>true,7=>1,8=>-70,
},
"sb35" => {0=>Person::Sub[35][0],1=>Person::Sub[35][2],2=>"cos01",3=>"?",4=>"ラナン",5=>"sb35",6=>true,7=>1,8=>0,
},
"kp44" => {0=>Person::Name[44][0],1=>Person::Name[44][2],2=>"cos01",3=>"?",4=>"玉藻前",5=>"kp44",6=>true,7=>1,8=>0,
},
"sb6" => {0=>Person::Sub[6][0],1=>Person::Sub[6][2],2=>"cos01",3=>"19",4=>"アークス・ダヴィディア",5=>"sb6",6=>false,7=>1,
},
"kp22" => {0=>Person::Name[22][0],1=>Person::Name[22][2],2=>"cos01",3=>48,4=>"ゴード・アルディシア",5=>"kp22",6=>false,7=>1,
},
"sb2" => {0=>Person::Sub[2][0],1=>Person::Sub[2][2],2=>"cos01",3=>"?",4=>"カマラ",5=>"sb2",6=>false,7=>1,
},
]
TEXT = Hash[
#28文字############################
#28文字########################
"n1" => {
1=>"魔法王国サジタリーズの宮廷魔術師。魔術学院を首席で卒業
した才女。高い魔力に驕らず努力も怠らない真面目な性格。
また、仲間想いで義理堅く困っている人を放っておけないなど
責任感も強い。炎の魔術を得意とし召喚も使いこなす実力者。
",
:true=>0,
},
"n1_3" => {
1=>"古の五大魔術師より受け継いだ魔力を覚醒させた\ent[1]。
その魔力は5つの宝玉にも匹敵する程で、魔神を遥かに
凌駕していた。魔神を倒した後、役目を終えた魔力は
\ent[1]の中から消え、元の状態へと戻った。
",
:true=>1,
},
"n1_2" => {
1=>"淫魔石を介して女王の魂を植え付けられた\ent[1]の姿。
\ekpt[31]の見立てでは\ent[1]の自我が消滅し本来の女王が
復活する予定だったがその目論見は外れ、女王の自我が消滅し
その力を継承した新たな淫魔の女王\ent[1]が誕生した。
",
:true=>0,
},
#28文字############################
#28文字########################
"n2" => {
1=>"行方不明の夫を探して旅をしている人妻戦士。戦闘では剣を
武器に戦い、二刀流も使いこなすパワーファイター。お人好し
な性格で、人を疑うよりは信じたいタイプ。身持ちが堅く
貞操観念が強いが、現在は熟れた身体を持て余している。
",
:true=>0,
},
"n2_2" => {
1=>"ダリア女王の頼みを受けゼパール教へと潜入したが、教祖の
術で洗脳されてしまった\ent[2]。洗脳後は教祖の色々な世話を
する係に任命され、毎日のように教祖と交わり
子宮に教祖の子種を大量に注がれていた。
",
:true=>0,
},
#28文字############################
#28文字########################
"n3" => {
1=>"サジタリーズの東に位置する島国トキワの巫女。感情を表に
出すのが苦手で、あまり表情が動くことはないが内には熱い
激情を秘めている。トキワにおける相当な実力者で
次期里長候補と言われている。
",
:true=>0,
},
#28文字############################
#28文字########################
"kp1" => {
1=>"サジタリーズの上級宮廷魔術師。城内のアイテム研究と開発の
責任者であり、他の魔術師たちを指揮してアイテム開発を
行っている。魔力はあまり高くなく、戦闘では支援担当。
エッチが大好きで城内の兵士をたまにつまみ食いしている。
",
:true=>0,
},
"kp1_2" => {
1=>"サジタリーズの上級宮廷魔術師だが、実は前国王の妾腹で、
女王である\ekpt[2]の姉にあたる。娼婦だった母親と
その客だった前国王との間に生まれた。母親と共に娼婦として
働いた経験があり、母娘丼プレイは当時大人気だった。
",
:true=>1,
},
"kp1_3" => {
1=>"\ent[1]によって淫魔石を触媒にサキュバスへと変えられて
しまった\ekpt[1]の姿。本来ならば例え淫魔の女王と言えど、
淫魔石を触媒にしても人間をサキュバスに変えるなど出来ない
のだが……
",
:true=>0,
},
#28文字############################
#28文字########################
"kp2" => {
1=>"魔法王国サジタリーズを治める女王。国民からの信頼も厚く
城下町には彼女個人の公式ファンクラブが存在する程である。
高い魔力と魔術の才に恵まれ、王女時代 王族きっての
天才魔術師と呼ばれていた。相当な爆乳の持ち主。
",
:true=>0,
},
"kp2_2" => {
1=>"淫堕の洗脳鬼\ekpt[41]の傀儡種の術によって洗脳され
身も心も\ekpt[41]の虜となってしまった\ekpt[2]の姿。
洗脳されてからは毎日のように\ekpt[41]に奉仕し続け、
子種を250回以上も中出しされている。
",
:true=>1,
},
#28文字############################
#28文字########################
"kp3" => {
1=>"先々代の王の時代から魔法王国に仕えている宮廷魔術師団の
団長にしてハーフエルフ。\ekpt[2]の魔術の師であると同時に
よき友であり相談役でもある。エルフ由来の高い魔力をもち
苦手属性のない一流の魔術師である。
",
:true=>0,
},
"kp3_2" => {
1=>"淫堕の洗脳鬼\ekpt[41]の傀儡種の術によって洗脳され
身も心も\ekpt[41]の虜となってしまった\ekpt[3]の姿。
洗脳されてからは毎日のように\ekpt[41]に奉仕し続け、
子種を250回以上も中出しされている。
",
:true=>1,
},
#28文字############################
#28文字########################
"kp4" => {
1=>"\ent[1]の魔術学院時代の同級生で卒業後一緒に宮廷魔術師と
なった活発な女性。魔力はあまり高くないがそれを補う体力・
筋力・敏捷性を持ち、それを生かした格闘魔術を得意とする。
周りの女性より胸が大きくないのを気にしている。
",
:true=>0,
},
"kp5" => {
1=>"\ent[1]の魔術学院時代の同級生で卒業後一緒に宮廷魔術師と
なったおっとりした女性。\ent[1]に負けない巨乳の持ち主で
魔力も高く、回復魔術を得意としている。
",
2=>"\ent[1]の魔術学院時代の同級生で卒業後一緒に宮廷魔術師と
なったおっとりした女性。\ent[1]に負けない巨乳の持ち主で
魔力も高く、回復魔術を得意としている。母親が東の島国
トキワの出身で、本人もそこで生まれ育った。
",
:true=>0,
},
#28文字############################
#28文字########################
"kp12" => {
1=>"トキワの九条の里の長にして5人の里長の筆頭を務める巫女。
高い法力を持ち戦闘能力も巫女の中では随一。\ent[3]の叔母に
あたり、母親を早くに亡くしている彼女の親代わりでもある。
既婚者で息子が一人いる。
",
:true=>0,
},
"kp13" => {
1=>"武を重んじる大国ダリア王国の女王。常に気高く凛としており
騎士王の異名を持つ。その剣技は王国最強で、王国騎士団の
団長ですら敵わない程。曲がった事が許せない性格で、国の
腐敗を正してきた為それを快く思わない者もいる。
",
:true=>0,
},
"kp13_2" => {
1=>"淫魔の女王に発情の術を掛けられ\ekpt[23]の肉奴隷へと堕ちた
\ekpt[13]の姿。その強靭な精神力で抵抗し続けたが最後には
自ら\ekpt[23]のチンポをおねだりするようになった。
",
:true=>1,
},
#28文字############################
#28文字########################
"n5" => {
1=>"\ent[1]が神殿で出会ったスノーレディ。魔物でありながら
戦いを好まない心優しい性格。人間の文化や食べ物に興味が
あり、特に最近はトキワが気になっている。エッチな事にも
興味があり、人間のそういった書物を密かに読んでいる。
",
:true=>0,
},
"n5_2" => {
1=>"\ent[5]の命を救う為、\ent[1]は彼女を強制契約で
自分の\esmとした。\ent[1]はその事を申し訳なく
思っているが、当の本人は人間の住む町に入れる事を
とても喜んでおり\ent[1]に感謝している。
",
:true=>0,
},
"kp14" => {
1=>"かつて魔神を討伐した五大魔術師のリーダーにして。魔法王国
サジタリーズの初代国王。『英雄、色を好む』を体現している
ような人物で、魔神討伐後は共に旅をしていた女性全員を王妃
として娶ったという。
",
:true=>1,
},
#28文字############################
#28文字########################
"kp31" => {
1=>"\ent[1]の後を密かにつけている淫魔(サキュバス)。
彼女に関する詳しい事はわかっていない…
",
2=>"\ent[1]の後を密かにつけている淫魔(サキュバス)。
その目的はどうやら淫魔の女王の復活のようだが……
淫魔の名に違わずエッチが好きで『セックスするならお腹の
出た脂ぎった親父か屈強な戦士に限る』とは彼女の弁。
",
:true=>0,
},
#28文字############################
#28文字########################
"kp31_2" => {
1=>"淫魔\ekpt[31]の真の姿。本気を出した\ekpt[31]は翼が二枚増え顔に紋様
が浮かび上がり、魔力が劇的に跳ね上がる。他の淫魔とは違う
その特異性、更にはフタナリ化の能力を有している事から
\ekpt[32]に気に入られ、ずっと彼女の腹心を務めていた。
",
:true=>1,
},
"kp32" => {
1=>"魔神の力により復活した夜を統べる淫魔の女王。かつて
ダリアの女王により討伐されてしまった所を\ekpt[31]の能力で
魂を保護されそのままの状態で悠久の時を過ごしていた。
復活後は魔神に対して恩義を感じそのまま彼の配下となった。
",
:true=>1,
},
"kp32_2" => {
1=>"淫魔の女王\ekpt[32]の真の姿。その正体は淫魔と天使の
ハーフにして輝く光の翼と漆黒の闇の翼の二つを併せ持つ
ハーフエンジェル。その力は強大で光と闇に対する耐性を持ち
両属性の上級魔術を使いこなす。
",
:true=>1,
},
#28文字############################
#28文字########################
"kp21" => {
1=>"\ent[1]達の魔力源を奪った謎の男。その後\ent[1]の後を
つけ狙っているようだが……
",
2=>"\ent[1]達の魔力源を奪った謎の男。その後\ent[1]の後を
つけ狙っていたが、彼が魔神に意識を乗っ取られた
\ent[2]の行方不明の夫の\ekpt[21]である事が判明する。
",
:true=>2,
},
"kp21_2" => {
1=>"行方不明になっていた\ent[2]の夫。とある遺跡で魔神に意識を
乗っ取られ、その後 魔神の意のままに操られていた。
魔神から解放された後も長い間眠り続けていたが魔神討伐後、
無事に意識を取り戻し\ent[2]と二人で家へと帰った。
",
:true=>1,
},
"kp23" => {
1=>"ダリア王国の大臣。女王の\ekpt[13]に対して執着しており、
彼女を自分の物にする為なら、怪しい教団の設立に裏で手を
回す等手段を選ばない下衆。
背が低い事を少しでも誤魔化す為、上げ底の靴を履いている。
",
2=>"ダリア王国の大臣。女王の\ekpt[13]に対して執着しており、
彼女を自分の物にする為なら、怪しい教団の設立に裏で手を
回したり淫魔の取引にも簡単に応じる等手段を選ばない下衆。
背が低い事を少しでも誤魔化す為、上げ底の靴を履いている。
",
:true=>2,
},
#28文字############################
#28文字########################
"kp42" => {
1=>"トキワに封印されていた邪龍と呼ばれる伝説の大妖怪。かつて
偉大な九条の巫女がなんとか封印したと伝えられており、
その力は現代の巫女では全く歯が立たない程 強大である。
封印した九条の人間に対し恨みを持っている。
",
:true=>1,
},
"kp42_2" => {
1=>"伝説の大妖怪、邪龍の真の姿。正体は巨大な三つ首の大蛇で
あり、また本質は龍でもある。右目の傷はかつて自分を封印
した九条の巫女に付けられたもので、今でもその恨みは
傷と共に残っている。
",
:true=>1,
},
"kp41" => {
1=>"淫堕の洗脳鬼の異名を持つ魔物。かつて\ekpt[2]が王女時代
\ekpt[3]と共に討伐したがその後 魂のみの状態で彷徨い
自分と波長の合う\esbt[2]という男に憑依し生き永らえた。
復活後は魔神の配下となり\ekpt[2]と\ekpt[3]を洗脳した。
",
:true=>1,
},
"kp51" => {
1=>"遥か1000年の昔、世界を支配しようとした伝説の魔神。
五大魔術師に敗れた後も消滅することなく悠久の時を経て
徐々に力を取り戻し、遂には5つの宝玉の力を利用し現世へと
復活を果たした。
",
:true=>1,
},
"kp51_2" => {
1=>"伝説の魔神の真の姿。絶望と支配を司り、3つの邪眼を
その身に宿した悪の化身。黒き闇の翼から放たれる攻撃と
邪眼による睨み、そして闇を纏った拳による攻撃は強力無比で
生半可な防御力では即死を免れない。
",
:true=>1,
},
#28文字############################
#28文字########################
"kp6" => {
1=>"\ent[1]の母親でサジタリーズの元宮廷魔術師。
現在は専業主婦。夫は元王国騎士団団長。
",
:true=>0,
},
"kp11" => {
1=>"\ent[1]達の先輩にあたる宮廷魔術師。しっかりしていて
面倒見のいい性格。付き合っている彼と近々結婚する予定。
",
:true=>0,
},
"kp8" => {
1=>"サジタリーズの王国騎士団団長。真面目で誠実であり
剣の腕は一流。
",
:true=>0,
},
#28文字############################
#28文字########################
"sb31" => {
1=>"サジタリーズの女性大臣の一人。眼鏡をかけた知的な女性。
恋人募集中の38歳独身。お酒が好きで、最近は
\edb[i,123]にハマっている。
",
:true=>0,
},
"kp9" => {
1=>"王立魔術学院の召喚科の講師。\ent[1]の召喚術の師。
既婚者であり、夫は同じ魔術学院の魔術講師の一人。
\esbt[31]とは少し歳が離れている(禁句)が、一緒に
お酒を飲む飲み友達で仲がいい。
",
:true=>1,
},
"sb32" => {
1=>"\ent[1]と同期の宮廷魔術師の一人。自称\ent[1]の
ライバル。氷結という二つ名を持っており、その名の通り
氷属性の魔術を得意とする。
",
2=>"\ent[1]と同期の宮廷魔術師の一人。自称\ent[1]の
ライバル。氷結という二つ名を持っており、その名の通り
氷属性の魔術を得意とする。実はダリアの貴族でお嬢様。
母親はサジタリーズの元宮廷魔術師で、髪の色は母親譲り。
",
:true=>0,
},
#28文字############################
#28文字########################
"sb19" => {
1=>"\esbt[32]の母親でサジタリーズの元宮廷魔術師。\ent[1]の
母親である\ekpt[6]の先輩にあたり、二人はよく一緒に
コンビを組んで任務にあたっていた。愛称は\esbt[20]。
",
:true=>0,
},
"sb17" => {
1=>"\esbt[32]の姉でダリアの女王親衛隊である\ekw[4]の
隊長。剣の腕は隊で一番であり、統率力にも優れている。
口には出さないが実家を出て行った妹の\esbt[32]を
心配している。
",
:true=>0,
},
#28文字############################
#28文字########################
"sb14" => {
1=>"トキワの巫女の一人で\ekpt[12]の側近を務める実力者。
あまりよそ者を信用せず、\ent[1]に対しても警戒心を
抱いている。
",
:true=>0,
},
"sb42" => {
1=>"トキワの巫女の一人で\esbt[43]の母親。巫女の中では年長者の
部類に入るが、綺麗で色っぽい。巫女の中では胸が
\ekpt[12]に次いで大きい。
",
:true=>0,
},
"sb43" => {
1=>"トキワの巫女の一人で\esbt[42]の娘。\ent[3]とは喧嘩友達
のような関係で、事ある毎に突っかかってくる。歳は\ent[3]の
一個上だが、\ent[3]より胸が小さい事を気にしている。
母親の遺伝子的にいつか胸が大きくなる事を信じている。
",
:true=>0,
},
"sb41" => {
1=>"トキワの巫女の一人。趣味はオシャレとコイバナ。
一度、巫女袴を可愛く改造しようとしたがこっぴどく
怒られたため、大人しく普通の巫女袴を着ている。
",
:true=>0,
},
#28文字############################
#28文字########################
"sb16" => {
1=>"ダリアの女王である\ekpt[13]専属のメイド。控えめで
礼儀正しく、その容姿から城内でもファンが多い。
",
:true=>0,
},
"sb16_2" => {
1=>"淫魔の発情の術で\ekpt[23]の肉奴隷へと堕ちた\esbt[16]の姿。
\ekpt[13]と違い最初に犯された段階でチンポに即堕ちして
いた。即堕ち後は\ekpt[23]のチンポに進んで奉仕するなど、
従順なメス奴隷となっていた。
",
:true=>1,
},
"sb18" => {
1=>"ダリアの女王親衛隊である\ekw[4]の副隊長。
平民出身ながら若くして実力だけで親衛隊の副隊長になった
実力者。
",
2=>"ダリアの女王親衛隊である\ekw[4]の副隊長。
平民出身ながら若くして実力だけで親衛隊の副隊長になった
実力者。エッチな事が好きで、学生時代 夜のお店で
エッチな踊り子として働いていた事がある。
",
:true=>2,
},
#28文字############################
#28文字########################
"sb33" => {
1=>"ラグラスで娼館を営む女性。かつては自らも娼婦として
働いていた過去を持つ。酒場で働いている見込みのありそうな
女性に声を掛け娼婦としてスカウトしている。
",
:true=>0,
},
"kp7" => {
1=>"世界を旅しながら救われない魂を浄化して回っている
シスター。自己犠牲の精神が強く、他人への警戒心が少し
薄い所がある。幼い外見に似合わず胸がデカい。
",
:true=>1,
},
#28文字############################
#28文字########################
"sb38" => {
1=>"ショートカットのスノーレディ。同じスノーレディである
\ent[5]とは親友であり、エッチな話で盛り上がる
エロバナ仲間。\ent[5]が粛清される原因を作り、且つその
命を救った\ent[1]に対しては複雑な感情を抱いている。
",
:true=>1,
},
"sb35" => {
1=>"スノーレディの上位種にして群れを統べる氷魔の女王
スノークイーン。人前に姿を現す事は殆どなく、魔物学者の
間でもその存在を信じている者は少ない。
",
:true=>1,
},
"kp44" => {
1=>"トキワの殺生石に封印されている大妖怪、九尾の狐。何らか
の影響で封印が弱まり一度は外に出たが\ent[3]により再び
封印された。かつてはその美貌でトキワの民を惑わし
多くの命を奪ったと伝えられている。
",
:true=>1,
},
#28文字############################
#28文字########################
"sb6" => {
1=>"\ent[1]の学院時代の同期で、彼女に想いを寄せていた闇魔術
師。当時、何度も彼女に召喚術バトルという名のアタックを
かけていたが、一度も勝利した事はない。卒業後は一人 館に
籠り、\ent[1]打倒の為 高位魔獣の召喚の研究をしていた。
",
:true=>0,
},
"kp22" => {
1=>"ダリアを拠点に活動している貿易商人。一代で今の財を築き
上げたやり手。王国とも取引があり、本人の人柄も誠実で
紳士的。かなりの好色だが嫌がる女性には手を出さない。
",
2=>"ダリアを拠点に活動している貿易商人。一代で今の財を築き
上げたやり手。王国とも取引があり、本人の人柄も誠実で
紳士的。遠い先祖が淫魔と結ばれ子をなした為、その子供の
子孫は代々異性を虜にする性的魅力と絶倫さを持っている。
",
:true=>0,
},
#28文字############################
#28文字########################
"sb2" => {
1=>"\ekpt[41]教という怪しい宗教の教祖。裏では何か
いかがわしい事をしているという噂だが……
",
2=>"\ekpt[41]教という怪しい宗教の教祖。信者の女性を洗脳し
毎日のように犯していた。\ent[2]も犠牲者の一人。
",
3=>"\ekpt[41]教という怪しい宗教の教祖。信者の女性を洗脳し
毎日のように犯していた。\ent[2]も犠牲者の一人。その正体は
\ekpt[41]という名の魔物で、その魔物の魂が\esbt[2]という
人間に憑依した姿だった。
",
:true=>3,
},
#28文字############################
#28文字########################
]
TRUE_ITEM = Hash[
:item => [48, 199, *(302..309), *(326..328), *(336..340)],
:key_item => [215, 217, *(225..228), *(232..235), 300, 301, 315, 343, 349, 350],
:weapon => [*(13..19), *(25..39), *(45..59), *(63..79), *(100..110),],
:armor => [*(8..19), *(30..34), 43, 44, *(46..49), *(56..63), *(132..139), *(143..159), *(163..169), *(173..179), *(183..194), *(199..214), *(219..234), *(239..254), *(301..309)],
:rune => [*(119..121), *(340..368)],
:skill_book => [55, 90, 256, 259, 346, 347],
:none => [],
]
OMIT_ITEM = Hash[
:item => [],
:key_item => [219, 232],
:weapon => [*(81..89)],
:armor => [328],
:rune => [],
:skill_book => [96],
:none => [],
]
end