code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_32:泥棒猫を捕まえて！
;-------------------------------------------------
@QST_TITLE_QUEST_32
RESULTS '= "泥棒猫を捕まえて！"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_32
RESULTS '= "周期,探索,"

;クエスト選択画面で呼び出される概要説明
;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_32
RESULTS:0 '= "最近、村の食料や財産を奪っていく盗賊が現れて困っている"
RESULTS:2 '= "ギルド員と協力して調査をしたところ、盗賊は近場に拠点を構えている女獣人だと判明した"
RESULTS:3 '= "やつは鼻が利くし逃げ足も早いが、村の資源を守るためになんとか捕まえてほしい"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_32
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★★★★@/C@"
RESULTS:1 '= "報酬：6,000ディナリ"
RESULTS:2 '= "推奨パーティ人数:4人以上　　　推奨平均戦闘値：45以上"
RESULTS:3 '= "備考:定期性クエスト(4期毎)"
RESULTS:5 '= @"@C:{カラー_選択不可}@「獣人を捕えるなら罠が手っ取り早いな」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_32(QUEST_ID)
#DIM QUEST_ID
;前提としてQUEST_6_湯泡郷の攻略が必要
SIF QST_SV_QUEST_FLAG:6 != 2
	RETURN 0
SIF QST_COOLTIME:QUEST_ID
	RETURN 0

RETURN 1

;-------------------------------------------------
;マップデータ定義
;クエストタイプが"GMAPの場合"マップ定義は外部マップデータに持っているので
; ERB側のマップデータにはEVENT_LISTさえ定義すればよい
;-------------------------------------------------
@QST_SET_MAPDATA_QUEST_32(MAP_ID)
#DIM MAP_ID
;mapdata定義ファイルの格納先フォルダを指定
QST_GMAPDATA_PATH '= "ERB/QUEST/クエストデータ/QUEST_32_泥棒猫を捕まえて！"
;マップデータ定義XMLとTXTのファイル名を指定。
;2ファイルの名称は拡張子を除いて一致している必要がある
QST_GMAPDATA_FILENAME '= "mapdata"
;このフラグを1にすると経路描画が行われなくなる。屋内マップなどあえて経路を図示する必要がない場合に立てるとよい
QST_HIDE_PATH = 1

;各エリア（ノード）に配置するイベントIDを記入。0-24はノード番号に対応
;EVENT_LIST末尾の’,’を忘れないように
_DIC_HO_MAPDATA:MAP_ID:0   '= "[EVENT_LIST:0,]"
_DIC_HO_MAPDATA:MAP_ID:1   '= "[EVENT_LIST:0,100,101,102,103,]"
_DIC_HO_MAPDATA:MAP_ID:2   '= "[EVENT_LIST:0,105,]"
_DIC_HO_MAPDATA:MAP_ID:3   '= "[EVENT_LIST:0,111,]"
_DIC_HO_MAPDATA:MAP_ID:4   '= "[EVENT_LIST:0,]"
_DIC_HO_MAPDATA:MAP_ID:5   '= "[EVENT_LIST:0,110,]"
_DIC_HO_MAPDATA:MAP_ID:6   '= "[EVENT_LIST:0,120,]"
_DIC_HO_MAPDATA:MAP_ID:7   '= "[EVENT_LIST:0,1,]"
_DIC_HO_MAPDATA:MAP_ID:8   '= "[EVENT_LIST:0,]"
_DIC_HO_MAPDATA:MAP_ID:9   '= "[EVENT_LIST:0,112,]"
_DIC_HO_MAPDATA:MAP_ID:10   '= "[EVENT_LIST:0,121,]"

;-------------------------------------------------
;クエストのタイプ
;-------------------------------------------------
@QST_TYPE_QUEST_32
RESULTS '= "GMAP"

;-------------------------------------------------
;クエスト固有の初期化処理
;-------------------------------------------------
@QST_INIT_QUEST_32

;-------------------------------------------------
; クエスト中止時の処理
; QST_QUEST_{QUEST_ID}_ABORT は撤退コマンド実行時に呼ばれる
;-------------------------------------------------
@QST_QUEST_32_ABORT
QST_SV_QUEST_FLAG:QST_有効クエストID = 1

;-------------------------------------------------
;クエストの導入文
;-------------------------------------------------
@QST_INTRO_QUEST_32
PRINTL
PRINTFORMW 盗賊は猫の獣人族で、村の人達は盗賊のことを"泥棒猫"と呼んでいた
PRINTFORMW 泥棒猫は村の北東の山小屋を乗っ取り拠点としているということだ
PRINTL
PRINTFORMW しかし、村の自警団の用意した罠を全て看破したかなりの切れ者で強敵らしい
PRINTFORMW 逃げ足も早く、正面切っての戦いはしてこないという
PRINTL
PRINTFORMW まっすぐ山小屋へ向かうよりも、まずはしっかりと情報を集め
PRINTFORMW 何かしら戦闘以外の手段を探すところから始めたほうがいいだろう……
CALL FL_PLAYBGM("Nostalgic_2.ogg")

FLAG:クエスト_中断を許可 = 1
;-------------------------------------------------
;イベントリストに登録するイベント情報
;イベントリストに登録するイベント情報を記述する
;<記述方法>
;EVENT_TRIGGER
; "ENTER_ROOM" イベントが配置されたルームの入室時に強制的に実行される
; "EVENT_SLOT" イベントリストのクリック時に実行される
; "TRAIN_EXIT" 調教イベント終了後 ※予め変数:QST_TRAIN_EXIT_EVENT_ID に調教終了後に実行したいイベントIDを指定する必要がある
;EVENT_SLOT_NAME
; イベントリスト上の表示名
;EVENT_TYPE
; "ONCE" クエスト中一度のみ呼出されるイベント(※トリガーが"ENTER_ROOM"のイベントのみ機能)
;           実行済みかをフラグ管理するまでもないイベント(会話など)で使用する想定
;
;戻り値
; RESULT:0 = EVENT_TRIGGER
; RESULT:1 = EVENT_SLOT_NAME
; RESULT:2 = EVENT_TYPE
;-------------------------------------------------
;-------------------------------------------------
;EV0
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_0
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = ""
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_32_EVENT_0
#DIMS ROOM_NAME

CALL HO_CREAR_LOG()
SELECTCASE HO_MASTER現在地
	CASE 0
		CALL HO_PRINT_LOG("準備不足を感じたら撤退してもいいだろう……", 1)
	CASE 1
		CALL HO_PRINT_LOG("小さな村だが、一通りの施設は揃っている", 1)
	CASE 2
		CALL HO_PRINT_LOG("村人達が採取をしている。このあたりは安全なのだろう", 1)
	CASE 3
		CALL HO_PRINT_LOG("薄汚れた小屋から桟橋が伸びており、小さな船が留められている", 1)
	CASE 5
		CALL HO_PRINT_LOG("静かで落ち着いた森だが、雑草の背が高く歩きにくい", 1)
	CASE 7
		CALL HO_PRINT_LOG("村人の情報通りなら、この山小屋に泥棒猫がいるはずだ", 1)
	CASE 9
		CALL HO_PRINT_LOG("この先に巨大な虫が住み着いてしまい、危険だと言われている", 1)
ENDSELECT

;-------------------------------------------------
;EV1
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_1
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "泥棒猫の山小屋"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_1
#DIM EVENT_ID = 1
#DIM CONST 関連イベントID = 103
#DIM CONST 関連イベント２ID = 111
#DIM EVENT_FLAG

CALL QST_GET_EVENT_FLAG(関連イベントID)
PRINTFORMW 簡素な作りの小さな山小屋だった
PRINTFORMW 地下室でもない限り、どこにでもあるような一部屋だけの山小屋だと思われる

PRINTFORMW 気になるところは、一箇所だけ不自然に窓が全開になっているぐらいだろうか

PRINTFORMW さて、どうしようか……

PRINTL [0] - 正面突破
PRINTL [1] - 窓から侵入
CALL QST_GET_EVENT_FLAG(関連イベントID)
SIF RESULT == 2
	PRINTL [2] - マタタビの匂い袋を使う
CALL QST_GET_EVENT_FLAG(関連イベント２ID)
SIF RESULT >= 1
	PRINTL [3] - 餌で罠をつくる
PRINTL [4] - やめる

INPUT
IF RESULT == 0
	;敗北イベント
	CALL QST_QUEST_32_EVENT_13

ELSEIF RESULT == 1
	;敗北イベント
	CALL QST_QUEST_32_EVENT_12

ELSEIF RESULT == 2
	PRINTFORMW 開け放たれた窓からマタタビの匂い袋を投げ込んだ。すると、小屋内でばたんばたんっと誰かが暴れているような音がしはじめる……
	PRINTL
	PRINTFORMW しばらくすると静かになったので窓から中を覗き込んでみると、匂い袋を抱えた獣人が丸くなって倒れていた
	PRINTFORMW 窓から侵入し倒れていた獣人を拘束する
	PRINTL
	PRINTFORMW マタタビの匂い袋は思った以上の効果で、簡単に泥棒猫を捕らえることができた！
	PRINTL
	PRINTFORMW 自警団に泥棒猫を引き渡し、クエストを達成した！
	PRINTL
	CALL QST_QUEST_32_EVENT_2

ELSEIF RESULT == 3
	CALL QST_GET_EVENT_FLAG(関連イベント２ID)
	IF RESULT == 1
		PRINTFORMW 生魚と縄で簡単なトラップを作ってみた。
		PRINTL
		PRINTFORMW あまり期待はしていないが、うまくいく可能性もあるだろう。草陰に隠れて様子を見ることにした。
		PRINTL
		PRINTFORMW すぐに、小屋のドアが開いて、泥棒猫が生魚を凝視している。
		PRINTFORMW 流石に雑に置きすぎたのだろうか？泥棒猫は魚を見つめたままピクリとも動かない。
		PRINTL
		PRINTFORMW 「うおおお！ごちそうにゃあああ！」
		PRINTFORMW これは失敗かと諦めようとしたその時、急に声を荒らげて魚へと飛びついた！
		PRINTL
		PRINTFORMW いや、食べるんかい！
		PRINTFORMW 反応が遅れたが仕掛けておいた縄を引く、縄が締まり泥棒猫の足首を捕らえ引きずり倒すと、そのまま逆さ吊りにする！
		PRINTL
		PRINTFORMW 「はーなーせー！離すにゃああぁ！！」
		PRINTL
		PRINTFORMW 吊られたまま暴れる泥棒猫を拘束して、捕らえることに成功した！
		PRINTL
		PRINTFORMW 特別賢いところは見えなかったが、自警団達はなんで苦戦していたのだろう……
		PRINTL
		;終了イベント
		QST_COOLTIME:QST_有効クエストID += 4
		QST_SV_QUEST_FLAG:QST_有効クエストID = 1
		WAIT
		MONEY += 6000
		QST_PRESTIGE_POINT += 20
		CALL COLOR_PRINTL(@"――　報酬として6000ディナリを得た", カラー_注意)
		CALL COLOR_PRINTW(@"――　名誉点を20点得た！", カラー_注意)
		;クエスト終了時の決まり文句
		TFLAG:クエスト_完了フラグ = 1
		CALL TRAIN_EXIT()

	ELSE
		PRINTFORMW 魚の干物と縄で簡単なトラップを作ってみた。
		PRINTL
		PRINTFORMW あまり期待はしていないが、うまくいく可能性もあるだろう。草陰に隠れて様子を見ることにした。
		PRINTL
		PRINTFORMW 数分と待たないうちに、何かがすごい勢いで集まってくる！
		PRINTFORMW それは危険な魔物ジャイアントビートルの群れだった！
		PRINTL
		PRINTFORMW いや、お前らが食べるんかい！
		PRINTL
		PRINTFORMW ジャイアントビートルはこちらに気づくと襲いかかってきた！
		;戦闘イベント
		CALL CC_INIT()
		FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
			CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
		NEXT
		CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
		CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
		CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
		CALL CLOSE_COMBAT()
		;CLOSE_COMBATの戻り値は攻撃側勝利 = 1,防衛側勝利 = 2
		IF RESULT == 1
			PRINTFORMW %QST_LEADER_NAME()%はジャイアントビートルの群れを追い払った！
			CALL CC_ADD_COMBAT_EXP(8)
			CALL CC_APPLY_CHARA_HP()
			CALL QST_SET_EVENT_FLAG(関連イベント２ID, 2)
		ELSE
			CALL CC_APPLY_CHARA_HP()
			CALL CC_ADD_COMBAT_EXP(4)
			CALL QST_QUEST_32_EVENT_10
		ENDIF
	ENDIF
ELSE

ENDIF

;-------------------------------------------------
;EV2
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_2
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_2
#DIM CONST EVENT_ID = 2
#DIM CONST 派生イベントID = 3
#DIM EVENT_FLAG
#DIM CHARA_ID
CALL QST_GET_EVENT_FLAG(派生イベントID)

PRINTL
PRINTFORMW ……………………
PRINTFORMW ………………
PRINTFORMW …………
PRINTL
PRINTL
PRINTFORMW 後日、村の倉庫に泥棒猫は捕えられていた
PRINTL
PRINTFORMW 「こいつだ、まちがいねぇ。おいオレの顔は覚えているよな？」
PRINTL
PRINTFORMW 向かいに立っていた男、自警団の団長が顔を突きつける。しかし、その顔は包帯でぐるぐる巻きにされていてよくわからない
PRINTL
PRINTFORMW 「しらねーにゃ」
PRINTFORMW 「この前この倉庫であったよな。あのときはオレの顔を踏み台にしやがって！こっちはな、鼻の骨が折れてんだよ！」
PRINTFORMW 「だから、しらんにゃ。ただの野良猫にやられたんじゃねーのにゃ？」
PRINTFORMW 「へ、その生意気な口をきけるのも、今のうちだぜ。……お前、マタタビ香に弱いんだってな？」
PRINTL
PRINTFORMW 「しらねー……にゃ？このニオイは……？」
PRINTL
PRINTFORMW 不意に首が折れるような勢いで頭を垂れた。数秒後にバッと頭を起こして何度も首を横に振っている。意識が飛んでいたのだろうか？
PRINTL
PRINTFORMW 「ニオイ……なんかで……どうにかなるわけ……」
PRINTFORMW 「お？もう効いてきたか？村の薬師に言って特別に作らせた、媚薬成分入りのマタタビ香だぜ」
PRINTL
PRINTFORMW 「……ふー、ふー、そんにゃ媚薬なんかで……どうにかできると……ふ～ふ～……」
PRINTL
PRINTFORMW などと言ってはいるものの、内股からは愛液が滴り、無意識のまま団長の股間に鼻を擦り付け、呼吸を荒くするその姿は、完全に発情したメス猫であった
PRINTL
PRINTFORMW 「躾のなってないクソ猫が！」
PRINTFORMW 団長は頭を抑えて泥棒猫を股間から遠ざける
PRINTL
PRINTFORMW 「にゃ、にゃんで……」
PRINTL
PRINTFORMW 泥棒猫は切なそうな唸りをあげながら団長を見つめて、虚空を相手にゆっくりと腰を振り続けていた
PRINTL
PRINTFORMW 「お前が何で捕まってるのかわかるよな？何をするべきがわかるよな？分かんねぇなら一生そうしていろ！」
PRINTL
PRINTFORMW 「う、う～……にゃ～～……
PRINTFORMW ……村のもの、盗んだのはウチにゃ。謝るにゃ！顔を踏んづけたのもウチにゃ！ごめんなさいにゃ！!
PRINTFORMW たくさん謝るにゃ！だから、ぬれぬれのおまんこにおちんちんくださいにゃ！！」
PRINTL
PRINTFORMW 数十秒と保たない内に本能が理性を凌駕し、泥棒猫は頭を床につけて土下座をするような体勢とると、みっともなく腰を振りながら謝罪の言葉を並べていく
PRINTL
PRINTFORMW 「よしよし。ようやく素直になったな！その罪はお前の体で返してもらうぜ！」
PRINTFORMW 「体で返すにゃ！おまんこずぽずぽして、赤ちゃんの部屋に子種ぴゅっぴゅしてほしいにゃ！！！」
PRINTL
PRINTFORMW その惨めな姿に満足した団長は意気揚々と泥棒猫を押し倒した……

;調教モードをクエスト -> 慰安に切替
FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安
TFLAG:調教ターン数 = 10

CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
;竿役生成
FOR LOCAL, 0, 1
	CALL QST_QUEST_32_CREATE_RAPER(0)
	CHARA_ID = RESULT
	CFLAG:CHARA_ID:調教参加フラグ = 1
	CFLAG:CHARA_ID:慰安参加者 = 1
	CFLAG:CHARA_ID:強制友好化 = 1
	CFLAG:CHARA_ID:慰安参加者非対象化 = 1
NEXT
;適当に被害者を追加
FOR LOCAL, 0, 1
	CALL QST_QUEST_32_CREATE_TRAIN_VICTIMS
NEXT
;調教後に呼び出される後続イベント
CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(派生イベントID)

;-------------------------------------------------
;EV3
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_3
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_3
#DIM CONST EVENT_ID = 3
#DIM EVENT_FLAG

