code:
;-------------------------------------------------
;EV100
;満月の塔　希望の間
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_80_EVENT_100
; #region 10:満月の塔　希望の間
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_80_EVENT_100
VARS TEXT
{
    TEXT '= @"

        %QST_LEADER_NAME()%は石橋を渡りきり、ついに宮殿の中心にそびえる塔へとたどり着いた
        白亜石でできた塔の外壁は、直上の大天窓から降り注ぐ月光に照らされて、薄く白い輝きを放っている[$W]

        塔の中はがらんとして静まり返っており、螺旋状の階段が塔の頂上へと続く
        魔物気配こそしないものの、重く陰鬱な空気が室内を満たしているのが感じられる[$W]

        気を抜くべきではないだろう
        あるいは既に消耗しているなら、一度引き返すのも懸命な判断かもしれない……[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)

; #endregion

;-------------------------------------------------
;EV110
;満月の塔　夢の間
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_80_EVENT_110
; #region 11:満月の塔　夢の間
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_80_EVENT_110

VARS TEXT
{
    TEXT '= @"

        疲労から深く出た息が白色を帯び、中空に霧散する[$W]
        螺旋階段を一歩登るごとに、室内を包む冷たく不快な空気はますますその色を濃くしていく[$W]

        中程まで登ったところで%QST_LEADER_NAME()%は、外周を巡るように回廊が設けられているのを見出した
        その先にはいくつかの小部屋があるようだ[$W]

        一方で螺旋階段はさらに上へと続いている
        場を満たす陰鬱で邪悪な空気は間違いなく頭上から発せられている[$W]

        元凶との対峙はそう遠くないだろう……[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)

@QST_ADD_EVENT_QUEST_80_EVENT_111
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "夢の間　空中楼"
#DIMS EVENT_TYPE = ""
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:2 = %EVENT_TYPE%
RESULTS:3 '= "[EVENT_ICON:CHEST]"

@QST_QUEST_80_EVENT_111
VARS TEXT
{
    TEXT '= @"

        %QST_LEADER_NAME()%の眼前に塔から突き出すように設けられた空中楼が見える
        楼の中には石の台座が設けられており、その上には一振りの戦鎚が据え置かれている[$W]

        細微な装飾の施された銀細工の戦鎚だ
        望むならこの武器を手にすることもできるかもしれない……[$W]

        しかし空中楼を支える回廊の損傷が著しく、わずかでも重さを加えれば崩落しかねないようにも見える[$W]

        渡るには細心の注意を払う必要があるだろう……[$W]

        "
}
CALL PRINT_DIAG(TEXT)

;大鏡のイベントの判定は何度でも挑戦可とする。これ成功しないと進めないので
VARI CHARA_ID
CALL QST_ROLL_MULTI("身体,", "注意を払って足を踏み出す(身体),", "1000,", 16)
IF RESULT == 1 ;成功
    CHARA_ID = RESULT:1
    {
        TEXT '= @"

            %ANAME(CHARA_ID)%は空中楼へと続く回廊に慎重に足を踏み出す
            わずかに重さを加えただけでも、外壁がきしみ、剥片が遥か下へと落ちていく[$W]

            だが%ANAME(CHARA_ID)%は類稀なるバランス感覚で見事回廊を渡りきり、台座の前に立った！[$W]

            銀細工の戦鎚は月光に照らされ、曇り一つ無い見事な輝きを帯びている
            これはどうやらただの銀製ではないようだ[$W]

            この素材はまことの銀、星月銀、そして今日においては魔導銀として知られている
            上古の時代より秘宝として重宝されてきた真銀。それによって鍛えられた宝具のようだ[$W]

            その輝きは悠久の歳月を経てなお霞むことのない煌きを放っている……[$W]

            "
    }
    CALL PRINT_DIAG(TEXT)
    VARS EQUIP_DATA
    {
        EQUIP_DATA '= @""
            + @"[WEAPON_ID:16]"
            + @"[EQUIP_TYPE:0]"
            + @"[WEAPON_NAME:『砕魔の戦鎚』]"
            + @"[WEAPON_RANK:5]"
            + @"[MATERIAL:{WPN_材質_魔導銀}]"
            + @"[ACTIVE_WEAPON_SKILL:WPN_SMITE,3,]"
            + @"[ACTIVE_SKILL_SLOT:1]"
            + @"[ENCHANTED_ACTIVE_WEAPON_SKILL:WPN_BREAK_CAST,1,]"
            + @"[PASSIVE_SKILL_SLOT:1]"
    }

    CALL QST_GET_EQUIP(EQUIP_DATA, 1)
    WAIT
    CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 2)
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ELSEIF RESULT == -1;キャンセル
    RETURN
ELSE
    CHARA_ID = RESULT:1
    {
        TEXT '= @"

            %ANAME(CHARA_ID)%は空中楼へと続く回廊に慎重に足を踏み出す
            わずかに重さを加えただけでも、外壁がきしみ、剥片が遥か下へと落ちていく[$W]

            ――しまった！[$W]

            %ANAME(CHARA_ID)%がつま先に重さをかけた途端、回廊中に亀裂が走り、ガラガラと音を立てて崩壊していく！[$SE:Explode_5.mp3][$W]
            空中楼もまた支えを失って崩落し、遥か眼下へと落ちてしまった[$W]

            %ANAME(CHARA_ID)%は間一髪で崩落から逃れることができた[$W]
            だが一行は崩落した楼が地底湖の湖面に激突して水柱を上げるのを呆然と眺める他なかった……[$W]
            "
    }
    CALL PRINT_DIAG(TEXT)
    CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
    CALL QST_ACTIVATE_EVENT(112)
ENDIF

;;; このイベントは5:湖月の渡に配置される
@QST_ADD_EVENT_QUEST_80_EVENT_112
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "空中楼の残骸"
#DIMS EVENT_TYPE = ""
; デフォルトで非アクティブ。EV111によってのみ活性化
CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:2 = %EVENT_TYPE%
RESULTS:3 '= "[EVENT_ICON:CHEST]"

@QST_QUEST_80_EVENT_112

VARS TEXT
{
    TEXT '= @"

        %QST_LEADER_NAME()%は倒壊した空中楼の残骸が湖面に顔を覗かせているのを見出した[$W]

        近寄ってみると、楼内に奉じられていた戦鎚が瓦礫の合間から顔を覗かせている[$W]
        崩落に巻き込まれながらも傷一つないようだ[$W]

        %QST_LEADER_NAME(1)%が手にとってしげしげと観察すると、どうやらただの銀製ではないことがわかってくる[$W]

        曇りなく輝くこの素材は真銀、星月銀、そして今日においては魔導銀という呼び名で知られている
        上古の時代より秘宝として重宝されてきた真銀。それによって鍛えられた宝具のようだ[$W]

        その輝きは悠久の歳月を経てなお霞むことのない煌きを放っている……[$W]

        "
}
CALL PRINT_DIAG(TEXT)
VARS EQUIP_DATA
{
    EQUIP_DATA '= @""
        + @"[WEAPON_ID:16]"
        + @"[EQUIP_TYPE:0]"
        + @"[WEAPON_NAME:『砕魔の戦鎚』]"
        + @"[WEAPON_RANK:5]"
        + @"[MATERIAL:{WPN_材質_魔導銀}]"
        + @"[ACTIVE_WEAPON_SKILL:WPN_SMITE,3,]"
        + @"[ACTIVE_SKILL_SLOT:1]"
        + @"[ENCHANTED_ACTIVE_WEAPON_SKILL:WPN_BREAK_CAST,1,]"
        + @"[PASSIVE_SKILL_SLOT:1]"
}

CALL QST_GET_EQUIP(EQUIP_DATA, 1)
WAIT
CALL QST_DEACTIVATE_EVENT(QST_NOWEV)

; #endregion
;-------------------------------------------------
;EV120
;満月の塔　時の間
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_80_EVENT_120
; #region 11:満月の塔　夢の間
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_80_EVENT_120

VARS TEXT
VARI CHARA_ID
CALL FL_PLAYBGM("Ambient_dark_calm_1.ogg")
{
    TEXT '= "
        %QST_LEADER_NAME()%は塔の最上階へと到達した[$W]
        頭上の巨大な大天窓の先には満点の星空が広がっており、星空に浮かぶ月は手を伸ばせば届かんほどに大きく見える[$W]

        床には円形の月時計が刻まれており、差し込む月明かりによって時を刻んでいるようだ

        その文字盤の上には漆黒のローブを纏った男が一人、佇んでいる[$W]
        男はこちらに背を向け、しゅうしゅうと響く酷く耳障りな声で独りごちる[$W]

        「ない、ない、ない。御方に捧げるべき帝冠なぞ、何処にもないではないか」[$W]

        %QST_LEADER_NAME()%はこの男から身の毛のよだつ、酷く嫌な気配を感じ取った[$W]
        肌は不意に氷水に漬けられたかの如く冷え、腹の奥底からこみ上げる不快感が胃を押し上げる[$W]
        男もまたこちらの存在に気付いたのか、ゆっくりとこちらを振り返る[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL DRAW_STILL(@"STILL_モラングール", @"[SIZE_X:640px][SIZE_Y:480px]", 1)
{
    TEXT '= "

        黒いフードから覗く、顔があるべき場所にはぽっかりと虚空が広がっており、その表情を伺うことはできない[$W]

        「答えよ、滅びし定めの者らよ。帝冠は、貴様らの死した王、その冠はどこにある？」[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL ASK_YN("知らない", "何も答えない")
IF RESULT
    PRINTFORMW %QST_LEADER_NAME(1)%は何も答えなかった。おそらく相対しているのは幽鬼だ。答えてやる理由もない
ELSE
    PRINTFORMW %QST_LEADER_NAME(1)%は素直に問いに応じた。自分たちも冠を求めてやってきたのであり、その所在は知らないと
ENDIF
{
    TEXT '= "

        「知ろうが、知るまいがどちらでもよいこと。どの道貴様らを生かして返す道理はない」[$W]

        男が懐に手を伸ばすとじゃらりと音が鳴り、黒衣の中から黒鋼の鎖が地面に落ちる
        柄から伸びた長い鎖の先には禍々しく棘の突き出た鉄球が備えられている[$W]

        ……幽鬼たちが持つ不浄の剣と同じく、冥府の国にて鍛えれた黒鋼のフレイル
        それはかつての大戦において、幽鬼どもを束ね中央世界を蹂躙して回った恐るべき黒の太守、冥将モラングールの武器として知られている[$W]

        幽鬼どもの頭目がなぜ今になってこのような場所で暗躍しているのか？　疑念は尽きない[$W]
        しかし今は余計な思考に注意を向ける猶予はなさそうだ[$W]

        呪魔の込められた恐るべき鉄塊が%QST_LEADER_NAME(1)%をかすめ、背後の先代皇帝の彫像を紙細工の如く弾き飛ばしたのを見れば、
        まず、第一に考えるべきことは明らかだ！[$W]

        ――かの恐るべき邪悪の尖兵を退け、生き残らねば！[$W]
        "
}
CALL PRINT_DIAG(TEXT)
;戦闘イベント初期化
CALL CC_INIT()
;クエストのパーティメンバー全員を攻撃側として戦闘メンバーに追加
CALL CC_ADDPARTY()
;エネミーを防御側で追加
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "QUEST_80_冥将『モラングール』", "深淵の冥将『モラングール』")
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "QUEST_80_破城の鋼星『グロンド』", "鉄槌・破城の鋼星『グロンド』")
;戦闘イベント呼出
CALL CLOSE_COMBAT("[BGM:Boss_12.mp3][BGM_NOT_AUTOSTOP:1]")

IF RESULT == 1 ;勝利
    VARI CHARA_ID
    CHARA_ID = QST_RANDCHARA()
    CALL FL_PLAYBGM("Boss_3.ogg")
    {
        TEXT '= @"

            鉄球は意思を持ったように踊り狂い、進路上に存在する障害となるものすべてを粉々に粉砕していく[$W]
            %QST_LEADER_NAME()%はそれをすんでのところで躱し、打ち退け、反撃の機会を伺う[$W]

            %ANAME(CHARA_ID)%が盾にした光源用のマナ結晶に鉄塊が直撃したその時、漏れ出でた溢れんばかりの光が室内を満たした[$W]

            これまで攻勢一辺倒であった冥府の将は閃光に耐えかね腕で顔を覆い、たじろぐ[$W]

            ――これまで十分な戦闘経験を積んだ%QST_LEADER_NAME()%にとって、それは逃すはずもない致命的な間隙であった！[$W]

            渾身の力を込めて振るった一撃が黒鋼の剣の腹を打ってへし折り、モラングールの胴を正確に捉えた[$SE:Clash_0.mp3][$W]

            ……手ごたえはあったように思えた。だが手を通して伝わる不気味な違和感から仕留めたという確証が持てない
            事実、その一撃はモラングールへの決定打にはならなかったようだ[$W]

            武器の一つを失った幽鬼は片腕を頭上に向けて掲げる
            それに呼応するように、天蓋が轟音とともに砕けて飛び、一匹の翼竜が鋭い爪を立てて押し入ってきた[$SE:Explode_5.mp3][$W]

            ……正確には竜でないようだ[$W]
            黒鋼の鎧に覆われた身体の下からは毛も鱗も無いぬめった肌がのぞいている。眼はなく、歪に生えそろった牙を口から覗かせている[$W]
            幽鬼どもが駆る、名さえ忘却の彼方にある上古のおぞましき獣、その一翼であるようだ[$W]
            もっともそれは今まで見てきたどの個体よりも歪で、巨大で、獰猛なように思われた[$W]

            幽鬼の主はそれに跨ると体の芯まで凍りつくような、耳障りな叫びで獣に命じる
            邪悪なそれは、幽鬼の黒の言葉に呼応し、牙を剥き出しこちらを噛み砕かんと迫る！[$W]

            [$W]
            ……だがその一撃はさらなる乱入者によって防がれた[$SE:Critical_0.mp3][$W]
            白銀の大狼、その牙が獣の喉笛に深々と突き刺さっている[$W]
            醜悪な獣は長い首をばたつかせてもがき、白狼を振り落とさんとする[$W]

            呆然と状況を見守る%QST_LEADER_NAME()%の下にもう一頭の狼が身を寄せる[$W]

            それはかつてファヌイリエルの大山で相まみえたダイアウルフであった。%QST_LEADER_NAME()%の眼前にいるのはその主のようだ[$W]
            彼女は長い鼻先をくいと背に向ける。まるで乗れと言わんばかりだ[$W]

            "
    }
    CALL PRINT_DIAG(TEXT)
    CALL ASK_YN("応じる", "渋る")
    IF !RESULT
        PRINTFORMW 迷っている暇はない、兎にも角にも一度態勢を建て直さねば。%QST_LEADER_NAME()%は求めに応じ素早く狼の背に飛び乗った
    ELSE
        PRINTFORMW まだ戦えると%QST_LEADER_NAME()%が渋っていると、ダイアウルフの主は問答無用とばかりに%QST_LEADER_NAME(1)%を咥え込み、その背に放り投げた
    ENDIF
    {
        TEXT '= "

            ダイアウルフは%QST_LEADER_NAME()%を乗せると脱兎の如く駆けだし、獣が天蓋に空けた穴から外へと飛び出した[$SE:Speed_0.mp3][$W]
            そのまま大岩塊を飛ぶように駆け降り、眼下に広がる雲海へと飛び込む[$W]

            ……雲の波が押し寄せ視界が白に染まる[$BGM:BGS_wind.mp3][$SE:Wind_0.mp3][$W]
            緊張の糸が途切れ、代わって猛烈な疲労感が押し寄せてくる[$W]
            大狼の柔らかな毛並みと温もりに包まれるうちに、%QST_LEADER_NAME()%の意識は微睡んでいった……[$W]

            ……………………[$W]
            ………………[$W]
            …………[$W]

            ……その後の顛末については記憶が判然としない[$W]

            %QST_LEADER_NAME()%が意識を取り戻すとそこはリナシメントの最前線、ノアレルム軍の野営地のテントの中であった[$BGM:Nostalgic_4.ogg][$W]

            歩哨に顛末を聞くと、見たこともない巨大な狼が突然現れ、%QST_LEADER_NAME()%を放り投げて去っていったという[$W]

            %QST_LEADER_NAME()%は近隣の冒険者ギルドに赴き、依頼の顛末を報告する[$W]

            依頼主の要求にあった帝冠を手に入れることは叶わなかった[$W]
            また幽鬼がなぜレルムの帝冠を求めるのか、その理由も不明であった[$W]
            結局のところ依頼自体はなんとも歯切れの悪い結果に終わったように思われた[$W]

            程なくしてギルドの仲介で一通の書簡と褒賞が%QST_LEADER_NAME()%のもとに届く[$W]

            書簡には極めて流麗で古風な字体で、簡潔に「期待以上のものを見させてもらった」とだけ書き添えられていた[$W]

            "
    }
    CALL PRINT_DIAG(TEXT)
    CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 2)
    CALL QST_QUEST_80_ENDING
ELSE
    {
        TEXT '= "

            ――刃が立たない！[$W]

            黒の冥主の一撃はあまりにも重い。乱舞する鉄塊を前に%QST_LEADER_NAME()%は瞬く間に劣勢に立たされる[$W]
            渾身の力を振るって放った逆襲は、モラングールの帯剣によってあっさりといなされてしまう

            体勢を崩し地に膝を付く%QST_LEADER_NAME(1)%の眼前に、冷徹な鋼の、死の一撃が差し迫る！[$W]

            万事休すか……、そう思われたとき月時計の文字盤が不意に輝きを帯びる
            光はあっという間に部屋全体を包み込み、視界を白く染め上げた[$SE:Charge_0.mp3][$W]

            ……………………[$W]
            ………………[$W]
            …………[$W]
            [$BGM:Shrine_4.mp3]
            気がつけば、%QST_LEADER_NAME()%は塔の中層、夢の間に横たわっていた[$W]
            奇妙なことに先程の激戦で受けたはずの傷はなく、痛みもない
            自身の状況を鑑みれば、これは最上階に挑む直前の状態の用に思われた[$W]

            ……先程までの戦いは悪夢か何かであったのだろうか？
            だが夢にしてはあまりにも生々しく、鮮烈であった[$W]

            意識は漠とし、身体はひどく重く、倦怠感に包まれている[$W]
            加えて、このまま階段を登れば夢と同様か、ずっと悪い結末が待ち構えている確信めいた予感が%QST_LEADER_NAME(1)%にはあった[$W]

            ……いまは一度退却し、体勢を立て直すのが懸命であろう[$W]

            "
    }
    CALL PRINT_DIAG(TEXT)
    CALL QST_QUEST_80_DEFEAT_EVENT()
ENDIF

; #endregion

;-------------------------------------------------
;EV130
;満月の塔 忘却の間
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_80_EVENT_130
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_80_EVENT_130
#DIM DYNAMIC CHARA_ID
VARS TEXT

{
    TEXT '= "

        %QST_LEADER_NAME()%は塔の中層部の一室に脚を踏み入れた。どうやらここは書庫のようだ
        永きにわたって放置されていたことで、大半は既に朽ち果ててしまっている[$W]

        だが、古帝国時代に書かれた書物のいくつかは、辛うじて判読できそうだ
        望むなら手にとって見るのも良いだろう[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)

@QST_ADD_EVENT_QUEST_80_EVENT_132
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "『月下の宮殿』"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= "[EVENT_ICON:BOOK]"

@QST_QUEST_80_EVENT_132
VARS TEXT

CALL COLOR_LINE()
PRINTFORMW 『月下の宮殿』
CALL COLOR_LINE()
{
    TEXT '= "

        この宮殿がいつ、いかなる時代に築かれたものなのか、その正確な記録は帝国には存在しない
        帝国の歴史家たちが耳長の連中……エルフに協力を仰いだものの、結局はいつもの迂遠な言い回しで煙に巻かれるばかりであった[$W]

        しかし断片的に得られた情報によれば、この宮殿は遥か上古の時代、エルフたちが大洋を越え
        伝説にのみ知られる西方の国から中央世界に植民した初期の時代に築かれたものなのだという[$W]

        その時代においてはエルフの力は今日とは比べ物にならないほどに強力であり、
        この宮殿もまた、彼らが全盛を誇った時代の遺物の一つであったようだ[$W]

        確かにその技術力の高さは、この満月の塔の直上に設けられた大天窓を見れば明らかだ[$W]

        我々はあの天窓が一体どうやって、頭上の大岩塊を完全に透過し、夜空を曇りなく映し出しているのか、
        その術の片鱗さえ掴むことが出来ない[$W]

        大天窓は日中には機能することなく、日が没した後にのみ空を映す
        どうやらその目的は満月の塔の頂上に設けられた月時計を機能させるためだけにあるようだ[$W]

        月時計がただ時を刻むためだけの用途であれば、無論このような大掛かりな仕掛けは不要であろう
        しかし、我々にはその本来の用途もまた、想像だにすることが出来ないでいる[$W]

        "
}
CALL PRINT_DIAG(TEXT)

@QST_ADD_EVENT_QUEST_80_EVENT_133
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "『西の果て』"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= "[EVENT_ICON:BOOK]"

@QST_QUEST_80_EVENT_133
VARS TEXT

CALL COLOR_LINE()
PRINTFORMW 『西の果て』
CALL COLOR_LINE()
{
    TEXT '= "

        第二紀の始め、エルフたちは遥か大洋を越え、西の果てよりこの中央世界に植民した……と公には知られている[$W]
        しかしながら、しばしばエルフたちが口にする西方とは、果たして我々の地理的概念としての『西』と一致しているのかは疑わしい[$W]

        なぜなら我々はエルフたちが西から渡来したという証拠、あの過酷極まりない大外洋を超える術を持った船の存在の片鱗さえ見たことが無く、
        また彼らが西の果へと帰る姿も、実際に見たものはいない[$W]

        伝説上の西方の国を求め、遠征隊や向こう見ずな冒険者たちが西への冒険へ挑むことは少なくはない
        しかしながら、今日に至るまで我々は大海原に浮かぶわずかな島嶼の他は何一つ見出すことが出来ずにいる[$W]

        さらに先へ進もうにも激烈な嵐と海魔が行く手を阻み、現在の我々の力では大洋を越えるのは不可能である
        より後世の時代、船舶技術がより発達したならば、あの西の果てに何か手がかりを得ることはあり得るのだろうか？[$W]

        "
}
CALL PRINT_DIAG(TEXT)

@QST_ADD_EVENT_QUEST_80_EVENT_134
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "『昏き幽鬼たちの主』"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= "[EVENT_ICON:BOOK]"

@QST_QUEST_80_EVENT_134
VARS TEXT

CALL COLOR_LINE()
PRINTFORMW 『昏き幽鬼たちの主』
CALL COLOR_LINE()
{
    TEXT '= "

        南方大陸のドワーフたちの要請を受け、帝国の南方派遣軍は大内海を渡り、黒山脈は遥かなるアズルハルの峰を越え、南部大平原に布陣した[$W]

        遠征軍の主力である帝国の重装歩兵の練度は言わずもがな、ドワーフたちは数こそ我らに劣るものの、
        彼らの優れた冶金技術から産み出された鎧と武装は帝国のそれを凌駕していたし、
        戦列の両翼に布陣した彼らの重スコルピオは竜さえ容易く屠らんとばかりの威容を誇っていた[$W]

        おそらく後世の時代において、これに比肩しうる規模の人間・ドワーフの大連合軍を見ることは叶わないであろう[$W]

        だが、この精強極まる連合軍をもってしてもなお、敵は遥かに強大にみえた[$W]

        それは形容するならば押し寄せる怒涛の黒波であり、うねりであった[$W]
        ゴブリンが、オークが、動く城砦の如きトロルが武装し、隊伍をなし、阻むもの全てを蹂躙し、粉砕し、迫りつつあった
        空を見やれば怪鳥が金切り声を上げ、ワイバーンが口蓋から火花を散らして空を舞い、獲物を求めて飛び交っている[$W]

        しかしながら、空陸を埋め尽くす邪悪の群よりもなお恐るべきものが、怒涛の黒の奔流の中心に陣取っていた[$W]

        全身を黒の衣に身を包み、黒馬に跨った幽鬼どもの騎兵、冥府より出で、生きとし生ける者全ての脅威が冷徹な尖刃を煌めかせていた
        そして彼らの中心にあって彼らを指揮するもの、南方大陸のドワーフの諸都市を尽く滅ぼしてきた幽鬼たちの首魁の姿もまたそこにあった[$W]

        その者は『モラングール』という名で知られている[$W]

        冥府の太守にして、幽鬼の頭目、そして今まさに南方大陸を蹂躙せんとする黒の軍勢の総大将
        彼の振るう呪詛の込められた忌むべき鉄槌の前にはドワーフの大城塞さえ無力であった[$W]

        おぞましき黒の言葉で号令が下されるや、怒涛の黒波が人間・ドワーフの戦列に向けて濁流の如く殺到する[$W]

        この一戦の帰結は南方大陸のみならず、帝国の命運、そして中央世界全体の行く末を左右するものとなるであろう……[$W]

        "
}
CALL PRINT_DIAG(TEXT)
; #endregion

;-------------------------------------------------
;EV160
;跳ね橋
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_80_EVENT_160
; #region 10:満月の塔　跳ね橋
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%
; ゲーム中一度でも解決済みの場合は非アクティブに
CALL QST_GET_SV_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF

@QST_QUEST_80_EVENT_160
VARS TEXT
{
    TEXT '= @"

        こちら側から跳ね橋を操作する出来そうだ
        %QST_LEADER_NAME()%がレバーを下ろすと、跳ね橋がゆっくりと下る[$SE:Unlock_0.mp3][$W]

        対岸との行き来が可能になったようだ[$W]

        "
}
CALL PRINT_DIAG(TEXT)
CALL QST_ADD_PATH(16, 17)
CALL QST_SET_SV_EVENT_FLAG(QST_NOWEV, 1)
; #endregion

path: ERB/QUEST/クエストデータ/QUEST_80_月下離宮イシリオン/QUEST_80_月下離宮イシリオン_満月の塔.ERB


code:
MAP_NAME = "月下離宮イシリオン"
MAP_IMAGE = "q80_0.webp"
PATH_COLOR = "0x3020c8"
PATH_ALPHA = "0x7d"
NODE_BASE_COLOR = "0xe8a0"

repo_name: napo/erafl

path: ERB/QUEST/クエストデータ/QUEST_80_月下離宮イシリオン/月下離宮イシリオン.txt

license: unknown


code:
<DocumentElement>
  <GMAPDATA>
    <id>638694665285463639</id>
    <NODE_ID>0</NODE_ID>
    <NODE_NAME>宮殿入口</NODE_NAME>
    <POS_X>140</POS_X>
    <POS_Y>380</POS_Y>
    <PATH_LIST>1,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665561305137</id>
    <NODE_ID>1</NODE_ID>
    <NODE_NAME>石段</NODE_NAME>
    <POS_X>100</POS_X>
    <POS_Y>340</POS_Y>
    <PATH_LIST>0,2,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665604971669</id>
    <NODE_ID>2</NODE_ID>
    <NODE_NAME>月鏡の回廊</NODE_NAME>
    <POS_X>60</POS_X>
    <POS_Y>280</POS_Y>
    <PATH_LIST>1,3,15,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665662194109</id>
    <NODE_ID>3</NODE_ID>
    <NODE_NAME>望月の回廊</NODE_NAME>
    <POS_X>280</POS_X>
    <POS_Y>320</POS_Y>
    <PATH_LIST>2,4,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665709692633</id>
    <NODE_ID>4</NODE_ID>
    <NODE_NAME>新月の間</NODE_NAME>
    <POS_X>520</POS_X>
    <POS_Y>340</POS_Y>
    <PATH_LIST>3,5,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665737305308</id>
    <NODE_ID>5</NODE_ID>
    <NODE_NAME>湖月の渡</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>280</POS_Y>
    <PATH_LIST>4,6,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665767894885</id>
    <NODE_ID>6</NODE_ID>
    <NODE_NAME>三日月の間</NODE_NAME>
    <POS_X>300</POS_X>
    <POS_Y>240</POS_Y>
    <PATH_LIST>5,7,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665788472653</id>
    <NODE_ID>7</NODE_ID>
    <NODE_NAME>衛兵詰所</NODE_NAME>
    <POS_X>360</POS_X>
    <POS_Y>180</POS_Y>
    <PATH_LIST>6,8,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665835854453</id>
    <NODE_ID>8</NODE_ID>
    <NODE_NAME>上弦の間</NODE_NAME>
    <POS_X>520</POS_X>
    <POS_Y>160</POS_Y>
    <PATH_LIST>7,9,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665864293680</id>
    <NODE_ID>9</NODE_ID>
    <NODE_NAME>十三夜の橋</NODE_NAME>
    <POS_X>500</POS_X>
    <POS_Y>100</POS_Y>
    <PATH_LIST>8,10,14,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665917636041</id>
    <NODE_ID>10</NODE_ID>
    <NODE_NAME>満月の塔　希望の間</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>120</POS_Y>
    <PATH_LIST>9,11,16,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665950363230</id>
    <NODE_ID>11</NODE_ID>
    <NODE_NAME>満月の塔　夢の間</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>80</POS_Y>
    <PATH_LIST>10,12,13,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694665970523374</id>
    <NODE_ID>12</NODE_ID>
    <NODE_NAME>満月の塔　時の間</NODE_NAME>
    <POS_X>400</POS_X>
    <POS_Y>20</POS_Y>
    <PATH_LIST>11,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694666806597649</id>
    <NODE_ID>13</NODE_ID>
    <NODE_NAME>満月の塔　忘却の間</NODE_NAME>
    <POS_X>360</POS_X>
    <POS_Y>80</POS_Y>
    <PATH_LIST>11,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694666870178308</id>
    <NODE_ID>14</NODE_ID>
    <NODE_NAME>下弦の間</NODE_NAME>
    <POS_X>540</POS_X>
    <POS_Y>60</POS_Y>
    <PATH_LIST>9,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638694666964314909</id>
    <NODE_ID>15</NODE_ID>
    <NODE_NAME>月明の間</NODE_NAME>
    <POS_X>40</POS_X>
    <POS_Y>200</POS_Y>
    <PATH_LIST>2,17,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638753505136840615</id>
    <NODE_ID>16</NODE_ID>
    <NODE_NAME>跳ね橋</NODE_NAME>
    <POS_X>340</POS_X>
    <POS_Y>140</POS_Y>
    <PATH_LIST>10,17,</PATH_LIST>
  </GMAPDATA>
  <GMAPDATA>
    <id>638753505212034237</id>
    <NODE_ID>17</NODE_ID>
    <NODE_NAME>回廊</NODE_NAME>
    <POS_X>180</POS_X>
    <POS_Y>120</POS_Y>
    <PATH_LIST>16,15,</PATH_LIST>
  </GMAPDATA>
</DocumentElement>

path: ERB/QUEST/クエストデータ/QUEST_80_月下離宮イシリオン/月下離宮イシリオン.xml


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_8:サンプルクエスト
;-------------------------------------------------
;クエスト選択画面で表示されるクエスト名
@QST_TITLE_QUEST_8
RESULTS '= "薬草摘み"

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

;クエスト選択画面で呼び出される概要説明
;タグで装飾が可能(@FuncTagSetText_CreateColorBarText 参照)
;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_8
RESULTS:0 '= "駆け出しのペーペーにオススメの依頼といえば薬草積みだ。"
RESULTS:1 '= "ギルドの直轄地で管理もされているので魔物もほとんどいない。"
RESULTS:2 '= "戦闘に自信のない奴でもできる仕事だ。"
RESULTS:3 '= "ただし、報酬はほとんどでない。"
RESULTS:4 '= "施設説明みたいなものだと考え、１，２回で卒業しておくように。"
RESULTS:5 '= "何故かって？ギルドはこんなことしか出来ない人間を養う場所じゃないからな。"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_8
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★@/C@"
RESULTS:1 '= "報酬：500ディナリ"
RESULTS:2 '= "推奨パーティ人数:3人以上　　　推奨平均戦闘値：20以上"
RESULTS:3 '= ""
RESULTS:4 '= ""
RESULTS:5 '= @"@C:{カラー_選択不可}@「お前も役立たずではないことを祈ってるぜ」@/C@"

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

SIF !QST_SV_QUEST_FLAG:3
    RETURN 0
SIF QST_SV_QUEST_FLAG:QUEST_ID != 1
    RETURN 1

;-------------------------------------------------
;マップデータ定義
;[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_8(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:0]"
_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:200][ROOM_PATH:6,]"
_DIC_HO_MAPDATA:MAP_ID:6  '= "[ROOM_ID:201][ROOM_PATH:5,7,][ROOM_NAME:湖畔沿い]"
_DIC_HO_MAPDATA:MAP_ID:7  '= "[ROOM_ID:201][ROOM_PATH:6,8,12,][EVENT_LIST:6,][ROOM_NAME:薬草採取地]"
_DIC_HO_MAPDATA:MAP_ID:8  '= "[ROOM_ID:201][ROOM_PATH:7,13,][ROOM_NAME:湖畔沿い]"
_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:0]"
_DIC_HO_MAPDATA:MAP_ID:12 '= "[ROOM_ID:201][ROOM_PATH:7,17,][EVENT_LIST:99,][ROOM_NAME:森の細道]"
_DIC_HO_MAPDATA:MAP_ID:13 '= "[ROOM_ID:201][ROOM_PATH:8,14,18,][EVENT_LIST:7,][ROOM_NAME:薬草採取地]"
_DIC_HO_MAPDATA:MAP_ID:14 '= "[ROOM_ID:201][ROOM_PATH:13,][EVENT_LIST:0,][ROOM_NAME:薬草採取地]"
_DIC_HO_MAPDATA:MAP_ID:15 '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:16 '= "[ROOM_ID:201][ROOM_PATH:17,][EVENT_LIST:11,][ROOM_NAME:森の奥]"
_DIC_HO_MAPDATA:MAP_ID:17 '= "[ROOM_ID:201][ROOM_PATH:12,16,][EVENT_LIST:99,][ROOM_NAME:森の細道]"
_DIC_HO_MAPDATA:MAP_ID:18 '= "[ROOM_ID:201][ROOM_PATH:13,23,][EVENT_LIST:99,]"
_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:0]"
_DIC_HO_MAPDATA:MAP_ID:23 '= "[ROOM_ID:201][ROOM_PATH:18,][EVENT_LIST:8,10,]"
_DIC_HO_MAPDATA:MAP_ID:24 '= "[ROOM_ID:0]"

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

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

@QST_INTRO_QUEST_8
PRINTFORMW %QST_LEADER_NAME()%は二人のギルドの案内人とともに薬草湖畔に向かった
PRINTFORMW 一人は案内人の女。もう一人は管理者の男だった
PRINTL
PRINTFORMW 「つきましたよ。この湖畔にある三箇所の採取地で薬草を採取してもらいます。
PRINTFORMW ただ湖畔沿いを歩いているだけで全箇所まわれますので、迷子にならないでくださいね？」
PRINTL
PRINTFORMW 「また、付近でゴブリンの巣が確認されています。
PRINTFORMW まだこれといった被害は出てないですが、危険な魔物が近くにいる可能性がありますので、
PRINTFORMW 変に脇道などには入っていかないようにお願いします。わかりましたか？」
PRINTL
PRINTFORMW それに頷くと
PRINTFORMW 「それでは、私は他の仕事があるので後は任せますね」
PRINTFORMW 案内人はどこかへ行ってしまった。
PRINTL
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_8_EVENT_99
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
#DIMS EVENT_TYPE = "ONCE"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:2 = %EVENT_TYPE%

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

CALL HO_CREAR_LOG()
SELECTCASE HO_MASTER現在地
    CASE 18
        CALL HO_PRINT_LOG("洞窟の奥で物音がしている……？", 1)
    CASE 17
        CALL HO_PRINT_LOG("何だか嫌な予感がする……", 1)
    CASE 12
        CALL HO_PRINT_LOG("脇道にはいかないほうがいいと言われている", 1)
    CASEELSE

ENDSELECT

;-------------------------------------------------
;EV0
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_0
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS = %EVENT_TRIGGER%

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

PRINTFORMW 「ここが３つ目の採取地だ。
PRINTFORMW ここでは、気持ちを鎮めたり昂ぶらせたりできる希少な薬草が育てられている。
PRINTFORMW こっちの薬草は勝手に持ち帰るとギルドで討伐隊が組まれるから気をつけるように！」
PRINTL
PRINTFORMW 希少な薬草を採取した。
PRINTL
PRINTFORMW 「よし、これで三箇所まわったな。これでクエストは終了だ。
PRINTFORMW そろそろ彼女も帰ってくる時間だし、入り口まで戻ろうか」
PRINTL

PRINTFORMW クエストを完了し、帰路についた……
PRINTL
PRINTFORMW %QST_LEADER_NAME()%はクエストに成功した！

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

WAIT
CALL COLOR_PRINTW("報酬として500ディナリを得た", カラー_注意)
MONEY += 500

CALL PRINT_NOTICE(@"設備　[薬草群生地]　を一つ入手した", カラー_緑)
HO_MODULE_STOCK:155 += 1

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

;-------------------------------------------------
;EV2
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_2

@QST_QUEST_8_EVENT_2

;-------------------------------------------------
;EV3
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_3

@QST_QUEST_8_EVENT_3

;-------------------------------------------------
;EV4
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_4

@QST_QUEST_8_EVENT_4

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

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

PRINTFORMW %QST_LEADER_NAME()%は這々の体で洞窟を脱出した……
TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

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

@QST_QUEST_8_EVENT_6
#DIM EVENT_ID = 6

PRINTFORMW 「よし来たな。ここからはオレが説明するぞ。
PRINTFORMW ここでは怪我の治療などで使われるシンプルな薬草が取れるぞ。
PRINTFORMW 簡単に見分け方を教えるから、少し探してみてくれ」
PRINTL
PRINTFORMW 言われた通り薬草を採取した……
PRINTL

PRINTFORMW 「ところでさ、案内人さんかわいいかったろ？
PRINTFORMW 実は俺の彼女なんだよ。どうだ？うらやましいだろ？」
PRINTL
PRINTFORMW と、男の案内人は得意気に鼻を鳴らす
PRINTL
PRINTFORMW 「俺たち同期の冒険者だったんだけど、どっちも冒険者の才能なくてさ、
PRINTFORMW 一緒に薬草摘みとか、戦わない仕事ばかりしてたら、この仕事を勧められてさ、
PRINTFORMW 冒険者は諦めて、ここの管理者になったわけよ。
PRINTFORMW それじゃ、次の場所で待ってるぜ」

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

@QST_QUEST_8_EVENT_7
#DIM EVENT_ID = 7

PRINTFORMW 「こっちは料理でよくつかわれる香草だな。
PRINTFORMW 雑草と見分けにくくて、よく間違えるんだよ。
PRINTFORMW それでよく彼女に怒られるんだよなー」
PRINTL
PRINTFORMW のろけ話を聞かされながら香草を採取した……
PRINTL
PRINTFORMW 「彼女？今は近くの村の子どもと遊ぶ仕事をしてるはずだぜ。
PRINTFORMW この仕事は儲からないからなー」
PRINTL
PRINTFORMW 採集を終え管理者は次の場所へ歩いていった……

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

@QST_QUEST_8_EVENT_8
#DIM EVENT_ID = 8

PRINTFORMW 洞窟の奥には灯りがついており、
PRINTFORMW その中心では案内人が子どもに囲まれて輪姦されていた！

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

CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
;慰安モブを追加
CALL QST_QUEST_8_CREATE_VICTIMS_2(0)
CALL QST_QUEST_8_CREATE_VICTIMS_2(0)
CALL QST_QUEST_8_CREATE_VICTIMS_2(0)
;適当に被害者を追加
FOR LOCAL, 0, 1
    CALL QST_QUEST_8_CREATE_VICTIMS(1)
NEXT
;調教後に呼び出される後続イベント
CALL QST_ENQUEUE_TRAIN_EXIT_EVENT(9)

;-------------------------------------------------
;EV9
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_9
#DIMS EVENT_TRIGGER = "TRAIN_EXIT"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_8_EVENT_9
#DIM CONST EVENT_ID = 9

PRINTFORMW 見惚れている場合ではない気がするが……
CALL ASK_YN("止めに入る", "見て見ぬふり")
IF RESULT == 0

    PRINTFORMW %QST_LEADER_NAME()%が侵入すると、子どもたちの行為が止まる。
    PRINTL
    PRINTFORMW 「お前はなんだよ？
    PRINTFORMW 俺たちはちゃんとギルドに依頼して、この女を買ってるんだぜ？」
    PRINTFORMW 案内人もそれを否定する事なくただ顔を伏せている
    PRINTL
    PRINTFORMW 反射的に飛び出してしまったものの、この状況はどうしたらいいのだろうか？
    PRINTL
    PRINTFORMW 少しの沈黙の後、案内人が消えそうな声で言った
    PRINTFORMW 「この件は見なかったことにしてください。
    PRINTFORMW 時間までには戻りますので……」
    PRINTFORMW 「誰が話していいって言ったんだよ！？」
    PRINTFORMW 子どもが手を振り上げ案内人の尻を全力で引っ叩くと、狭い洞窟内に乾いた音が響き渡った
    PRINTFORMW 「あふっ！！んっ！
    PRINTFORMW し、失礼しました……」
    PRINTFORMW 「謝り方はそうじゃないだろ！」
    PRINTFORMW もう一度、子どもが手を振り上げ案内人の尻を全力で引っ叩いて。また手を振り上げる
    PRINTFORMW 追い打ちが来る前に案内人は仰向けに転がり、股を開き、両手で秘貝を広げてみせると
    PRINTFORMW 「……ばかまんこですみません。このばかまんこを躾けてやってください……」
    PRINTFORMW それを合図に行為は再開されたのだった
    PRINTL
    PRINTFORMW これも仕事なら手を出すことはできない
    PRINTFORMW 黙って立ち去るしかなかった……

ELSE

ENDIF

;-------------------------------------------------
;EV10
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_8_EVENT_10
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "子どもたち"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

@QST_QUEST_8_EVENT_10
#DIM CONST EVENT_ID = 10
#DIM EVENT_FLAG

PRINTFORMW 「イクときはちゃんと許可とってからにしろよ！」
PRINTFORMW 「は、はい。いくっ、イキますっ！」
PRINTFORMW 「だめだ！後二分我慢しろ！！」
PRINTFORMW 「……え？も、もう……んんん～～っ！」
PRINTL
PRINTFORMW 案内人が村の子どもたちと遊んでいる。

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

@QST_QUEST_8_EVENT_11
#DIM EVENT_ID = 11

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", "スケルトン・センチュリオン", 2200, 2200, 30, 0, 1)
; CALL CC_ADDMOB("DEFENDER", "スケルトン・ファランクス", 1600, 1600, 20, 0, 1)
; CALL CC_ADDMOB("DEFENDER", "スケルトン・ファランクス", 1600, 1600, 20, 0, 1)
; CALL CC_ADDMOB("DEFENDER", "スケルトン・ファランクス", 1600, 1600, 20, 0, 1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン１", 1200, 1200, 5)
CALL CC_ADDMOB("DEFENDER", "ゴブリン２", 1200, 1200, 5)
CALL CC_ADDMOB("DEFENDER", "ゴブリン３", 1000, 1000, 5)
CALL CC_ADDMOB("DEFENDER", "ゴブリン４", 900, 900, 5)

CALL CLOSE_COMBAT()
IF RESULT == 1
    PRINTL
    CALL CC_ADD_COMBAT_EXP(2)
    CALL CC_APPLY_CHARA_HP()
    PRINTW
ELSE
    ;敗北イベント
    PRINTFORMW ゴブリンたちは敗北した%QST_LEADER_NAME()%を拘束し、弄びはじめた……
    CALL QST_QUEST_8_DEFEAT_EVENT
ENDIF

;-------------------------------------------------
;以下イベントリストで管理する必要のない処理,イベント固有の関数など
;-------------------------------------------------
@QST_QUEST_8_DEFEAT_EVENT
#DIM CONST 派生イベントID = 5
FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安
TFLAG:調教ターン数 = 20

;主導除外フラグが立ったキャラクターは慰安調教で常にターゲットに回る。
;拘束中など自主的に行動させたくないシチュエーションでこのフラグを立てる。
CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
FOR LOCAL, 0, QST_PARTYNUM
    ;調教コマンドのプレイヤーにならなくなる。一方的に嬲られるシチュ用
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):主導除外 = 1
    ;良感情を極めて得にくくなるフラグ
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):凌辱被害者フラグ = 1
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):調教参加フラグ = 1
NEXT
;慰安モブを追加
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(派生イベントID)
RETURN

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_8_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:対象 = %名前%
MAXBASE:対象:体力 = 1200
MAXBASE:対象:気力 = 1000
MAXBASE:対象:精神力 = 1000
TALENT:対象:処女 = 0
TALENT:対象:キス未経験 = 0
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 0
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 = RAND(5, 20)
ABL:対象:性知識 = 3
ABL:対象:Ｃ感 = 6
ABL:対象:Ｖ感 = 7
ABL:対象:Ａ感 = 5
ABL:対象:Ｂ感 = 7
ABL:対象:奉仕 = 4
ABL:対象:性技 = 3
ABL:対象:欲望 = 4
ABL:対象:性交 = 3
ABL:対象:サド = RAND(0, 3)
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 100)
EXP:対象:絶頂経験 = 20

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

