code:
;顔面騎乗

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME101
LOCALS:0 = 顔面騎乗

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE101
;共通部分
CALL COM_ABLE_COMMON(101)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で1人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 1
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0)
	RETURN 0
;拘束中なら不可
SIF IS_BIND(MPLY:0)
	RETURN 0
SIF IS_M_HOLD(MTAR:0)
	RETURN 0
;Target is fucking someone in any position except cowgirl/reverse cowgirl
SIF IS_INSERT_SINGLE(MTAR:0, "Ｐ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｐ"), 5, 6)
	RETURN 0
;target being fucked in any position except missionary
SIF IS_INSERT_SINGLE(MTAR:0, "Ｖ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｖ"), 1)
	RETURN 0
;target being fucked in any position except missionary
SIF IS_INSERT_SINGLE(MTAR:0, "Ａ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ａ"), 1)
	RETURN 0
;player fucking
SIF IS_INSERT_SINGLE(MPLY:0, "全")
	RETURN 0
;player giving buttjob to anyone
SIF IS_EQUIP_PLAYER(MPLY:0, 15)
	RETURN 0
;player ridden or already riding
SIF IS_RIDDEN(MPLY:0) || IS_RIDE(MPLY:0)
	RETURN 0
;target already ridden or riding
SIF IS_RIDE(MTAR:0) || IS_RIDDEN(MTAR:0)
	RETURN 0
;either is grovelling
SIF IS_EQUIP_PLAYER(MPLY:0, 110) || IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;player or target footlicking, buttjob, or foam playing each other
SIF SEARCH_EQUIP_IC_M(MPLY:0, MTAR:0, 5, 15, 104) >= 0
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM101
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;ターゲット側の屈従のソース基本量
LOCAL:11 = 120

;プレイヤー側の嗜虐のソース基本量
LOCAL:12 = 100

;●プレイヤーについて処理
SOURCE:(MPLY:0):液体追加 = 100
SOURCE:(MPLY:0):露出 = 300
SOURCE:(MPLY:0):逸脱 = 150
SOURCE:(MPLY:0):接触 = 60
SOURCE:(MPLY:0):性行動 = 300
EXP:(MPLY:0):嗜虐経験値 += 1
IF HAS_VAGINA(MPLY:0)
	SOURCE:(MPLY:0):快Ｃ = SENSE_HOUSHI(MTAR:0, MPLY:0, 1000)
ELSE
	LOCAL:11 = 150
	LOCAL:12 = 120
ENDIF

;主導権がプレイヤー側にある場合
IF GET_COM_INITIATIVE() == 0
	SOURCE:(MPLY:0):嗜虐 = LOCAL:12
ENDIF

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MPLY:0, 170, 120)

;●ターゲットについて処理
DOWNBASE:(MTAR:0):体力 += 100

EXP:(MTAR:0):性技経験値 += 1
EXP:(MTAR:0):被虐経験値 += 1
SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 300)
SOURCE:(MTAR:0):逸脱 = 100
SOURCE:(MTAR:0):接触 = 60
SOURCE:(MTAR:0):性行動 = 300

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 120, LOCAL:11)

;プレイヤーが１人のとき
IF MPLY_NUM == 1
	IF TALENT:(MTAR:0):舌使い
		TIMES SOURCE:(MPLY:0):快Ｃ, 1.50
	ENDIF
ENDIF

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(MTAR:0):奉仕経験取得可能 = 1

;キス
CALL KISS_COMMON(MTAR:0, @"%ANAME(MPLY:0)%の\@ IS_MALE(MPLY:0) ? 玉 # 秘貝\@", GET_SITUATION_BY_TRAIN_MODE())

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 2

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP101
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP101(ARG:0)
;●プレイヤーについて処理
LOCAL:2 = MEQUIP_PLAYER:(ARG:0):0

SOURCE:(LOCAL:2):液体追加 += 100
SOURCE:(LOCAL:2):露出 += 100
SOURCE:(LOCAL:2):逸脱 += 80
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):性行動 += 100
EXP:(LOCAL:2):嗜虐経験値 += 1
IF HAS_VAGINA(LOCAL:2)
	SOURCE:(LOCAL:2):快Ｃ += SENSE_HOUSHI(LOCAL:2, MEQUIP_TARGET:(ARG:0):0, 500)
ENDIF

;倒錯度変化
TCVAR:(LOCAL:2):倒錯度変化基準値 += 2

;●ターゲットについて処理
LOCAL:2 = MEQUIP_TARGET:(ARG:0):0

EXP:(LOCAL:2):性技経験値 += 1

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 100)
SOURCE:(LOCAL:2):逸脱 += 60
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):性行動 += 100
EXP:(LOCAL:2):被虐経験値 += 1
;倒錯度変化
TCVAR:(LOCAL:2):倒錯度変化基準値 += 2

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE101(ARG:0)
IF IS_MALE(MEQUIP_PLAYER:(ARG:0):0)
	LOCALS:0 = Ｃ
ELSE
	LOCALS:0 = Ｖ
ENDIF
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に顔面騎乗中(%LOCALS%)

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP101(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の顔の上に跨っている…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP101(ARG:0)
PRINTFORMW %EQUIP_PLAYER_ANAME(ARG:0)%は%EQUIP_TARGET_ANAME(ARG:0)%の顔から腰を上げた…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER101(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 75

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):女嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "女嫌い", -7)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE101
#DIMS DYNAMIC 実行名
#DIMS DYNAMIC 対象名
#DIMS DYNAMIC 衣装描写
#DIMS DYNAMIC 下着描写
#DIMS DYNAMIC 潤滑描写
#DIMS DYNAMIC 性器描写

衣装描写 = %C_COND_MAP_GETS(MPLY, "被覆衣装描写_秘部")%
下着描写 = %C_COND_MAP_GETS(MPLY, "被覆衣装描写_秘部_下着")%
IF IS_ESTRUS(MPLY, 8) && IS_WET(MPLY)
	潤滑描写 = %S_R("びしょびしょに濡れた/濡れそぼった/すっかりぬめりを帯びた/ぐっしょりと濡れた/とろとろに湿った")%
ENDIF

IF !HAS_VAGINA(MPLY:0)
	性器描写 '= "陰嚢"
ELSE
	性器描写 =
	SELECTCASE CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内
		CASE IS >= 15
			性器描写 '= @"精液%S_R("まみれの/で満たされた/の溢れる/が留処なくこぼれる")%"
		CASE IS >= 1
			性器描写 '= @"精液%S_R("の滴る/の垂れる/の漏れる")%"
	ENDSELECT
	性器描写 = %性器描写%%STR_BODY("膣", MPLY:0)%
ENDIF

実行名 = %ANAME(MPLY:0)%
対象名 = %ANAME(MTAR:0)%

SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
	CASE 0
		{
			CALLF PRINT_RANDC(
				TEXT_CONCATEC(
				@"%実行名%は%対象名%の顔に跨ると", 1
				,@"嗜虐的な笑みを浮かべて", ABL:MPLY:サド >= 3
				,@"快楽を貪るように", C_COND("素質:淫乱",,MPLY)
				,@"恥じらうようにしながらも", !C_COND("素質:恥薄い",,MPLY) && ABL:MPLY:露出 < 3
				,@"、%性器描写%を", 下着描写 == ""
				,@"、%潤滑描写%%下着描写%越しに%性器描写%を", 下着描写 != ""
				,@"%S_R("グリグリと押し付け/口元に擦り付け/口元にあてがい、前後に擦り付け")%", 1
				,@"%TARGET_STR("た", "てきた")%…", 1
				), 1
				,TEXT_CONCATEC(
				@"%実行名%は%衣装描写%をたくし上げて%対象名%の顔に跨ると、", 1
				,@"嗜虐的な笑みを浮かべて", ABL:MPLY:サド >= 3
				,@"快楽を貪るように", C_COND("素質:淫乱",,MPLY)
				,@"恥じらうようにしながらも", !C_COND("素質:恥薄い",,MPLY) && ABL:MPLY:露出 < 3
				,@"、%性器描写%を", 下着描写 == ""
				,@"、%潤滑描写%%下着描写%越しに%性器描写%を", 下着描写 != ""
				,@"%S_R("グリグリと押し付け/口元に擦り付け/口元にあてがい、前後に擦り付け")%", 1
				,@"%TARGET_STR("た", "てきた")%…", 1
				), C_COND("衣装属性:秘部:スカート",,MPLY)
				)
		}
		PRINTW
		;ターゲットに主導権
	CASE 1
		IF !HAS_VAGINA(MPLY:0)
			PRINTFORMW %ANAME(MTAR:0)%は%ANAME(MPLY:0)%を顔の上に跨らせると、玉袋を口に含んでジュルジュルと舐め回し%PLAYER_STR("た", "てきた")%…
		ELSE
			PRINTFORMW %ANAME(MTAR:0)%は%ANAME(MPLY:0)%を顔の上に跨らせると、下からワレメを舐め回して責め立て%PLAYER_STR("た", "てきた")%…
		ENDIF
		;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対し、%ANAME(MTAR:0)%の顔に跨って%性器描写%を押し付けるように命令した
		IF !TALENT:(MPLY:0):恥薄い && ABL:(MPLY:0):露出 < 3
			PRINTFORMW %ANAME(MPLY:0)%は恥ずかしがりながらも、言われるまま%ANAME(MTAR:0)%の顔に跨り%性器描写%を押し付けた…
		ELSE
			PRINTFORMW %ANAME(MPLY:0)%は言われるまま、%ANAME(MTAR:0)%の顔に跨り%性器描写%を押し付けた…
		ENDIF
ENDSELECT
IF CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内
	PRINTFORM %SPLIT_RAND("熱い/粘つく/濃厚な/新鮮な", 1)%精液が

	IF ABL:(MTAR:0):精愛 >= 4
		PRINTFORML %SPLIT_RAND("精液好きの/精愛味覚を得た/精液に飢えた", 1)%%ANAME(MTAR:0)%の口に滴ると、%PRONOUN(MTAR:0)%は悦びの呻き声を漏らした…
	ELSE
		PRINTFORML %ANAME(MTAR:0)%の口に滴るが、%PRONOUN(MTAR:0)%は奉仕を余儀なくされた…
	ENDIF
	;target eats 1/4th + 3 cum, up to 20
	LOCAL = LIMIT(MIN(((CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内 / 4) + 3), CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内) , 0, 20)
	CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内 -= LOCAL
	CUM_CUR_AMOUNT:(MTAR:0):射精部位_口 += LOCAL
	SIF CUM_CUR_AMOUNT:(MPLY:0):射精部位_膣内 == 0
		PRINTFORML %ANAME(MPLY:0)%の%STR_BODY("膣", MPLY:0)%の精液は全て%ANAME(MTAR:0)%が飲み干した
	;Cumlove exp increases by amount of cum
	EXP:(MTAR:0):精愛経験値 += LOCAL
	;Swallowing exp
	SIF ABL:(MTAR:0):精愛 >= 4
		EXP:(MTAR:0):口内射精経験 ++
	WAIT
ENDIF

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST101

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN101
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_101()
RETURN POWER(2, 性的嗜好_辱められたい)

@COM_PREFERENCE_TARGET_101()
RETURN POWER(2, 性的嗜好_辱めたい)


code:
;Ａ顔面騎乗

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME102
LOCALS:0 = Ａ顔面騎乗

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE102
;共通部分
CALL COM_ABLE_COMMON(102)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で1人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 1
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
;ターゲットがＰ挿入中かつ体位が騎乗位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ｐ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｐ"), 5)
	RETURN 0
;ターゲットがＶ挿入中かつ体位が正常位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ｖ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｖ"), 1)
	RETURN 0
;ターゲットがＶ挿入中かつ体位が正常位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ａ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ａ"), 1)
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0)
	RETURN 0
;拘束中なら不可
SIF IS_BIND(MPLY:0)
	RETURN 0
;挿入中は不可
SIF IS_INSERT_SINGLE(MPLY:0, "全")
	RETURN 0
;尻コキ中なら不可
SIF IS_EQUIP_PLAYER(MPLY:0, 15)
	RETURN 0
;プレイヤーが顔面騎乗されているなら不可
SIF IS_RIDDEN(MPLY:0)
	RETURN 0
;プレイヤーが既に他の相手に顔面騎乗しているなら不可
SIF IS_RIDE(MPLY:0) && !(SEARCH_EQUIP(101, MPLY:0, MTAR:0) >= 0 || SEARCH_EQUIP(102, MPLY:0, MTAR:0) >= 0 || SEARCH_EQUIP(105, MPLY:0, MTAR:0) >= 0)
	RETURN 0
;ターゲットが既に他の相手に顔面騎乗されているなら不可
SIF IS_RIDDEN(MTAR:0) && !(SEARCH_EQUIP(101, MPLY:0, MTAR:0) >= 0 || SEARCH_EQUIP(102, MPLY:0, MTAR:0) >= 0 || SEARCH_EQUIP(105, MPLY:0, MTAR:0) >= 0)
	RETURN 0
;プレイヤーからターゲットに足舐め中なら不可
SIF SEARCH_EQUIP(104, MPLY:0, MTAR:0) >= 0
	RETURN 0
;ターゲットが顔面騎乗中なら不可
SIF IS_RIDE(MTAR:0)
	RETURN 0
;プレイヤーが土下座しているなら不可
SIF IS_EQUIP_PLAYER(MPLY:0, 110)
	RETURN 0
;ターゲットが土下座しているなら不可
SIF IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;ターゲットがキス中なら不可
SIF IS_EQUIP(MTAR:0, 20)
	RETURN 0
