code:
;触手産卵

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME216
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_ABLE216
;共通部分
CALL COM_ABLE_COMMON(216)
SIF RESULT == 0
	RETURN 0
;プレイヤーは最大で1人まで
SIF MPLY_NUM <= 0 || MPLY_NUM > 1
	RETURN 0
;ターゲットは1人以上
SIF MTAR_NUM <= 0
	RETURN 0
;プレイヤーが行動不能なら不可
SIF !IS_PLAYABLE(MPLY:0) && !FLAG:RECHECKING
	RETURN 0
;プレイヤーが触手召喚中でないなら不可
SIF !IS_EQUIP_PLAYER(MPLY:0, 200) && !HAS_TENTACLE(MPLY)
	RETURN 0
;全てのターゲットについて判定
FOR LOCAL:0, 0, MTAR_NUM
	;ターゲットのＵが塞がっているなら不可(プレイヤーからターゲットへの触手挿入中は可)
	SIF IS_U_HOLD(MTAR:(LOCAL:0)) && SEARCH_EQUIP(215, MPLY:0, MTAR:(LOCAL:0)) == -1
		RETURN 0
	;既に触手妊娠中なら不可
	SIF TALENT:(MTAR:(LOCAL:0)):Ｕ触手妊娠 && !FLAG:RECHECKING
		RETURN 0
NEXT
RETURN 1

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

;●プレイヤーについて処理
EXP:(MPLY:0):性技経験値 += 1
EXP:(MPLY:0):魔術経験値 += 1
EXP:(MPLY:0):触手経験値 += 1

SOURCE:(MPLY:0):嗜虐 = 100
SOURCE:(MPLY:0):逸脱 = 150
SOURCE:(MPLY:0):触手 = 200
SOURCE:(MPLY:0):性行動 = 180

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

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

	EXP:(LOCAL:2):触手経験値 += 2

	SOURCE:(LOCAL:2):快Ｕ = SENSE_HOUSHI(MPLY:0, LOCAL:2, 500 + ABL:(MPLY:0):魔術 * 6) + (GETBIT(TALENT:(LOCAL:2):淫乱系, 素質_淫乱_苗床) * 1000)
	SOURCE:(LOCAL:2):逸脱 = 1500 - (GETBIT(TALENT:(LOCAL:2):淫乱系, 素質_淫乱_苗床) * 500)
	SOURCE:(LOCAL:2):触手 = 1500 + (GETBIT(TALENT:(LOCAL:2):淫乱系, 素質_淫乱_苗床) * 1500)
	SOURCE:(LOCAL:2):性行動 = 450 + (GETBIT(TALENT:(LOCAL:2):淫乱系, 素質_淫乱_苗床) * 450)

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

	;基本処理
	CALL COM_COMMON216(LOCAL:2)

	TALENT:(LOCAL:2):Ｕ触手妊娠 = 1

	;触手Ｖ産卵したキャラのIDを記録
	CFLAG:(LOCAL:2):触手Ｕ産卵実行者 = GET_ID(MPLY:0)

NEXT

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

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

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

RETURN 1

;--------------------------------------------------------
;ターゲットに対する諸々の処理
;--------------------------------------------------------
@COM_COMMON216(ARG:0)
SELECTCASE ABL:(ARG:0):Ｕ感
	CASE 0
		SOURCE:(ARG:0):苦痛 += 800
	CASE 1
		SOURCE:(ARG:0):苦痛 += 500
	CASE 2
		SOURCE:(ARG:0):苦痛 += 300
ENDSELECT

IF PALAM:(ARG:0):潤滑 < PALAMLV:1
	TIMES SOURCE:(ARG:0):快Ｕ, 0.05
	SOURCE:(ARG:0):苦痛 = SOURCE:(ARG:0):苦痛 * 4 + 1000
ELSEIF PALAM:(ARG:0):潤滑 < PALAMLV:3
	TIMES SOURCE:(ARG:0):快Ｕ, 0.20
	SOURCE:(ARG:0):苦痛 = SOURCE:(ARG:0):苦痛 * 2 + 300
ELSEIF PALAM:(ARG:0):潤滑 < PALAMLV:5
	TIMES SOURCE:(ARG:0):快Ｕ, 0.60
	TIMES SOURCE:(ARG:0):苦痛, 1.00
ELSEIF PALAM:(ARG:0):潤滑 < PALAMLV:7
	TIMES SOURCE:(ARG:0):快Ｕ, 0.85
	TIMES SOURCE:(ARG:0):苦痛, 0.70
ELSE
	TIMES SOURCE:(ARG:0):快Ｕ, 1.00
	TIMES SOURCE:(ARG:0):苦痛, 0.50
ENDIF

IF TALENT:(ARG:0):体格 == 体格_小柄
	TIMES SOURCE:(ARG:0):苦痛, 1.50
ENDIF

IF ARG:0 != MASTER
	IF !(TALENT:(ARG:0):恋慕 || TALENT:(ARG:0):親友)
		IF TALENT:(ARG:0):貞操観念
			IF TALENT:(ARG:0):処女
				SOURCE:(ARG:0):反感 = 5000
			ELSE
				SOURCE:(ARG:0):反感 = 1000
			ENDIF
		ELSEIF TALENT:(ARG:0):貞操無頓着
			IF TALENT:(ARG:0):処女
				SOURCE:(ARG:0):反感 = 300
			ENDIF
		ELSE
			IF TALENT:(ARG:0):処女
				SOURCE:(ARG:0):反感 = 2500
			ENDIF
		ENDIF
		IF TALENT:(ARG:0):恋人
			TIMES SOURCE:(ARG:0):反感, 0.10
		ENDIF
	ENDIF

	;好感度・従属度・支配度の影響
	LOCAL:0 = MAX(CFLAG:(ARG:0):好感度, CFLAG:(ARG:0):従属度, CFLAG:(ARG:0):支配度)
	IF LOCAL:0 < 100
		TIMES SOURCE:(ARG:0):反感, 1.00
	ELSEIF LOCAL:0 < 300
		TIMES SOURCE:(ARG:0):反感, 0.90
	ELSEIF LOCAL:0 < 500
		TIMES SOURCE:(ARG:0):反感, 0.80
	ELSEIF LOCAL:0 < 800
		TIMES SOURCE:(ARG:0):反感, 0.40
	ELSEIF LOCAL:0 < 1500
		TIMES SOURCE:(ARG:0):反感, 0.15
	ELSE
		SOURCE:(ARG:0):反感 = SOURCE:(ARG:0):反感 / ((LOCAL:0 - 1500) / 50 + 10)
	ENDIF
ENDIF

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

;共通部分
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):奉仕 * 3)
CALL COM_ORDER_ELEMENT(ARG:0, @"欲望Lv{ABL:(ARG:0):触手}", ABL:(ARG:0):触手 * 6)

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, "好奇心", 2)
ENDIF
IF TALENT:(ARG:0):保守的
	CALL COM_ORDER_ELEMENT(ARG:0, "保守的", -7)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 4)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -2)
ENDIF

IF GETBIT(TALENT:(ARG:0):淫乱系, 素質_淫乱_サド) || GETBIT(TALENT:(ARG:0):淫乱系, 素質_淫乱_マゾ) || ABL:(ARG:0):倒錯度 >= 800
	CALL COM_ORDER_ELEMENT(ARG:0, "倒錯度", 32)
ELSEIF ABL:(ARG:0):倒錯度 >= 500
	CALL COM_ORDER_ELEMENT(ARG:0, "倒錯度", 24)
ELSEIF ABL:(ARG:0):倒錯度 >= 300
	CALL COM_ORDER_ELEMENT(ARG:0, "倒錯度", 16)
ELSEIF ABL:(ARG:0):倒錯度 >= 100
	CALL COM_ORDER_ELEMENT(ARG:0, "倒錯度", 8)
ELSE
	CALL COM_ORDER_ELEMENT(ARG:0, "倒錯度", 0)
ENDIF

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

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE216
LOCAL:1 = 1
FOR LOCAL:0, 0, MTAR_NUM
	IF SEARCH_EQUIP(215, MPLY:0, MTAR:(LOCAL:0)) == -1
		LOCAL:1 = 0
	ENDIF
NEXT

;全員が既に触手挿入中なら分岐
IF LOCAL:1
	;継続中の地の文をカット
	FOR LOCAL:0, 0, MTAR_NUM
		LOCAL:2 = SEARCH_EQUIP(201, MPLY:0, MTAR:(LOCAL:0))
		IF LOCAL:2 >= 0
			MEQUIP_CUT:(LOCAL:2) = 1
		ENDIF
	NEXT

	IF MTAR_NUM >= 3
		LOCALS:1 = %ANAME(MTAR:0)%たち
		LOCALS:2 = 一斉に
	ELSEIF MTAR_NUM == 2
		LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
		LOCALS:2 =
	ELSE
		LOCALS:1 = %ANAME(MTAR:0)%
		LOCALS:2 =
	ENDIF

	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORML %LOCALS:1%の中に挿入された触手が一際大きく震えると、%LOCALS:1%の膀胱内に卵を吐き出した
			;耐性付いてないと嫌がる
			IF (TCVAR:(MTAR:0):失神フラグ) || (TCVAR:(MTAR:0):離脱フラグ == 1)
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM 触手は意識のない%LOCALS:1%の開発されきった
				ELSE
					PRINTFORM 触手は意識のない%LOCALS:1%の
				ENDIF
			ELSEIF TCVAR:(MTAR:0):行動不能フラグ
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM 触手は疲れて身を任せている%LOCALS:1%の開発されきった
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM 触手は疲れてぐったりとした%LOCALS:1%の
				ELSE
					PRINTFORM 触手は身動きのとれぬまま\@ RAND:2 ? 涙目で抗議 # 必死に首を振って抵抗 \@する%LOCALS:1%の
				ENDIF
			ELSE
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM 触手は%LOCALS:1%の開発されきった
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM 触手は%LOCALS:1%の
				ELSE
					PRINTFORM 触手は\@ RAND:2 ? 涙目で抵抗 # 必死に抵抗 \@する%LOCALS:1%の
				ENDIF
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW 膀胱に次々と卵を産みつけていった…
				CASE 1
					PRINTW 膀胱に大きな卵を数個産み落とした…
				CASE 2
					PRINTW 膀胱に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW 膀胱に産卵を行った…
				CASE 4
					PRINTW 膀胱に触手の種子を産み付けた…
				CASE 5
					PRINTW 膀胱に小さな卵核を産み落とした…
				CASE 6
					PRINTW 膀胱に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW 膀胱に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW 膀胱に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW 膀胱に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW 膀胱へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW 膀胱へ白濁した液体と卵を押し込んだ…
				CASE 12
					PRINTW 卵の元となる妖力を膀胱へ零れ落ちるほど流し込んだ…
			ENDSELECT
			;ターゲットに主導権
		CASE 1
			PRINTFORML %LOCALS:1%は%ANAME(MPLY:0)%に対して、自身の尿道に挿入された触手に産卵させるように命令した
			;耐性付いてないと嫌がる
			IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
				PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の開発された
			ELSEIF ABL:(MTAR:0):触手 >= 3
				PRINTFORM %ANAME(MPLY:0)%は触手を操って、%LOCALS:1%の
			ELSE
				PRINTFORM %ANAME(MPLY:0)%は触手を操って、嫌がる%LOCALS:1%の
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW 膀胱に次々と卵を産みつけていった…
				CASE 1
					PRINTW 膀胱に大きな卵を数個産み落とした…
				CASE 2
					PRINTW 膀胱に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW 膀胱に産卵を行った…
				CASE 4
					PRINTW 膀胱に触手の種子を産み付けた…
				CASE 5
					PRINTW 膀胱に小さな卵核を産み落とした…
				CASE 6
					PRINTW 膀胱に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW 膀胱に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW 膀胱に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW 膀胱に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW 膀胱へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW 白濁した液体と卵を膀胱へ押し込んだ…
				CASE 12
					PRINTW 卵の元となる妖力を膀胱へ零れ落ちるほど流し込んだ…
			ENDSELECT
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対し、%LOCALS:1%の膀胱に触手の卵を産み付けるように命令した
			;耐性付いてないと嫌がる
			IF (TCVAR:(MTAR:0):失神フラグ) || (TCVAR:(MTAR:0):離脱フラグ == 1)
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、意識のない%LOCALS:1%の開発されきった
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、意識のない%LOCALS:1%の
				ENDIF
			ELSEIF TCVAR:(MTAR:0):行動不能フラグ
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、疲れて身を任せている%LOCALS:1%の開発されきった
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、疲れて身動きのとれぬ%LOCALS:1%の
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、身動きのとれぬまま\@ RAND:2 ? 涙目で抗議 # 必死に首を振って抵抗 \@する%LOCALS:1%の
				ENDIF
			ELSE
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の開発された
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、%LOCALS:1%の
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を操って、\@ RAND:2 ? 涙目で抵抗 # 必死に抵抗 \@する%LOCALS:1%の
				ENDIF
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW 膀胱に次々と卵を産みつけていった…
				CASE 1
					PRINTW 膀胱に大きな卵を数個産み落とした…
				CASE 2
					PRINTW 膀胱に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW 膀胱に産卵を行った…
				CASE 4
					PRINTW 膀胱に触手の種子を産み付けた…
				CASE 5
					PRINTW 膀胱に小さな卵核を産み落とした…
				CASE 6
					PRINTW 膀胱に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW 膀胱に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW 膀胱に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW 膀胱に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW 膀胱へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW 白濁した液体と卵を膀胱へ押し込んだ…
				CASE 12
					PRINTW 卵の元となる妖力を膀胱へ零れ落ちるほど流し込んだ…
			ENDSELECT
	ENDSELECT