RETURN 対象

;-------------------------------------------------
;慰安モブの定義
;-------------------------------------------------
@QST_QUEST_8_CREATE_VICTIMS_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:対象:体力 = 1400
MAXBASE:対象:気力 = 1000
MAXBASE:対象:精神力 = 1000
TALENT:対象:処女 = 1
TALENT:対象:キス未経験 = 1
TALENT:対象:童貞 = 0
TALENT:対象:アナル処女 = 1
CSTR:対象:0 =
CSTR:対象:1 =
TALENT:対象:性別 = SEX
ABL:対象:戦闘 = RAND(5, 30)
ABL:対象:性知識 = 5
ABL:対象:奉仕 = 1
ABL:対象:性技 = 3
ABL:対象:欲望 = 5
ABL:対象:性交 = 3
ABL:対象:サド = RAND(0, 3)
ABL:対象:主導度Ｕ = RAND(0, 500)
ABL:対象:倒錯度 = RAND(0, 100)
EXP:対象:絶頂経験 = 30

CFLAG:対象:調教参加フラグ = 1
CFLAG:対象:慰安参加者 = 1
CFLAG:対象:強制友好化 = 1
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

RETURN 対象


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_97:サンプルクエスト
;-------------------------------------------------
;クエスト選択画面で表示されるクエスト名
@QST_TITLE_QUEST_97
RESULTS '= "ゴブリン討伐"

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