;ターゲットが足舐め中なら不可
SIF IS_EQUIP_PLAYER(MTAR:0, 104)
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM102
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;クンニ、顔面騎乗、Ｗ顔面騎乗のフラグを解除
FOR LOCAL:0, 0, MPLY_NUM
	FOR LOCAL:1, 0, MTAR_NUM
		CALL RELEASE_EQUIP_EX(2, MTAR:(LOCAL:1), -1)
		CALL RELEASE_EQUIP_EX(101, MPLY:(LOCAL:0), -1)
		CALL RELEASE_EQUIP_EX(105, MPLY:(LOCAL:0), -1)
	NEXT
NEXT

;●プレイヤーについて処理
SOURCE:(MPLY:0):液体追加 = 100
SOURCE:(MPLY:0):露出 = 300
SOURCE:(MPLY:0):逸脱 = 200
SOURCE:(MPLY:0):接触 = 60
SOURCE:(MPLY:0):性行動 = 150
SOURCE:(MPLY:0):快Ａ = SENSE_HOUSHI(MTAR:0, MPLY:0, 1000)
EXP:(MPLY:0):嗜虐経験値 += 1

;主導権がプレイヤー側にある場合
IF GET_COM_INITIATIVE() == 0
	SOURCE:(MPLY:0):嗜虐 = 130
ENDIF

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MPLY:0, 170, 120)

;●ターゲットについて処理
DOWNBASE:(MTAR:0):体力 += 100

EXP:(MTAR:0):性技経験値 += 1
EXP:(MTAR:0):被虐経験値 += 1

SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 300 + (GET_HIPSIZE(MPLY:0) >= 1 || TALENT:(MPLY:0):美尻) * 100)
SOURCE:(MTAR:0):逸脱 = 150
SOURCE:(MTAR:0):接触 = 60
SOURCE:(MTAR:0):性行動 = 150

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 120, 140)

IF TALENT:(MTAR:0):舌使い
	TIMES SOURCE:(MPLY:0):快Ａ, 1.50
ENDIF

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(MTAR:0):奉仕経験取得可能 = 1

;アナルへのキス
CALL KISS_COMMON(MTAR:0, @"%ANAME(MPLY:0)%のアナル", GET_SITUATION_BY_TRAIN_MODE())

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 2

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP102
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP102(ARG:0)
;●プレイヤーについて処理
LOCAL:2 = MEQUIP_PLAYER:(ARG:0):0

SOURCE:(LOCAL:2):液体追加 += 100
SOURCE:(LOCAL:2):露出 += 150
SOURCE:(LOCAL:2):逸脱 += 100
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):性行動 += 50
EXP:(LOCAL:2):嗜虐経験値 += 1
IF HAS_VAGINA(LOCAL:2)
	SOURCE:(LOCAL:2):快Ａ += SENSE_HOUSHI(LOCAL:2, MEQUIP_TARGET:(ARG:0):0, 500)
ENDIF

;倒錯度変化
TCVAR:(LOCAL:2):倒錯度変化基準値 += 2

;●ターゲットについて処理
LOCAL:2 = MEQUIP_TARGET:(ARG:0):0

DOWNBASE:(LOCAL:2):体力 += 10

EXP:(LOCAL:2):性技経験値 += 1

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 100)
SOURCE:(LOCAL:2):逸脱 += 80
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):性行動 += 50
EXP:(LOCAL:2):被虐経験値 += 1

;倒錯度変化
TCVAR:(LOCAL:2):倒錯度変化基準値 += 2

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE102(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に顔面騎乗中(Ａ)

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP102(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の顔の上に跨っている…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP102(ARG:0)
PRINTFORMW %EQUIP_PLAYER_ANAME(ARG:0)%は%EQUIP_TARGET_ANAME(ARG:0)%の顔から腰を上げた…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER102(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 75

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):女嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "女嫌い", -7)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE102
LOCALS:0 =
SELECTCASE CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル
	CASE IS >= 15
		LOCALS:0 = 精液%SPLIT_R("まみれの：の詰まった：の溢れる：が留処なくこぼれる")%
	CASE IS >= 1
		LOCALS:0 = 精液%SPLIT_R("を垂らす：の漏れる")%
ENDSELECT
LOCALS:0 = %LOCALS:0%%STR_BODY("アナル", MPLY:0)%

SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		IF MPLY:0 == MASTER
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の顔に跨り、%LOCALS:0%をグリグリと押し付けた…
		ELSEIF ABL:(MPLY:0):サド >= 3
			PRINTFORMW %ANAME(MPLY:0)%はサディスティックな笑みを浮かべながら%ANAME(MTAR:0)%の顔に跨り、%LOCALS:0%をグリグリと押し付け%TARGET_STR("た", "てきた")%…
		ELSEIF GETBIT(TALENT:(MPLY:0):淫乱系, 素質_淫乱_淫乱)
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の顔に跨り、快感を貪るように%LOCALS:0%をグリグリと押し付け%TARGET_STR("た", "てきた")%…
		ELSEIF !TALENT:(MPLY:0):恥薄い && ABL:(MPLY:0):露出 < 3
			PRINTFORMW %ANAME(MPLY:0)%は恥じらうようにしながらも、%ANAME(MTAR:0)%の顔に跨って%LOCALS:0%を押し付け%TARGET_STR("た", "てきた")%…
		ELSE
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の顔に跨り、%LOCALS:0%をグリグリと押し付け%TARGET_STR("た", "てきた")%…
		ENDIF
	;ターゲットに主導権
	CASE 1
		PRINTFORMW %ANAME(MTAR:0)%は%ANAME(MPLY:0)%を顔の上に跨らせると、アナルに舌を入れて内部をグリグリと抉っ%PLAYER_STR("た", "てきた")%…
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対し、%ANAME(MTAR:0)%の顔に跨って%LOCALS:0%を押し付けるように命令した
		IF !TALENT:(MPLY:0):恥薄い && ABL:(MPLY:0):露出 < 3
			PRINTFORMW %ANAME(MPLY:0)%は恥ずかしがりながらも、言われるまま%ANAME(MTAR:0)%の顔に跨り%LOCALS:0%を押し付けた…
		ELSE
			PRINTFORMW %ANAME(MPLY:0)%は言われるまま、%ANAME(MTAR:0)%の顔に跨り%LOCALS:0%を押し付けた…
		ENDIF
ENDSELECT

IF CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル
	PRINTFORM %SPLIT_RAND("熱い/粘つく/濃厚な/新鮮な", 1)%精液が

	IF ABL:(MTAR:0):精愛 >= 4
		PRINTFORML %SPLIT_RAND("精液好きの/精愛味覚を得た/精液に飢えた", 1)%%ANAME(MTAR:0)%の口に滴ると、%PRONOUN(MTAR:0)%は悦びの呻き声を漏らした…
	ELSE
		PRINTFORML %ANAME(MTAR:0)%の口に滴るが、%PRONOUN(MTAR:0)%は奉仕を余儀なくされた…
	ENDIF
	;target eats 1/4th + 3 cum, up to 20
	LOCAL = LIMIT(MIN(((CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル / 4) + 3), CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル) , 0, 20)
	CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル -= LOCAL
	CUM_CUR_AMOUNT:(MTAR:0):射精部位_口 += LOCAL
	SIF CUM_CUR_AMOUNT:(MPLY:0):射精部位_アナル == 0
		PRINTFORML %ANAME(MPLY:0)%の%STR_BODY("アナル", MPLY:0)%の精液は全て%ANAME(MTAR:0)%が飲み干した
	;Cumlove exp increases by amount of cum
	EXP:(MTAR:0):精愛経験値 += LOCAL
	;Swallowing exp
	SIF ABL:(MTAR:0):精愛 >= 4
		EXP:(MTAR:0):口内射精経験 ++
	WAIT
ENDIF
;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST102

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN102
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_102()
RETURN POWER(2, 性的嗜好_辱めたい) + POWER(2, 性的嗜好_虐げられたい)

@COM_PREFERENCE_TARGET_102()
RETURN POWER(2, 性的嗜好_辱められたい) + POWER(2, 性的嗜好_虐げられたい)

repo_name: pervysquirrelz/erafl

license: unknown


code:
;電気按摩

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME103
LOCALS:0 = 電気按摩

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE103
;共通部分
CALL COM_ABLE_COMMON(103)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で1人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 1
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0)
	RETURN 0
;プレイヤーが拘束中なら不可
SIF IS_BIND(MPLY:0)
	RETURN 0
;プレイヤーが顔面騎乗されているなら不可
SIF IS_RIDDEN(MPLY:0)
	RETURN 0
;either is grovelling
SIF IS_EQUIP_PLAYER(MPLY:0, 110) || IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;either is fucking
SIF IS_INSERT_SINGLE(MPLY:0, "全") ||IS_INSERT_SINGLE(MTAR:0, "全")
	RETURN 0
;giving/receiving footlicking or buttjob
SIF SEARCH_EQUIP_IC_M(MPLY:0, MTAR:0, 104, 15) >= 0
	RETURN 0
SIF !P_STACKABLE(MPLY:0, MTAR:0, 103)
	RETURN 0
SIF REACHING_BODY(MPLY:0, MTAR:0) || REACHING_BODY(MTAR:0, MPLY:0)
	RETURN 0
SIF REACHING_GROIN(MPLY:0, MTAR:0) || REACHING_GROIN(MTAR:0, MPLY:0)
	RETURN 0
SIF LICKING_BODY(MPLY:0, MTAR:0) || LICKING_BODY(MTAR:0, MPLY:0)
	RETURN 0
SIF LICKING_GROIN(MPLY:0, MTAR:0) || LICKING_GROIN(MTAR:0, MPLY:0)
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM103
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●プレイヤーについて判定
DOWNBASE:(MPLY:0):体力 += 120

EXP:(MPLY:0):性技経験値 += 1

SOURCE:(MPLY:0):奉仕 = SERVE_HOUSHI(MPLY:0, 150)
SOURCE:(MPLY:0):接触 = 60
SOURCE:(MPLY:0):逸脱 = 40
SOURCE:(MPLY:0):性行動 = 150
EXP:(MPLY:0):嗜虐経験値 += 1

;プレイヤー主導の場合
IF GET_COM_INITIATIVE() == 0
	SOURCE:(MPLY:0):嗜虐 = 100
ENDIF

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MPLY:0, 190, 80)

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(MPLY:0):奉仕経験取得可能 = 1

;●ターゲットについて判定
DOWNBASE:(MTAR:0):体力 += 80

SOURCE:(MTAR:0):接触 = 60
SOURCE:(MTAR:0):逸脱 = 40
SOURCE:(MTAR:0):苦痛 = 60
SOURCE:(MTAR:0):露出 = 80
SOURCE:(MTAR:0):性行動 = 150
EXP:(MTAR:0):被虐経験値 += 1

IF HAS_PENIS(MTAR:0)
	SOURCE:(MTAR:0):快Ｐ = SENSE_HOUSHI_P(MPLY:0, MTAR:0, 1200 + TALENT:(MPLY:0):美脚 * 300)
ELSE
	SOURCE:(MTAR:0):快Ｃ = SENSE_HOUSHI(MPLY:0, MTAR:0, 1200 + TALENT:(MPLY:0):美脚 * 300)
ENDIF

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 80, 140)

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 3

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP103
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP103(ARG:0)
LOCAL:2 = MEQUIP_PLAYER:(ARG:0):0
LOCAL:3 = MEQUIP_TARGET:(ARG:0):0

;●プレイヤーの処理
DOWNBASE:(LOCAL:2):体力 += 20

EXP:(LOCAL:2):性技経験値 += 1

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 50)
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):逸脱 += 20
SOURCE:(LOCAL:2):性行動 += 50
EXP:(LOCAL:2):嗜虐経験値 += 1

;プレイヤーに主導権がある場合
IF IS_INITIATIVE(LOCAL:2)
	SOURCE:(LOCAL:2):嗜虐 += 50
ENDIF

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

;倒錯度変化基準値
TCVAR:(LOCAL:2):倒錯度変化基準値 += 3

;●ターゲットの処理
DOWNBASE:(LOCAL:3):体力 += 10

SOURCE:(LOCAL:3):接触 += 30
SOURCE:(LOCAL:3):逸脱 += 20
SOURCE:(LOCAL:3):苦痛 += 30
SOURCE:(LOCAL:3):露出 += 40
SOURCE:(LOCAL:3):性行動 += 50
IF HAS_PENIS(LOCAL:3)
	SOURCE:(LOCAL:3):快Ｐ = SENSE_HOUSHI_P(LOCAL:2, LOCAL:3, 400 + TALENT:(LOCAL:2):美脚 * 100)
ELSE
	SOURCE:(LOCAL:3):快Ｃ = SENSE_HOUSHI(LOCAL:2, LOCAL:3, 400 + TALENT:(LOCAL:2):美脚 * 100)
ENDIF
EXP:(LOCAL:3):被虐経験値 += 1

;倒錯度変化基準値
TCVAR:(LOCAL:3):倒錯度変化基準値 += 3

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE103(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に電気按摩中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP103(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の股間を踏みつけ振動を与えている…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP103(ARG:0)
PRINTFORMW %EQUIP_PLAYER_ANAME(ARG:0)%は%EQUIP_TARGET_ANAME(ARG:0)%の股間から足を離した…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER103(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 85

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 1, 10))

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -2)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 4)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE103
IF MPLY:0 != MASTER && ABL:(MPLY:0):サド >= 3
	LOCALS:0 = サディスティックな笑みを浮かべながら
ELSE
	LOCALS:0 =
ENDIF
IF TALENT:(MPLY:0):美脚
	LOCALS:3 = すらりとした美しい
ELSEIF TALENT:(MPLY:0):体格 < 0
	LOCALS:3 = %SPLIT_RAND("愛くるしい/可愛らしい/未成熟な/小さな/柔らかな", 1)%