ELSE
	IF MTAR_NUM >= 3
		LOCALS:0 = 尿道
		LOCALS:1 = %ANAME(MTAR:0)%たち
		LOCALS:2 = 一斉に
		LOCALS:3 = 全員の
	ELSEIF MTAR_NUM == 2
		LOCALS:0 = 尿道
		LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
		LOCALS:2 =
		LOCALS:3 = 二人の
	ELSE

		IF TALENT:(MTAR:0):体格 == 体格_小柄
			LOCALS:0 = 尿道
		ELSE
			LOCALS:0 = 尿道
		ENDIF

		LOCALS:1 = %ANAME(MTAR:0)%
		LOCALS:2 =
		LOCALS:3 = 自身の
	ENDIF

	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			;先に差し込んでない時は適当に犯す
			SELECTCASE RAND:13
				CASE 0
					PRINTFORML %ANAME(MPLY:0)%の触手を操って、%LOCALS:1%の%LOCALS:0%に%LOCALS:2%挿入した
				CASE 1
					PRINTFORML %ANAME(MPLY:0)%の触手で%LOCALS:1%を\@ RAND:2 ? 逆さ吊り # 宙吊り \@にし、%LOCALS:0%に触手を%LOCALS:2%挿入させた
				CASE 2
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%の体を宙に固定し、%LOCALS:0%に触手を%LOCALS:2%挿入した
				CASE 3
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%を仰向けにすると、生殖用の触手を%LOCALS:0%に%LOCALS:2%挿入させた
				CASE 4
					PRINTFORML %ANAME(MPLY:0)%の触手で%LOCALS:1%の股を開かせると、突き上げるように%LOCALS:0%に触手を%LOCALS:2%挿入させた
				CASE 5
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%を壁に追い詰め、%LOCALS:0%に触手を%LOCALS:2%挿入した
				CASE 6
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%の股間を何度も撫上げると、そのままするりと%LOCALS:0%に触手を%LOCALS:2%挿入させた
				CASE 7
					PRINTFORML %ANAME(MPLY:0)%は触手を%LOCALS:1%の股に擦りつけ、ねっとりと%LOCALS:0%に触手を%LOCALS:2%挿入させた
				CASE 8
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%を組み伏せると、%LOCALS:0%に\@ RAND:2 ? 無理やり # 優しく \@触手を%LOCALS:2%挿入させた
				CASE 9
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%の自由を奪うと、強引に産卵管を%LOCALS:0%に%LOCALS:2%挿入させた
				CASE 10
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%を抱き上げると、産卵管を%LOCALS:0%に%LOCALS:2%挿入した
				CASE 11
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%の四肢を固定すると、太い触手を%LOCALS:0%に%LOCALS:2%挿入した
				CASE 12
					PRINTFORML %ANAME(MPLY:0)%は触手で%LOCALS:1%の%LOCALS:0%を何度も弄んだあと、先端を%LOCALS:2%挿入した
			ENDSELECT
			;耐性付いてないと嫌がる
			IF (TCVAR:(MTAR:0):失神フラグ) || (TCVAR:(MTAR:0):離脱フラグ == 1)
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM さらに触手は意識のない%LOCALS:1%の開発されきった
				ELSE
					PRINTFORM さらに触手は意識のない%LOCALS:1%の
				ENDIF
			ELSEIF TCVAR:(MTAR:0):行動不能フラグ
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM 触手は疲れて身を任せている%LOCALS:1%の開発されきった
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM 触手は疲れてぐったりとした%LOCALS:1%の
				ELSE
					PRINTFORM 触手は身動きのとれぬまま\@ RAND:2 ? 涙目で抗議 # 必死に首を振って抵抗 \@する%LOCALS:1%の
				ENDIF
			ELSE
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM さらに触手は大人しくしている%LOCALS:1%の
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM さらに触手は%LOCALS:1%の
				ELSE
					PRINTFORM 触手は\@ RAND:2 ? 涙目で抵抗 # 必死に抵抗 \@する%LOCALS:1%を押さえつけると、無理やり
				ENDIF
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW 膀胱に次々と卵を産みつけていった…
				CASE 1
					PRINTW 某国に大きな卵を数個産み落とした…
				CASE 2
					PRINTW 膀胱に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW 膀胱に産卵を行った…
				CASE 4
					PRINTW 膀胱に触手の種子を産み付けた…
				CASE 5
					PRINTW 膀胱に小さな卵核を産み落とした…
				CASE 6
					PRINTW 膀胱に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW 膀胱に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW 膀胱に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW 膀胱に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW 膀胱へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW 白濁した液体と卵を膀胱へ押し込んだ…
				CASE 12
					PRINTW 卵の元となる妖力を膀胱へ零れ落ちるほど流し込んだ…
			ENDSELECT
			;ターゲットに主導権
		CASE 1
			PRINTFORML %LOCALS:1%は%ANAME(MPLY:0)%に対して、自身の尿道に触手の卵を産み付けるように命令した
			;耐性付いてないと嫌がる
			IF ABL:(MTAR:0):触手 >= 3
				PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の膣に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
			ELSE
				PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の膣に%LOCALS:2%挿入すると、嫌がる%LOCALS:1%の膀胱
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW に次々と卵を産みつけていった…
				CASE 1
					PRINTW に大きな卵を数個産み落とした…
				CASE 2
					PRINTW に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW に産卵を行った…
				CASE 4
					PRINTW に触手の種子を産み付けた…
				CASE 5
					PRINTW に小さな卵核を産み落とした…
				CASE 6
					PRINTW に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW へ白濁した液体と卵を押し込んだ…
				CASE 12
					PRINTW へ卵の元となる妖力を零れ落ちるほど流し込んだ…
			ENDSELECT
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対し、%LOCALS:1%の尿道に触手の卵を産み付けるように命令した
			;耐性付いてないと嫌がる
			IF (TCVAR:(MTAR:0):失神フラグ) || (TCVAR:(MTAR:0):離脱フラグ == 1)
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を意識のない%LOCALS:1%の尿道に%LOCALS:2%挿入すると、%LOCALS:1%の開発された膀胱
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を意識のない%LOCALS:1%の尿道に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
				ENDIF
			ELSEIF TCVAR:(MTAR:0):行動不能フラグ
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を疲れて身を任せている%LOCALS:1%の開発されきった尿道に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM %ANAME(MPLY:0)%は触手を疲れて身動きのとれぬ%LOCALS:1%の尿道に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を身動きのとれぬまま\@ RAND:2 ? 涙目で抗議 # 必死に首を振って抵抗 \@する%LOCALS:1%の尿道に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
				ENDIF
			ELSE
				IF GETBIT(TALENT:(MTAR:0):淫乱系, 素質_淫乱_苗床)
					PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の開発された膀胱
				ELSEIF ABL:(MTAR:0):触手 >= 3
					PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の尿道に%LOCALS:2%挿入すると、%LOCALS:1%の膀胱
				ELSE
					PRINTFORM %ANAME(MPLY:0)%は触手を%LOCALS:1%の尿道に%LOCALS:2%挿入すると、\@ RAND:2 ? 涙目で抵抗 # 必死に抵抗 \@する%LOCALS:1%の膀胱
				ENDIF
			ENDIF
			;卵の形状分岐
			SELECTCASE RAND:13
				CASE 0
					PRINTW に次々と卵を産みつけていった…
				CASE 1
					PRINTW に大きな卵を数個産み落とした…
				CASE 2
					PRINTW に粘着質の膜が張った卵を産み落とした…
				CASE 3
					PRINTW に産卵を行った…
				CASE 4
					PRINTW に触手の種子を産み付けた…
				CASE 5
					PRINTW に小さな卵核を産み落とした…
				CASE 6
					PRINTW に触手の種子を一つ一つ押し込んでいった…
				CASE 7
					PRINTW に粘りつく液体と共に卵を流し込んだ…
				CASE 8
					PRINTW に無数の白濁した、小さな卵を流し込んだ…
				CASE 9
					PRINTW に鼓動する卵を流し込んだ…
				CASE 10
					PRINTW へ生殖液と卵を流し込んだ…
				CASE 11
					PRINTW へ白濁した液体と卵を押し込んだ…
				CASE 12
					PRINTW へ卵の元となる妖力を零れ落ちるほど流し込んだ…
			ENDSELECT
	ENDSELECT
ENDIF

SETCOLOR カラー_注意
FOR LOCAL:0, 0, MTAR_NUM
	PRINTFORML %ANAME(MTAR:(LOCAL:0))%は触手の子を膀胱に宿しました
NEXT
RESETCOLOR

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

	IF (LOCAL:1 != MASTER || CONFIG:441) && !IS_ANIMAL(LOCAL:1)
		IF (TCVAR:(MTAR:0):失神フラグ) || (TCVAR:(MTAR:0):離脱フラグ == 1)
			IF GETBIT(TALENT:(LOCAL:1):淫乱系, 素質_淫乱_苗床)
				PRINTFORMW %ANAME(LOCAL:1)%は意識が無いにも拘らず、熱っぽい吐息を漏らして恍惚とした表情で触手の産卵を受け入れている
			ELSEIF ABL:(LOCAL:1):触手 >= 3
				PRINTFORMW 徐々に異形の子供を孕むことに慣れてきた%ANAME(LOCAL:1)%は、意識のないままゾクゾクと体を震わせている
			ELSE
				PRINTFORMW 意識のないままの%ANAME(LOCAL:1)%の身体は、膀胱に産み付けられた異形の子の蠢く感触に身震いしている
			ENDIF
		ELSE
			IF GETBIT(TALENT:(LOCAL:1):淫乱系, 素質_淫乱_苗床)
				PRINTFORMW %ANAME(LOCAL:1)%はすっかり陶酔しきった表情で、触手の産卵を受け入れている
			ELSEIF ABL:(LOCAL:1):触手 >= 3
				PRINTFORMW %ANAME(LOCAL:1)%は異形に孕まされる倒錯感に、ゾクゾクと体を震わせている
			ELSE
				PRINTFORMW %ANAME(LOCAL:1)%は異形の子を産み付けられた恐怖とショックで青ざめている
			ENDIF
		ENDIF
	ENDIF
NEXT

IF (LOCAL:1 != MASTER || CONFIG:441) && !IS_ANIMAL(LOCAL:1)
	PRINTFORM 尿道から粘液にまみれた触手を引き抜くと%ANAME(LOCAL:1)%

	LOCALS:3 = %TOSTR_EMOTION(LOCAL:1)%

	SELECTCASE RAND:7
		CASE 0
			IF GROUPMATCH(LOCALS:3, "幸", "悦", "良", "平", "普")
				PRINTW はフーフーと呼吸を繰り返している…
			ELSEIF GROUPMATCH(LOCALS:3, "恨", "怒", "憤", "狂", "鬱", "恐", "怯")
				PRINTW は荒い呼吸を繰り返している…
			ELSEIF GROUPMATCH(LOCALS:3, "壊", "虚", "悲", "憂")
				PRINTW は呆然と虚空を見続けている…
			ELSE
				PRINTW は荒い呼吸を繰り返している…
			ENDIF
		CASE 1
			PRINTW と触手の間には半透明な糸の橋が出来上がった…
		CASE 2
			PRINTW のお腹は大きく膨れ上がっていた…
		CASE 3
			PRINTW の尿道からはごぽりと雫が漏れ落ちた…
		CASE 4
			PRINTW の尿道からはずるりと卑猥な水音が響いた…
		CASE 5
			PRINTW はくたりと地面に倒れ付した…
		CASE 6
			IF ABL:(LOCAL:1):触手 >= 3
				IF GROUPMATCH(LOCALS:3, "幸", "悦", "良", "平", "普")
					PRINTW は柔らかい表情で自分のお腹を撫でている…
				ELSEIF GROUPMATCH(LOCALS:3, "恨", "怒", "憤", "狂")
					PRINTW は黙って自分のお腹を撫でている…
				ELSEIF GROUPMATCH(LOCALS:3, "鬱", "悲", "憂", "恐", "怯")
					PRINTW は複雑な表情で自分のお腹を撫でている…
				ELSEIF GROUPMATCH(LOCALS:3, "壊", "虚")
					PRINTW は呆然として自分のお腹を摩っている…
				ELSE
					PRINTW は呆然として自分のお腹を摩っている…
				ENDIF
			ELSE
				PRINTW は呆然と自分のお腹を摩っている…
			ENDIF
	ENDSELECT
ENDIF

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

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

@COM_AVAILABLE_WHEN216
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_216()
RETURN POWER(2, 性的嗜好_触手で犯したい) + POWER(2, 性的嗜好_虐げたい)

@COM_PREFERENCE_TARGET_216()
RETURN POWER(2, 性的嗜好_触手で犯されたい) + POWER(2, 性的嗜好_虐げられたい) + POWER(2, 性的嗜好_妊娠したい)


code:
;貝合わせ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME21
LOCALS:0 = 貝合わせ

RESULTS:0 '= TR(LOCALS:0,"する")
RESULTS:1 '= TR(LOCALS:0,"させられる")
RESULTS:2 '= TR(LOCALS:0,"させる")
RESULTS:3 '= TR(LOCALS:0,"される")
RESULTS:4 '= TR(LOCALS:0,"させる")
RESULTS:5 '= TR(LOCALS:0,"見せつけ")

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE21
;共通部分
CALL COM_ABLE_COMMON(21)
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 !HAS_VAGINA(MPLY:0) || !HAS_VAGINA(MTAR:0)
	RETURN 0
SIF IS_RIDE(MPLY:0) || IS_RIDE(MTAR:0)
	RETURN 0
;grovelling
SIF IS_EQUIP_PLAYER(MPLY:0, 110) || IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;プレイヤーとターゲットが共に拘束中なら不可
SIF IS_BIND(MPLY:0) && IS_BIND(MTAR:0)
	RETURN 0
;Todo - vibrators and balloons should perhaps be exempted
SIF IS_V_HOLD(MPLY:0) || IS_V_HOLD(MTAR:0)
	RETURN 0