;クエスト選択画面で呼び出される概要説明
;タグで装飾が可能(@FuncTagSetText_CreateColorBarText 参照)
;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_97
RESULTS:0 '= "ゴブリンが山間の村落や街道に下り掠奪を繰り返しているようだ"
RESULTS:1 '= "すでに何組かの冒険者が討伐に向かったが、誰一人として戻ってこない"
RESULTS:2 '= "当初の想定よりも厄介な相手である可能性が高い。気を引き締めて臨んでほしい"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_97
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★★★★@/C@"
RESULTS:1 '= "報酬：5,000ディナリ"
RESULTS:2 '= "推奨パーティ人数:4人以上　　　推奨平均戦闘値：50以上"
RESULTS:3 '= ""
RESULTS:4 '= ""
RESULTS:5 '= @"@C:{カラー_選択不可}@「人間にも強いやつと弱いやつがいる。ゴブリンだって同じだ」@/C@"
RESULTS:6 '= @"@C:{カラー_選択不可}@「今度の相手は強いやつだな。たかがゴブリンと侮るなよ」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_97(QUEST_ID)
#DIM QUEST_ID
SIF !QST_SV_QUEST_FLAG:0
    RETURN 0
IF QST_SV_QUEST_FLAG:QUEST_ID == 1
    RETURN 0