ELSE
	LOCALS:3 =
ENDIF
SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		IF HAS_PENIS(MTAR:0)
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の足首を掴んで股を押し開くと、%LOCALS:0%%ANAME(MTAR:0)%のペニスを%LOCALS:3%足で踏みつけて激しく振動させ%TARGET_STR("た", "てきた")%…
		ELSE
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の足首を掴んで股を押し開くと、%LOCALS:0%%ANAME(MTAR:0)%のワレメを%LOCALS:3%足で踏み付けクリトリスを押し潰すように激しく振動させ%TARGET_STR("た", "てきた")%…
		ENDIF
	;ターゲットに主導権
	CASE 1
		IF HAS_PENIS(MTAR:0)
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%の前で股を開き、電気按摩で気持ち良くするように命令した
			PRINTFORMW %ANAME(MPLY:0)%は言われた通り%ANAME(MTAR:0)%のペニスの上に%LOCALS:3%足を置くと、激しく振動させて男性器に快感を与えていった…
		ELSE
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%の前で股を開き、電気按摩で気持ち良くするように命令した
			PRINTFORMW %ANAME(MPLY:0)%は言われた通り%ANAME(MTAR:0)%のワレメに%LOCALS:3%足を当てると、クリトリスを中心に激しく振動させて女性器に快感を与えていった…
		ENDIF
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に対し、%ANAME(MTAR:0)%を電気按摩で責めるように命令した
		IF HAS_PENIS(MTAR:0)
			PRINTFORMW %ANAME(MPLY:0)%は言われた通りに%ANAME(MTAR:0)%の足首を掴んで股を押し開くと、%ANAME(MTAR:0)%のペニスを%LOCALS:3%足で踏みつけて激しく振動させ%TARGET_STR("た", "てきた")%…
		ELSE
			PRINTFORMW %ANAME(MPLY:0)%は言われた通りに%ANAME(MTAR:0)%の足首を掴んで股を押し開くと、%ANAME(MTAR:0)%のワレメを%LOCALS:3%足で踏み付けクリトリスを押し潰すように激しく振動させ%TARGET_STR("た", "てきた")%…
		ENDIF
ENDSELECT

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN103
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_103()
RETURN POWER(2, 性的嗜好_辱めたい)

@COM_PREFERENCE_TARGET_103()
RETURN POWER(2, 性的嗜好_辱められたい) + POWER(2, 性的嗜好_虐げられたい)

@COM_STACK_SPERM_MTAR_TO_MPLY_103()
RETURN 射精部位_足


code:
;足を舐める

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME104
RESULTS:0 = 足を舐める
RESULTS:1 = 足を舐めさせられる
RESULTS:2 = 足を舐めさせる
RESULTS:3 = 足を舐められる
RESULTS:4 = 足を舐めさせる
RESULTS:5 = 足舐め見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE104
;共通部分
CALL COM_ABLE_COMMON(104)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で2人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 2
	RETURN 0
;ターゲットは最大で2人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 2
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0)
	RETURN 0
;2-2は無理
SIF MPLY_NUM == 2 && MTAR_NUM == 2
	RETURN 0

LOCAL:5 = 0
LOCAL:6 = 0
;全てのプレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	;顔面騎乗されているなら不可
	SIF IS_RIDDEN(MPLY:(LOCAL:0))
		RETURN 0
	;口枷装着中なら不可
	SIF IS_M_HOLD(MPLY:(LOCAL:0))
		RETURN 0
	;拘束のチェック
	SIF IS_BIND(MPLY:(LOCAL:0))
		LOCAL:5 = 1
NEXT
;全てのターゲットについて判定
FOR LOCAL:0, 0, MTAR_NUM
	SIF IS_BIND(MTAR:(LOCAL:0))
		LOCAL:6 = 1
NEXT

;プレイヤーとターゲットが両方拘束されていれば不可
SIF LOCAL:5 && LOCAL:6
	RETURN 0

FOR LOCAL:0, 0, MPLY_NUM
	FOR LOCAL:1, 0, MTAR_NUM
		;giving/receiving trample or buttjob
		SIF SEARCH_EQUIP_IC_M(MTAR:(LOCAL:1), MPLY:(LOCAL:0), 15, 103) >= 0
			RETURN 0
		;player getting footjob from target
		SIF SEARCH_EQUIP(14, MTAR:(LOCAL:1), MPLY:(LOCAL:0)) >= 0
			RETURN 0
		;mutual insertion is allowed only for the player being fucked by the target in the backwards sitting position, or tribadism/doubledildo
		SIF IS_INSERT_MUTUAL(MPLY:(LOCAL:0), MTAR:(LOCAL:1)) > 0 && (GET_SEX_POSITION(MTAR:(LOCAL:1), MPLY:(LOCAL:0)) != 4) && (GET_SEX_POSITION(MTAR:(LOCAL:1), MPLY:(LOCAL:0)) != 20) && (GET_SEX_POSITION(MPLY:(LOCAL:0), MTAR:(LOCAL:1)) != 20)
			RETURN 0
		SIF REACHING_BODY(MPLY:(LOCAL:0), MTAR:(LOCAL:1)) || REACHING_BODY(MTAR:(LOCAL:1), MPLY:(LOCAL:0))
			RETURN 0
		SIF LICKING_GROIN(MPLY:(LOCAL:0), MTAR:(LOCAL:1)) || LICKING_GROIN(MTAR:(LOCAL:1), MPLY:(LOCAL:0))
			RETURN 0
		SIF LICKING_BODY(MPLY:(LOCAL:0), MTAR:(LOCAL:1)) || LICKING_BODY(MTAR:(LOCAL:1), MPLY:(LOCAL:0))
			RETURN 0
	NEXT
NEXT
RETURN 1

;-------------------------------------------------
;快Ｍソースの倍率を取得する関数 ARG:0=PLAYERのキャラ番号
;-------------------------------------------------
@COM104_RATE_M(ARG:0)
#FUNCTION
LOCAL:5 = 1000
SELECTCASE ABL:(ARG:0):奉仕
	CASE 0
		TIMES LOCAL:5, 0.00
		;TIMES SOURCE:(LOCAL:2):不潔, 4.00
	CASE 1
		TIMES LOCAL:5, 0.10
		;TIMES SOURCE:(LOCAL:2):不潔, 2.50
	CASE 2
		TIMES LOCAL:5, 0.30
		;TIMES SOURCE:(LOCAL:2):不潔, 1.50
	CASE 3
		TIMES LOCAL:5, 0.80
		;TIMES SOURCE:(LOCAL:2):不潔, 1.00
	CASE 4
		TIMES LOCAL:5, 1.00
		;TIMES SOURCE:(LOCAL:2):不潔, 0.50
	CASEELSE
		LOCAL:5 = LOCAL:5 * (100 + (ABL:(ARG:0):奉仕 - 5) * 3) / 100
		;TIMES SOURCE:(LOCAL:2):不潔, 0.10
ENDSELECT

SELECTCASE ABL:(ARG:0):性技
	CASE 0
		TIMES LOCAL:5, 1.00
	CASE 1
		TIMES LOCAL:5, 1.10
	CASE 2
		TIMES LOCAL:5, 1.20
	CASE 3
		TIMES LOCAL:5, 1.30
	CASE 4
		TIMES LOCAL:5, 1.40
	CASEELSE
		LOCAL:5 = LOCAL:5 * ((ABL:(ARG:0):性技 - 5) * 2 + 150) / 100
ENDSELECT

RETURNF LOCAL:5

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM104
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●全プレイヤーについて処理
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 80

	SOURCE:(LOCAL:2):奉仕 = SERVE_HOUSHI(LOCAL:2, 150)
	SOURCE:(LOCAL:2):逸脱 = 80
	SOURCE:(LOCAL:2):接触 = 30
	SOURCE:(LOCAL:2):不潔 = 20
	EXP:(LOCAL:2):被虐経験値 += 1

	FOR LOCAL:1, 0, MTAR_NUM
		LOCAL:3 = MTAR:(LOCAL:1)
		SOURCE:(LOCAL:2):快Ｍ = (200 + TALENT:(LOCAL:3):美脚 * 100) * COM104_RATE_M(LOCAL:2) / 1000
	NEXT

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 50, 160)

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(MPLY:0):奉仕経験取得可能 = 1

	;足へのキス
	IF MTAR_NUM == 1
		CALL KISS_COMMON(MPLY:0, @"%ANAME(MTAR:0)%の足", GET_SITUATION_BY_TRAIN_MODE())
	ELSE
		CALL KISS_COMMON(MPLY:0, @"%ANAME(MTAR:0)%たちの足", (GET_SITUATION_BY_TRAIN_MODE() == "和姦" ? "乱交" # "輪姦"))
	ENDIF
NEXT

;●全ターゲットについて処理
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:2 = MTAR:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 40

	SOURCE:(LOCAL:2):嗜虐 = 20
	SOURCE:(LOCAL:2):露出 = 30
	SOURCE:(LOCAL:2):逸脱 = 20
	SOURCE:(LOCAL:2):接触 = 30
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 160, 80)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 2

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP104
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP104(ARG:0)
;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 10

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 50)
	SOURCE:(LOCAL:2):逸脱 += 40
	SOURCE:(LOCAL:2):接触 += 15
	SOURCE:(LOCAL:2):不潔 += 10
	EXP:(LOCAL:2):被虐経験値 += 1

	FOR LOCAL:1, 0, MEQUIP_TARGET_NUM:(ARG:0)
		LOCAL:3 = MEQUIP_TARGET:(ARG:0):(LOCAL:1)
		SOURCE:(LOCAL:2):快Ｍ = (200 + TALENT:(LOCAL:3):美脚 * 100) * COM104_RATE_M(LOCAL:2) / 1000
	NEXT

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 10, 50)

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;倒錯度変化基準値
	TCVAR:(LOCAL:2):倒錯度変化基準値 += 3
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 10

	SOURCE:(LOCAL:2):嗜虐 += 10
	SOURCE:(LOCAL:2):露出 += 15
	SOURCE:(LOCAL:2):逸脱 += 10
	SOURCE:(LOCAL:2):接触 += 15
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 80, 20)

	;倒錯度変化基準値
	TCVAR:(LOCAL:2):倒錯度変化基準値 += 3
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE104(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に足舐め中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP104(ARG:0)
LOCAL:2 = 1
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	IF !IS_INITIATIVE(MEQUIP_TARGET:(ARG:0):(LOCAL:0))
		LOCAL:2 = 0
	ENDIF
NEXT
IF LOCAL:2
	PRINTFORML %EQUIP_TARGET_ANAME(ARG:0)%が%EQUIP_PLAYER_ANAME(ARG:0)%に足を舐めさせている…
ELSE
	PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の足を舐めている…
ENDIF

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP104(ARG:0)

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER104(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 90

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)
CALL COM_ORDER_ELEMENT(ARG:0, @"マゾLv{ABL:(ARG:0):マゾ}", ABL:(ARG:0):マゾ * 3)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 1, 10))

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -2)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -4)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF

RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE104
;ターゲットが２人
IF MTAR_NUM == 2
	LOCALS:0 = %ANAME(MPLY:0)%
	LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
	LOCALS:2 = 交互に

	;ターゲットが１人
ELSE
	;プレイヤーが２人
	IF MPLY_NUM == 2
		LOCALS:0 = %ANAME(MPLY:0)%と%ANAME(MPLY:1)%
		LOCALS:1 = %ANAME(MTAR:0)%
		LOCALS:2 = 交互に
		;プレイヤーが１人
	ELSE
		LOCALS:0 = %ANAME(MPLY:0)%
		LOCALS:1 = %ANAME(MTAR:0)%
		LOCALS:2 =
	ENDIF
ENDIF
IF TALENT:(MTAR:0):美脚
	LOCALS:3 = すらりとした美しい
ELSEIF TALENT:(MPLY:0):体格 < 0
	LOCALS:3 = %SPLIT_RAND("愛くるしい/可愛らしい/未成熟な/小さな/柔らかな", 1)%
ELSE
	LOCALS:3 =
ENDIF
SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
	CASE 0
		PRINTFORMW %LOCALS:0%は%LOCALS:1%の%LOCALS:3%足先を口に含み、%LOCALS:2%じゅるじゅると音を立てて舐めしゃぶっ%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
	CASE 1
		IF MTAR_NUM == 1 && ABL:(MPLY:0):サド >= 3
			PRINTFORMW %LOCALS:1%は嗜虐的な笑みを浮かべながら%LOCALS:0%の口に%LOCALS:3%足を押しこみ、無理やり舐めさせ%PLAYER_STR("た", "てきた")%…
		ELSEIF MTAR_NUM == 1 && ABL:(MTAR:0):主導度Ｕ < 100
			PRINTFORMW %LOCALS:1%は少し緊張した様子で%LOCALS:0%に%LOCALS:3%足を差し出すと、それを%LOCALS:2%舐めさせて奉仕させた…
		ELSE
			PRINTFORMW %LOCALS:1%は%LOCALS:0%に%LOCALS:3%足を向け、無理やり%LOCALS:2%舐めさせて奉仕させた…
		ENDIF
		;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:0%に、%LOCALS:1%の%LOCALS:3%足を舐めるように命令した
		PRINTFORMW %LOCALS:0%は言われるまま%LOCALS:1%の%LOCALS:3%足先に舌を這わせて舐め回した…
ENDSELECT

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN104
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_104()
RETURN POWER(2, 性的嗜好_辱められたい)

@COM_PREFERENCE_TARGET_104()
RETURN POWER(2, 性的嗜好_辱めたい)