PRINTL
PRINTFORMW 何度目かの精液が泥棒猫に注ぎ込まれる。その度に団長にしがみつき全身を震わせながら恍惚とした表情で団長の顔を舐め回していた
PRINTL
PRINTFORMW 「もっと、もっとほしいにゃ……」
PRINTL
PRINTFORMW 射精が終わると、泥棒猫はまた腰をグラインドさせる
PRINTL
PRINTFORMW 「くくく、馬鹿みたい腰を振って……少しは休ませろよ」
PRINTFORMW 「ダメにゃあぁ。まだ、気持ちよくなってぇ……きたばかりにゃああぁ……」
PRINTL
PRINTFORMW 泥棒猫はするりと体勢を入れ替えて、男にまたがり騎乗位の体勢で主導権を奪ってしまう
PRINTL
PRINTFORMW 「な……」
PRINTFORMW 動けないと思っていた団長は面をくらう。腕の拘束も解けていることにも気がついたようだ
PRINTL
PRINTFORMW 「なんか馴染んできたにゃぁ……」
PRINTL
PRINTFORMW 自信の腹部を撫でる泥棒猫の表情は相変わらず蕩けているが、それに似合わない馬鹿力で団長を押さえつけていてびくともしない
PRINTFORMW 「この！退きやがれ！」
PRINTFORMW 蹴りを使ってなんとか抜け出そうとするも、泥棒猫の動きを抑制することすらできていない
PRINTL
PRINTFORMW 団長は知らなかった。猫獣人はすばしっこいだけではなく、身体能力全般で人間を上回っている
PRINTFORMW それに精力も強く、発情した猫獣人は普通の成人男性の手に余る存在だということを、全く知らなかった
PRINTL
PRINTFORMW 「ふーふー……、……く、イクにゃ！イクぅうううっ！！」
PRINTFORMW 「お、おい、そんなに強く締めるな！……うっ」
PRINTL
PRINTFORMW 泥棒猫の腰のうねりに屈して、情けない喘ぎ声とともに精を吐き出してしまう
PRINTL
PRINTFORMW 「よ、よしわかった、解毒してやる！だから、はやくそこを退け！」
PRINTFORMW 「ふーふー……、染み渡ってるにゃぁ……。まだクラクラするけど、調子上がってきにゃあぁ……」
PRINTL
PRINTFORMW 香の力で思考能力を溶かしきり頭の中がセックス一色となった発情猫に、団長の声などまるでどといていない
PRINTL
PRINTFORMW 「ふにゃああぁ……赤ちゃん孕ませたくないのかにゃ？ウチは３人でも４人でも構わないにゃぁよ……」
PRINTL
PRINTFORMW 泥棒猫はまだまだ止まらない
PRINTFORMW 反撃することも叶わず一方的に搾り取られ続けた団長は、押さえつけられたまま射精を繰り返し意識を失ってしまうのであった
PRINTW
PRINTL
PRINTFORMW …………
PRINTL
PRINTFORMW やがて、見張り交代の時間になり、他の自警団員がおとずれるだろう
PRINTL
PRINTFORMW そして、倉庫の中心で無様に倒れている全裸の男を発見して驚愕する
PRINTFORMW その傍らに「またセックスしてあげてもいいにゃ♥」と書かれた手紙が残されているのを見て、泥棒猫に逃げられてしまったのだと確信するはずだ
PRINTL
PRINTFORMW 何はともあれ、すでにクエストは達成されている
PRINTFORMW 後の失態は自警団の責任である
PRINTL

QST_SV_QUEST_FLAG:QST_有効クエストID = 1
QST_COOLTIME:QST_有効クエストID += 4

WAIT

MONEY += 6000
QST_PRESTIGE_POINT += 20
CALL COLOR_PRINTL(@"――　報酬として6000ディナリを得た", カラー_注意)
CALL COLOR_PRINTW(@"――　名誉点を20点得た！", カラー_注意)

;クエスト終了時の決まり文句
TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

;-------------------------------------------------
;EV4
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_4

@QST_QUEST_32_EVENT_4

;-------------------------------------------------
;EV10
;-------------------------------------------------
;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_10
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS:0 = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_10
#DIM CONST EVENT_ID = 10
#DIM CONST 派生イベントID = 11
#DIM EVENT_FLAG

#DIM DYNAMIC SYO
#DIM DYNAMIC CHARA_ID
#DIM DYNAMIC MOB_ID

$ASK_LOOP_WIN_14
CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0 ;味方の調教参加者は後で選択するので、フラグ付きでモブを生成する前に一度初期化

PRINTL
PRINTFORML 経験豊富な女性なら引き受けてくれるかもしれない……(性技3以上、一名選択)(0名選択時キャンセル)
CALL SELECT_CHARA_LIST_INIT
CALL SELECT_CHARA_LIST_MULTI_ONLY_LOGIC_SLG(6, "PARTY_MEMBER", "NONE")
SYO = ABL:(SELECTED_CHARA:0):性技
;PRINTFORMW 性技{SYO}
IF SELECTED_CHARA_NUM == 0
	PRINTFORMW やはりやめておこう……
	RETURN
ENDIF
IF SELECTED_CHARA_NUM >= 2
	PRINTFORMW 一人だけ選択してください
	GOTO ASK_LOOP_WIN_14
ENDIF
IF !IS_FEMALE(SELECTED_CHARA:0)
	PRINTFORMW 女性を選択してください
	GOTO ASK_LOOP_WIN_14
ENDIF
IF SYO <= 3
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は嫌がっている……
	GOTO ASK_LOOP_WIN_14
ENDIF
CALL COLOR_PRINTW(@"%ANAME(SELECTED_CHARA:0)%は奥の部屋に連れ込まれると、匠の前に座り股を開いた……", カラー_ピンク)

;調教モードをクエスト -> 慰安に切替
FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安
TFLAG:調教ターン数 = 15

ITEM:A_ローター = 1
ITEM:A_クリキャップ = 1
ITEM:A_ニプルキャップ = 1
ITEM:A_媚薬 = 99

FOR LOCAL, 0, SELECTED_CHARA_NUM
	CFLAG:(SELECTED_CHARA:LOCAL):主導除外 = 1
	CFLAG:(SELECTED_CHARA:LOCAL):凌辱被害者フラグ = 1
	CFLAG:(SELECTED_CHARA:LOCAL):調教参加フラグ = 1
NEXT

;竿役生成
FOR LOCAL, 0, 1
	CALL QST_QUEST_32_CREATE_RAPER_2(0)
	MOB_ID = RESULT
	;		CALL ADD_MPLY(MOB_ID)
	;		CALL SET_EQUIP(GETNUM(TRAINNAME, "ローター"), 1)
	;		CALL SET_EQUIP(GETNUM(TRAINNAME, "クリキャップ"), 1)
	;		CALL DEL_MPLY(MOB_ID)
	CFLAG:MOB_ID:調教参加フラグ = 1
	CFLAG:MOB_ID:慰安参加者 = 1
	CFLAG:MOB_ID:強制友好化 = 1
	CFLAG:MOB_ID:慰安参加者非対象化 = 1
NEXT
MAP_SET @"QUEST_{QST_有効クエストID}_MAP", "CHARA_ID", TOSTR(SELECTED_CHARA:0)
;調教後に呼び出される後続イベント
CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(派生イベントID)

RETURN

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_11
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS:0 = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_11
#DIM CONST EVENT_ID = 11
#DIM CONST 関連EVENT_ID = 103
#DIM DYNAMIC CHARA_ID

CHARA_ID = TOINT(MAP_GET(@"QUEST_{QST_有効クエストID}_MAP", "CHARA_ID"))
PRINTL
PRINTFORMW 「ふぅ……必要な分は採取できたな」
PRINTL
PRINTFORMW 匠は膣から膣液を掬いだし粘度を確かめるように指でこねている
PRINTL
PRINTFORMW 「中々、質は良さそうだな。これを使ってつくってやる。ちょっと待ってな」
PRINTL
PRINTFORMW そう声をかけられても%ANAME(CHARA_ID)%は肩で息をするだけで返事をできるような状態ではなくなっていた
PRINTFORMW そんな%ANAME(CHARA_ID)%の傍らに腰を下ろすと、指を二本蜜壺へと突っ込み追加の素材を調達しながら作業を開始した……
PRINTL

CALL COLOR_PRINTW(@"――　マタタビの匂い袋を手に入れた！（アイテムには表示されません）", カラー_注意)
CALL QST_SET_EVENT_FLAG(関連EVENT_ID, 2)

;-------------------------------------------------
;EV100 -
;-------------------------------------------------
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_100
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "倉庫番の自警団"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_100
#DIM CONST EVENT_ID = 100
#DIM EVENT_FLAG

PRINTFORMW 「今はここには何も保管してないんだ。泥棒猫にかなりやられたからね……」
PRINTFORMW 「ん？ああ、それかい。匂い袋だよ。だたの虫除けさ。特に価値はないものだから、片付けておいてよ」
PRINTL
CALL COLOR_PRINTW(@"――　虫除けの匂い袋を手に入れた！（アイテムには表示されません）", カラー_注意)
CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_101
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "自警団詰め所"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_101
#DIM CONST EVENT_ID = 101
#DIM EVENT_FLAG

PRINTFORMW 「団長ならお休みだよ。例の泥棒猫にやられて顔面を負傷したらしいんだ。許せないよな」

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_102
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "村長宅"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_102
#DIM CONST EVENT_ID = 102
#DIM EVENT_FLAG

PRINTFORMW 村長の家で自警団員が調べ物をしていた。
PRINTFORMW 「本で調べたんだけど、猫型の獣人はマタタビの香りに弱いらしい。
PRINTFORMW 南西の森にマタタビの木があるらしいし、泥棒猫をそこに誘い込めば、なんとかならないのかな……？」

CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_103
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "工房"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_103
#DIM CONST EVENT_ID = 103
#DIM CONST 関連イベントID = 110
#DIM EVENT_FLAG
#DIM TARGET_ID

CALL QST_GET_EVENT_FLAG(関連イベントID)
IF RESULT == 1
	CALL QST_GET_EVENT_FLAG(EVENT_ID)
	IF RESULT != 2

		CALL QST_GET_EVENT_FLAG(EVENT_ID)
		EVENT_FLAG = RESULT

		PRINTL
		PRINTFORML 「ふ～む、協力してもいいんだが、こちらの願いも聞いてくれねぇか？」
		PRINTL
		PRINTFORML 話を聞いてみると、工房では素材となる膣液が必要らしい
		PRINTFORML 普段は村人から採取させてもらっているが、最近は村人の流出が続き、素材が不足している
		PRINTFORML だから、膣液を少々分けてもらいたいと言うことだ
		PRINTL
		PRINTFORML 協力するべきだろうか……？
		PRINTL
		CALL ASK_MULTI_JUDGE("協力する", 1, "なんとか交渉する (会話判定)",EVENT_FLAG == 1 ? 0 # 1, "保留する", 1)
		SELECTCASE RESULT
			CASE 0
				CALL QST_QUEST_32_EVENT_10
			CASE 1
				CALL QST_PARTY_ROLL("話術", 50, 0)
				TARGET_ID = RESULT:1
				IF RESULT
					PRINTFORMW 「そこまで言われちゃ、仕方ねぇな……」
					PRINTFORMW 職人を何度もおだてながらお願いすると、満更でもない様子で匂い袋を作ってくれた
					PRINTL
					CALL COLOR_PRINTW(@"――　マタタビの匂い袋を手に入れた！（アイテムには表示されません）", カラー_注意)
					CALL QST_SET_EVENT_FLAG(EVENT_ID, 2)
				ELSE
					PRINTFORMW 「ダメだダメだ。オレも忙しいんだ。帰ってくれ」
					CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
				ENDIF
			CASEELSE
		ENDSELECT
	ELSE
		PRINTFORMW 『かわいいあの子も大満足！
		PRINTFORMW 　　　夜の香、大好評販売中！！』
		PRINTL
		PRINTFORMW どうやら、この工房は媚薬香が主な収入源みたいだ
	ENDIF
ELSE
	PRINTFORMW 『かわいいあの子も大満足！
	PRINTFORMW 　　　夜の香、大好評販売中！！』
	PRINTL
	PRINTFORMW どうやら、この工房は媚薬香が主な収入源みたいだ
ENDIF

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_105
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "山菜摘みの村娘"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_105
#DIM CONST EVENT_ID = 105
#DIM EVENT_FLAG

PRINTFORMW 「泥棒は魚の干物が大好物らしいのよ。盗みに入られる度に盗られてるんだって
PRINTFORMW 盗むんなら、もっとお金になりそうなもの……なんてこの村はなかったわね
PRINTFORMW はぁ、私も早くこんな村から出ていきたいな……」

CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)

;-------------------------------------------------
;EV110 - 村以外
;-------------------------------------------------
;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_110
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "森"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_110
#DIM CONST EVENT_ID = 110
#DIM CONST 関連イベントID = 102
#DIM EVENT_FLAG

CALL QST_GET_EVENT_FLAG(関連イベントID)
IF RESULT == 1

	CALL QST_GET_EVENT_FLAG(EVENT_ID)
	IF RESULT != 1
		PRINTFORMW 村人の話では、この辺りに泥棒猫の弱点になりうるマタタビの木があるらしい。
		PRINTFORMW さて、どうしようか……
		PRINTL
		CALL QST_ROLL_MULTI("知識,観察,身体","本を頼りに探す(知識),観察力を頼りに探す(観察),足で探す(身体),", "40,40,40,", 3)
		;成功！
		IF RESULT == 1
			PRINTL
			PRINTFORMW マタタビの木を発見することができた
			PRINTFORMW 枝、葉、皮などを少しずつ採取させてもらう
			PRINTL
			PRINTFORMW 後は、これで匂い袋を作ってもらえばいいのだろうか？
			CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)

			;失敗！
		ELSEIF !RESULT
			PRINTL
			PRINTFORMW ……見つからない
			PRINTFORMW しかし、近くにあるはずなので、もう少し探してみよう……
		ENDIF
	ELSE
		PRINTFORMW ここに用はない……
	ENDIF
ELSE
	PRINTFORMW ここに用はない……
ENDIF

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_111
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "釣り人の小屋"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_32_EVENT_111
#DIM CONST EVENT_ID = 111
#DIM CONST 関連イベントID = 105
#DIM EVENT_FLAG

CALL QST_GET_EVENT_FLAG(関連イベントID)
IF RESULT == 1

	CALL QST_GET_EVENT_FLAG(EVENT_ID)
	IF RESULT != 1
		PRINTFORMW 猟師に事情を説明して、泥棒猫を捕えるための魚を分けてもらえることになった
		PRINTFORMW さて、どうしようか……
		PRINTL
		CALL ASK_YN("生魚をもらう", "魚の干物をもらう")
		IF RESULT == 0
			CALL COLOR_PRINTW(@"――　生魚を手に入れた！（アイテムには表示されません）", カラー_注意)
			CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
		ELSEIF RESULT == 1
			CALL COLOR_PRINTW(@"――　魚の干物を手に入れた！（アイテムには表示されません）", カラー_注意)
			CALL QST_SET_EVENT_FLAG(EVENT_ID, 2)
		ENDIF
	ELSE
		PRINTFORMW 2，3人の漁師が桟橋で釣りをしている
	ENDIF
ELSE
	PRINTFORMW 2，3人の漁師が桟橋で釣りをしている
ENDIF

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_112
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_32_EVENT_112
#DIM CONST EVENT_ID = 112

PRINTFORMW 道の真ん中に立て札が立てられており、その近くで村人が見張り番をしていた
PRINTL
PRINTFORMW 「この先に、大量のジャイアントビートルが住み着いてしまって、今は道を封鎖しているんですよ。
PRINTFORMW ずっと監視をしているんですけど、村まではこないみたいですね」
PRINTL
PRINTFORMW 「いつ頃から現れたのかって？丁度、泥棒猫が現れたぐらい後だったかと……」

;-------------------------------------------------
;EV120 - 戦闘
;-------------------------------------------------
;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_120
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_32_EVENT_120
#DIM CONST EVENT_ID = 120

PRINTFORMW ブーン……と低重音が聞こえた。
PRINTFORMW なんだろう？と思っていたその時、山の向こうから巨大な虫の群れが飛んできた！
;戦闘イベント
CALL CC_INIT()
FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
	CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
NEXT
CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)

CALL CLOSE_COMBAT()
;CLOSE_COMBATの戻り値は攻撃側勝利 = 1,防衛側勝利 = 2
IF RESULT == 1
	PRINTFORMW %QST_LEADER_NAME()%はジャイアントビートルの群れを追い払った！
	CALL CC_ADD_COMBAT_EXP(8)
	CALL CC_APPLY_CHARA_HP()
	CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
ELSE
	CALL CC_APPLY_CHARA_HP()
	CALL CC_ADD_COMBAT_EXP(4)
	CALL QST_QUEST_32_EVENT_14
ENDIF

;-----
;イベント登録
@QST_ADD_EVENT_QUEST_32_EVENT_121
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS:0 = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_121
#DIM CONST EVENT_ID = 121
#DIM CONST 関連イベントID = 100

CALL QST_GET_EVENT_FLAG(EVENT_ID)
IF RESULT == 1

ELSE
	CALL QST_GET_EVENT_FLAG(関連イベントID)
	IF RESULT == 1
		PRINTFORMW 無数のジャイアントビートルが飛び回っている。ここは危険そうだが、こんなときは……
		PRINTL
		CALL ASK_YN("虫除けの匂い袋を使う", "気合で強行突破")
		IF RESULT == 0
			PRINTFORMW 匂いがあたりに広がっていくと、ジャイアントビートルはこちらから距離を起き、やがて飛び去ってしまった
			PRINTFORMW この匂いは巨大な虫の魔物にも効果があるようだ。虫除けのおかげで、安全に山道を抜けることができた
			CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
		ELSEIF RESULT == 1
			PRINTFORMW 谷底の道に侵入するとジャイアントビートルの群れはこちらの進路を塞ぐように展開した！
			;戦闘イベント
			CALL CC_INIT()
			FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
				CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
			NEXT
			CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
			CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
			CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
			CALL CC_ADDMOB("DEFENDER", "ジャイアントビートル", 2700, 2700, 50, 0, 1, WPN_脅威選定_低耐久)
			CALL CLOSE_COMBAT()
			;CLOSE_COMBATの戻り値は攻撃側勝利 = 1,防衛側勝利 = 2
			IF RESULT == 1
				PRINTFORMW %QST_LEADER_NAME()%はジャイアントビートルの群れを追い払った！
				CALL CC_ADD_COMBAT_EXP(8)
				CALL CC_APPLY_CHARA_HP()
				CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
			ELSE
				CALL CC_APPLY_CHARA_HP()
				CALL CC_ADD_COMBAT_EXP(6)
				CALL QST_QUEST_32_EVENT_14
			ENDIF
		ENDIF
	ELSE
		PRINTFORMW 無数のジャイアントビートルが飛び回っている。ここは危険そうだ……
		CALL HO_MOVE_MASTER(9)
	ENDIF
ENDIF

;-------------------------------------------------
;EV10
;敗北イベント後の共通エンディング（クエスト失敗）
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_14
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_14
#DIM CONST EVENT_ID = 10
#DIM EVENT_FLAG

PRINTFORMW 巨大な虫は思った以上に強敵だった。なんとか近隣の町まで逃げることに成功した……

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

;-------------------------------------------------
;EV13
;（クエスト失敗）
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_13
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_13
#DIM CONST EVENT_ID = 13
#DIM EVENT_FLAG