ELSE
    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_97(MAP_ID)
#DIM MAP_ID
QST_MAPNAME '= "ゴブリンの洞窟"
_DIC_HO_MAPDATA:MAP_ID:0  '= "[ROOM_ID:0]"
_DIC_HO_MAPDATA:MAP_ID:1  '= "[ROOM_ID:201][ROOM_PATH:2,][EVENT_LIST:0,]"
_DIC_HO_MAPDATA:MAP_ID:2  '= "[ROOM_ID:201][ROOM_PATH:1,3,7,][EVENT_LIST:7,]"
_DIC_HO_MAPDATA:MAP_ID:3  '= "[ROOM_ID:201][ROOM_PATH:2,][EVENT_LIST:2,]"
_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:0]"
_DIC_HO_MAPDATA:MAP_ID:7  '= "[ROOM_ID:201][ROOM_PATH:2,8,12,][EVENT_LIST:6,]"
_DIC_HO_MAPDATA:MAP_ID:8  '= "[ROOM_ID:201][ROOM_PATH:7,][EVENT_LIST:1,]"
_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:0]"
_DIC_HO_MAPDATA:MAP_ID:12 '= "[ROOM_ID:201][ROOM_PATH:7,17,][EVENT_LIST:4,]"
_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,22,][EVENT_LIST:3,]"
_DIC_HO_MAPDATA:MAP_ID:18 '= "[ROOM_ID:0]"
_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_97
RESULTS '= "MAP"

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストの場合当この関数のみを実行します
;-------------------------------------------------
@QST_INTRO_QUEST_97
PRINTFORMW %QST_LEADER_NAME()%はギルドから提供された地図が指す洞窟へ向かった
PRINTFORMW 依頼書曰く、山地の洞窟に拠点を構えたゴブリンたちが近隣の農家や行商人を略奪しているらしい
PRINTFORMW そればかりか、討伐に向かった冒険者たちも誰一人戻らないというのだ
PRINTFORMW %QST_LEADER_NAME()%に課せられた任務はそのゴブリンたちの根絶である
PRINTL
PRINTFORMW また、依頼書にはもしゴブリンに攫われた生存者を発見したら可能な限り救出してほしいともある
PRINTFORMW 可能であれば生存者を陰惨な運命から解放するよう、尽力してもよい
PRINTL
PRINTFORMW ……彼らには他人種を攫っては欲望のままに犯し、喰らう醜悪な性質がある
PRINTFORMW まして今回のゴブリンはただの野良ゴブリンとはわけが違いそうだ
PRINTFORMW 少しでも侮ってかかれば、大けがをすることにもなりかねない……
PRINTW
CALL FL_PLAYBGM("Ambient_dark_0.ogg")

;-------------------------------------------------
;イベントリストに登録するイベント情報を記述する
;<記述方法>
;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_97_EVENT_0
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_97_EVENT_0
PRINTFORMW 左手の扉をこじ開け、入り口のゴブリンをなぎ倒す
PRINTFORMW しかし予想通り背後から増援が現れ、乱戦となった！

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