code:
;Ｗ顔面騎乗

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME105
LOCALS:0 = Ｗ顔面騎乗

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE105
;共通部分
CALL COM_ABLE_COMMON(105)
SIF RESULT == 0
	RETURN 0
;プレイヤーが2人のとき限定
SIF MPLY_NUM != 2
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
;ターゲットがＰ挿入中かつ体位が騎乗位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ｐ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｐ"), 5)
	RETURN 0
;ターゲットがＶ挿入中かつ体位が正常位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ｖ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ｖ"), 1)
	RETURN 0
;ターゲットがＶ挿入中かつ体位が正常位以外なら不可
SIF IS_INSERT_SINGLE(MTAR:0, "Ａ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MTAR:0, "Ａ"), 1)
	RETURN 0
;target ridden or riding
SIF IS_RIDE(MTAR:0) || IS_RIDDEN(MTAR:0)
	RETURN 0
;target's mouth occupied
SIF IS_M_HOLD(MTAR:0)
	RETURN 0

;全てのプレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	;行動不能なら不可
	SIF !IS_PLAYABLE(MPLY:(LOCAL:0))
		RETURN 0
	;拘束中なら不可
	SIF IS_BIND(MPLY:(LOCAL:0))
		RETURN 0
	;挿入中は不可
	SIF IS_INSERT_SINGLE(MPLY:(LOCAL:0), "全")
		RETURN 0
	;尻コキ中なら不可
	SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 15)
		RETURN 0
    ;foam play with target
    SIF SEARCH_EQUIP_IC(5, MPLY:(LOCAL:0), MTAR:0) >= 0
		RETURN 0
	;player ridden or already riding
	SIF IS_RIDDEN(MPLY:(LOCAL:0)) || IS_RIDE(MPLY:(LOCAL:0))
			RETURN 0
	;プレイヤーからターゲットに足舐め中なら不可
	SIF SEARCH_EQUIP(104, MPLY:(LOCAL:0), MTAR:0) >= 0
		RETURN 0
NEXT

RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM105
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●プレイヤーについて処理
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	SOURCE:(LOCAL:2):露出 = 200
	SOURCE:(LOCAL:2):逸脱 = 150
	SOURCE:(LOCAL:2):接触 = 40
	SOURCE:(LOCAL:2):性行動 = 150
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;主導権がプレイヤー側にある場合
	IF GET_COM_INITIATIVE() == 0
		SOURCE:(MPLY:0):嗜虐 = 130
	ENDIF

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(MPLY:0, 170, 120)
NEXT

;●ターゲットについて処理
EXP:(MTAR:0):性技経験値 += 1
EXP:(MTAR:0):被虐経験値 += 1

SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 300)
SOURCE:(MTAR:0):逸脱 = 150
SOURCE:(MTAR:0):接触 = 60
SOURCE:(MTAR:0):性行動 = 150

;主導権に応じた優越・屈従のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 120, 140)

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(MTAR:0):奉仕経験取得可能 = 1

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 2

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP105
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP105(ARG:0)
;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	SOURCE:(LOCAL:2):露出 += 100
	SOURCE:(LOCAL:2):逸脱 += 80
	SOURCE:(LOCAL:2):接触 += 20
	SOURCE:(LOCAL:2):性行動 += 50
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;倒錯度変化
	TCVAR:(LOCAL:2):倒錯度変化基準値 += 2
NEXT

;●ターゲットについて判定
LOCAL:2 = MEQUIP_TARGET:(ARG:0):0

EXP:(LOCAL:2):性技経験値 += 1
EXP:(LOCAL:2):被虐経験値 += 1

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 100)
SOURCE:(LOCAL:2):逸脱 += 80
SOURCE:(LOCAL:2):接触 += 30
SOURCE:(LOCAL:2):性行動 += 50

;倒錯度変化
TCVAR:(LOCAL:2):倒錯度変化基準値 += 2

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE105(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に顔面騎乗中(尻)

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP105(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の顔の上に跨っている…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP105(ARG:0)
PRINTFORMW %EQUIP_PLAYER_ANAME(ARG:0)%は%EQUIP_TARGET_ANAME(ARG:0)%の顔から腰を上げた…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER105(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 75

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):女嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "女嫌い", -7)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE105
SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は%ANAME(MTAR:0)%の顔に跨り、二人分のお尻で押し潰すように座っ%TARGET_STR("た", "てきた")%…
	;ターゲットに主導権
	CASE 1
		PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に、二人で顔の上に跨って尻を押し付けるように命令した
		PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は言われるまま%ANAME(MTAR:0)%の顔の上に座り込み、二人分のお尻を押し付けた…
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に対して、%ANAME(MTAR:0)%の顔の上に座るように命令した
		PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は言われるまま%ANAME(MTAR:0)%の顔の上に跨り、二人分のお尻を押し付けた…
ENDSELECT

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST105

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN105
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_105()
RETURN POWER(2, 性的嗜好_辱められたい)

@COM_PREFERENCE_TARGET_105()
RETURN POWER(2, 性的嗜好_辱めたい)


code:
;亀頭責め手コキ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME106
IF MPLY_NUM == 2
	LOCALS:0 '= TR("Ｗ亀頭責め手コキ")
ELSE
	LOCALS:0 '= TR("亀頭責め手コキ")
ENDIF

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE106
;共通部分
CALL COM_ABLE_COMMON(106)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で2人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 2
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
SIF !HAS_PENIS(MTAR:0)
	RETURN 0
FOR LOCAL:0, 0, MPLY_NUM
	SIF !P_STACKABLE(MPLY:(LOCAL:0), MTAR:0, 106)
		RETURN 0
	SIF !CAN_REACH_GROIN(MPLY:(LOCAL:0), MTAR:0)
		RETURN 0
NEXT
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM106
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MPLY_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	EXP:(LOCAL:2):性技経験値 += 1

	SOURCE:(LOCAL:2):奉仕 = SERVE_HOUSHI(LOCAL:2, 250)
	SOURCE:(LOCAL:2):接触 = 100
	SOURCE:(LOCAL:2):性行動 = 210

	IF IS_INITIATIVE(LOCAL:2)
		SOURCE:(LOCAL:2):嗜虐 = 50
	ENDIF

	SELECTCASE ABL:(LOCAL:2):奉仕
		CASE 0
			TIMES SOURCE:(LOCAL:2):不潔, 4.00
		CASE 1
			TIMES SOURCE:(LOCAL:2):不潔, 2.50
		CASE 2
			TIMES SOURCE:(LOCAL:2):不潔, 1.50
		CASE 3
			TIMES SOURCE:(LOCAL:2):不潔, 1.00
		CASE 4
			TIMES SOURCE:(LOCAL:2):不潔, 0.50
		CASEELSE
			TIMES SOURCE:(LOCAL:2):不潔, 0.10
	ENDSELECT

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 180, 80)

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MTAR_NUM
		LOCAL:3 = MTAR:(LOCAL:1)
		;		SOURCE:(LOCAL:3):快Ｃ += SENSE_HOUSHI(LOCAL:2, LOCAL:3, 1200) * LOCAL:10 / 100
		SOURCE:(LOCAL:3):快Ｐ += SENSE_HOUSHI(LOCAL:2, LOCAL:3, 1200) * LOCAL:10 / 100
	NEXT
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:1 = MTAR:(LOCAL:0)

	SOURCE:(LOCAL:1):接触 = 50
	SOURCE:(LOCAL:1):性行動 = 180

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:1, 100, 110)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 2

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 1

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP106
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP106(ARG:0)
;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MEQUIP_PLAYER_NUM:(ARG:0)
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	EXP:(LOCAL:2):性技経験値 += 1

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 70)
	SOURCE:(LOCAL:2):接触 += 50
	SOURCE:(LOCAL:2):性行動 += 70

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MEQUIP_TARGET_NUM:(ARG:0)
		LOCAL:3 = MEQUIP_TARGET:(ARG:0):(LOCAL:1)
		;		SOURCE:(LOCAL:3):快Ｃ += SENSE_HOUSHI(LOCAL:2, LOCAL:3, 500) * LOCAL:10 / 100
		SOURCE:(LOCAL:3):快Ｐ += SENSE_HOUSHI(LOCAL:2, LOCAL:3, 500) * LOCAL:10 / 100
	NEXT
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:1 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	SOURCE:(LOCAL:1):接触 += 25
	SOURCE:(LOCAL:1):性行動 += 60
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE106(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に亀頭責め手コキ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP106(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の亀頭を掌で撫で回している…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP106(ARG:0)

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER106(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 75

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 2)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):男嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "男嫌い", -7)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE106
;プレイヤーが２人
IF MPLY_NUM == 2
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は、それぞれ手のひらを%ANAME(MTAR:0)%の亀頭に押し付けると、亀頭を押し潰すようにしながら擦り上げ%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に、亀頭責めで気持ち良くするように要求した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%ANAME(MTAR:0)%の亀頭を撫でまわして奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に対して、%ANAME(MTAR:0)%の亀頭を指で責めるように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%ANAME(MTAR:0)%の亀頭を撫でまわした…
	ENDSELECT

	;プレイヤーが１人
ELSE
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			IF ABL:(MPLY:0):サド >= 3 && MPLY:0 != MASTER
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の亀頭を強く握ると、激しく擦り上げて責め立て%TARGET_STR("た", "てきた")%…
			ELSE
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の亀頭を手のひらで包み込むと、激しく擦り上げて責め立て%TARGET_STR("た", "てきた")%…
			ENDIF
			;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に、亀頭責めで気持ち良くするように要求した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の亀頭を手のひらで包み込み、優しく撫で回して奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対して、%ANAME(MTAR:0)%の亀頭を指で責めるように命令した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の亀頭を手のひらで包み込むと、激しく擦り上げて責め立てた…
	ENDSELECT
ENDIF

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN106
IF FLAG:調教モード != 調教_居住区
	RETURN コマンド_ウフフ
ELSE
	RETURN コマンド_居住区
ENDIF

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_106()
RETURN POWER(2, 性的嗜好_奉仕したい)

@COM_PREFERENCE_TARGET_106()
RETURN POWER(2, 性的嗜好_奉仕されたい)

@COM_STACK_SPERM_MTAR_TO_MPLY_106()
RETURN 射精部位_手


code:
;亀頭責めフェラ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME107
IF SEARCH_EQUIP(12, MPLY:0, MTAR:0) >= 0
	IF MPLY_NUM == 3
		LOCALS:0 '= TR("Ｔパイズリフェラ")
	ELSEIF MPLY_NUM == 2
		LOCALS:0 '= TR("Ｗパイズリフェラ")
	ELSE
		LOCALS:0 '= TR("パイズリフェラ")
	ENDIF
ELSEIF MPLY_NUM == 3
	LOCALS:0 '= TR("Ｔ亀頭責めフェラ")
ELSEIF MPLY_NUM == 2
	LOCALS:0 '= TR("Ｗ亀頭責めフェラ")
ELSE
	LOCALS:0 '= TR("亀頭責めフェラ")
ENDIF

RESULTS:0 = %LOCALS:0%する
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%される
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

IF TFLAG:割込コマンド実行
	IF MPLY_NUM == 1
		RESULTS:3 '= TR("横取り亀頭責めフェラ")
	ENDIF
ENDIF

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE107
;共通部分
CALL COM_ABLE_COMMON(107)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で2人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 3
	RETURN 0
;ターゲットは最大で1人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0
SIF !HAS_PENIS(MTAR:0)
	RETURN 0
FOR LOCAL:0, 0, MPLY_NUM
	SIF !P_STACKABLE(MPLY:(LOCAL:0), MTAR:0, 107)
		RETURN 0
	SIF !CAN_LICK_GROIN(MPLY:(LOCAL:0), MTAR:0)
		RETURN 0
NEXT

RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM107
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MPLY_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 120

	EXP:(LOCAL:2):性技経験値 += 1
	EXP:(LOCAL:2):口淫経験 += 1

	SOURCE:(LOCAL:2):奉仕 = SERVE_HOUSHI(LOCAL:2, 350)
	SOURCE:(LOCAL:2):接触 = 50
	SOURCE:(LOCAL:2):性行動 = 300
	SOURCE:(LOCAL:2):快Ｍ = 150 * COM11_RATE_M(LOCAL:2) / 1000

	IF IS_INITIATIVE(LOCAL:2)
		SOURCE:(LOCAL:2):嗜虐 = 50
	ENDIF

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 180, 100)

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MTAR_NUM
		LOCAL:3 = MTAR:(LOCAL:1)
		LOCAL:4 = SENSE_HOUSHI(LOCAL:2, LOCAL:3, 1400) * LOCAL:10 / 100
		IF TALENT:(LOCAL:2):舌使い
			TIMES LOCAL:4, 1.50
		ENDIF
		SOURCE:(LOCAL:3):快Ｐ += LOCAL:4
		;		SOURCE:(LOCAL:3):快Ｃ += LOCAL:4

	NEXT

	IF HAS_PENIS(MTAR:0)
		;ペニスへのキス
		CALL KISS_COMMON(LOCAL:2, @"%ANAME(MTAR:0)%のペニス", GET_SITUATION_BY_TRAIN_MODE())
	ENDIF
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:1 = MTAR:(LOCAL:0)

	SOURCE:(LOCAL:1):接触 = 50
	SOURCE:(LOCAL:1):性行動 = 180

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:1, 110, 120)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 2

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 1

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 7

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP107
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP107(ARG:0)
;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MEQUIP_PLAYER_NUM:(ARG:0)
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	EXP:(LOCAL:2):性技経験値 += 1
	EXP:(LOCAL:2):口淫経験 += 1

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 100)
	SOURCE:(LOCAL:2):接触 += 25
	SOURCE:(LOCAL:2):性行動 += 100
	SOURCE:(LOCAL:2):快Ｍ += 50 * COM11_RATE_M(LOCAL:2) / 1000

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MEQUIP_TARGET_NUM:(ARG:0)
		LOCAL:3 = MEQUIP_TARGET:(ARG:0):(LOCAL:1)
		LOCAL:4 = SENSE_HOUSHI(LOCAL:2, LOCAL:3, 600) * LOCAL:10 / 100
		IF TALENT:(LOCAL:3):舌使い
			TIMES LOCAL:4, 1.50
		ENDIF
		;		SOURCE:(LOCAL:3):快Ｃ += LOCAL:4
		SOURCE:(LOCAL:3):快Ｐ += LOCAL:4

	NEXT
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:1 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	SOURCE:(LOCAL:1):接触 += 25
	SOURCE:(LOCAL:1):性行動 += 60
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE107(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に亀頭責めフェラ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP107(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の%S_R("亀頭/鈴口")%%S_R("を舌の先で舐め回して/を舐め回して/にひたすら舌を這わせて/をちろちろと舐め回して")%いる…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP107(ARG:0)

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER107(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 85

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 2)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 3, 30))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):男嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "男嫌い", -7)
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE107
;プレイヤーが２人
IF MPLY_NUM == 3
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%と%ANAME(MPLY:2)%は%ANAME(MTAR:0)%のペニスに顔を寄せると、思い思いに亀頭を舐め回して責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%と%ANAME(MPLY:2)%に、亀頭責めで気持ち良くするように要求した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%と%ANAME(MPLY:2)%は%ANAME(MTAR:0)%のペニスに顔を寄せ、協力して亀頭を舐め回して奉仕した…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%と%ANAME(MPLY:2)%に対して、%ANAME(MTAR:0)%の亀頭を舌で責めるように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%と%ANAME(MPLY:2)%は%ANAME(MTAR:0)%のペニスに顔を寄せ、協力して亀頭を舐め回した…
	ENDSELECT