PRINTL
PRINTFORMW %QST_LEADER_NAME()%は相手に逃げる時間を与えまいと勢いよく扉を蹴破り、小屋に突入する
PRINTL
PRINTFORMW 「不法侵入は犯罪にゃ。侵入者は爆破されても文句は言えないにゃ」
PRINTL
PRINTFORMW しかし、人の声がすれど泥棒猫の姿は見えない
PRINTFORMW どこにいるのか？と周囲を見回した瞬間、足元が爆発して崩れ落ちる！
PRINTL
PRINTFORMW 落とし穴だ！
PRINTL
PRINTFORMW なんとか致命傷は避けたが、しばらく激痛と爆発の白煙で身動きをとれなくなってしまう
PRINTL
PRINTFORMW 落とし穴から這い出たときには、もう小屋の中に人の気配はしなくなっていた
PRINTFORMW 泥棒猫を捕らえることはできなかった……
PRINTL
PRINTFORMW 足を引きずりながら近隣の町まで撤退した……

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

;-------------------------------------------------
;EV12
;（クエスト失敗）
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_32_EVENT_12
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_32_EVENT_12
#DIM CONST EVENT_ID = 12
#DIM EVENT_FLAG

PRINTL
PRINTFORMW この一箇所だけ窓が開け放たれている。あからさまに怪しいがここから侵入するのがベターだろうと判断し
PRINTFORMW %QST_LEADER_NAME()%を先頭に突入した！
PRINTL
PRINTFORMW 「にゃにゃにゃっ！どこから入ってくるのにゃ！」
PRINTL
PRINTFORMW 扉の裏に小さく丸まり罠のスイッチを持って待機していた猫の獣人を発見する。
PRINTFORMW こいつが泥棒猫で間違いないだろう。しかし、何故窓を開けておいたのか？
PRINTL
PRINTFORMW 「匂いがこもるのは嫌だから窓を開けておくなんて普通のことにゃ。お前は不潔な人間なのかにゃ？」
PRINTL
PRINTFORMW 何らかの罠があったわけではないようだ
PRINTFORMW 村人のいう切れ者なイメージからは、ちょっとズレている気がする……
PRINTL
PRINTFORMW 「しゃーないにゃ、作戦変更にゃ！」
PRINTL
PRINTFORMW 距離を詰めようとすると、泥棒猫はドアを開けて逃げ出した！
PRINTFORMW 慌ててそれを追いかけようとするが、入り口付近が爆発し白煙を巻き上げ視界を奪う。
PRINTL
PRINTFORMW それでも、逃がすわけにはいかない。煙の中に足を踏み出すと、足元に床がないことに気がついた！
PRINTL
PRINTFORMW 落とし穴だ！
PRINTL
PRINTFORMW 落とし穴から這い出たときには、もう小屋の中に人の気配はしなくなっていた。
PRINTFORMW どうやら取り逃がしてしまったようだ……
PRINTL
PRINTFORMW その後、泥棒猫が戻ってくることはなかった……

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

;-------------------------------------------------
;以下イベントリストで管理する必要のない処理,イベント固有の関数など
;-------------------------------------------------
@QST_QUEST_32_DEFEAT_EVENT

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_32_CREATE_TRAIN_VICTIMS()
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = 泥棒猫

CALL CREATE_RANDOM_CHARA(0, -1, 1)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
	RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = 1
ABL:対象:性知識 =  3
ABL:対象:Ｃ感 = 6
ABL:対象:Ｖ感 = 8
ABL:対象:Ａ感 = 3
ABL:対象:Ｂ感 = 8
ABL:対象:奉仕 = 1
ABL:対象:性技 = 9
ABL:対象:欲望 = 10
ABL:対象:性交 = 10
ABL:対象:サド = RAND(0, 3)
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 300)
CFLAG:対象:調教参加フラグ  = 1
CFLAG:対象:主導除外 = 1
CFLAG:対象:慰安モブ = 1
CFLAG:対象:凌辱被害者フラグ = 1

;猫耳は固定
FACE_PARTS:対象:IMG_帽子 '= "CC1_帽子_ケモミミ_1"
;後髪とカラーを揃える
COLOR_MATRIX_NAME:対象:IMG_帽子 = %COLOR_MATRIX_NAME:対象:IMG_後髪%

RETURN

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_32_CREATE_RAPER(SEX)
#DIM SEX
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = 団長

CALL CREATE_RANDOM_CHARA(0, -1, SEX)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
	RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 =  15
ABL:対象:性知識 = 2
ABL:対象:奉仕 = 1
ABL:対象:性技 = 2
ABL:対象:欲望 = RAND(4, 8)
ABL:対象:性交 = RAND(1, 2)
ABL:対象:射精 = RAND(1, 2)
ABL:対象:サド = 3
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 300)
CFLAG:対象:調教参加フラグ = 1
CFLAG:対象:慰安モブ = 1

COM_TENDENCY:対象:GETNUM(TRAINNAME, "代わる代わる挿入") = 3
COM_TENDENCY:対象:GETNUM(TRAINNAME, "代わる代わるＡ挿入") = 3
COM_TENDENCY:対象:GETNUM(TRAINNAME, "順番に挿入") = 3
COM_TENDENCY:対象:GETNUM(TRAINNAME, "順番にＡ挿入") = 3

LOCALS = %S_R("male01/male02/male03/shota01/shota02")%
CSTR:対象:顔グラファイル名 '= @"%LOCALS%.webp"
CSTR:対象:キャラ顔グラ '= @"%LOCALS%.webp"
CFLAG:対象:ポートレイト画像タイプ = 2
CFLAG:対象:汎用口上パターン = 2002
CFLAG:対象:口上カラーコード = カラー_選択不可

RETURN 対象

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_32_CREATE_RAPER_2(SEX)
#DIM SEX
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = 工房の匠

CALL CREATE_RANDOM_CHARA(0, -1, SEX)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
	RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
MAXBASE:対象:体力 = 2700
MAXBASE:対象:気力 = 2700
BASE:対象:体力 = MAXBASE:対象:体力
BASE:対象:気力 = MAXBASE:対象:気力
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 =  5
ABL:対象:性知識 = 5
ABL:対象:奉仕 = 6
ABL:対象:性技 = 5
ABL:対象:欲望 = RAND(4, 8)
ABL:対象:性交 = RAND(2, 4)
ABL:対象:射精 = RAND(1, 3)
ABL:対象:サド = 3
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 300)
CFLAG:対象:調教参加フラグ = 1
CFLAG:対象:慰安モブ = 1

VARSET COM_FORBIDDEN:対象:0, 1
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "愛撫") = 0
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "クンニ") = 0
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "服を破る") = 0
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "ローター") = 0
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "クリキャップ") = 0
COM_FORBIDDEN:対象:GETNUM(TRAINNAME, "ニプルキャップ") = 0

LOCALS = %S_R("male01/male02/male03/shota01/shota02")%
CSTR:対象:顔グラファイル名 '= @"%LOCALS%.webp"
CSTR:対象:キャラ顔グラ '= @"%LOCALS%.webp"
CFLAG:対象:ポートレイト画像タイプ = 2
CFLAG:対象:汎用口上パターン = 2002
CFLAG:対象:口上カラーコード = カラー_選択不可

RETURN 対象

path: ERB/QUEST/クエストデータ/QUEST_32_泥棒猫を捕まえて！/QUEST_32_泥棒猫を捕まえて！.ERB


code:
MAP_NAME = "地方の村"
MAP_IMAGE = "bg03.webp"
PATH_COLOR = "0xff00"
PATH_ALPHA = "0x7d"
NODE_BASE_COLOR = "0x2c2c2c"

repo_name: pervysquirrelz/erafl

license: unknown


code:
<DocumentElement>
  <GMAPDATA>
    <id>638135971342404270</id>
    <NODE_ID>0</NODE_ID>
    <NODE_NAME>街道</NODE_NAME>
    <POS_X>540</POS_X>
    <POS_Y>320</POS_Y>
    <PATH_LIST>1,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971426815879</id>
    <NODE_ID>1</NODE_ID>
    <NODE_NAME>麓の村</NODE_NAME>
    <POS_X>420</POS_X>
    <POS_Y>200</POS_Y>
    <PATH_LIST>0,2,6,9,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971448656173</id>
    <NODE_ID>2</NODE_ID>
    <NODE_NAME>街道</NODE_NAME>
    <POS_X>300</POS_X>
    <POS_Y>260</POS_Y>
    <PATH_LIST>1,3,4,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971479074879</id>
    <NODE_ID>3</NODE_ID>
    <NODE_NAME>釣り堀</NODE_NAME>
    <POS_X>280</POS_X>
    <POS_Y>220</POS_Y>
    <PATH_LIST>1,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971448656174</id>
    <NODE_ID>4</NODE_ID>
    <NODE_NAME>街道</NODE_NAME>
    <POS_X>160</POS_X>
    <POS_Y>240</POS_Y>
    <PATH_LIST>2,5,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971642223564</id>
    <NODE_ID>5</NODE_ID>
    <NODE_NAME>森</NODE_NAME>
    <POS_X>140</POS_X>
    <POS_Y>300</POS_Y>
    <PATH_LIST>4,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971679283709</id>
    <NODE_ID>6</NODE_ID>
    <NODE_NAME>登山道</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>140</POS_Y>
    <PATH_LIST>1,7,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971722553106</id>
    <NODE_ID>7</NODE_ID>
    <NODE_NAME>山奥の小屋</NODE_NAME>
    <POS_X>500</POS_X>
    <POS_Y>120</POS_Y>
    <PATH_LIST>6,10,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971722553107</id>
    <NODE_ID>8</NODE_ID>
    <NODE_NAME>山頂</NODE_NAME>
    <POS_X>480</POS_X>
    <POS_Y>180</POS_Y>
    <PATH_LIST>7,9,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971722553108</id>
    <NODE_ID>9</NODE_ID>
    <NODE_NAME>裏道</NODE_NAME>
    <POS_X>500</POS_X>
    <POS_Y>240</POS_Y>
    <PATH_LIST>1,10,</PATH_LIST>
  </GMAPDATA>

  <GMAPDATA>
    <id>638135971722553109</id>
    <NODE_ID>10</NODE_ID>
    <NODE_NAME>裏道</NODE_NAME>
    <POS_X>520</POS_X>
    <POS_Y>180</POS_Y>
    <PATH_LIST>7,9,</PATH_LIST>
  </GMAPDATA>
</DocumentElement>


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_33:サンプルクエスト
;-------------------------------------------------
@QST_TITLE_QUEST_33
RESULTS '= "娼婦の競り市"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_33
RESULTS '= "単発,イベント,"

;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_33
RESULTS:0 '= "とある自由都市の歓楽街では、女を買う権利が競りに掛けられることはさほど珍しくない"
RESULTS:1 '= "これは舞台上の女を客の男が見定め、女の前に置かれた箱に入札札を入れていき"
RESULTS:2 '= "一番高い金額を提示した者と一夜を過ごすというイベントだ"
RESULTS:4 '= "世界各地の様々な種族、様々なタイプの女が集まり"
RESULTS:5 '= "ありとあらゆる紳士のニーズに応えられるイベントだと謳っている"
RESULTS:6 '= "どのような身分、どのような女冒険者でも歓迎しているので"
RESULTS:7 '= "己の価値に自信のある者は奮って参加してほしい"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_33
RESULTS:0 '= @"難易度：@C:{カラー_注意}@命の危険はない@/C@"
RESULTS:1 '= "報酬：8,000ディナリ"
RESULTS:2 '= "推奨パーティ人数:1人(女性のみ)　　　必要性技スキル：誘蛾の色香LV1以上"
RESULTS:3 '= "備考:なし"
RESULTS:5 '= @"@C:{カラー_選択不可}@「大きなイベントで安全には配慮しているらしいな」@/C@"
RESULTS:6 '= @"@C:{カラー_選択不可}@「まぁ、興味があるなら参加してみたらいいさ」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_33(QUEST_ID)
#DIM QUEST_ID

;QUEST_8_薬草摘みが攻略済みであること
SIF !QST_SV_QUEST_FLAG:8
    RETURN 0
SIF QST_SV_QUEST_FLAG:QUEST_ID == 2
    RETURN 0
RETURN 1

;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_33
RESULTS '= "DIALOGUE"

;-------------------------------------------------
;クエスト固有の開始条件
;[このクエストを開始する]押下時に呼ばれる
;女性のみ・誘蛾の芳香LV1以上が必要
;-------------------------------------------------
@QST_CAN_START_QUEST_33(QUEST_ID)
#DIM QUEST_ID
#DIM DYNAMIC ERR_CNT
#DIM DYNAMIC CHARA_ID
LOCALS '= ""

IF LIST_COUNT(_LIST_QST_PARTY) >= 2
    CALLF TAG_PRINT(@"@C:{カラー_注意}@定員オーバーです@/C@", 1)
    WAIT
    RETURN 0
ENDIF

FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
    CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
    IF !IS_FEMALE(CHARA_ID)
        ERR_CNT ++
        LOCALS += @"<%ANAME(CHARA_ID)%>"
    ENDIF
    CALL SKILL_GET_LEVEL(CHARA_ID, スキル_大分類_性技, "SEDUCTION")
    IF RESULT < 1
        ERR_CNT ++
        LOCALS += @"<%ANAME(CHARA_ID)%>"
    ENDIF
NEXT
IF ERR_CNT
    CALLF TAG_PRINT(@"@C:{カラー_注意}@参加条件を満たしてないキャラが編成されています(女性かつ性技スキル:誘蛾の色香LV1以上が必要)@/C@", 1)
    CALLF TAG_PRINT(@"@C:{カラー_注意}@条件を満たしていないキャラ：%LOCALS%@/C@", 1)
    WAIT
    RETURN 0
ELSE
    RETURN 1
ENDIF

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストは当該関数のCALLのみ行う
;-------------------------------------------------
@QST_INTRO_QUEST_33
#DIM  DYNAMIC CHARA_ID

PRINTFORMW 日が沈む頃、オークションは始まった
PRINTL
PRINTFORMW 参加した女性は100人以上。%QST_LEADER_NAME()%のいるホールの舞台の袖には20人程度が待機している
PRINTFORMW 舞台上に明かりが灯ると、参加者たちが順番に舞台に上がっていく
PRINTFORMW %QST_LEADER_NAME()%も他の参加者と同様の何も隠せていない紐ビキニ姿で舞台の上に立ち、名前とアピールポイントを書いたプレートを掲げた
PRINTFORMW 男たちのゲスな歓声が上がると、少々気恥ずかしくなる

PRINTL
PRINTFORMW そして、全ての女性が入場が終わると、今度は男たちが席を立ち、舞台の最前列に集まった
PRINTFORMW 男たちは舞台の上には上がれないが、下から女性の大事な部分をまじまじと覗き込みながら、こっちの色がいいとか、いくらで入札するとかを話し合っている
PRINTL
PRINTFORMW 羞恥心から視線を隣に逃がすと、そこに見覚えるある女性がいた
PRINTFORMW それはギルドの薬草採取地で案内人をしていた女性だった
PRINTL
PRINTFORMW 「あなたは、%QST_LEADER_NAME()%だったよね？あなたもこんな仕事してるのね」
PRINTL
PRINTFORMW 目が合うと向こうから話しかけてきた。どうやら向こうも覚えていたようだ
PRINTL
PRINTFORMW 「あなたはパーティにやらされるの？それとも、個人で来てるの？」
PRINTFORMW 「……ふ～ん、そうなのね。私？私は自分の意志かなぁ……。最初はね、彼のためにもっと……」
PRINTL
PRINTFORMW 「おい、ねーちゃんよ！隣と話してないで、こっちにアピールしてくれよ！」
PRINTL
PRINTFORMW 話がはじまろうかというところで、舞台の下から魔の悪い男に遮られてしまう
PRINTFORMW 案内人はそれに対して怒った様子も見せず媚びた声で返事をした
PRINTL
PRINTFORMW 「は～い。私はね、男の人に無理やり押さえつけられて奴隷にされちゃうプレイが大好きです♥
PRINTFORMW 凶悪なおちんぽでわたしのばかまんこをたくさん躾けて立派な奴隷にしてください♥」
PRINTFORMW 「いいねぇ、オレも好きだぜ、そういうのは。隣のねーちゃんもやってみせろよ」
PRINTL
PRINTFORMW 男に指をさされた%QST_LEADER_NAME()%も、案内人と同じ様にプレートに書いた文字を読み上げる
PRINTL
PRINTFORMW 「ん～。なんか物足りねぇな」
PRINTL
PRINTFORMW ボヤきながら案内人にだけ入札札を入れて去っていく
PRINTFORMW 男の反応に%QST_LEADER_NAME()%は少しイラッとする。一方で隣の案内人は勝ち誇ったかのような笑みをうかべていた

PRINTFORMW 直にオークションタイムも終わり、会話の続きをすることもなく待機室へと移動させられた……

PRINTW
PRINTL
PRINTFORMW …………
PRINTW
PRINTL

PRINTFORMW 案内されたのは個室ではなく大部屋だった
PRINTFORMW 中央の巨大なベッドでは、すでに２人の女性を肥満体型の身なりのよい紳士風の男が侍らせている
PRINTL
PRINTFORMW 「今回買えたのはこれで全員か？」
PRINTFORMW 「はい。以上となります」
PRINTFORMW 「ふむ。少ないな。このイベントも穴場ではなくなって来たということか？もう下がって良いぞ」
PRINTFORMW 「それでは、ごゆるりとお楽しみください」
PRINTL
PRINTFORMW 「何をしている？早くこちらに来なさい」
PRINTL
PRINTFORMW 紳士風の男がベッドをぽんぽんと叩き%QST_LEADER_NAME()%をベッドに誘う
PRINTFORMW そこへ腰を下ろすと、紳士風の男は女たちをまとめて押し倒した……

;竿役生成
FOR LOCAL, 0, 3
    IF LOCAL == 0
        CALL QST_QUEST_33_CREATE_VICTIMS(0)
        CHARA_ID = RESULT
        CFLAG:CHARA_ID:調教参加フラグ = 1
        CFLAG:CHARA_ID:慰安参加者 = 1
        CFLAG:CHARA_ID:強制友好化 = 1
        CFLAG:CHARA_ID:慰安参加者非対象化 = 1
    ELSE
        CALL QST_QUEST_33_CREATE_VICTIMS_2(1)
        CHARA_ID = RESULT
        CFLAG:CHARA_ID:調教参加フラグ = 1
        CFLAG:CHARA_ID:強制友好化 = 1
        CFLAG:CHARA_ID:主導除外 = 1
    ENDIF