;防御側キャラクターの設定(最大6名)
CALL CC_ADDMOB("DEFENDER", "ホブゴブリン", 2400, 2400, 40, 0 ,1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵１", 2200, 2200, 20)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "熟練冒険者・魔術師", "ゴブリンソーサラー")
CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵１", 2000, 2000, 30)
CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵２", 2000, 2000, 30)
CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵３", 2000, 2000, 30)

;戦闘処理呼出
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 %QST_LEADER_NAME()%は洞窟に巣食うゴブリンたちの討伐に成功した！
    CALL COLOR_PRINTW("報酬として5,000ディナリを得た", カラー_注意)
    MONEY += 5000
    ;QST_SV_QUEST_FLAGはセーブされるクエストの状態を示すフラグ。QST_有効クエストIDには現在のクエストID(ゴブ洞は0)が入る
    ;クエストが攻略済みかを判定する場合に使うとよい
    QST_SV_QUEST_FLAG:QST_有効クエストID = 1
    ;クエスト終了時の決まり文句
    TFLAG:クエスト_完了フラグ = 1
    CALL TRAIN_EXIT()
ELSE
    ;敗北イベント
    PRINTFORMW ゴブリンたちは敗北した%QST_LEADER_NAME()%を拘束し、弄びはじめた……
    CALL QST_QUEST_97_DEFEAT_EVENT
ENDIF

;-------------------------------------------------
;EV1
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_97_EVENT_1
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_97_EVENT_1
#DIM CONST EVENT_ID = 1
#DIM EVENT_FLAG
#DIM  CHARA_ID
CALL QST_GET_EVENT_FLAG(EVENT_ID)
EVENT_FLAG = RESULT
DEBUGPRINTFORML {EVENT_FLAG}
SELECTCASE EVENT_FLAG
        ;初回
    CASE 0
        PRINTFORMW 冒険者の死体が無造作に転がされている
        PRINTFORMW これまでに討伐に向かい、帰らなかった者たちだろう
        PRINTW
        PRINTFORMW 暗がりの中、よく目を凝らしてみると、最奥に太い杭に荒縄で縛られた女性の姿が見えた
        PRINTFORMW その身体には、全身に暴行と凌辱の跡が見て取れるが、まだ息はあるようだ
        PRINTW
        PRINTFORMW しかし、これは、あまりにもあからさまだ
        PRINTFORMW 罠であることは想像に難くないが、それでも彼女を助けに行くべきだろうか？
        CALL ASK_YN("救出を試みる", "見捨てる")
        IF RESULT == 0
            PRINTFORMW 救出に向かう方法を選んでください
            PRINTW
            CALL QST_ROLL_MULTI("身体,観察,", "一気に突っ切る(身体),どこに罠があるか見極める(観察),","100,100,", , , , , 1, "ただ無策に助けに行く(確定失敗)")
            CHARA_ID = RESULT:1
            IF RESULT == 1
                PRINTFORMW 左手の壁の穴からゴブリンが矢を射かけてきた！
                PRINTFORMW %ANAME(CHARA_ID)%はどうにかそれを回避し、無事に捕らわれの女性を救出した
                PRINTW
                PRINTFORMW 彼女は%ANAME(CHARA_ID)%に礼を告げて、覚束ない足取りで出口へと向かった
                IF K13_DFLAG_アレクシア加入判定 ==0
                    K13_DFLAG_アレクシア加入判定 = 1
                ENDIF
                CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
            ELSEIF RESULT == 0
                PRINTFORMW 左手の壁の穴からゴブリンが矢を射かけてきた！
                PRINTFORMW %ANAME(CHARA_ID)%はまともに矢を受けてしまった
                CALL QST_CHANGE_HP(CHARA_ID, -800)
                PRINTW
                PRINTFORML 傷を負ったもののなんとか女性の救出には成功した…！
                PRINTFORMW 彼女は%ANAME(CHARA_ID)%に礼を告げて、覚束ない足取りで出口へと向かった
                IF K13_DFLAG_アレクシア加入判定 ==0
                    K13_DFLAG_アレクシア加入判定 = 1
                ENDIF
                CALL QST_SET_EVENT_FLAG(EVENT_ID, 1)
                ; PRINTFORMW 彼女には気の毒だが、さすがにこれを突っ切るのは無理そうだ
                ; PRINTFORMW そう判断した%QST_LEADER_NAME()%はそっとその場を後にした……
                ; CALL QST_SET_EVENT_FLAG(EVENT_ID, 2)
            ENDIF
        ELSEIF RESULT == 1
            PRINTFORMW さすがにここまであからさまな罠に踏み込むのは賢明ではない
            PRINTFORMW 彼女には気の毒だが、君子危うきに近寄らずともいう
            PRINTFORMW そう判断した%QST_LEADER_NAME()%はそっとその場を後にした……
            CALL QST_SET_EVENT_FLAG(EVENT_ID, 2)
        ENDIF
    CASE 1
        PRINTFORMW 袋小路には冒険者の死体が散乱している
        PRINTFORMW もう他に息のある者は見当たらない
        ;被害者を見捨てる
    CASE 2
        PRINTFORMW 袋小路には冒険者の死体が散乱している
        PRINTFORMW 奥に縛られた女性の姿が見えるが、明らかに罠だろう
ENDSELECT

;-------------------------------------------------
;EV2
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_97_EVENT_2
#DIMS EVENT_TRIGGER = "ENTER_ROOM"
RESULTS = %EVENT_TRIGGER%

@QST_QUEST_97_EVENT_2
PRINTFORMW 右手の扉をこじ開け、入り口のゴブリン弓兵をなぎ倒す
PRINTFORMW しかし予想通り背後から増援が現れ、乱戦となった！

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

;防御側キャラクターの設定(最大6名)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "熟練冒険者・魔術師", "ゴブリンソーサラー")
CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵１", 2000, 2000, 30)
CALL CC_ADDMOB("DEFENDER", "ホブゴブリン", 2400, 2400, 40, 0 ,1)
CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵１", 2200, 2200, 20)
CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵２", 2200, 2200, 20)
CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵３", 2200, 2200, 20)

;戦闘処理呼出
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 %QST_LEADER_NAME()%は洞窟に巣食うゴブリンたちの討伐に成功した！
    CALL COLOR_PRINTW("報酬として5,000ディナリを得た", カラー_注意)
    MONEY += 5000
    ;QST_SV_QUEST_FLAGはセーブされるクエストの状態を示すフラグ。QST_有効クエストIDには現在のクエストID(ゴブ洞は0)が入る
    ;クエストが攻略済みかを判定する場合に使うとよい
    QST_SV_QUEST_FLAG:QST_有効クエストID = 1
    ;クエスト終了時の決まり文句
    TFLAG:クエスト_完了フラグ = 1
    CALL TRAIN_EXIT()
ELSE
    ;敗北イベント
    PRINTFORMW ゴブリンたちは敗北した%QST_LEADER_NAME()%を拘束し、弄びはじめた……
    CALL QST_QUEST_97_DEFEAT_EVENT
ENDIF

;-------------------------------------------------
;EV3
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_97_EVENT_3
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME

EVENT_SLOT_NAME '= @"木箱"
;取得済みの場合は非アクティブに
CALL QST_GET_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

;イベント実行内容
@QST_QUEST_97_EVENT_3
#DIMS DYNAMIC _ITEM_LIST
_ITEM_LIST '= @"{ITEM_薬草},3,"
CALL QST_CEV_LOCKED_CHEST(_ITEM_LIST)
IF RESULT
    CALL QST_SET_EVENT_FLAG(QST_NOWEV, 1)
ENDIF

;-------------------------------------------------
;EV4
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_97_EVENT_4
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME

EVENT_SLOT_NAME '= @"宝箱"
;取得済みの場合は非アクティブに
CALL QST_GET_EVENT_FLAG(QST_NOWEV)
IF RESULT
    CALL QST_DEACTIVATE_EVENT(QST_NOWEV)
ENDIF
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%

;イベント実行内容
@QST_QUEST_97_EVENT_4
#DIMS DYNAMIC _ITEM_LIST
_ITEM_LIST '= @"{ITEM_鉄インゴット},3,"
CALL QST_CEV_LOCKED_CHEST(_ITEM_LIST, 100, 100, "LEWD")
IF RESULT
    CALL QST_SET_EVENT_FLAG(QST_NOWEV, 1)
ENDIF

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

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

PRINTFORMW %QST_LEADER_NAME()%はゴブリンの群れに散々に辱められてしまった……
PRINTFORMW ゴブリンたちの隙を見計い、なんとか洞窟の出口を目指す……
PRINTL
PRINTFORMW 幸いゴブリンたちは新たな標的を見つけたのか、%QST_LEADER_NAME()%に気がついていないようだ
PRINTW
PRINTFORMW %QST_LEADER_NAME()%は這々の体で洞窟を脱出した……
TFLAG:クエスト_完了フラグ = 1
CALL TRAIN_EXIT()

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

@QST_QUEST_97_EVENT_6
#DIM EVENT_ID = 6
PRINTFORMW 通路はここで二手に分かれている
PRINTFORMW 真っ直ぐ進めばこの洞窟の最深部に行き着く。恐らくゴブリンたちが潜んでいるに違いない
PRINTW
PRINTFORMW ……一方、右手の袋小路にも何らかの気配がある
PRINTFORMW 連れ去られた人たちが捕らえられているのだろうか……

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

@QST_QUEST_97_EVENT_7
#DIM EVENT_ID = 7
PRINTFORMW 通路は突き当たりでさらに左右に分かれている
PRINTFORMW おそらくどちらに進んでも挟み撃ちにされる可能性が高い
PRINTFORMW ……ゴブリンにしてはかなり考えられた配置と言えるだろう
PRINTW
PRINTFORMW とはいえ、ここまで来た以上は覚悟を決めるより他にない

;-------------------------------------------------
;以下イベントリストで管理する必要のない処理,イベント固有の関数など
;-------------------------------------------------
@QST_QUEST_97_DEFEAT_EVENT
#DIM CONST 派生イベントID = 5
FLAG:ウフフフラグ = 1
FLAG:調教モード = 調教_慰安
TFLAG:調教ターン数 = 20

;主導除外フラグが立ったキャラクターは慰安調教で常にターゲットに回る。
;拘束中など自主的に行動させたくないシチュエーションでこのフラグを立てる。
CVARSET CFLAG, GETNUM(CFLAG, "調教参加フラグ") , 0
FOR LOCAL, 0, QST_PARTYNUM
    ;調教コマンドのプレイヤーにならなくなる。一方的に嬲られるシチュ用
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):主導除外 = 1
    ;良感情を極めて得にくくなるフラグ
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):凌辱被害者フラグ = 1
    CFLAG:(TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))):調教参加フラグ = 1
NEXT
;慰安モブを追加
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(派生イベントID)
RETURN


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_XXX
;機能確認用
;-------------------------------------------------
@QST_TITLE_QUEST_99
RESULTS '= "機能確認テスト"

;-------------------------------------------------
;クエストの実行可能条件を定義
;-------------------------------------------------
@QST_AVAILABLE_QUEST_99(QUEST_ID)
#DIM QUEST_ID
[IF_DEBUG]
RETURN 1
[ENDIF]
RETURN 0
;-------------------------------------------------
;クエストのタイプ
;マップ探索を伴う場合 "MAP"
;文章のみで完結する場合 "DIALOGUE"
;-------------------------------------------------
@QST_TYPE_QUEST_99
RESULTS '= "DIALOGUE"

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

CALL SKILL_CHECK_CHARA_FORGET_SKILL(1, "SMITE", スキル_大分類_冒険, スキル_ジャンル_戦闘)
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_FROM_TABLE("DEFENDER", "テストモブ", "テストモブ", -100)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "テストモブ", "テストモブ", -100)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "テストモブ", "テストモブ", -100)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "テストモブ", "テストモブ", -50)
CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "テストモブ", "テストモブ", -100)

CALL CLOSE_COMBAT("[BGM:Boss_2.ogg]")
; ; CALL CC_GET_LOOT_FROM("DEFENDER")

; ; ; CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "レイスロード", "レイスロード")
; ; ; CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵１")
; ; ; CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵２")
; ; ; CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵３")
; ; ; CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵４")
; ;CALL QST_GET_WEAPON(1, "赤べこ", WPN_材質_鉄, 5, "[WPN_UPWARD_ARMOR_DECAY:1][WPN_ADDITIONAL_ATTACK:1]",, 1)
; ; CALL QST_WEAPON_GACHA()
; ; CALL QST_WEAPON_GACHA()
; ; CALL QST_WEAPON_GACHA()
; ; CALL QST_WEAPON_GACHA()
; ; CALL QST_WEAPON_GACHA()
; ; WAIT

;CALL DRAW_PORTRAIT(1, "[目:細目][眉:しわよせ][口:叫び][サイズ:200px][POS_X:5400]")
CALL DRAW_PORTRAIT(2, "[目:閉じ(緩)][眉:リラックス][口:笑い][サイズ:180px][POS_X:4800]")
CALL KJ_PRINT(2, "「メッセージ表示のテスト」")
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
PRINTL
WAIT