;either is fucking or fucked by anyone
SIF IS_INSERT_SINGLE(MPLY:0, "全") || IS_INSERT_SINGLE(MTAR:0, "全")
	RETURN 0
SIF REACHING_BODY(MPLY, MTAR) || REACHING_BODY(MTAR, MPLY)
	RETURN 0
SIF LICKING_GROIN(MPLY, MTAR) || LICKING_GROIN(MTAR, MPLY)
	RETURN 0
SIF LICKING_BODY(MPLY, MTAR) || LICKING_BODY(MTAR, MPLY)
	RETURN 0
;giving/receiving assjob, trampling, footjob
SIF SEARCH_EQUIP_IC_M(MPLY:0, MTAR:0, 14, 15, 103) >= 0
	RETURN 0
RETURN 1

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

;●潤滑による各種倍率の計算
LOCAL:10 = 0
IF PALAM:(MPLY:0):潤滑 < PALAMLV:1
	LOCAL:10 += 10
ELSEIF PALAM:(MPLY:0):潤滑 < PALAMLV:3
	LOCAL:10 += 20
ELSEIF PALAM:(MPLY:0):潤滑 < PALAMLV:5
	LOCAL:10 += 30
ELSEIF PALAM:(MPLY:0):潤滑 < PALAMLV:7
	LOCAL:10 += 40
ELSE
	LOCAL:10 += 50
ENDIF
IF PALAM:(MTAR:0):潤滑 < PALAMLV:1
	LOCAL:10 += 10
ELSEIF PALAM:(MTAR:0):潤滑 < PALAMLV:3
	LOCAL:10 += 20
ELSEIF PALAM:(MTAR:0):潤滑 < PALAMLV:5
	LOCAL:10 += 30
ELSEIF PALAM:(MTAR:0):潤滑 < PALAMLV:7
	LOCAL:10 += 40
ELSE
	LOCAL:10 += 50
ENDIF

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

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

SOURCE:(MPLY:0):快Ｃ = SENSE_HOUSHI(MTAR:0, MPLY:0, 1600) * LOCAL:10 / 100
SOURCE:(MPLY:0):奉仕 = SERVE_HOUSHI(MPLY:0, 100)
SOURCE:(MPLY:0):接触 = 120
SOURCE:(MPLY:0):性行動 = 300

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

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

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

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

SOURCE:(MTAR:0):快Ｃ = SENSE_HOUSHI(MPLY:0, MTAR:0, 1600) * LOCAL:10 / 100
SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 100)
SOURCE:(MTAR:0):接触 = 120
SOURCE:(MTAR:0):性行動 = 300

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

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

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

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

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

RETURN 1

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

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

;●潤滑による各種倍率の計算
LOCAL:10 = 0
IF PALAM:(LOCAL:2):潤滑 < PALAMLV:1
	LOCAL:10 += 10
ELSEIF PALAM:(LOCAL:2):潤滑 < PALAMLV:3
	LOCAL:10 += 20
ELSEIF PALAM:(LOCAL:2):潤滑 < PALAMLV:5
	LOCAL:10 += 30
ELSEIF PALAM:(LOCAL:2):潤滑 < PALAMLV:7
	LOCAL:10 += 40
ELSE
	LOCAL:10 += 50
ENDIF
IF PALAM:(LOCAL:3):潤滑 < PALAMLV:1
	LOCAL:10 += 10
ELSEIF PALAM:(LOCAL:3):潤滑 < PALAMLV:3
	LOCAL:10 += 20
ELSEIF PALAM:(LOCAL:3):潤滑 < PALAMLV:5
	LOCAL:10 += 30
ELSEIF PALAM:(LOCAL:3):潤滑 < PALAMLV:7
	LOCAL:10 += 40
ELSE
	LOCAL:10 += 50
ENDIF

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

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

SOURCE:(LOCAL:2):快Ｃ += SENSE_HOUSHI(LOCAL:3, LOCAL:2, 800) * LOCAL:10 / 100
SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 50)
SOURCE:(LOCAL:2):接触 += 60
SOURCE:(LOCAL:2):性行動 += 100

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

;●ターゲットについて処理
DOWNBASE:(LOCAL:3):体力 += 20

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

SOURCE:(LOCAL:3):快Ｃ = SENSE_HOUSHI(LOCAL:2, LOCAL:3, 800) * LOCAL:10 / 100
SOURCE:(LOCAL:3):奉仕 = SERVE_HOUSHI(LOCAL:3, 50)
SOURCE:(LOCAL:3):接触 = 60
SOURCE:(LOCAL:3):性行動 += 100

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

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE21(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%が貝合わせ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP21(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%は秘唇をクチュクチュと擦り合わせている…

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

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER21(ARG:0)
CALL COM_ORDER_COMMON21(ARG:0)
RETURN 1

@COM_ORDER_TARGET21(ARG:0)
CALL COM_ORDER_COMMON21(ARG:0)
RETURN 1

@COM_ORDER_COMMON21(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 90

;共通部分
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):Ｃ感 * 2)
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)

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, "恥じらい", -4)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -3)
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_BEFORE21
IF IS_PIERCED(MPLY:0, ピアス_ラビア) && IS_PIERCED(MTAR:0, ピアス_ラビア)
	LOCALS:0 = ピアスの取り付けられた
ENDIF
IF GET_INMOU_LEVEL(MPLY:0) >= 1 && GET_INMOU_LEVEL(MTAR:0) >= 1
	LOCALS:1 = ふさふさと毛の繁る
ENDIF
;継続中
IF SEARCH_EQUIP_IC(21, MPLY:0, MTAR:0) >= 0
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%に強く腰を押し付けると、さらに腰を揺り動かして%ANAME(MTAR:0)%を責め%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に足を絡めながら、もっと激しく腰を振るよう%ANAME(MPLY:0)%に要求した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%に腰を押し付け直すと、必死に%LOCALS:0%%LOCALS:1%秘唇同士を擦り合わせて%ANAME(MTAR:0)%に奉仕した…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MTAR:0)%に、もっと激しく腰を動かして絡み合うように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MTAR:0)%は言われるままさらに腰を動かし、%LOCALS:0%%LOCALS:1%お互いの秘唇を擦り合わせた…
	ENDSELECT

ELSE
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%秘唇を重ね合わせると、腰を押し付けながら自身の秘部で%ANAME(MTAR:0)%のそれを擦り上げ%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に貝合わせで奉仕するように要求した
			PRINTFORMW %ANAME(MPLY:0)%は促されるままに%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%秘唇を重ね合わせると、腰を揺すって秘部同士を擦り合わせた…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、貝合わせで%ANAME(MTAR:0)%と絡み合うように命令した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%秘唇を重ね合わせると、腰を押し付けながら自身の秘部で%ANAME(MTAR:0)%のそれを擦り上げた…
	ENDSELECT
ENDIF

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

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

@COM_AVAILABLE_WHEN21
RETURN コマンド_ウフフ

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

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

repo_name: pervysquirrelz/erafl

license: unknown


code:
;双頭バイブ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME22
LOCALS:0 = Doubleheaded vibe

RESULTS:0 = Use %LOCALS:0%
RESULTS:1 = Get ordered to use %LOCALS:0%
RESULTS:2 = Command %LOCALS:0%
RESULTS:3 = Get %LOCALS:0% used on
RESULTS:4 = Make use %LOCALS:0%
RESULTS:5 = Show use of %LOCALS:0%

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE22
;共通部分
CALL COM_ABLE_COMMON(22)
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 !ITEM:双頭バイブ && !ITEM:A_双頭バイブ
	RETURN 0
SIF !HAS_VAGINA(MPLY:0, 1) || !HAS_VAGINA(MTAR:0, 1)
	RETURN 0
SIF IS_RIDE(MPLY:0) || IS_RIDE(MTAR:0)
	RETURN 0
;prostrate
SIF IS_EQUIP_PLAYER(MPLY:0, 110) || IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;プレイヤーとターゲットが共に拘束中なら不可
SIF IS_BIND(MPLY:0) && IS_BIND(MTAR:0)
	RETURN 0
SIF IS_V_HOLD(MPLY:0) || IS_V_HOLD(MTAR:0)
	RETURN 0
;either is fucking or fucked by anyone
SIF IS_INSERT_SINGLE(MPLY:0, "全") || IS_INSERT_SINGLE(MTAR:0, "全")
	RETURN 0
SIF REACHING_BODY(MPLY, MTAR) || REACHING_BODY(MTAR, MPLY)
	RETURN 0
SIF LICKING_GROIN(MPLY, MTAR) || LICKING_GROIN(MTAR, MPLY)
	RETURN 0
SIF LICKING_BODY(MPLY, MTAR) || LICKING_BODY(MTAR, MPLY)
	RETURN 0
;giving/receiving assjob, trampling, footjob
SIF SEARCH_EQUIP_IC_M(MPLY:0, MTAR:0, 14, 15, 103) >= 0
	RETURN 0
RETURN 1

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

;●プレイヤーについて処理
DOWNBASE:(MPLY:0):体力 += 140

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

SOURCE:(MPLY:0):快Ｖ = SENSE_SEX_TARGET(MTAR:0, MPLY:0, 1400)
SOURCE:(MPLY:0):接触 = 100
SOURCE:(MPLY:0):性行動 = 360

;性交系の共通処理
CALL COM_COMMON_SEX_V(MPLY:0, MTAR:0)

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

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

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

EXP:(MTAR:0):性技経験値 += 1
EXP:(MTAR:0):性交経験値 += 2

SOURCE:(MTAR:0):快Ｖ = SENSE_SEX_TARGET(MPLY:0, MTAR:0, 1400)
SOURCE:(MTAR:0):接触 = 80
SOURCE:(MTAR:0):性行動 = 360

;性交系の共通処理
CALL COM_COMMON_SEX_V(MTAR:0, MPLY:0)

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

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

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

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

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

RETURN 1

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

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

;ソースを退避
CALL PUTOUT_SOURCE(LOCAL:2)
CALL PUTOUT_SOURCE(LOCAL:3)

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

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

SOURCE:(LOCAL:2):快Ｖ += SENSE_SEX_TARGET(LOCAL:3, LOCAL:2, 700)
SOURCE:(LOCAL:2):露出 += 100
SOURCE:(LOCAL:2):性行動 += 120

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

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

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

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

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

SOURCE:(LOCAL:3):快Ｖ += SENSE_SEX_TARGET(LOCAL:2, LOCAL:3, 700)
SOURCE:(LOCAL:3):露出 += 100
SOURCE:(LOCAL:3):性行動 += 120

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

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

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

;退避したソースを加算
CALL SUM_SOURCE(LOCAL:2)
CALL SUM_SOURCE(LOCAL:3)

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE22(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%が双頭バイブで結合中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP22(ARG:0)
PRINTFORML %EQUIP_TARGET_ANAME(ARG:0)%と%EQUIP_PLAYER_ANAME(ARG:0)%は双頭バイブで繋がったまま腰を動かしている…

;-------------------------------------------------
;継続を解除したときの地の文
;-------------------------------------------------
@COM_TEXT_RELEASE_EQUIP22(ARG:0)
PRINTFORMW %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%は双頭バイブを引き抜いた…

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER22(ARG:0)
CALL COM_ORDER_COMMON21(ARG:0)
RETURN 1

@COM_ORDER_TARGET22(ARG:0)
CALL COM_ORDER_COMMON21(ARG:0)
RETURN 1

@COM_ORDER_COMMON22(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 95

;膣性交共通
CALL COM_ORDER_VSEX_V(ARG:0, 1)
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE22
;継続中
IF SEARCH_EQUIP_IC(22, MPLY:0, MTAR:0) >= 0
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合したまま、さらに腰を揺り動かし%ANAME(MTAR:0)%を責め立て%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に足を絡めながら、さらに激しく腰を振るよう%ANAME(MPLY:0)%に要求した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合したまま、さらに腰を揺り動かし%ANAME(MTAR:0)%に奉仕した…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は、双頭バイブで繋がり合う%ANAME(MPLY:0)%と%ANAME(MTAR:0)%に、もっと激しく腰を動かすように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MTAR:0)%は言われるままさらに腰を揺り動かし、お互いの膣内をバイブで掻き回した…
	ENDSELECT

ELSE
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			IF TALENT:(MPLY:0):処女 == 1
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、破瓜の痛みに耐えながら必死に腰を振って%ANAME(MTAR:0)%を責め立て%TARGET_STR("た", "てきた")%…
			ELSEIF ABL:(MPLY:0):Ｖ感 <= 1 && MPLY:0 == MASTER
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、腰を振って%ANAME(MTAR:0)%を責め立て%TARGET_STR("た", "てきた")%…
			ELSEIF ABL:(MPLY:0):Ｖ感 <= 1
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、苦しそうにしながらも必死に腰を振って%ANAME(MTAR:0)%を責め立て%TARGET_STR("た", "てきた")%…
			ELSE
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合し、激しく腰を振って自らも快楽を貪りながら%ANAME(MTAR:0)%を責め立て%TARGET_STR("た", "てきた")%…
			ENDIF
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に、互いの膣に双頭バイブを挿入して腰を振るように要求した
			IF TALENT:(MPLY:0):処女 == 1
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、破瓜の痛みに耐えながら必死に腰を振って%ANAME(MTAR:0)%に奉仕した…
			ELSEIF ABL:(MPLY:0):Ｖ感 <= 1 && MPLY:0 == MASTER
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、腰を振って%ANAME(MTAR:0)%に奉仕した…
			ELSEIF ABL:(MPLY:0):Ｖ感 <= 1
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、苦しそうにしながらも必死に腰を振って%ANAME(MTAR:0)%に奉仕した…
			ELSE
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、激しく腰を振って自らも快楽を貪りながら%ANAME(MTAR:0)%に奉仕した…
			ENDIF
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MTAR:0)%に双頭バイブで繋がり合うように命令した
			IF TALENT:(MPLY:0):処女 == 1
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合すると、破瓜の痛みに耐えながら必死に腰を振った…
			ELSE
				PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と双頭バイブで結合し、お互いに腰を振って快感を高め合った…
			ENDIF
	ENDSELECT