NEXT

FOR LOCAL, 0, QST_PARTYNUM
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):主導除外 = 1
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):調教参加フラグ = 1
NEXT

FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安

CALL ADD_EVENTTRAIN_CALLEE("EVENT_QUEST_33_INTRO_SET_TFLAG")
CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(1)
CALL START_TRAIN_COMMON
RETURN

;-------------------------------------------------
; TFLAGはTRAIN開始時に初期化されるため、
; クエスト側でTFLAGを制御したい場合はEVENTTRAIN_CALLEEを使う
;-------------------------------------------------
@EVENTTRAIN_EVENT_QUEST_33_INTRO_SET_TFLAG
TFLAG:調教ターン数 = 20

;-------------------------------------------------
;EV1
;エンディング
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_33_EVENT_1
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_33_EVENT_1
#DIM CONST EVENT_ID = 1
#DIM EVENT_FLAG
#DIM TARGET_ID

PRINTL
PRINTFORMW ……………………
PRINTFORMW ………………
PRINTFORMW …………
PRINTL

PRINTFORMW 夜が明けてイベントは終わる
PRINTFORMW 控え室のソファーでウトウトしながら休憩していると、いつの間にか案内人が隣に来ていた
PRINTL
PRINTFORMW 「ここ、座っていい？」
PRINTL
PRINTFORMW そう聞かれたときには、すでに座ってるものである
PRINTL
PRINTFORMW 「さっきの話の続きでも、しようかなって。……どこまで、話したっけ？
PRINTFORMW まぁいいや、付き合い始めの頃にさ、彼と二人で薬屋さんをやろうって話になってさ。
PRINTFORMW そのための元金を集めたくて、ギルドの先輩に相談したのが最初だったかな。
PRINTFORMW 経験もないわけじゃなかったし、あの頃は彼のためにと思ってたのかなぁ……って」
PRINTL
PRINTFORMW 「案内人の仕事よりも、ずっと給料よくてお金はすぐに集まったの。
PRINTFORMW 今はもう家ぐらい何軒も買えると思うんだけど、途中から何かどうでもよくなっちゃってさ。
PRINTFORMW 彼といるよりも、こういう仕事をしている時間のほうが楽しいって気付いちゃったのよね」
PRINTL
PRINTFORMW 「彼は多分、今も薬草畑を歩きながら、家を買うなんて全然言えないような小銭稼ぎをしてるのよ。馬鹿みたいよね」
PRINTL
PRINTFORMW 自著気味に案内人は笑う。今はもう別れたいだろうか？
PRINTL
PRINTFORMW 「ううん。別に嫌いなわけじゃないし。
PRINTFORMW それに彼には幸せになって欲しいし、何だかかわいそうっていうか……」

PRINTFORMW 「でも、私の居場所とは違う感じがするのよね。……いつからこうなったのかな……」
PRINTL
PRINTFORMW 話が途切れると、案内人は思い出したかのように上着を着た
PRINTL
PRINTFORMW 「それじゃあ、また会いましょ。あなたとは仲良くできそうな気がするわ」
PRINTL

MONEY += 8000
QST_PRESTIGE_POINT += 20
CALL COLOR_PRINTL(@"――　8,000ディナリを得た！", カラー_注意)

CALL CHANGE_ITEM_STOCK(ITEM_コンドーム, 20)
CALL GET_ITEM_NAME(ITEM_コンドーム)
CALL COLOR_PRINTW(@"――%RESULTS%を20つ手に入れた", カラー_注意)

QST_SV_QUEST_FLAG:QST_有効クエストID = 2
TFLAG:クエスト_完了フラグ = 1

CALL TRAIN_EXIT()

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_33_CREATE_VICTIMS(SEX)
#DIM SEX
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = 紳士風の男

CALL CREATE_RANDOM_CHARA(0, -1, SEX)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
    RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 =  RAND(35, 50)
ABL:対象:性知識 = 5
ABL:対象:奉仕 = 1
ABL:対象:性技 = RAND(0, 4)
ABL:対象:欲望 = RAND(3, 7)
ABL:対象:性交 = RAND(3, 5)
ABL:対象:射精 = RAND(3, 5)
ABL:対象:サド = RAND(0, 1)
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 300)
CFLAG:対象:調教参加フラグ = 1
CFLAG:対象:慰安モブ = 1

;LOCALS = %S_R("male01/shota01/shota02/shota03/shota04")%
;CSTR:対象:顔グラファイル名 '= @"%LOCALS%.webp"
;CSTR:対象:キャラ顔グラ '= @"%LOCALS%.webp"
;CFLAG:対象:ポートレイト画像タイプ = 2

RETURN 対象

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_33_CREATE_VICTIMS_2(SEX)
#DIM SEX
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = %SPLIT_RAND("冒険者/村娘/魔術師/看板娘/娼婦",1)%

CALL CREATE_RANDOM_CHARA(0, -1, SEX)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
    RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = 1
ABL:対象:性知識 =  3
ABL:対象:Ｃ感 = RAND(2, 6)
ABL:対象:Ｖ感 = RAND(2, 5)
ABL:対象:Ａ感 = RAND(2, 5)
ABL:対象:Ｂ感 = RAND(2, 6)
ABL:対象:奉仕 = RAND(2, 5)
ABL:対象:性技 = RAND(10, 14)
ABL:対象:欲望 = RAND(3, 7)
ABL:対象:性交 = RAND(13, 15)
ABL:対象:マゾ = RAND(0, 3)
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 300)
TALENT:対象:貞操無頓着 = 1
TALENT:対象:貞操観念 = 0
TALENT:対象:母乳体質 = 1

CFLAG:対象:調教参加フラグ  = 1
CFLAG:対象:主導除外  = 1
CFLAG:対象:強制友好化 = 1
CFLAG:対象:慰安モブ = 1

RETURN 対象


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_35:仮クエスト文章
;-------------------------------------------------
;クエスト選択画面で表示されるクエスト名
@QST_TITLE_QUEST_35
RESULTS '= "アマゾネスの呼び出し"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_35
RESULTS '= "周期,探索,"

;クエスト選択画面で呼び出される概要説明
;タグで装飾が可能(@FuncTagSetText_CreateColorBarText 参照)
;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_35
RESULTS: 0 '= "またアマゾネス族からの依頼だ。"
RESULTS: 1 '= "このクエストは男性１名の場合のみ受けられる。"
RESULTS: 2 '= "腕に自信がある男がいるなら、うってつけのクエストだろう。"
RESULTS: 3 '= ""
RESULTS: 4 '= "既に知っているとは思うが。"
RESULTS: 5 '= "アマゾネスは女だけの特殊な部族で、優秀な男の子種を必要としている。"
RESULTS: 6 '= "それはより強い娘を産んで、繁栄するため……。"
RESULTS: 7 '= "とは言うものの、実際のところは少々複雑な部族のようだな。"
RESULTS: 8 '= "まあ、その辺の事情はお前のほうが詳しいだろう。"
RESULTS: 9 '= ""
RESULTS:10 '= "依頼主はお前らをご指名だ。どうする？"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_35
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★★@/C@"
RESULTS:1 '= "報酬：2000ディナリ"
RESULTS:2 '= "推奨パーティ人数:オス１匹限定　　　推奨平均戦闘値：50以上"
RESULTS:3 '= "備考：定期性クエスト(5期毎)"
RESULTS:4 '= ""
RESULTS:6 '= @"@C:{カラー_選択不可}@「や～い、ザコオス♥ザコ過ぎて面白いから、また遊んであげる♥」@/C@"
RESULTS:7 '= @"@C:{カラー_選択不可}@「ザ～コ♥ザ～コ♥」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_35(QUEST_ID)
#DIM QUEST_ID

;アマゾネス成人の儀式をクリアするまで不可
SIF !QST_SV_QUEST_FLAG:31
	RETURN 0

;クエストのクールタイム。完了時に加算され、期終了時に減算される
SIF QST_COOLTIME:QUEST_ID
	RETURN 0
RETURN 1
;-------------------------------------------------
;クエスト固有の開始条件
;[このクエストを開始する]押下時に呼ばれる
;女性のみ・誘蛾の芳香LV1以上が必要
;-------------------------------------------------
@QST_CAN_START_QUEST_35(QUEST_ID)
#DIM QUEST_ID
#DIM DYNAMIC ERR_CNT
#DIM DYNAMIC CHARA_ID

IF LIST_COUNT(_LIST_QST_PARTY) >= 2
	PRINTFORMW 「私ってばマジ人気。でもキモいから２匹以上は無理♥」
	RETURN 0
ELSE
	CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
	IF !IS_MALE(CHARA_ID)
		PRINTFORMW 「メスじゃん！私そういう趣味ないから～。ごめんね♥」
		RETURN 0
	ENDIF
	RETURN 1
ENDIF

;-------------------------------------------------
;マップデータ定義
;[ROOM_ID:]　…　配置するエリアの種類
;[ROOM_PATH:]　…　エリア間の接続情報(※)
;[EVENT_LIST:]　…　エリアに配置するイベントのID(※)
;(※)要素の末尾の','を忘れないように注意
;<マップを編集するには>
;EmueraをDEBUGMODEで起動した場合、[領地の手入れ]画面から編集したエリア情報をテキストファイルにエクスポートできます
;sav/txt00.txtに出力されたマップ情報をコピペして編集すると少し楽になります
;<DEBUG MODE起動方法>
;https://ja.osdn.net/projects/emuera/wiki/debug
;-------------------------------------------------
@QST_SET_MAPDATA_QUEST_35(MAP_ID)
#DIM MAP_ID
QST_MAPNAME '= "パーティ会場"

_DIC_HO_MAPDATA:MAP_ID:0  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:1  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:2  '= "[ROOM_ID:201][ROOM_PATH:7,][EVENT_LIST:1,][ROOM_NAME:小屋]"
_DIC_HO_MAPDATA:MAP_ID:3  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:4  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:5  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:6  '= "[ROOM_ID:201][ROOM_PATH:7,11,][EVENT_LIST:12,][ROOM_NAME:森]"
_DIC_HO_MAPDATA:MAP_ID:7  '= "[ROOM_ID:201][ROOM_PATH:2,6,][EVENT_LIST:7,][ROOM_NAME:小屋の前]"
_DIC_HO_MAPDATA:MAP_ID:8  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:9  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:10 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:11 '= "[ROOM_ID:201][ROOM_PATH:6,12,][ROOM_NAME:森]"
_DIC_HO_MAPDATA:MAP_ID:12 '= "[ROOM_ID:201][ROOM_PATH:11,17,][EVENT_LIST:11,][ROOM_NAME:森]"
_DIC_HO_MAPDATA:MAP_ID:13 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:14 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:15 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:16 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:17 '= "[ROOM_ID:201][ROOM_PATH:12,18,22,][ROOM_NAME:森]"
_DIC_HO_MAPDATA:MAP_ID:18 '= "[ROOM_ID:201][ROOM_PATH:17,][EVENT_LIST:6,][ROOM_NAME:休憩所]"
_DIC_HO_MAPDATA:MAP_ID:19 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:20 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:21 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:22 '= "[ROOM_ID:200][ROOM_PATH:17,]"
_DIC_HO_MAPDATA:MAP_ID:23 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:24 '= "[ROOM_ID:0]"
;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;会話・文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_35
RESULTS '= "MAP"

;-------------------------------------------------
;クエスト固有の初期化処理
;-------------------------------------------------
@QST_INIT_QUEST_35
;クエストクールタイムを加算
QST_COOLTIME:QST_有効クエストID += 5

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストの場合当この関数のみを実行します
;-------------------------------------------------
@QST_INTRO_QUEST_35

PRINTFORMW %QST_LEADER_NAME()%はメスガキが待ついつもの場所に向かった……
PRINTL
PRINTFORMW 「あ。やっと来たのザコオス♥」
PRINTFORMW 「こんな待たせるとか信じらんない。遅いから逃げたのかと思ったよ♥ザコだから♥」
PRINTL
PRINTFORMW 待ち合わせ場所に着くとすぐさま、ちんちくりんのメスガキが飛び出した。
PRINTFORMW 自称アマゾネスは生意気を絵に描いたような顔で笑いながら、相変わらずこちらを見下している。
PRINTL
PRINTFORMW 「ほら突っ立ってないで、とりあえず森のキモイゴブリンでも退治したら♥」
PRINTFORMW 「同じくらいキモイ同士、得意でしょ？ウケる。」
PRINTFORMW 「さっさとイケ♥」
PRINTL
PRINTFORMW 腹は立つが、こんなメスガキでも依頼主は依頼主。
PRINTFORMW 今回もひとまずのところ、まずは依頼をこなさなければならないようだ……

PRINTW
;-------------------------------------------------
;イベントリストに登録するイベント情報を記述する
;<記述方法>
;EVENT_TRIGGER
; "ENTER_ROOM" イベントが配置されたルームの入室時に強制的に実行される
; "EVENT_SLOT" イベントリストのクリック時に実行される
; "TRAIN_EXIT" 調教イベント終了後 ※予め変数:QST_TRAIN_EXIT_EVENT_ID に調教終了後に実行したいイベントIDを指定する必要がある
;EVENT_SLOT_NAME
; イベントリスト上の表示名
;EVENT_TYPE
; "ONCE" クエスト中一度のみ呼出されるイベント(※トリガーが"ENTER_ROOM"のイベントのみ機能)
;           実行済みかをフラグ管理するまでもないイベント(会話など)で使用する想定
;
;戻り値
; RESULT:0 = EVENT_TRIGGER
; RESULT:1 = EVENT_SLOT_NAME
; RESULT:2 = EVENT_TYPE
;-------------------------------------------------
;-------------------------------------------------
;-------------------------------------------------
;EV99
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_99

;-------------------------------------------------
;実行するイベントの実行内容を記述
;イベント用の関数はTRYCALLFORMで呼ばれるため
;@QST_QUEST_{QUEST_ID}_EVENT_{EVENT_ID}の書式で記述する
;-------------------------------------------------
@QST_QUEST_35_EVENT_99

;-------------------------------------------------
;EV0
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_0

;-------------------------------------------------
;実行するイベントの実行内容を記述
;イベント用の関数はTRYCALLFORMで呼ばれるため
;@QST_QUEST_{QUEST_ID}_EVENT_{EVENT_ID}の書式で記述する
;-------------------------------------------------
@QST_QUEST_35_EVENT_0

;-------------------------------------------------
;EV1
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_1
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS:0 = %EVENT_TRIGGER%

@QST_QUEST_35_EVENT_1
#DIM EVENT_ID = 1
#DIM 派生イベントID = 2
#DIM CHARA_ID
#DIM TARGET_ID
#DIMS DYNAMIC _LIST_ENEMY_PARTY
#DIMS DYNAMIC _LIST_CHARA

PRINTFORMW 「やっと家に帰れた。ザコオスのせいで、またこんなに時間かかっちゃった」
PRINTFORMW 「ザコオスのノロマ♥」
PRINTFORMW 粗末な外観とは異なり、可愛らしい白やピンク色の家具が並んだ清潔そうな室内
PRINTFORMW 隅にあるフカフカのベッドに、メスガキはやけに足を開いて座る
PRINTFORMW 「それじゃ、今回の依頼の結果だけど～……」
PRINTL
PRINTFORMW 「結果は失格♥だってザコだし、マジキモイし♥」
PRINTFORMW 「ザ～コ♥ザ～コ♥ケダモノ臭いから早く帰れ♥はい、バイバイ♥ウケる」
PRINTL
PRINTFORMW 「でもま～。最後のチャンスで、私に勝ったら合格にしてあげる♥」
PRINTFORMW 「ザコオスに負けるとかあり得ないし～！前のはただのまぐれだって、わからせてあげるから♥」
PRINTFORMW 予想通りの答えを聞かせるメスガキは、身長の倍ほどもある槍を構えてやる気マンマンだ

PRINTL
PRINTFORMW この時を待っていた%QST_LEADER_NAME()%はメスガキアマゾネスと対峙した！

CALL CC_INIT()
FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
	CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
NEXT

CALL CC_ADDMOB("DEFENDER", "メスガキアマゾネス", 2300, 2300, 50, 0, 1)

CALL CLOSE_COMBAT()
IF RESULT == 1

	PRINTFORMW 「あ！？ヤだ♥ウソ、ザコオスなんかに負けちゃった……♥」
	PRINTL
	PRINTFORMW 武器を落とされたメスガキは、なぜか恍惚とした顔で目をうるませているようだ
	PRINTFORMW それじゃ失礼して。と%QST_LEADER_NAME()%はメスガキを組み伏せる
	PRINTFORMW 「ヤ、ヤだヤだ！犯される♥私、今からザコオスに犯されちゃうんだ♥」
	PRINTFORMW 本当に嫌がっているのか？
	PRINTL
	PRINTFORMW ともあれこいつをわからせるなら今しかない
	PRINTFORMW %QST_LEADER_NAME()%はまったく抵抗しないメスガキをベッドに突き飛ばして襲いかかった！

	FLAG:ウフフフラグ = 1
	FLAG:調教モード = 調教_捕虜調教
	TFLAG:調教ターン数 = 30

	;主導除外フラグが立ったキャラクターは慰安調教で常にターゲットに回る。
	;拘束中など自主的に行動させたくないシチュエーションでこのフラグを立てる。
	CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
	FOR LOCAL, 0, QST_PARTYNUM
		CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):調教参加フラグ = 1
	NEXT
	;QUEST_31_アマゾネス成人の儀式のキャラ生成処理を参照する
	;既存データ以外はQUEST_31でメスガキが生成されている想定
	CHARA_ID = NAME_TO_CHARA("メスガキアマゾネス")
	IF CHARA_ID == -1
		CALL QST_QUEST_31_CREATE_VICTIMS(1)
		CHARA_ID = RESULT
	ENDIF
	CFLAG:CHARA_ID:調教参加フラグ  = 1
	CFLAG:CHARA_ID:主導除外  = 1
	CFLAG:CHARA_ID:強制友好化 = 1
	TFLAG:参加者数 ++

	_LIST_ENEMY_PARTY = %LIST_ADD(_LIST_ENEMY_PARTY, TOSTR(CHARA_ID))%
	FOR LOCAL, 0, LIST_COUNT(_LIST_ENEMY_PARTY)
		PRISONER_TARGET:LOCAL = TOINT(LIST_GET(_LIST_ENEMY_PARTY, LOCAL))
	NEXT

	CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(派生イベントID)
	RETURN