ELSEIF MPLY_NUM == 2
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は左右から%ANAME(MTAR:0)%のペニスに顔を寄せると、思い思いに亀頭を舐め回して責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に、亀頭責めで気持ち良くするように要求した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は左右から%ANAME(MTAR:0)%のペニスに顔を寄せ、協力して亀頭を舐め回して奉仕した…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に対して、%ANAME(MTAR:0)%の亀頭を舌で責めるように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は左右から%ANAME(MTAR:0)%のペニスに顔を寄せ、協力して亀頭を舐め回した…
	ENDSELECT

	;プレイヤーが１人
ELSE
	LOCALS '= @"%ANAME(MPLY:0)%は%ANAME(MTAR:0)%"
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTDATAW
				DATAFORM %LOCALS%の%語彙_ペニス()%%S_R("を咥え込む/に舌を這わせる/の先端に舌をあてがう")%と、ひたすら%S_R("亀頭/先端/鈴口/鈴口")%だけを%S_R("じゅるじゅる/ちゅぱちゃぱ/ちゅるちゅる")%と音を立てて舐め回し%TARGET_STR("た", "てきた")%…
				DATAFORM %LOCALS%の%S_R("亀頭/鈴口")%%S_R("を咥え込む/に舌を這わせる/に舌の先をあてがう")%と、%S_R("じゅるじゅる/ちゅぱちゃぱ/ちゅるちゅる")%と音を立てて舐め回し%TARGET_STR("た", "てきた")%…
			ENDDATA
			;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に、口を使った亀頭責めで気持ち良くするように要求した
			PRINTFORMW %LOCALS%の%語彙_ペニス()%%S_R("を咥え込む/に舌を這わせる/の先端に舌をあてがう")%と、ひたすら%S_R("亀頭/先端/鈴口")%だけを舌で舐め回して奉仕した…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対して、%ANAME(MTAR:0)%の亀頭を舌で責めるように命令した
			PRINTFORMW %LOCALS%の%語彙_ペニス()%%S_R("を咥え込む/に舌を這わせる/の先端に舌をあてがう")%と、ひたすら%S_R("亀頭/先端/鈴口")%だけを舌で舐め回して責め立てた…
	ENDSELECT
ENDIF

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN107
IF FLAG:調教モード != 調教_居住区
	RETURN コマンド_ウフフ
ELSE
	RETURN コマンド_居住区
ENDIF

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_107()
RETURN POWER(2, 性的嗜好_奉仕したい)

@COM_PREFERENCE_TARGET_107()
RETURN POWER(2, 性的嗜好_奉仕されたい)

@COM_STACK_SPERM_MTAR_TO_MPLY_107()
RETURN RAND:3 ? 射精部位_口 # 射精部位_顔


code:
;尻尾挿入

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME108
LOCALS:0 = セルフ挿入

RESULTS:0 = %LOCALS:0%を見せつける
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%を見せつけられる
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE108
;共通部分
CALL COM_ABLE_COMMON(108)
SIF RESULT == 0
	RETURN 0
;プレイヤーは1人以上
SIF MPLY_NUM <= 0
	RETURN 0
;ターゲットは1人以上
SIF MTAR_NUM <= 0
	RETURN 0

SIF ITEM:スキマ == 0
	RETURN 0

FOR LOCAL, 0, MPLY_NUM
	;プレイヤーが行動不能なら不可
	SIF !IS_PLAYABLE(MPLY:LOCAL)
		RETURN 0
	;実行者に竿がなく、ペニスバンド装着中でもないと不可
	SIF !HAS_PENIS(MPLY:0, 1) && !IS_EQUIP_PLAYER(MPLY:0, 50)
		RETURN 0
	;プレイヤーにＶが必要
	SIF !HAS_VAGINA(MPLY:LOCAL, 1)
		RETURN 0
	;プレイヤーのＶが埋まっているなら不可
	SIF IS_V_HOLD(MPLY:LOCAL)
		RETURN 0
	;プレイヤーのチンポが埋まってるなら駄目
	SIF IS_P_HOLD(MPLY:0)
		RETURN 0
NEXT
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM108
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;各プレイヤーの絡むセルフ挿入・セルフA挿入の継続状態を解除
;FOR LOCAL:0, 0, MPLY_NUM
;	CALL RELEASE_EQUIP_EX(108, MPLY:(LOCAL:0), -1)
;	CALL RELEASE_EQUIP_EX(109, MPLY:(LOCAL:0), -1)
;NEXT

;●全てのプレイヤーについて処理
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	EXP:(LOCAL:2):自慰経験値 += 3

	SOURCE:(LOCAL:2):露出 = 1200
	SOURCE:(LOCAL:2):逸脱 = 100
	SOURCE:(LOCAL:2):性行動 = 240

	LOCAL:3 = 500

	SELECTCASE ABL:(LOCAL:2):自慰
		CASE 0
			TIMES LOCAL:3, 1.00
		CASE 1
			TIMES LOCAL:3, 1.20
		CASE 2
			TIMES LOCAL:3, 1.50
		CASE 3
			TIMES LOCAL:3, 1.80
		CASE 4
			TIMES LOCAL:3, 2.00
		CASEELSE
			LOCAL:3 = LOCAL:3 * (420 + (ABL:(LOCAL:2):自慰 - 5)) / 200
	ENDSELECT

	EXP:(LOCAL:2):性交経験値 += 2

	SOURCE:(LOCAL:2):快Ｐ = SENSE_SEX_PLAYER_P(LOCAL:2, LOCAL:2, LOCAL:3)
	SOURCE:(LOCAL:2):露出 = 100
	SOURCE:(LOCAL:2):性行動 = 450

	;性交系の共通処理
	CALL COM_COMMON_SEX_P(LOCAL:2, LOCAL:2)

	IF TALENT:(LOCAL:2):処女 == 1
		SOURCE:(LOCAL:2):快Ｖ += SENSE_SEX_TARGET((LOCAL:2), (LOCAL:2), LOCAL:3)
	ELSE
		SOURCE:(LOCAL:2):快Ｖ += SENSE_SEX_TARGET((LOCAL:2), (LOCAL:2), LOCAL:3)
	ENDIF

	CALL COM_COMMON_SEX_V(LOCAL:2, LOCAL:2)

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 60, 120)
NEXT

;主導権の所在を取得
LOCAL:11 = GET_COM_INITIATIVE()

;●全てのターゲットについて処理
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:1 = MTAR:(LOCAL:0)

	SOURCE:(LOCAL:1):性行動 = 120

	;ターゲットに主導権
	IF LOCAL:11 == 1 || LOCAL:11 == 2
		SOURCE:(LOCAL:1):嗜虐 = 60
	;ターゲットに主導権がない
	ELSE
		SOURCE:(LOCAL:1):逸脱 = 60
		SOURCE:(LOCAL:1):恐怖 = MAX(100 - 30 * ABL:(LOCAL:1):欲望, 0)
	ENDIF

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:1, 80, 80)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 1

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 1

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP108
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP108(ARG:0)
;●全プレイヤーについて処理
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	EXP:(LOCAL:2):自慰経験値 += 1
	EXP:(LOCAL:2):性技経験値 += 1
	EXP:(LOCAL:2):性交経験値 += 1

	SOURCE:(LOCAL:2):快Ｐ += SENSE_SEX_PLAYER_P(LOCAL:2, LOCAL:2, 750)
	SOURCE:(LOCAL:2):露出 += 600
	SOURCE:(LOCAL:2):性行動 += 150

	;性交系の共通処理
	CALL COM_COMMON_SEX_P(LOCAL:2, LOCAL:2)

	LOCAL:3 = 500

	SELECTCASE ABL:(LOCAL:2):自慰
		CASE 0
			TIMES LOCAL:3, 1.00
		CASE 1
			TIMES LOCAL:3, 1.20
		CASE 2
			TIMES LOCAL:3, 1.50
		CASE 3
			TIMES LOCAL:3, 1.80
		CASE 4
			TIMES LOCAL:3, 2.00
		CASEELSE
			LOCAL:3 = LOCAL:3 * (420 + (ABL:(LOCAL:2):自慰 - 5)) / 200
	ENDSELECT

	SOURCE:(LOCAL:2):快Ｖ = SENSE_SEX_TARGET(LOCAL:2, LOCAL:2, LOCAL:3)
	CALL COM_COMMON_SEX_V(LOCAL:2, LOCAL:2)
NEXT