ENDIF

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

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

@COM_AVAILABLE_WHEN22
RETURN コマンド_ウフフ

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_22()
RETURN POWER(2, 性的嗜好_道具を使いたい)

@COM_PREFERENCE_TARGET_22()
RETURN POWER(2, 性的嗜好_道具を使われたい)


code:
;貝合わせ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME23
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_ABLE23
;共通部分
CALL COM_ABLE_COMMON(23)
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 !HAS_PENIS(MPLY:0) || !HAS_PENIS(MTAR:0)
	RETURN 0
SIF IS_RIDE(MPLY:0) || IS_RIDE(MTAR:0)
	RETURN 0
;grovelling
SIF IS_EQUIP_PLAYER(MPLY:0, 110) || IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;プレイヤーとターゲットが共に拘束中なら不可
SIF IS_BIND(MPLY:0) && IS_BIND(MTAR:0)
	RETURN 0
SIF !P_STACKABLE(MPLY, MTAR, 23) || !P_STACKABLE(MTAR, MPLY, 23)
	RETURN 0
;fucking or being fucked by anyone
SIF IS_INSERT_SINGLE(MPLY:0, "全") || IS_INSERT_SINGLE(MTAR:0, "全")
	RETURN 0
SIF LICKING_GROIN(MPLY, MTAR) || LICKING_GROIN(MTAR, MPLY)
	RETURN 0
;giving or receiving foot licking from target
SIF SEARCH_EQUIP_IC(104, MPLY:0, MTAR:0) >= 0
	RETURN 0

RETURN 1

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

;逆方向からのMEQUIPを解除
;FOR LOCAL:0, 0, MPLY_NUM
;	FOR LOCAL:1, 0, MTAR_NUM
;		CALL RELEASE_EQUIP_EX(23, MTAR:(LOCAL:1), MPLY:(LOCAL:0))
;	NEXT
;NEXT

;●射精による各種倍率の計算

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

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

SOURCE:(MPLY:0):快Ｐ = SENSE_HOUSHI(MTAR:0, MPLY:0, 1600) * 30 / 100
SOURCE:(MPLY:0):奉仕 = SERVE_HOUSHI(MPLY:0, 100)
SOURCE:(MPLY:0):接触 = 120
SOURCE:(MPLY:0):性行動 = 300

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

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

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

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

SOURCE:(MTAR:0):快Ｐ = SENSE_HOUSHI(MPLY:0, MTAR:0, 1600) * 30 / 100
SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 100)
SOURCE:(MTAR:0):接触 = 120
SOURCE:(MTAR:0):性行動 = 300

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

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

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

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

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

RETURN 1

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

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP23(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):快Ｐ += SENSE_HOUSHI(LOCAL:3, LOCAL:2, 800) * 30 / 100
SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 50)
SOURCE:(LOCAL:2):接触 += 60
SOURCE:(LOCAL:2):性行動 += 100

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

;●ターゲットについて処理
DOWNBASE:(LOCAL:3):体力 += 20

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

SOURCE:(LOCAL:3):快Ｐ = SENSE_HOUSHI(LOCAL:2, LOCAL:3, 800) * 30 / 100
SOURCE:(LOCAL:3):奉仕 = SERVE_HOUSHI(LOCAL:3, 50)
SOURCE:(LOCAL:3):接触 = 60
SOURCE:(LOCAL:3):性行動 += 100

;奉仕経験値を得られるコマンドのフラグ
TCVAR:(LOCAL:3):奉仕経験取得可能 = 1
;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE23(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%が兜合わせ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP23(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%と%EQUIP_TARGET_ANAME(ARG:0)%は%BAR_NAME(MEQUIP_PLAYER:(ARG:0):0)%を擦り合わせている…

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

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER23(ARG:0)
CALL COM_ORDER_COMMON23(ARG:0)
RETURN 1

@COM_ORDER_TARGET23(ARG:0)
CALL COM_ORDER_COMMON23(ARG:0)
RETURN 1

@COM_ORDER_COMMON23(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 90

;共通部分
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):Ｃ感 * 2)
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):射精 * 3)

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, "恥じらい", -4)
ENDIF
IF TALENT:(ARG:0):献身的
	CALL COM_ORDER_ELEMENT(ARG:0, "献身的", 6)
ENDIF
IF TALENT:(ARG:0):快感の否定
	CALL COM_ORDER_ELEMENT(ARG:0, "快感の否定", -3)
ENDIF

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

RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE23
IF IS_PIERCED(MPLY:0, ピアス_ペニス) && IS_PIERCED(MTAR:0, ピアス_ペニス)
	LOCALS:0 = ピアスの取り付けられた
ENDIF
IF GET_INMOU_LEVEL(MPLY:0) >= 1 && GET_INMOU_LEVEL(MTAR:0) >= 1
	LOCALS:1 = 根元にふさふさと毛の繁る
ENDIF
;継続中
IF SEARCH_EQUIP_IC(23, MPLY:0, MTAR:0) >= 0
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%に強く%BAR_NAME(MPLY:0)%を押し付けると、さらに腰を揺り動かして%ANAME(MTAR:0)%を責め%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に足を絡めながら、もっと激しく腰を振るよう%ANAME(MPLY:0)%に要求した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%に腰を押し付け直すと、必死に%LOCALS:0%%LOCALS:1%%BAR_NAME(MPLY:0)%同士を擦り合わせて%ANAME(MTAR:0)%に奉仕した…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MTAR:0)%に、もっと激しく腰を動かして絡み合うように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MTAR:0)%は言われるままさらに腰を動かし、%LOCALS:0%%LOCALS:1%お互いの%BAR_NAME(MPLY:0)%を擦り合わせた…
	ENDSELECT

ELSE
	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%%BAR_NAME(MPLY:0)%を重ね合わせると、腰を押し付けながら自身の%BAR_NAME(MPLY:0)%で%ANAME(MTAR:0)%のそれを擦り上げ%TARGET_STR("た", "てきた")%…
		;ターゲットに主導権
		CASE 1
			PRINTFORML %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に兜合わせで奉仕するように要求した
			PRINTFORMW %ANAME(MPLY:0)%は促されるままに%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%%BAR_NAME(MPLY:0)%を重ね合わせると、腰を揺すって%BAR_NAME(MPLY:0)%同士を擦り合わせた…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、兜合わせで%ANAME(MTAR:0)%と絡み合うように命令した
			PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%と%LOCALS:0%%LOCALS:1%%BAR_NAME(MPLY:0)%を重ね合わせると、腰を押し付けながら自身の%BAR_NAME(MPLY:0)%で%ANAME(MTAR:0)%のそれを擦り上げた…
	ENDSELECT
ENDIF

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

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

@COM_AVAILABLE_WHEN23
RETURN コマンド_ウフフ

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

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

@COM_STACK_SPERM_MPLY_TO_MTAR_23()
RETURN IFRAND(@"{射精部位_胸}, {射精部位_顔}, {射精部位_手}", 1)

@COM_STACK_SPERM_MTAR_TO_MPLY_23()
RETURN IFRAND(@"{射精部位_胸}, {射精部位_顔}, {射精部位_手}", 1)


code:
;フェラチオ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME24
;挿入中

IF FLAG:調教モード != 調教_居住区
	LOCALS:0 = Fingering BJ
ELSE
	LOCALS:0 = Finger licking
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_ABLE24
;共通部分
CALL COM_ABLE_COMMON(24)
SIF RESULT == 0
	RETURN 0
;1-1限定
SIF MPLY_NUM <= 0 || MPLY_NUM > 1
	RETURN 0
SIF MTAR_NUM <= 0 || MTAR_NUM > 1
	RETURN 0

FOR LOCAL:0, 0, MPLY_NUM
	;気絶してたらダメ
	SIF !IS_PLAYABLE(MPLY:(LOCAL:0))
		RETURN 0
	;ターゲットの口が塞がっているなら不可
	SIF IS_M_HOLD(MPLY:(LOCAL:0))
		RETURN 0
NEXT

;both bound
SIF IS_BIND(MPLY:0) && IS_BIND(MTAR:0)
	RETURN 0

RETURN 1

;-------------------------------------------------
;快Ｍソースの倍率を取得する関数 ARG:0=PLAYERのキャラ番号
;-------------------------------------------------
@COM24_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

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

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

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

SOURCE:(MPLY:0):奉仕 = SERVE_HOUSHI(MPLY:0, 300)
SOURCE:(MPLY:0):接触 = 50
SOURCE:(MPLY:0):快Ｍ = 400 * COM24_RATE_M(MPLY:0) / 1000
SOURCE:(MPLY:0):性行動 = 200

;主導権に応じた優越・受動のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MPLY:0, 100, 100)

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

;●全ターゲットについて判定

;●ソースの計算
DOWNBASE:(MTAR:0):体力 += 20

SOURCE:(MTAR:0):接触 = 30
SOURCE:(MTAR:0):性行動 = 120

;主導権に応じた優越・受動のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 150, 70)

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

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

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

RETURN 1

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

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP24(ARG:0)

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

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

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

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 150)
SOURCE:(LOCAL:2):接触 += 15
SOURCE:(LOCAL:2):快Ｍ += 200 * COM24_RATE_M(LOCAL:2) / 1000
SOURCE:(LOCAL:2):性行動 += 70

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

LOCAL:1 = MEQUIP_TARGET:(ARG:0):(LOCAL:0)

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

SOURCE:(LOCAL:1):接触 += 15
SOURCE:(LOCAL:1):性行動 += 30

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE24(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に指フェラ中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP24(ARG:0)

PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の指を口で咥え込んで舐め回している…

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

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER24(ARG:0)
;実行値の設定
TCVAR:(ARG:0):実行値 = 85
CALL COM_ORDER_COMMON24(ARG:0)
RETURN 1

@COM_ORDER_TARGET24(ARG:0)
IF FLAG:調教モード == 調教_居住区
	TCVAR:(ARG:0):実行値 = 65
	CALL COM_ORDER_COMMON24(ARG:0)
	RETURN 1
ENDIF

@COM_ORDER_COMMON24(ARG:0)
;共通部分
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 * 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, "献身的", 6)
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_BEFORE24

;プレイヤーが１人＆拘束中
IF IS_BIND(MPLY:0)
	IF TALENT:(MPLY:0):体格 == 体格_子供 || TALENT:(MPLY:0):体格 == 体格_小柄
		LOCALS:0 = 小さな口
	ELSE
		LOCALS:0 = 口
	ENDIF

	SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は自身の%LOCALS:0%に%ANAME(MTAR:0)%の指を挿れさせ、じゅるじゅると音を立ててしゃぶった…
		;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MTAR:0)%は身動きの取れない%ANAME(MPLY:0)%の%LOCALS:0%に無理やり指を押し込み舐めさせた…
		;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%ANAME(MTAR:0)%の指を口で気持ち良くするように命令した
			PRINTFORMW %ANAME(MPLY:0)%は差し出された%ANAME(MTAR:0)%の指を%LOCALS:0%で咥え込み、じゅるじゅると音を立ててしゃぶった…
	ENDSELECT

	;縄で縛るの地の文をカットする
	LOCAL:0 = SEARCH_EQUIP(85, -1, MPLY:0)
	IF LOCAL:0 >= 0
		MEQUIP_CUT:(LOCAL:0) = 1
	ENDIF
	LOCAL:0 = SEARCH_EQUIP(208, -1, MPLY:0)
	IF LOCAL:0 >= 0
		MEQUIP_CUT:(LOCAL:0) = 1
	ENDIF

;１人
ELSE
	IF TALENT:(MPLY:0):体格 == 体格_子供 || TALENT:(MPLY:0):体格 == 体格_小柄
		LOCALS:0 = 小さな口で必死に
	ELSE
		LOCALS:0 = 口で
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
				;プレイヤーに主導権
		CASE 0
			PRINTFORM %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の指を%LOCALS:0%咥え込み、
			IF ABL:(MPLY:0):性技 >= 3
				PRINTFORMW 巧みな舌使いで舐めしゃぶっ%TARGET_STR("た", "てきた")%…
			ELSE
				PRINTFORMW 不慣れな舌使いで責めたて%TARGET_STR("た", "てきた")%…
			ENDIF
				;ターゲットに主導権
		CASE 1
			PRINTFORM %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の指を%LOCALS:0%咥え込み、
			IF ABL:(MPLY:0):性技 >= 3
				PRINTFORMW 巧みな舌使いで奉仕している…
			ELSE
				PRINTFORMW 不慣れな舌使いで奉仕している…
			ENDIF
				;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%ANAME(MTAR:0)%の指を口で気持ち良くするように命令した
			PRINTFORM %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の指を%LOCALS:0%咥え込み、
			IF ABL:(MPLY:0):性技 >= 3
				PRINTFORMW 巧みな舌使いで舐めしゃぶった…
			ELSE
				PRINTFORMW 不慣れな舌使いで舐め回した…
			ENDIF
	ENDSELECT

ENDIF