ELSE
	;敗北イベント
	CALL QST_QUEST_35_EVENT_4

ENDIF

;-------------------------------------------------
;EV2
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_2
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_35_EVENT_2

PRINTL
PRINTFORMW ふぅ……
PRINTFORMW %QST_LEADER_NAME()%は、生意気なメスガキにご希望の子種をたっぷりと渡してあげた
PRINTFORMW これで今度という今度こそ、己の身の程をわきまえるだろう
PRINTFORMW 願わくば元気な娘を産んで欲しいものだ
PRINTL
PRINTFORMW 満足した%QST_LEADER_NAME()%は、未だに立ち上がれずベッドの上で痙攣を続けるメスガキを放置して帰ることにした……

PRINTL
PRINTFORMW %QST_LEADER_NAME()%はクエストに成功した！

QST_SV_QUEST_FLAG:QST_有効クエストID = 1

WAIT

MONEY += 2000
QST_PRESTIGE_POINT += 20
CALL COLOR_PRINTL(@"――　報酬として2000ディナリを得た", カラー_注意)
CALL COLOR_PRINTW(@"――　名誉点を20点得た！", カラー_注意)

;クエスト終了時の決まり文句
TFLAG:クエスト_完了フラグ = 1

CALL TRAIN_EXIT()
;-------------------------------------------------
;EV3
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_3

@QST_QUEST_35_EVENT_3

;-------------------------------------------------
;EV4
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_4
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_35_EVENT_4
#DIM CONST EVENT_ID = 4
#DIM EVENT_FLAG
#DIM TARGET_ID

PRINTFORMW 「もう降参なんだ？はい、ざんね～ん！」
PRINTFORMW 「あは、こんな子供に負けちゃったの？ヨワヨワ♥ザ～コ♥」
PRINTFORMW 「こんなザコオスじゃもう一生種付けできないね♥」
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はメスガキにさんざん罵られ、小屋から放り出されてしまった……
PRINTL
PRINTFORMW 「またね、ザコオス♥」

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

;-------------------------------------------------
;EV6
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_6
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "焚き火跡"
#DIM CONST EVENT_ID = 6

RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
;ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
	CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_35_EVENT_6
#DIM EVENT_ID = 6
#DIM EVENT_FLAG
#DIM CHARA_ID
#DIM TARGET_ID

PRINTFORMW 森の脇道を進むと、明るい開けた空間に出た
PRINTFORMW 辺りには掘り起こされた切り株や丸太が転がり、中央には草の薄い地面に石が組まれている
PRINTFORMW どうやらキャンプ地のようだ
PRINTFORMW 動物に荒らされた様子もない。ここなら休むことができるだろう……

CALL ASK_MULTI("休憩する", "料理をする", "休まない")
IF RESULT == 0
	PRINTFORMW 「え。休んで良いとか言ってないんだけど？」
	PRINTFORMW 「女の子を待たせて休憩とか！ありえない。ザコオス最低、マジキモイ♥」
	PRINTFORMW 「ほら立て♥早くイケ♥」
	PRINTL
	PRINTFORMW メスガキがしつこく絡んでくるので、ほとんど休めなかった……
	;パーティ全員の体力を回復
	FOR LOCAL, 0, QST_PARTYNUM
		TARGET_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
		CALL QST_CHANGE_HP(TARGET_ID, 300)
	NEXT
	WAIT

	CALL QST_DEACTIVATE_THIS_EVENT()

ELSEIF RESULT == 1
	PRINTFORMW 持っていた食材で料理をしてみた……（成功・料理25以上）
	PRINTL
	CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, 0))
	IF ABL:(CHARA_ID):料理 >= 25
		PRINTFORMW 「あ。私これキライ～。ザコオスこっち向け♥ほら、あ～ん♥」
		PRINTFORMW なとど言っているが、ほとんど食べられてしまった……

		;パーティ全員の体力を回復
		FOR LOCAL, 0, QST_PARTYNUM
			TARGET_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
			CALL QST_CHANGE_HP(TARGET_ID, 1200)
		NEXT
		WAIT
	ELSE
		PRINTFORMW 「まっず！え。なにこれ？ザコオス料理ヘタクソ。私が作れば良かった♥」
		PRINTFORMW メスガキの言う通り食べられる出来ではなかった……
	ENDIF

	CALL QST_DEACTIVATE_THIS_EVENT()

ENDIF
;-------------------------------------------------
;EV7
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_7
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_35_EVENT_7
#DIM CHARA_ID

PRINTFORMW 森の奥へ奥へ進むと、粗末な小屋が建っていた
PRINTFORMW 日の光は天井のように生い茂った枝葉に隠され、辺りは暗闇と静けさに包まれている
PRINTFORMW そんな中、メスガキの声はひときわ響いた
PRINTL
PRINTFORMW 「はい、到着～！」
PRINTFORMW 「やっと着いたのノロノロ♥この前来たばっかなのにダメダメでしょ、足もヨワヨワ♥」
PRINTFORMW 「ほら、興奮してないで早く入ったら？キモイ♥」
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はメスガキに促されて扉を開けようとしたが、やはり鍵がかかっている。
PRINTFORMW さて、どうやって扉を開けようか……？

CALL ASK_YN("解錠(器用40以上)", "力づく(身体40以上)")
IF RESULT == 0
	CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, 0))
	IF ABL:(CHARA_ID):器用 >= 40

		PRINTFORMW 小屋の鍵を開けた！
		PRINTL
		PRINTFORMW 「女の子の部屋の鍵開けたの？イケないんだ♥ケダモノ♥マジヤバイ♥」
	ELSE
		CALL PRINT_NOTICE(@"催淫ガスの罠だ！")
		CALLF TAG_PRINT(@"桃色の霧が%QST_LEADER_NAME()%の正常な判断力を奪う……", 1)
		CALLF TAG_PRINT(@"@C:{カラー_ピンク}@%QST_LEADER_NAME()%は発情してしまったようだ……@/C@", 1)
		TCVAR:(CHARA_ID):媚薬 += 1
		WAIT

		PRINTFORMW 「あは。罠に引っ掛かってる♥ヘタっぴ♥ザコオスの頭ヨワヨワ♥」
	ENDIF

ELSE
	CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, 0))
	IF ABL:(CHARA_ID):身体 >= 40

		PRINTFORMW 小屋の鍵を開けた！
		PRINTL
		PRINTFORMW 「うっわ、ザコオスが力付くで鍵こじ開けた♥ケダモノ♥マジヤバイ♥」
	ELSE
		CALL PRINT_NOTICE(@"催淫ガスの罠だ！")
		CALLF TAG_PRINT(@"桃色の霧が%QST_LEADER_NAME()%の正常な判断力を奪う……", 1)
		CALLF TAG_PRINT(@"@C:{カラー_ピンク}@%QST_LEADER_NAME()%は発情してしまったようだ……@/C@", 1)
		TCVAR:(CHARA_ID):媚薬 += 1
		WAIT

		PRINTFORMW 「あは。罠に引っ掛かってる♥ざぁ～こ♥ザコオスの腕ヨワヨワ♥」
	ENDIF

ENDIF
;-------------------------------------------------
;EV8
;敗北調教後
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_8
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS:0 = %EVENT_TRIGGER%

@QST_QUEST_35_EVENT_8
PRINTL
PRINTFORMW ……………………
PRINTFORMW ………………
PRINTFORMW …………
PRINTL
PRINTFORMW ……そして日が沈み、夜が明けた頃。
PRINTFORMW すっかり満足した様子のゴブリン達は、意気投合した%QST_LEADER_NAME()%と別れを惜しみながら立ち去った。
PRINTFORMW あとにはガニ股で痙攣するぶざまなメスガキがあるのみ。
PRINTFORMW 遊ばれ尽くしたメスガキの体は、穴という穴がぽっかりと開き、大きく膨らんだ腹からおびただしい精液を溢れさせている。
PRINTFORMW 声をかけてみるも、どうやら屈辱的なアヘ顔を晒したまま失神しているようだ……
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はメスガキを小屋に放り込んで町に戻った……

TFLAG:クエスト_完了フラグ = 1

CALL TRAIN_EXIT()

;-------------------------------------------------
;EV9
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_9

@QST_QUEST_35_EVENT_9

;-------------------------------------------------
;EV10
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_10

@QST_QUEST_35_EVENT_10

;-------------------------------------------------
;EV11
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_11
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_35_EVENT_11
#DIM EVENT_ID = 11
#DIM CONST 派生イベントID = 5

PRINTFORMW 「またザコゴブリンじゃん。キモイ♥」
PRINTFORMW 「ほら早く戦ってよ。守れ♥私のほうが、ザコオスなんかより強いけど♥」
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はゴブリンと対峙した！

CALL CC_INIT()
FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
	CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
NEXT