;●全ターゲットについて処理
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	SOURCE:(LOCAL:2):性行動 += 40
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE108(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%がセルフ挿入中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP108(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%は自らの%BAR_NAME(MEQUIP_PLAYER:(ARG:0):0)%で自らを犯している…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP108(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%は%BAR_NAME(MEQUIP_PLAYER:(ARG:0):0)%を自身から引き抜いた…
;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER108(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 80

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 3)
CALL COM_ORDER_ELEMENT(ARG:0, @"露出Lv{ABL:(ARG:0):露出}", ABL:(ARG:0):露出 * 4)
CALL COM_ORDER_ELEMENT(ARG:0, @"自慰Lv{ABL:(ARG:0):自慰}", ABL:(ARG:0):自慰 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -12)
ENDIF
IF TALENT:(ARG:0):恥薄い
	CALL COM_ORDER_ELEMENT(ARG:0, "恥薄い", 8)
ENDIF
IF TALENT:(ARG:0):自制心
	CALL COM_ORDER_ELEMENT(ARG:0, "自制心", -6)
ENDIF
IF TALENT:(ARG:0):目立ちたがり
	CALL COM_ORDER_ELEMENT(ARG:0, "目立ちたがり", 6)
ENDIF
IF TALENT:(ARG:0):自慰しやすい
	CALL COM_ORDER_ELEMENT(ARG:0, "自慰しやすい", 10)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -2)
ENDIF

IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE108
LOCALS:3 =

IF MTAR_NUM == 1
	LOCALS:1 = %ANAME(MTAR:0)%
ELSEIF MTAR_NUM == 2
	LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
ELSE
	LOCALS:1 = %ANAME(MTAR:0)%たち
ENDIF

IF MPLY_NUM == 1
	LOCALS:2 = %ANAME(MPLY:0)%
ELSEIF MPLY_NUM == 2
	LOCALS:2 = %ANAME(MPLY:0)%と%ANAME(MPLY:1)%
ELSE
	LOCALS:2 = %ANAME(MPLY:0)%たち
ENDIF

SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		PRINTFORMW %LOCALS:2%は%LOCALS:1%の目の前で、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの膣に挿入し、動かしはじめた……
	CASE 1
		PRINTFORML %LOCALS:1%は%LOCALS:2%に、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの膣に挿入するよう命じた
		PRINTFORMW %LOCALS:2%は言われるまま、%LOCALS:1%の目の前で自らの%BAR_NAME(MPLY:0)%を自らの膣に挿入し、動かしはじめた……
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:2%に対して、%LOCALS:1%の前で自らの%BAR_NAME(MPLY:0)%を自らの膣に挿入するよう命じた
		PRINTFORMW %LOCALS:2%は言われるまま、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの膣に挿入し、%LOCALS:1%の目の前で見せつけるように動かしはじめた……
ENDSELECT

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST108
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:1 = MPLY:(LOCAL:0)

	IF ((LOCAL:1 != MASTER || CONFIG:441) && !IS_ANIMAL(LOCAL:1)) && !CFLAG:(LOCAL:1):TEXT_LAST非表示 && IS_INITIATIVE(LOCAL:1)
		IF ABL:(LOCAL:1):自慰 >= 5
			PRINTFORML %ANAME(LOCAL:1)%はすっかり快楽に没頭し、激しく腰を振って自ら快感を貪っている
		ELSEIF ABL:(LOCAL:1):露出 >= 5
			PRINTFORML %ANAME(LOCAL:1)%は見られることで興奮しているのか、上気した顔で自らを犯している
		ELSEIF ABL:(LOCAL:1):自慰 >= 2
			;捕虜調教のメインターゲット
			IF FLAG:調教モード == 2 && FINDELEMENT(PRISONER_TARGET, MTAR:0) != -1
				PRINTFORML %ANAME(LOCAL:1)%は屈辱に顔を歪めながらも、自ら快感を求めて腰を振ってしまっている
			ELSE
				PRINTFORML %ANAME(LOCAL:1)%は恥ずかしそうにしているが、無意識に快感を求めるように腰を動かしている
			ENDIF
		ELSE
			;捕虜調教のメインターゲット
			IF FLAG:調教モード == 2 && FINDELEMENT(PRISONER_TARGET, MTAR:0) != -1
				PRINTFORML %ANAME(LOCAL:1)%は屈辱に耐えながら、おぼつかない動きで自分を犯しはじめた
			ELSE
				PRINTFORML %ANAME(LOCAL:1)%は恥ずかしさのあまり目を逸らしながら、おぼつかない動きで自分を犯しはじめた
			ENDIF
		ENDIF
	ENDIF
NEXT

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN108
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_108()
RETURN POWER(2, 性的嗜好_辱めたい)

@COM_PREFERENCE_TARGET_108()
RETURN POWER(2, 性的嗜好_辱められたい) + POWER(2, 性的嗜好_性交したい) + POWER(2, 性的嗜好_性交されたい)

@COM_STACK_SPERM_MPLY_TO_MPLY_108()
RETURN 射精部位_膣内


code:
;尻尾A挿入

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME109
LOCALS:0 = セルフＡ挿入

RESULTS:0 = %LOCALS:0%を見せつける
RESULTS:1 = %LOCALS:0%させられる
RESULTS:2 = %LOCALS:0%させる
RESULTS:3 = %LOCALS:0%を見せつけられる
RESULTS:4 = %LOCALS:0%させる
RESULTS:5 = %LOCALS:0%見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE109
;共通部分
CALL COM_ABLE_COMMON(109)
SIF RESULT == 0
	RETURN 0
;プレイヤーは1人以上
SIF MPLY_NUM <= 0
	RETURN 0
;ターゲットは1人以上
SIF MTAR_NUM <= 0
	RETURN 0

SIF ITEM:スキマ == 0
	RETURN 0

FOR LOCAL, 0, MPLY_NUM
	;プレイヤーが行動不能なら不可
	SIF !IS_PLAYABLE(MPLY:LOCAL)
		RETURN 0
	;実行者に竿がなく、ペニスバンド装着中でもないと不可
	SIF !HAS_PENIS(MPLY:0, 1) && !IS_EQUIP_PLAYER(MPLY:0, 50)
		RETURN 0
	;プレイヤーが足コキ・電気按摩中なら不可
	SIF IS_EQUIP_PLAYER(MPLY:LOCAL, 14, 103)
		RETURN 0
	;プレイヤーのＡが埋まっているなら不可
	SIF IS_A_HOLD(MPLY:LOCAL)
		RETURN 0
	;プレイヤーのチンポが埋まってるなら駄目
	SIF IS_P_HOLD(MPLY:0)
		RETURN 0
NEXT
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM109
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;各プレイヤーの絡むセルフ挿入・セルフA挿入の継続状態を解除
;FOR LOCAL:0, 0, MPLY_NUM
;	CALL RELEASE_EQUIP_EX(109, MPLY:(LOCAL:0), -1)
;	CALL RELEASE_EQUIP_EX(109, MPLY:(LOCAL:0), -1)
;NEXT

;●全てのプレイヤーについて処理
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	EXP:(LOCAL:2):自慰経験値 += 3

	SOURCE:(LOCAL:2):露出 = 1200
	SOURCE:(LOCAL:2):逸脱 = 100
	SOURCE:(LOCAL:2):性行動 = 240

	LOCAL:3 = 500

	SELECTCASE ABL:(LOCAL:2):自慰
		CASE 0
			TIMES LOCAL:3, 1.00
		CASE 1
			TIMES LOCAL:3, 1.20
		CASE 2
			TIMES LOCAL:3, 1.50
		CASE 3
			TIMES LOCAL:3, 1.80
		CASE 4
			TIMES LOCAL:3, 2.00
		CASEELSE
			LOCAL:3 = LOCAL:3 * (420 + (ABL:(LOCAL:2):自慰 - 5)) / 200
	ENDSELECT

	EXP:(LOCAL:2):性交経験値 += 2

	SOURCE:(LOCAL:2):快Ｐ = SENSE_SEX_PLAYER_P(LOCAL:2, LOCAL:2, LOCAL:3)
	SOURCE:(LOCAL:2):露出 = 100
	SOURCE:(LOCAL:2):性行動 = 450

	;性交系の共通処理
	CALL COM_COMMON_ASEX_P(LOCAL:2, LOCAL:2)

	SOURCE:(LOCAL:2):快Ａ += SENSE_SEX_TARGET((LOCAL:2), (LOCAL:2), LOCAL:3)

	CALL COM_COMMON_ASEX_A(LOCAL:2, LOCAL:2)

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 60, 120)
NEXT

;主導権の所在を取得
LOCAL:11 = GET_COM_INITIATIVE()

;●全てのターゲットについて処理
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:1 = MTAR:(LOCAL:0)

	SOURCE:(LOCAL:1):性行動 = 120

	;ターゲットに主導権
	IF LOCAL:11 == 1 || LOCAL:11 == 2
		SOURCE:(LOCAL:1):嗜虐 = 60
	;ターゲットに主導権がない
	ELSE
		SOURCE:(LOCAL:1):逸脱 = 60
		SOURCE:(LOCAL:1):恐怖 = MAX(100 - 30 * ABL:(LOCAL:1):欲望, 0)
	ENDIF

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:1, 80, 80)

NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 1

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 1

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP109
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP109(ARG:0)
;●全プレイヤーについて処理
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	EXP:(LOCAL:2):自慰経験値 += 1
	EXP:(LOCAL:2):性技経験値 += 1
	EXP:(LOCAL:2):性交経験値 += 1

	SOURCE:(LOCAL:2):快Ｐ += SENSE_SEX_PLAYER_P(LOCAL:2, LOCAL:2, 750)
	SOURCE:(LOCAL:2):露出 += 600
	SOURCE:(LOCAL:2):性行動 += 150

	;性交系の共通処理
	CALL COM_COMMON_ASEX_P(LOCAL:2, LOCAL:2)

	LOCAL:3 = 500

	SELECTCASE ABL:(LOCAL:2):自慰
		CASE 0
			TIMES LOCAL:3, 1.00
		CASE 1
			TIMES LOCAL:3, 1.20
		CASE 2
			TIMES LOCAL:3, 1.50
		CASE 3
			TIMES LOCAL:3, 1.80
		CASE 4
			TIMES LOCAL:3, 2.00
		CASEELSE
			LOCAL:3 = LOCAL:3 * (420 + (ABL:(LOCAL:2):自慰 - 5)) / 200
	ENDSELECT

	SOURCE:(LOCAL:2):快Ａ = SENSE_SEX_TARGET(LOCAL:2, LOCAL:2, LOCAL:3)
	CALL COM_COMMON_ASEX_A(LOCAL:2, LOCAL:2)
NEXT

;●全ターゲットについて処理
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)
	SOURCE:(LOCAL:2):性行動 += 40
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE109(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%がセルフＡ挿入中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP109(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%は自らの%BAR_NAME(MEQUIP_PLAYER:(ARG:0):0)%で自らのアナルを犯している…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP109(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%は%BAR_NAME(MEQUIP_PLAYER:(ARG:0):0)%を自身のアナルから引き抜いた…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER109(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 80

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 3)
CALL COM_ORDER_ELEMENT(ARG:0, @"露出Lv{ABL:(ARG:0):露出}", ABL:(ARG:0):露出 * 4)
CALL COM_ORDER_ELEMENT(ARG:0, @"自慰Lv{ABL:(ARG:0):自慰}", ABL:(ARG:0):自慰 * 4)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -12)
ENDIF
IF TALENT:(ARG:0):恥薄い
	CALL COM_ORDER_ELEMENT(ARG:0, "恥薄い", 8)
ENDIF
IF TALENT:(ARG:0):自制心
	CALL COM_ORDER_ELEMENT(ARG:0, "自制心", -6)
ENDIF
IF TALENT:(ARG:0):目立ちたがり
	CALL COM_ORDER_ELEMENT(ARG:0, "目立ちたがり", 6)
ENDIF
IF TALENT:(ARG:0):自慰しやすい
	CALL COM_ORDER_ELEMENT(ARG:0, "自慰しやすい", 10)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -2)
ENDIF

IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE109
LOCALS:3 =

IF MTAR_NUM == 1
	LOCALS:1 = %ANAME(MTAR:0)%
ELSEIF MTAR_NUM == 2
	LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
ELSE
	LOCALS:1 = %ANAME(MTAR:0)%たち
ENDIF

IF MPLY_NUM == 1
	LOCALS:2 = %ANAME(MPLY:0)%
ELSEIF MPLY_NUM == 2
	LOCALS:2 = %ANAME(MPLY:0)%と%ANAME(MPLY:1)%
ELSE
	LOCALS:2 = %ANAME(MPLY:0)%たち
ENDIF

SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		PRINTFORMW %LOCALS:2%は%LOCALS:1%の目の前で、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの尻穴に挿入し、動かしはじめた……
	CASE 1
		PRINTFORML %LOCALS:1%は%LOCALS:2%に、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの尻穴に挿入するよう命じた
		PRINTFORMW %LOCALS:2%は言われるまま、%LOCALS:1%の目の前で自らの%BAR_NAME(MPLY:0)%を自らの尻穴に挿入し、動かしはじめた……
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:2%に対して、%LOCALS:1%の前で自らの%BAR_NAME(MPLY:0)%を自らの尻穴に挿入するよう命じた
		PRINTFORMW %LOCALS:2%は言われるまま、スキマを使って自らの%BAR_NAME(MPLY:0)%を自らの尻穴に挿入し、%LOCALS:1%の目の前で見せつけるように動かしはじめた……
ENDSELECT

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST109
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:1 = MPLY:(LOCAL:0)

	IF ((LOCAL:1 != MASTER || CONFIG:441) && !IS_ANIMAL(LOCAL:1)) && !CFLAG:(LOCAL:1):TEXT_LAST非表示 && IS_INITIATIVE(LOCAL:1)
		IF ABL:(LOCAL:1):自慰 >= 5
			PRINTFORML %ANAME(LOCAL:1)%はすっかり快楽に没頭し、激しく腰を振って自ら快感を貪っている
		ELSEIF ABL:(LOCAL:1):露出 >= 5
			PRINTFORML %ANAME(LOCAL:1)%は見られることで興奮しているのか、上気した顔で自らを犯している
		ELSEIF ABL:(LOCAL:1):自慰 >= 2
			;捕虜調教のメインターゲット
			IF FLAG:調教モード == 2 && FINDELEMENT(PRISONER_TARGET, MTAR:0) != -1
				PRINTFORML %ANAME(LOCAL:1)%は屈辱に顔を歪めながらも、自ら快感を求めて腰を振ってしまっている
			ELSE
				PRINTFORML %ANAME(LOCAL:1)%は恥ずかしそうにしているが、無意識に快感を求めるように腰を動かしている
			ENDIF
		ELSE
			;捕虜調教のメインターゲット
			IF FLAG:調教モード == 2 && FINDELEMENT(PRISONER_TARGET, MTAR:0) != -1
				PRINTFORML %ANAME(LOCAL:1)%は屈辱に耐えながら、おぼつかない動きで自分を犯しはじめた
			ELSE
				PRINTFORML %ANAME(LOCAL:1)%は恥ずかしさのあまり目を逸らしながら、おぼつかない動きで自分を犯しはじめた
			ENDIF
		ENDIF
	ENDIF
NEXT

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN109
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_109()
RETURN POWER(2, 性的嗜好_辱めたい)

@COM_PREFERENCE_TARGET_109()
RETURN POWER(2, 性的嗜好_辱められたい) + POWER(2, 性的嗜好_性交したい) + POWER(2, 性的嗜好_性交されたい)

@COM_STACK_SPERM_MPLY_TO_MPLY_109()
RETURN 射精部位_アナル


code:
;手淫

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME10
#DIMS DYNAMIC 文字列_授乳
#DIMS DYNAMIC 文字列_手コキ = "Handjob"

IF SEARCH_EQUIP(9, MTAR:0, MPLY:0) >= 0 && MTAR_NUM == 1
	文字列_授乳 '= "Lactation"
ENDIF
IF MPLY_NUM == 1
	IF C_COND_MAP_GET(MPLY, "衣装状態_腕") == 衣装状態_着
		IF C_COND("衣装属性:腕:滑らか",,MPLY)
			文字列_手コキ '= "Glovejob"
		ENDIF
	ENDIF
ENDIF

IF MTAR_NUM > 1
	LOCALS:0 '= @"Simul %文字列_手コキ%"
ELSEIF MPLY_NUM == 3
	LOCALS:0 '= @"Ｔ%文字列_手コキ%"
ELSEIF MPLY_NUM == 2
	LOCALS:0 '= @"Ｗ%文字列_手コキ%"
ELSE
	LOCALS:1 =
	LOCALS:2 =
	LOCAL:0 = IS_INSERT_MUTUAL(MTAR:0, MPLY:0)
	IF LOCAL:0 == 2
		LOCALS:1 = Ａ
	ENDIF
	IF GROUPMATCH(LOCAL:0, 1, 2)
		SELECTCASE GET_SEX_POSITION(MTAR:0, MPLY:0)
			CASE 1
				LOCALS:2 = Normal
			CASE 2
				LOCALS:2 = Back position
			CASE 3
				LOCALS:2 = Face -to -face
			CASE 4
				LOCALS:2 = Back seat
			CASE 5
				LOCALS:2 = Cowgirl
			CASE 6
				LOCALS:2 = Back cowgirl
		ENDSELECT
	ENDIF
	LOCALS:0 = %文字列_授乳%%文字列_手コキ%%LOCALS:1%%LOCALS:2%
ENDIF

RESULTS:0 = Do %LOCALS:0%
RESULTS:1 = Get ordered to %LOCALS:0%
RESULTS:2 = Order %LOCALS:0%
RESULTS:3 = Get %LOCALS:0%
RESULTS:4 = Make do %LOCALS:0%
RESULTS:5 = Show %LOCALS:0% off
;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE10
;共通部分
CALL COM_ABLE_COMMON(10)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で3人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 3
	RETURN 0
;ターゲットは最大でプレイヤーの二倍まで
SIF MTAR_NUM <= 0 || MTAR_NUM > MPLY_NUM * 2
	RETURN 0

FOR LOCAL:1, 0, MTAR_NUM
	;ターゲットに男性器が必要
	SIF !HAS_PENIS(MTAR:(LOCAL:1))
		RETURN 0
	FOR LOCAL, 0, MPLY_NUM
		;ターゲットの男性器に手を伸ばせる
		SIF !CAN_REACH_GROIN(MPLY:LOCAL, MTAR:(LOCAL:1))
			RETURN 0
		;1本の男性器に対する同時実行制限
		SIF !P_STACKABLE(MPLY:LOCAL, MTAR:(LOCAL:1), 10)
			RETURN 0
	NEXT
NEXT

RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM10
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MPLY_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
	CASE 3
		TIMES LOCAL:10, 0.60
ENDSELECT

SELECTCASE MTAR_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 100

	EXP:(LOCAL:2):性技経験値 += MAX(MTAR_NUM / 2 + 1, 1)

	SOURCE:(LOCAL:2):奉仕 = SERVE_HOUSHI(LOCAL:2, 300)
	SOURCE:(LOCAL:2):接触 = 100
	SOURCE:(LOCAL:2):性行動 = 210

	RESULTS '= ""
	IF FLAG:調教モード == 調教_居住区
		CALL HO_GET_CHARAACT(LOCAL:2)
	ENDIF
	IF RESULTS == "食事中"
		SELECTCASE ABL:(LOCAL:2):奉仕
			CASE 0
				TIMES SOURCE:(LOCAL:2):不潔, 12.00
			CASE 1
				TIMES SOURCE:(LOCAL:2):不潔, 7.50
			CASE 2
				TIMES SOURCE:(LOCAL:2):不潔, 4.50
			CASE 3
				TIMES SOURCE:(LOCAL:2):不潔, 3.00
			CASE 4
				TIMES SOURCE:(LOCAL:2):不潔, 1.5
			CASEELSE
				TIMES SOURCE:(LOCAL:2):不潔, 0.3
		ENDSELECT
	ELSE
		SELECTCASE ABL:(LOCAL:2):奉仕
			CASE 0
				TIMES SOURCE:(LOCAL:2):不潔, 4.00
			CASE 1
				TIMES SOURCE:(LOCAL:2):不潔, 2.50
			CASE 2
				TIMES SOURCE:(LOCAL:2):不潔, 1.50
			CASE 3
				TIMES SOURCE:(LOCAL:2):不潔, 1.00
			CASE 4
				TIMES SOURCE:(LOCAL:2):不潔, 0.50
			CASEELSE
				TIMES SOURCE:(LOCAL:2):不潔, 0.10
		ENDSELECT
	ENDIF

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 150, 80)

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MTAR_NUM
		LOCAL:3 = MTAR:(LOCAL:1)
		SOURCE:(LOCAL:3):快Ｐ += SENSE_HOUSHI_P(LOCAL:2, LOCAL:3, 1200) * LOCAL:10 / 100

	NEXT
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:1 = MTAR:(LOCAL:0)

	DOWNBASE:(LOCAL:1):体力 += 60

	SOURCE:(LOCAL:1):接触 = 50
	SOURCE:(LOCAL:1):性行動 = 180

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:1, 120, 50)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 2

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 0

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP10
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP10(ARG:0)
;●人数補正の設定
LOCAL:10 = 100

