1654 lines
No EOL
53 KiB
Ruby
1654 lines
No EOL
53 KiB
Ruby
=begin
|
||
RGSS3
|
||
|
||
★ 冒険メモ ★
|
||
|
||
現在のあらすじなど、任意の文章を表示する項目をメニューに追加します。
|
||
サブイベントの管理もできます。
|
||
|
||
● 仕様 ●==========================================================
|
||
イベントでのメッセージ表示と同様の制御文字が使用可能です。
|
||
使用する場合は\マークを2つ続けて入力するようにしてください。
|
||
【例】
|
||
\N[2] => \\N[2]
|
||
\C[1] => \\C[1]
|
||
====================================================================
|
||
|
||
※ RPGツクールVX サンプルゲーム「レクトールと黒獅子の紋章」にて
|
||
使用されているスクリプトを参考にしています。
|
||
|
||
ver1.00
|
||
|
||
Last Update : 2012/03/18
|
||
03/18 : 新規
|
||
|
||
ろかん http://kaisou-ryouiki.sakura.ne.jp/
|
||
=end
|
||
|
||
#===========================================
|
||
# 設定箇所
|
||
#===========================================
|
||
module STORYEVENT
|
||
# メニューに表示される項目名
|
||
STORYEVENT_MENU_TEXT = "冒険メモ"
|
||
|
||
# 項目が表示されるメニューインデックス(一番上が0)
|
||
STORYEVENT_MENU_INDEX = 5
|
||
|
||
# 項目が有効になるスイッチ番号
|
||
STORYEVENT_ENABLE_SID = 5
|
||
|
||
#------------------------------------------------------------------------------
|
||
# あらすじに表示する見出し
|
||
STORYEVENT_CAPTION = "ストーリー"
|
||
|
||
# あらすじを管理する変数番号
|
||
STORYEVENT_VID = 18
|
||
|
||
# あらすじの設定
|
||
#【形式】
|
||
# ① => [②, ③],
|
||
# ① STORYEVENT_VIDに格納されている値(数値)
|
||
# ② 進行中ストーリーの名前(文字列)
|
||
# ③ 進行中ストーリーの詳細(文字列)
|
||
STORYEVENT_CONTENTS = {
|
||
|
||
1 => ["【エピソード0】チュートリアル",
|
||
"\\}別世界へと転移してきた謎の青年…彼はかつての戦闘力を失っていた。
|
||
まずはこの世界での戦いに慣れるべく訓練する必要がありそうだ。"],
|
||
|
||
20 => ["【エピソード1】グルームの少年",
|
||
"\\}フレイア大神殿で修道士を勤める\\N[1]にはもう一つの顔があった…
|
||
それは教皇に仇なす背教者に神罰を与える役目だ。
|
||
全ては教皇の為…心の中でそう誓い、今日も神殿の中で何かを思う。"],
|
||
|
||
24 => ["【エピソード1】グルームの少年",
|
||
"\\}次の任務が来るまではいつもどおりである…
|
||
神殿からの雑用を片付ける為にメマ神官の元へ向かおう。"],
|
||
|
||
26 => ["【エピソード1】グルームの少年",
|
||
"\\}使い魔を通して次の任務が与えられる…いつものように懺悔室へ向かおう。"],
|
||
|
||
27 => ["【エピソード1】グルームの少年",
|
||
"\\}受け取った指令書には次の任務が書かれている…自室で開けてみよう。"],
|
||
|
||
30 => ["【エピソード1】グルームの少年",
|
||
"\\}任務の集合場所はスードリ草原…そこで待っている依頼主の所へ行こう!"],
|
||
|
||
32 => ["【エピソード2】大神官の依頼",
|
||
"\\}依頼主はなんと大神官エルニンだった、
|
||
秘密裏に彼女の護衛を引き受けた\\N[1]はスードリ草原の奥地へと足を進める。"],
|
||
|
||
41 => ["【エピソード2】大神官の依頼",
|
||
"\\}教皇の姿を見に大聖堂へ急ごう。"],
|
||
|
||
50 => ["【エピソード2】大神官の依頼",
|
||
"\\}初めて見た教皇の姿は、神殿の人々に衝撃を与えた…
|
||
彼女は神罰に心を痛めている?では自分がやっていたことは誰のためなのか?"],
|
||
|
||
55 => ["【エピソード2】大神官の依頼",
|
||
"\\}再び大神官からの護衛任務を与えられた\\N[1]は、砂漠蟻の巣へと向かうことに…
|
||
そこには前回と同じく従者ルーの姿があった。"],
|
||
|
||
80 => ["【エピソード3】神罰と覚悟",
|
||
"\\}人の命を奪う任務ではなく、護る任務をやり遂げた\\N[1]…
|
||
彼の心の中で何かが、少しずつ揺らぎ始めていた。"],
|
||
|
||
86 => ["【エピソード3】神罰と覚悟",
|
||
"\\}懺悔室の指令で\\N[1]に与えられた物は神罰用の暗器だった…
|
||
ターゲットはバレルゼンのホテルにいる人物…
|
||
久しぶりにこの手を血で染める時が来たのだった。"],
|
||
|
||
95 => ["【エピソード3】神罰と覚悟",
|
||
"\\}\\N[1]の中で少しずつ何かが変わっていることに気づいたビダール…
|
||
しかし次に牙の任務に失敗した時に、自分等の居場所はあるのか?
|
||
尻元に突き立てられた刃は何も答えない。"],
|
||
|
||
96 => ["【エピソード3】神罰と覚悟",
|
||
"\\}部屋に戻って休もう…"],
|
||
|
||
100 => ["【エピソード3】神罰と覚悟",
|
||
"\\}懺悔室で依頼主が待っている…"],
|
||
|
||
102 => ["【エピソード4】覚醒",
|
||
"\\}次の失敗は許されない…そんな\\N[1]の前に現れたのはエルニン大神官だった。
|
||
3度目の護衛任務の為に氷結の洞窟へと向かうことになるが…
|
||
心の何処かで安堵している自分がいた。"],
|
||
|
||
111 => ["【エピソード4】覚醒",
|
||
"\\}聖都が魔族の襲撃を受けている!
|
||
エルニンとルーを神殿まで護衛しようとするが、とある魔族がそれを狙っていた。"],
|
||
|
||
117 => ["【エピソード5】最後の巡礼",
|
||
"\\}教皇は最後の巡礼の同行者として、再び\\N[1]に護衛を申しつけた。
|
||
最後の巡礼地…そこは熱気漂うムジョルニア火山であった。"],
|
||
|
||
122 => ["【エピソード6】ベラドンナの香り",
|
||
"\\}全ての巡礼は終わり、教皇から別れを告げられた\\N[1]…
|
||
出来ればこの先も彼女の為に戦いたい…しかしそれは叶わぬ夢なのだろう。
|
||
そして牙からの指令を静かに待っていたのだった。"],
|
||
|
||
125 => ["【エピソード6】ベラドンナの香り",
|
||
"\\}牙からの久しぶりの指令は、神殿内にいる重要人物への神罰だった…
|
||
そして牙から一つの条件が告げられる…それが達成された暁には
|
||
暗殺者からの除名が許可されるという条件であった。"],
|
||
|
||
127 => ["【エピソード7】再び舞う蝶",
|
||
"\\}記憶喪失の青年ノビッサは、蝶の羽という組織に救助されていた!
|
||
今回の依頼人は聖都歓楽街にある宝石商人…
|
||
果たしてそこに記憶を取り戻す鍵はあるのだろうか?"],
|
||
|
||
130 => ["【エピソード7】再び舞う蝶",
|
||
"\\}依頼人はフレイア神殿のジェマ大神官だった!
|
||
彼からの依頼は無実の罪で幽閉された少年の救出であった。
|
||
月に一度…神殿に立ち入ることができる日…決行はその時だ。"],
|
||
|
||
137 => ["【エピソード7】再び舞う蝶",
|
||
"\\}聖都の現状を聞かされた\\N[1]は、再び戦うことを決意した!
|
||
まずは神殿から脱出することを考えよう。"],
|
||
|
||
142 => ["【エピソード8】その牙は何の為に",
|
||
"\\}自分を陥れたのはビルドルフで、その魔手は神殿や教皇にまで
|
||
及ぼうとしていた。この命は教皇の為に…
|
||
\\N[1]の中に、真に戦う意味が芽生えようとしていた。"],
|
||
|
||
144 => ["【エピソード8】その牙は何の為に",
|
||
"\\}蝶の羽のアルケーから頼まれごとを受けた\\N[1]…
|
||
バレルゼンの東部にあるという貧民街に用があるそうだが…"],
|
||
|
||
152 => ["【エピソード9】決戦!フレイア大神殿",
|
||
"\\}ビルドルフは偽の教皇を使い教団を我が物にしようと企んでいた!
|
||
本物の教皇が地下の最奥に囚われていると知った
|
||
蝶の羽は、救出の準備を静かに進めていたのだった。"],
|
||
|
||
155 => ["【エピソード9】決戦!フレイア大神殿",
|
||
"\\}反撃の準備は整った!\\N[1]達は神殿の最下層へと
|
||
足を踏み入れる。
|
||
そこで一行が見た物とは…"],
|
||
|
||
165 => ["【エピソード10】魔王受肉",
|
||
"\\}教皇は無事救出できた…しかしその代償として、結界の要でもある
|
||
アウルの心臓を奪われてしまった。
|
||
魔族たちは心臓の力で、とあるモノの復活を目論んでいたようだ。"],
|
||
|
||
166 => ["【エピソード10】魔王受肉",
|
||
"\\}奪われた心臓と魔族の隠れ家が判明した!
|
||
まずはジェマ大神官の部屋へ行こう。"],
|
||
|
||
167 => ["【エピソード10】魔王受肉",
|
||
"\\}奪われた心臓の行方と魔族の隠れ家が判明した!
|
||
\\N[1]は最後の戦いの為に、大陸南部にある名無しの島へと足を運ぶ。"],
|
||
|
||
200 => ["ゲームクリア",
|
||
"\\}聖都や大陸ではまだまだ未解決の事件が残っている…
|
||
それらを解決してみよう。"],
|
||
|
||
201 => ["【エピソードX】求道者の野望",
|
||
"\\}ビダールからの救援信号を受信した!
|
||
西にあるヴァルフレイア神殿跡の地下…そこで彼らを待つモノとは。"],
|
||
|
||
500 => ["真ゲームクリア",
|
||
"to be continued"],
|
||
}
|
||
#------------------------------------------------------------------------------
|
||
# サブイベントリストに表示する見出し
|
||
SUBEVENT_CAPTION = "クエスト一覧"
|
||
|
||
# サブイベント達成率部分に表示する項目名
|
||
SUBEVENT_CLEARTEXT = "出現率"
|
||
|
||
# サブイベント詳細画面で使用されるウィンドウスキン名
|
||
SUBEVENT_SKIN = "Window"
|
||
SUBEVENT_SKINb = "Windowb"
|
||
|
||
# クリアしたサブイベントに表示する文字列
|
||
# サブイベント詳細画面に表示されます
|
||
SUBEVENT_CLEARED_TEXT = "- クリア -"
|
||
|
||
# クリアしたサブイベントに表示するアイコンID
|
||
# サブイベントリストに表示されます
|
||
SUBEVENT_CLEARED_ICON = 539
|
||
|
||
# サブイベントスタートと見做す変数値
|
||
# サブイベントに対応する変数に、ここでの設定値以上の値が格納されている場合、
|
||
# イベント実行中と判断され、サブイベントリストに表示されるようになります
|
||
SUBEVENT_STARTED = 1
|
||
|
||
# サブイベントクリアと見做す変数値
|
||
# サブイベントに対応する変数に、ここでの設定値以上の値が格納されている場合、
|
||
# イベントクリアと判断され、サブイベントリストの表記がクリア時のものになります
|
||
SUBEVENT_CLEARED = 99
|
||
|
||
# サブイベントの概要設定
|
||
#【形式】
|
||
# ① => [②, ③, ④],
|
||
# ① サブイベントに対応する変数番号(数値)
|
||
# ② 進行中サブイベントの名前。サブイベントリストに表示(文字列)
|
||
# ③ サブイベント発生中の文章。サブイベント詳細画面に表示(文字列) ※
|
||
# ④ サブイベントクリア後の文章。サブイベント詳細画面に表示(文字列)
|
||
#
|
||
# ※ SUBEVENT_CONTENTSに有効な設定がある場合はそちらが優先されます。
|
||
SUBEVENT_TITLES = {
|
||
|
||
#101 => ["大統領に手紙を","",""],
|
||
102 => ["海岸のゴミ拾い","",""],
|
||
103 => ["別荘売ります","",""],
|
||
104 => ["荷馬車護衛求む","",""],
|
||
105 => ["自惚れ者を分からせろ","",""],
|
||
106 => ["野良ガーディアン討伐","",""],
|
||
107 => ["ワルハラの花の採取","",""],
|
||
108 => ["傭兵救出","",""],
|
||
109 => ["求・化粧品","",""],
|
||
110 => ["フレイア一番くじ","",""],
|
||
111 => ["エユタヤーのトムヤンクン","",""],
|
||
112 => ["求・雇用主","",""],
|
||
113 => ["聖書を届けて","",""],
|
||
114 => ["キッスプラント駆除","",""],
|
||
115 => ["求・グリフォンの卵","",""],
|
||
116 => ["求・フェーニの下着×3","",""],
|
||
117 => ["求・状態異常付与カード","",""],
|
||
118 => ["求・鉄鉱石5つ","",""],
|
||
119 => ["太陽のレース","",""],
|
||
120 => ["鳥人間をやっつけろ","",""],
|
||
121 => ["ヴァルキリーの試練","",""],
|
||
122 => ["牙の最後の試練","",""],
|
||
123 => ["魔法使い救出","",""],
|
||
124 => ["違法店への潜入捜査","",""],
|
||
125 => ["奴隷商人を追え","",""],
|
||
126 => ["画家の悩み","",""],
|
||
127 => ["脱走者を追え","",""],
|
||
128 => ["求・5色のハーブ","",""],
|
||
129 => ["考古学者と遺跡の巨人伝","",""],
|
||
130 => ["動く島の謎","",""],
|
||
131 => ["不老不死の水","",""],
|
||
132 => ["ババヤンの魔術","",""],
|
||
133 => ["青いゼリンの謎","",""],
|
||
134 => ["暴食の魔獣","",""],
|
||
135 => ["地下からの脅威","",""],
|
||
136 => ["鳥人間の女王","",""],
|
||
137 => ["動き出した残党たち","",""],
|
||
138 => ["ムジョルニア火山の秘密","",""],
|
||
139 => ["限界突破","",""],
|
||
140 => ["親の仇","",""],
|
||
141 => ["生命研究所跡探索","",""],
|
||
142 => ["聖十字隊からの挑戦","",""],
|
||
143 => ["神器作成の文献","",""],
|
||
144 => ["闘技場の鬼","",""],
|
||
145 => ["賢者バルムンク","",""],
|
||
146 => ["聖職者育成ツアーを救え!","",""],
|
||
147 => ["忘れられた島","",""],
|
||
148 => ["現れた幽霊船","",""],
|
||
149 => ["修道士童貞争奪戦","",""],
|
||
150 => ["教皇とルーの覚めない夢","",""],
|
||
151 => ["鍵を開けてください","",""],
|
||
152 => ["ゴブリンの巣","",""],
|
||
153 => ["聖都式逮捕術","",""],
|
||
154 => ["求道者の野望","",""],
|
||
|
||
|
||
}
|
||
# サブイベントの詳細設定
|
||
#【形式】
|
||
# ① => [[②, ③], [②, ③], [②, ③],......],
|
||
# ① サブイベントに対応する変数番号(数値)
|
||
# ② ①に格納されている値(数値)
|
||
# ③ ②の条件を満たす際のサブイベント発生中の文章。サブイベント詳細画面に表示(文字列)
|
||
SUBEVENT_CONTENTS = {
|
||
|
||
#101 => [
|
||
#[1, "【場所】 コモドカジノ跡
|
||
|
||
#閉鎖したコモドカジノを冒険者ギルドとして再利
|
||
#用する事にした、受付には話を通してある、是非
|
||
#とも一度訪れてくれ。"],
|
||
#],
|
||
102 => [
|
||
[1, " ティアーズビーチ
|
||
フレイア大神殿・階段前の女神官
|
||
1000ジェニス
|
||
|
||
海岸に流れ着いたゴミの掃除を
|
||
してくれる人募集
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]2\\C[0]"],
|
||
],
|
||
103 => [
|
||
[1, " ラ・フェール歓楽街
|
||
ラ・フェール不動産
|
||
拠点地
|
||
|
||
北西の空き物件売ります!
|
||
|
||
…というか誰か買って!
|
||
お願いします!
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
104 => [
|
||
[1, " 行商海道
|
||
聖都南門前の商人
|
||
歓楽街通行許可証
|
||
|
||
最近、うちの荷馬車が盗賊に
|
||
襲われて困っているので
|
||
腕利きの用心棒がほしい。
|
||
|
||
腕に覚えのあるものは
|
||
依頼人の所まで!
|
||
|
||
|
||
\\C[1]9\\C[0]"],
|
||
],
|
||
105 => [
|
||
[1, " ベインスゥ・酒場
|
||
?
|
||
特別経験値5000
|
||
|
||
自信過剰な知り合いを
|
||
分からせてくれる腕利きの男性
|
||
探してます。
|
||
|
||
興味のある方は
|
||
ベインスゥの酒場まで。
|
||
|
||
|
||
\\C[1]28\\C[0]"],
|
||
],
|
||
106 => [
|
||
[1, " ムジョルニア火山03
|
||
ベインスゥ・酒場
|
||
5000ジェニス
|
||
|
||
ムジョルニア火山03エリアで
|
||
野良のガーディアンが暴れていて
|
||
手に負えない!
|
||
|
||
討伐してくれる者を探している。
|
||
|
||
|
||
|
||
\\C[1]25\\C[0]"],
|
||
],
|
||
107 => [
|
||
[1, " ヴァルフレイア神殿跡
|
||
フレイア大神殿礼拝堂の修道女
|
||
1000ジェニス
|
||
|
||
献花用の花を切らしてしまったので
|
||
西の神殿跡から取ってきてくれる方
|
||
いませんでしょうか?
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]1\\C[0]"],
|
||
],
|
||
108 => [
|
||
[1, " 砂漠蟻の巣
|
||
聖都南東で待つ細長い顔の傭兵
|
||
3000ジェニス
|
||
|
||
砂漠蟻の巣に向かった
|
||
3人の仲間たちが帰ってこない…
|
||
|
||
嫌な予感がする。
|
||
|
||
|
||
|
||
|
||
\\C[1]12\\C[0]"],
|
||
],
|
||
109 => [
|
||
[1, " 歓楽街バー・スクサマッド
|
||
ランカー嬢
|
||
プリズムステッキ
|
||
|
||
いい化粧品探してるんだけどぉ~
|
||
誰か持ってきて~
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
110 => [
|
||
[1, " ヴァルキリー礼拝堂
|
||
みんなの聖母ちゃん
|
||
豪華景品あり!
|
||
|
||
フレイアいちばんくじキャンペーンを
|
||
始めました!
|
||
|
||
豪華景品たくさんございますので
|
||
ふるってご参加下さい。
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
111 => [
|
||
[1, " エユタヤー大衆酒場
|
||
観光客
|
||
料理詰め合わせ
|
||
|
||
トムヤンクンが食べたい…
|
||
|
||
はるばるここまで来たのに
|
||
売り切れだと?
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
112 => [
|
||
[1, " 歓楽街にある旅の酒場
|
||
傭兵のクルセイダーとプリースト
|
||
サポーターとして加入
|
||
|
||
路銀が尽きてしまったので
|
||
雇用主を探している…
|
||
|
||
戦いの援護には自信あり!
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
113 => [
|
||
[1, " ラ・フェール歓楽街
|
||
神殿正門・ベンチ前の修道士
|
||
1500ジェニス
|
||
|
||
歓楽街に住む知り合いに聖書を
|
||
届けてほしい…
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
114 => [
|
||
[1, " ヴァルフレイア神殿跡
|
||
聖都中央右ベンチの中年
|
||
2000ジェニス
|
||
|
||
神殿跡にキッスプラントが
|
||
出現したので駆除してほしい。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]6\\C[0]"],
|
||
],
|
||
115 => [
|
||
[1, " 大神殿訓練室
|
||
聖十字隊員
|
||
モンスター捕獲の方法
|
||
|
||
野生のグリフォンを捕まえてくれる
|
||
人を探している。
|
||
|
||
捕まえ方は教えるので
|
||
初心者でもOK!
|
||
|
||
|
||
|
||
\\C[1]3\\C[0]"],
|
||
],
|
||
116 => [
|
||
[1, " ベインスゥの宿
|
||
ローブ職人
|
||
ボス耐性のカード
|
||
|
||
フェーニの下着を探している…
|
||
出来れば3枚頼む!
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]24\\C[0]"],
|
||
],
|
||
117 => [
|
||
[1, " 大神殿・北図書エリア
|
||
老学者
|
||
カードデル20
|
||
|
||
状態異常を付与するカードを
|
||
探している…
|
||
|
||
ただしレアカードは対象外じゃ
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
118 => [
|
||
[1, " 聖都・鍛冶ギルド
|
||
店主
|
||
製錬所解放
|
||
|
||
鍛冶場を開けようと思ったんだけど
|
||
鉄鉱石が足りなくなってねぇ…
|
||
|
||
どうしていつも鉄鉱石が
|
||
不足するのか謎だよ。
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
119 => [
|
||
[1, " 大神殿・入口付近
|
||
情熱を燃やす神官
|
||
黄金の林檎
|
||
|
||
朝礼で最前列を確保したいのだが、
|
||
朝の場所取りのマラソンでいつも負け
|
||
てしまう。
|
||
|
||
足の速い代行者に席取りを頼みたい
|
||
のだ!
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
120 => [
|
||
[1, " ポルナトル渓谷
|
||
神殿医務室の神官
|
||
3000ジェニス
|
||
|
||
渓谷に現れる鳥人間たちによる
|
||
被害が続出して困っている。
|
||
|
||
彼女たちを軽く懲らしめて
|
||
やってほしい。
|
||
|
||
|
||
|
||
\\C[1]17\\C[0]"],
|
||
],
|
||
121 => [
|
||
[1, " 聖都・ヴァルキリー礼拝堂
|
||
?
|
||
新たなる力
|
||
|
||
若き戦士よ、この先の戦いには
|
||
新たな力が必要でしょう…
|
||
|
||
ヴァルキリー礼拝堂にて
|
||
お待ちしております。
|
||
|
||
|
||
|
||
\\C[1]20\\C[0]"],
|
||
],
|
||
122 => [
|
||
[1, " フレイア大神殿・地下3号棟入口
|
||
?
|
||
?
|
||
|
||
汝に最後の試練を与える…
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
123 => [
|
||
[1, " 氷結の洞窟2B
|
||
魔術師アヒオ
|
||
とっておきの物
|
||
|
||
だ、誰か助けてくれ…
|
||
俺はここから一歩もうごけな…
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]20\\C[0]"],
|
||
],
|
||
124 => [
|
||
[1, " 歓楽街の違法店
|
||
宝石店店員
|
||
宝石セット
|
||
|
||
うちのお得意様が君たちに仕事を
|
||
頼みたいそうだ…
|
||
|
||
是非とも力になってあげてほしい。
|
||
|
||
|
||
|
||
|
||
\\C[1]40\\C[0]"],
|
||
],
|
||
125 => [
|
||
[1, " 歓楽街のどこか
|
||
懺悔室前の神官
|
||
3500ジェニス
|
||
|
||
教皇のお膝元で奴隷商人が
|
||
幅を利かせているらしい…
|
||
|
||
これは、どうにかしないといけない。
|
||
|
||
|
||
|
||
|
||
\\C[1]15\\C[0]"],
|
||
],
|
||
126 => [
|
||
[1, " 企業都市バレルゼン公園
|
||
画家
|
||
彫刻刀
|
||
|
||
ネタが浮かばない…
|
||
誰か…私に創作の種を与えてくれ!
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
127 => [
|
||
[1, " 大陸各所
|
||
聖都北・石像前の教徒
|
||
ユグドラシルの果実3つ
|
||
|
||
人を捜してほしいのです。
|
||
取り返しの付かないことになる前に…
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
128 => [
|
||
[1, " エユタヤー
|
||
橋の上のシャーマン
|
||
プレゼントボックス3つ
|
||
|
||
儀式に使うハーブを探しておる…
|
||
近くの狩り場からでも
|
||
集めてきてほしい。
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
129 => [
|
||
[1, " エユタヤー遺跡
|
||
エユタヤー神殿の考古学者
|
||
カードデル20
|
||
|
||
遺跡内部にある石碑の文章を
|
||
コピーしてきてほしいのだ…
|
||
|
||
詳細は会ってから話す。
|
||
|
||
|
||
|
||
|
||
\\C[1]35\\C[0]"],
|
||
],
|
||
130 => [
|
||
[1, " モスフィア島
|
||
ホラ吹きベルウエフ
|
||
黒の魔石
|
||
|
||
俺は見たんだ!巨大な動く島を…
|
||
それを話しても誰も信じてくれない。
|
||
こうなったら外から腕利きの冒険者を
|
||
雇い入れて…
|
||
|
||
あっ、モスフィア島には空港から
|
||
行けるからよろしくね。
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
131 => [
|
||
[1, " モスフィア王宮
|
||
モスフィア王
|
||
金塊3つ
|
||
|
||
動く島を見つけたと言われる冒険者に
|
||
是非とも頼みたいことがある。
|
||
|
||
宮殿まで来てもらえないだろうか?
|
||
|
||
|
||
|
||
|
||
\\C[1]39\\C[0]"],
|
||
],
|
||
132 => [
|
||
[1, " モスフィア王宮
|
||
女官
|
||
沈んだ太陽
|
||
|
||
陛下がよく話されていた冒険者…
|
||
貴方に頼みたいことがございますの。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]38\\C[0]"],
|
||
],
|
||
133 => [
|
||
[1, " ホテル・ドラゴンエンペラーロビー
|
||
デュランダル研究所員
|
||
調査費用現地支給
|
||
|
||
新種の青いゼリンの目撃情報が確認
|
||
されたので生体データを取りたい。
|
||
|
||
戦ってくれる者を探している。
|
||
|
||
|
||
|
||
|
||
\\C[1]20?\\C[0]"],
|
||
],
|
||
134 => [
|
||
[1, " 砂漠蟻の巣1B
|
||
ベインスゥの負傷した冒険者
|
||
漆黒の騎士カード
|
||
|
||
砂漠蟻の巣に凶悪なボスモンスター
|
||
が出現した!
|
||
|
||
あの舌技を前に俺達は…全滅した!
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
135 => [
|
||
[1, " 大神殿地下
|
||
神殿西通路の司祭
|
||
10000ジェニス
|
||
|
||
祈祷室の地下からなにやら
|
||
不気味な音がしているのだ…
|
||
|
||
なにかの前触れでなければいいが。
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
136 => [
|
||
[1, " 鳥人間の集落
|
||
神殿医務室の神官
|
||
10000ジェニス
|
||
|
||
鳥人間たちが集落で徒党と組み、
|
||
再び、旅人を襲い始めた。
|
||
|
||
背後には彼女たちを統率する
|
||
女王までもが現れたとか…
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
137 => [
|
||
[1, " 蝶の羽ラ・フェール支部
|
||
ゼロジー
|
||
忠誠の証5つ
|
||
|
||
俺達が追っている研究所の残党に
|
||
ついての手がかりになりそうな
|
||
事件を嗅ぎつけた…
|
||
|
||
力を貸してほしい。
|
||
|
||
|
||
|
||
\\C[1]38\\C[0]"],
|
||
],
|
||
138 => [
|
||
[1, " ムジョルニア火山02
|
||
ベインスゥの少年
|
||
スーパーエッグボール
|
||
|
||
妹と火山に遊びにいったら怖い人が
|
||
いて…妹はそいつらに…
|
||
|
||
お願いします、妹を助けて!
|
||
助けてください!
|
||
|
||
|
||
|
||
\\C[1]42\\C[0]"],
|
||
],
|
||
139 => [
|
||
[1, " ヴァルフレイア神殿跡
|
||
グルームの牙
|
||
デスプードルカード
|
||
|
||
頭目から貴様を鍛えるようにと
|
||
言われた…待っている。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
140 => [
|
||
[1, " 聖都西口
|
||
聖都市民
|
||
サポーター????加入
|
||
|
||
最近、聖都内の女神像に
|
||
ラクガキする輩がいるようなのだ…
|
||
|
||
じつにけしからん!
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
141 => [
|
||
[1, " バレルゼン貧民街
|
||
匿名
|
||
5000ジェニス
|
||
|
||
主任から君の話は聞いている…
|
||
|
||
研究所跡の調査を頼みたい…
|
||
貧民街北西で待つ。
|
||
|
||
|
||
|
||
|
||
\\C[1]44\\C[0]"],
|
||
],
|
||
142 => [
|
||
[1, " 大神殿訓練室
|
||
パラコーン
|
||
貴殿が望むならいかようにも…
|
||
|
||
話がある…
|
||
神殿の訓練室にて待っている。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
143 => [
|
||
[1, " 大神殿礼拝堂
|
||
ビルドルフ派の神官
|
||
会ってからお渡しします
|
||
|
||
貴方にお渡ししたいものが
|
||
ございます…
|
||
|
||
礼拝堂までご足労願えません
|
||
でしょうか?
|
||
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
144 => [
|
||
[1, " 歓楽街・性技場
|
||
歓楽街協会
|
||
特別経験値10000
|
||
|
||
最近出没する辻斬りの実態を
|
||
調べてほしい…
|
||
|
||
性技場医務室の被害者達なら、
|
||
何か知っているかもしれない。
|
||
|
||
|
||
\\C[1]43\\C[0]"],
|
||
],
|
||
145 => [
|
||
[1, " 宝石店2F
|
||
ノビッサ
|
||
とある秘伝書
|
||
|
||
教皇補佐となったお前に
|
||
頼みたいことがある…
|
||
|
||
宝石店の2階で待つ…
|
||
任務中で外出している場合は
|
||
終了後に頼む。
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
146 => [
|
||
[1, " 名無しの島
|
||
大神殿正門で待つ聖職者
|
||
グールの力を宿したアレ
|
||
|
||
修行中行方不明になった
|
||
聖職者たちを救出して下さい!
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
147 => [
|
||
[1, " 大陸南方の孤島
|
||
フレイア調査官
|
||
フレイア教特別接待券
|
||
|
||
大陸南部で正体不明の孤島と
|
||
知らない集落を見た…という話を
|
||
いくつも聞いている。
|
||
あの辺りには魔族が拠点としていた
|
||
島しかなかったはず…
|
||
調査を頼みたいので、\\C[1]そのまま直接
|
||
島に向かってほしい\\C[0]。
|
||
|
||
\\C[1]55\\C[0]"],
|
||
],
|
||
148 => [
|
||
[1, " ティアーズビーチ
|
||
大聖堂の司祭
|
||
プレミアムボックス3つ
|
||
|
||
南の海岸で幽霊船を見たという
|
||
噂があってな…
|
||
|
||
大神官が話がしたいとのことだ。
|
||
|
||
|
||
|
||
|
||
\\C[1]53\\C[0]"],
|
||
],
|
||
149 => [
|
||
[1, " 大神殿食堂
|
||
コアンタで~す
|
||
?
|
||
|
||
ちょっとお願いがあるんだけど…
|
||
食堂で待ってま~す。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]50\\C[0]"],
|
||
],
|
||
150 => [
|
||
[1, " ?
|
||
エルニン大神官
|
||
それなりの対価を
|
||
|
||
非常事態です…
|
||
至急、正門前までお願いします。
|
||
|
||
|
||
|
||
|
||
|
||
|
||
\\C[1]58\\C[0]"],
|
||
],
|
||
151 => [
|
||
[1, " 神殿西通路
|
||
付き人修道士
|
||
3000ジェニス
|
||
|
||
箱の鍵をうっかり無くしてしまった!
|
||
上司にバレたら怒られるのでなんとか
|
||
したい。
|
||
|
||
至急、解錠スキルを持った人を探して
|
||
ます。
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
152 => [
|
||
[1, " 歓楽街ラフェルムーン
|
||
顔の丸い冒険者
|
||
5000ジェニス
|
||
|
||
ゴブリンの巣に討伐に行ったのだが奴
|
||
らの罠にかかって、仲間が一人捕らわ
|
||
れてしまった!
|
||
|
||
潜伏行動に優れた戦士を探している!
|
||
仲間を奴らの巣から助けてほしい!
|
||
|
||
|
||
\\C[1]?\\C[0]"],
|
||
],
|
||
153 => [
|
||
[1, " 神殿正門
|
||
石像前の女教官
|
||
2000ジェニス
|
||
|
||
新兵の訓練に付き合ってくれる犯人役
|
||
を探している。
|
||
|
||
無抵抗で攻撃を受け続ける為、タフネ
|
||
スと我慢強さが必要とされる。
|
||
|
||
|
||
|
||
\\C[1]6\\C[0]"],
|
||
],
|
||
154 => [
|
||
[1, " ?
|
||
ジェマ大神官
|
||
?
|
||
|
||
ゼロジー主任が調べていた例の件…
|
||
こちらでも手がかりを掴みました。
|
||
|
||
恐らく大きな決戦となるでしょう。
|
||
|
||
|
||
|
||
|
||
\\C[1]65\\C[0]"],
|
||
],
|
||
}end
|
||
#===========================================
|
||
# ここまで
|
||
#===========================================
|
||
|
||
$rsi ||= {}
|
||
$rsi["冒険メモ"] = true
|
||
|
||
module STORYEVENT
|
||
#--------------------------------------------------------------------------
|
||
# ● 色々キャッシュ
|
||
#--------------------------------------------------------------------------
|
||
def self.cache
|
||
self.cache_story_data
|
||
self.cache_event_list
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● あらすじ 見出しの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.story_caption
|
||
STORYEVENT_CAPTION
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● メインストーリー情報の取得
|
||
#--------------------------------------------------------------------------
|
||
def self.cache_story_data
|
||
@story_data = STORYEVENT_CONTENTS[$game_variables[STORYEVENT_VID]]
|
||
unless @story_data
|
||
$game_variables[STORYEVENT_VID].downto(0){|n|
|
||
if STORYEVENT_CONTENTS.has_key?(n)
|
||
@story_data = STORYEVENT_CONTENTS[n]
|
||
break
|
||
end
|
||
}
|
||
end
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● あらすじ タイトルの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.story_title
|
||
@story_data[0]
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● あらすじ テキストの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.story_text
|
||
@story_data[1]
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント 見出しの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.event_caption
|
||
SUBEVENT_CAPTION
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント リスト数の取得
|
||
#--------------------------------------------------------------------------
|
||
def self.event_number
|
||
SUBEVENT_TITLES.size
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベントが発生しているかどうかの判定
|
||
#--------------------------------------------------------------------------
|
||
def self.event_start?(id)
|
||
$game_variables[id] >= SUBEVENT_STARTED
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベントをクリアしたかどうかの判定
|
||
#--------------------------------------------------------------------------
|
||
def self.event_clear?(id)
|
||
$game_variables[id] >= SUBEVENT_CLEARED
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント フラグ変数リストの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.cache_event_list
|
||
@event_list = SUBEVENT_TITLES.keys.sort
|
||
@event_list.sort!{|a, b|
|
||
title_a = self.event_start?(a) ? 0 : 1
|
||
title_b = self.event_start?(b) ? 0 : 1
|
||
if title_a != title_b
|
||
title_a <=> title_b
|
||
else
|
||
a <=> b
|
||
end
|
||
}
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベントリストのゲッター
|
||
#--------------------------------------------------------------------------
|
||
def self.event_list
|
||
@event_list
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント タイトルの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.event_title(id)
|
||
if event_start?(id)
|
||
SUBEVENT_TITLES[id][0]
|
||
else
|
||
"--------------------"
|
||
end
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント テキストの取得
|
||
#--------------------------------------------------------------------------
|
||
def self.event_text(id)
|
||
if event_clear?(id)
|
||
SUBEVENT_TITLES[id][2]
|
||
elsif event_start?(id)
|
||
text = nil
|
||
if SUBEVENT_CONTENTS[id]
|
||
SUBEVENT_CONTENTS[id].each{|data|
|
||
text = data[1] if data[0] <= $game_variables[id]
|
||
}
|
||
end
|
||
text ? text : SUBEVENT_TITLES[id][1]
|
||
else
|
||
""
|
||
end
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● シナリオ達成率の取得
|
||
#--------------------------------------------------------------------------
|
||
def self.completed
|
||
n = 0
|
||
for i in @event_list
|
||
if event_clear?(i)
|
||
n += 2
|
||
elsif event_start?(i)
|
||
n += 1
|
||
end
|
||
end
|
||
n * 100 / (event_number * 2)
|
||
end
|
||
end
|
||
|
||
class WindowInfo < Window_Base
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
super(368, 152, window_width, window_height)
|
||
self.opacity = 0
|
||
refresh
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ幅の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_width
|
||
160
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ高さの取得
|
||
#--------------------------------------------------------------------------
|
||
def window_height
|
||
line_height + 32
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● リフレッシュ
|
||
#--------------------------------------------------------------------------
|
||
def refresh
|
||
draw_text(0, 0, 124, line_height, STORYEVENT::SUBEVENT_CLEARTEXT)
|
||
text = "%"
|
||
contents.font.size = 20
|
||
cx = text_size(text).width
|
||
change_color(system_color)
|
||
draw_text(0, 0, 124, line_height, text, 2)
|
||
contents.font.size = 20
|
||
change_color(normal_color)
|
||
draw_text(0, 0, 124-cx-4, line_height, STORYEVENT.completed, 2)
|
||
end
|
||
end
|
||
|
||
class WindowOutlineSub < Window_Base
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
super(0, 152, window_width, window_height)
|
||
refresh
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ幅の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_width
|
||
Graphics.width
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ高さの取得
|
||
#--------------------------------------------------------------------------
|
||
def window_height
|
||
Graphics.height - 152
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● リフレッシュ
|
||
#--------------------------------------------------------------------------
|
||
def refresh
|
||
change_color(system_color)
|
||
draw_text(0, 0, 352, line_height, STORYEVENT.event_caption)
|
||
end
|
||
end
|
||
|
||
class WindowOutlineList < Window_Selectable
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
super(0, 192, window_width, window_height)
|
||
self.index = 0
|
||
self.opacity = 0
|
||
refresh
|
||
activate
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 選択項目の有効状態を取得
|
||
#--------------------------------------------------------------------------
|
||
def current_item_enabled?
|
||
STORYEVENT.event_start?(STORYEVENT.event_list[index])
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 桁数の取得
|
||
#--------------------------------------------------------------------------
|
||
def col_max
|
||
2
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 横に項目が並ぶときの空白の幅を取得
|
||
#--------------------------------------------------------------------------
|
||
def spacing
|
||
16
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 項目数の取得
|
||
#--------------------------------------------------------------------------
|
||
def item_max
|
||
STORYEVENT.event_number
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ幅の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_width
|
||
Graphics.width
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ高さの取得
|
||
#--------------------------------------------------------------------------
|
||
def window_height
|
||
Graphics.height - 192
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 項目の描画
|
||
#--------------------------------------------------------------------------
|
||
def draw_item(index)
|
||
event_id = STORYEVENT.event_list[index]
|
||
rect = item_rect(index)
|
||
rect.x += 2
|
||
color = normal_color
|
||
enabled = STORYEVENT.event_start?(event_id)
|
||
if enabled
|
||
if STORYEVENT.event_clear?(event_id)
|
||
color = text_color(1)
|
||
draw_icon(STORYEVENT::SUBEVENT_CLEARED_ICON, rect.x, rect.y)
|
||
end
|
||
end
|
||
rect.x += 24
|
||
rect.width -= 28
|
||
change_color(color, enabled)
|
||
draw_text(rect, STORYEVENT.event_title(event_id))
|
||
end
|
||
end
|
||
|
||
class WindowOutlineMain < Window_Base
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
super(0, 0, window_width, window_height)
|
||
refresh
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ幅の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_width
|
||
Graphics.width
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ高さの取得
|
||
#--------------------------------------------------------------------------
|
||
def window_height
|
||
152
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● リフレッシュ
|
||
#--------------------------------------------------------------------------
|
||
def refresh
|
||
cw = contents.width - 32
|
||
change_color(system_color)
|
||
draw_text(0, 0, contents.width - 32, line_height, STORYEVENT.story_caption)
|
||
change_color(normal_color)
|
||
cx = text_size(STORYEVENT.story_caption).width + 16
|
||
draw_text(cx, 0, cw - cx, line_height, STORYEVENT.story_title)
|
||
draw_text_ex(16, line_height + 16, STORYEVENT.story_text.dup)
|
||
end
|
||
end
|
||
|
||
class WindoOutlineText < Window_Selectable
|
||
#--------------------------------------------------------------------------
|
||
# ● 公開インスタンス変数
|
||
#--------------------------------------------------------------------------
|
||
attr_reader :item_index # 表示するインデックス
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
super(window_x, window_y, window_width, window_height)
|
||
if $game_switches[111] == true#紅茶走
|
||
self.windowskin = Cache.system(STORYEVENT::SUBEVENT_SKINb)#紅茶走
|
||
else #紅茶走
|
||
self.windowskin = Cache.system(STORYEVENT::SUBEVENT_SKIN)#紅茶走
|
||
end#紅茶走
|
||
self.z = 200
|
||
self.active = false
|
||
self.openness = 0
|
||
self.opacity = 0#紅茶走透過度
|
||
@item_index = 0
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ X 座標の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_x
|
||
(Graphics.width - window_width) / 2
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ Y 座標の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_y
|
||
(Graphics.height - window_height) / 2
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ幅の取得
|
||
#--------------------------------------------------------------------------
|
||
def window_width
|
||
640
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウ高さの取得
|
||
#--------------------------------------------------------------------------
|
||
def window_height
|
||
480
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● リフレッシュ
|
||
#--------------------------------------------------------------------------
|
||
def refresh
|
||
contents.clear
|
||
bitmap = Cache.picture("kueback")#紅茶走 ここ改変
|
||
self.contents.blt(0, 0, bitmap, bitmap.rect)#紅茶走 ここ改変
|
||
id = STORYEVENT.event_list[@item_index]
|
||
text = STORYEVENT.event_title(id)
|
||
contents.font.shadow = false
|
||
contents.font.bold = true
|
||
contents.font.name = "みかちゃん"#紅茶走ここだけフォント使えなかった
|
||
contents.font.size = 24
|
||
change_color(system_color)
|
||
cx = contents.width - 96
|
||
cw = text_size(text).width
|
||
# contents.fill_rect(Rect.new(4, 32, cw + 8, 2), system_color)
|
||
contents.draw_text(8+170, 8+52, cx - 24, line_height, text)
|
||
contents.font.bold = false
|
||
contents.font.name = "いろはマルみかみ Mediam"#紅茶走もどす
|
||
contents.font.size = 20
|
||
change_color(normal_color)
|
||
contents.draw_text(220, 240, cx, line_height, STORYEVENT::SUBEVENT_CLEARED_TEXT) if STORYEVENT.event_clear?(id)
|
||
draw_text_ex(20+20, line_height * 2+52, STORYEVENT.event_text(id).clone)
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 表示するインデックスの設定
|
||
#--------------------------------------------------------------------------
|
||
def item_index=(index)
|
||
@item_index = index
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウのアクティブ化
|
||
#--------------------------------------------------------------------------
|
||
def activate
|
||
refresh
|
||
open
|
||
super
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ウィンドウの非アクティブ化
|
||
#--------------------------------------------------------------------------
|
||
def deactivate
|
||
close
|
||
super
|
||
end
|
||
end
|
||
|
||
class Window_MenuCommand < Window_Command
|
||
#--------------------------------------------------------------------------
|
||
# ● コマンドリストの作成
|
||
#--------------------------------------------------------------------------
|
||
alias _make_command_list_with_story_command make_command_list
|
||
def make_command_list
|
||
_make_command_list_with_story_command
|
||
add_story_command
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● インデックスを指定したコマンドの追加
|
||
#--------------------------------------------------------------------------
|
||
def add_command_with_index(name, symbol, index, enabled = true, ext = nil)
|
||
@list[index, 0] = {:name=>name, :symbol=>symbol, :enabled=>enabled, :ext=>ext}
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 冒険メモコマンドの有効判定
|
||
#--------------------------------------------------------------------------
|
||
def enable_story_command?
|
||
$game_switches[STORYEVENT::STORYEVENT_ENABLE_SID]
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 冒険メモコマンドの追加
|
||
#--------------------------------------------------------------------------
|
||
def add_story_command
|
||
add_command_with_index(STORYEVENT::STORYEVENT_MENU_TEXT, :story,
|
||
STORYEVENT::STORYEVENT_MENU_INDEX, enable_story_command?)
|
||
end
|
||
end
|
||
|
||
class SceneOutline < Scene_Base
|
||
#--------------------------------------------------------------------------
|
||
# ● オブジェクト初期化
|
||
#--------------------------------------------------------------------------
|
||
def initialize
|
||
STORYEVENT.cache
|
||
@index = 0
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 開始処理
|
||
#--------------------------------------------------------------------------
|
||
def start
|
||
super
|
||
create_background
|
||
create_backsprite
|
||
create_windows
|
||
set_handler
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 背景の作成
|
||
#--------------------------------------------------------------------------
|
||
def create_background
|
||
@background_sprite = Sprite.new
|
||
@background_sprite.bitmap = SceneManager.background_bitmap
|
||
@background_sprite.color.set(16, 16, 16, 128)
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント閲覧時用の背景スプライトの作成
|
||
#--------------------------------------------------------------------------
|
||
def create_backsprite
|
||
@back_sprite = Sprite.new
|
||
@back_sprite.bitmap = Bitmap.new(Graphics.width, Graphics.height)
|
||
@back_sprite.bitmap.fill_rect(@back_sprite.bitmap.rect, Color.new(0, 0, 0, 192))
|
||
@back_sprite.visible = false
|
||
@back_sprite.z = 190
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 各種ウィンドウの作成
|
||
#--------------------------------------------------------------------------
|
||
def create_windows
|
||
@main_window = WindowOutlineMain.new
|
||
@sub_window = WindowOutlineSub.new
|
||
@list_window = WindowOutlineList.new
|
||
@info_window = WindowInfo.new
|
||
@text_window = WindoOutlineText.new
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● ハンドラのセット
|
||
#--------------------------------------------------------------------------
|
||
def set_handler
|
||
@list_window.set_handler(:ok, method(:open_text_window))
|
||
@list_window.set_handler(:cancel, method(:return_scene))
|
||
@text_window.set_handler(:cancel, method(:close_text_window))
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 終了処理
|
||
#--------------------------------------------------------------------------
|
||
def terminate
|
||
super
|
||
dispose_background
|
||
dispose_backsprite
|
||
dispose_windows
|
||
SceneManager.call(Scene_Menu)#紅茶走
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 背景の解放
|
||
#--------------------------------------------------------------------------
|
||
def dispose_background
|
||
@background_sprite.dispose
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベント閲覧時用の背景スプライトの解放
|
||
#--------------------------------------------------------------------------
|
||
def dispose_backsprite
|
||
@back_sprite.dispose
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● 各種ウィンドウの解放
|
||
#--------------------------------------------------------------------------
|
||
def dispose_windows
|
||
@main_window.dispose
|
||
@sub_window.dispose
|
||
@list_window.dispose
|
||
@info_window.dispose
|
||
@text_window.dispose
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベントの詳細ウィンドウ表示
|
||
#--------------------------------------------------------------------------
|
||
def open_text_window
|
||
@list_window.visible = false
|
||
@main_window.visible = false
|
||
@sub_window.visible = false
|
||
@info_window.visible = false
|
||
@back_sprite.visible = true
|
||
@text_window.item_index = @list_window.index
|
||
@text_window.activate
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● サブイベントの詳細ウィンドウ非表示
|
||
#--------------------------------------------------------------------------
|
||
def close_text_window
|
||
@list_window.visible = true
|
||
@main_window.visible = true
|
||
@sub_window.visible = true
|
||
@info_window.visible = true
|
||
@back_sprite.visible = false
|
||
@list_window.activate
|
||
end
|
||
end
|
||
|
||
class Scene_Menu < Scene_MenuBase
|
||
#--------------------------------------------------------------------------
|
||
# ● コマンドウィンドウの作成
|
||
#--------------------------------------------------------------------------
|
||
alias _create_story_command create_command_window
|
||
def create_command_window
|
||
_create_story_command
|
||
@command_window.set_handler(:story, method(:command_story))
|
||
end
|
||
#--------------------------------------------------------------------------
|
||
# ● コマンド[冒険メモ]
|
||
#--------------------------------------------------------------------------
|
||
def command_story
|
||
SceneManager.call(SceneOutline)
|
||
end
|
||
end |