CALL CC_ADDMOB("DEFENDER", "ゴブリン", 1200, 1200, 5, 0, 1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン", 1200, 1200, 5, 0, 1)

CALL CLOSE_COMBAT()
IF RESULT == 1
	PRINTL
	CALL CC_ADD_COMBAT_EXP(3)
	CALL CC_APPLY_CHARA_HP()
	PRINTW

	PRINTFORMW 「むにゃむにゃ……ママ、ぬいぐるみ買って～……」
	PRINTFORMW 「あ。やっと終わったの？ザコオス、遅過ぎ♥やっぱりザコなんだ♥」
	PRINTFORMW 居眠りしていたメスガキは目を覚ますなり元気に罵った……
	CALL QST_SET_SV_EVENT_FLAG(EVENT_ID, 2)

ELSE
	;敗北イベント
	CALL QST_QUEST_35_EVENT_DEFEAT
ENDIF

;-------------------------------------------------
;EV12
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_35_EVENT_12
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_35_EVENT_12
#DIM EVENT_ID = 12
#DIM CONST 派生イベントID = 5

PRINTFORMW 「また発情したザコゴブリン。ほんとマジムリ♥」
PRINTFORMW 「ほら早く。言われる前に倒してよ♥ザコじゃないなら１秒で倒しちゃうよね♥」
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はゴブリンと対峙した！

CALL CC_INIT()
FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
	CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
NEXT

CALL CC_ADDMOB("DEFENDER", "ゴブリン", 1200, 1200, 5, 0, 1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン", 1200, 1200, 5, 0, 1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン", 1200, 1200, 5, 0, 1)

CALL CLOSE_COMBAT()
IF RESULT == 1
	PRINTL
	CALL CC_ADD_COMBAT_EXP(3)
	CALL CC_APPLY_CHARA_HP()
	PRINTW

	PRINTFORMW 「もう帰ろうかな～……あ。終わった？」
	PRINTFORMW 「女の子を待たせるとかザコオス、ダメ過ぎ♥モテないザコ♥ざぁ～こ♥」
	PRINTFORMW 自称アマゾネスは戦闘に全く興味がなさそうだ。
	CALL QST_SET_SV_EVENT_FLAG(EVENT_ID, 2)

ELSE
	;敗北イベント
	CALL QST_QUEST_35_EVENT_DEFEAT
ENDIF
;-------------------------------------------------
;以下イベントリストで管理する必要のない処理,イベント固有の関数など
;-------------------------------------------------
;-------------------------------------------------
;戦闘敗北イベント
;-------------------------------------------------
@QST_QUEST_35_EVENT_DEFEAT
#DIM TARGET_ID

PRINTFORMW 「え。ザコオス、ゴブリンに負けたの？」
PRINTFORMW 「ウソでしょ信じらないザコ。ザ～コ♥よわよわ♥カッコワル♥」
PRINTL
PRINTFORMW メスガキは罵りながらも倒れた%QST_LEADER_NAME()%を引っ張っている。
PRINTFORMW どうやら安全な場所まで運ぶつもりのようだが……、いかんせん非力なメスガキに%QST_LEADER_NAME()%の体は重過ぎるようだ。
PRINTL
PRINTFORMW そうこうしているメスガキの背後に、様子を見ていたゴブリン達がこっそりと忍び寄った……
PRINTL
PRINTFORMW 「キャッ！？ちょ、ヤだ！マジキモイ♥」

;PTにメスガキのみ残す
;慰安調教開始
FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安
TFLAG:調教ターン数 = 20

;主導除外フラグが立ったキャラクターは慰安調教で常にターゲットに回る。
;拘束中など自主的に行動させたくないシチュエーションでこのフラグを立てる。
CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
TARGET_ID = NAME_TO_CHARA("メスガキアマゾネス")
;調教コマンドのプレイヤーにならなくなる。一方的に嬲られるシチュ用
CFLAG:TARGET_ID:主導除外 = 1
;良感情を極めて得にくくなるフラグ
CFLAG:TARGET_ID:凌辱被害者フラグ = 1
CFLAG:TARGET_ID:調教参加フラグ = 1
;慰安モブを追加
CALL QST_TRAIN_MOB_PRESET("ゴブリン", @"%SPLIT_RAND("醜悪な/小太りの/痩せた/子",1)%ゴブリン")
CALL QST_TRAIN_MOB_PRESET("ゴブリン", @"%SPLIT_RAND("醜悪な/小太りの/痩せた/子",1)%ゴブリン")
CALL QST_TRAIN_MOB_PRESET("ゴブリン", @"%SPLIT_RAND("醜悪な/小太りの/痩せた/子",1)%ゴブリン")

CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(8)

path: ERB/QUEST/クエストデータ/QUEST_35_アマゾネスの呼び出し.ERB


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_36
;-------------------------------------------------
@QST_TITLE_QUEST_36
RESULTS '= "行商人オリヴィア"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_36
RESULTS '= "単発,イベント,"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_36(QUEST_ID)
#DIM QUEST_ID
;デイリーイベント「新たな仲間オリヴィア」での加入を断った場合に出現
SIF K4_DFLAG_行商人オリヴィア != 3
    RETURN 0

RETURN 1

;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_36
RESULTS '= "DIALOGUE"

;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_36
RESULTS:0 '= "行商人のオリヴィアは近隣の街に滞在しているようだ"
RESULTS:1 '= "改めて彼女を仲間に勧誘するなら声をかけてみてもよいだろう"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_36
RESULTS:0 '= @"難易度：-"

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストは当該関数のCALLのみ行う
;-------------------------------------------------
@QST_INTRO_QUEST_36
#DIM 対象
対象 = NAME_TO_CHARA("UC_オリヴィア")
CALL PRINT_TITLE("行商人オリヴィア", "QUEST")
PRINTFORMDL %ANAME(MASTER)%は街の宿に滞在しているオリヴィアのもとを訪れた
PRINTFORMDW オリヴィアは%ANAME(MASTER)%と目が合うと微笑みかける
CALL DRAW_PORTRAIT(対象, "[感情:幸][サイズ:180px][POS_X:0]",,1)
PRINTL
CALL KJ_PRINT(対象, @"「うふふ、気が変わりましたか？　私はいつでも準備万端ですよ」", 1)
PRINTL
CALL ASK_YN("雇う","やめておく")
IF !RESULT
    PRINTFORMW %ANAME(MASTER)%が承諾すると、彼女の表情が明るくなり、豊かな毛並みの尾が左右に揺れた
    PRINTL
    CALL DRAW_PORTRAIT(対象, "[感情:幸][サイズ:180px][POS_X:0]",,1)
    CALL KJ_PRINT(対象, @"「ありがとうございます、そうと決まったら早速準備しないといけませんね」", 0)
    CALL KJ_PRINT(対象, @"「帳簿の整理に在庫の確認に今後の商戦略の検討に……ふふっ、これは忙しくなりそうです」", 1)
    PRINTL
    CALL PRINT_NOTICE("オリヴィアが仲間になった")
    CFLAG:NAME_TO_CHARA("UC_オリヴィア"):所属 = 所属_プレイヤー
    K4_DFLAG_行商人オリヴィア = 2
ELSE
    CALL DRAW_PORTRAIT(対象, "[感情:悲][サイズ:180px][POS_X:0]",,1)
    PRINTL
    CALL KJ_PRINT(対象, @"「%ANAME(MASTER)%さんも中々……人の気を揉むのがお上手ですね」", 1)
    PRINTL
    CALL KJ_PRINT(対象, @"「うふふ、商人は待つのには慣れていますから、もし気が変わったら、また声をかけてくださいね」", 1)
ENDIF

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_従順な性奴隷
;-------------------------------------------------
@QST_TITLE_QUEST_37
RESULTS '= "従順な性奴隷"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_
RESULTS '= "単発,イベント,"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_37(QUEST_ID)
#DIM QUEST_ID
SIF CFLAG:NAME_TO_CHARA("ミニョネット"):所属 == 所属_プレイヤー
    RETURN 0
;地下牢の設置が必要
CALL HO_FIND_ROOM_BY_TAG("牢獄",,,1)
SIF RESULT == -1
    RETURN 0
;空きの居房が必要
CALL HO_GET_VACANT_PRISON_CELL_COUNT
SIF RESULT <= 0
    RETURN 0

RETURN 1

;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_37
RESULTS '= "DIALOGUE"

;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_37
RESULTS:0 '= @"とある奴隷市場に来た%ANAME(MASTER)%は今週の目玉商品として売られる少女を目にする"
RESULTS:1 '= "有望な性奴隷だったようだが、戦災から逃れた主人が当座の金のため手放すようだ"
RESULTS:2 '= "どのような用途で用いるにせよ奴隷がほしいなら一考の余地があるだろう"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_37
RESULTS:0 '= @"難易度：-"
RESULTS:1 '= "価格:20,000ディナリ"
RESULTS:2 '= "非処女：娼館での就労経験あり:素晴らしく従順"
RESULTS:3 '= "容姿端麗：乳房など成長の余地まだあり"
RESULTS:0 '= @"地下牢エリアが必要"

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストは当該関数のCALLのみ行う
;-------------------------------------------------
@QST_INTRO_QUEST_37
#DIM CHARA_ID

PRINTFORMW 男女様々な奴隷がやり取りされる奴隷市場
PRINTFORMW そこで奴隷商人の売り込み役が顧客へと宣伝文句を並べる
PRINTL
PRINTFORML 「この娘を見てくれ。まだ若いが、しっかり仕込みは受けてるよ。
PRINTFORML 戦災から逃げてきた娼館の主人が当座資金のために売り払った娘だ。
PRINTFORMW 中古品だから値引きされてるが、まだまだ若いよお手頃価格！」
PRINTL
PRINTFORML 商人が指差す先にはまだ若い少女がみすぼらしい姿で立っている。
PRINTFORMW しかし商品だけあって最低限の手入れはされているようだ。
PRINTFORML 栗色の長い髪は絹のような柔らかさを保っている。
PRINTFORMW 肌も若々しいハリ・ツヤをみせ乳房は少し上向きに立っている。
PRINTFORMW それなりの価格だが、それに見合うだけの価値はたしかにありそうだ。

CALL ASK_YN("購入する","やめておく")
IF !RESULT
    IF MONEY < 20000
        PRINTFORMW お金が足りないようだ……
        RETURN
    ENDIF
    PRINTFORMW ………………
    PRINTFORMW …………
    PRINTFORMW ……
    PRINTL
    PRINTFORMW 「お初にお目にかかります、御主人様
    PRINTFORMW この度は私めをお買い求めいただき、誠にありがとうございます
    PRINTFORMW これで私は御主人様のための家具となりました。
    PRINTFORMW それも庶民の用いる凡百な家具などではございません。
    PRINTFORMW 貴族が邸宅の貴賓室に置く最高級品と自認しております。
    PRINTFORMW ぜひともわたくしのサービスをご堪能くださいませ。」
    CALL COLOR_PRINTW("性奴隷のミニョネットが仲間になった！", カラー_注意)
    ;	CFLAG:14:捕虜先 = 所属_プレイヤー
    CHARA_ID = NAME_TO_CHARA("ミニョネット")
    CFLAG:NAME_TO_CHARA("ミニョネット"):所属 = 所属_プレイヤー
    CFLAG:CHARA_ID:捕虜先 = CFLAG:MASTER:所属
    CALL QST_CHANGE_ITEM("ディナリ,-20000,")
    SEXUAL_EXPERIENCE:CHARA_ID:初体験_処女 '= "娼館の主人"
    SEXUAL_LAST_EXPERIENCE:CHARA_ID:初体験_処女 '= "太った兵士"
    SEXUAL_EXPERIENCE:CHARA_ID:初体験_キス '= "性奴隷調教師のペニス"
    SEXUAL_LAST_EXPERIENCE:CHARA_ID:初体験_キス '= "太った兵士の唇"
    SEXUAL_EXPERIENCE:CHARA_ID:初体験_アナル処女 '= "性奴隷調教師"
    SEXUAL_LAST_EXPERIENCE:CHARA_ID:初体験_アナル処女 '= "太った商人"

ELSE
    PRINTFORMW 今は間に合っている。やめておこう
ENDIF

TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_0:サンプルクエスト
;-------------------------------------------------
;クエスト選択画面で表示されるクエスト名
@QST_TITLE_QUEST_38
RESULTS '= "採掘助手"

;ギルドメニューでクエストをフィルターする際のタグリスト。末尾の','を忘れないように
@QST_QUEST_TAG_38
RESULTS '= "周期,探索,"

;クエスト選択画面で呼び出される概要説明
;タグで装飾が可能(@FuncTagSetText_CreateColorBarText 参照)
;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_38
RESULTS:0 '= "依頼主は魔導技士ベラルスクと言う女性だ"
RESULTS:1 '= "数年前にオークの巣と繋がってしまい閉山になった鉱山都市がある"
RESULTS:2 '= "そこで採掘をしたいから護衛と手伝いを頼みたいと言うことだ"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_38
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★★@/C@"
RESULTS:1 '= "報酬：4,000ディナリ＋鉱石"
RESULTS:2 '= "推奨パーティ人数:4人以上　　　推奨平均戦闘値：60以上"
RESULTS:3 '= "備考:定期性クエスト(3期毎)"
RESULTS:4 '= ""
RESULTS:5 '= @"@C:{カラー_選択不可}@「マナが潤沢な鉱山が見つかったと思ったら魔物の巣だった」@/C@"
RESULTS:6 '= @"@C:{カラー_選択不可}@「これがよくある話なんだ。うまくいかないよな」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_38(QUEST_ID)
#DIM QUEST_ID

;前提としてQUEST_6_湯泡郷の攻略が必要
SIF QST_SV_QUEST_FLAG:6 != 2
	RETURN 0
IF QST_COOLTIME:QUEST_ID
	RETURN 0
ELSE
	RETURN 1
ENDIF

;-------------------------------------------------
;マップデータ定義
;-------------------------------------------------
@QST_SET_MAPDATA_QUEST_38(MAP_ID)
#DIM MAP_ID
QST_MAPNAME '= "村と坑道"
;mapdata定義ファイルの格納先フォルダを指定
QST_GMAPDATA_PATH '= "ERB/QUEST/クエストデータ/QUEST_38_採掘助手"
;マップデータ定義XMLとTXTのファイル名を指定。
;2ファイルの名称は拡張子を除いて一致している必要がある
QST_GMAPDATA_FILENAME '= "採掘助手"
;このフラグを1にすると経路描画が行われなくなる。屋内マップなどあえて経路を図示する必要がない場合に立てるとよい
QST_HIDE_PATH = 1

;各エリア（ノード）に配置するイベントIDを記入。0-24はノード番号に対応
;EVENT_LIST末尾の’,’を忘れないように
_DIC_HO_MAPDATA:MAP_ID:0  '= "[EVENT_LIST:0,]";出入口
_DIC_HO_MAPDATA:MAP_ID:1  '= "[EVENT_LIST:0,10,11,]";広場
_DIC_HO_MAPDATA:MAP_ID:2  '= "[EVENT_LIST:0,20,21,22,23,24,]";倉庫
_DIC_HO_MAPDATA:MAP_ID:3  '= "[EVENT_LIST:0,]";東の道
_DIC_HO_MAPDATA:MAP_ID:4  '= "[EVENT_LIST:0,40,]";東の坑道
_DIC_HO_MAPDATA:MAP_ID:5  '= "[EVENT_LIST:0,]";西の坑道入口
_DIC_HO_MAPDATA:MAP_ID:6  '= "[EVENT_LIST:0,60,]";西の坑道
_DIC_HO_MAPDATA:MAP_ID:7  '= "[EVENT_LIST:0,]"
_DIC_HO_MAPDATA:MAP_ID:8  '= "[EVENT_LIST:0,80,]"
_DIC_HO_MAPDATA:MAP_ID:9  '= "[EVENT_LIST:0,]"

;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;会話・文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_38
RESULTS '= "GMAP"

;-------------------------------------------------
;クエスト固有の初期化処理
;-------------------------------------------------
;@QST_INIT_QUEST_38

;-------------------------------------------------
; クエスト中止時の処理
; QST_QUEST_{QUEST_ID}_ABORT は撤退コマンド実行時に呼ばれる
;-------------------------------------------------
;@QST_QUEST_38_ABORT

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストの場合当この関数のみを実行します
;-------------------------------------------------
@QST_INTRO_QUEST_38
#DIM CHARA_ID

PRINTL
IF QST_SV_QUEST_FLAG:38 == 0
	CALL QST_QUEST_38_CREATE_VICTIMS(1)
	CFLAG:RESULT:面識 = 1

	PRINTFORMW 村の入口で依頼主と合流した。
	PRINTFORMW カーゴパンツとチューブトップだけのカジュアルな格好に腰のベルトに金槌などの工具を携えた女性が出迎えてくれた。
	PRINTL
	PRINTFORMW 「お、依頼の冒険者さんかな？遠いところよく来てくれたね」
	PRINTFORMW 「依頼内容はわかってるよね？」
	PRINTFORMW 「別に鉱山を復活させて、村に活気を取り戻したいわけじゃない。……だけど、出来るならここでテストをしたいってだけなんだ」
	PRINTL
	PRINTFORMW 何を言っているのか？%QST_LEADER_NAME()%達には理解できなかった。
	PRINTFORMW テストとは何のことだろうか？依頼はただの採掘の手伝いだったはずだ。
	PRINTL
	PRINTFORMW 「ふっふっふ……。よくぞ聞いてくれました」
	PRINTFORMW 「……じゃじゃーん！！これだ！私の自信作、採掘用の魔導ドリルッ！！どう？かっこいいでしょ？」
	PRINTL
	PRINTFORMW 彼女の後ろに隠された台車。その上にゴテゴテとした鉄塊が置かれていた。
	PRINTFORMW 大きさは人間の赤子ぐらい。先端に太い腕のようなドリルが付いている。その辺の武器よりずっと重たそうだ。
	PRINTL
	PRINTFORMW 「……私さ、村の役に立ちたくて魔導技士になったんだ」
	PRINTFORMW 「鉱山で使えるものってことで、ドリルを作り始めたんだけどね」
	PRINTFORMW 「結局、ドリルを完成させる前に閉山して村がこんな状態になっちゃって、色々あって村を離れることになってね」
	PRINTFORMW 「ドリルは長い事ここに放置してたんだ。だけど村は落ち着いてるって知ってから、ひっそりと村に戻って来て、完成させてしまいました！」
	PRINTFORMW 「完成したからには試さないといけないよね！だから、あなた達にはドリルの実地試用試験を手伝ってもらうっていう依頼だよ！」
	PRINTL
	PRINTFORMW ベラルスクが言うには、村には三つの鉱山があるとのことだ。
	PRINTL
	PRINTFORMW １つ目は東の旧坑道。
	PRINTFORMW ここは掘り尽くされていて何も出ない。しかし、良質な石が取れるから採石場にするためにそのまま放置されている。
	PRINTL
	PRINTFORMW ２つ目は西の新坑道。
	PRINTFORMW 一般的な鉱石が掘れる。
	PRINTFORMW ただし、こちらには魔物が入り込んでおり、ちゃんとパーティを組まないと危険らしい。
	PRINTFORMW
	PRINTFORMW ３つ目は北の遺跡坑道。
	PRINTFORMW オークたちの住む遺跡と繋がっているためとても危険だ。
	PRINTFORMW 手前のエリアで採掘する分には構わないが、遺跡まで侵入するととてつもない数のオーク達を刺激することになる。
	PRINTFORMW だから、深い層までは行かないように。廃村の原型がなくなってしまいかねない。
	PRINTL
	PRINTFORMW 「とりあえず、採掘箇所は君達が決めていいよ。鉱石を掘りたいなら西の坑道がオススメだよ」
	PRINTFORMW 「ちなみにドリルは燃料式だからね。今だと６回ぐらい使えるかな？」
	PRINTFORMW 「さぁ、出発するよ！私のドリルの性能を見せてくれ！」

	CALL QST_SET_SV_EVENT_FLAG(1,6)
	QST_SV_QUEST_FLAG:38 = 1
ELSE
	PRINTFORMW 再び採掘助手のクエストに訪れた……
	PRINTL
	IF LIST_COUNT(_LIST_QST_PARTY) == 1
		PRINTFORMW 「あれ？今日は一人だけなんだ？」
		PRINTFORMW 「……ふ～ん。それじゃあ、私も少しだけ戦おうかな？」
		PRINTFORMW 「大丈夫、だいじょーぶ。足は引っ張らないと思うから！まぁ、見てなさいって！」
		PRINTL
		CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
		CFLAG:CHARA_ID:調教参加フラグ  = 1
		BASE:CHARA_ID:体力 = MAXBASE:CHARA_ID:体力
		BASE:CHARA_ID:気力 = MAXBASE:CHARA_ID:気力
	ENDIF

	CALL QST_GET_SV_EVENT_FLAG(21)
	IF RESULT == 1
		PRINTFORMW 「やあやあ！ドリルの改造なら無事に完了したよ！」
		PRINTFORMW 「見てくれ！この艶！この光沢！！」
		PRINTFORMW ベラルスクは楽しそうに目を輝かせていた。
		CALL QST_SET_SV_EVENT_FLAG(21, 2)
	ELSEIF RESULT == 3
		PRINTFORMW 「やあやあ！ドリルの改造なら無事に完了したよ！」
		PRINTFORMW 「見てくれ！この艶！この光沢！！」
		PRINTFORMW ベラルスクは楽しそうに目を輝かせていた。
		CALL QST_SET_SV_EVENT_FLAG(21, 4)
	ELSEIF RESULT == 5
		PRINTFORMW 「やあやあ！ドリルの改造なら無事に完了したよ！」
		PRINTFORMW 「見てくれ！この艶！この光沢！！」
		PRINTFORMW ベラルスクは楽しそうに目を輝かせていた。
		PRINTFORMW 「……ちなみに、これで予定していた改造は全部完了した。これも君達の協力のおかげだ！ありがとっ！」
		CALL QST_SET_SV_EVENT_FLAG(21, 6)
		CALL QST_DEACTIVATE_EVENT(21)
	ELSEIF RESULT == 6
		CALL QST_DEACTIVATE_EVENT(21)
	ENDIF
ENDIF

CALL QST_GET_SV_EVENT_FLAG(1)
CALL QST_SET_EVENT_FLAG(1,RESULT)

;-------------------------------------------------
;イベントリストに登録するイベント情報を記述する
;<記述方法>
;EVENT_TRIGGER
; "ENTER_ROOM" イベントが配置されたルームの入室時に強制的に実行される
; "EVENT_SLOT" イベントリストのクリック時に実行される
; "TRAIN_EXIT" 調教イベント終了後 ※予め変数:QST_TRAIN_EXIT_EVENT_ID に調教終了後に実行したいイベントIDを指定する必要がある
;EVENT_SLOT_NAME
; イベントリスト上の表示名
;EVENT_TYPE
; "ONCE" クエスト中一度のみ呼出されるイベント(※トリガーが"ENTER_ROOM"のイベントのみ機能)
;           実行済みかをフラグ管理するまでもないイベント(会話など)で使用する想定
;
;戻り値
; RESULT:0 = EVENT_TRIGGER
; RESULT:1 = EVENT_SLOT_NAME
; RESULT:2 = EVENT_TYPE
;-------------------------------------------------
;-------------------------------------------------
;EV0
;エリア入場時にログ出力する情景描写
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_38_EVENT_0
; #region EV0
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = ""
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

@QST_QUEST_38_EVENT_0
#DIM マナ残量
#DIM 出現率

CALL QST_GET_EVENT_FLAG(1)
マナ残量 = RESULT

IF マナ残量 == 0
	CALL QST_DEACTIVATE_EVENT(40)
	CALL QST_DEACTIVATE_EVENT(60)
	CALL QST_DEACTIVATE_EVENT(80)
ENDIF

CALL HO_CREAR_LOG()
SELECTCASE HO_MASTER現在地
	CASE 1
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@", 1)
		CALL HO_PRINT_LOG("立派な村に見えるが、そのほとんどは空き家となっている", 2)
	CASE 2
		CALL QST_GET_EVENT_FLAG(3)
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@　魔宝原石:@C:{カラー_緑}@{RESULT}@/C@", 1)
		CALL HO_PRINT_LOG("ベラルスクの工房だ。意外と片付いている", 2)
	CASE 4
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@", 1)
		CALL HO_PRINT_LOG("ここが採石ポイントのようだ", 2)
	CASE 6
		CALL QST_GET_EVENT_FLAG(60)
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@　魔物の気配:@C:{カラー_緑}@{RESULT}@/C@", 1)
		CALL HO_PRINT_LOG("ここが基本的な鉱石の採掘ポイントのようだ", 2)
	CASE 8
		CALL QST_GET_EVENT_FLAG(80)
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@　魔物の気配:@C:{カラー_緑}@{RESULT}@/C@", 1)
		CALL HO_PRINT_LOG("ここはやや危険な採掘ポイントのようだ", 2)
	CASE 9
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@", 1)
		CALL HO_PRINT_LOG("ここに入るのはやめておこう……", 2)
	CASEELSE
		CALL HO_PRINT_LOG(@"マナ残量:@C:{カラー_緑}@{マナ残量}@/C@", 1)
ENDSELECT

;-------------------------------------------------
;EV1 イベントフラッグ
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_38_EVENT_1

@QST_QUEST_38_EVENT_1
#DIM EVENT_FLAG
;マナ残量

@QST_ADD_EVENT_QUEST_38_EVENT_2

@QST_QUEST_38_EVENT_2
#DIM EVENT_FLAG
;マナ最大値

@QST_ADD_EVENT_QUEST_38_EVENT_3

@QST_QUEST_38_EVENT_3
#DIM EVENT_FLAG
;魔宝原石

;-------------------------------------------------
;EV5
;敗北イベント後の共通エンディング（クエスト失敗）
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_38_EVENT_5
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_38_EVENT_5
#DIM CONST EVENT_ID = 5
#DIM EVENT_FLAG
#DIM TARGET_ID

PRINTFORMW オーク達がその場を離れると、ベラルスクに救助され坑道から脱出した……
TFLAG:クエスト_完了フラグ = 1
QST_COOLTIME:QST_有効クエストID += 3
CALL TRAIN_EXIT()

;-------------------------------------------------
;EV10 村
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_38_EVENT_10
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "男性"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_10

PRINTFORMW 「村から出ても行く場所のない奴、動けない奴なんかはここに残ったんだが」
PRINTFORMW 「意外と平和なもんだ」

@QST_ADD_EVENT_QUEST_38_EVENT_11
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "アップデート"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
	CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_38_EVENT_11
#DIM CHARA_ID

PRINTFORMW ベラルスクの戦闘能力が昔のバージョン（0.321）から僅かに上昇します。
PRINTFORMW 変更しますか？
CALL ASK_YN("はい","いいえ")
IF !RESULT
	CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
	MAXBASE:CHARA_ID:体力 = 1800
	ABL:CHARA_ID:戦闘 = 45
	PRINTFORMW 変更しました
ELSE
ENDIF
CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)
CALL QST_DEACTIVATE_EVENT(QST_NOWEV)

;-------------------------------------------------
;EV20 技士倉庫
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_38_EVENT_20
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "会話する"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_20
#DIM CONST EVENT_ID = 20
#DIM EVENT_FLAG
#DIM 原石