;--------------------------------------------------------
;地の文(パラメータ・刻印変動後)
;--------------------------------------------------------
@COM_TEXT_LAST24
FOR LOCAL:0, 0, MPLY_NUM
	IF (MPLY:LOCAL != MASTER || CONFIG:441) && !IS_ANIMAL(MPLY:LOCAL)
		IF (PALAM:(MPLY:LOCAL):欲情 >= PALAMLV:7 || (PALAM:(MPLY:LOCAL):欲情 >= PALAMLV:5 && TCVAR:(MPLY:LOCAL):60)) && ((ABL:(MPLY:LOCAL):欲望 >= ランク閾値:ランク_その他:ランク_D) || ABL:(MPLY:LOCAL):精愛 >= ランク閾値:ランク_その他:ランク_C)
			SELECTCASE RAND:2
				CASE 0
					SELECTCASE RAND:2
						CASE 0
							PRINTFORM %ANAME(MPLY:LOCAL)%は%SPLIT_RAND("興奮で鼻息を荒くしながら/情欲に突き動かされるまま", 1)%、
						CASE 1
							PRINTFORM %SPLIT_RAND("興奮しきった様子の/発情しきった様子の", 1)%%ANAME(MPLY:LOCAL)%は、
					ENDSELECT
					PRINTFORML %SPLIT_RAND("じゅぼじゅぼと音を立てて/下品な音を立てて/涎を垂らして/激しく頭を前後させながら/夢中で/必死に", 1)%%ANAME(MTAR:0)%の指%SPLIT_RAND("にしゃぶり付いている/に吸い付いている", 1)%…
				CASE 1
					PRINTFORM %ANAME(MPLY:LOCAL)%は%SPLIT_RAND("興奮で息を荒げながら/蕩けたような顔をしながら/熱に浮かされたような顔をしながら", 1)%、
					PRINTFORML %SPLIT_RAND("味わうように/形を確かめるように", 1)%%ANAME(MTAR:0)%の指%SPLIT_RAND("をしゃぶっている/を頬張っている/へ舌を這わせている/を舐めまわしている", 1)%…
			ENDSELECT
		ENDIF
	ENDIF
NEXT
;-------------------------------------------------

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

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

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

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


code:
;パイズリ

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME25

LOCALS:0 = Nipple Fuck

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_ABLE25
;共通部分
CALL COM_ABLE_COMMON(25)
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 !HAS_PENIS(MPLY:0, 1)
	RETURN 0
SIF !P_STACKABLE(MPLY:0, MTAR:0, 25)
	RETURN 0
;grovelling
SIF IS_EQUIP_PLAYER(MTAR:0, 110)
	RETURN 0
;this covers most common problems
SIF !CAN_REACH_BODY(MPLY:0, MTAR:0)
	RETURN 0
SIF IS_P_HOLD(MPLY:0)
	RETURN 0
SIF IS_N_HOLD(MTAR:0)
	RETURN 0
SIF IS_RIDDEN(MPLY:0, MTAR:0)
	RETURN 0
SIF IS_INSERT_MUTUAL(MPLY:0, MTAR:0) > 0
	RETURN 0
;getting assjob
SIF SEARCH_EQUIP(15, MPLY:0, MTAR:0) >= 0
	RETURN 0
;巨乳以上
SIF GET_BUSTSIZE(MTAR:0) < 1
	RETURN 0
SIF ABL:(MTAR:0):噴乳 < ランク閾値:ランク_その他:ランク_D
	RETURN 0

RETURN 1

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

;●ソースの計算
DOWNBASE:(MPLY:0):体力 += 60
SOURCE:(MPLY:0):接触 = 50
SOURCE:(MPLY:0):性行動 = 180
;主導権に応じた優越・受動のソース追加
CALL ADD_SOURCE_INITIATIVE_U(MTAR:0, 150, 80)
SOURCE:(MPLY:0):快Ｐ += SENSE_SEX_PLAYER_P(MTAR:0, MPLY:0, 1500)

;●全プレイヤーについて判定
DOWNBASE:(MTAR:0):体力 += 120
EXP:(MTAR:0):性技経験値 += 1
SOURCE:(MTAR:0):奉仕 = SERVE_HOUSHI(MTAR:0, 300)
SOURCE:(MTAR:0):接触 = 50
SOURCE:(MTAR:0):快Ｂ = SENSE_SEX_TARGET(MPLY:0, MTAR:0, 1200)
SOURCE:(MTAR:0):性行動 = 300

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

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

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

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

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

RETURN 1

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

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP25(ARG:0)

;●全プレイヤーについて判定

LOCAL:1 = MEQUIP_PLAYER:(ARG:0):0

DOWNBASE:(LOCAL:1):体力 += 10
SOURCE:(LOCAL:1):接触 += 25
SOURCE:(LOCAL:1):性行動 += 60
SOURCE:(LOCAL:1):快Ｐ += SENSE_SEX_PLAYER_P(LOCAL:2, LOCAL:1, 750)

LOCAL:2 = MEQUIP_TARGET:(ARG:0):0

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

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

SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 170)
SOURCE:(LOCAL:2):接触 += 25
SOURCE:(LOCAL:2):快Ｂ += SENSE_SEX_TARGET(LOCAL:1, LOCAL:2, 750)
SOURCE:(LOCAL:2):性行動 += 100

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

;●全ターゲットについて判定

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE25(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%にニプルファック中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP25(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の乳首にペニスを挿入している…

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

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

;共通部分
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 * 2, 20))

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

IF TALENT:(ARG:0):恥じらい
	CALL COM_ORDER_ELEMENT(ARG:0, "恥じらい", -3)
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, "快感の否定", -3)
ENDIF
IF TALENT:(ARG:0):男嫌い
	CALL COM_ORDER_ELEMENT(ARG:0, "男嫌い", -25)
ENDIF

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

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

IF IS_PIERCED(MTAR:0, ピアス_ペニス)
	LOCALS:3 = ピアスの取り付けられた
ELSE
	LOCALS:3 =
ENDIF

LOCALS:0 = %STR_BODY("乳首：感度", MPLY:0)%に%LOCALS:3%ペニスを挿入

SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
	CASE 0
		PRINTFORMW %ANAME(MPLY:0)%は%ANAME(MTAR:0)%の胸を鷲づかみにし、%LOCALS:0%%TARGET_STR("した", "してきた")%…
		;ターゲットに主導権
	CASE 1
		PRINTFORMW %ANAME(MTAR:0)%は%ANAME(MPLY:0)%に命じ、自らの%LOCALS:0%させた…
		;第三者に主導権
	CASEELSE
		PRINTFORMW %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に対し、%ANAME(MTAR:0)%の乳首を犯すように命令した…
		PRINTFORMW %ANAME(MPLY:0)%は身動きの取れない%ANAME(MTAR:0)%の%LOCALS:0%した…
ENDSELECT

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

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

@COM_AVAILABLE_WHEN25
RETURN コマンド_ウフフ

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

@COM_PREFERENCE_TARGET_25()
RETURN POWER(2, 性的嗜好_性交されたい)

@COM_STACK_SPERM_MPLY_TO_MTAR_25()
RETURN 射精部位_胸


code:
;手淫

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME26

IF MTAR_NUM > 1
	LOCALS:0 = 同時玉揉み
ELSEIF MPLY_NUM == 3
	LOCALS:0 = Ｔ玉揉み
ELSEIF MPLY_NUM == 2
	LOCALS:0 = Ｗ玉揉み
ELSE
	LOCALS:0 = 玉揉み
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_ABLE26
;共通部分
CALL COM_ABLE_COMMON(26)
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
		SIF !P_STACKABLE(MPLY:LOCAL, MTAR:(LOCAL:1), 26)
			RETURN 0
	NEXT
NEXT
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM26
;実行判定
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, 2200)
	SOURCE:(LOCAL:2):接触 = 50
	SOURCE:(LOCAL:2):性行動 = 100

	SELECTCASE ABL:(LOCAL:2):奉仕
		CASE 0
			TIMES SOURCE:(LOCAL:2):不潔, 4.50
		CASE 1
			TIMES SOURCE:(LOCAL:2):不潔, 3.00
		CASE 2
			TIMES SOURCE:(LOCAL:2):不潔, 2.00
		CASE 3
			TIMES SOURCE:(LOCAL:2):不潔, 1.00
		CASE 4
			TIMES SOURCE:(LOCAL:2):不潔, 0.75
		CASEELSE
			TIMES SOURCE:(LOCAL:2):不潔, 0.30
	ENDSELECT

	;主導権に応じた優越・屈従のソース追加
	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, 800) * 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_EQUIP26
RETURN 1

;-------------------------------------------------
;継続状態の処理
;-------------------------------------------------
@COM_EQUIP26(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, 80)
	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, 300) * 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_MESSAGE26(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に玉揉み中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP26(ARG:0)

PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の睾丸を優しく揉みしだいている……

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

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER26(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 !TALENT:(ARG:0):合意 && !TALENT:(ARG:0):親友
	CALL COM_ORDER_ELEMENT(ARG:0, "合意なし", -10)
ENDIF
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE26
;ターゲットが複数
IF MTAR_NUM > 1
	LOCALS:0 =
	IF GETBIT(TALENT:(MPLY:0):淫乱系, 素質_淫乱_淫乱) && (MPLY:0 != MASTER || CONFIG:441)
		LOCALS:0 = うっとりとした表情を浮かべながら、
	ENDIF
	IF MPLY_NUM > 1
		LOCALS:2 = たち
	ELSE
		LOCALS:2 =
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%LOCALS:0%左右の手で%ANAME(MTAR:0)%たちの睾丸を優しく揉み%TARGET_STR("しだいた", "しだいてきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%LOCALS:0%左右の手で%ANAME(MTAR:0)%たちの睾丸を優しく揉みしだいて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%ANAME(MTAR:0)%たちの睾丸に手で奉仕するように命令した
			PRINTFORMW %ANAME(MPLY:0)%%LOCALS:2%は%LOCALS:0%左右の手で%ANAME(MTAR:0)%たちの睾丸を優しく揉みしだいた…
	ENDSELECT

	;プレイヤーが３人
ELSEIF MPLY_NUM == 3

	IF MTAR_NUM > 1
		LOCALS:2 = たち
	ELSE
		LOCALS:2 =
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人は、一斉に%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいて責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人は、協力しながら%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%、%ANAME(MPLY:1)%、%ANAME(MPLY:2)%の三人に、%ANAME(MTAR:0)%%LOCALS:2%の睾丸に手で奉仕するように命令した
			PRINTFORMW %ANAME(MPLY:0)%たちは、全員で%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいた…
	ENDSELECT

	;プレイヤーが２人
ELSEIF MPLY_NUM == 2
	IF MTAR_NUM > 1
		LOCALS:2 = たち
	ELSE
		LOCALS:2 =
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいて責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%と%ANAME(MPLY:1)%に、%ANAME(MTAR:0)%%LOCALS:2%の睾丸に手で奉仕するように命令した
			PRINTFORMW %ANAME(MPLY:0)%と%ANAME(MPLY:1)%は二人で分担しながら、それぞれの指で%ANAME(MTAR:0)%%LOCALS:2%の睾丸を優しく揉みしだいた…
	ENDSELECT
	;プレイヤーが１人
ELSE
	LOCALS:0 =
	IF GETBIT(TALENT:(MPLY:0):淫乱系, 素質_淫乱_淫乱) && MPLY:0 != MASTER
		LOCALS:0 = うっとりとした表情を浮かべながら、
	ENDIF
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORMW %ANAME(MPLY:0)%は%LOCALS:0%%ANAME(MTAR:0)%%LOCALS:1%の睾丸を優しく揉みしだいて責め立て%TARGET_STR("た", "てきた")%…
			;ターゲットに主導権
		CASE 1
			PRINTFORMW %ANAME(MPLY:0)%は%LOCALS:0%%ANAME(MTAR:0)%%LOCALS:1%の睾丸を優しく揉みしだいて奉仕している…
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%ANAME(MPLY:0)%に、%ANAME(MTAR:0)%の睾丸に手で奉仕するように命令した
			PRINTFORMW %ANAME(MPLY:0)%は%LOCALS:0%%ANAME(MTAR:0)%の睾丸を優しく揉みしだいた…
	ENDSELECT
ENDIF

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

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

@COM_AVAILABLE_WHEN26
RETURN コマンド_ウフフ

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

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

@COM_STACK_SPERM_MTAR_TO_MPLY_26()
RETURN 射精部位_手


code:
;胸愛撫

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME27
LOCALS:1 = 乳首責め

IF MTAR_NUM >= 2
	LOCALS:0 = 同時%LOCALS:1%
ELSE
	LOCALS:0 = %LOCALS:1%
ENDIF

RESULTS:0 '= TR(LOCALS:0,"する")
RESULTS:1 '= TR(LOCALS:0,"させられる")
RESULTS:2 '= TR(LOCALS:0,"させる")
RESULTS:3 '= TR(LOCALS:0,"される")
RESULTS:4 '= TR(LOCALS:0,"させる")
RESULTS:5 '= TR(LOCALS:0,"見せつけ")

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE27
;共通部分
CALL COM_ABLE_COMMON(1)
SIF RESULT == 0
	RETURN 0
;1+ players
SIF MPLY_NUM <= 0
	RETURN 0
;ターゲットはプレイヤーの倍まで
SIF MTAR_NUM <= 0 || MTAR_NUM > MPLY_NUM * 2
	RETURN 0

FOR LOCAL:0, 0, MPLY_NUM
	FOR LOCAL:1, 0, MTAR_NUM
		SIF !CAN_REACH_BODY(MPLY:(LOCAL:0),MTAR:(LOCAL:1))
			RETURN 0
	NEXT
NEXT

FOR LOCAL:0, 0, MTAR_NUM
	;breasts occupied - tentacle B caress
	SIF IS_EQUIP_TARGET(MTAR:(LOCAL:0), 204)
		RETURN 0
NEXT
RETURN 1

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

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

SELECTCASE MPLY_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
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, 200)
	SOURCE:(LOCAL:2):接触 = 80
	SOURCE:(LOCAL:2):性行動 = 120

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

	;奉仕経験値を得られるコマンドのフラグ
	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

	NEXT
NEXT

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

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

	SOURCE:(LOCAL:1):露出 = 110
	SOURCE:(LOCAL:1):接触 = 80
	SOURCE:(LOCAL:1):性行動 = 200

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

NEXT

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

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

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

RETURN 1

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

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

SELECTCASE MEQUIP_PLAYER_NUM:(ARG:0)
	CASE 2
		TIMES LOCAL:10, 0.75
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):体力 += 40

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

	SOURCE:(LOCAL:2):奉仕 += SERVE_HOUSHI(LOCAL:2, 60)
	SOURCE:(LOCAL:2):接触 += 40
	SOURCE:(LOCAL:2):性行動 += 45

	;奉仕経験値を得られるコマンドのフラグ
	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, 400) * LOCAL:10 / 100

	NEXT

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

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

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

	SOURCE:(LOCAL:2):露出 += 70
	SOURCE:(LOCAL:2):接触 += 40
	SOURCE:(LOCAL:2):性行動 += 80

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

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE27(ARG:0)
RESULTS = %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%に乳首責め中

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP27(ARG:0)
PRINTFORML %EQUIP_PLAYER_ANAME(ARG:0)%が%EQUIP_TARGET_ANAME(ARG:0)%の乳首を弄り回している…

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