; CALL HO_FIND_ROOM_BY_TAG("牢獄",,, 1)
; DEBUGPRINTFORML RESULT = {RESULT}

; {
;     CALL QST_GET_WEAPON(
;         14
;         ,"『白霜の剣』"
;         ,WPN_材質_銀
;         ,0
;         ,""
;         ,"[WPN_FROST_SMITE:1]"
;         ,WPN_装備種別_武器
;         ,1
;         )
; }

;PRINTFORMW 態度={ATTITUDE("性行為", 2)},向性 = {RESULT:1}

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


code:
;-------------------------------------------------
;クエスト定義ファイル
;QUEST_9:サンプルクエスト
;-------------------------------------------------
@QST_TITLE_QUEST_9
RESULTS '= "リナシメント"

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

;クエストメニュー右上段の概要欄。10行まで
@QST_SUMALLY1_QUEST_9
RESULTS:0 '= "大戦末期の魔獣の大規模な北侵以来、レルム半島南部は今なお魍魎が跋扈する魔境と化している"
RESULTS:1 '= "この古帝国発祥の地の回復は帝国の正当な継承者を称する国々にとって悲願であり、国是であった"
RESULTS:2 '= "レルム半島北部に位置するノアレルム共和国もまたそうした国の一つである"
RESULTS:4 '= "奪還を目的とした遠征は今世紀に至るまで無数に行われてきたが、未だ完遂には至っていない"
RESULTS:6 '= @"彼らは次なる遠征に向け、橋頭堡たる城塞周辺の露払いのため、冒険者を雇っているようだ"
RESULTS:7 '= @"%ANAME(MASTER)%に求められる役割は単純明快、前線に赴きひたすらに魔獣を狩ることだ"
RESULTS:8 '= "複数の戦闘をこなせばそれだけ支払われる俸給も増えるだろう"

;クエストメニュー右下段の備考欄。難易度や条件、報酬等を記述。7行まで
@QST_SUMALLY2_QUEST_9
RESULTS:0 '= @"難易度：@C:{カラー_注意}@★★★★ ～@/C@"
RESULTS:1 '= "報酬：10,000ディナリ～"
RESULTS:2 '= "推奨パーティ人数:4人以上　　　推奨平均戦闘値：50以上"
RESULTS:3 '= "備考:定期性クエスト(3期毎)"
RESULTS:5 '= @"@C:{カラー_選択不可}@「この地で一体どれだけの賽が振られたのか、最早見当もつかんね」@/C@"

;-------------------------------------------------
;クエストの実行可能条件を定義
;3期に一度
;-------------------------------------------------
@QST_AVAILABLE_QUEST_9(QUEST_ID)
#DIM QUEST_ID
;前提としてQUEST_3_平原の探索の攻略が必要
SIF !QST_SV_QUEST_FLAG:3
    RETURN 0
;クエストのクールタイム。完了時に加算され、期終了時に減算される
IF QST_COOLTIME:QUEST_ID
    RETURN 0
ELSE
    RETURN 1
ENDIF

;-------------------------------------------------
;マップデータ定義
;-------------------------------------------------
@QST_SET_MAPDATA_QUEST_9(MAP_ID)
#DIM MAP_ID
QST_MAPNAME '= "前哨地"
_DIC_HO_MAPDATA:MAP_ID:0   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:1   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:2   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:3   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:4   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:5   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:6   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:7   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:8   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:9   '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:10  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:11  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:12  '= "[ROOM_ID:200][ROOM_PATH:][ROOM_NAME:キャンプ][EVENT_LIST:1,2,3,10,11,]"
_DIC_HO_MAPDATA:MAP_ID:13  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:14  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:15  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:16  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:17  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:18  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:19  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:20  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:21  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:22  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:23  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"
_DIC_HO_MAPDATA:MAP_ID:24  '= "[ROOM_ID:0][MODULE_SLOT:][ROOM_PATH:]"

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

;-------------------------------------------------
;クエスト固有の初期化処理
;-------------------------------------------------
@QST_INIT_QUEST_9
FLAG:クエスト_中断を許可 = 1

;-------------------------------------------------
;クエスト中断時の処理
;-------------------------------------------------
@QST_QUEST_9_ABORT
#DIM DYNAMIC REWARD_MONEY
#DIM DYNAMIC REWARD_PRESTEAGE
IF QST_FLAG:9
    IF QST_GET_FLAGMAP("難易度") != "HARD"
        REWARD_MONEY = 8000 + (750 * QST_FLAG:9)
        REWARD_PRESTEAGE = MIN(100, 10 * QST_FLAG:9)
    ELSE
        REWARD_MONEY = 12000 + (1200 * QST_FLAG:9)
        REWARD_PRESTEAGE = MIN(100, 15 * QST_FLAG:9)
    ENDIF
ENDIF
PRINTL
IF !REWARD_MONEY
    PRINTFORMW %QST_LEADER_NAME()%は今回の任務で何も成果を上げることが出来なかった……