PRINTL
PRINTFORMW どうしようか……？
CALL QST_GET_EVENT_FLAG(EVENT_ID)
CALL ASK_MULTI_JUDGE("鉄鉱石をプレゼント",RESULT == 1 ? 0 # 1,"魔宝原石をプレゼント", 1,"魔宝原石を換金", 1,"雑談", 1)
IF RESULT == 0
	PRINTFORMW 「ん？どうしたの？」
	PRINTFORMW 鉄鉱石を５つプレゼントしようか……？（所持数：%TOSTR(HO_ITEM_STOCK:ITEM_鉄鉱石, "##")%）
	CALL ASK_YN("する", "しない")
	IF RESULT == 0
		IF HO_ITEM_STOCK:ITEM_鉄鉱石 >= 5
			CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
			CALL CHANGE_ITEM_STOCK(ITEM_鉄鉱石, -5)
			CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 += 30
			LOCAL = CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度
			PRINTFORMW 「おお～。これでまた仕事が捗るね！」（好感度:{LOCAL}）
		ENDIF
	ENDIF
ELSEIF RESULT == 1
	CALL QST_GET_EVENT_FLAG(3)
	原石 = RESULT
	IF RESULT >= 1
		PRINTFORMW 「ん？どうしたの？」
		PRINTFORMW 魔宝原石をプレゼントしようか……？（所持数：{原石}）
		CALL ASK_YN("する", "しない")
		IF RESULT == 0
			LOCAL = 原石 * 50
			CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 += LOCAL
			LOCAL = CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度
			CALL QST_SET_EVENT_FLAG(3, 0)
			PRINTFORMW 「貰っちゃっていいの！？実は宝石好きなんだよね～。ありがとっ！」（好感度:{LOCAL}）
		ENDIF
	ELSE
		PRINTFORMW 一つも持っていない。掘ってこなければ……
	ENDIF
ELSEIF RESULT == 2
	CALL QST_GET_EVENT_FLAG(3)
	IF RESULT >= 1
		PRINTFORMW 「宝石！いいね～。一つ1000で買い取るよ」
		PRINTFORMW 「原石は加工しないと価値のないものだから、高くは買い取れないのよ。それでもいいね？」
		CALL ASK_YN("売る", "やめておく")
		IF RESULT == 0
			PRINTFORMW 「まいどあり！へへへっ！後で磨いてみよっと！」
			CALL QST_GET_EVENT_FLAG(3)
			LOCAL = RESULT * 1000
			CALL COLOR_PRINTW(@"{LOCAL}ディナリを得た", カラー_注意)
			MONEY += LOCAL
			CALL QST_SET_EVENT_FLAG(3, 0)
		ELSE
			PRINTFORMW 「そっか～……。でも、クエスト完了する前に売っておいたほうがいいよ」
		ENDIF
	ELSE
		PRINTFORMW 一つも持っていないようだ……
	ENDIF
ELSEIF RESULT == 3
	IF RAND:2 == 0
		PRINTFORMW 「鉱山の村って男ばっかりだったんだよ」
		PRINTFORMW 「だから昔はすごくモテたんだよね～」
	ELSE
		PRINTFORMW 「こんな村に住んで危険はないのかって？」
		PRINTFORMW 「私なら大丈夫だよ。最低限は戦えるし、実はオークに孕ませられて、子供だって産んだことあるんだからね」
		PRINTFORMW 「意外となんとかなるもんよ」
		PRINTFORMW からからと笑っているが、これは笑い話だったのだろうか……？
	ENDIF
ENDIF
CALL QST_QUEST_38_EVENT_0

;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_21
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "魔導ドリル"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_21
#DIM CONST EVENT_ID = 21
#DIM EVENT_FLAG
#DIM 改造費用

CALL QST_GET_SV_EVENT_FLAG(EVENT_ID)
改造費用 = RESULT * 5000
改造費用 += 30000

PRINTFORMW 「ドリル……ね。一応、完成してるけど、本当ならもっと性能を上げることもできるんだよ」
PRINTFORMW 「ただ単純に予算が足りないから今の形になったんだけどね」
PRINTFORMW 「でも、ちょこっとだけ……いや、それなりの金額を君達が投資してくれるなら」
PRINTFORMW 「もっと、この子の可能性を見せてあげられると思うんだけど……」
PRINTFORMW 「具体的に言うと……え～と、{改造費用}ﾃﾞｨﾅﾘぐらいかな……。……た、高すぎて無理だよね？」
CALL ASK_YN("投資する", "やめておく")
IF !RESULT
	IF MONEY >= 改造費用
		PRINTFORMW 「本当に！？ポンと出せる金額じゃないんだけど！？」
		PRINTFORMW 「……わかった。君達の期待に応えよう！立派に改造しておくから、次に会うときを楽しみにしといてよ！」
		MONEY -= 改造費用
		CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 += 100
		;エネルギー＋3
		CALL QST_GET_SV_EVENT_FLAG(1)
		RESULT += 3
		CALL QST_SET_SV_EVENT_FLAG(1 ,RESULT)
		;改造度
		CALL QST_GET_SV_EVENT_FLAG(EVENT_ID)
		RESULT += 1
		CALL QST_SET_SV_EVENT_FLAG(EVENT_ID ,RESULT)
		CALL QST_DEACTIVATE_EVENT(EVENT_ID)
	ELSE
		PRINTFORMW 「あのさ、お金が足りてないんだけど……」
	ENDIF
ELSE
	PRINTFORMW 「まぁ、君達には投資する必要のないものだからね。お金を出さないのが正解だよ」
ENDIF

;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_22
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "ベッド"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_22
#DIM CONST EVENT_ID = 22
#DIM TARGET_ID
#DIM CHARA_ID

PRINTFORMW 「疲れてんなら、少し休憩にしてもいいよ？」
PRINTL
PRINTFORML 休憩にしようか？
CALL ASK_YN("休憩する", "やめておく")
IF !RESULT
	PRINTFORMW 「りょーかい。水と食べ物を持ってくるよ」
	PRINTFORMW %QST_LEADER_NAME()%達は、軽い食事と休憩を取った。
	;パーティ全員の体力を回復
	FOR LOCAL, 0, QST_PARTYNUM
		TARGET_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
		CALL QST_CHANGE_HP(TARGET_ID, 2000)
	NEXT
	CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
	BASE:CHARA_ID:体力 = MAXBASE:CHARA_ID:体力
	WAIT
	CALL QST_DEACTIVATE_EVENT(EVENT_ID)
ELSE
ENDIF

;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_23
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "ベラルスクを口説く"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_23
#DIM CONST EVENT_ID = 23
#DIM QUEST_ID
#DIM CHARA_ID

IF LIST_COUNT(_LIST_QST_PARTY) >= 2
	PRINTFORMW こういう事は男一人で来たときにやろう……
	RETURN 0
ELSE
	CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, 0))
	IF !IS_MALE(CHARA_ID)
		PRINTFORMW こういう事は男一人で来たときにやろう……
		RETURN 0
	ELSE
		CALL SKILL_GET_LEVEL(CHARA_ID, スキル_大分類_性技, "SEDUCTION")
		;		PRINTFORMW {RESULT}
		IF RESULT < 1
			PRINTFORMW 性技スキル:誘蛾の色香LV2以上が必要です。
			RETURN 0
		ENDIF
	ENDIF
ENDIF

CALL QST_DEACTIVATE_EVENT(EVENT_ID)
CALL QST_GET_SV_EVENT_FLAG(EVENT_ID)

IF CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 >= 1200 && RESULT == 2
	CALL QST_QUEST_38_EVENT_33
ELSEIF CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 >= 600 && RESULT == 1
	CALL QST_SET_SV_EVENT_FLAG(EVENT_ID, 2)
	CALL QST_QUEST_38_EVENT_32
ELSEIF  CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 >= 250 && RESULT == 0
	CALL QST_SET_SV_EVENT_FLAG(EVENT_ID, 1)
	CALL QST_QUEST_38_EVENT_30
ELSE
	PRINTFORMW 「あははっ！何言ってんの？そんなことより、はやく採掘に行くよ！」
	PRINTFORMW どうやら好感度が足らないようだ……
ENDIF

;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_24
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "クエストを終了する"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_24

CALL QST_GET_EVENT_FLAG(1)
IF RESULT >= 1
	PRINTFORMW 「まだドリルのマナは残っているけど、終わっていいのかな？」
	CALL ASK_YN("終わる", "終わらない")
	IF RESULT == 1
		RETURN
	ELSE
	ENDIF
ELSE
	CFLAG:NAME_TO_CHARA("魔導技士ベラルスク"):好感度 += 30
ENDIF

PRINTFORMW 「よし、今回の試用試験はここまで！お給料を払うからちょっと待ってね……」
PRINTFORMW 「……はいっ、お疲れ様！ドリルに興味があたったら、また来てね！」
CALL COLOR_PRINTW("4,000ディナリを得た", カラー_注意)
MONEY += 4000
TFLAG:クエスト_完了フラグ = 1
QST_COOLTIME:QST_有効クエストID += 3
CALL TRAIN_EXIT()

;-------------------------------------------------

@QST_QUEST_38_EVENT_30
#DIM CHARA_ID

PRINTFORMW 「んん～。私達って全然そういう関係じゃないでしょ？」
PRINTFORMW 「まぁ、いつもお世話になってるし、少しぐらい性処理のお手伝いぐらいならしてあげてもいいけどさ……」
PRINTFORMW 「……って何、肩組もうとしてるのよ！？少し手で擦ってあげるだけ！それ以上はなし！勘違いしない！！」
PRINTFORMW 「変なことしようとしたら、許さないからね！」

CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))

FLAG:ウフフフラグ = 1
QST_調教ターン数 = 8
TFLAG:調教ターン数 = QST_調教ターン数
FLAG:調教モード = 調教_閨

VARSET COM_FORBIDDEN:CHARA_ID:0, 1
COM_FORBIDDEN:CHARA_ID:T_N("なにもしない") = 0
COM_FORBIDDEN:CHARA_ID:T_N("胸愛撫") = 0
CFLAG:CHARA_ID:調教参加フラグ = 1

CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
IF CHARA_ID == -1
	CALL QST_QUEST_38_CREATE_VICTIMS(1)
	CHARA_ID = RESULT
ENDIF
VARSET COM_FORBIDDEN:CHARA_ID:0, 1
COM_FORBIDDEN:CHARA_ID:GETNUM(TRAINNAME, "手コキ") = 0
COM_FORBIDDEN:CHARA_ID:GETNUM(TRAINNAME, "フェラチオ") = 0
CFLAG:CHARA_ID:調教参加フラグ  = 1
CFLAG:CHARA_ID:主導除外  = 1
CFLAG:CHARA_ID:強制友好化 = 1
CFLAG:CHARA_ID:慰安モブ = 1

CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(31)

;-------------------------------------------------

@QST_QUEST_38_EVENT_31
#DIM CHARA_ID

PRINTFORMW 「……はい！これでおしまい！おしまいですっ！」
PRINTFORMW 「……全く、男ってみんな野蛮なんだから……」
CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
CFLAG:CHARA_ID:慰安モブ = 0

;-------------------------------------------------

@QST_QUEST_38_EVENT_32
#DIM CHARA_ID

PRINTFORMW 「前回よりももっといいことがしたいって？」
PRINTFORMW 「……う～ん、でもなぁ。色々と良くしてもらってはいるけど、私だってそんなに軽い女思われるのはなぁ……」
PRINTFORMW 「うーん。……そうだ！今日は特別に初体験の話を聞かせてあげようか？」
PRINTFORMW 「この村って、実はちょっと変わってたんだよねぇ……」
PRINTFORMW 「……え～、いらないの？……そこまで言うなら仕方ないなぁ、軽くならお触りも許可します！」
PRINTFORMW 「ちょっとだけ、ちょっとだけだからね！がっつくのはなしだから！」

CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))

FLAG:ウフフフラグ = 1
QST_調教ターン数 = 12
TFLAG:調教ターン数 = QST_調教ターン数
FLAG:調教モード = 調教_閨

VARSET COM_FORBIDDEN:CHARA_ID:0, 1
COM_FORBIDDEN:CHARA_ID:T_N("愛撫") = 0
COM_FORBIDDEN:CHARA_ID:T_N("胸愛撫") = 0
COM_FORBIDDEN:CHARA_ID:T_N("乳首吸い") = 0
COM_FORBIDDEN:CHARA_ID:T_N("なにもしない") = 0
CFLAG:CHARA_ID:調教参加フラグ = 1

CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
IF CHARA_ID == -1
	CALL QST_QUEST_38_CREATE_VICTIMS(1)
	CHARA_ID = RESULT
ENDIF
VARSET COM_FORBIDDEN:CHARA_ID:0, 1
COM_FORBIDDEN:CHARA_ID:GETNUM(TRAINNAME, "手コキ") = 0
COM_FORBIDDEN:CHARA_ID:GETNUM(TRAINNAME, "フェラチオ") = 0
CFLAG:CHARA_ID:調教参加フラグ  = 1
CFLAG:CHARA_ID:主導除外  = 1
CFLAG:CHARA_ID:強制友好化 = 1
CFLAG:CHARA_ID:慰安モブ = 1

CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(31)

;-------------------------------------------------

@QST_QUEST_38_EVENT_33
#DIM CHARA_ID

PRINTFORMW 「……そろそろ本番がしたいって？」
PRINTFORMW 「何となくそう言われそうな気がしてたから、一応だけど準備してきたんだよね……」
PRINTFORMW 「ちょっと待て！すぐ押し倒そうとするな！オーケーだって言ってる訳じゃない！」
PRINTFORMW 「ダメって話でもなくて！……ただもうちょっと、はじめ方があるだろ？雰囲気とかさ！？」

CHARA_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))

FLAG:ウフフフラグ = 1
QST_調教ターン数 = 20
TFLAG:調教ターン数 = QST_調教ターン数
FLAG:調教モード = 調教_閨

CFLAG:CHARA_ID:調教参加フラグ = 1

CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
IF CHARA_ID == -1
	CALL QST_QUEST_38_CREATE_VICTIMS(1)
	CHARA_ID = RESULT
ENDIF
CFLAG:CHARA_ID:調教参加フラグ  = 1
CFLAG:CHARA_ID:主導除外  = 1
CFLAG:CHARA_ID:強制友好化 = 1

CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(31)

;-------------------------------------------------
;EV40 東の坑道
;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_40
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "採掘する"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_40
#DIM CONST EVENT_ID = 40
#DIM 入手数

$ASK_LOOP_37_EVENT_40
PRINTFORML ここが採掘ポイントのようだ……
PRINTFORML ドリルは反動が重く、意外と疲れる作業になるだろう……(一名選択)(0名選択時キャンセル)
CALL SELECT_CHARA_LIST_INIT
CALL SELECT_CHARA_LIST_MULTI_ONLY_LOGIC_SLG(6, "PARTY_MEMBER", "NONE")
IF SELECTED_CHARA_NUM == 0
	PRINTFORMW やはりやめておこう……
	RETURN
ENDIF
IF SELECTED_CHARA_NUM >= 2
	PRINTFORMW 一人だけ選択してください
	GOTO ASK_LOOP_37_EVENT_40
ENDIF
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF

$ASK_LOOP_37_EVENT_40_2
;マナ消費
CALL QST_GET_EVENT_FLAG(1)
RESULT -= 1
CALL QST_SET_EVENT_FLAG(1,RESULT)
;ABL:(SELECTED_CHARA):身体

PRINTFORMW ズガガガガ……
CALL QST_CHANGE_HP(SELECTED_CHARA, -100)

LOCAL = ABL:(SELECTED_CHARA):身体
IF LOCAL <= RAND:150
	入手数 = 1
ELSEIF LOCAL <= RAND:300
	入手数 = 2
ELSE
	入手数 = 3
ENDIF

CALL PRINT_ADD_EXP(SELECTED_CHARA, "身体経験値", 3, 1)
CALL TRAIN_AUTO_ABLUP(SELECTED_CHARA)

CALL CHANGE_ITEM_STOCK(ITEM_石材, 入手数)
CALL GET_ITEM_NAME(ITEM_石材)
CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)

PRINTL
PRINTFORML まだ採掘を続けようか？
CALL ASK_YN("続ける", "やめる")
IF RESULT == 1
	RETURN
ENDIF
;マナ
CALL QST_GET_EVENT_FLAG(1)
IF RESULT <= 0
	PRINTFORMW ドリルのマナが足りない……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF
;体力
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF

GOTO ASK_LOOP_37_EVENT_40_2

;-------------------------------------------------
;EV60 西の坑道
;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_60
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "採掘する"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_60
#DIM CONST EVENT_ID = 60
#DIM 入手数
#DIM 出現率
#DIM 身体反映
#DIM EVENT_FLAG

$ASK_LOOP_37_EVENT_60
PRINTFORML ここが採掘ポイントのようだ……
PRINTFORMW ドリルは反動が重く、意外と疲れる作業になるだろう……(一名選択)(0名選択時キャンセル)
CALL SELECT_CHARA_LIST_INIT
CALL SELECT_CHARA_LIST_MULTI_ONLY_LOGIC_SLG(6, "PARTY_MEMBER", "NONE")
IF SELECTED_CHARA_NUM == 0
	PRINTFORMW やはりやめておこう……
	RETURN
ENDIF
IF SELECTED_CHARA_NUM >= 2
	PRINTFORMW 一人だけ選択してください
	GOTO ASK_LOOP_37_EVENT_60
ENDIF
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	RETURN
ENDIF

$ASK_LOOP_37_EVENT_60_2
;マナ消費
CALL QST_GET_EVENT_FLAG(1)
RESULT -= 1
CALL QST_SET_EVENT_FLAG(1,RESULT)

PRINTFORMW ズガガガガ……
CALL QST_CHANGE_HP(SELECTED_CHARA, -100)

CALL QST_GET_EVENT_FLAG(EVENT_ID)
出現率 = RESULT
出現率 += 10
CALL QST_SET_EVENT_FLAG(EVENT_ID,出現率)
IF RAND:100 >= 出現率
ELSE
	PRINTFORMW 掘削音に引き寄せられたのか魔物が集まってきた！戦闘は避けられない！
	IF LIST_COUNT(_LIST_QST_PARTY) == 1
		CALL QST_QUEST_38_EVENT_63
	ELSE
		CALL QST_QUEST_38_EVENT_62
	ENDIF
	CALL QST_SET_EVENT_FLAG(EVENT_ID,0)
ENDIF

LOCAL = ABL:(SELECTED_CHARA):身体
CALL PRINT_ADD_EXP(SELECTED_CHARA, "身体経験値", 4, 1)
CALL TRAIN_AUTO_ABLUP(SELECTED_CHARA)