;-------------------------------------------------
;固有の実行判定
;-------------------------------------------------
@COM_ORDER_PLAYER27(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, "献身的", 6)
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_BEFORE27
;プレイヤーが２人
IF MPLY_NUM == 2
	LOCALS:0 = %ANAME(MPLY:0)%と%ANAME(MPLY:1)%
	;プレイヤーが１人
ELSE
	LOCALS:0 = %ANAME(MPLY:0)%
ENDIF

;ターゲットが２人
IF MTAR_NUM == 2
	LOCALS:1 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
	;ターゲットが１人
ELSE
	LOCALS:1 = %ANAME(MTAR:0)%
ENDIF

IF MTAR_NUM == 2 && IS_PIERCED(MTAR:0, ピアス_乳首) && IS_PIERCED(MTAR:0, ピアス_乳首)
	LOCALS:2 = ピアスの取り付けられた
ELSEIF MTAR_NUM == 1 && IS_PIERCED(MTAR:0, ピアス_乳首)
	LOCALS:2 = ピアスの取り付けられた
ELSE
	LOCALS:2 =
ENDIF

;ターゲットが２人
IF MTAR_NUM == 2
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			;片方が男性
			IF IS_MALE(MTAR:0) || IS_MALE(MTAR:1)
				PRINTFORMW %LOCALS:0%は%LOCALS:2%%LOCALS:1%の乳首を摘み上げ、二人同時に弄り回し%TARGET_STR("た", "てきた")%…
			ELSE
				PRINTFORMW %LOCALS:0%は%LOCALS:1%の乳首を摘み上げ、同時に弄り回し%TARGET_STR("た", "てきた")%…
			ENDIF
			;ターゲットに主導権
		CASE 1
			;片方が男性
			IF IS_MALE(MTAR:0) || IS_MALE(MTAR:1)
				PRINTFORMW %LOCALS:1%は%LOCALS:2%それぞれの乳首を%LOCALS:0%に弄らせて、気持ち良くするように命令した…
				;二人とも貧乳以下
			ELSE
				PRINTFORMW %LOCALS:1%は%LOCALS:2%それぞれの乳房の先端を%LOCALS:0%の手のひらにに押し当て、触って気持ち良くするように命令した…
			ENDIF
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:0%に%LOCALS:2%%LOCALS:1%の乳首を責め立てるように命令した
			;片方が男性
			IF IS_MALE(MTAR:0) || IS_MALE(MTAR:1)
				PRINTFORMW %LOCALS:0%は%LOCALS:2%%LOCALS:1%の乳首を摘み上げ、二人同時に弄り回した…
			ELSE
				PRINTFORMW %LOCALS:0%は%LOCALS:1%の乳首を摘み上げ、%LOCALS:2%先端を摘んで弄り回した…
			ENDIF
	ENDSELECT

	;ターゲットが１人
ELSE
	SELECTCASE GET_COM_INITIATIVE()
			;プレイヤーに主導権
		CASE 0
			PRINTFORM %LOCALS:0%は%LOCALS:1%の
			IF IS_MALE(MTAR:0)
				PRINTFORMW %LOCALS:2%ぷっくりと膨らんだ乳首を指先で弄り回し%TARGET_STR("た", "てきた")%…
			ELSE
				IF GET_BUSTSIZE(MTAR:0) == -2
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%をゆっくりと撫で回し%TARGET_STR("た", "てきた")%…
				ELSE
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%をじっくりと指で弄ん%TARGET_STR("だ", "できた")%…
				ENDIF
			ENDIF
			;ターゲットに主導権
		CASE 1
			IF IS_MALE(MTAR:0)
				PRINTFORMW %LOCALS:1%は%LOCALS:2%乳首を%LOCALS:0%に弄らせて、気持ち良くするように命令した…
			ELSE
				PRINTFORM %LOCALS:1%は%LOCALS:0%の手のひらに自身の
				IF GET_BUSTSIZE(MTAR:0) == -2
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%を押し付けると、触って気持ち良くするように命令した…
				ELSE
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%を押し付けると、触って気持ち良くするように命令した…
				ENDIF
			ENDIF
			;第三者に主導権
		CASEELSE
			PRINTFORML %ANAME(TFLAG:主導権所有者)%は%LOCALS:0%に%LOCALS:1%の乳首を責め立てるように命令した
			PRINTFORM %LOCALS:0%は%LOCALS:1%の
			IF IS_MALE(MTAR:0)
				PRINTFORMW %LOCALS:2%ぷっくりと膨らんだ乳首を指先で弄り回した…
			ELSE
				IF GET_BUSTSIZE(MTAR:0) == -2
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%をゆっくりと撫で回した…
				ELSE
					PRINTFORMW %STR_BODY("乳首：欲情：感度", MTAR:0)%をじっくりと弄んだ…
				ENDIF
			ENDIF
	ENDSELECT
ENDIF

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

	IF (LOCAL:1 != MASTER || CONFIG:441) && !IS_ANIMAL(LOCAL:1)
		LOCAL:2 = CUP:(LOCAL:1):快Ｂ

		IF IS_MALE(LOCAL:1)
			IF TCVAR:(LOCAL:1):失神フラグ
				;気絶中
				PRINTFORML 意識を失った%ANAME(LOCAL:1)%は乳首への刺激にビクリと小さく体を震わせた
			ELSEIF LOCAL:2 < 300
				PRINTFORML %ANAME(LOCAL:1)%はまだ乳首で快楽を感じれるまでには至っていないようだ
			ELSEIF LOCAL:2 < 1000
				PRINTFORML %ANAME(LOCAL:1)%は少しずつ快感を感じ始めているらしく、むず痒そうに体をよじった
			ELSEIF LOCAL:2 < 3000
				PRINTFORML %ANAME(LOCAL:1)%は乳首への刺激に感じているのか、熱い吐息を漏らし始めている
			ELSEIF LOCAL:2 < 6000
				PRINTFORML %ANAME(LOCAL:1)%は乳首への快感に表情を緩ませ、されるがままになっている
			ELSEIF LOCAL:2 < 10000
				PRINTFORML %ANAME(LOCAL:1)%は感じまくっており、乳首を弾かれるたびに激しく悶えている
			ELSE
				PRINTFORML %ANAME(LOCAL:1)%はすっかり乳首の快感の虜になり、乳首をこね回されると女のように身体を跳ねさせて悶えた
			ENDIF
		ELSE
			IF TCVAR:(LOCAL:1):失神フラグ
				;気絶中
				PRINTFORML 意識を失った%ANAME(LOCAL:1)%は乳首への刺激にビクリと小さく体を震わせた
			ELSEIF LOCAL:2 < 300
				PRINTFORML %ANAME(LOCAL:1)%はまだ乳首で快楽を感じれるまでには至っていないようだ
			ELSEIF LOCAL:2 < 1000
				PRINTFORML %ANAME(LOCAL:1)%は少しずつ快感を感じ始めているらしく、むず痒そうに体をよじった
			ELSEIF LOCAL:2 < 3000
				PRINTFORML %ANAME(LOCAL:1)%の乳首を嬲り続けてやると乳首は固くしこっていき、熱い吐息を漏らし始めている
			ELSEIF LOCAL:2 < 6000
				PRINTFORML %ANAME(LOCAL:1)%は乳首への刺激にトロンとした表情になってされるがままになっている
			ELSEIF LOCAL:2 < 10000
				PRINTFORML %ANAME(LOCAL:1)%は感じまくっており、乳首への刺激だけで法悦を極めようとしている
			ELSE
				PRINTFORM %ANAME(LOCAL:1)%の乳首を弄り続けてやるとそれだけで感じまくって身体を跳ねさせ、
				IF GET_BUSTSIZE(LOCAL:1) == 1
					PRINTL 目の前でその巨乳を弾ませてこちらの目を楽しませてくれた
				ELSEIF GET_BUSTSIZE(LOCAL:1) >= 2
					PRINTFORML 目の前でその%TOSTR_BUSTSIZE(GET_BUSTSIZE(LOCAL:1))%を大きく弾ませてこちらの目を楽しませてくれた
				ELSE
					PRINTL 緩んだ表情で快楽に身を任せた
				ENDIF
			ENDIF
		ENDIF
	ENDIF
NEXT

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

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

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

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_27()
RETURN POWER(2, 性的嗜好_愛撫したい)

@COM_PREFERENCE_TARGET_27()
RETURN POWER(2, 性的嗜好_愛撫されたい)


code:
;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME28()
VARS COM_NAME
COM_NAME '= TR("舌を這わす")
SELECTCASE COM_OPTION:28
	CASE 0
		COM_NAME '= TR("舌を這わす(首)")
	CASE 1
		COM_NAME '= TR("舌を這わす(頬)")
	CASE 2
		COM_NAME '= TR("舌を這わす(腹)")
	CASE 3
		COM_NAME '= TR("舌を這わす(脇)")
	CASE 4
		COM_NAME '= TR("舌を這わす(腿)")
	CASE 5
		COM_NAME '= TR("舌を這わす(耳)")
ENDSELECT

RESULTS:0 = %COM_NAME%
RESULTS:1 = %COM_NAME%
RESULTS:2 = %COM_NAME%
RESULTS:3 = %COM_NAME%
RESULTS:4 = %COM_NAME%
RESULTS:5 = %COM_NAME%

;-------------------------------------------------
;オプションを持つコマンドの場合オプション数を指定
;-------------------------------------------------
@COM_HAS_OPTION28
RETURN 5

;-------------------------------------------------
; このコマンドがどのタブに入るか
;-------------------------------------------------
@COM_CATEGORY28
IF FLAG:調教モード != 調教_居住区 && FLAG:調教モード != 調教_クエスト
	RETURN 0
ELSE
	RETURN 10
ENDIF

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE28
CALL COM_ABLE_COMMON(28)
SIF RESULT == 0
	RETURN 0
;1+
SIF MPLY_NUM <= 0
	RETURN 0
;ターゲットは１人まで
SIF MTAR_NUM > 1
	RETURN 0

FOR LOCAL:0, 0, MPLY_NUM
	;口が塞がっているならだめ
	SIF IS_M_HOLD(MPLY:(LOCAL:0))
		RETURN 0
	FOR LOCAL:1, 0, MTAR_NUM
		SIF !CAN_REACH_BODY(MPLY:(LOCAL:0),MTAR:(LOCAL:1))
			RETURN 0
	NEXT
NEXT
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM28
;実行判定
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
	CASE 4
		TIMES LOCAL:10, 0.50
	CASE 5
		TIMES LOCAL:10, 0.45
ENDSELECT

SELECTCASE MTAR_NUM
	CASE 2
		TIMES LOCAL:10, 0.75
ENDSELECT

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

	DOWNBASE:CHARA_ID:体力 += 120

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

	SOURCE:CHARA_ID:奉仕 = SERVE_HOUSHI(CHARA_ID, 100)
	SOURCE:CHARA_ID:接触 = 160
	SOURCE:CHARA_ID:性行動 = 120

	;主人公がターゲットなら愛情のソース追加
	IF IS_MTAR(MASTER)
		CALL ADD_SOURCE_AIZYOU(CHARA_ID, 50)
	ENDIF

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

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

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

	DOWNBASE:CHARA_ID:体力 += 80

	SOURCE:CHARA_ID:感応 = 50
	SOURCE:CHARA_ID:性行動 = 220
	;主人公がプレイヤーなら愛情のソース追加
	IF IS_MPLY(MASTER)
		CALL ADD_SOURCE_AIZYOU(CHARA_ID, 120)
	ENDIF

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

	;未陥落なら反感リソース追加
	IF !IS_FALLEN(CHARA_ID)
		SOURCE:CHARA_ID:反感 = 100
	ENDIF
NEXT

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

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

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

RETURN 1

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

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

;共通部分
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, "媚薬", 4)
ENDIF

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

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

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

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

IF HAS_PENIS(MTAR:0)
	性器描写 = %BAR_NAME(MTAR:0)%
ELSE
	性器描写 = %S_R(@"%STR_BODY("クリ：感度：装飾", MTAR:0)%/%STR_BODY("陰唇：感度：装飾", MTAR:0)%")%
ENDIF
;ターゲットが2人
IF MTAR_NUM == 2
	対象名 = %ANAME(MTAR:0)%と%ANAME(MTAR:1)%
	;ターゲットが1人
ELSE
	対象名 = %ANAME(MTAR:0)%
ENDIF

;プレイヤーが複数
IF MPLY_NUM >= 3
	実行名 = %ANAME(MPLY:0)%達
	;プレイヤーが2人
ELSEIF MPLY_NUM == 2
	実行名 = %ANAME(MPLY:0)%と%ANAME(MPLY:1)%
	;プレイヤーが1人
ELSE
	実行名 = %ANAME(MPLY:0)%