ELSE
    MONEY += REWARD_MONEY
    QST_PRESTIGE_POINT += REWARD_PRESTEAGE
    PRINTFORMW %QST_LEADER_NAME()%は討伐任務の報酬を受け取った
    CALL COLOR_PRINTW(@"――　%TOSTR(REWARD_MONEY, "###,###,###")%ディナリを得た！", カラー_注意)
    CALL COLOR_PRINTW(@"――　名誉点を%TOSTR(REWARD_PRESTEAGE)%点得た！", カラー_注意)
ENDIF
SIF QST_SV_QUEST_FLAG:QST_有効クエストID < QST_FLAG:9
    QST_SV_QUEST_FLAG:QST_有効クエストID = QST_FLAG:9
QST_COOLTIME:QST_有効クエストID += 3

;-------------------------------------------------
;QST_INTRO_QUEST_n はQUEST開始前に呼ばれる
;クエストの導入文などを記述
;"DIALOGUE"型のクエストは当該関数のCALLのみ行う
;-------------------------------------------------
@QST_INTRO_QUEST_9
PRINTL
PRINTFORMW ……………………
PRINTFORMW ………………
PRINTFORMW …………
PRINTL
IF QST_SV_QUEST_FLAG:9 <= 5
    PRINTFORMW %QST_LEADER_NAME()%は依頼書に従い中央大陸南部、レルム半島に位置する城塞にやってきた
    PRINTFORML 丘に設けられた古の時代の城塞を中心として、外縁部には幾重にも堡塁が設けられている。時代とともに拡張が繰り返されてきたのだろう
    PRINTFORMW 城塞の内部には%QST_LEADER_NAME()%と同じように集められたであろう、冒険者の集団がたむろしている
    PRINTL
    PRINTFORML 「勇敢なる冒険者諸君！君たちに与えられた役割は単純明快だ！」
    PRINTFORMW 「小鬼どもの軍団を薙ぎ払い、翼竜の群れを大地に叩き落とし、亡者どもが後悔するまで冥府に送り返してやる、たったこれだけだ」
    PRINTL
    PRINTFORMW ノアレルムの将校らしき軍人が要塞に集った冒険者たちに対して檄を飛ばす
    PRINTL
    PRINTFORML 「旧帝国領の回復、すなわちリナシメントの完遂は我が国のみならず、帝国の末裔たる我ら大陸諸国民の宿願でもある」
    PRINTFORMW 「実に長く険しい戦いだが、この栄光の戦いに是非諸君らの威名を刻んでもらいたい！」
    PRINTL
    PRINTFORMW 「共和国は諸君らの戦果に準じて、充分な報酬を与えることを約束しよう」
    PRINTL
    PRINTFORMW 囃し立てる者、冷ややかに見守る者、淡々と武具の手入れを進める者、冒険者のたちの反応は様々だ
    PRINTL
    PRINTL
    PRINTFORMW %QST_LEADER_NAME()%は支度を整えると要塞を早速要塞を発ち、魔境と化したかつての帝国領に足を踏み入れた
    PRINTL
    PRINTFORMW 暗雲垂れ込める空の下、眼前には色彩を欠いた、荒漠とした大地が広がっている……
ELSE
    PRINTFORML %QST_LEADER_NAME()%の貢献によって今回の遠征は順調に推移しているようだ
    PRINTFORMW ノアレルムの遠征隊の先鋭は半島を西海岸線に沿って進出した
    PRINTFORMW 彼らは喪われた古帝国の都、レルメリアムを発見すべく息巻いているようだ
    PRINTFORML
    PRINTFORML 今回の遠征の活躍が認められ、%QST_LEADER_NAME()%はより重要度の高い地域での探索を許可されている
    PRINTFORMW この地域での探索で成果を上げれば更なる報酬が得られるだろう
    PRINTFORML
    PRINTFORML
    PRINTFORMW しかし心せねばならない。かつての帝国中枢は……今や人の住まえる土地ではない
    PRINTFORMW 街道に目をやれば、十分に武装した死霊の軍団が軍旗を掲げて列をなし、空に目をやれば亜竜が群れをなして羽ばたいている
    PRINTFORML
    PRINTFORMW 加えて……%QST_LEADER_NAME()%は亜竜の群れに混ざって何か酷く、巨大でおぞましいものが宙を飛び交っているの目にした
    PRINTFORMW 外見こそ竜のようであったが、長く突き出した鋭い嘴と蛇のように長い首を持ち、蝙蝠に似るも歪で醜悪な翼をはばたかせている
    PRINTFORMW それがなにか名状し難き、この世のものとは言い難い甲高い鳴き声を上げる度に、ノアレルムの歩哨が肩をびくりとすくませた
    PRINTFORML
    PRINTFORML 一体なんであるか見当もつかないが、この地を取り巻く脅威がこれまでと比べ物にならないことは疑いようもない
    PRINTL
    PRINTFORML さて……どうしたものだろうか？
    PRINTL
    CALL ASK_YN("後方地域を探索する(通常通り)", "さらに南へ(難易度増・報酬増)")
    IF RESULT
        CALL QST_SET_FLAGMAP("難易度", "HARD")
    ENDIF
ENDIF

PRINTL
PRINTL
PRINTL
CALL COLOR_PRINTW(@"このクエストでは体力の許す限り討伐を行うことができる", カラー_注意)
CALL COLOR_PRINTW(@"限界を感じたら[撤退]コマンドを実行して引き上げよう、討伐成績に応じた報酬を受け取ることができる", カラー_注意)
CALL FL_PLAYBGM("Battle_2.ogg")

;-------------------------------------------------
;EV1
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_9_EVENT_1
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "近辺を索敵する(脅威:低)"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= "[EVENT_ICON:BATTLE]"

@QST_QUEST_9_EVENT_1
#DIM CONST EVENT_ID = 1
#DIM EVENT_FLAG
#DIMS ENEMY_PRESET_NAME
#DIM DYNAMIC LOOT_SCORE

CALL QST_DEACTIVATE_EVENT(10)
CALL QST_DEACTIVATE_EVENT(11)

IF QST_GET_FLAGMAP("難易度") != "HARD"
    ENEMY_PRESET_NAME = %S_R("ゴブリン小隊/スケルトン/グール/ゴブリン騎兵/ワーグの群れ")%
ELSE
    ENEMY_PRESET_NAME = %S_R("グール/グール/レギオン/レギオン/戦象/幽鬼の騎兵/ワイバーン")%
ENDIF
CALL QST_QUEST_9_MESSAGE_BEFORE_BATTLE(ENEMY_PRESET_NAME)
CALL QST_QUEST_9_COMBAT(ENEMY_PRESET_NAME)
IF RESULT
    QST_FLAG:9 += 1
    CALL HO_CREAR_LOG()
    CALL HO_PRINT_LOG(@"現在の討伐スコア:@C:{カラー_緑}@{QST_FLAG:9}点@/C@", 1)
    ;ルートイベント
    LOOT_SCORE = QST_GETINT_FLAGMAP("LOOT_SCORE")
    LOOT_SCORE += RAND(25, 40)
    IF LOOT_SCORE >= 100
        CALL QST_QUEST_9_LOOT_EVENT()
        LOOT_SCORE = 0
    ENDIF
    CALL QST_SETINT_FLAGMAP("LOOT_SCORE", LOOT_SCORE)
ELSE
    CALL QST_QUEST_9_DEFEAT_EVENT
ENDIF

;-------------------------------------------------
;EV2
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_9_EVENT_2
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "遠方を索敵する(脅威:高)"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= "[EVENT_ICON:BATTLE]"

@QST_QUEST_9_EVENT_2
#DIM CONST EVENT_ID = 2
#DIM EVENT_FLAG
#DIMS ENEMY_PRESET_NAME
#DIM DYNAMIC LOOT_SCORE

CALL QST_DEACTIVATE_EVENT(10)
CALL QST_DEACTIVATE_EVENT(11)

IF QST_GET_FLAGMAP("難易度") != "HARD"
    ENEMY_PRESET_NAME = %S_R("戦象/戦象/戦象/幽鬼の騎兵/幽鬼の騎兵/ワイバーン/ワイバーン/レイスロード")%
ELSE
    ENEMY_PRESET_NAME = %S_R("幽鬼の騎兵/エルダーワイバーン/レイスロード/おぞましき獣")%
ENDIF
CALL QST_QUEST_9_MESSAGE_BEFORE_BATTLE(ENEMY_PRESET_NAME)
CALL QST_QUEST_9_COMBAT(ENEMY_PRESET_NAME)
IF RESULT
    QST_FLAG:9 += 3
    CALL HO_CREAR_LOG()
    CALL HO_PRINT_LOG(@"現在の討伐スコア:@C:{カラー_緑}@{QST_FLAG:9}点@/C@", 1)
    ;ルートイベント
    LOOT_SCORE = QST_GETINT_FLAGMAP("LOOT_SCORE")
    LOOT_SCORE += RAND(40, 60)
    IF LOOT_SCORE >= 100
        CALL QST_QUEST_9_LOOT_EVENT()
        LOOT_SCORE = 0
    ENDIF
    CALL QST_SETINT_FLAGMAP("LOOT_SCORE", LOOT_SCORE)
ELSE
    CALL QST_QUEST_9_DEFEAT_EVENT
ENDIF

@QST_QUEST_9_LOOT_EVENT()
IF QST_GET_FLAGMAP("難易度") == "HARD"
    IF RAND:100 < 60
        ;通常
        CALL QST_ACTIVATE_EVENT(10)
    ELSE
        ;レア
        CALL QST_ACTIVATE_EVENT(11)
    ENDIF
ELSE
    IF RAND:100 < 30
        ;通常
        CALL QST_ACTIVATE_EVENT(10)
    ELSE
        ;レア
        CALL QST_ACTIVATE_EVENT(11)
    ENDIF
ENDIF
CALL PRINT_NOTICE(@"%QST_LEADER_NAME()%は道中で希少な遺物を発見した！")

;-------------------------------------------------
;プリセットに応じた戦闘前メッセージ
;-------------------------------------------------
@QST_QUEST_9_MESSAGE_BEFORE_BATTLE(ENEMY_PRESET_NAME)
#DIMS ENEMY_PRESET_NAME
SELECTCASE ENEMY_PRESET_NAME
    CASE "ゴブリン小隊"
        PRINTFORMW 打ち捨てられた街道沿いに索敵を行う%QST_LEADER_NAME()%の前に姿を現したのは武装したゴブリンの一団だ
        PRINTFORML 隊長格のホブゴブリンを中心に弓や槍を構え臨戦態勢をとっている
        PRINTFORMW 粗野ながらも最低限の規律はあるようだ。侮るべきではないだろう！
    CASE "スケルトン"
        PRINTFORMW 打ち捨てられた街道沿いに索敵を行う%QST_LEADER_NAME()%の前に姿を現したのは完全武装したスケルトンの一団だ
        PRINTFORML 古帝国式の武装に身をつつみ、死してなお一糸乱れぬ統率のもとに行軍を続けている
        PRINTFORMW 強固な鎧に身を包み、白骨化した軍馬に跨ったスケルトンの指揮官が%QST_LEADER_NAME()%に剣を向け攻撃を指示する
        PRINTFORMW 生き残るためには眼前の槍衾を打ち払わねばならない！
    CASE "グール"
        PRINTFORMW 打ち捨てられた街道沿いに索敵を行う%QST_LEADER_NAME()%の前に姿を現したのはさまよえるグールの群れだ
        PRINTFORML 彼らは人肉を好んで喰らう。彼らに喰われた者もまたグールとなり、生者の肉を求めて朽ちるまで彷徨うこととなる
        PRINTFORMW 亡者の仲間入りをしたくないならば、連中を討滅する他ないだろう
    CASE "ゴブリン騎兵"
        PRINTFORMW 打ち捨てられた街道沿いに索敵を行う%QST_LEADER_NAME()%に殺到してきたのはワーグに騎乗するゴブリンの一団だ
        PRINTFORML 連中はワーグを完全に飼いならし、高い機動力を活かし縦横無尽に辺りを駆け巡っている
        PRINTFORMW 厄介で鬱陶しい存在だ、ここで確実に仕留める必要がある
    CASE "ワーグの群れ"
        PRINTFORMW 打ち捨てられた街道沿いに索敵を行う%QST_LEADER_NAME()%に殺到してきたのはワーグの群れだ
        PRINTFORML 人間の肉の香りを嗅ぎつけ、集ってきたようだ
        PRINTFORMW 奴らはすばしっこく、悪知恵がきき、驚くべきことに低度の魔術まで使って見せる。後顧の憂いを立つためにもここで確実に始末したい
    CASE "戦象"
        PRINTFORMW 打ち捨てられた街道を先へ先へと進む%QST_LEADER_NAME()%の進路を塞いだのは、城壁ほどもある巨大な獣だった
        PRINTFORMW ――ムマキルだ。大戦時に南方大陸から流入したこの象の近縁種は恐るべき巨躯を誇る、生ける攻城兵器として知られている
        PRINTL
        PRINTFORMW なお悪いことに%QST_LEADER_NAME(1)%はムマキルの背に粗野な櫓が載っているのを認めた。櫓には複数のゴブリンがたむろしている
        PRINTFORML ゴブリン共はムマキルを飼いならすことに成功したらしい
        PRINTFORMW 巨獣の破壊的な突破力と、高所から矢を射掛けるゴブリンの存在は極めて厄介なものとなろう……
    CASE "幽鬼の騎兵"
        PRINTFORMW 打ち捨てられた街道を先へ先へと進む%QST_LEADER_NAME(1)%は背筋の凍るような悪寒に思わず足を止めた
        PRINTFORML 目の前に立ちはだかったのは騎兵の一団だ。乗手も馬も堅牢な鎧で身を固めている
        PRINTFORMW 馬上からこちらを睥睨する乗手は……雰囲気から察するにおそらく生前は高名な存在だったのであろう
        PRINTL
        PRINTFORML この世のものとは思えない大音響の嘶きが響き渡り、冷たい光を放つ刃が一斉に引き抜かれる
        PRINTFORMW 生還するためには、この恐るべき幽鬼の一団をことごとく滅する必要がある……
    CASE "ワイバーン"
        PRINTFORMW 「ワイバーンだ！」%ANAME(QST_RANDCHARA())%が叫ぶのと殆ど同時に、鋭い爪先が%QST_LEADER_NAME(1)%めがけ振り下ろされる
        PRINTFORMW すんでのところで一撃を逃れた%QST_LEADER_NAME(1)%をよそに、ワイバーンは即座に空中で体勢を立て直し、さらなる追撃に移らんとしている
        PRINTFORMW 空を制するという絶大なアドバンテージを持つ相手を自由にさせてはならない。%QST_LEADER_NAME()%は武器を携え反撃に繰り出した！
    CASE "レイスロード"
        PRINTFORMW 廃墟と化した街に足を踏み入れた%QST_LEADER_NAME()%の前に黒いローブに身を包んだ騎手の一団が立ちはだかる
        PRINTFORMW ……恐らく今回の依頼で考え得る限り最も不運なめぐり合わせだろう
        PRINTL
        PRINTFORMW %QST_LEADER_NAME()%が出くわした存在には古来から様々な呼び名がある。光なき者、黒の乗手、南方の影等々……
        PRINTFORML 今日ではレイスロードとして知られるこの存在は、古来から数多の戦場を駆け巡り、無数の死を振りまいてきた
        PRINTFORMW 数え切れぬほどの死者の名簿に加わりたくないならば、死力を賭してこの場を打破する必要がある……
    CASE "エルダーワイバーン"
        PRINTFORML %QST_LEADER_NAME()%は熾烈なワイバーンの襲撃を掻い潜って街道を駆けた
        PRINTFORMW 頭上を覆う亜竜の群れは益々数を増していくばかりのように思われた……
        PRINTFORML
        PRINTFORMW ところが不意にワイバーンの追撃が止む。空を見上げると蜘蛛の子を散らすようにワイバーンが四散していくのが見て取れた
        PRINTFORML
        PRINTFORMW 安堵のため息をつき、廃墟の影から身を乗り出したその時、猛炎が街路をなめた
        PRINTFORMW あと一歩回避が遅れれば丸焦げになっていたに違いない
        PRINTFORML
        PRINTFORMW %QST_LEADER_NAME()%の前に降り立った亜竜はワイバーンの上位種として知られている
        PRINTFORMW 戦闘力だけで言えばドラゴンと殆ど遜色の無い、致命的な脅威だ
        PRINTFORML
        PRINTFORMW 亜竜は口から火の粉を散らし、次の攻撃に移らんとしている
        PRINTFORMW ここで後顧の憂いを完全に断つ必要がある
    CASE "レギオン"
        PRINTFORMW かつて、帝国が誇る軍団は中央世界における古帝国の覇権を確固たるものにした
        PRINTFORMW 高度な組織力、練度、武装、展開力どれを取っても高次の水準であり、規模においては今日の国家さえ凌駕するものであった
        PRINTFORML
        PRINTFORMW 大戦の折り、如何なる邪法か呪術の結果か、そのほぼ全軍が不浄の幽鬼の影の配下に堕ちると、
        PRINTFORMW かつての帝国の屋台骨は、中央世界に生きとし生ける者すべてにとっての脅威へと変貌した
        PRINTFORML
        PRINTFORMW 今%QST_LEADER_NAME()%の前に対峙するは、かつて帝国中枢を護持した鋭兵たちの末路である
        PRINTFORMW 帝都への道を切り開くならば、死せる亡者の勇者たちを完全に屠らねばならない……
    CASE "ハイオーク"
        PRINTFORMW %QST_LEADER_NAME()%の前に完全武装した一団が立ちはだかる
        PRINTFORMW 背丈はヒトより一回り大きいほどだろうか、いずれもくすんだ黒鋼の鎧を身にまとい、屈強な出立ちである
        PRINTFORML
        PRINTFORMW 兜の奥で黄色く光る瞳は剣呑な輝きを湛えており、その異様な雰囲気は決して友好的な者でないことを物語っている
        PRINTFORML 頭目と思しき者が発した黒の言葉から、%ANAME(QST_RANDCHARA())%はその一団がハイオークであることを悟った
        PRINTFORMW 人間とオークを、言葉にするのも憚られる手法で掛け合わせて産み出されたそれは、オークを凌ぐ残忍さと戦闘能力で知られている
        PRINTFORMW ……心してかかるべきであろう
    CASE "おぞましき獣"
        PRINTFORMW ――それはまったく不意に、遥かな高みから降ってきた
        PRINTFORML
        PRINTFORMW 亜竜か、怪鳥か、この生き物がなんであるか判別がつかない。手綱がつけられており、どうやら飼い馴らされているらしい
        PRINTFORMW 蛇のように長い首をくねらせ、鋭く禍々しい嘴を不規則に、激しく噛み鳴らしている
        PRINTFORMW 頭部には眼がなく、つるりとした皮膚が張り付いているだけだ。にもかかわらずこちらを認め、貪り喰らわんとしている
        PRINTFORML
        PRINTFORMW 背に跨る、黒衣のローブに身を包んだ乗手は手綱をぐいと引き、魔獣を制すと騎乗から%QST_LEADER_NAME()%を一瞥する
        PRINTFORMW そして敵と認めたるや冷厳な煌めきを放つ刃を頭上に掲げ、獣に拍車をかけた
        PRINTFORML
        PRINTFORMW 獣は歪な翼を大きく広げて舞い上がり、%QST_LEADER_NAME()%めがけて突進してきた！
    CASE "エンシェントゴーレム"
        PRINTFORMW 自動人形、オートマタの源流を辿れば、それは古代に生み出された土人形、ゴーレムに行き着く
        PRINTFORMW ゴーレムは戦力が枯渇しかけていた末期帝国において大量に生み出され、戦線に投じられたとされる
        PRINTFORMW 今、%QST_LEADER_NAME()%の前にまさに立ちはだかるのも、その個体の生き残りなのであろう
        PRINTFORML
        PRINTFORMW ゴーレムは今日の自動人形に比べれば酷く稚拙で、武装も原始的な近接武器や弩に限られている
        PRINTFORMW しかし問題はその耐久力にある。術者の制御を離れ、"野生化"したそれは全身に呪詛をまとい駆動を続けている
        PRINTFORMW ……おそらく粉微塵に破壊されるまで、止まることはないだろう……
ENDSELECT

;-------------------------------------------------
;EV3
;-------------------------------------------------
@QST_ADD_EVENT_QUEST_9_EVENT_3
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME = "応急治療を行う"

RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
RESULTS:3 '= @"[EVENT_ICON:HEALTH][EVENT_COLOR:{カラー_緑}]"

@QST_QUEST_9_EVENT_3
#DIM EVENT_FLAG
#DIM TARGET_ID

PRINTFORMW 討伐任務にあたり最低限の治療が可能な器具がいくらか支給されている
PRINTL
PRINTFORML 一度きりだが、全員の傷をある程度治療できそうだ
CALL ASK_YN("治療する", "やめておく")
IF !RESULT
    PRINTFORMW %QST_LEADER_NAME(QST_PARTYNUM)%は簡潔に手当を済ませ、幾ばくかの休息をとった……
    ;パーティ全員の体力を回復
    FOR LOCAL, 0, QST_PARTYNUM
        TARGET_ID = TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL))
        CALL QST_CHANGE_HP(TARGET_ID, 2000)
    NEXT
    WAIT
    CALL QST_DEACTIVATE_THIS_EVENT()