CALL RAND_WT_INIT()
CALL RAND_WT_SET(0, 15)
CALL RAND_WT_SET(1, 60)
CALL RAND_WT_SET(2, 20 + LOCAL / 2)
CALL RAND_WT_SET(3, 5 + LOCAL / 2)
SELECTCASE RAND_WT_RESULT()
	CASE 0
		PRINTFORMW 目ぼしい物は掘れなかった……
	CASE 1
		IF LOCAL <= RAND:80
			入手数 = 3
		ELSEIF LOCAL <= RAND:100
			入手数 = 5
		ELSEIF LOCAL <= RAND:120
			入手数 = 6
		ELSE
			入手数 = 8
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_鉄鉱石, 入手数)
		CALL GET_ITEM_NAME(ITEM_鉄鉱石)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
	CASE 2
		IF LOCAL <= RAND:120
			入手数 = 2
		ELSEIF LOCAL <= RAND:140
			入手数 = 3
		ELSEIF LOCAL <= RAND:180
			入手数 = 4
		ELSE
			入手数 = 5
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_銀鉱石, 入手数)
		CALL GET_ITEM_NAME(ITEM_銀鉱石)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
	CASE 3
		IF LOCAL <= RAND:150
			入手数 = 1
		ELSEIF LOCAL <= RAND:175
			入手数 = 2
		ELSEIF LOCAL <= RAND:200
			入手数 = 3
		ELSE
			入手数 = 4
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_金鉱石, 入手数)
		CALL GET_ITEM_NAME(ITEM_金鉱石)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
ENDSELECT

PRINTL
PRINTFORML まだ採掘を続けようか？
CALL ASK_YN("続ける", "やめる")
IF RESULT == 1
	CALL QST_QUEST_38_EVENT_0
	RETURN
ENDIF
;マナ
CALL QST_GET_EVENT_FLAG(1)
IF RESULT <= 0
	PRINTFORMW ドリルのマナが足りない……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF
;体力
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF

GOTO ASK_LOOP_37_EVENT_60_2

;-------------------------------------------------

@QST_QUEST_38_EVENT_62
#DIM CHARA_ID

;;戦闘イベント処理
;白兵戦参加メンバーの初期化
CALL CC_INIT()
;クエストのパーティメンバーを攻撃側として追加
CALL CC_ADDPARTY("ATTACKER")

;防御側キャラクターの設定(最大6名)
IF RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン")
ELSEIF  RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン２")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン３")
ELSE
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン２")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン２")
ENDIF

;戦闘処理呼出
CALL CLOSE_COMBAT()
IF RESULT == 1
	;戦闘終了後のHPをパーティに適用
	CALL CC_APPLY_CHARA_HP()
	;防御側エネミーから戦利品を獲得
	CALL CC_GET_LOOT_FROM("DEFENDER")
	CALL FL_PLAYSE("Fanfare_0.ogg")
	PRINTFORMW 魔物を倒して作業を再開した
ELSE
	;敗北イベント
	PRINTFORMW ベラルスクに救助され坑道から脱出した……
	TFLAG:クエスト_完了フラグ = 1
	QST_COOLTIME:QST_有効クエストID += 3
	CALL TRAIN_EXIT()
ENDIF

;-------------------------------------------------

@QST_QUEST_38_EVENT_63
#DIM CHARA_ID

;;戦闘イベント処理
;白兵戦参加メンバーの初期化
CALL CC_INIT()
;クエストのパーティメンバーを攻撃側として追加
CALL CC_ADDPARTY("ATTACKER")
;NPC参加
CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
;NPCに戦闘時のみ有効な武器を持たせる
CALL CC_SET_TEMP_WEAPON(CHARA_ID, 3, "", WPN_材質_銀)
CALL CC_ADDCHARA("ATTACKER", CHARA_ID)

;防御側キャラクターの設定(最大6名)
IF RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン")
ELSEIF  RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン２")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン３")
ELSE
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン２")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ゴブリン", "ゴブリン２")
ENDIF

;戦闘処理呼出
CALL CLOSE_COMBAT()
IF RESULT == 1
	;戦闘終了後のHPをパーティに適用
	CALL QST_QUEST_38_CC_APPLY_CHARA_HP()
	;防御側エネミーから戦利品を獲得
	CALL CC_GET_LOOT_FROM("DEFENDER")
	CALL FL_PLAYSE("Fanfare_0.ogg")
	PRINTFORMW 魔物を倒して作業を再開した
ELSE
	;敗北イベント
	PRINTFORMW ベラルスクに救助され坑道から脱出した……
	TFLAG:クエスト_完了フラグ = 1
	QST_COOLTIME:QST_有効クエストID += 3
	CALL TRAIN_EXIT()
ENDIF

;-------------------------------------------------
;EV80 中央の坑道
;-------------------------------------------------

@QST_ADD_EVENT_QUEST_38_EVENT_80
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "採掘する"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_38_EVENT_80
#DIM CONST EVENT_ID = 80
#DIM 入手数
#DIM 出現率
#DIM EVENT_FLAG

$ASK_LOOP_37_EVENT_80
PRINTFORML ここが採掘ポイントのようだ……
PRINTFORMW ドリルは反動が重く、意外と疲れる作業になるだろう……(一名選択)(0名選択時キャンセル)
CALL SELECT_CHARA_LIST_INIT
CALL SELECT_CHARA_LIST_MULTI_ONLY_LOGIC_SLG(6, "PARTY_MEMBER", "NONE")
IF SELECTED_CHARA_NUM == 0
	PRINTFORMW やはりやめておこう……
	RETURN
ENDIF
IF SELECTED_CHARA_NUM >= 2
	PRINTFORMW 一人だけ選択してください
	GOTO ASK_LOOP_37_EVENT_80
ENDIF
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	RETURN
ENDIF

$ASK_LOOP_37_EVENT_80_2
;マナ消費
CALL QST_GET_EVENT_FLAG(1)
RESULT -= 1
CALL QST_SET_EVENT_FLAG(1,RESULT)

PRINTFORMW ズガガガガ……
CALL QST_CHANGE_HP(SELECTED_CHARA, -100)

CALL QST_GET_EVENT_FLAG(EVENT_ID)
出現率 = RESULT
LOCAL = RAND:20
LOCAL += 5
出現率 += LOCAL
CALL QST_SET_EVENT_FLAG(EVENT_ID,出現率)
IF RAND:100 >= 出現率
ELSE
	PRINTFORMW 掘削音に引き寄せられたのか魔物が集まってきた！戦闘は避けられない！
	IF LIST_COUNT(_LIST_QST_PARTY) == 1
		CALL QST_QUEST_38_EVENT_83
	ELSE
		CALL QST_QUEST_38_EVENT_82
	ENDIF
	;戦闘イベントで敗北している場合イベント打ち切り
	IF !RESULT
		RETURN
	ENDIF
	CALL QST_SET_EVENT_FLAG(EVENT_ID,0)
ENDIF

LOCAL = ABL:(SELECTED_CHARA):身体
CALL PRINT_ADD_EXP(SELECTED_CHARA, "身体経験値", 4, 1)
CALL TRAIN_AUTO_ABLUP(SELECTED_CHARA)

CALL RAND_WT_INIT()
CALL RAND_WT_SET(0, 35)
CALL RAND_WT_SET(1, 25)
CALL RAND_WT_SET(2, 25)
CALL RAND_WT_SET(3, 15)
SELECTCASE RAND_WT_RESULT()
	CASE 0
		IF LOCAL <= RAND:100
			入手数 = 3
		ELSEIF LOCAL <= RAND:120
			入手数 = 4
		ELSEIF LOCAL <= RAND:140
			入手数 = 5
		ELSE
			入手数 = 6
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_マナ結晶, 入手数)
		CALL GET_ITEM_NAME(ITEM_マナ結晶)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
	CASE 1
		IF LOCAL <= RAND:125
			入手数 = 2
		ELSEIF LOCAL <= RAND:150
			入手数 = 3
		ELSEIF LOCAL <= RAND:175
			入手数 = 4
		ELSE
			入手数 = 5
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_石炭, 入手数)
		CALL GET_ITEM_NAME(ITEM_石炭)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
	CASE 2
		IF LOCAL <= RAND:125
			入手数 = 2
		ELSEIF LOCAL <= RAND:150
			入手数 = 3
		ELSEIF LOCAL <= RAND:175
			入手数 = 4
		ELSE
			入手数 = 5
		ENDIF
		CALL CHANGE_ITEM_STOCK(ITEM_硫黄, 入手数)
		CALL GET_ITEM_NAME(ITEM_硫黄)
		CALL COLOR_PRINTW(@"――%RESULTS%を{入手数}つ手に入れた", カラー_注意)
	CASE 3
		CALL QST_GET_EVENT_FLAG(3)
		RESULT += 1
		CALL QST_SET_EVENT_FLAG(3,RESULT)
		CALL COLOR_PRINTW(@"――魔宝原石を1つ手に入れた（クエストアイテムです。クエスト中に使用しないと消滅します）", カラー_注意)
ENDSELECT

PRINTL
PRINTFORML まだ採掘を続けようか？
CALL ASK_YN("続ける", "やめる")
IF RESULT == 1
	CALL QST_QUEST_38_EVENT_0
	RETURN
ENDIF
;マナ
CALL QST_GET_EVENT_FLAG(1)
IF RESULT <= 0
	PRINTFORMW ドリルのマナが足りない……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF
;体力
IF BASE:(SELECTED_CHARA):体力 <= 600
	PRINTFORMW %ANAME(SELECTED_CHARA:0)%は疲れているようだ……
	CALL QST_QUEST_38_EVENT_0 ;マナとか再表示
	RETURN
ENDIF

GOTO ASK_LOOP_37_EVENT_80_2

;-------------------------------------------------

@QST_QUEST_38_EVENT_82
#DIM CHARA_ID

;;戦闘イベント処理
;白兵戦参加メンバーの初期化
CALL CC_INIT()
;クエストのパーティメンバーを攻撃側として追加
CALL CC_ADDPARTY("ATTACKER")
;防御側キャラクターの設定(最大6名)
IF RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン２")
ELSE
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・ファランクス", "スケルトン・ファランクス")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン")
ENDIF
;戦闘処理呼出
CALL CLOSE_COMBAT()
IF RESULT == 1
	;戦闘終了後のHPをパーティに適用
	CALL CC_APPLY_CHARA_HP()
	;防御側エネミーから戦利品を獲得
	CALL CC_GET_LOOT_FROM("DEFENDER")

	CALL FL_PLAYSE("Fanfare_0.ogg")
	PRINTFORMW 魔物を倒して作業を再開した
	RETURN 1
ELSE
	;敗北イベント
	PRINTFORMW ベラルスクに救助され坑道から脱出した……
	TFLAG:クエスト_完了フラグ = 1
	QST_COOLTIME:QST_有効クエストID += 3
	CALL TRAIN_EXIT()
	RETURN 0
ENDIF

;-------------------------------------------------

@QST_QUEST_38_EVENT_83
#DIM CHARA_ID

;;戦闘イベント処理
;白兵戦参加メンバーの初期化
CALL CC_INIT()
;クエストのパーティメンバーを攻撃側として追加
CALL CC_ADDPARTY("ATTACKER")
;NPC参加
CHARA_ID = NAME_TO_CHARA("魔導技士ベラルスク")
;NPCに戦闘時のみ有効な武器を持たせる
CALL CC_SET_TEMP_WEAPON(CHARA_ID, 3, "", WPN_材質_銀)
CALL CC_ADDCHARA("ATTACKER", CHARA_ID)

;防御側キャラクターの設定(最大6名)
IF RAND:100 >= 50
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン１")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン２")
ELSE
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・センチュリオン", "スケルトン・センチュリオン")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・ファランクス", "スケルトン・ファランクス")
	CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン", "スケルトン")
ENDIF
;戦闘処理呼出
CALL CLOSE_COMBAT()
IF RESULT == 1
	;戦闘終了後のHPをパーティに適用
	CALL CC_APPLY_CHARA_HP()
	;防御側エネミーから戦利品を獲得
	CALL CC_GET_LOOT_FROM("DEFENDER")

	CALL FL_PLAYSE("Fanfare_0.ogg")
	PRINTFORMW 魔物を倒して作業を再開した
	RETURN 1
ELSE
	;敗北イベント
	PRINTFORMW ベラルスクに救助され坑道から脱出した……
	TFLAG:クエスト_完了フラグ = 1
	QST_COOLTIME:QST_有効クエストID += 3
	CALL TRAIN_EXIT()
	RETURN 0
ENDIF

;-------------------------------------------------
;-------------------------------------------------
;以下イベントリストで管理する必要のない処理,イベント固有の関数など
;-------------------------------------------------
@QST_QUEST_38_DEFEAT_EVENT

;-------------------------------------------------
;-------------------------------------------------
;戦闘後のHP処理改造
;-------------------------------------------------
@QST_QUEST_38_CC_APPLY_CHARA_HP()
#DIM DYNAMIC IDX, CC_MAX_MEMBER_NUM
#DIM DYNAMIC CHARA_ID
#DIM DYNAMIC HP
#DIM DYNAMIC MEM_CNT

MEM_CNT = DT_SELECT("CC_ACTOR",,, IDX)
FOR LOCAL, 0, MEM_CNT
	CHARA_ID = DT_CELL_GET("CC_ACTOR", IDX:LOCAL, "CHARA_ID", 1)
	IF CHARA_ID >= 1
		HP = DT_CELL_GET("CC_ACTOR", IDX:LOCAL, "HP", 1)
		BASE:CHARA_ID:体力 = MAX(1, HP)
	ENDIF
NEXT
;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_38_CREATE_VICTIMS(SEX)
#DIM SEX
#DIM 対象
#DIMS 名前
#DIM 主導除外フラグ

名前 = ベラルスク

CALL CREATE_RANDOM_CHARA(0, -1, SEX)
FLAG:汎用武将カウント --
対象 = RESULT
IF LOCAL == -1
	RETURN -1
ENDIF

NO:対象 = GET_EMPTY_NO()
;ユニークキャラとして一度だけ生成するのでCSTR:99を登録
;CSTR:99は他キャラと重複できないので固有の名称が望ましい
CSTR:対象:99 '= "魔導技士ベラルスク"
NAME:対象 = %名前%
CALLNAME:対象 = %名前%
MAXBASE:対象:体力 = 1800
MAXBASE:対象:気力 = 1800
MAXBASE:対象:精神力 = 1800
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
TALENT:対象:体格 = 体格_普通
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 = RAND(45, 50)
ABL:対象:性知識 = 4
ABL:対象:Ｃ感 = 2
ABL:対象:Ｖ感 = 2
ABL:対象:Ａ感 = 1
ABL:対象:Ｂ感 = 2
ABL:対象:奉仕 = 2
ABL:対象:性技 = 3
ABL:対象:欲望 = 3
ABL:対象:性交 = 2
ABL:対象:精愛 = 3
ABL:対象:サド = 1
ABL:対象:マゾ = 0
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 100)
EXP:対象:絶頂経験 = 10

TALENT:対象:合意 = 1

CFLAG:対象:所属 = 所属_ゲストNPC

;[ポートレイトパーツ情報]
;※ポートレイト・口上編集画面の[パーツ情報出力]の出力ファイルを編集すると設定しやすいです
CSTR:対象:顔グラファイル名 '= "chara38.webp"
CSTR:対象:キャラ顔グラ '= "chara38.webp"
CFLAG:対象:ポートレイト画像タイプ = 2

CFLAG:対象:汎用口上パターン = 2038

CALL SET_BODYSIZE(対象)

RETURN 対象


code:
MAP_NAME = "採掘助手"
MAP_IMAGE = "q38.webp"
PATH_COLOR = "0xf85858"
PATH_ALPHA = "0x7d"
NODE_BASE_COLOR = "0x454ff"


code:
<DocumentElement>
  <GMAPDATA>
    <id>638179414069835197</id>
    <NODE_ID>0</NODE_ID>
    <NODE_NAME>出入口</NODE_NAME>
    <POS_X>440</POS_X>
    <POS_Y>360</POS_Y>
    <PATH_LIST>1,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179424942789360</id>
    <NODE_ID>1</NODE_ID>
    <NODE_NAME>村</NODE_NAME>
    <POS_X>280</POS_X>
    <POS_Y>280</POS_Y>
    <PATH_LIST>0,2,3,5,7,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179124383754194</id>
    <NODE_ID>2</NODE_ID>
    <NODE_NAME>技士倉庫</NODE_NAME>
    <POS_X>300</POS_X>
    <POS_Y>340</POS_Y>
    <PATH_LIST>1,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179425567006028</id>
    <NODE_ID>3</NODE_ID>
    <NODE_NAME>東の道</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>220</POS_Y>
    <PATH_LIST>1,4,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179426017058788</id>
    <NODE_ID>4</NODE_ID>
    <NODE_NAME>東の坑道</NODE_NAME>
    <POS_X>480</POS_X>
    <POS_Y>160</POS_Y>
    <PATH_LIST>3,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179426856470682</id>
    <NODE_ID>5</NODE_ID>
    <NODE_NAME>西の道</NODE_NAME>
    <POS_X>220</POS_X>
    <POS_Y>220</POS_Y>
    <PATH_LIST>1,6,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179122388305632</id>
    <NODE_ID>6</NODE_ID>
    <NODE_NAME>西の坑道</NODE_NAME>
    <POS_X>140</POS_X>
    <POS_Y>200</POS_Y>
    <PATH_LIST>5,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179123574879005</id>
    <NODE_ID>7</NODE_ID>
    <NODE_NAME>中央の道</NODE_NAME>
    <POS_X>340</POS_X>
    <POS_Y>200</POS_Y>
    <PATH_LIST>1,8,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179124042393830</id>
    <NODE_ID>8</NODE_ID>
    <NODE_NAME>中央の坑道</NODE_NAME>
    <POS_X>300</POS_X>
    <POS_Y>140</POS_Y>
    <PATH_LIST>7,9,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638179427633298890</id>
    <NODE_ID>9</NODE_ID>
    <NODE_NAME>遺跡坑道</NODE_NAME>
    <POS_X>260</POS_X>
    <POS_Y>100</POS_Y>
    <PATH_LIST>8,</PATH_LIST>
  </GMAPDATA>
</DocumentElement>