ENDIF

VARS 汗描写
IF IS_SWEAT(MTAR) && COM_OPTION:28 != 5 ;耳は汗描写しない
	汗描写 '= "汗の滴る"
ELSE
	汗描写 '= ""
ENDIF

VARS 部位描写
SELECTCASE COM_OPTION:28
	CASE 0
		部位描写 '= "首筋"
	CASE 1
		部位描写 '= "頬"
	CASE 2
		部位描写 '= "腹"
	CASE 3
		部位描写 '= "脇"
	CASE 4
		部位描写 '= "太もも"
	CASE 5
		IF MPLY_NUM == 1
			部位描写 '= "耳"
		ELSE
			部位描写 '= "両耳"
		ENDIF
ENDSELECT

部位描写 = %汗描写%%部位描写%
SELECTCASE GET_COM_INITIATIVE()
		;プレイヤーに主導権
	CASE 0
		IF MPLY_NUM == 1
			PRINTFORML %実行名%は%対象名%の%部位描写%に舌を這わせ、舐め上げ%TARGET_STR("た", "てきた")%…
		ELSE
			IF COM_OPTION:28 == 5 ;耳の場合
				PRINTFORML %実行名%は%対象名%の%部位描写%に舌を這わせ、左右から舐め上げ%TARGET_STR("た", "てきた")%…
			ELSE
				PRINTFORML %実行名%は%対象名%の%部位描写%に舌を這わせ、舐め上げ%TARGET_STR("た", "てきた")%…
			ENDIF
		ENDIF
		;ターゲットに主導権
	CASE 1
		PRINTFORMW %実行名%は%対象名%に言われるまま、%対象名%の%部位描写%に舌を這わせた…
		;第三者に主導権
	CASEELSE
		PRINTFORML %ANAME(TFLAG:主導権所有者)%は%実行名%に%対象名%の%部位描写%を舐めるように命令した
		PRINTFORMW %実行名%は%対象名%の%部位描写%にそっと舌を這わせた…
ENDSELECT

;-------------------------------------------------
;継続中の表示
;-------------------------------------------------
@EQUIP_MESSAGE28(MEQUIP_IDX)
#DIM MEQUIP_IDX
VARS 部位

SELECTCASE MEQUIP_OPTION:MEQUIP_IDX
	CASE 0
		部位 '= "首筋"
	CASE 1
		部位 '= "頬"
	CASE 2
		部位 '= "腹"
	CASE 3
		部位 '= "脇"
	CASE 4
		部位 '= "太もも"
	CASE 5
		部位 '= "耳"
ENDSELECT
RESULTS = %EQUIP_PLAYER_ANAME(MEQUIP_IDX)%が%EQUIP_TARGET_ANAME(MEQUIP_IDX)%の%部位%に舌を這わせている

;-------------------------------------------------
;継続中の地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE_EQUIP28(MEQUIP_IDX)
#DIM MEQUIP_IDX
VARS 部位

SELECTCASE MEQUIP_OPTION:MEQUIP_IDX
	CASE 0
		部位 '= "首筋"
	CASE 1
		部位 '= "頬"
	CASE 2
		部位 '= "腹"
	CASE 3
		部位 '= "脇"
	CASE 4
		部位 '= "太もも"
	CASE 5
		部位 '= "耳"
ENDSELECT

PRINTFORML %EQUIP_PLAYER_ANAME(MEQUIP_IDX)%が%EQUIP_TARGET_ANAME(MEQUIP_IDX)%の%部位%を舐め回している…

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

VARS 対象名
対象名 = %ANAME(MTAR:0)%

VARS 部位
SELECTCASE COM_OPTION:28
	CASE 0
		部位 '= "首筋"
	CASE 1
		部位 '= "頬"
	CASE 2
		部位 '= "腹"
	CASE 3
		部位 '= "脇"
	CASE 4
		部位 '= "太もも"
	CASE 5
		部位 '= "耳"
ENDSELECT

VARS 唾液描写
SELECTCASE COMCOUNT_IN_TRAIN(MTAR, 28, "TARGET", COM_OPTION:28)
	CASE 3 TO 6
		唾液描写 = %S_R("既に唾液で濡れた/既に唾液まみれの/既に唾液が糸を引く")%
	CASE IS > 6
		唾液描写 = %S_R("すっかり涎まみれの/唾液で照る/唾液でどろどろになった")%
ENDSELECT

IF MTAR != MASTER
	VARI 感情値
	SELECTCASE CHECK_FEEL_STR(MTAR)
		CASE "GOOD"
			PRINTFORML %唾液描写%%部位%を舐められる度に%対象名%は肌を走る快感に身を震わせている
		CASE "ANGER", "SAD", "FEAR"
			感情値 = RESULT:1
			IF 感情値 < 100
				PRINTFORML %唾液描写%%部位%を舐められる度に%対象名%はむずがゆそうにしている
			ELSEIF 感情値 < 350
				PRINTFORML %唾液描写%%部位%を舐められる度に%対象名%は嫌悪感に顔を歪めている
			ELSE
				PRINTFORML %唾液描写%%部位%を舐められる度に%対象名%は嫌悪感に激しく顔を歪めている
			ENDIF
		CASEELSE
			PRINTFORML %唾液描写%%部位%を舐められる度に%対象名%は虚ろな表情を浮かべている
	ENDSELECT
ENDIF

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

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

;--------------------
;性嗜好用関数
;--------------------
@COM_PREFERENCE_PLAYER_28()
RETURN POWER(2, 性的嗜好_愛撫したい)

@COM_PREFERENCE_TARGET_28()
RETURN POWER(2, 性的嗜好_愛撫されたい)


code:
;おまかせする

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME291
#DIMS COM_NAME

;RESULTS:0 = おまかせする
;RESULTS:1 = おまかせする
;RESULTS:2 = おまかせする
;RESULTS:3 = おまかせする
;RESULTS:4 = おまかせする
;RESULTS:5 = おまかせする

COM_NAME = おまかせする

FOR LOCAL,0,6
	SELECTCASE COM_OPTION:291
		CASE 0
			RESULTS:LOCAL = %COM_NAME%(1回)
		CASE 1
			RESULTS:LOCAL = %COM_NAME%(2回)
		CASE 2
			RESULTS:LOCAL = %COM_NAME%(3回)
		CASE 3
			RESULTS:LOCAL = %COM_NAME%(5回)
		CASE 4
			RESULTS:LOCAL = %COM_NAME%(8回)
		CASE 5
			RESULTS:LOCAL = %COM_NAME%(13回)
		CASE 6
			RESULTS:LOCAL = %COM_NAME%(21回)
		CASEELSE
			RESULTS:LOCAL = %COM_NAME%(1回)
	ENDSELECT
NEXT

;-------------------------------------------------
;コマンドオプションの実行回数定義(フィボナッチ数列を利用)
;-------------------------------------------------
@COM_RESERVED_ACTION_COUNT291
#FUNCTION

SELECTCASE COM_OPTION:291
	CASE 0
		RETURNF 1
	CASE 1
		RETURNF 2
	CASE 2
		RETURNF 3
	CASE 3
		RETURNF 5
	CASE 4
		RETURNF 8
	CASE 5
		RETURNF 13
	CASE 6
		RETURNF 21
	CASEELSE
		RETURNF 1
ENDSELECT

;-------------------------------------------------
;コマンド実行前固有処理
;-------------------------------------------------
@COM_BEFORE291
;おまかせフラグON
;TFLAG:おまかせ中 = 1
;調教コマンド自動選択
CALL COM_AUTOSELECT
;調教コマンド設定
CALL FL_DOTRAIN(RESULT:0, RESULT:1)

RETURN 1

;-------------------------------------------------
;このコマンドはフィルタ不可
;-------------------------------------------------
@COM_FILTER_FORCE_OFF291
RETURN 1

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE291
;共通部分
CALL COM_ABLE_COMMON(291)
SIF RESULT == 0
	RETURN 0
;会いに行く・閨に呼ぶ・捕虜会話限定
SIF !GROUPMATCH(FLAG:調教モード, 0, 1, 6)
	RETURN 0
;行動可能なキャラの数を調べる
LOCAL:10 = 0
FOR LOCAL:0, 0, CHARANUM
	IF IS_AUTOSELECT(LOCAL:0)
		LOCAL:10 ++
	ENDIF
NEXT
;行動可能なキャラがいなければ不可
IF LOCAL:10 <= 0
	RETURN 0
ENDIF
RETURN 1

;-------------------------------------------------
;オプションを持つコマンドの場合オプション数を指定
;-------------------------------------------------
@COM_HAS_OPTION291
RETURN 6

;-------------------------------------------------
;オプションの実行可否判定
;-------------------------------------------------
@COM_OPTION_ABLE291(COMOPTION)
#DIM COMOPTION
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM291
RETURN 1

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

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

@COM_AVAILABLE_WHEN291
RETURN コマンド_ウフフ


code:
;なにもしない

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME292
RESULTS:0 = なにもしない

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE292
;共通部分
CALL COM_ABLE_COMMON(292)
SIF RESULT == 0
	RETURN 0
;プレイヤーは1人以上
SIF MPLY_NUM <= 0
	RETURN 0
;主人公がプレイヤーのとき限定
SIF FINDELEMENT(MPLY, MASTER) == -1 && !FLAG:クエストモード
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM292
#DIM コマンド参加数
#DIM 基本割合
PRINTFORML %ANAME(MPLY:0)%はなにもしなかった……

;体力と気力を回復
FOR LOCAL, 0, CHARANUM
	SIF !IS_PARTICIPATE_TRAIN(LOCAL)
		CONTINUE

	;基本的な回復割合は5~10%
	基本割合 = RAND(5, 10) + TALENT:LOCAL:回復早い * 5 - TALENT:LOCAL:回復遅い * 5
	コマンド参加数 = 0
	;コマンドに参加しているほど、回復しにくくなる
	FOR LOCAL:1, 0, MEQUIP_NUM
		FOR LOCAL:2, 0, MEQUIP_PLAYER_NUM:(LOCAL:1)
			IF MEQUIP_PLAYER:(LOCAL:1):(LOCAL:2) == LOCAL
				コマンド参加数 ++
				GOTO FOUND
			ENDIF
		NEXT
		FOR LOCAL:2, 0, MEQUIP_TARGET_NUM:(LOCAL:1)
			IF MEQUIP_TARGET:(LOCAL:1):(LOCAL:2) == LOCAL
				コマンド参加数 ++
				GOTO FOUND
			ENDIF
		NEXT
		$FOUND
	NEXT

	IF FLAG:調教モード == 調教_捕虜調教 && FINDELEMENT(PRISONER_TARGET, LOCAL) != -1
		BASE:LOCAL:精神力 = MIN(MAXBASE:LOCAL:精神力, BASE:LOCAL:精神力 + MAXBASE:LOCAL:精神力 * 基本割合 / 100)
		SIF BASE:LOCAL:精神力 > 0 && CFLAG:LOCAL:崩壊
			CFLAG:LOCAL:崩壊 = MAX(CFLAG:LOCAL:崩壊 - BASE:LOCAL:精神力 / 5, 0)
	ENDIF

	基本割合 = MAX(基本割合 - コマンド参加数, 0)

	IF TCVAR:(LOCAL:0):行動不能フラグ
		SOURCE:(LOCAL:0):疲労回復 = RAND(100, 300) + TALENT:LOCAL:回復早い * 50 - TALENT:LOCAL:回復遅い * 50
	ELSE
		BASE:LOCAL:体力 = MIN(MAXBASE:LOCAL:体力, BASE:LOCAL:体力 + MAXBASE:LOCAL:体力 * 基本割合 / 100)
	ENDIF

	IF TCVAR:(LOCAL:0):失神フラグ
		SOURCE:(LOCAL:0):気絶回復 = RAND(100, 300) + TALENT:LOCAL:回復早い * 50 - TALENT:LOCAL:回復遅い * 50
	ELSE
		BASE:LOCAL:気力 = MIN(MAXBASE:LOCAL:体力, BASE:LOCAL:気力 + MAXBASE:LOCAL:気力 * 基本割合 / 100)
	ENDIF

NEXT

RETURN 1

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

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

@COM_AVAILABLE_WHEN292
RETURN コマンド_共通


code:
;搾精する

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME293
RESULTS:0 = 搾精する
RESULTS:1 = 搾精させられる
RESULTS:2 = 搾精させる
RESULTS:3 = 搾精される
RESULTS:4 = 搾精させる
RESULTS:5 = 搾精見せつけ

;-------------------------------------------------
;このコマンドはフィルタ可能
;-------------------------------------------------
@COM_FILTER_FORCE_OFF293
RETURN 0

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE293
;共通部分
CALL COM_ABLE_COMMON(293)
SIF RESULT == 0
	RETURN 0
;調教モード
SIF !GROUPMATCH(FLAG:調教モード, 調教_会う, 調教_閨, 調教_捕虜調教, 調教_捕虜会話)
	RETURN 0

;ターゲットが必要
SIF MTAR_NUM <= 0
	RETURN 0

;ターゲット全員が男性器を持つ
FOR LOCAL:0, 0, MTAR_NUM
	SIF !HAS_PENIS(MTAR:(LOCAL:0))
		RETURN 0
NEXT

;主人公が行動不能なら不可
SIF !IS_PLAYABLE(MASTER)
	RETURN 0

RETURN 1

;-------------------------------------------------
;コマンド実行前固有処理
;-------------------------------------------------
@COM_BEFORE293
#DIM DYNAMIC MEQUIP_INDEX ;装着物(MEQUIP)の配列番号
#DIM DYNAMIC TARGET_INDEX

;搾精対象者の挿入状態を解除
FOR TARGET_INDEX, 0, MTAR_NUM
	CALL CLEAR_INSERT_FLAG(MTAR:LOCAL,"P")