ELSE
ENDIF

;-------------------------------------------------
;敗北処理
;-------------------------------------------------
@QST_QUEST_9_DEFEAT_EVENT
PRINTL
PRINTFORMW ……………………
PRINTFORMW ………………
PRINTFORMW …………
PRINTL

PRINTFORMW %QST_LEADER_NAME()%は戦闘には敗北したものの、幸運なことに辛くも窮地を脱することができた……
PRINTFORMW 後になって知ったことだが、キャンプまで戻って気を失っていたところを別の冒険者の一隊に救われたらしい
PRINTFORML
PRINTFORMW ……今回の任務は失敗に終わってしまった。また挑むのであればより充分な準備が必要であろう……
PRINTL
CALL PRINT_NOTICE("治療費や謝礼として15,000ディナリを失った……")
MONEY -= 15000
TFLAG:クエスト_完了フラグ = 1
QST_COOLTIME:QST_有効クエストID += 3
CALL TRAIN_EXIT()

;-------------------------------------------------
; QUEST_9戦闘イベント
;-------------------------------------------------
@QST_QUEST_9_COMBAT(PRESET_NAME)
#DIMS PRESET_NAME
#DIM  DYNAMIC GROUP_SIZE
#DIMS DYNAMIC _LIST_REWARD

;白兵戦参加メンバーの初期化
CALL CC_INIT()
;攻撃側キャラクターの設定(最大6名)
FOR LOCAL, 0, LIST_COUNT(_LIST_QST_PARTY)
    CALL CC_ADDCHARA("ATTACKER", TOINT(LIST_GET(_LIST_QST_PARTY, LOCAL)))
NEXT
CALL QST_QUEST_9_COMBAT_MOB_PRESET(PRESET_NAME)
_LIST_REWARD = %RESULTS%
CALL CLOSE_COMBAT()
PRINTL
IF RESULT == 1
    CALL CC_APPLY_CHARA_HP()
    CALL PRINT_NOTICE(@"%QST_LEADER_NAME()%は戦闘に勝利した！")
    CALL QST_GET_COMBAT_REWARD(_LIST_REWARD)
    WAIT
    RETURN 1
ELSE
    CALL CC_APPLY_CHARA_HP()
    CALL PRINT_NOTICE(@"%QST_LEADER_NAME()%は戦闘に敗北してしまった……")
    WAIT
    RETURN 0
ENDIF

@QST_QUEST_9_COMBAT_MOB_PRESET(PRESET_NAME)
#DIMS PRESET_NAME
#DIMS DYNAMIC _LIST_REWARD
#DIM  DYNAMIC GROUP_SIZE
#DIM  DYNAMIC 補正値
補正値 = QST_FLAG:9

SELECTCASE PRESET_NAME
    CASE "ゴブリン小隊"
        CALL CC_ADDMOB("DEFENDER", "ホブゴブリン", 2400, 2400, 40, 0 ,1)
        CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵１", 2200, 2200, 20)
        CALL CC_ADDMOB("DEFENDER", "ゴブリン槍兵２", 2200, 2200, 20)
        CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵１", 2000, 2000, 30)
        CALL CC_ADDMOB("DEFENDER", "ゴブリン弓兵２", 2000, 2000, 30)
        _LIST_REWARD '= @"戦闘経験値,7,"
    CASE "スケルトン"
        CALL CC_ADDMOB("DEFENDER", "スケルトン・カタフラクト", 3000, 3000, 45, 0, 1)
        CALL CC_ADDMOB("DEFENDER", "スケルトン・ハスタティ１", 2000, 2000, 25, 0 ,1)
        CALL CC_ADDMOB("DEFENDER", "スケルトン・ハスタティ２", 2000, 2000, 25, 0 ,1)
        CALL CC_ADDMOB("DEFENDER", "スケルトン・ファランクス１", 1600, 1600, 20, 0, 1)
        CALL CC_ADDMOB("DEFENDER", "スケルトン・ファランクス２", 1600, 1600, 20, 0, 1)
        _LIST_REWARD '= @"戦闘経験値,9,"
    CASE "グール"
        IF QST_GET_FLAGMAP("難易度") == "HARD"
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "グール", "グール１", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "グール", "グール２", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "グール", "グール３", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "グール", "グール４", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "グール", "グール５", 補正値 * 2)
        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
        _LIST_REWARD '= @"戦闘経験値,9,"
    CASE "レギオン"
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・カタフラクト", "スケルトン・カタフラクト", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・トリアリィ", "スケルトン・トリアリィ", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・プリンキペス", "スケルトン・プリンキペス１", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・プリンキペス", "スケルトン・プリンキペス２", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・ハスタティ", "スケルトン・ハスタティ１", 補正値)
        _LIST_REWARD '= @"戦闘経験値,12,"
    CASE "ゴブリン騎兵"
        CALL CC_ADDMOB("DEFENDER", "ゴブリン騎兵１", 4000, 4000, 40, 10 ,0)
        CALL CC_ADDMOB("DEFENDER", "ゴブリン騎兵２", 4000, 4000, 40, 10 ,0)
        CALL CC_ADDMOB("DEFENDER", "ワーグ", 2800, 2800, 45, 25)
        _LIST_REWARD '= @"戦闘経験値,9,"
    CASE "ワーグの群れ"
        CALL CC_ADDMOB("DEFENDER", "ワーグ１", 2800, 2800, 45, 25)
        CALL CC_ADDMOB("DEFENDER", "ワーグ２", 2800, 2800, 45, 25)
        CALL CC_ADDMOB("DEFENDER", "ワーグ３", 2800, 2800, 45, 25)
        CALL CC_ADDMOB("DEFENDER", "ワーグ４", 2800, 2800, 45, 25)
        _LIST_REWARD '= @"戦闘経験値,12,"
    CASE "戦象"
        IF QST_GET_FLAGMAP("難易度") == "HARD"
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ムマキル・モールトゥス", "ムマキル・モールトゥス１", 補正値)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ムマキル・モールトゥス", "ムマキル・モールトゥス２", 補正値)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント１", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント２", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント３", 2500, 2500, 30)
            _LIST_REWARD '= @"戦闘経験値,16,"
        ELSE
            CALL CC_ADDMOB("DEFENDER", "ムマキル", 5500, 5500, 45, 0 ,1)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント１", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント２", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント３", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント４", 2500, 2500, 30)
            CALL CC_ADDMOB("DEFENDER", "ゴブリン・デサント５", 2500, 2500, 30)
            _LIST_REWARD '= @"戦闘経験値,12,"
        ENDIF
    CASE "幽鬼の騎兵"
        IF QST_GET_FLAGMAP("難易度") == "HARD"
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵１", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵２", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・カタフラクト", "スケルトン・カタフラクト１", 補正値)
            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", "スケルトン・カタフラクト", "スケルトン・カタフラクト３")
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "スケルトン・カタフラクト", "スケルトン・カタフラクト４")
        ENDIF
        _LIST_REWARD '= @"戦闘経験値,16,"
    CASE "ワイバーン"
        IF QST_GET_FLAGMAP("難易度") == "HARD"
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン１", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン２", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン３", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン４", 補正値 * 2)
        ELSE
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン１")
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン２")
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "ワイバーン", "ワイバーン３")
        ENDIF
        _LIST_REWARD '= @"戦闘経験値,7,"
    CASE "エルダーワイバーン"
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "エルダーワイバーン", "エルダーワイバーン１", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "エルダーワイバーン", "エルダーワイバーン２", 補正値)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "エルダーワイバーン", "エルダーワイバーン３", 補正値)
        _LIST_REWARD '= @"戦闘経験値,15,"
    CASE "レイスロード"
        IF QST_GET_FLAGMAP("難易度") == "HARD"
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "レイスロード", "レイスロード", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵１", 補正値 * 2)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵２", 補正値 * 2)
            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", "幽鬼の騎兵", "幽鬼の騎兵３", 補正値)
            CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "幽鬼の騎兵", "幽鬼の騎兵４", 補正値)
        ENDIF
        _LIST_REWARD '= @"戦闘経験値,24,"
    CASE "おぞましき獣"
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "レイスロード", "レイスロード１", 補正値 * 2)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "おぞましき獣", "おぞましき獣１", 補正値 * 2)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "レイスロード", "レイスロード２", 補正値 * 2)
        CALL CC_ADDMOB_FROM_TABLE("DEFENDER", "おぞましき獣", "おぞましき獣２", 補正値 * 2)

        _LIST_REWARD '= @"戦闘経験値,26,"
ENDSELECT

RESULTS = %_LIST_REWARD%

;-------------------------------------------------
;宝物イベント
;-------------------------------------------------
;イベント登録
@QST_ADD_EVENT_QUEST_9_EVENT_10
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME

EVENT_SLOT_NAME '= @"遺品の箱"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
;初期状態をイベント非活性に
;休憩フロア到達時に有効化される
RESULTS:3 '= @"[EVENT_STATE:DEACTIVE][EVENT_ICON:CHEST][EVENT_COLOR:{カラー_黄}]"

;イベント実行内容
@QST_QUEST_9_EVENT_10
#DIMS DYNAMIC _ITEM_LIST
#DIM  DYNAMIC CHEST_TYPE

CALL RAND_WT_INIT()
CALL RAND_WT_SET(0, 85)
CALL RAND_WT_SET(1, 10)
CALL RAND_WT_SET(2, 5)
SELECTCASE RAND_WT_RESULT()
    CASE 0
        SELECTCASE RAND:5
            CASE 0
                _ITEM_LIST '= @"MONEY,{RAND(20,40) * 100},"
            CASE 1
                _ITEM_LIST '= @"{ITEM_ポーション},2,"
            CASE 2
                _ITEM_LIST '= @"{ITEM_魔獣の肉片},{RAND(2,4)},"
            CASE 3
                _ITEM_LIST '= @"{ITEM_鋼インゴット},{RAND(2,4)},"
            CASE 4
                _ITEM_LIST '= @"{ITEM_メイガスの夜},1,"
        ENDSELECT
        CALL QST_CEV_CHEST(_ITEM_LIST)
    CASE 1
        _ITEM_LIST '= @"{ITEM_銀インゴット},1,"
        CALL QST_CEV_CHEST(_ITEM_LIST)
    CASE 2
        _ITEM_LIST '= @"{ITEM_魔獣の心核},1,"
        CALL QST_CEV_CHEST(_ITEM_LIST)
ENDSELECT

CALL QST_DEACTIVATE_THIS_EVENT()

;-------------------------------------------------
;宝物イベント(レア)
;-------------------------------------------------
;イベント登録
@QST_ADD_EVENT_QUEST_9_EVENT_11
#DIMS EVENT_TRIGGER = "EVENT_SLOT"
#DIMS EVENT_SLOT_NAME

EVENT_SLOT_NAME '= @"豪奢な宝箱"
RESULTS:0 = %EVENT_TRIGGER%
RESULTS:1 = %EVENT_SLOT_NAME%
;初期状態をイベント非活性に
;休憩フロア到達時に有効化される
RESULTS:3 '= @"[EVENT_STATE:DEACTIVE][EVENT_ICON:CHEST][EVENT_COLOR:{カラー_黄}]"

;イベント実行内容
@QST_QUEST_9_EVENT_11
#DIMS DYNAMIC _ITEM_LIST
#DIM  DYNAMIC CHEST_TYPE

SELECTCASE RAND:100
    CASE 0 TO 30
        CALL QST_CEV_CHEST()
        IF QST_GET_FLAGMAP("難易度") != "HARD"
            CALL QST_RANDOM_EQUIP_LOOT_WEAPON(0)
        ELSE
            CALL QST_RANDOM_EQUIP_LOOT_WEAPON(1)
        ENDIF
    CASE 31 TO 70
        CALL QST_CEV_CHEST()
        IF QST_GET_FLAGMAP("難易度") != "HARD"
            CALL QST_RANDOM_EQUIP_LOOT_RELIC(0)
        ELSE
            CALL QST_RANDOM_EQUIP_LOOT_RELIC(1)
        ENDIF
    CASEELSE
        _ITEM_LIST '= @"{ITEM_金インゴット},{RAND(1,2)},"
        CALL QST_CEV_CHEST(_ITEM_LIST)
ENDSELECT

CALL QST_DEACTIVATE_THIS_EVENT()