SELECTCASE MEQUIP_PLAYER_NUM:(ARG:0)
	CASE 2
		TIMES LOCAL:10, 0.75
	CASE 3
		TIMES LOCAL:10, 0.60
ENDSELECT

SELECTCASE MEQUIP_TARGET_NUM:(ARG:0)
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 20

	EXP:(LOCAL:2):性技経験値 += MAX(MEQUIP_TARGET_NUM:(ARG:0) / 2 + 1, 1)

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 100)
	SOURCE:(LOCAL:2):接触 += 50
	SOURCE:(LOCAL:2):性行動 += 70

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;全ターゲットに与える快感系ソースを計算
	FOR LOCAL:1, 0, MEQUIP_TARGET_NUM:(ARG:0)
		LOCAL:3 = MEQUIP_TARGET:(ARG:0):(LOCAL:1)
		SOURCE:(LOCAL:3):快Ｐ += SENSE_HOUSHI_P(LOCAL:2, LOCAL:3, 400) * LOCAL:10 / 100

	NEXT
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:1 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:1):体力 += 10

	SOURCE:(LOCAL:1):接触 += 25
	SOURCE:(LOCAL:1):性行動 += 60
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE10(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に手コキ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP10(ARG:0)
LOCAL:2 = 0
IF MEQUIP_PLAYER_NUM:(ARG:0) == 1 && MEQUIP_TARGET_NUM:(ARG:0) == 1
	IF GROUPMATCH(IS_INSERT_MUTUAL(MEQUIP_PLAYER:(ARG:0):0, MEQUIP_TARGET:(ARG:0):0), 3, 4)
		LOCAL:2 = 1
	ELSEIF GROUPMATCH(SELECTCOM, 30, 31, 32, 33, 34, 35, 40, 41, 42, 43, 44, 45) && MTAR:0 == MEQUIP_PLAYER:(ARG:0):0 && MPLY:0 == MEQUIP_TARGET:(ARG:0):0
		LOCAL:2 = 1
	ENDIF
ENDIF
IF LOCAL:2
	PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%は挿入された%EQUIP_TARGET_ANAME(ARG:0)%のペニスの根本を指でシゴき上げている…
ELSE
	PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%のペニスを手で握りシゴき上げている…
ENDIF

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP10(ARG:0)

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER10(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 70

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)
CALL COM_ORDER_ELEMENT(ARG:0, @"精愛Lv{ABL:(ARG:0):精愛}", ABL:(ARG:0):精愛 * 1)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 2, 20))

IF TCVAR:(ARG:0):媚薬
	CALL COM_ORDER_ELEMENT(ARG:0, "媚薬", 6)
ENDIF

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -1)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -3)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -1)
ENDIF
IF TALENT:(ARG:0):男嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "男嫌い", -7)
ENDIF

IF FLAG:調教モード == 調教_居住区
	CALL HO_GET_CHARAACT(ARG:0)
	IF RESULTS == "食事中"
		CALL COM_ORDER_ELEMENT(ARG:0, "食事中", -45)
	ENDIF
ENDIF

;合意
IF !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE10
#DIMS DYNAMIC 性器描写
#DIMS DYNAMIC 淫乱描写
#DIMS DYNAMIC 衣装名
#DIMS DYNAMIC 実行名
#DIMS DYNAMIC 対象名
#DIMS DYNAMIC 状況

;ピアス判定
IF MTAR_NUM > 1
	IF IS_PIERCED(MTAR:0, ピアス_ペニス) && IS_PIERCED(MTAR:1, ピアス_ペニス)
		性器描写 '= "ピアスの取り付けられた"
	ENDIF
ENDIF
IF IS_PIERCED(MTAR:0, ピアス_ペニス)
	性器描写 '= "ピアスの取り付けられた"
ENDIF
性器描写 += 語彙_ペニス()

対象名 = %ANAME(MTAR:0, MTAR_NUM)%
IF C_COND("設備属性:机",, MPLY) && (!FLAG:ウフフフラグ || TFLAG:奉仕カテゴリ == 奉仕_手コキフェラ)
	状況 '= "机下"
ENDIF

CALL FL_PLAYSE("Pat_3.mp3")
;ターゲットが複数
IF MTAR_NUM > 1
	IF GETBIT(TALENT:(MPLY:0):淫乱系, 素質_淫乱_淫乱) && (MPLY:0 != MASTER || CONFIG:441)
		淫乱描写 = うっとりとした表情を浮かべながら、
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%淫乱描写%左右の手で%対象名%の%性器描写%を激しくシゴ%TARGET_STR("きたてた", "いてきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%淫乱描写%左右の手で%対象名%の%性器描写%を擦りあげて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%対象名%の%性器描写%に手で奉仕するように命令した
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%淫乱描写%左右の手で%対象名%をシゴき上げた…
	ENDSELECT

	;プレイヤーが３人
ELSEIF MPLY_NUM == 3
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人は、一斉に%対象名%の%性器描写%や玉に指を絡めて責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人は、協力しながら%対象名%の%性器描写%や玉に指を絡めて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人に、%対象名%の%性器描写%を手でシゴくように命令した
			PRINTFORMW %ANAME(MPLY:0)%たちは、全員で%ANAME(MTAR:0), MTAR_NUM%の%性器描写%や玉に指を絡めて責め立てた…
	ENDSELECT

	;プレイヤーが２人
ELSEIF MPLY_NUM == 2
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			{
				CALLF PRINT_RANDC(
					TEXT_CONCATE(
					@"%ANAME(MPLY:0)%と%ANAME(MPLY:1)%は"
					,@"%S_R("二人で分担しながら、/代わる代わる/交代で/二人同時に")%"
					,@"%対象名%の%性器描写%や玉を"
					,@"%S_R(@"弄り回し責め立て%TARGET_STR("た", "てきた")%/それぞれの指で弄ん%TARGET_STR("だ", "できた")%/扱き上げ%TARGET_STR("た", "てきた")%")%…"
					), 1
					,@"%ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%対象名%の%性器描写%や玉を弄り回し責め立て%TARGET_STR("た", "てきた")%…"
					)
			}
			PRINTW
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%対象名%の%性器描写%や玉に奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に、%対象名%の%性器描写%を手でシゴくように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%対象名%の%性器描写%や玉を弄り回し責め立てた…
	ENDSELECT
	;プレイヤーが１人(触手オナホ中)
ELSEIF IS_EQUIP_TARGET(MTAR:0, 205)
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORML %ANAME(MPLY:0)%は%対象名%の%性器描写%を咥え込んだ触手を手で掴むと、
			PRINTFORMW それをグポグポと激しく前後させて竿をシゴき上げ%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%は%対象名%の%性器描写%を咥え込んだ触手を手で掴むと、それをグポグポと前後させて竿への奉仕を行った…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%対象名%の%性器描写%に手で奉仕するように命令した
			PRINTFORML %ANAME(MPLY:0)%は%対象名%の%性器描写%を咥え込んだ触手を手で掴むと、
			PRINTFORMW それをグポグポと激しく前後させて竿をシゴき上げた…
	ENDSELECT

	;プレイヤーが１人
ELSE
	IF GETBIT(TALENT:(MPLY:0):淫乱系, 素質_淫乱_淫乱) && MPLY:0 != MASTER && CHECK_EMOTION(MPLY:0, "GOOD")
		淫乱描写 = %S_R("淫猥な手つきで/蠱惑的な視線で/うっとりとした表情を浮かべながら、/淫らな笑みを浮かべて、/恍惚とした表情で、/とろんとした目つきで、")%
	ENDIF
	IF C_COND_MAP_GET(MPLY, "衣装状態_腕") == 衣装状態_着
		衣装名 = %C_COND_MAP_GETS(MPLY, "衣装描写_腕")%
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			{
				CALLF PRINT_RANDC(
					TEXT_CONCATEC(
					@"%ANAME(MPLY)%は", 1
					,@"%S_R("周囲に悟られぬようこっそりと、/机の下で股間に手を伸ばすと/机の下でひそかに")%", 状況 == "机下"
					,@"%淫乱描写%%対象名%の%性器描写%を", 1
					,@"%S_R("扱いて責め立て/にちゃにちゃと音を立てて責め立て/指を絡めるように扱き上げ/上下に擦りあげ")%", 1
					,@"%TARGET_STR("た", "てきた")%…", 1
					), 1
					,TEXT_CONCATEC(
					@"%ANAME(MPLY)%は", 1
					,@"%S_R("周囲に悟られぬようこっそりと、/机の下で股間に手を伸ばすと/机の下でひそかに")%", 状況 == "机下"
					,@"%淫乱描写%%対象名%の%性器描写%", 1
					,@"%S_R("を息を荒げながら無心に磨り上げ/の先端に情欲に帯びた吐息を浴びせながら、擦りあげ/指を艶かしく絡めてさすり上げ/激しく上下にさすり上げ")%", 1
					,@"%TARGET_STR("た", "てきた")%…", 1
					), 淫乱描写 != "" && !IS_M_HOLD(MPLY)
					,TEXT_CONCATEC(
					@"%ANAME(MPLY)%は", 1
					,@"%S_R("周囲に悟られぬようこっそりと、/机の下で股間に手を伸ばすと/机の下でひそかに")%", 状況 == "机下"
					,@"%淫乱描写%%対象名%の%性器描写%", 1
					,@"%S_R("をつかんで/に指を絡めて/を優しく握って")%", 1
					,@"%S_R("前後にすりあげ/上下にさすっ/扱き上げ")%", 1
					,@"%TARGET_STR("た", "てきた")%…", 1
					), CHECK_EMOTION(MPLY, "GOOD")
					)
			}
			PRINTL
			;ターゲットに主導権
		CASE 1
			{
				CALLF PRINT_RANDC(
					TEXT_CONCATEC(
					@"%ANAME(MPLY)%は", 1
					,@"%S_R("周囲に悟られぬようこっそりと、/机の下で股間に手を伸ばすと/机の下でひそかに")%", 状況 == "机下"
					,@"%淫乱描写%%対象名%の%性器描写%を", 1
					,@"%S_R("擦りあげている/にちゃにちゃと音を立てながら擦っている/指を絡めるように扱き上げて奉仕している/上下に擦りあげて奉仕している")%…", 1
					), 1
					)
			}
			PRINTL
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%対象名%の%性器描写%に手で奉仕するように命令した
			PRINTFORML %ANAME(MPLY:0)%は%淫乱描写%%対象名%の竿を激しくシゴき上げた…
	ENDSELECT
	;着衣手コキ
	IF 衣装名 != "" && C_COND("衣装属性:腕:滑らか",, MPLY)
		{
			CALLF PRINT_RANDC(
				TEXT_CONCATE(
				@"%ANAME(MPLY)%の"
				,@"%衣装名%の"
				,@"%S_R("艶めかしい感触が/感触が/生地の感触が")%、"
				,@"%ANAME(MTAR)%の"
				,@"%S_R("ペニスを刺激する/性感を刺激する/劣情を煽り立てる")%…"
				), 1
				)
		}
		PRINTL
	ENDIF
	WAIT
ENDIF

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST10
#DIM 射精キャラID
#DIM 射精先キャラID

;食ザー判定
IF FLAG:調教モード == 調教_居住区
	FOR LOCAL:0, 0, MTAR_NUM
		IF NOWEX:(MTAR:(LOCAL:0)):射精 > 0
			射精キャラID = MTAR:(LOCAL:0)
			FOR LOCAL:1, 0, MPLY_NUM
				CALL HO_GET_CHARAACT(MPLY:(LOCAL:1))
				IF RESULTS == "食事中"
					射精先キャラID = MPLY:(LOCAL:1)
					CALLF TAG_PRINT(@"%ANAME(射精キャラID)%の精液が%ANAME(射精先キャラID)%の食事にべっとりとこびりついた…", 1)
					TCVAR:射精先キャラID:食ザーフラグ = 1
				ENDIF
			NEXT
		ENDIF
	NEXT
ENDIF

;-------------------------------------------------
;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN10
IF FLAG:調教モード != 調教_居住区 && FLAG:調教モード != 調教_クエスト
	RETURN コマンド_ウフフ
ELSE
	RETURN コマンド_居住区
ENDIF

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_10()
RETURN POWER(2, 性的嗜好_奉仕したい)

@COM_PREFERENCE_TARGET_10()
RETURN POWER(2, 性的嗜好_奉仕されたい)

@COM_STACK_SPERM_MTAR_TO_MPLY_10()
RETURN 射精部位_手


code:
;足を舐める

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME110
RESULTS:0 = 土下座する
RESULTS:1 = 土下座させられる
RESULTS:2 = 土下座させる
RESULTS:3 = 土下座される
RESULTS:4 = 土下座させる
RESULTS:5 = 土下座見せつけ

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE110
;共通部分
CALL COM_ABLE_COMMON(110)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で5人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 5
	RETURN 0
;ターゲットは最大で5人まで
SIF MTAR_NUM <= 0 || MTAR_NUM > 5
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0)
	RETURN 0