NEXT

;オプション=0: 初回実行時
IF COM_OPTION:293 == 0
	;MTARを退避
	ARRAYCOPY "MTAR", "MTAR_TMP"
	MTAR_NUM_TMP = MTAR_NUM
	;全装着物について確認
	FOR MEQUIP_INDEX, 0, MEQUIP_NUM
		;コンドーム以外の装着物はスキップ
		IF MEQUIP:MEQUIP_INDEX != T_N("コンドーム")
			CONTINUE
		ENDIF
		;コンドームの場合、全ターゲットについて確認
		FOR TARGET_INDEX, 0, MTAR_NUM_TMP
			;コンドーム装着者が調教対象キャラの場合
			IF MEQUIP_PLAYER:MEQUIP_INDEX:0 == MTAR_TMP:TARGET_INDEX
				;コンドーム装着対象から除外
				CALL DEL_MTAR(MTAR:TARGET_INDEX)
			ENDIF
		NEXT
	NEXT
	;コンドーム未装着者が存在する場合
	IF MTAR_NUM > 0
		;次回実行コマンドにコンドームを予約
		FL_TRAIN_RESERVED_COM_NAME_LIST = %LIST_ADD(FL_TRAIN_RESERVED_COM_NAME_LIST,"コンドーム")%
		FL_TRAIN_RESERVED_COM_OPTION_LIST = %LIST_ADD(FL_TRAIN_RESERVED_COM_OPTION_LIST,"0")%
	;対象者全員がコンドーム装着済の場合
	ELSE
		;MTARを復帰
		ARRAYCOPY "MTAR_TMP", "MTAR"
		MTAR_NUM = MTAR_NUM_TMP
	ENDIF
;オプション=1: 連続実行時 実行する調教コマンドを指定する
ELSEIF COM_OPTION:293 == 1
	;調教コマンド自動選択時のカテゴリ優先度を初期化
	VARSET COM_AUTO_CATEGORY_PRIORITY, 0
	COM_AUTO_CATEGORY_PRIORITY:COM_AUTO_CATEGORY_NUM_奉仕する += 4
	COM_AUTO_CATEGORY_PRIORITY:COM_AUTO_CATEGORY_NUM_愛撫する += 1
	COM_AUTO_CATEGORY_PRIORITY:COM_AUTO_CATEGORY_NUM_性交する += 1
	;調教コマンド自動選択
	CALL COM_AUTOSELECT(MPLY:0, MTAR:0,-1)
	;調教コマンド設定
	CALL FL_DOTRAIN(RESULT:0, RESULT:1)
ENDIF

;次回または次々回の実行コマンドに搾精をオプション1(連続実行)を指定して予約
FL_TRAIN_RESERVED_COM_NAME_LIST = %LIST_ADD(FL_TRAIN_RESERVED_COM_NAME_LIST,"搾精する")%
FL_TRAIN_RESERVED_COM_OPTION_LIST = %LIST_ADD(FL_TRAIN_RESERVED_COM_OPTION_LIST,"1")%

RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM293
;主導権の設定
FLAG:主導権所有者 = TFLAG:主導権所有者
RETURN 1

;-------------------------------------------------
;地の文(前文)
;-------------------------------------------------
@COM_TEXT_BEFORE293
;複数ターゲット指定時に一部のターゲットのみがコンドームを装着していた場合に、コマンド選択時のターゲットはMTARではなくMTAR_TMPに保存されているのでMTAR_TMPを利用
SELECTCASE GET_COM_INITIATIVE()
	;主導権はプレイヤー
	CASE 0
		PRINTFORMW %ANAME(MPLY:0,MPLY_NUM)%は%ANAME(MTAR_TMP:0,MTAR_NUM_TMP)%から精液を絞り取ることにした…
	;主導権はターゲット
	CASE 1
		PRINTFORMW %ANAME(MTAR_TMP:0,MTAR_NUM_TMP)%は%ANAME(MPLY:0,MPLY_NUM)%に自身を射精させるように伝えた
	;主導権は第三者
	CASEELSE
		PRINTFORMW %ANAME(TFLAG:主導権所有者)%は%ANAME(MTAR_TMP:0,MTAR_NUM_TMP)%から精液を搾り取るように%ANAME(MPLY:0,MPLY_NUM)%に伝えた
ENDSELECT

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

;コマンド区分
;-------------------------------------------------
@COM_AVAILABLE_WHEN293
RETURN コマンド_ウフフ


code:
;忠誠を誓わせる(逆調教)

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME298
RESULTS:0 = 忠誠を誓わせる

;-------------------------------------------------
;このコマンドはフィルタ不可
;-------------------------------------------------
@COM_FILTER_FORCE_OFF298
RETURN 1

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE298
;共通部分
CALL COM_ABLE_COMMON(298)
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) || !IS_PLAYABLE(MTAR:0)
	RETURN 0
;捕虜逆調教のとき限定
SIF FLAG:調教モード != 5 || !CFLAG:MASTER:捕虜先
	RETURN 0
;主人公がターゲットのとき限定
SIF MTAR:0 != MASTER
	RETURN 0
;プレイヤーの口が塞がっているなら不可
SIF IS_M_HOLD(MPLY:0)
	RETURN 0
;ターゲットの口が塞がっているなら不可
SIF IS_M_HOLD(MTAR:0)
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM298
;説得してからの期間を0にする
FLAG:勧誘経過期間 = 0

LOCAL:5 = GET_COUNTRY_BOSS(CFLAG:(MPLY:0):所属)

;口上表示
CALL KOJO_EVENT(MPLY:0, 450)

CALL ASK_YN("仕官する", "断る")

;仕官する
IF RESULT == 0
	;口上表示
	CALL KOJO_EVENT(MPLY:0, 451)

	;主人公の縄を解く
	CALL RELEASE_EQUIP_EX(85, -1, MASTER)

	PRINTL
	PRINTFORMW %ANAME(MASTER)%は%ANAME(LOCAL:5)%の士官になりました
	;所属国家の変更
	CALL CHANGE_COUNTRY(MASTER, CFLAG:(MPLY:0):所属, 1)
	PLAYER_HIRED_COUNTER = 10
;断る
ELSE
	;口上表示
	CALL KOJO_EVENT(MPLY:0, 452)
ENDIF

RETURN 1

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

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

@COM_AVAILABLE_WHEN298
RETURN コマンド_ウフフ


code:
;忠誠を誓わせる

;-------------------------------------------------
;コマンド名称
;-------------------------------------------------
@COM_NAME299
RESULTS:0 = 忠誠を誓わせる
RESULTS:1 = 忠誠を誓わせる
RESULTS:2 = 忠誠を誓わせる
RESULTS:3 = 忠誠を誓わせる
RESULTS:4 = 忠誠を誓わせる
RESULTS:5 = 忠誠を誓わせる

;-------------------------------------------------
;選択可否判定
;-------------------------------------------------
@COM_ABLE299
;共通部分
CALL COM_ABLE_COMMON(299)
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) || TCVAR:(MTAR:0):失神フラグ || TCVAR:(MTAR:0):離脱フラグ
	RETURN 0
;主人公がプレイヤーのとき限定
SIF MPLY:0 != MASTER
	RETURN 0
;主人公に主導権があるとき限定
SIF FLAG:主導権所有者 != MASTER && FLAG:主導権所有者 != -1
	RETURN 0
;既に烙印orIS_LOVERの場合、「自勢力所属のキャラ」と「自分の勢力以外の捕虜」は不可
SIF (TALENT:(MTAR:0):烙印 || IS_LOVER(MTAR:0) || IS_SLAVED_BY(MTAR:0)) && (CFLAG:MASTER:所属 == CFLAG:(MTAR:0):所属 || CFLAG:(MTAR:0):捕虜先 != CFLAG:MASTER:所属)
	RETURN 0
;プレイヤーの口が塞がっているなら不可
SIF IS_M_HOLD(MPLY:0)
	RETURN 0
;ターゲットの口が塞がっているなら不可
SIF IS_M_HOLD(MTAR:0)
	RETURN 0
RETURN 1

;-------------------------------------------------
;メイン処理
;-------------------------------------------------
@COM299
;●実行値の計算
CVARSET TCVAR, 24, -10000
CVARSET TCVAR, 25, 10000

TCVAR:(MTAR:0):実行値 = 90

CALL COM_ORDER(MTAR:0)

CALL COM_ORDER_ELEMENT(MTAR:0, "依存度", CFLAG:(MTAR:0):依存度 / 50)

IF TALENT:(MTAR:0):服従
	CALL COM_ORDER_ELEMENT(MTAR:0, "服従", 50)
ENDIF

IF TALENT:(MTAR:0):隷属
	CALL COM_ORDER_ELEMENT(MTAR:0, "隷属", 50)
ENDIF

IF TALENT:(MTAR:0):一線越えない
	CALL COM_ORDER_ELEMENT(MTAR:0, "一線越えない", -15)
ENDIF

IF FLAG:夜這い
	CALL COM_ORDER_ELEMENT(MTAR:0, "夜這い/手引き", -50)
ENDIF

LOCAL = LIMIT(REL_LIKE:(MTAR:0):(MPLY:0) / 75 - REL_HATE:(MTAR:0):(MPLY:0) / 50,  -20, 20)

IF LOCAL != 0
	CALL COM_ORDER_ELEMENT(MTAR:0, "友好度/嫌悪度", LOCAL)
ENDIF

SELECTCASE CONFIG:314
	CASE 2
		CALL COM_ORDER_ELEMENT(MTAR:0, "難易度補正", -5)
	CASE 3
		CALL COM_ORDER_ELEMENT(MTAR:0, "難易度補正", -10)
	CASE 4
		CALL COM_ORDER_ELEMENT(MTAR:0, "難易度補正", -20)
ENDSELECT

;判定結果を表示
PRINTFORMW  = {TCVAR:(MTAR:0):判定値} %TOSTR_COMPARE(TCVAR:(MTAR:0):判定値, TCVAR:(MTAR:0):実行値)% 実行値{TCVAR:(MTAR:0):実行値}

;判定成功
IF TCVAR:(MTAR:0):判定値 >= TCVAR:(MTAR:0):実行値
	;口上表示
	CALL KOJO_EVENT(MTAR:0, 50)

	LOCALS:0 =
	IF !IS_LOVER(MTAR:0)
		TALENT:(MTAR:0):烙印 = 1
		LOCALS:0 += "<烙印>"
	ENDIF
	IF !TALENT:(MTAR:0):合意
		TALENT:(MTAR:0):合意 = 1
		LOCALS:0 += "<合意>"
	ENDIF

	PRINTL
	IF LOCALS:0 != ""
		SETCOLOR カラー_注意
		PRINTFORML %ANAME(MTAR:0)%は%LOCALS:0%を得た
		RESETCOLOR
	ENDIF

	IF !TALENT:(MTAR:0):特殊勢力素質 && IS_SP_COUNTRY(CFLAG:MASTER:所属) && !TALENT:(MTAR:0):特殊勢力陥落系 && !GETBIT(TALENT:(MTAR:0):特殊勢力陥落系, SP_COUNTRY_TO_CONST(CFLAG:MASTER:所属))
		CALL COLOR_PRINTW(@"%ANAME(MTAR:0)%は<%SP_FALLEN_TALENT_NAME:(SP_COUNTRY_TO_CONST(CFLAG:MASTER:所属))%>になった", カラー_注意)
		SETBIT TALENT:(MTAR:0):特殊勢力陥落系, SP_COUNTRY_TO_CONST(CFLAG:MASTER:所属)
	ENDIF

	IF TALENT:(MTAR:0):プライド高い && CFLAG:(MTAR:0):好感度 < -500 && !TALENT:(MTAR:0):服従 && STRFIND(LOCALS:0, "烙印")
		PRINTL
		SETCOLOR カラー_注意
		PRINTFORML 嫌悪している%ANAME(MASTER)%の奴隷になると認めたことで、%ANAME(MTAR:0)%のプライドは完全に折れてしまった
		CALL TALENT_LOSE_PRIDE(MTAR:0, 1, 1)
		RESETCOLOR
	ENDIF

	IF IS_COUNTRY(CFLAG:MASTER:所属) && CFLAG:(MTAR:0):捕虜先 == CFLAG:MASTER:所属
		CALL CHANGE_RELATION_C_TO_C(CFLAG:(MTAR:0):所属, CFLAG:MASTER:所属, -200, 200)
		PRINTFORMW %ANAME(MTAR:0)%が我が国の士官になりました
		PRINTFORML %ANAME(MTAR:0)%を牢獄から出してやりますか？
		CALL ASK_YN("出す", "牢獄での調教を続ける(後から解放可)")
		CALL CHANGE_COUNTRY(MTAR:0, CFLAG:MASTER:所属, !RESULT)
	ENDIF

	IF IS_COUNTRY(CFLAG:(MTAR:0):所属) && CFLAG:(MTAR:0):所属 != CFLAG:MASTER:所属
		IF GET_COUNTRY_BOSS(CFLAG:(MTAR:0):所属) == MTAR:0
			CALL CHANGE_RELATION_C_TO_C(CFLAG:(MTAR:0):所属, CFLAG:MASTER:所属, 500, -500)
		ELSE
			CALL CHANGE_RELATION_C_TO_C(CFLAG:(MTAR:0):所属, CFLAG:MASTER:所属, -200, 200)
		ENDIF
	ENDIF

;判定失敗
ELSE
	;口上表示
	CALL KOJO_EVENT(MTAR:0, 51)

	IF CFLAG:(MTAR:0):捕虜先 == CFLAG:MASTER:所属
		SOURCE:(MTAR:0):反感 = 300
	ELSE
		SOURCE:(MTAR:0):反感 = 3000
	ENDIF
ENDIF

RETURN 1

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

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

@COM_AVAILABLE_WHEN299
RETURN コマンド_ウフフ