;全てのプレイヤーについて判定
FOR LOCAL:0, 0, MPLY_NUM
	SIF IS_RIDE(MPLY:(LOCAL:0))
		RETURN 0
	SIF IS_RIDDEN(MPLY:(LOCAL:0))
		RETURN 0

	;Ｖ挿入中かつ体位が後背位以外なら不可
	SIF IS_INSERT_SINGLE(MPLY:(LOCAL:0), "Ｖ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MPLY:0, "Ｖ"), 2)
		RETURN 0
	;Ａ挿入中かつ体位が後背位以外なら不可
	SIF IS_INSERT_SINGLE(MPLY:(LOCAL:0), "Ａ") && !GROUPMATCH(GET_SEX_POSITION_SINGLE(MPLY:0, "Ａ"), 2)
		RETURN 0
	;拘束されていたらダメ
	SIF IS_BIND(MPLY:(LOCAL:0))
		RETURN 0
    ;receiving nipple sucking, boobjob, buttjob
    SIF IS_EQUIP_TARGET(MPLY:(LOCAL:0), 9, 12, 15)
		RETURN 0

    ;exisiting action requires mobility
    ;There is no good way to do this. We just manually list every action that is restricted
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 0, 1, 3, 4, 5, 9, 10)
		RETURN 0
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 12, 14, 15, 16, 18, 23)
        RETURN 0
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 87, 88, 90, 94)
        RETURN 0
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 100, 101, 102, 103, 105, 106, 116)
        RETURN 0
    ;fucking actions. Can't use INSERT_SINGLE because it includes cowgirl etc.
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 13, 30, 31, 34, 35, 36, 37, 38, 39, 40, 41, 44, 45)
		RETURN 0
    SIF IS_EQUIP_PLAYER(MPLY:(LOCAL:0), 46, 47, 48, 49, 52, 53, 55, 56, 57, 58, 160, 161)
        RETURN 0
    ;giving/receiving tribadism, doubledildo, frotting
    SIF IS_EQUIP(MPLY:(LOCAL:0), 21, 22, 23)
        RETURN 0

NEXT

RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM110
;実行判定
CALL COM_ORDER_COMMON
SIF RESULT == 0
	RETURN 0

;●全プレイヤーについて処理
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:2 = MPLY:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 50

	SOURCE:(LOCAL:2):奉仕 = SERVE_HOUSHI(LOCAL:2, 150)
	SOURCE:(LOCAL:2):逸脱 = 80
	SOURCE:(LOCAL:2):接触 = 30
	SOURCE:(LOCAL:2):露出 = 600
	EXP:(LOCAL:2):被虐経験値 += 1

	;奉仕経験値を得られるコマンドのフラグ
	TCVAR:(MPLY:0):奉仕経験取得可能 = 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 50, 200)
NEXT

;●全ターゲットについて処理
FOR LOCAL:0, 0, MTAR_NUM
	LOCAL:2 = MTAR:(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 40

	SOURCE:(LOCAL:2):嗜虐 = 50
	SOURCE:(LOCAL:2):逸脱 = 20
	SOURCE:(LOCAL:2):接触 = 30
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 160, 80)
NEXT

;主導度変化基準値
TFLAG:主導度変化基準値 = 3

;倒錯度変化基準値
TFLAG:倒錯度変化基準値 = 2

;レズ・ＢＬ経験基準値
TFLAG:レズ・ＢＬ経験基準値 = 4

RETURN 1

;-------------------------------------------------
;継続コマンドかどうかを設定
;-------------------------------------------------
@COM_IS_EQUIP110
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP110(ARG:0)
;●全プレイヤーについて判定
FOR LOCAL:0, 0, MEQUIP_PLAYER_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_PLAYER:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 10

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 50)
	SOURCE:(LOCAL:2):逸脱 += 40
	SOURCE:(LOCAL:2):接触 += 15
	SOURCE:(LOCAL:2):露出 += 400
	EXP:(LOCAL:2):被虐経験値 += 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 10, 50)

	;奉仕経験値を得られるコマンドのフラグ     TCVAR:(LOCAL:2):奉仕経験取得可能 = 1

	;倒錯度変化基準値
	TCVAR:(LOCAL:2):倒錯度変化基準値 += 3
NEXT

;●全ターゲットについて判定
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	LOCAL:2 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

	DOWNBASE:(LOCAL:2):体力 += 10

	SOURCE:(LOCAL:2):嗜虐 += 30
	SOURCE:(LOCAL:2):逸脱 += 10
	SOURCE:(LOCAL:2):接触 += 15
	EXP:(LOCAL:2):嗜虐経験値 += 1

	;主導権に応じた優越・屈従のソース追加
	CALL ADD_SOURCE_INITIATIVE_U(LOCAL:2, 80, 20)

	;倒錯度変化基準値
	TCVAR:(LOCAL:2):倒錯度変化基準値 += 3
NEXT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE110(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が土下座中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP110(ARG:0)
LOCAL:2 = 1
FOR LOCAL:0, 0, MEQUIP_TARGET_NUM:(ARG:0)
	IF !IS_INITIATIVE(MEQUIP_TARGET:(ARG:0):(LOCAL:0))
		LOCAL:2 = 0
	ENDIF
NEXT
IF LOCAL:2
	PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が土下座している…
ELSE
	PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が土下座している…
ENDIF

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP110(ARG:0)

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER110(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 100

;共通部分
CALL COM_ORDER(ARG:0)

CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):欲望}", ABL:(ARG:0):欲望 * 1)
CALL COM_ORDER_ELEMENT(ARG:0, @"奉仕Lv{ABL:(ARG:0):奉仕}", ABL:(ARG:0):奉仕 * 4)
CALL COM_ORDER_ELEMENT(ARG:0, @"マゾLv{ABL:(ARG:0):マゾ}", ABL:(ARG:0):マゾ * 3)

LOCAL:0 = GET_PALAMLV(PALAM:(ARG:0):欲情)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲情Lv{LOCAL:0}", MIN(LOCAL:0 * 1, 10))

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -2)
ENDIF
IF TALENT:(ARG:0):汚臭鈍感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭鈍感", 1)
ENDIF
IF TALENT:(ARG:0):汚臭敏感
	CALL COM_ORDER_ELEMENT(ARG:0, "汚臭敏感", -4)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF

RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE110

;プレイヤーが2人以上
IF MPLY_NUM >= 2
	LOCALS:0 = %ANAME(MPLY:0)%たち
	LOCALS:2 = 並んで
;プレイヤーが１人
ELSE
	LOCALS:0 = %ANAME(MPLY:0)%
	LOCALS:2 =
ENDIF
;ターゲットが2人以上
IF MTAR_NUM >= 2
	LOCALS:1 = %ANAME(MTAR:0)%たち
;ターゲットが1人
ELSE
	LOCALS:1 = %ANAME(MTAR:0)%
ENDIF

SELECTCASE RAND:8
	CASE 0
		LOCALS:3 = 犯して下さいとねだりながら
	CASE 1
		LOCALS:3 = 奴隷にして下さいと懇願しながら
	CASE 2
		LOCALS:3 = 気持ちよくして下さいと言いながら
	CASE 3
		LOCALS:3 = 私はあなたの奴隷ですと宣言しながら
	CASE 4
		LOCALS:3 = おチンポを下さいとねだりながら
	CASEELSE
		LOCALS:3 =
ENDSELECT

SELECTCASE GET_COM_INITIATIVE()
	;プレイヤーに主導権
	CASE 0
		PRINTFORMW %LOCALS:0%は%LOCALS:1%の目の前で%LOCALS:2%、%LOCALS:3%土下座し%TARGET_STR("た", "てきた")%…
	;ターゲットに主導権
	CASE 1
		IF MTAR_NUM == 1 && ABL:(MTAR:0):サド >= 3
			PRINTFORMW %LOCALS:1%は嗜虐的な笑みを浮かべ%LOCALS:0%に命令し、%LOCALS:3%無理やり%LOCALS:2%土下座させ%PLAYER_STR("た", "てきた")%…
		ELSEIF MTAR_NUM == 1 && ABL:(MTAR:0):主導度Ｕ < 100
			PRINTFORMW %LOCALS:1%は少し緊張した様子で%LOCALS:0%に命令し、%LOCALS:3%%LOCALS:2%土下座させた…
		ELSE
			PRINTFORMW %LOCALS:1%は%LOCALS:0%に命令し、%LOCALS:3%無理やり%LOCALS:2%土下座させた…
		ENDIF
	;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:0%に、%LOCALS:1%に%LOCALS:3%土下座するように命令した
		PRINTFORMW %LOCALS:0%は言われるまま%LOCALS:2%%LOCALS:1%に頭を下げた…
ENDSELECT

@COM_TEXT_LAST110
FOR LOCAL:0, 0, MPLY_NUM
	LOCAL:1 = MPLY:(LOCAL:0)
	SIF LOCAL:1 == MASTER
		CONTINUE
	IF GETBIT(TALENT:(LOCAL:1):淫乱系, 素質_淫乱_精液便女)
		PRINTFORML 精液便女に成り下がった%ANAME(LOCAL:1)%は、土下座することに快楽を見いだしている…
	ELSEIF IS_SLAVE(LOCAL:1)
		PRINTFORML 屈服しきった%ANAME(LOCAL:1)%は、土下座することに悦びを見いだしている…
	ELSEIF ABL:(LOCAL:1):マゾ >= 5
		PRINTFORML すっかり被虐が身についた%ANAME(LOCAL:1)%は、土下座することに快楽を見いだしている…
	ELSEIF ABL:(LOCAL:1):マゾ >= 3
		PRINTFORML %ANAME(LOCAL:1)%は土下座に対し屈辱と、同時に快楽をも覚えつつあるようだ…
	ELSE
		PRINTFORML %ANAME(LOCAL:1)%は土下座することの屈辱に歯ぎしりしている…
	ENDIF
NEXT

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

;コマンド区分
;-------------------------------------------------

@COM_AVAILABLE_WHEN110
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_110()
RETURN POWER(2, 性的嗜好_辱めたい)

@COM_PREFERENCE_TARGET_110()
RETURN POWER(2, 性的嗜好_辱められたい)