code:
;-------------------------------------------------
;角色阴蒂画面等で角色ARGの髪色などを変更する（設定がされていない角色対策）
;ARG == 0 の場合はドッペル你を使ってのシミュレーションモード
;-------------------------------------------------
@SIMULATE_MAIDFACE, ARG
#DIM ACTOR
#DIMS MEMO_CLO
#DIMS MEMO_SAVESTR
#DIM LCOUNT

STR:颜绘固定 =
STR:LASTCHOICE =
MEMO_CLO =
MEMO_SAVESTR = %SAVESTR:飾品%
TFLAG:过滤器 = 0

ACTOR = 0

;颜绘シミュ中フラグON
SETBIT FLAG:状況判定, 48

SELECTCASE ARG
CASE 0
	IF TARGET > MASTER && CFLAG:颜绘
		PRINTPLAINFORM 要以[{TARGET, 2}]%NAME:TARGET%的顔绘为基准吗？
		PRINTL
		IF CFLAG:MASTER:颜绘
			CALL PRINT_SELECT, @"是(一部分的表情、是这个角色独有的)/否/%CALLNAME:MASTER%の颜绘をベースにする"
		ELSE
			CALL PRINT_SELECT, @"是(一部分的表情、是这个角色独有的)/否"
		ENDIF
		SELECTCASE RESULT
		CASE 0
			ADDCOPYCHARA TARGET
			ACTOR = TARGET
		CASE 2
			ADDCOPYCHARA MASTER
			ACTOR = MASTER
		ENDSELECT
	ENDIF
	SIF ACTOR == 0
		ADDCHARA 99

	ARG = CHARANUM - 1

	;CFLAGは重置しておく
	VARSET CFLAG:ARG:0, 0

	CSTR:ARG:颜绘変化 =

	IF NO:ARG == 99
		CALL SET_3SIZE, ARG
		BASE:ARG:腰圍 = BASE:ARG:身高 * 38 /100
	ENDIF

	CALL VARSET_MAIDFACE, ARG

	;仮想角色フラグを立てる
	CSTR:ARG:CEVENT =
	VARSET LOCALS
	SPLIT CSTR:ACTOR:CEVENT, "/", LOCALS
	FOR LCOUNT, 0, 100
		SELECTCASE LOCALS:LCOUNT
		CASE ""
			BREAK
		CASEELSE
			SIF STRCOUNTS(LOCALS:LCOUNT, "淫紋", "穿環")
				CSTR:ARG:CEVENT += @"%LOCALS:LCOUNT%/"
		ENDSELECT
	NEXT
	CALL SET_CEVENT, "仮想角色", ARG

	CALL SETFLAG, "衣装の記録", ARG
	STR:最初の衣装 = %STR:衣装記録%
	CALL SETFLAG, "衣装記録からの復元", ARG
	;あってはならない装備を取下
	SIF CHECK_OTHER("黒色颈环", ARG)
		CALL RESET_OTHER, "黒色颈环", ARG
	STR:衣装記録 =

	CALL SETFLAG, "最初の颜绘の記録", ARG

	CFLAG:ARG:颜绘 = 1

	CALL SIMULATE_MAIDFACE_MAIN, ARG
	CALL DELETE_CHARA, CHARANUM - 1
CASEELSE
	IF COND("髪型変更のお願い中", ARG)
		CALL SETFLAG, "最初の颜绘の記録", ARG
		CALL SIMULATE_MAIDFACE_MAIN, ARG
	ELSE
		SIF CFLAG:ARG:颜绘 == 0
			CALL PRESET_MAIDFACE, ARG

		CALL SETFLAG, "最初の颜绘の記録", ARG
		CFLAG:ARG:颜绘 = 1
		CALL SETFLAG, "衣装の記録", ARG
		MEMO_CLO = %STR:衣装記録%

		;あってはならない装備を取下
		SIF CHECK_OTHER("黒色颈环", ARG)
			CALL RESET_OTHER, "黒色颈环", ARG
		CALL SETFLAG, "衣装の記録", ARG
		STR:最初の衣装 = %STR:衣装記録%

		IF ARG == MASTER
			PRINTFORMW 对于%NAME:MASTER%的颜绘设定、可以使用[10]～对衣服进行设定
			PRINTFORMW 即使是没有进行设定也会自动使用默认的衣服套装、想要变更的时候请尽情使用
		ENDIF
		CALL SIMULATE_MAIDFACE_MAIN, ARG

		STR:衣装記録 = %MEMO_CLO%
		CALL SETFLAG, "衣装記録からの復元", ARG

		IF ARG == MASTER && SAVESTR:飾品 != MEMO_SAVESTR
			PRINTFORML %CALLNAME:MASTER%的眼鏡、要按照现在设定的样子马上进行变更吗？
			CALL PRINT_SELECT, "是/否"
			SIF RESULT == 0
				CALL SET_OTHER, SAVESTR:飾品, MASTER
		ENDIF
	ENDIF
ENDSELECT

STR:颜绘固定 =
;颜绘シミュ中フラグOFF
CLEARBIT FLAG:状況判定, 48

;-------------------------------------------------
;TFLAG:过滤器で現在設定しているものの種類を管理する
;0髪, 1表情, 2其他の颜绘, 3衣装
;-------------------------------------------------
@SIMULATE_MAIDFACE_MAIN, ARG
#DIM LCOUNT
#DIM MEMO_LINECOUNT
#DIM ORIGINALCOLOR_BUTTOM_VALUE
#DIMS CHOICES
#DIMS PRINT_TABLE
#DIMS SHOW_TABLE
#DIMS EXAMPLE_EMOTE
#DIMS MEGANE
#DIMS MENU_SELECT
#DIMS MEMO_MASTERCLO
#DIMS MEMO_CFLAGNAME
#DIMS VIRTUAL_LOCATION
#DIMS INDENT_TEXT

MEMO_LINECOUNT = LINECOUNT
SIF !ORIGINALCOLOR_BUTTOM_VALUE
	ORIGINALCOLOR_BUTTOM_VALUE = 1
SIF VIRTUAL_LOCATION == ""
	VIRTUAL_LOCATION = 默认
;IF COND("髪型変更のお願い中", ARG)
;	CALL EMOTION_PLUS, "重置"
;ELSE
;	IF CSTR:ARG:颜绘変化 != ""
;		CALL EMOTION_PLUS, CSTR:ARG:颜绘変化, ARG
;	ELSE
;		CALL PRINT_MAIDFACE, ARG
;	ENDIF
;ENDIF

CALL PRINT_CUTIN, "属性与外表", ARG
CLEARLINE TFLAG:MAX_height

	;颜绘＆腹部グラ分のスペース
	INDENT_TEXT = %BL(2*MAIDFACESIZE()/50 + 3)%

IF COND("髪型変更のお願い中", ARG) == 0
	CFLAG:ARG:髪型変更のお願い中 = 0

	MENU_SELECT = %INDENT_TEXT%_
	MENU_SELECT += @"\@ TFLAG:过滤器 == 0 ? 緑_ # \@[0]%TEXT_LJ("髪の設定", 20)%_"
	MENU_SELECT += @"\@ TFLAG:过滤器 == 1 ? 緑_ # \@[1]%TEXT_LJ("目,眉,口の設定", 20)%_"
	SIF COND("仮想角色", ARG) || ARG == MASTER
		MENU_SELECT += @"\@ TFLAG:过滤器 == 2 ? 緑_ # \@[2]%TEXT_LJ("其他の設定", 20)%_"
	MENU_SELECT += @"L_%INDENT_TEXT%_"
	IF COND("仮想角色", ARG) || ARG == MASTER
		MENU_SELECT += @"\@ TFLAG:过滤器 == 3 ? 緑_ # \@[3]%TEXT_LJ("目,眉,口の表情変化", 20)%_"
		MENU_SELECT += @"\@ TFLAG:过滤器 == 4 ? 緑_ # \@[4]%TEXT_LJ("それ以外の表情変化", 20)%_"
	ENDIF
	MENU_SELECT += @"\@ TFLAG:过滤器 == 5 ? 緑_ # \@[5]%TEXT_LJ("服装画像测试", 20)%_"
	[IF_DEBUG]
		IF COND("髪型変更のお願い中", ARG) == 0 && COND("角色メイク中") == 0
			MENU_SELECT += @"L_%INDENT_TEXT%_"
			MENU_SELECT += @"\@ TFLAG:过滤器 == 6 ? 緑_ # \@[6]%TEXT_LJ("随机颜色シミュレーター", 20)%_"
		ENDIF
	[ENDIF]
	CALL PRINT_STRL, MENU_SELECT

	IF ARG == MASTER
		PRINTL
		MENU_SELECT =
		MENU_SELECT += @"NOBUTTON_%INDENT_TEXT%衣装設定:_"
		MENU_SELECT += @"[10]制服_\@ SAVESTR:制服 != "" ? 緑_済 # 水色_未 \@_ "
		MENU_SELECT += @"[11]体操服_\@ SAVESTR:体操服 != "" ? 緑_済 # 水色_未 \@_ "
		MENU_SELECT += @"[12]便装_\@ SAVESTR:便装 != "" ? 緑_済 # 水色_未 \@_ "
		MENU_SELECT += @"[13]外出装_\@ SAVESTR:外出装 != "" ? 緑_済 # 水色_未 \@_ "
		MENU_SELECT += @"[14]泳装_\@ SAVESTR:泳装 != "" ? 緑_済 # 水色_未 \@_ "
		MENU_SELECT += @"[15]内衣_\@ COND("所持内衣数", ARG) ? 緑_済 # 水色_未 \@_ "
		CALL PRINT_STRL, MENU_SELECT
	ENDIF
	PRINTL
	SELECTCASE TFLAG:过滤器
	CASE 0, 1
		CALL PRINT_STRL, @"%INDENT_TEXT%_黄色_※[0],[1]连续选择同一个东西的话会变成随机固定※"
		CALL PRINT_STRL, @"%INDENT_TEXT%例）[巻髪]连续选择两次的话頭发的长度会固定为巻髪"
	CASE 2
		CALL PRINT_STRL, @"%INDENT_TEXT%_黄色_※頬傷和創口貼和精液可以选择多个(再選択的话可以ON/OFF之间切换)※"
	CASE 3
		CALL PRINT_STRL, @"%INDENT_TEXT%_黄色_※这里不会记录为颜绘、只是用于确认反应用的测试※"
		CALL PRINT_STRL, @"%INDENT_TEXT%_黄色_※点击选中的东西的话会变成消除※"
	CASE 4
		CALL PRINT_STRL, @"%INDENT_TEXT%_黄色_※这里不会记录为颜绘、只是用于确认反应用的测试※"
	CASE 6
		CALL GET_COLOR_MATRIX_ELEMENTS, "髪色の種類", CONDS("髪色の種類", ARG), ARG
		CFLAG:ARG:髪Ｒ = COLOR_MATRIX_ELEMENTS:0:0
		CFLAG:ARG:髪Ｇ = COLOR_MATRIX_ELEMENTS:0:1
		CFLAG:ARG:髪Ｂ = COLOR_MATRIX_ELEMENTS:0:2
		CFLAG:ARG:髪高光Ｒ = COLOR_MATRIX_ELEMENTS:1:0
		CFLAG:ARG:髪高光Ｇ = COLOR_MATRIX_ELEMENTS:1:1
		CFLAG:ARG:髪高光Ｂ = COLOR_MATRIX_ELEMENTS:1:2
		CFLAG:ARG:髪主線Ｒ = COLOR_MATRIX_ELEMENTS:2:0
		CFLAG:ARG:髪主線Ｇ = COLOR_MATRIX_ELEMENTS:2:1
		CFLAG:ARG:髪主線Ｂ = COLOR_MATRIX_ELEMENTS:2:2
		CSTR:ARG:髪色 = カスタム

		SELECTCASE CONDS("眼形の番号", ARG)
		CASE "２", "３", "４"
			CALL GET_COLOR_MATRIX_ELEMENTS, "瞳色２", CONDS("左瞳色", ARG), ARG
		CASEELSE
			CALL GET_COLOR_MATRIX_ELEMENTS, "瞳色", CONDS("左瞳色", ARG), ARG
		ENDSELECT
		CFLAG:ARG:目Ｒ = COLOR_MATRIX_ELEMENTS:0:0
		CFLAG:ARG:目Ｇ = COLOR_MATRIX_ELEMENTS:0:1
		CFLAG:ARG:目Ｂ = COLOR_MATRIX_ELEMENTS:0:2
		CFLAG:ARG:目高光Ｒ = COLOR_MATRIX_ELEMENTS:1:0
		CFLAG:ARG:目高光Ｇ = COLOR_MATRIX_ELEMENTS:1:1
		CFLAG:ARG:目高光Ｂ = COLOR_MATRIX_ELEMENTS:1:2
		CSTR:ARG:瞳色 = カスタム
	ENDSELECT
ENDIF

CALL MULTILINE, MAX(1 + TFLAG:MAX_height - (LINECOUNT - MEMO_LINECOUNT), 0)

SELECTCASE TFLAG:过滤器
CASE 6
	CALL SELECTSL, TEXTS("髪色の種類：槞以外"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/髪色/") ? _黄色_ # \@髪色:%TEXT_LJ(@"%CONDS("髪色の種類", ARG)%髪", 18)%", "髪"

	HTML_PRINT @"　%TEXT_LJ("髪のベース", 16)%<shape type='rect' param='300' color='#%TOSTR(CFLAG:ARG:髪Ｒ, "X2")%%TOSTR(CFLAG:ARG:髪Ｇ, "X2")%%TOSTR(CFLAG:ARG:髪Ｂ, "X2")%'> 　<button value='随机颜色減算髪ALL'>[ALL-]</button>　<button value='随机颜色加算髪ALL'>[ALL+]</button>"
	PRINTFORM 　　　Ｒ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪Ｒ), 3)%]", "随机颜色直接入力髪Ｒ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪Ｒ"
	CALL PRINT_BAR, "枠无赤色ゲージ", CFLAG:ARG:髪Ｒ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪Ｒ"
	PRINTL

	PRINTFORM 　　　Ｇ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪Ｇ), 3)%]", "随机颜色直接入力髪Ｇ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪Ｇ"
	CALL PRINT_BAR, "枠无緑色ゲージ", CFLAG:ARG:髪Ｇ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪Ｇ"
	PRINTL

	PRINTFORM 　　　Ｂ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪Ｂ), 3)%]", "随机颜色直接入力髪Ｂ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪Ｂ"
	CALL PRINT_BAR, "枠无青色ゲージ", CFLAG:ARG:髪Ｂ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪Ｂ"
	PRINTL

	HTML_PRINT @"　%TEXT_LJ("髪の主線", 16)%<shape type='rect' param='300' color='#%TOSTR(CFLAG:ARG:髪主線Ｒ, "X2")%%TOSTR(CFLAG:ARG:髪主線Ｇ, "X2")%%TOSTR(CFLAG:ARG:髪主線Ｂ, "X2")%'> 　<button value='随机颜色減算髪主線ALL'>[ALL-]</button>　<button value='随机颜色加算髪主線ALL'>[ALL+]</button>"
	PRINTFORM 　　　Ｒ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪主線Ｒ), 3)%]", "随机颜色直接入力髪主線Ｒ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪主線Ｒ"
	CALL PRINT_BAR, "枠无赤色ゲージ", CFLAG:ARG:髪主線Ｒ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪主線Ｒ"
	PRINTL

	PRINTFORM 　　　Ｇ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪主線Ｇ), 3)%]", "随机颜色直接入力髪主線Ｇ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪主線Ｇ"
	CALL PRINT_BAR, "枠无緑色ゲージ", CFLAG:ARG:髪主線Ｇ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪主線Ｇ"
	PRINTL

	PRINTFORM 　　　Ｂ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪主線Ｂ), 3)%]", "随机颜色直接入力髪主線Ｂ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪主線Ｂ"
	CALL PRINT_BAR, "枠无青色ゲージ", CFLAG:ARG:髪主線Ｂ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪主線Ｂ"
	PRINTL

	HTML_PRINT @"　%TEXT_LJ("髪の高光", 16)%<shape type='rect' param='300' color='#%TOSTR(CFLAG:ARG:髪高光Ｒ, "X2")%%TOSTR(CFLAG:ARG:髪高光Ｇ, "X2")%%TOSTR(CFLAG:ARG:髪高光Ｂ, "X2")%'> 　<button value='随机颜色減算髪高光ALL'>[ALL-]</button>　<button value='随机颜色加算髪高光ALL'>[ALL+]</button>"
	PRINTFORM 　　　Ｒ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪高光Ｒ), 3)%]", "随机颜色直接入力髪高光Ｒ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪高光Ｒ"
	CALL PRINT_BAR, "枠无赤色ゲージ", CFLAG:ARG:髪高光Ｒ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪高光Ｒ"
	PRINTL

	PRINTFORM 　　　Ｇ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪高光Ｇ), 3)%]", "随机颜色直接入力髪高光Ｇ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪高光Ｇ"
	CALL PRINT_BAR, "枠无緑色ゲージ", CFLAG:ARG:髪高光Ｇ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪高光Ｇ"
	PRINTL

	PRINTFORM 　　　Ｂ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:髪高光Ｂ), 3)%]", "随机颜色直接入力髪高光Ｂ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算髪高光Ｂ"
	CALL PRINT_BAR, "枠无青色ゲージ", CFLAG:ARG:髪高光Ｂ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算髪高光Ｂ"
	PRINTL

	PRINTL

	CALL SELECTSL, TEXTS("瞳色の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/瞳色/") ? _黄色_ # \@瞳色:%TEXT_LJ(CONDS("右瞳色", ARG), 18)%"
	HTML_PRINT @"　%TEXT_LJ("目のベース", 16)%<shape type='rect' param='300' color='#%TOSTR(CFLAG:ARG:目Ｒ, "X2")%%TOSTR(CFLAG:ARG:目Ｇ, "X2")%%TOSTR(CFLAG:ARG:目Ｂ, "X2")%'> 　<button value='随机颜色減算目ALL'>[ALL-]</button>　<button value='随机颜色加算目ALL'>[ALL+]</button>"
	PRINTFORM 　　　Ｒ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目Ｒ), 3)%]", "随机颜色直接入力目Ｒ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目Ｒ"
	CALL PRINT_BAR, "枠无赤色ゲージ", CFLAG:ARG:目Ｒ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目Ｒ"
	PRINTL

	PRINTFORM 　　　Ｇ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目Ｇ), 3)%]", "随机颜色直接入力目Ｇ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目Ｇ"
	CALL PRINT_BAR, "枠无緑色ゲージ", CFLAG:ARG:目Ｇ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目Ｇ"
	PRINTL

	PRINTFORM 　　　Ｂ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目Ｂ), 3)%]", "随机颜色直接入力目Ｂ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目Ｂ"
	CALL PRINT_BAR, "枠无青色ゲージ", CFLAG:ARG:目Ｂ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目Ｂ"
	PRINTL

	HTML_PRINT @"　%TEXT_LJ("目の高光", 16)%<shape type='rect' param='300' color='#%TOSTR(CFLAG:ARG:目高光Ｒ, "X2")%%TOSTR(CFLAG:ARG:目高光Ｇ, "X2")%%TOSTR(CFLAG:ARG:目高光Ｂ, "X2")%'> 　<button value='随机颜色減算目高光ALL'>[ALL-]</button>　<button value='随机颜色加算目高光ALL'>[ALL+]</button>"
	PRINTFORM 　　　Ｒ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目高光Ｒ), 3)%]", "随机颜色直接入力目高光Ｒ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目高光Ｒ"
	CALL PRINT_BAR, "枠无赤色ゲージ", CFLAG:ARG:目高光Ｒ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目高光Ｒ"
	PRINTL

	PRINTFORM 　　　Ｇ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目高光Ｇ), 3)%]", "随机颜色直接入力目高光Ｇ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目高光Ｇ"
	CALL PRINT_BAR, "枠无緑色ゲージ", CFLAG:ARG:目高光Ｇ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目高光Ｇ"
	PRINTL

	PRINTFORM 　　　Ｂ:
	PRINTBUTTON @"[%TEXT_RJ(TOSTR(CFLAG:ARG:目高光Ｂ), 3)%]", "随机颜色直接入力目高光Ｂ"
	PRINTFORM %TEXT_LJ("", 13)%
	PRINTBUTTON "[-]", "随机颜色減算目高光Ｂ"
	CALL PRINT_BAR, "枠无青色ゲージ", CFLAG:ARG:目高光Ｂ, 255, 50
	PRINTBUTTON "[+]", "随机颜色加算目高光Ｂ"
	PRINTL
	PRINTL

	SELECTCASE ORIGINALCOLOR_BUTTOM_VALUE
	CASE 1
		CALL SELECTS, "_黄色/x1/　/x5/　/x10/　/x25/　/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	CASE 5
		CALL SELECTS, "x1/　/_黄色/x5/　/x10/　/x25/　/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	CASE 10
		CALL SELECTS, "x1/　/x5/　/_黄色/x10/　/x25/　/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	CASE 25
		CALL SELECTS, "x1/　/x5/　/x10/　/_黄色/x25/　/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	CASE 50
		CALL SELECTS, "x1/　/x5/　/x10/　/x25/　/_黄色/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	CASEELSE
		CALL SELECTS, "x1/　/x5/　/x10/　/x25/　/x50", "随机颜色ボタン倍率", @"　ボタン倍率:x%TEXT_LJ(TOSTR(ORIGINALCOLOR_BUTTOM_VALUE), 13)%"
	ENDSELECT
	PRINTL

	CALL SELECTS, REPLACE("默认/夜空/青空/雨空/白/海/部室/喫茶店昼/情人旅館夜/魔界空", VIRTUAL_LOCATION, @"_黄色\/%VIRTUAL_LOCATION%"), "背景の変更", @"　背景:%TEXT_LJ(VIRTUAL_LOCATION, 20)%"
	PRINTL

;ここは髪型変更モードかで選択できるものが増減する
CASE 0
	IF COND("髪型変更のお願い中", ARG) == 0
		CALL SELECTSL, TEXTS("髪色の種類", ARG), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/髪色/") ? _黄色_ # \@髪色:%TEXT_LJ(@"%CONDS("髪色の種類", ARG)%髪", 18)%", "髪"
		PRINTL

		IF COND("種族：史莱姆", ARG)
			CALL SELECTSL, "長", "", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/髪長/") ? _黄色_ # \@髪長:%TEXT_LJ(CONDS("髪長", ARG), 18)%"
		ELSE
			CALL SELECTSL, TEXTS("髪長の種類"), "", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/髪長/") ? _黄色_ # \@髪長:%TEXT_LJ(CONDS("髪長", ARG), 18)%"
		ENDIF
	;	PRINTL
	ENDIF

	IF COND("種族：史莱姆", ARG)
		CALL SELECTSL, "卷髪", "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/後髪/") ? _黄色_ # \@後髪:%TEXT_LJ(CONDS("後髪", ARG), 18)%"
		PRINTL
		CALL SELECTSL, "液状前髪", "", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/前髪/") ? _黄色_ # \@前髪:%TEXT_LJ(CONDS("前髪", ARG), 18)%"
		PRINTL
		CALL SELECTSL, "无特殊髪型", "", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/改髪/") ? _黄色_ # \@改髪:%TEXT_LJ(CONDS("改髪", ARG), 18)%"
		PRINTL
	ELSE
		CALL SELECTSL, TEXTS("後髪の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/後髪/") ? _黄色_ # \@後髪:%TEXT_LJ(CONDS("後髪", ARG), 18)%"
		PRINTL
		CALL SELECTSL, TEXTS("前髪の種類"), "", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/前髪/") ? _黄色_ # \@前髪:%TEXT_LJ(CONDS("前髪", ARG), 18)%"
		PRINTL
		CALL SELECTSL, TEXTS("改髪の種類"), "", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/改髪/") ? _黄色_ # \@改髪:%TEXT_LJ(CONDS("改髪", ARG), 18)%"
		PRINTL
	ENDIF

	CALL SELECTSL, TEXTS("呆毛の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/呆毛/") ? _黄色_ # \@呆毛:%TEXT_LJ(CONDS("呆毛", ARG), 18)%"
	PRINTL
	CALL SELECTSL, @"%TEXTS("挑染の種類")%\/　\/%TEXTS("挑染の色の種類", ARG)%", "挑染", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/挑染/") ? _黄色_ # \@挑染:%TEXT_LJ(@"%CONDS("挑染の種類と色", ARG)%", 18)%"
	PRINTL
	CALL SELECTSL, @"无\/%TEXTS("渐变颜色の色の種類", ARG)%", "渐变颜色", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/渐变颜色/") ? _黄色_ # \@渐变颜色:%TEXT_LJ(@"%CONDS("渐变颜色", ARG)%", 12)%"
	PRINTL

CASE 1, 3
	IF TFLAG:过滤器 == 1
		CALL SELECTSL, TEXTS("瞳色の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/瞳色/") ? _黄色_ # \@瞳色:%TEXT_LJ(CONDS("右瞳色", ARG), 18)%"
		SIF COND("種族：一目", ARG) == 0
			CALL SELECTSL, TEXTS("瞳色の種類"), "左", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/瞳色/") ? _黄色_ # \@左瞳色:%TEXT_LJ(CONDS("左瞳色", ARG), 18)%"
		PRINTL
	ENDIF

	;目５是ったんオミット
	IF COND("種族：一目", ARG)
		IF TFLAG:过滤器 == 1
			CALL SELECTSL, "普通眼/眯眯眼/笑颜/闭眼/〇〇/＞＜/涙目〇〇", "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") ? _黄色_ # \@眼形:%TEXT_LJ(CONDS("右眼形", ARG), 18)%"
		ELSE
			CALL SELECTSL, "普通眼/眯眯眼/笑颜/闭眼/〇〇/＞＜/涙目〇〇", "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") ? _黄色_ # \@眼形:%TEXT_LJ(FACES("眼形の種類", ARG), 18)%"
		ENDIF
	ELSE
		IF TFLAG:过滤器 == 1
			CALL SELECTSL, TEXTS("眼形の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") ? _黄色_ # \@眼形:%TEXT_LJ(CONDS("右眼形", ARG), 18)%"
		ELSE
			CALL SELECTSL, TEXTS("眼形の種類：変化向け"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") ? _黄色_ # \@眼形:%TEXT_LJ(FACES("眼形の種類", ARG), 18)%"
			PRINTL
			CALL SELECTSL, TEXTS("左眼形の種類：変化向け"), "左", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") ? _黄色_ # \@左眼形:%TEXT_LJ(FACES("左眼形の種類", ARG), 18)%"
		ENDIF
	ENDIF
	PRINTL

	IF TFLAG:过滤器 == 1
		CALL SELECTSL, "无/飘忽/半目", "目の変化", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/目の変化") ? _黄色_ # \@目の変化:%TEXT_LJ(CONDS("目の変化", ARG), 18)%"
	ELSE
		CALL SELECTSL, "无/飘忽/半目/睁開", "目の変化", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/目の変化") ? _黄色_ # \@目の変化:%TEXT_LJ(FACES("目の変化の種類", ARG), 18)%"
	ENDIF
	PRINTL

	;黒目の記載追加_2020_06_24_作者Ｉ
	IF TFLAG:过滤器 == 1
		CALL SELECTSL, TEXTS("白眼の種類"), "", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/白眼/") ? _黄色_ # \@白眼:%TEXT_LJ(CONDS("右白眼", ARG), 18)%"
		PRINTL
	ENDIF

	CALL SELECTSL, TEXTS("目の光沢の種類"), "高光", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/高光/") ? _黄色_ # \@光沢:%TEXT_LJ(CONDS("右高光", ARG), 18)%"
	PRINTL

	CALL SELECTSL, TEXTS("まつ毛の色の種類", ARG), "まつ毛", @"\@ STRCOUNT(@"/%STR:颜绘固定%", "/まつ毛/") ? _黄色_ # \@まつ毛色:%TEXT_LJ(@"%CONDS("まつ毛の色", ARG)%", 18)%"
	PRINTL

	IF COND("種族：一目", ARG)
		IF TFLAG:过滤器 == 1
			CALL SELECTSL, "通常眉/憤怒眉/困扰眉", "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眉形/") ? _黄色_ # \@眉形:%TEXT_LJ(CONDS("眉形", ARG), 18)%"
		ELSE
			CALL SELECTSL, "通常眉/憤怒眉/困扰眉", "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眉形/") ? _黄色_ # \@眉形:%TEXT_LJ(FACES("眉形の種類", ARG), 18)%"
		ENDIF
	ELSE
		IF TFLAG:过滤器 == 1
			CALL SELECTSL, TEXTS("眉形の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眉形/") ? _黄色_ # \@眉形:%TEXT_LJ(CONDS("眉形", ARG), 18)%"
		ELSE
			CALL SELECTSL, TEXTS("長さを無視した眉形の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眉形/") ? _黄色_ # \@眉形:%TEXT_LJ(FACES("眉形の種類", ARG), 18)%"
		ENDIF
	ENDIF
	PRINTL

	IF TFLAG:过滤器 == 1
		CALL SELECTSL, TEXTS("嘴形の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/嘴形/") ? _黄色_ # \@嘴形:%TEXT_LJ(CONDS("嘴形", ARG), 18)%"
	ELSE
		CALL SELECTSL, TEXTS("嘴形の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/嘴形/") ? _黄色_ # \@嘴形:%TEXT_LJ(FACES("嘴形の種類", ARG), 18)%"
	ENDIF
	PRINTL

CASE 2
	IF COND("仮想角色", ARG)
		CALL SELECTSL, "人类/獣人/兎獣人/妖狐/天使/悪魔/鬼/竜人/淫魔/吸血鬼/魔界人/史莱姆/一目", "", @"　　種族:%TEXT_LJ(CONDS("種族", ARG), 18)%"
		CALL SELECTSL, "人类耳/精灵耳/魔族耳/動物耳/動物耳２/動物耳３/動物耳４/動物耳５/動物耳６/人鱼耳", "", @"　耳の形:%TEXT_LJ(CONDS("耳の形", ARG), 18)%"
		CALL SELECTSL, "没有/悪魔/悪魔２/悪魔３/悪魔４/魔界人/額短/額長", "角", @"角の形:%TEXT_LJ(CONDS("角の形", ARG), 18)%"
		CALL SELECTSL, "没有/悪魔", "頭羽", @"頭羽の形:%TEXT_LJ(CONDS("頭羽の形", ARG), 18)%"
		CALL SELECTSL, "普通/褐色肌/色白/青肌/色黒", "", @"　肤色:%TEXT_LJ(CONDS("肤色", ARG), 18)%"
		CALL SELECTSL, "普通/苗条/筋肉/豐腴", "肚子周围", @"肚子周围:%TEXT_LJ(CONDS("お腹の見た目", ARG), 18)%"
		CALL SELECTSL, "没有/競泳泳装/高開衩競泳泳装/死库水/新死库水/比基尼胸罩/褶边比基尼胸罩/Micro比基尼胸罩/吊帯衫", "晒痕上", @"晒痕上:%TEXT_LJ(CONDS("晒痕トップ", ARG), 18)%"
		CALL SELECTSL, "没有/比基尼/Micro比基尼/丁字褲/淚珠泳衣/衝浪胖次/男式比基尼", "晒痕下", @"晒痕下:%TEXT_LJ(CONDS("晒痕ボトム", ARG), 18)%"

		IF CONFIG("陰毛")
			SELECTCASE COND("陰毛年齢", ARG)
			CASE 1
				CALL SELECTSL, "白虎/脱毛処理/光滑无毛/剃过留痕/还没長出来", "陰毛の名称：", @"　　陰毛:%TEXT_LJ(CONDS("陰毛", ARG), 18)%"
			CASE 2
				CALL SELECTSL, "白虎/脱毛処理/光滑无毛/剃过留痕/还没長出来/保养完毕/小三角形/長方形/心型/自然/随意生長", "陰毛の名称：", @"　　陰毛:%TEXT_LJ(CONDS("陰毛の形", ARG), 18)%"
			CASE 3
				CALL SELECTSL, "白虎/脱毛処理/光滑无毛/剃过留痕/还没長出来/保养完毕/小三角形/逆三角形/卵型/四角形/長方形/心型/自然/随意生長", "陰毛の名称：", @"　　陰毛:%TEXT_LJ(CONDS("陰毛の形", ARG), 18)%"
			CASE IS >= 4
				CALL SELECTSL, "白虎/脱毛処理/光滑无毛/剃过留痕/無髭/保养完毕/小三角形/逆三角形/卵型/四角形/長方形/心型/自然/随意生長", "陰毛の名称：", @"　　陰毛:%TEXT_LJ(CONDS("陰毛の形", ARG), 18)%"
			ENDSELECT
			CALL SELECTSL, "1/2/3/4", "陰毛年齢", @"陰毛年齢:%TEXT_LJ(@"{COND("陰毛年齢", ARG)}", 18)%"
		ENDIF

		CALL SELECTSL, "没有/基本/羽化/改造/開花/寄生/浸食/堕落/隷属/封入/聖翼", "淫紋：", @"　　淫紋:%TEXT_LJ(CONDS("淫紋の種類", ARG), 18)%"
		CALL SELECTSL, "0/1/2/3/4", "淫紋LV", @"　淫紋LV:%TEXT_LJ(@"{MARK:ARG:淫紋}LV", 18)%"
		CALL SELECTSL, "没有/H型/棒型/十字架型/♂型/♀型/心型", "肚脐环：", @"　肚臍ピ:%TEXT_LJ(CEVENTS("肚脐环", ARG), 18)%"
		CALL SELECTSL, "没有/銀色/金色/赤/緑/紫/青", "恥丘穿環：", @"　恥丘ピ:%TEXT_LJ(CEVENTS("恥丘穿環", ARG), 18)%"
		PRINTL
	ENDIF

	IF COND("仮想角色", ARG) || ARG == MASTER
		CALL SELECTSL, "頬化粧没有/脸谱赤/脸谱青/战妆/光滑", "", @"　頬化粧:%TEXT_LJ(CONDS("頬化粧", ARG), 18)%"
		CALL SELECTSL, "没有/左/鼻/右", "頬傷", @"　　頬傷:%TEXT_LJ(CONDS("頬傷", ARG), 18)%"
		CALL SELECTSL, "没有/左/鼻/右", "頬創口貼", @"頬創口貼:%TEXT_LJ(CONDS("頬創口貼", ARG), 18)%"
		CALL SELECTSL, TEXTS("痣の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/痣/") ? _黄色_ # \@痣:%TEXT_LJ(CONDS("痣", ARG), 18)%"
		CALL SELECTSL, TEXTS("蝴蝶結の種類"), "", @"　\@ STRCOUNT(@"/%STR:颜绘固定%", "/蝴蝶結/") ? _黄色_ # \@蝴蝶結:%TEXT_LJ(CONDS("蝴蝶結", ARG), 18)%"
		IF COND("仮想角色", ARG) || ARG == MASTER
			IF COND("種族：一目", ARG)
				CALL SELECTSL, "无眼鏡/眼罩白/眼罩黒", "", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼鏡/") ? _黄色_ # \@眼鏡:%TEXT_LJ(CONDS("眼鏡", ARG), 18)%"
			ELSE
				CALL SELECTSL, "无眼鏡/眼鏡/专家眼鏡/黑框眼鏡/金丝眼鏡/玳瑁眼鏡/瓶底眼鏡/圈圈眼鏡/瓶底胡须眼鏡/圈圈胡须眼鏡", "", @"　　\@ STRCOUNT(@"/%STR:颜绘固定%", "/眼鏡/") ? _黄色_ # \@眼鏡:%TEXT_LJ(CONDS("眼鏡", ARG), 18)%"
				CALL SELECTSL, "太阳鏡/眼罩白/眼罩黒", "", BL(27)
			ENDIF
		ENDIF
	ENDIF

CASE 4
	CALL SELECTSL, "状態重置/睡眠/甜言蜜语/夸奖/心情差/躁动难忍/空洞/过电/目陰効果/目陰", "", @"　　状態:%TEXT_LJ(CONDS("颜绘コンディション", ARG), 18)%"
	IF COND("種族：一目", ARG)
		CALL SELECTSL, "青ざめ/刚睡醒/憤怒/害羞/惊嚇/小悪魔/闲/红潮恍惚/爱心眼", "", BL(27)
	ELSE
		CALL SELECTSL, "青ざめ/刚睡醒/憤怒/害羞/惊嚇/小悪魔/闲/红潮恍惚/爱心眼/混乱", "", BL(27)
	ENDIF
	PRINTL

	CALL SELECTSL, "脸颊没有/楕円/红晕/婴儿红晕/紅潮/紅潮２/赤面/赤面２/血迹", "", @"　脸颊:%TEXT_LJ(FACES("脸颊の種類", ARG), 18)%"
	PRINTL

	CALL SELECTSL, "没有/憤怒/汗/汗２/汗３/爱心/兴奋/惊讶/睡眠/困倦/開心/・・・", "对话框", @"对话框:%TEXT_LJ(EXTSTR(FACES("对话框の種類", ARG), "对话框"), 18)%"
	CALL SELECTSL, "？/？２/！/尷尬/乱/電球/！？/圆圈/叉叉/爱心大量/圓圈", "对话框", BL(27)
	PRINTL

	CALL SELECTSL, "小物没有/沒點燃的煙/烟/冰/pocky/面包/法棍", "", @"　　小物:%TEXT_LJ(FACES("小物の種類", ARG), 18)%"
	CALL SELECTSL, "挎包/茶/橘子/带洞乳酪/圆形奶酪/本/頭上橘子/啤酒", "", BL(27)
	CALL SELECTSL, "扇子赤/扇子富士山/扇子桜/扇子白/萌え袖/避孕套/带血菜刀/菜刀/叹气/抖抖", "", BL(27)
	CALL SELECTSL, "托下巴/唇边手/頬手/石頭/石頭右/剪刀/剪刀右/布/布右/Ｗ剪刀手/頬杖/頬杖左/Ｗ頬杖", "", BL(27)
	CALL SELECTSL, "对指/不可以/胖次花绳/胖次花绳湿/胖次花绳变化", "", BL(27)

	SIF COND("白色死神", ARG)
		CALL SELECTSL, "オーフェス/オーフェス兴奋/オーフェス汗/オーフェス爱心/オーフェス！/オーフェス？/オーフェス！？/オーフェス電球", "", BL(27)

	PRINTL
	CALL SELECTSL, "精液没有/精液左頬/精液髪/精液右頬/精液Ｂ", "", @"　　精液:%TEXT_LJ(FACES("精液の種類", ARG), 18)%"
	PRINTL
	CALL SELECTSL, "汗没有/頬汗", "", @"　　　汗:%TEXT_LJ(FACES("汗の種類", ARG), 18)%"
	PRINTL
ENDSELECT

CALL MULTILINE, MAX(36 - (LINECOUNT - MEMO_LINECOUNT), 0)

IF CSTR:ARG:颜绘変化 != ""
	PRINTFORML 　现在的表情是:CALL EMOTION_PLUS, "%SUBSTRING(CSTR:ARG:颜绘変化, 0, STRLENS(CSTR:ARG:颜绘変化) - 1)%"
ELSE
	PRINTL
ENDIF

IF COND("髪型変更のお願い中", ARG) == 0
	CALL PRINT_STRL, @"　这様就好？%BL(13)%_BUTTON_[ＯＫ！]_BUTTON_[回到初始状态]_BUTTON_[随机]_BUTTON_[CSTR表示]_BUTTON_[颜绘セーブ]_BUTTON_[颜绘ロード]"
ELSE
	CALL PRINT_STRL, @"　这様就好？%BL(13)%_BUTTON_[ＯＫ！]_BUTTON_[回到初始状态]"
ENDIF

INPUTS
CHOICES = %EXTSTR(RESULTS, "[", "]")%
CLEARLINE 1

;純粋に数字を見る場合
SELECTCASE CHOICES
CASE "5"
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SIMULATE_CLOTHES, ARG
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
CASE "10", "11", "12", "13", "14"
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	TFLAG:过滤器 = TOINT(CHOICES)
	SELECTCASE TFLAG:过滤器
	CASE 10
		MEMO_MASTERCLO = 制服
	CASE 11
		MEMO_MASTERCLO = 体操服
	CASE 12
		MEMO_MASTERCLO = 便装
	CASE 13
		MEMO_MASTERCLO = 外出装
	CASE 14
		MEMO_MASTERCLO = 泳装
	ENDSELECT
	IF SAVESTR:MEMO_MASTERCLO != ""
		STR:衣装記録 = %SAVESTR:MEMO_MASTERCLO%
		CALL SETFLAG, "衣装記録からの復元", MASTER
	ELSE
		CALL SET_COORDINATE, MEMO_MASTERCLO, MASTER
	ENDIF
	CALL SIMULATE_CLOTHES, MASTER
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
CASE "15"
	TFLAG:过滤器 = TOINT(CHOICES)
	CALL SIMULATE_CLOTHES, MASTER, "整理内衣"
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART

CASE "6"
	SIF COND("髪型変更のお願い中", ARG) == 0 && COND("角色メイク中") == 0
		TFLAG:过滤器 = TOINT(CHOICES)

	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART

CASE "0", "1", "2", "3", "4", "5", "6", "10", "11", "12", "13", "14"
	SIF COND("髪型変更のお願い中", ARG) == 0
		TFLAG:过滤器 = TOINT(CHOICES)
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
ENDSELECT

IF STRCOUNT(CHOICES, "随机颜色直接入力")
	MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色直接入力")%
	PRINTL
	PRINTFORML %MEMO_CFLAGNAME%の値を入力してください（0～255）
	CALL INPUT_SELECT, 256
	CFLAG:ARG:MEMO_CFLAGNAME = RESULT
ELSEIF STRCOUNT(CHOICES, "随机颜色減算")
	IF STRCOUNT(CHOICES, "ALL")
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色減算", "ALL")%Ｒ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME - ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色減算", "ALL")%Ｇ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME - ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色減算", "ALL")%Ｂ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME - ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
	ELSE
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色減算")%
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME - ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
	ENDIF
ELSEIF STRCOUNT(CHOICES, "随机颜色加算")
	IF STRCOUNT(CHOICES, "ALL")
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色加算", "ALL")%Ｒ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME + ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色加算", "ALL")%Ｇ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME + ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色加算", "ALL")%Ｂ
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME + ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
	ELSE
		MEMO_CFLAGNAME = %EXTSTR(CHOICES, "随机颜色加算")%
		CFLAG:ARG:MEMO_CFLAGNAME = LIMIT(CFLAG:ARG:MEMO_CFLAGNAME + ORIGINALCOLOR_BUTTOM_VALUE, 0, 255)
	ENDIF
ELSEIF STRCOUNT(CHOICES, "随机颜色ボタン倍率")
	ORIGINALCOLOR_BUTTOM_VALUE = TOINT(EXTSTR(CHOICES, "随机颜色ボタン倍率x") )
ELSEIF STRCOUNT(CHOICES, "背景の変更")
	VIRTUAL_LOCATION = %EXTSTR(CHOICES, "背景の変更")%
	CSTR:ARG:颜绘変化 = %CLEARSTRMATCH(CSTR:ARG:颜绘変化, "BG\=")%

	SELECTCASE VIRTUAL_LOCATION
	CASE "默认"
	CASE "夜空"
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, "BG=0b")%
	CASE "青空"
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, "BG=0c0")%
	CASE "雨空"
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, "BG=0f2")%
	CASE "白"
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, "BG=0a")%
	CASEELSE
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, @"BG=0%VIRTUAL_LOCATION%")%
	ENDSELECT
ENDIF

;颜绘布ツは分岐が多いので専用処理
IF STRCOUNT(@"\/%TEXTS("髪の種類", ARG)%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:髪色 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "髪色")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "髪色")%
	ENDIF
	CSTR:ARG:髪色 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("髪長の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:髪長 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "髪長")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "髪長")%
	ENDIF
	CSTR:ARG:髪長 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("後髪の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:後髪 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "後髪")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "後髪")%
	ENDIF
	CSTR:ARG:後髪 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("前髪の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:前髪 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "前髪")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "前髪")%
	ENDIF
	CSTR:ARG:前髪 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("改髪の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:改髪 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "改髪")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "改髪")%
	ENDIF
	CSTR:ARG:改髪 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("呆毛の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:呆毛 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "呆毛")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "呆毛")%
	ENDIF
	CSTR:ARG:呆毛 = %CHOICES%
ELSEIF CHOICES == "挑染无"
	IF STRCOUNT(CSTR:ARG:挑染, CHOICES)
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "挑染")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "挑染")%
	ENDIF
	CSTR:ARG:挑染 = 挑染无_%CONDS("挑染の色", ARG)%
ELSEIF STRCOUNT(@"\/%TEXTS("挑染の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:挑染 == @"%CHOICES%_%CONDS("挑染の色", ARG)%"
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "挑染")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "挑染")%
	ENDIF

	SELECTCASE CONDS("挑染の色", ARG)
	CASE ""
		CSTR:ARG:挑染 = %CHOICES%_黒
	CASEELSE
		CSTR:ARG:挑染 = %CHOICES%_%CONDS("挑染の色", ARG)%
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("挑染の色の種類", ARG)%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:挑染 == @"%CONDS("挑染の種類", ARG)%_%EXTSTR(CHOICES, "挑染")%"
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "挑染")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "挑染")%
	ENDIF

	SELECTCASE CONDS("挑染の種類", ARG)
	CASE "", "挑染无"
		CSTR:ARG:挑染 = 挑染１_%EXTSTR(CHOICES, "挑染")%
	CASEELSE
		CSTR:ARG:挑染 = %CONDS("挑染の種類", ARG)%_%EXTSTR(CHOICES, "挑染")%
	ENDSELECT
ELSEIF CHOICES == "渐变颜色无"
	IF CSTR:ARG:渐变颜色 == ""
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "渐变颜色")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "渐变颜色")%
	ENDIF
	CSTR:ARG:渐变颜色 =
ELSEIF STRCOUNT(@"\/%TEXTS("渐变颜色の色の種類", ARG)%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:渐变颜色 == EXTSTR(CHOICES, "渐变颜色")
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "渐变颜色")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "渐变颜色")%
	ENDIF
	CSTR:ARG:渐变颜色 = %EXTSTR(CHOICES, "渐变颜色")%
ELSEIF STRCOUNT(@"\/%TEXTS("蝴蝶結の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:蝴蝶結 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "蝴蝶結")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "蝴蝶結")%
	ENDIF
	CSTR:ARG:蝴蝶結 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("瞳色の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:瞳色 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "瞳色")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "瞳色")%
	ENDIF
	CSTR:ARG:瞳色 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("左瞳色の種類")%\/", @"\/%CHOICES%\/")
	IF CONDS("左瞳色", ARG) == SUBSTRINGU(CHOICES, 1, -1)
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "瞳色")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "瞳色")%
	ENDIF
	CSTR:ARG:瞳色 = %CONDS("右瞳色", ARG)%_%SUBSTRINGU(CHOICES, 1, -1)%
	SIF CONDS("左瞳色", ARG) == CONDS("右瞳色", ARG)
		CSTR:ARG:瞳色 = %CONDS("右瞳色", ARG)%
ELSEIF STRCOUNT(@"\/%TEXTS("眼形の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("眼形の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左眼形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("眼形の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左眼形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("眼形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
		ENDIF
	CASEELSE
		IF CSTR:ARG:眼形 == CHOICES
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "眼形")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "眼形")%
		ENDIF
		CALL CHANGE_MAIDFACE, CHOICES, ARG
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("左眼形の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("左眼形の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左眼形の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左眼形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
			;意味のない指示は消す
			SIF FACES("左眼形の種類", ARG) == @"左%FACES("眼形の種類", ARG)%"
				CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左眼形の種類", ARG)%/", "")%
		ENDIF
	CASEELSE
		IF CONDS("左眼形", ARG) == SUBSTRINGU(CHOICES, 1, -1)
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "眼形")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "眼形")%
		ENDIF
		CALL CHANGE_MAIDFACE, CHOICES, ARG
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("白眼の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:白眼 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "白眼")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "白眼")%
	ENDIF
	CSTR:ARG:白眼 = %CHOICES%
ELSEIF STRCOUNT(@"\/%TEXTS("左白眼の種類")%\/", @"\/%CHOICES%\/")
	IF CONDS("左白眼", ARG) == SUBSTRINGU(CHOICES, 1, -1)
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "白眼")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "白眼")%
	ENDIF
	CSTR:ARG:白眼 = %CONDS("右白眼", ARG)%_%SUBSTRINGU(CHOICES, 1, -1)%
	SIF CONDS("左白眼", ARG) == CONDS("右白眼", ARG)
		CSTR:ARG:白眼 = %CONDS("右白眼", ARG)%

ELSEIF STRCOUNT(@"\/%TEXTS("目の光沢の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("目の光沢の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("目の光沢の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("目の光沢の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
			;意味のない指示は消す
			SIF STRCOUNT(CSTR:ARG:颜绘変化, "高光有") == 2 || STRCOUNT(CSTR:ARG:颜绘変化, "高光无") == 2
				CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
		ENDIF
	CASEELSE
		IF CSTR:ARG:高光 == CHOICES
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "高光")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "高光")%
		ENDIF
		CSTR:ARG:高光 = %CHOICES%
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("左目の光沢の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("左目の光沢の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
			;意味のない指示は消す
			SIF STRCOUNT(CSTR:ARG:颜绘変化, "高光有") == 2 || STRCOUNT(CSTR:ARG:颜绘変化, "高光无") == 2
				CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("左目の光沢の種類", ARG)%/", "")%
		ENDIF
	CASEELSE
		IF CONDS("左高光", ARG) == SUBSTRINGU(CHOICES, 1, -1)
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "高光")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "高光")%
		ENDIF
		CSTR:ARG:高光 = %CONDS("右高光", ARG)%_%SUBSTRINGU(CHOICES, 1, -1)%
		SIF CONDS("左高光", ARG) == CONDS("右高光", ARG)
			CSTR:ARG:高光 = %CONDS("右高光", ARG)%
	ENDSELECT

ELSEIF STRCOUNT(@"\/%TEXTS("まつ毛の色の種類", ARG)%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:まつ毛の色 == EXTSTR(CHOICES, "まつ毛")
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "まつ毛")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "まつ毛")%
	ENDIF
	CSTR:ARG:まつ毛の色 = %EXTSTR(CHOICES, "まつ毛")%

ELSEIF STRCOUNT(@"\/%TEXTS("眉形の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("眉形の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("眉形の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("眉形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
		ENDIF
	CASEELSE
		IF CSTR:ARG:眉形 == CHOICES
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "眉形")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "眉形")%
		ENDIF
		CSTR:ARG:眉形 = %CHOICES%
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("嘴形の種類")%\/", @"\/%CHOICES%\/")
	SELECTCASE TFLAG:过滤器
	CASE 3
		IF FACES("嘴形の種類", ARG) == CHOICES
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("嘴形の種類", ARG)%/", "")%
		ELSE
			CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("嘴形の種類", ARG)%/", "")%
			CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
		ENDIF
	CASEELSE
		IF CSTR:ARG:嘴形 == CHOICES
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "嘴形")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "嘴形")%
		ENDIF
		CSTR:ARG:嘴形 = %CHOICES%
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("痣の種類")%\/", @"\/%CHOICES%\/")
	IF CSTR:ARG:痣 == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "痣")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "痣")%
	ENDIF
	CSTR:ARG:痣 = %CHOICES%
ENDIF

;分岐が増えすぎたので添え数字は無視する
SELECTCASE NONUM(CHOICES)
CASE "颜绘セーブ"
	CALL SETFLAG, "颜绘の記録", ARG
	CALL SAVE_MAIDFACE, STR:颜绘記録, ARG
CASE "颜绘ロード"
	CALL SETFLAG, "颜绘の記録", ARG
	CALL LOAD_MAIDFACE, STR:颜绘記録, ARG
CASE "状態重置", "睡眠", "甜言蜜语", "夸奖", "心情差", "躁动难忍", "刚睡醒", "憤怒", "害羞", "惊嚇", "小悪魔", "闲", "红潮恍惚", "过电", "爱心眼", "目陰", "目陰効果", "青ざめ", "空洞", "混乱"
	SELECTCASE CHOICES
	CASE "状態重置"
		CSTR:ARG:颜绘変化 =
	CASE "睡眠", "甜言蜜语", "夸奖", "心情差", "躁动难忍", "刚睡醒", "憤怒", "害羞", "惊嚇", "小悪魔", "闲", "红潮恍惚", "过电", "目陰", "目陰効果", "空洞", "青ざめ"
		IF STRCOUNT(CSTR:ARG:颜绘変化, "爱心眼")
			CSTR:ARG:颜绘変化 = %CHOICES%/爱心眼
		ELSE
			CSTR:ARG:颜绘変化 = %CHOICES%/
		ENDIF
	;爱心眼と混乱は同居しない
	CASE "混乱"
		CSTR:ARG:颜绘変化 = %CHOICES%/
	CASE "爱心眼"
		IF STRCOUNT(CSTR:ARG:颜绘変化, "混乱")
			CSTR:ARG:颜绘変化 = %CHOICES%/
		ELSEIF STRCOUNT(CSTR:ARG:颜绘変化, "爱心眼") == 0
			CSTR:ARG:颜绘変化 += "爱心眼/"
		ENDIF
	ENDSELECT
CASE "随机"
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/髪色/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("髪の種類", ARG) ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/髪長/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("髪長の種類：坊主无") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/前髪/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("前髪の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/後髪/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("後髪の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/改髪/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("改髪の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/呆毛/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("呆毛の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/蝴蝶結/") == 0
		CALL CHANGE_MAIDFACE, TEXTR("无蝴蝶結/无蝴蝶結/无蝴蝶結/无蝴蝶結/両側蝴蝶結/单側蝴蝶結/頭後蝴蝶結/頭上蝴蝶結"), ARG
	IF STRCOUNT(@"/%STR:颜绘固定%", "/挑染/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("挑染の種類") ), ARG
		SELECTCASE CONDS("挑染の種類", ARG)
		CASE "", "挑染无"
		CASEELSE
			CALL CHANGE_MAIDFACE, TEXTR(TEXTS("挑染の色の種類", ARG) ), ARG
		ENDSELECT
	ENDIF
	IF STRCOUNT(@"/%STR:颜绘固定%", "/渐变颜色/") == 0
		IF RAND:3
			CALL CHANGE_MAIDFACE, "渐变颜色无", ARG
		ELSE
			CALL CHANGE_MAIDFACE, TEXTR(TEXTS("渐变颜色の色の種類", ARG) ), ARG
		ENDIF
	ENDIF
	IF STRCOUNT(@"/%STR:颜绘固定%", "/瞳色/") == 0
		CALL CHANGE_MAIDFACE, TEXTR("黒/青/氷水/紫/緑/赤/茶/金/紅/桃/紺/焦茶/深緑/棕/銀"), ARG
		SIF RAND:10 == 0
			CALL CHANGE_MAIDFACE, TEXTR("左黒/左青/左氷水/左紫/左緑/左赤/左茶/左金/左紅/左桃/左白/左紺/左焦茶/左深緑/左棕/左銀"), ARG
	ENDIF

	SIF STRCOUNT(@"/%STR:颜绘固定%", "/眼形/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("眼形の種類：随机向け") ), ARG

	IF STRCOUNT(@"/%STR:颜绘固定%", "/目の変化/") == 0
		IF RAND:4 == 0
			CALL CHANGE_MAIDFACE, TEXTR("飘忽/半目"), ARG
		ELSE
			CALL CHANGE_MAIDFACE, "目の変化无", ARG
		ENDIF
	ENDIF
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/白眼/") == 0
		CALL CHANGE_MAIDFACE, TEXTR("无眼白/无眼白/无眼白/无眼白/白眼/白眼/白眼/白眼/黒目"), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/まつ毛/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("まつ毛の色の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/眉形/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("眉形の種類") ), ARG
	SIF STRCOUNT(@"/%STR:颜绘固定%", "/嘴形/") == 0
		CALL CHANGE_MAIDFACE, TEXTR(TEXTS("嘴形の種類") ), ARG
	IF STRCOUNT(@"/%STR:颜绘固定%", "/眼鏡/") == 0
		IF RAND:3 == 0
			CALL SET_OTHER, TEXTR("眼鏡/专家眼鏡/黑框眼鏡/金丝眼鏡/玳瑁眼鏡/太阳鏡"), ARG
		ELSE
			CALL RESET_OTHER, "眼鏡", ARG
		ENDIF
	ENDIF
	CALL SETFLAG, "無表情颜绘の記録", ARG

CASE "現在的颜绘をベースに変更"
	CALL SETFLAG, "最初の颜绘の記録", ARG
CASE "回到初始状态"
	CALL SETFLAG, "最初の颜绘からの復元", ARG
	CSTR:ARG:颜绘変化 =

CASE "服装を回到初始状态"
	STR:衣装記録 = %STR:最初の衣装%
	CALL SETFLAG, "衣装記録からの復元", ARG
CASE "放弃显示顔绘"
	CFLAG:ARG:颜绘 = 0
	RETURN 0
CASE "ＯＫ！", "CSTR表示"
	PRINTL
	IF COND("髪型変更のお願い中", ARG)
		RETURN 1
	ELSEIF COND("仮想角色", ARG) || NONUM(CHOICES) == "CSTR表示"
		CALL PRINT_STRL,  "この颜绘に対応するCSTRと素質は以下です_黄色_（状態は[状態重置]であると仮定します）"
		PRINTL
		SIF TALENT:ARG:肤色
			PRINTFORML 素質,肤色,{TALENT:ARG:肤色},
		SIF TALENT:ARG:常時晒痕
			PRINTFORML 素質,常時晒痕,1,
		SIF TALENT:ARG:苗条
			PRINTFORML 素質,苗条,{TALENT:ARG:苗条},
		SIF TALENT:ARG:豐腴
			PRINTFORML 素質,豐腴,{TALENT:ARG:豐腴},
		SIF TALENT:ARG:筋肉
			PRINTFORML 素質,筋肉,{TALENT:ARG:筋肉},
		SIF TALENT:ARG:精灵耳
			PRINTFORML 素質,精灵耳,{TALENT:ARG:精灵耳},
		SIF TALENT:ARG:動物耳
			PRINTFORML 素質,動物耳,{TALENT:ARG:動物耳},
		SIF TALENT:ARG:尾巴
			PRINTFORML 素質,尾巴,{TALENT:ARG:尾巴},
		SIF TALENT:ARG:角
			PRINTFORML 素質,角,{TALENT:ARG:角},
		SIF TALENT:ARG:頭羽
			PRINTFORML 素質,頭羽,{TALENT:ARG:頭羽},
		SIF TALENT:ARG:肚脐环
			PRINTFORML 素質,肚脐环,{TALENT:ARG:肚脐环},
		SIF TALENT:ARG:恥丘穿環
			PRINTFORML 素質,恥丘穿環,{TALENT:ARG:恥丘穿環},

		SIF MARK:ARG:淫紋
			PRINTFORML 刻印,淫紋,{MARK:ARG:淫紋},

		SIF CSTR:ARG:晒痕 != ""
			PRINTFORML CSTR,晒痕,%CSTR:ARG:晒痕%,
		IF CONFIG("陰毛")
			SELECTCASE CONDS("陰毛", ARG)
			CASE ""
			CASEELSE
				PRINTFORML CSTR,陰毛的喜好,%CONDS("陰毛", ARG)%,
			ENDSELECT
		ENDIF
		PRINTFORML CSTR,種族,%CSTR:ARG:種族%,
		FOR LCOUNT, 90, 110
			SIF CSTR:ARG:LCOUNT == ""
				CONTINUE
			PRINTFORML CSTR,%CSTRNAME:LCOUNT%,%CSTR:ARG:LCOUNT%,
		NEXT
		SIF REPLACE(CSTR:ARG:CEVENT, "仮想角色/", "") != ""
			PRINTFORML CSTR,CEVENT,%REPLACE(CSTR:ARG:CEVENT, "仮想角色/", "")%,

		IF CHECK_OTHER("眼鏡", ARG)
			PRINTL
			PRINTFORML EVENT_KX1_CLOTHES.ERB 内の CASE "飾品"に
			PRINTFORML CALL SET_OTHER, "%SUBSTRING(CSTR:ARG:飾品, 0, STRLENS(CSTR:ARG:飾品) - 1)%"
		ENDIF
		PRINTL
		PRINTFORML 往CSV(眼鏡等保存有服装数据的ERB)中对应的位置进行复制粘贴的话、角色的颜绘可以变成现在设定的样子。
		PRINTFORMW 依次点击窗口画面上的 ファイル→ログを阴蒂ップボードにコピー→向下滚动 可以这样獲得。
		IF NONUM(CHOICES) == "CSTR表示"
			CLEARLINE LINECOUNT - MEMO_LINECOUNT
			RESTART
		ENDIF
	ELSEIF COND("角色メイク中", ARG) == 0
		PRINTFORMW [%CSTR:ARG:称号%]%NAME:ARG%的顔绘設定完毕。
		CALL SETFLAG, "普段の髪型記録", ARG
		SIF ARG == MASTER
			SAVESTR:飾品 = %OTHER(ARG, "眼鏡")%
	ENDIF
	RETURN 1
CASE "普通"
	TALENT:ARG:肤色 = 0
CASE "褐色肌"
	TALENT:ARG:肤色 = 1
CASE "色白"
	TALENT:ARG:肤色 = 2
CASE "青肌"
	TALENT:ARG:肤色 = 3
CASE "色黒"
	TALENT:ARG:肤色 = 4

CASE "肚子周围普通"
	TALENT:ARG:筋肉 = 0
	TALENT:ARG:苗条 = 0
	TALENT:ARG:豐腴 = 0
	BASE:ARG:腰圍 = BASE:ARG:身高 * (CALCF("苗条倍数", ARG) + CALCF("豐腴倍数", ARG) ) /200
CASE "肚子周围苗条"
	TALENT:ARG:筋肉 = 0
	TALENT:ARG:苗条 = 1
	TALENT:ARG:豐腴 = 0
	BASE:ARG:腰圍 = BASE:ARG:身高 * (CALCF("苗条倍数", ARG) - 1) /100
CASE "肚子周围筋肉"
	TALENT:ARG:筋肉 = 1
	TALENT:ARG:苗条 = 0
	TALENT:ARG:豐腴 = 0
	BASE:ARG:腰圍 = BASE:ARG:身高 * 38 /100
CASE "肚子周围豐腴"
	TALENT:ARG:筋肉 = 0
	TALENT:ARG:苗条 = 0
	TALENT:ARG:豐腴 = 1
	BASE:ARG:腰圍 = BASE:ARG:身高 * (CALCF("豐腴倍数", ARG) + 1) /100

;晒痕は　ボトム＆トップ　と記述されている
CASE "晒痕上没有"
	VARSET LOCALS
	SPLIT CSTR:ARG:晒痕, "＆", LOCALS
	SELECTCASE LOCALS:0
	CASE "", "競泳泳装", "高開衩競泳泳装", "死库水", "新死库水"
		TALENT:ARG:常時晒痕 = 0
		CALL SETFLAG, "晒痕重置", ARG
	CASEELSE
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = %LOCALS:0%＆
	ENDSELECT
CASE "晒痕下没有"
	VARSET LOCALS
	SPLIT CSTR:ARG:晒痕, "＆", LOCALS
	SELECTCASE LOCALS:1
	CASE "", "競泳泳装", "高開衩競泳泳装", "死库水", "新死库水"
		TALENT:ARG:常時晒痕 = 0
		CALL SETFLAG, "晒痕重置", ARG
	CASEELSE
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = ＆%LOCALS:1%
	ENDSELECT
CASE "晒痕上競泳泳装", "晒痕上高開衩競泳泳装", "晒痕上死库水", "晒痕上新死库水"
	TALENT:ARG:常時晒痕 = 1
	CALL SETFLAG, "晒痕", ARG
	CSTR:ARG:晒痕 = %EXTSTR(CHOICES, "晒痕上")%
CASE "晒痕上比基尼胸罩", "晒痕上褶边比基尼胸罩", "晒痕上Micro比基尼胸罩", "晒痕上吊帯衫"
	TALENT:ARG:常時晒痕 = 1
	VARSET LOCALS
	SPLIT CSTR:ARG:晒痕, "＆", LOCALS
	SELECTCASE LOCALS:0
	CASE "", "競泳泳装", "高開衩競泳泳装", "死库水", "新死库水"
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = ＆%EXTSTR(CHOICES, "晒痕上")%
	CASEELSE
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = %LOCALS:0%＆%EXTSTR(CHOICES, "晒痕上")%
	ENDSELECT
CASE "晒痕下比基尼", "晒痕下Micro比基尼", "晒痕下丁字褲", "晒痕下淚珠泳衣", "晒痕下衝浪胖次", "晒痕下男式比基尼"
	TALENT:ARG:常時晒痕 = 1
	VARSET LOCALS
	SPLIT CSTR:ARG:晒痕, "＆", LOCALS
	SELECTCASE LOCALS:1
	CASE "", "競泳泳装", "高開衩競泳泳装", "死库水", "新死库水"
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = %EXTSTR(CHOICES, "晒痕下")%＆
	CASEELSE
		CALL SETFLAG, "晒痕", ARG
		CSTR:ARG:晒痕 = %EXTSTR(CHOICES, "晒痕下")%＆%LOCALS:1%
	ENDSELECT

CASE "晒痕有"
	TALENT:ARG:常時晒痕 = 1
	CALL SETFLAG, "衣装の記録", ARG
	CALL SETFLAG, "晒痕", ARG

CASE "晒痕没有"
	TALENT:ARG:常時晒痕 = 0
	CALL SETFLAG, "晒痕重置", ARG

CASE "陰毛の名称：白虎"
	BASE:ARG:陰毛 = 100
CASE "陰毛の名称：脱毛処理"
	BASE:ARG:陰毛 = 200
CASE "陰毛の名称：光滑无毛"
	BASE:ARG:陰毛 = 300
CASE "陰毛の名称：剃过留痕"
	BASE:ARG:陰毛 = 306
CASE "陰毛の名称：还没長出来", "陰毛の名称：無髭"
	BASE:ARG:陰毛 = 400
CASE "陰毛の名称：保养完毕"
	;陰毛の状態重置
	CALL DEL_CEVENT_GROUP, "陰毛の名称", ARG
	BASE:ARG:陰毛 = 500
CASE "陰毛の名称：小三角形", "陰毛の名称：逆三角形", "陰毛の名称：卵型", "陰毛の名称：四角形", "陰毛の名称：長方形", "陰毛の名称：心型", "陰毛の名称：長方形"
	;陰毛の状態重置
	CALL DEL_CEVENT_GROUP, "陰毛の名称", ARG
	BASE:ARG:陰毛 = 500
	CALL SET_CEVENT, CHOICES, ARG
CASE "陰毛の名称：自然"
	BASE:ARG:陰毛 = 600
CASE "陰毛の名称：随意生長"
	BASE:ARG:陰毛 = 700

CASE "陰毛年齢"
	SELECTCASE CHOICES
	CASE "陰毛年齢1"
		TALENT:ARG:陰毛年齢 = 1
		SIF BASE:ARG:陰毛 >= 500
			BASE:ARG:陰毛 = 400
	CASE "陰毛年齢2"
		TALENT:ARG:陰毛年齢 = 2
	CASE "陰毛年齢3"
		TALENT:ARG:陰毛年齢 = 3
	CASE "陰毛年齢4"
		TALENT:ARG:陰毛年齢 = 4
	ENDSELECT

CASE "淫紋：没有"
	CALL DEL_CEVENT_GROUP, "淫紋", ARG
	MARK:ARG:淫紋 = 0
CASE "淫紋：基本", "淫紋：羽化", "淫紋：改造", "淫紋：開花", "淫紋：寄生", "淫紋：浸食", "淫紋：堕落", "淫紋：隷属", "淫紋：封入", "淫紋：聖翼"
	CALL DEL_CEVENT_GROUP, "淫紋", ARG
	CALL SET_CEVENT, CHOICES, ARG
	SIF MARK:ARG:淫紋 == 0
		MARK:ARG:淫紋 = 1
CASE "淫紋LV"
	SELECTCASE CHOICES
	CASE "淫紋LV0"
		MARK:ARG:淫紋 = 0
	CASE "淫紋LV1"
		MARK:ARG:淫紋 = 1
	CASE "淫紋LV2"
		MARK:ARG:淫紋 = 2
	CASE "淫紋LV3"
		MARK:ARG:淫紋 = 3
	CASE "淫紋LV4"
		MARK:ARG:淫紋 = 4
	ENDSELECT

;肚脐环
CASE "肚脐环：没有"
	CALL DEL_CEVENT_GROUP, "肚脐环", ARG
	TALENT:ARG:肚脐环 = 0
CASE "肚脐环：H型", "肚脐环：棒型", "肚脐环：十字架型", "肚脐环：♂型", "肚脐环：♀型", "肚脐环：心型"
	CALL DEL_CEVENT_GROUP, "肚脐环", ARG
	CALL SET_CEVENT, CHOICES, ARG
	TALENT:ARG:肚脐环 = 1
;恥丘穿環
CASE "恥丘穿環：没有"
	CALL DEL_CEVENT_GROUP, "恥丘穿環", ARG
	TALENT:ARG:恥丘穿環 = 0
CASE "恥丘穿環：銀色", "恥丘穿環：金色", "恥丘穿環：赤", "恥丘穿環：緑", "恥丘穿環：紫", "恥丘穿環：青"
	CALL DEL_CEVENT_GROUP, "恥丘穿環", ARG
	CALL SET_CEVENT, CHOICES, ARG
	TALENT:ARG:恥丘穿環 = 1

CASE "目の変化无"
	SELECTCASE TFLAG:过滤器
	CASE 3
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "半目/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "飘忽/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "睁開/", "")%
	CASEELSE
		IF STRCOUNTS(CSTR:ARG:眼形, "飘忽", "半目") == 0
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "目の変化")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "目の変化")%
		ENDIF
		CALL CHANGE_MAIDFACE, CHOICES, ARG
	ENDSELECT
CASE "目の変化飘忽"
	SELECTCASE TFLAG:过滤器
	CASE 3
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "飘忽/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "睁開/", "")%
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%飘忽/
	CASEELSE
		IF STRCOUNT(CSTR:ARG:眼形, "飘忽")
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "目の変化")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "目の変化")%
		ENDIF
		CALL CHANGE_MAIDFACE, "飘忽", ARG
	ENDSELECT
CASE "目の変化半目"
	SELECTCASE TFLAG:过滤器
	CASE 3
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "半目/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "睁開/", "")%
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%半目/
	CASEELSE
		IF STRCOUNT(CSTR:ARG:眼形, "半目")
			STR:颜绘固定 = %SETSTR(STR:颜绘固定, "目の変化")%
		ELSE
			STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "目の変化")%
		ENDIF
		CALL CHANGE_MAIDFACE, "半目", ARG
	ENDSELECT
CASE "目の変化睁開"
	SELECTCASE TFLAG:过滤器
	CASE 3
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "半目/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "飘忽/", "")%
		CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, "睁開/", "")%
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%睁開/
	ENDSELECT

CASE "頬化粧没有"
	CSTR:ARG:頬 = %CLEARSTR(CSTR:ARG:頬, "脸谱赤", "脸谱青", "战妆", "光滑")%
CASE "脸谱赤", "脸谱青", "战妆", "光滑"
	CSTR:ARG:頬 = %CLEARSTR(CSTR:ARG:頬, "脸谱赤", "脸谱青", "战妆", "光滑")%
	CSTR:ARG:頬 = %SETSTR(CSTR:ARG:頬, CHOICES)%
CASE "頬傷没有"
	CSTR:ARG:頬 = %CLEARSTR(CSTR:ARG:頬, "頬傷左", "頬傷鼻", "頬傷右")%
CASE "頬創口貼没有"
	CSTR:ARG:頬 = %CLEARSTR(CSTR:ARG:頬, "頬創口貼左", "頬創口貼鼻", "頬創口貼右")%
CASE "頬傷左", "頬傷鼻", "頬傷右", "頬創口貼左", "頬創口貼鼻", "頬創口貼右"
	IF STRCOUNT(CSTR:ARG:頬, CHOICES)
		CSTR:ARG:頬 = %CLEARSTR(CSTR:ARG:頬, CHOICES)%
	ELSE
		CSTR:ARG:頬 = %SETSTR(CSTR:ARG:頬, CHOICES)%
	ENDIF
CASE "人类耳"
	TALENT:ARG:精灵耳 = 0
	TALENT:ARG:動物耳 = 0
CASE "精灵耳"
	TALENT:ARG:精灵耳 = 1
	TALENT:ARG:動物耳 = 0
CASE "魔族耳"
	TALENT:ARG:精灵耳 = 2
	TALENT:ARG:動物耳 = 0
CASE "動物耳"
	TALENT:ARG:精灵耳 = 0
	TALENT:ARG:動物耳 = MAX(TOINT(TOHALF(REPLACE(CHOICES, "動物耳", "") ) ), 1)
CASE "人鱼耳"
	TALENT:ARG:精灵耳 = 0
	TALENT:ARG:動物耳 = 10

CASE "角没有"
	TALENT:ARG:角 = 0
CASE "角悪魔"
	TALENT:ARG:動物耳 = 0
	TALENT:ARG:角 = MAX(TOINT(TOHALF(REPLACE(CHOICES, "角悪魔", "") ) ), 1)
CASE "角魔界人"
	TALENT:ARG:動物耳 = 0
	TALENT:ARG:角 = 10
CASE "角額短"
	TALENT:ARG:動物耳 = 0
	TALENT:ARG:角 = 20
CASE "角額長"
	TALENT:ARG:動物耳 = 0
	TALENT:ARG:角 = 21

CASE "頭羽没有"
	TALENT:ARG:頭羽 = 0
CASE "頭羽悪魔"
	TALENT:ARG:頭羽 = 1

CASE "獣人", "兎獣人", "悪魔", "鬼", "竜人", "人类", "妖狐", "天使", "淫魔", "吸血鬼", "魔界人", "史莱姆", "一目"
	CALL SETFLAG, CHOICES, ARG

CASE "无眼鏡"
	IF OTHER(ARG, "眼鏡") == ""
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "眼鏡")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "眼鏡")%
	ENDIF
	CALL RESET_OTHER, "眼鏡", ARG
CASE "眼鏡", "专家眼鏡", "黑框眼鏡", "金丝眼鏡", "玳瑁眼鏡", "瓶底眼鏡", "圈圈眼鏡", "瓶底胡须眼鏡", "圈圈胡须眼鏡", "太阳鏡", "眼罩白", "眼罩黒"
	IF OTHER(ARG, "眼鏡") == CHOICES
		STR:颜绘固定 = %SETSTR(STR:颜绘固定, "眼鏡")%
	ELSE
		STR:颜绘固定 = %CLEARSTR(STR:颜绘固定, "眼鏡")%
	ENDIF
	CALL SET_OTHER, CHOICES, ARG
;エモプラ関係
CASE "脸颊没有", "赤面", "楕円", "红晕", "婴儿红晕", "紅潮", "血迹"
	CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("脸颊の種類", ARG)%/", "")%
	SIF CHOICES != "脸颊没有"
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
CASE "对话框没有", "对话框憤怒", "对话框汗", "对话框爱心", "对话框兴奋", "对话框惊讶", "对话框睡眠", "对话框困倦", "对话框開心", "对话框・・・", "对话框！", "对话框？", "对话框爱心大量", "对话框圓圈", "对话框尷尬", "对话框乱", "对话框電球", "对话框！？", "对话框圆圈", "对话框叉叉"
	CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("对话框の種類", ARG)%/", "")%
	SIF CHOICES != "对话框没有"
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
CASE "小物没有", "挎包", "茶", "橘子", "本", "頭上橘子", "頭上太阳鏡", "烟", "沒點燃的煙", "带洞乳酪", "圆形奶酪", "冰", "pocky", "面包", "法棍", "避孕套", "扇子赤", "扇子富士山", "扇子桜", "扇子白", "萌え袖", "菜刀", "带血菜刀", "托下巴", "唇边手", "頬手", "石頭", "剪刀", "布", "石頭右", "剪刀右", "布右", "Ｗ剪刀手", "頬杖", "頬杖左", "Ｗ頬杖", "对指", "不可以", "胖次花绳", "胖次花绳湿", "胖次花绳变化", "叹气", "抖抖", "啤酒", "オーフェス", "オーフェス兴奋", "オーフェス汗", "オーフェス爱心", "オーフェス！", "オーフェス？", "オーフェス！？", "オーフェス電球"
	CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("小物の種類", ARG)%/", "")%
	SELECTCASE CHOICES
	CASE "小物没有"
	CASE "萌え袖"
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
		IF CLO("萌え袖可能", ARG) == ""
			PRINTL
			CALL PRINT_STRW, "黄色_萌え袖は、V领毛衣or运动衫or睡衣or露肩夹克着用時に起きます"
		ENDIF
	CASEELSE
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
	ENDSELECT
CASE "精液没有"
	CSTR:ARG:颜绘変化 = %CLEARSTR(CSTR:ARG:颜绘変化, "精液右頬", "精液左頬", "精液髪", "精液Ｂ")%
CASE "精液右頬", "精液左頬", "精液髪", "精液Ｂ"
	IF STRCOUNT(CSTR:ARG:颜绘変化, CHOICES)
		CSTR:ARG:颜绘変化 = %CLEARSTR(CSTR:ARG:颜绘変化, CHOICES)%
	ELSE
		CSTR:ARG:颜绘変化 = %SETSTR(CSTR:ARG:颜绘変化, CHOICES)%
	ENDIF
CASE "汗没有", "頬汗"
	CSTR:ARG:颜绘変化 = %REPLACE(CSTR:ARG:颜绘変化, @"%FACES("汗の種類", ARG)%/", "")%
	SIF CHOICES != "汗没有"
		CSTR:ARG:颜绘変化 = %CSTR:ARG:颜绘変化%%CHOICES%/
ENDSELECT

;一部改髪が無理な身体的特徴
IF TALENT:ARG:角 && COND("種族：魔界人", ARG) + COND("種族：悪魔", ARG)
	SELECTCASE CONDS("改髪", ARG)
	CASE "团子頭双马尾ール", "団子頭", "高侧盘頭", "三股辫编发"
		PRINTL
		PRINTFORMW 因为角等其他附属物的形状现在制定的发型改变是不被允许的。
		CSTR:ARG:改髪 = 无特殊髪型
	ENDSELECT
ELSEIF COND("種族：淫魔", ARG) || (COND("種族：魔界人", ARG) && TALENT:ARG:翼)
	SELECTCASE CONDS("改髪", ARG)
	CASE "团子頭双马尾ール", "団子頭", "高侧盘頭", "三股辫编发"
		PRINTL
		PRINTFORMW 因为角等其他附属物的形状现在制定的发型改变是不被允许的。
		CSTR:ARG:改髪 = 无特殊髪型
	ENDSELECT
ENDIF

CLEARLINE LINECOUNT - MEMO_LINECOUNT
RESTART

@FACES(ARGS, ARG)
#FUNCTIONS
#DIM LCOUNT
#DIMS MEMOS

SIF ARG == 0 && TARGET
	ARG = TARGET

VARSET MEMOS
VARSET LOCALS
SPLIT TEXTS(ARGS), "/", LOCALS

SELECTCASE ARGS
;これだけ特殊
CASE "精液の種類"
	FOR LCOUNT, 0, 100
		SELECTCASE LOCALS:LCOUNT
		CASE ""
			BREAK
		CASEELSE
			SIF STRCOUNT(@"/%CSTR:ARG:颜绘変化%/", @"/%LOCALS:LCOUNT%/")
				MEMOS += @"%EXTSTR(LOCALS:LCOUNT, "精液")%"
		ENDSELECT
	NEXT
	SIF MEMOS != ""
		RETURNF MEMOS
CASEELSE
	FOR LCOUNT, 0, 100
		SELECTCASE LOCALS:LCOUNT
		CASE ""
			BREAK
		CASEELSE
			SIF STRCOUNT(@"/%CSTR:ARG:颜绘変化%/", @"/%LOCALS:LCOUNT%/")
				RETURNF LOCALS:LCOUNT
		ENDSELECT
	NEXT
ENDSELECT
RETURNF "没有"

;-------------------------------------------------
;角色ARGの颜绘を弄るための関数
;使っても使わなくてもよい
;-------------------------------------------------
@CHANGE_MAIDFACE, ARGS, ARG
;眼形が飘忽or半目状態か
#DIMS CHANGE_EYE

SIF ARG == 0 && TARGET > 0
	ARG = TARGET

CHANGE_EYE =
SELECTCASE ARGS
CASE "飘忽", "半目"
	CHANGE_EYE = %ARGS%
CASEELSE
	IF STRCOUNT(@"/%STR:颜绘固定%", "/目の変化/")
		IF STRCOUNT(CSTR:ARG:眼形, "飘忽") && STRCOUNT(CSTR:ARG:眼形, "半目")
			CHANGE_EYE = 飘忽半目
		ELSEIF STRCOUNT(CSTR:ARG:眼形, "飘忽")
			CHANGE_EYE = 飘忽
		ELSEIF STRCOUNT(CSTR:ARG:眼形, "半目")
			CHANGE_EYE = 半目
		ENDIF
	ENDIF
ENDSELECT

;颜绘布ツは分岐が多いので専用処理
IF STRCOUNT(@"\/%TEXTS("髪の種類", ARG)%\/", @"\/%ARGS%\/")
	CSTR:ARG:髪色 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("髪長の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:髪長 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("後髪の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:後髪 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("前髪の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:前髪 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("改髪の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:改髪 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("呆毛の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:呆毛 = %ARGS%
ELSEIF ARGS == "挑染无"
	CSTR:ARG:挑染 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("挑染の種類")%\/", @"\/%ARGS%\/")
	SELECTCASE CONDS("挑染の色", ARG)
	CASE ""
		CSTR:ARG:挑染 = %ARGS%_黒
	CASEELSE
		CSTR:ARG:挑染 = %ARGS%_%CONDS("挑染の色", ARG)%
	ENDSELECT
ELSEIF STRCOUNT(@"\/%TEXTS("挑染の色の種類", ARG)%\/", @"\/%ARGS%\/")
	SELECTCASE CONDS("挑染の種類", ARG)
	CASE "", "挑染无"
		CSTR:ARG:挑染 = 挑染１_%EXTSTR(ARGS, "挑染")%
	CASEELSE
		CSTR:ARG:挑染 = %CONDS("挑染の種類", ARG)%_%EXTSTR(ARGS, "挑染")%
	ENDSELECT
ELSEIF ARGS == "渐变颜色无"
	CSTR:ARG:渐变颜色 =
ELSEIF STRCOUNT(@"\/%TEXTS("渐变颜色の色の種類", ARG)%\/", @"\/%ARGS%\/")
	CSTR:ARG:渐变颜色 = %EXTSTR(ARGS, "渐变颜色")%
ELSEIF STRCOUNT(@"\/%TEXTS("蝴蝶結の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:蝴蝶結 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("瞳色の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:瞳色 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("左瞳色の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:瞳色 = %CONDS("右瞳色", ARG)%_%SUBSTRINGU(ARGS, 1, -1)%
ELSEIF STRCOUNT(@"\/%TEXTS("右瞳色の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:瞳色 = %SUBSTRINGU(ARGS, 1, -1)%_%CONDS("左瞳色", ARG)%

ELSEIF STRCOUNT(@"\/%TEXTS("眼形の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:眼形 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("左眼形の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:眼形 = %CONDS("右眼形", ARG)%_%SUBSTRINGU(ARGS, 1, -1)%
ELSEIF STRCOUNT(@"\/%TEXTS("右眼形の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:眼形 = %SUBSTRINGU(ARGS, 1, -1)%_%CONDS("左眼形", ARG)%

ELSEIF STRCOUNT(@"\/%TEXTS("白眼の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:白眼 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("左白眼の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:白眼 = %CONDS("右白眼", ARG)%_%SUBSTRINGU(ARGS, 1, -1)%
ELSEIF STRCOUNT(@"\/%TEXTS("右白眼の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:白眼 = %SUBSTRINGU(ARGS, 1, -1)%_%CONDS("左白眼", ARG)%

ELSEIF STRCOUNT(@"\/%TEXTS("目の光沢の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:高光 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("左目の光沢の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:高光 = %CONDS("右高光", ARG)%_%SUBSTRINGU(ARGS, 1, -1)%
	SIF CONDS("左高光", ARG) == CONDS("右高光", ARG)
		CSTR:ARG:高光 = %CONDS("右高光", ARG)%

ELSEIF STRCOUNT(@"\/%TEXTS("まつ毛の色の種類", ARG)%\/", @"\/%ARGS%\/")
	CSTR:ARG:まつ毛の色 = %EXTSTR(ARGS, "まつ毛")%
ELSEIF STRCOUNT(@"\/%TEXTS("眉形の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:眉形 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("嘴形の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:嘴形 = %ARGS%
ELSEIF STRCOUNT(@"\/%TEXTS("痣の種類")%\/", @"\/%ARGS%\/")
	CSTR:ARG:痣 = %ARGS%
ENDIF

SELECTCASE ARGS
;飘忽と半目を取り除く
CASE "目の変化无"
	CSTR:ARG:眼形 = %REPLACE(CSTR:ARG:眼形, "飘忽", "")%
	CSTR:ARG:眼形 = %REPLACE(CSTR:ARG:眼形, "半目", "")%
CASEELSE
	IF CHANGE_EYE != ""
		;最初に半目と飘忽を取り除く
		CSTR:ARG:眼形 = %REPLACE(CSTR:ARG:眼形, "飘忽", "")%
		CSTR:ARG:眼形 = %REPLACE(CSTR:ARG:眼形, "半目", "")%

		VARSET LOCALS
		SPLIT CSTR:ARG:眼形, "_", LOCALS

		;まず右目
		SELECTCASE NONUM(CONDS("右眼形", ARG) )
		CASE "普通眼", "吊眼", "垂眼", "斜眼", "水灵眼", "縦長目", "三白眼", "重度三白眼"
			LOCALS += @"%CHANGE_EYE%"
		ENDSELECT

		;ついで左目
		IF LOCALS:1 != ""
			SELECTCASE NONUM(CONDS("左眼形", ARG) )
			CASE "普通眼", "吊眼", "垂眼", "斜眼", "水灵眼", "縦長目", "三白眼", "重度三白眼"
				LOCALS = %LOCALS%_%CONDS("左眼形", ARG)%%CHANGE_EYE%
			ENDSELECT
		ENDIF
		CSTR:ARG:眼形 = %LOCALS%
	ENDIF
ENDSELECT

;目のCSTRが左右同じ場合の操作
SIF CONDS("左瞳色", ARG) == CONDS("右瞳色", ARG)
	CSTR:ARG:瞳色 = %CONDS("右瞳色", ARG)%
SIF CONDS("左眼形", ARG) == CONDS("右眼形", ARG)
	CSTR:ARG:眼形 = %CONDS("右眼形", ARG)%
SIF CONDS("左白眼", ARG) == CONDS("右白眼", ARG)
	CSTR:ARG:白眼 = %CONDS("右白眼", ARG)%


code:
@SAVEGAME_EX, ARG
#DIMS SAVEINFO_EX
#DIM CHOICE
#DIM MEMO_DATANO
#DIM MEMO_LINECOUNT

MEMO_LINECOUNT = LINECOUNT
PRINTL

$REDRAW_SAVEDATA
REDRAW 0

SIF LASTLOAD_NO >= 0
	CALL PRINT_STRL, @"現在は_黄色_{LASTLOAD_NO, 2}番のデータ_をロードしてPLAYしています。"
PRINTL 要存到几号位里呢？
CALL PRINT_SAVEDATA, ARG

PRINTL [100] 不、再考慮一下吧。

$INPUT_DATANUM
INPUT

SELECTCASE RESULT
CASE 100
	;バージョン格子をON
	FLAG:VERUP格子 = 1
	REDRAW 1
	RETURN 1
CASE 101 TO 105
	ARG = RESULT - 101
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
CASE 0 TO 98
	CHOICE = RESULT
	CHKDATA CHOICE
	;元のSAVEGAMEではRESULT == 0のとき以外は確認をとらない
	IF RESULT == 0
		PRINTL 已经有存档在这里了。要覆盖吗？
		PRINTLC [0] 是
		PRINTLC [1] 否
		PRINTL

		$YESNO_INPUT_LOOP
		INPUT

		IF RESULT == 1
			GOTO REDRAW_SAVEDATA
		ELSEIF RESULT != 0
			CLEARLINE 1
			REUSELASTLINE 無効な値です
			GOTO YESNO_INPUT_LOOP
		ENDIF
	ENDIF

	;バージョン格子を初期化
	FLAG:VERUP格子 = 0
	FLAG:ロード時台詞 = 0
	REDRAW 1

	SAVEINFO_EX = %GETTIMES_CUSTOM()% %SAVEINFO_MESSAGE()%
	SAVEDATA CHOICE, SAVEINFO_EX

	LOADGLOBAL
	GLOBAL:最新ＳＬ番号 = CHOICE
	SAVEGLOBAL

	FLAG:VERUP格子 = 1
	FLAG:ロード時台詞 = 1
	RETURN 1
ENDSELECT

CLEARLINE 1
REUSELASTLINE 無効な値です
GOTO INPUT_DATANUM

@LOADGAME_EX, ARG
#DIM CHOICE
#DIM MEMO_LINECOUNT

MEMO_LINECOUNT = LINECOUNT
PRINTL

$REDRAW_SAVEDATA
REDRAW 0

SIF LASTLOAD_NO >= 0
	CALL PRINT_STRL, @"現在加载的是_黄色_{LASTLOAD_NO, 2}番_的数据哟。"
PRINTPLAIN 要读几号档呢？下面的是最近的存档数据、[99]是自动存档
PRINTL
CALL PRINT_SAVEDATA, ARG

CHKDATA 99
PRINTFORML  [99] %RESULTS:0%
PRINTL [100] 不、再考慮一下吧。

$INPUT_DATANUM
INPUT

SELECTCASE RESULT
CASE 100
	REDRAW 1
	RETURN 1
CASE 101 TO 105
	ARG = RESULT - 101
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
CASE 0 TO 99
	CHOICE = RESULT
	CHKDATA CHOICE
	;RESULT == 0ならロード可能
	IF RESULT != 0
		PRINTVL CHOICE
		PRINTL 没有数据
		GOTO REDRAW_SAVEDATA
	ENDIF
	REDRAW 1

	LOADGLOBAL
	GLOBAL:最新ＳＬ番号 = CHOICE
	SAVEGLOBAL

	LOADDATA CHOICE

	RETURN 1
ENDSELECT

CLEARLINE 1
REUSELASTLINE 無効な値です
GOTO INPUT_DATANUM

@PRINT_SAVEDATA, ARG
#DIM LCOUNT
#DIM LCOUNT2
#DIM LCOUNT3
#DIM NUM_SHOWLATEST
#DIM NO_SAVETIME, 100
#DIM SAVETIME_VALUE, 100
#DIM MEMO_LINECOUNT
#DIMS TEXT_PAGESELECT

VARSET NO_SAVETIME, 99
VARSET SAVETIME_VALUE
VARSET LOCAL

NUM_SHOWLATEST = 10
;直近のセーブデータをNUM_SHOWLATEST個表示させる
FOR LCOUNT, 0, 99
	CHKDATA LCOUNT
	SAVETIME_VALUE:LCOUNT = REGET_TIME(RESULTS)

	FOR LCOUNT2, 0, NUM_SHOWLATEST
		SIF SAVETIME_VALUE:LCOUNT < SAVETIME_VALUE:(NO_SAVETIME:LCOUNT2)
			CONTINUE

		FOR LCOUNT3, 1, NUM_SHOWLATEST
			SIF NUM_SHOWLATEST - LCOUNT3 == LCOUNT2
				BREAK
			NO_SAVETIME:(NUM_SHOWLATEST - LCOUNT3) = NO_SAVETIME:(NUM_SHOWLATEST - LCOUNT3 - 1)
		NEXT

		NO_SAVETIME:LCOUNT2 = LCOUNT
		BREAK
	NEXT
NEXT

FOR LCOUNT, 0, 20
	SELECTCASE LCOUNT + ARG*20
	CASE IS >= 100
		PRINTFORML
	CASEELSE
		CHKDATA LCOUNT + ARG*20
		SIF LASTLOAD_NO == LCOUNT + ARG*20
			SETCOLOR DEF_COLOR("黄色")
		PRINTFORML  [{LCOUNT + ARG*20, 2}] %RESULTS%
		RESETCOLOR
	ENDSELECT
NEXT
PRINTL

SETCOLOR DEF_COLOR("緑")
MEMO_LINECOUNT = LINECOUNT
FOR LCOUNT, 0, NUM_SHOWLATEST
	SIF SAVETIME_VALUE:(NO_SAVETIME:LCOUNT) == 0
		BREAK

	CHKDATA NO_SAVETIME:LCOUNT

	SIF LASTLOAD_NO == NO_SAVETIME:LCOUNT
		SETCOLOR DEF_COLOR("黄色")

	PRINTFORML  [{NO_SAVETIME:LCOUNT, 2}] %RESULTS%
	SETCOLOR DEF_COLOR("水色")
NEXT
RESETCOLOR
SIF LINECOUNT > MEMO_LINECOUNT
	PRINTL

TEXT_PAGESELECT =
TEXT_PAGESELECT += " "
FOR LCOUNT, 0, 5
	SELECTCASE LCOUNT
	CASE ARG
		TEXT_PAGESELECT += @"_灰色_NOBUTTON_ [×]{20*LCOUNT}～{20*(LCOUNT+1)-1} _"
	CASEELSE
		TEXT_PAGESELECT += @"[{101+LCOUNT}]{20*LCOUNT}～{20*(LCOUNT+1)-1} "
	ENDSELECT
NEXT
CALL PRINT_STRL, TEXT_PAGESELECT

RETURN

;セーブデータの文字列ARGSから記録された年月日時間に対応した数字を返させる
;値が大きいほど新しい
@REGET_TIME(ARGS)
#FUNCTION
#DIM LCOUNT

VARSET LOCALS
FOR LCOUNT, 0, 5
	LOCALS += @"%SUBSTRING(ARGS, LCOUNT*3, 2)%"
NEXT
RETURNF TOINT(LOCALS)

@GETTIMES_CUSTOM()
#FUNCTIONS
#DIMS TIMEINFO
;カスタム時間表示の例
;年。下二桁のみに簡略化…つまり２桁固定でいい
TIMEINFO = {(GETTIME() / 10000000000000) % 100}
;月
LOCAL = (GETTIME() / 100000000000) % 100
TIMEINFO = %TIMEINFO%/\@ LOCAL < 10 ? 0 # \@{LOCAL}
;日
LOCAL = (GETTIME() / 1000000000) % 100
TIMEINFO = %TIMEINFO%/\@ LOCAL < 10 ? 0 # \@{LOCAL}
;時
LOCAL = ((GETTIME() / 10000000) % 100) % 24
TIMEINFO = %TIMEINFO% \@ LOCAL < 10 ? 0 # \@{LOCAL}
;分
LOCAL = (GETTIME() / 100000) % 100
TIMEINFO = %TIMEINFO%:\@ LOCAL < 10 ? 0 # \@{LOCAL}

RETURNF TIMEINFO

@SAVEINFO_MESSAGE()
#FUNCTIONS
#DIMS SAVEINFO
#DIM LCOUNT
#DIM CHOICE

SAVEINFO = {DAY, 3}日%TEXTS("季節")%(%TEXTS("曜日")%)%TEXTS("時間")%

IF TARGET
	SAVEINFO += @" %TEXT_LJ(NAME:TARGET, 16)%"
	IF TALENT:相思相愛
		SAVEINFO += "相"
	ELSEIF TALENT:恋慕
		SAVEINFO += "恋"
	ELSE
		SAVEINFO += "--"
	ENDIF
	IF TALENT:淫乱
		SAVEINFO += "淫"
	ELSE
		SAVEINFO += "--"
	ENDIF
	IF CFLAG:睡眠
		SAVEINFO += "眠"
	ELSE
		SAVEINFO += "--"
	ENDIF
ENDIF

SAVEINFO += @" {CHARANUM-1}人"
IF CHARANUM-1 >= 3
	SAVEINFO += "("
	;優先順位上位5名を表示する
	FOR LCOUNT, 2, 8
		CHOICE = FINDCHARA(CFLAG:優先順位, LCOUNT, 2)
		SIF CHOICE <= 0
			BREAK
		SELECTCASE LCOUNT
		CASE 7
			SAVEINFO += ",…"
			BREAK
		CASE IS > 2
			SAVEINFO += ","
		ENDSELECT

		SAVEINFO += @"%CONDS("短縮名", CHOICE)%"
	NEXT
	SAVEINFO += ")"
ENDIF

SAVEINFO = %TEXT_LJ(SAVEINFO, NUM("折り返し文字数") - 5 - 9 - 7 - 7 - 6 - 2)% %VERS_eraAkumaMaid()%

SIF FLAG:周回数
	SAVEINFO += @" {FLAG:周回数 + 1}周目"

RETURNF SAVEINFO

@TITLE_LOADGAME
;标题画面のロードでも独自のロード画面を使う場合、@TITLE_LOADGAMEを定義する
;@TITLE_LOADGAMEが定義されていると、標準のロード画面の代わりにTITLE_LOADGAMEが呼ばれる。
CALL LOADGAME_EX
RETURN
;RETURNすると标题へ返回。

;オートセーブの処理を独自に行う場合、@SYSTEM_AUTOSAVEを定義する
;@SYSTEM_AUTOSAVEが定義されていると、標準のオートセーブの代わりにSYSTEM_AUTOSAVEが呼ばれる。
;(@SYSTEM_AUTOSAVEを定義し什麼也不做でRETURNすればオートセーブを禁止できる。その場合はLOADDATA_EXから99番のデータに関する記述を削除しておくと親切)
@SYSTEM_AUTOSAVE
#DIMS SAVEINFO_EX
SAVEINFO_EX = %GETTIMES_CUSTOM()% %SAVEINFO_MESSAGE()%
SAVEDATA 99, SAVEINFO_EX

@EVENTLOAD
#PRI

license: unknown


code:
@SHOW_CHARA_ANALYSIS
#DIM MEMO_TARGET
CALL SHOW_CHARA_LIST_PRE, "分析"
CALL SHOW_CHARA_LIST, "分析"

$INPUT_LOOP
INPUT
IF RESULT == 100
	RETURN 0
ELSEIF RESULT < MASTER || RESULT >= CHARANUM
	GOTO INPUT_LOOP
ENDIF

MEMO_TARGET = TARGET
TARGET = RESULT

CALL ANALYSIS

TARGET = MEMO_TARGET

RESTART

@ANALYSIS
#DIM LCOUNT
#DIM MEMO_SOURCE, 30
#DIM MEMO_CUP, 30
#DIM MEMO_PALAM, 30
#DIM MEMO_MOOD

MEMO_MOOD = FLAG:情緒
FOR LCOUNT, 0, 30
	MEMO_SOURCE:LCOUNT = SOURCE:LCOUNT
	MEMO_CUP:LCOUNT = CUP:LCOUNT
	MEMO_PALAM:LCOUNT = PALAM:LCOUNT
NEXT

CALL ANALYSIS_CALC
PRINTFORML ～%CALLNAME:TARGET%の識別結果～

;-------------------------------------------------
;結果表示
;-------------------------------------------------
CALL SHOW_UP

TCVAR:基本実行値 = 0
CALL COM_ORDER, 1

LOCAL = RESULT

PRINTFORML 調教実行値補正:\@ LOCAL ? {LOCAL} # 无 \@

CALL ANALYSIS_CALC_SB

FLAG:情緒 = MEMO_MOOD
FOR LCOUNT, 0, 30
	SOURCE:LCOUNT = MEMO_SOURCE:LCOUNT
	CUP:LCOUNT = MEMO_CUP:LCOUNT
	PALAM:LCOUNT = MEMO_PALAM:LCOUNT
NEXT

WAIT

;パワー平衡
@ANALYSIS_CALC_SB, ARG
#DIM LCOUNT
#DIM MEMO_SELECTCOM
#DIM MEMO_BASE

VARSET LOCAL
MEMO_BASE = BASE:PLAYER:絶頂
MEMO_SELECTCOM = SELECTCOM

;扒成裸体ので、衣装を記録
FOR LCOUNT, 40, 50
	LOCAL:LCOUNT = EQUIP:LCOUNT
	LOCALS:LCOUNT = %CSTR:LCOUNT%
NEXT

CALL SETFLAG, "扒成裸体", TARGET

CALL ANALYSIS_CALC_SB_MAIN, ARG

BASE:PLAYER:絶頂 = MEMO_BASE
SELECTCOM = MEMO_SELECTCOM
;服装を戻す
FOR LCOUNT, 40, 50
	EQUIP:LCOUNT = LOCAL:LCOUNT
	CSTR:LCOUNT = %LOCALS:LCOUNT%
NEXT

@ANALYSIS_CALC_SB_MAIN, ARG
#DIM LCOUNT
#DIM VAL_ATK
#DIM VAL_DEF
#DIM VAL_POW
;PALAMとSOURCEとCUPとTEQUIPとFLAG:情緒を記録
#DIM MEMO_SOURCE, 30
#DIM MEMO_CUP, 30
#DIM MEMO_PALAM, 30
#DIM MEMO_TEQUIP, 100
#DIM MEMO_MOOD

MEMO_MOOD = FLAG:情緒
FOR LCOUNT, 0, 30
	MEMO_SOURCE:LCOUNT = SOURCE:LCOUNT
	MEMO_CUP:LCOUNT = CUP:LCOUNT
	MEMO_PALAM:LCOUNT = PALAM:LCOUNT
NEXT
FOR LCOUNT, 0, 100
	MEMO_TEQUIP:LCOUNT = TEQUIP:LCOUNT
NEXT

VARSET VAL_ATK
VARSET VAL_DEF
VARSET VAL_POW
;愛撫から奉仕までを見る
FOR LCOUNT, 0, 300
	;ＣＶＡＢＭ快感系などの指令抜粋
	SELECTCASE TRAINNAME:LCOUNT
	CASE "舐陰", "肛門愛撫", "舐陰莖", "胸愛撫", "接吻", "阴部愛撫", "尿道指挿入"
	CASE "正常位", "肛門後背位", "磨鏡", "乳頭奸", "尿道正常位"
	CASE "手淫", "口交", "乳交", "足交", "肛門奉仕", "奉仕舐陰"
	CASE "正常位奉仕", "Ａ後背位奉仕"
	CASEELSE
		CONTINUE
	ENDSELECT

	SELECTCOM = LCOUNT

	TRYCALLFORM COM_ABLE{SELECTCOM}
	SIF RESULT == 0
		CONTINUE

	VARSET PALAM
	VARSET SOURCE
	VARSET CUP
	VARSET TEQUIP

	BASE:PLAYER:絶頂 = 0
	;条件はかなり良いもので試算
	PALAM:Ｖ潤 = 30000
	PALAM:Ａ潤 = 30000
	PALAM:恭順 = 30000
	PALAM:欲情 = 30000
	FLAG:情緒 = 160

	TRYCALLFORM SOURCE_COM{SELECTCOM}, 100
	CALL SAMEN_CHECK_PLAYER

	CALL CALC_SOURCE

	;VAL_DEFが感度の100以下切捨て、VAL_ATKが攻撃力の100以下切捨て
	VAL_DEF = MAX(VAL_DEF, CUP:快Ｃ, CUP:快Ｖ, CUP:快Ａ, CUP:快Ｂ, CUP:快Ｍ) / 100 * 100
	VAL_ATK = MAX(VAL_ATK, BASE:PLAYER:絶頂) / 100 * 100
NEXT

VARSET TFLAG
VARSET PALAM

IF ARG
	;敏感度
	SELECTCASE VAL_DEF
	;CASE IS >= 120000
	;	SETCOLOR DEF_COLOR("ショッキング粉紅")
	CASE IS >= 80000
		SETCOLOR DEF_COLOR("粉紅")
	CASE IS >= 40000
		SETCOLOR DEF_COLOR("爱心粉紅")
	CASE IS >= 20000
		SETCOLOR DEF_COLOR("黄色")
	ENDSELECT
	PRINTFORM {VAL_DEF, 8}
	RESETCOLOR

	;攻撃力
	SELECTCASE VAL_ATK
	;CASE IS >= MAXBASE:MASTER:絶頂 * 4
	;	SETCOLOR DEF_COLOR("ショッキング粉紅")
	CASE IS >= MAXBASE:MASTER:絶頂 * 3
		SETCOLOR DEF_COLOR("粉紅")
	CASE IS >= MAXBASE:MASTER:絶頂 * 2
		SETCOLOR DEF_COLOR("爱心粉紅")
	CASE IS >= MAXBASE:MASTER:絶頂
		SETCOLOR DEF_COLOR("黄色")
	ENDSELECT
	PRINTFORM {VAL_ATK, 8}
	RESETCOLOR
ELSE
	PRINTFORML 敏感度:{VAL_DEF, 7}
	PRINTFORML 攻撃力:{VAL_ATK, 7}
ENDIF

;VAL_POWは優位度。※優位度は、MASTERとTARGETの技量比。50未満ならばMASTERが優勢
;お互いが弱すぎる時
IF VAL_DEF < 1000 && VAL_ATK < 1000
	VAL_POW = 50
ELSE
	VAL_POW = 100 - (VAL_DEF * 100 / (VAL_DEF + VAL_ATK * 10000 / MAXBASE:PLAYER:絶頂) )
ENDIF

SIF ARG == 0
	PRINTFORM 手強さ:
PRINTFORM {VAL_POW, 3}/100 …
SELECTCASE VAL_POW
CASE IS <= 20
	SETCOLOR DEF_COLOR("爱心粉紅")
	PRINTFORM 楽勝
CASE IS <= 40
	SETCOLOR DEF_COLOR("黄色")
	PRINTFORM 優勢
CASE IS <= 60
	PRINTFORM 平手
CASE IS <= 80
	SETCOLOR DEF_COLOR("水色")
	PRINTFORM 劣勢
CASEELSE
	SETCOLOR DEF_COLOR("青")
	PRINTFORM 無理
ENDSELECT
RESETCOLOR
PRINTL

FLAG:情緒 = MEMO_MOOD
FOR LCOUNT, 0, 30
	SOURCE:LCOUNT = MEMO_SOURCE:LCOUNT
	CUP:LCOUNT = MEMO_CUP:LCOUNT
	PALAM:LCOUNT = MEMO_PALAM:LCOUNT
NEXT
FOR LCOUNT, 0, 100
	TEQUIP:LCOUNT = MEMO_TEQUIP:LCOUNT
NEXT

@ANALYSIS_CALC
#DIM LCOUNT, 2
#DIM MEMO_TARGET
MEMO_TARGET = TARGET

;雛形角色で数値の基本値算出
ADDCHARA 99
TARGET = CHARANUM - 1
BASE:精力 = 10
ABL:Ｃ感覚 = 1
ABL:Ｖ感覚 = 1
ABL:Ａ感覚 = 1
ABL:Ｂ感覚 = 1
ABL:Ｍ感覚 = 1
TALENT:処女 = 0
TALENT:女性 = 1

VARSET LOCAL

CALL ANALYSIS_CALC_MAIN, "技巧補正有些"
FOR LCOUNT, 0, 30
	LOCAL:LCOUNT = MAX(CUP:LCOUNT, 1)
	;PRINTFORML %PALAMNAME:LCOUNT% {LOCAL:LCOUNT}
NEXT
;表示されていた角色を白紙に戻す
DELCHARA CHARANUM-1

TARGET = MEMO_TARGET
CALL ANALYSIS_CALC_MAIN, "技巧補正有些"
;-------------------------------------------------
;結果の計算
;-------------------------------------------------
FOR LCOUNT, 0, 30
	SIF PALAMNAME:LCOUNT == ""
		CONTINUE
	;PRINTFORM %PALAMNAME:LCOUNT% {CUP:LCOUNT}
	CUP:LCOUNT = CUP:LCOUNT * 1000 / LOCAL:LCOUNT
	;PRINTFORML →{CUP:LCOUNT}
NEXT

@ANALYSIS_CALC_MAIN, ARGS
#DIM MEMO_PLAYER_ABL
SELECTCOM = -1
PREVCOM = -1

;ARGS == "技巧補正有些"のときのみ機能
MEMO_PLAYER_ABL = ABL:PLAYER:技巧

SELECTCASE ARGS
CASE "技巧補正有些"
	ABL:PLAYER:技巧 = ABL:技巧
ENDSELECT

FLAG:情緒 = 160
VARSET PALAM
CALL SETFLAG, "調教外潤滑追加", 30000
PALAM:恭順 = 30000
PALAM:欲情 = 30000
VARSET SOURCE, 1000
;ＣＶＡＢＭ感覚等はSOURCEの基本値が多いという仕組みなので、ここで代入しておく
SOURCE:Ｃ快楽 = CALCF("Ｃ刺激", 0)
SOURCE:Ｖ快楽 = CALCF("Ｖ刺激", 0)
SOURCE:Ａ快楽 = CALCF("Ａ刺激", 0)
SOURCE:Ｂ快楽 = CALCF("Ｂ刺激", 0)
SOURCE:Ｍ快楽 = CALCF("Ｍ刺激", 0)
VARSET CUP

;-------------------------------------------------
;ソースの計算
;-------------------------------------------------
CALL CALC_SOURCE

FLAG:情緒 = 0
VARSET PALAM

ABL:PLAYER:技巧 = MEMO_PLAYER_ABL

@SHOW_UP
#DIM LCOUNT

;獲得PALAMの倍率表示
FOR LCOUNT, 0, 30
	SIF PALAMNAME:LCOUNT == ""
		CONTINUE
	SIF CUP:LCOUNT / 100 == 10
		CONTINUE

	SELECTCASE LCOUNT
	CASE 10 TO 19
		SELECTCASE CUP:LCOUNT/1000
		CASE IS >= 50
			SETCOLOR DEF_COLOR("ショッキング粉紅")
		CASE IS >= 20
			SETCOLOR DEF_COLOR("粉紅")
		CASE IS >= 10
			SETCOLOR DEF_COLOR("爱心粉紅")
		CASE IS >= 5
			SETCOLOR DEF_COLOR("黄色")
		CASE 0
			SETCOLOR DEF_COLOR("青")
		ENDSELECT
	CASE 0 TO 4, IS >= 20
		SELECTCASE CUP:LCOUNT/1000
		CASE IS >= 6
			SETCOLOR DEF_COLOR("粉紅")
		CASE IS >= 4
			SETCOLOR DEF_COLOR("爱心粉紅")
		CASE IS >= 2
			SETCOLOR DEF_COLOR("黄色")
		CASE 0
			SETCOLOR DEF_COLOR("青")
		ENDSELECT
	CASEELSE
		SELECTCASE CUP:LCOUNT/1000
		CASE IS >= 2
			SETCOLOR DEF_COLOR("青")
		CASE 0
			SETCOLOR DEF_COLOR("爱心粉紅")
		ENDSELECT
	ENDSELECT

	PRINTFORML %PALAMNAME:LCOUNT%…%TEXTS("0.001", CUP:LCOUNT)%倍

	RESETCOLOR
NEXT


code:
;-----------------------------------------------------------
;角色の登録番号・名前・体力・其他ステータスの整形表示を行う
;-----------------------------------------------------------
@PRINT_NUM_NAME, ARGS, ARG
#DIM MEMO
#DIM MEMO_TARGET
#DIM LCOUNT
;登録番号付き名前表示
SELECTCASE ARGS
CASE "顔出し頻度変更"
	IF CFLAG:ARG:顔出し頻度
		CALL PRINT_COLORTEXT, "△", DEF_COLOR("水色")
	ELSE
		CALL PRINT_COLORTEXT, "○", DEF_COLOR("黄色")
	ENDIF
CASEELSE
	SELECTCASE ARG
	;ASSI:1は指导者の証
	CASE ASSI:1
		SELECTCASE ARG
		CASE TARGET
			CALL PRINT_COLORTEXT, "＠", DEF_COLOR("緑")
		CASEELSE
			CALL PRINT_COLORTEXT, "α", DEF_COLOR("緑")
		ENDSELECT
	CASE TARGET
		CALL PRINT_COLORTEXT, "○", DEF_COLOR("黄色")
	CASEELSE
		PRINT
	ENDSELECT
ENDSELECT

LOCALS =
SELECTCASE ARGS
CASE "助手変更"
	IF (CONFIG("助手への指示") && ABL:ARG:助手 == 0) || COND("助手可能", ARG) == 0
		LOCALS = ×
		SETCOLOR DEF_COLOR("灰色")
	ENDIF
CASE "淫紋"
	SIF COND("淫紋刻印可能", ARG) == 0
		LOCALS = ×
CASE "partner変更"
	SIF COND("現在不在", ARG)
		LOCALS = ×
ENDSELECT
SIF LOCALS == ""
	LOCALS = {ARG, 2}

PRINTFORM [%LOCALS%]

SELECTCASE ARGS
CASE "助手変更"
	SIF ARG == ASSI
		SETCOLOR DEF_COLOR("緑")
CASEELSE
	SIF ARG == TARGET
		SETCOLOR DEF_COLOR("黄色")
ENDSELECT

PRINTFORM %TEXT_LJ(NAME:ARG, 17)%

RESETCOLOR

SELECTCASE ARGS
CASE "能力表示", "partner変更", "顔出し頻度変更"
	PRINTPLAINFORM  好感度:{CFLAG:ARG:好感度, 5} 欲求
	CALL PRINT_BAR, "欲求ゲージ", BASE:ARG:欲求不満, 100, 5
CASE "叫出来Ｈ"
	PRINTPLAINFORM  好感度:{CFLAG:ARG:好感度, 5}

	SELECTCASE BASE:ARG:欲求不満
	CASE IS >= 100
		PRINTFORM  欲求:100\%
	CASEELSE
		PRINTFORM  欲求:{BASE:ARG:欲求不満, 2}％
	ENDSELECT
	CALL PRINT_BAR, "欲求ゲージ", BASE:ARG:欲求不満, 100, 5

	PRINTFORM  精力:{BASE:ARG:精力, 3}
	CALL PRINT_BAR, "欲求ゲージ", BASE:ARG:精力, MAXBASE:ARG:精力, 5

CASE "体力と精力"
	;体力の表示
	SIF BASE:ARG:体力 < 0
		BASE:ARG:体力 = 0
	PRINTPLAINFORM {BASE:ARG:体力, 5}/{MAXBASE:ARG:体力, 5}
	CALL PRINT_BAR, "減少ゲージ", BASE:ARG:体力, MAXBASE:ARG:体力, 5
	PRINTFORM {100*BASE:ARG:体力/MAXBASE:ARG:体力, 3}\%
	;精力の表示
	SIF BASE:ARG:精力 < 0
		BASE:ARG:精力 = 0
	PRINTFORM {BASE:ARG:精力, 3}/{MAXBASE:ARG:精力, 3}
	CALL PRINT_BAR, "減少ゲージ", BASE:ARG:精力, MAXBASE:ARG:精力, 5
	PRINTFORM {100*BASE:ARG:精力/MAXBASE:ARG:精力, 3}\%
	PRINTL
	RETURN 0
CASE "约会"
	;夏は泳装の表示
	IF COND("夏", ARG)
		IF CSTR:ARG:今年の泳装 != "" && COND("今年の泳装選択済", ARG)
			CALL PRINT_STR, "泳装購入:_爱心粉紅_済"
		ELSE
			CALL PRINT_STR, "泳装購入:未"
		ENDIF
	ELSE
		SIF BASE:ARG:体力 < 0
			BASE:ARG:体力 = 0
		CALL PRINT_BAR, "減少ゲージ", BASE:ARG:体力, MAXBASE:ARG:体力, 5
		PRINTFORM {100*BASE:ARG:体力/MAXBASE:ARG:体力, 3}\%
	ENDIF
CASE "３围閲覧"
	CALL NEW_PRINT_3SIZE, ARG, "一覧表示"
	RETURN 0
CASE "ABLUP"
	MEMO_TARGET = TARGET
	TARGET = ARG

	FOR LCOUNT, 0, 32
		;性別の問題などで表示されないものを選別
		SELECTCASE ABLNAME:LCOUNT
		CASE "", "Ｐ感覚"
			CONTINUE
		CASE "Ｖ感覚"
			IF TALENT:男性
				PRINTFORM --
				CONTINUE
			ENDIF
		CASE "Ｖ拡張"
			SIF TALENT:男性
				CONTINUE
			;ＶＡ拡張度を手動で不给場合は不顯示
			SIF CONFIG("ＶＡ拡張の手動ＬＶＵＰ") == 0
				CONTINUE
		CASE "Ａ拡張"
			;ＶＡ拡張度を手動で不给場合は不顯示
			SIF CONFIG("ＶＡ拡張の手動ＬＶＵＰ") == 0
				CONTINUE
		ENDSELECT

		TRYCALLFORM IS_ABLUP{LCOUNT}
		IF RESULT && ABL:LCOUNT < 99
			SETCOLOR DEF_COLOR("イエロー")
			PRINTFORM %SUBSTRING(ABLNAME:LCOUNT, 0, 2)%
		ELSE
			PRINTFORM --
		ENDIF
		RESETCOLOR
	NEXT

	IF COND("素質獲得可能")
		SETCOLOR DEF_COLOR("イエロー")
		PRINTFORM 経
	ELSE
		PRINTFORM --
	ENDIF
	RESETCOLOR

	CALL IS_ABLUP98
	IF RESULT
		SETCOLOR DEF_COLOR("イエロー")
		PRINTFORM 屈
	ELSE
		PRINTFORM --
	ENDIF
	RESETCOLOR

	TARGET = MEMO_TARGET
	PRINTL
	RETURN 0
CASE "分析"
	CALL PRINT_BAR, "欲求ゲージ", BASE:ARG:欲求不満, 100, 5

	;好感度が2500以上
	SIF CFLAG:ARG:好感度 >= 2500
		SETCOLOR DEF_COLOR("爱心粉紅")
	PRINTFORM  {CFLAG:ARG:好感度, 8}
	RESETCOLOR

	SIF COND("ご無沙汰", ARG)
		SETCOLOR DEF_COLOR("暗黄色")
	PRINTFORM {COND("調教空白期間", ARG), 4}日
	RESETCOLOR

	SWAP TARGET, ARG
	CALL ANALYSIS_CALC_SB, 1
	SWAP TARGET, ARG

	RETURN 0
CASE "助手変更"
	SIF (CONFIG("助手への指示") && ABL:ARG:助手 == 0) || COND("助手可能", ARG) == 0
		SETCOLOR DEF_COLOR("灰色")
	IF CONFIG("助手への指示")
		CALL ASSI_LIST_INDICATE, ARG
	ELSE
		CALL ASSI_LIST_ABL, ARG
	ENDIF
	PRINTL
	RESETCOLOR
	RETURN 0
CASE "コス確認"
	CALL PRINT_DRESSL, ARG, "短縮表示"
	RETURN 0
CASE "避妊措置"
	CALL PRINT_N, ARG
	IF CFLAG:ARG;口服避孕薬
		SETCOLOR DEF_COLOR("イエロー")
		PRINTFORM  口服避孕薬服用中
		RESETCOLOR
	ELSEIF TALENT:ARG:避妊の護符
		SETCOLOR DEF_COLOR("イエロー")
		PRINTFORM  避妊の護符
		RESETCOLOR
	ENDIF
	PRINTFORM \@ TALENT:ARG:処女 ? 処女 # ---- \@
	CALL PRINT_E, ARG, ARGS
	PRINTL
	RETURN 0
CASE "淫紋"
	SELECTCASE MARK:ARG:淫紋
	CASE 1 TO 4
		SETCOLOR DEF_COLOR("爱心粉紅")
	;ちょっと目に温柔的ない色かもしれない
	;CASE 4
	;	SETCOLOR DEF_COLOR("ショッキング粉紅")
	ENDSELECT

	IF TALENT:ARG:男性
		PRINTFORM  -------
	ELSE
		PRINTFORM  淫紋LV{MARK:ARG:淫紋}
	ENDIF

	RESETCOLOR

	PRINTFORM  \@ TALENT:ARG:処女 ? 処女 # ---- \@
CASE "調教知識"
	IF TALENT:ARG:調教知識
		PRINTFORML CONDS("調教知識", ARG)
	ELSE
		PRINTFORML 没有
	ENDIF
	RETURN 0
CASE "胸圍"
	IF TALENT:ARG:巨乳 >= 3
		PRINT  超乳
	ELSEIF TALENT:ARG:巨乳 == 2
		PRINT  爆乳
	ELSEIF TALENT:ARG:巨乳
		PRINT  巨乳
	ELSEIF TALENT:ARG:貧乳
		PRINT  貧乳
	ELSE
		PRINT  並乳
	ENDIF
	CALL NEW_PRINT_3SIZE, ARG, "一覧表示"
	RETURN 0

CASE "臀圍"
	IF COND("巨尻", ARG) >= 3
		PRINT 超尻
	ELSEIF COND("巨尻", ARG) == 2
		PRINT 爆尻
	ELSEIF COND("巨尻", ARG)
		PRINT 巨尻
	ELSEIF COND("小尻", ARG)
		PRINT 小尻
	ELSE
		PRINT 並尻
	ENDIF
	CALL NEW_PRINT_3SIZE, ARG, "一覧表示"
	RETURN 0

CASE "身高"
	IF TALENT:ARG:高大
		PRINT  高大
	ELSEIF TALENT:ARG:娇小
		PRINT  娇小
	ELSE
		PRINT  平均
	ENDIF
	CALL NEW_PRINT_3SIZE, ARG, "一覧表示"
	RETURN 0

CASE "肤色"
	IF TALENT:ARG:肤色
		PRINTFORM  %TEXT_RJ(CONDS("肤色", ARG), 6)%
	ELSE
		PRINTFORM    普通
	ENDIF
CASE "繰り越し角色"
	IF CFLAG:ARG:繰り越し角色
		CALL PRINT_STR, " _H"
	ELSE
		PRINT  -
	ENDIF
	CALL PRINT_T, ARG
	PRINTFORM  Ｈ回数:{EXP:ARG:Ｈ回数, 3} 性処理回数:{EXP:ARG:性処理経験, 3} 好感度:{CFLAG:ARG:好感度, 6}
	PRINTL
	RETURN 1
CASE "陰毛＆腋毛"
	PRINTFORML 陰毛：%TEXT_LJ(CONDS("陰毛", ARG), 10)%　\@ CONFIG("腋毛") ? %TEXTS("腋")%毛：%CONDS("腋毛", ARG)% # \@
	RETURN 0
ENDSELECT

CALL PRINT_T, ARG

CALL PRINT_E, ARG, ARGS

CALL PRINT_N, ARG

PRINTL

;-----------------------------------------------------------
;角色のステータス表示2
;-----------------------------------------------------------
@PRINT_T, ARG
IF TALENT:ARG:女性
	PRINTFORM  %UNI("女性")%
ELSEIF TALENT:ARG:扶她
	PRINTFORM  %UNI("扶她")%
ELSEIF COND("伪娘", ARG)
	PRINTFORM  %UNI("伪娘")%
ELSEIF TALENT:ARG:男性
	PRINTFORM  %UNI("男性")%
ENDIF

;恋慕・淫乱の表示
IF TALENT:ARG:相思相愛
	PRINT 愛
ELSEIF TALENT:ARG:恋慕
	PRINT 恋
ELSE
	PRINT --
ENDIF

IF TALENT:ARG:淫乱
	PRINT 淫
ELSE
	PRINT --
ENDIF

;特化部位の表示
IF TALENT:ARG:淫壷
	PRINT 壷
ELSEIF TALENT:ARG:Ｖ性向
	PRINT Ｖ
ELSE
	PRINT --
ENDIF
IF TALENT:ARG:尻穴狂い
	PRINT 尻
ELSEIF TALENT:ARG:Ａ性向
	PRINT Ａ
ELSE
	PRINT --
ENDIF
IF TALENT:ARG:淫乳
	PRINT 乳
ELSEIF TALENT:ARG:Ｂ性向
	PRINT Ｂ
ELSE
	PRINT --
ENDIF
IF TALENT:ARG:淫核
	PRINT 核
ELSEIF TALENT:ARG:Ｃ性向
	PRINT Ｃ
ELSE
	PRINT --
ENDIF
IF TALENT:ARG:蕩唇
	PRINT 唇
ELSEIF TALENT:ARG:Ｍ性向
	PRINT Ｍ
ELSE
	PRINT --
ENDIF
IF TALENT:ARG:尿道狂
	PRINT 尿
ELSE
	PRINT --
ENDIF
IF MARK:ARG:淫紋
	PRINT 紋
ELSE
	PRINT --
ENDIF

@PRINT_E, ARG, ARGS
PRINT
IF COND("性処理中", ARG)
	SETCOLOR DEF_COLOR("黄色")
	PRINTBUTTON "性処理", 2000 + ARG
ELSE
	PRINTFORM ------
ENDIF
RESETCOLOR

SELECTCASE ARGS
CASE "叫出来Ｈ"

CASE "避妊措置"
	SELECTCASE COND("欲求不満", ARG)
	CASE IS >= 3
		SETCOLOR DEF_COLOR("粉紅")
		PRINTFORM  欲求不満
	CASE 2
		SETCOLOR DEF_COLOR("爱心粉紅")
		PRINTFORM  欲求不満
	CASE 1
		SETCOLOR DEF_COLOR("イエロー")
		PRINTFORM  欲求不満
	CASEELSE
		IF COND("ご無沙汰", ARG)
			SETCOLOR DEF_COLOR("暗黄色")
			PRINTFORM  ご無沙汰
		ELSE
			PRINTFORM  --------
		ENDIF
	ENDSELECT
	RESETCOLOR
CASEELSE
	IF COND("同居：一直", ARG)
		PRINTFORM  同居:常時
	ELSEIF COND("同居：一周間", ARG)
		PRINTFORM  同居:{COND("残り同居日数", ARG), 2}日
	ELSEIF COND("同居：仅周末", ARG)
		PRINTFORM  同居:週末
	ELSE
		PRINTFORM  ---------
	ENDIF
ENDSELECT

@PRINT_N, ARG
;表示ズレ対策（「＋危」が黄色版）
SETCOLOR SETCOLOR_DUMMY()
IF TALENT:ARG:男性
	PRINTFORM  %TEXT_RJ(CONDS("阴茎尺寸", ARG), 6)%
ELSEIF BASE:ARG:育児中
	PRINTFORM  子
	IF TALENT:ARG:妊娠 == 3
		PRINTFORM ＋産
	ELSEIF TALENT:ARG:妊娠 == 2
		PRINTFORM ＋臨
	ELSEIF TALENT:ARG:妊娠
		PRINTFORM ＋妊
	;ELSEIF COND("妊娠中", ARG)
	;	PRINTFORM ＋潜
	ELSEIF COND("排卵中", ARG)
		CALL PRINT_STR, "ショッキング粉紅_＋危"
	ELSEIF COND("発情期", ARG)
		CALL PRINT_STR, "爱心粉紅_＋発"
	ELSEIF COND("着床済", ARG)
		CALL PRINT_STR, "爱心粉紅_＋着"
	ELSEIF COND("避妊中", ARG)
		PRINTFORM ＋避
	ELSEIF COND("安全日", ARG)
		PRINTFORM ＋安
	ELSEIF COND("危険日", ARG)
		CALL PRINT_STR, "イエロー_＋危"
	ELSE
		PRINTFORM 育て
	ENDIF
ELSEIF TALENT:ARG:妊娠 == 3
	PRINTFORM  出産日
ELSEIF TALENT:ARG:妊娠 == 2
	PRINTFORM   臨月
ELSEIF TALENT:ARG:妊娠
	PRINTFORM  妊娠中
;ELSEIF COND("妊娠中", ARG)
;	PRINTFORM  潜伏期
;ELSEIF COND("種族：人形", ARG) || COND("種族：自动人形", ARG)
;	PRINTFORM  ×妊娠

ELSEIF COND("着床済", ARG)
	CALL PRINT_STR, "爱心粉紅_ 着床済"
ELSEIF TALENT:ARG:事后避孕药
	PRINTFORM  避妊済
ELSEIF COND("受精済", ARG)
	CALL PRINT_STR, "爱心粉紅_ 受精済"
ELSEIF COND("排卵中", ARG)
	CALL PRINT_STR, "ショッキング粉紅_ 超危険"
ELSEIF COND("発情期", ARG)
	CALL PRINT_STR, "爱心粉紅_ 発情期"
ELSEIF TALENT:ARG:未成熟
	PRINTFORM  未成熟
ELSEIF COND("避妊中", ARG)
	PRINTFORM  避妊中
ELSEIF COND("安全日", ARG)
	PRINTFORM  安全日
ELSEIF COND("危険日", ARG)
	CALL PRINT_STR, "イエロー_ 危険日"
ELSE
	PRINTFORM  ------
ENDIF
RESETCOLOR

;IF EXP:ARG:Ｈ回数 && CFLAG:ARG:前回お相手日
;	SELECTCASE DAY - CFLAG:ARG:前回お相手日
;	CASE 0
;		CALL PRINT_STR, "爱心粉紅_ 本日Ｈ済"
;	CASE IS > 7
;		CALL PRINT_STR, "青_ ご無沙汰"
;	CASEELSE
;		PRINT  --------
;	ENDSELECT
;ELSE
;	PRINT  --------
;ENDIF

;胎内の精液量
IF COND("妊娠可能", ARG)
	PRINT
	IF TALENT:ARG:Ａ妊娠体質
		IF CFLAG:ARG:Ａ已中出
			CALL PRINT_BAR, "爱心粉紅ゲージ",COND("Ａ胎内の精液量", ARG), 100000, 5
		ELSE
			CALL PRINT_BAR, "白色ゲージ",COND("Ａ胎内の精液量", ARG), 100000, 5
		ENDIF
	ELSE
		IF CFLAG:ARG:Ｖ已中出
			CALL PRINT_BAR, "爱心粉紅ゲージ",COND("胎内の精液量", ARG), 100000, 5
		ELSE
			CALL PRINT_BAR, "白色ゲージ",COND("胎内の精液量", ARG), 100000, 5
		ENDIF
		;PRINTFORM {COND("胎内の精液量", ARG)}p
		IF COND("女性主導生性交", ARG) || COND("合意：危険日生性交", ARG)
			CALL PRINT_STR, "爱心粉紅_ 生ok"
		ELSEIF COND("中出し嫌い", ARG)
			CALL PRINT_STR, "青_ 生NG"
		ENDIF
	ENDIF
ENDIF

;妊娠デバッグ用表示
IF 0
	IF BASE:ARG:育児中
		PRINTFORM {GETBITS(BASE:ARG:育児中, 0, 5), 3}
		IF COND("育児中：育児終了", ARG)
			PRINT / 0
		ELSE
			PRINT /14
		ENDIF
	ELSE
		PRINTFORM  --/--
	ENDIF
	IF COND("妊娠中", ARG)
		PRINTFORM {COND("妊娠中：各イベント進行度", ARG), 3}
		IF COND("妊娠中：分娩", ARG)
			PRINTFORM / 0
		ELSEIF COND("妊娠中：分娩直前", ARG)
			PRINTFORM / 1
		ELSEIF COND("妊娠中：臨月", ARG)
			PRINTFORM / 3
		ELSEIF COND("妊娠中：妊娠発覚済み", ARG)
			PRINTFORM /11
		ELSEIF COND("妊娠中：妊娠発覚直前", ARG)
			PRINTFORM / 0
		ELSE
			PRINTFORM / 4
		ENDIF
	ELSE
		PRINTFORM  --/--
	ENDIF
ENDIF


code:
;-------------------------------------------------
;角色を羅列する表示はここで一括管理。種類はARGSで区別する。
;LOCAL:LCOUNTでLOCAL番の角色が条件阴蒂アかどうかを管理する。
;-------------------------------------------------
@SHOW_CHARA_LIST, ARGS
#DIM LCOUNT

VARSET LOCAL
FOR LCOUNT, 1, CHARANUM
	SELECTCASE ARGS
	CASE "partner変更", "助手変更", "顔出し頻度変更", "コス確認", "分析"
		SIF LCOUNT == MASTER
			CONTINUE
	CASE "约会"
		SIF LCOUNT == MASTER
			CONTINUE
		SIF COND("约会可能", LCOUNT) == 0
			CONTINUE
	CASE "叫出来Ｈ"
		SIF LCOUNT == MASTER
			CONTINUE
		SIF COND("叫出来Ｈ可能", LCOUNT) == 0
			CONTINUE
	ENDSELECT
	LOCAL:LCOUNT = 1
NEXT

DRAWLINE
FOR LCOUNT, 1, CHARANUM
	SIF LOCAL:LCOUNT == 0
		CONTINUE

	SELECTCASE ARGS
	CASE "能力表示"
		IF LCOUNT == MASTER
			IF CONFIG("能力表示で３围閲覧") == 0 || TALENT:MASTER:男性
				PRINTFORM 　[{MASTER, 2}]
				IF STATE("烂醉", MASTER)
					SETCOLOR DEF_COLOR("青")
				ELSEIF STATE("酔酒", MASTER)
					SETCOLOR DEF_COLOR("爱心粉紅")
				ENDIF
				PRINTFORM %TEXT_LJ(NAME:MASTER, 16)%
				RESETCOLOR
			ELSE
				PRINTFORM %BL(22)%
			ENDIF

			PRINTFORM [200]\@ CONFIG("能力表示で３围閲覧") ? 体力等表示 # ３size表示 \@

			IF CONFIG("能力表示で３围閲覧") == 0 && TALENT:MASTER:男性 == 0
				CALL PRINT_N, LCOUNT
			ELSE
				PRINTFORM %BL(15)%
			ENDIF

			PRINTFORM  [400]合意一覧CSV
			SIF FLAG:周回数 && FLAG:陥落人数
				PRINTFORM  [999]陥落角色一覧

			PRINTL

			IF CONFIG("能力表示で３围閲覧") == 0 || TALENT:MASTER:男性
				DRAWLINE
				CONTINUE
			ENDIF
		ENDIF
		IF CONFIG("能力表示で３围閲覧")
			CALL PRINT_NUM_NAME, "３围閲覧", LCOUNT
		ELSEIF CONFIG("能力表示でABLUP")
			CALL PRINT_NUM_NAME, "ABLUP", LCOUNT
		ELSE
			CALL PRINT_NUM_NAME, "能力表示", LCOUNT
		ENDIF
	CASE "partner変更"
		IF CONFIG("partner変更で分析")
			CALL PRINT_NUM_NAME, "分析", LCOUNT
		ELSE
			CALL PRINT_NUM_NAME, "partner変更", LCOUNT
		ENDIF
	CASEELSE
		CALL PRINT_NUM_NAME, ARGS, LCOUNT
	ENDSELECT
NEXT

SIF ARGS != "コス確認"
	PRINTFORM  [100]返回

SELECTCASE ARGS
CASE "能力表示", "partner変更", "助手変更", "顔出し頻度変更"
	IF ARGS == "能力表示" && CONFIG("能力表示でABLUP") == 0
		PRINTFORM  [101]ＬＶＵＰ
	ELSE
		PRINTFORM  [101]能力表示
	ENDIF
	IF ARGS != "partner変更" && CHARA_NUM("控え角色")
		PRINTFORM  [102]%TEXTS("対象の名称")%変更
	ELSE
		SETCOLOR DEF_COLOR("灰色")
		PRINTPLAINFORM   [×]%TEXTS("対象の名称")%変更
		RESETCOLOR
	ENDIF
	IF ARGS != "助手変更" && CHARA_NUM("助手可能")
		PRINTFORM  [103]%TEXTS("助手の名称")%変更
	ELSE
		SETCOLOR DEF_COLOR("灰色")
		PRINTPLAINFORM   [×]%TEXTS("助手の名称")%変更
		RESETCOLOR
	ENDIF
	IF ARGS != "顔出し頻度変更"
		PRINTFORM  [104]顔出し頻度変更
	ELSE
		SETCOLOR DEF_COLOR("灰色")
		PRINTPLAINFORM   [×]顔出し頻度変更
		RESETCOLOR
	ENDIF
ENDSELECT

PRINTL

@SHOW_CHARA_LIST_PRE, ARGS
#DIM LCOUNT

PRINTL

PRINTFORM 現在的%TEXTS("対象の名称")%是
CALL PRINT_COLORTEXT, CALLNAME:TARGET, DEF_COLOR("黄色")
IF ASSI:1 == TARGET
	PRINTFORM 、%TEXTS("助手の名称")%也
	CALL PRINT_COLORTEXT, "兼任中", DEF_COLOR("緑")
	PRINTFORML 。
ELSEIF ASSI
	PRINTFORM 、%TEXTS("助手の名称")%是
	CALL PRINT_COLORTEXT, CALLNAME:ASSI, DEF_COLOR("緑")
	PRINTFORML 。
ELSE
	PRINTFORML 、没有指名%TEXTS("助手の名称")%。
ENDIF

SELECTCASE ARGS
CASE "能力表示"
	IF CONFIG("能力表示でABLUP")
		PRINTL 要上昇誰的能力呢？
		CALL PRINT_STR, "イエロー_这个颜色_表示的文字、是有上昇可能的能力或刻印的代表字母_L_"
	ELSE
		IF CHARA_NUM("性処理中")
			CALL PRINT_STRL, "要看誰的能力呢？（_黄色_性処理_ ←点一下的话就可以进行状態的変更）"
		ELSE
			PRINTL 要看誰的能力呢？
		ENDIF
		PRINTL 显示画面的項目(□ 素質 □等)能够点进去、看到特別経験之类的詳細显示
	ENDIF
CASE "助手変更"
	IF CONFIG("助手への指示")
		PRINTL []内数字为能给出指示的数量。
		PRINTL 要変更誰的指示？
	ELSE
		PRINTFORML 要让誰作为%TEXTS("助手の名称")%？（选择已经被选中的角色的话就会脱离%TEXTS("助手の名称")%状态）
		PRINTFORML %TEXTS("助手の名称")%的能力(調合等)点进去就能够看到効果的解説
		CALL PRINT_STR, "顺便一提、想要变成", TEXTS("助手の名称"), "的话需要_黄色_[信頼LV5]＆[技巧LV3]__L"
	ENDIF
	DRAWLINE
	LOCALS = %TEXTS("助手の名称")%无
	PRINTFORM 　[ 0]%TEXT_LJ(LOCALS, 16)%
	IF CHARA_NUM("指示可能な助手")
		PRINTFORM [200]\@ CONFIG("助手への指示") ? 変更画面 # 指示画面 \@
	ELSE
		CLEARBIT FLAG:助手画面, 0
	ENDIF
	PRINTFORM [400]%TEXTS("助手の名称")%の名称の変更
	PRINTL
CASE "partner変更"
	IF CONFIG("partner変更で分析")
		PRINTFORML 要把誰作为%TEXTS("対象の名称")%呢？（强度是100点満点、50点的话就和主人差不多）
		DRAWLINE
		PRINTFORM  [200]返回通常表示
		PRINTPLAINFORM 　欲求不満　 好感度　 放置　 敏感度　 攻撃力　以主人为基準的强度
	ELSE
		IF CHARA_NUM("性処理中")
			CALL PRINT_STRL, @"要把誰作为%TEXTS("対象の名称")%呢？（_黄色_性処理_ ←点一下的话就可以进行状態的変更）"
		ELSE
			PRINTFORML 要把誰作为%TEXTS("対象の名称")%？
		ENDIF
		DRAWLINE
		PRINTFORM  [200]显示欲求不満度、好感度、放置期間、具体的强度等…
	ENDIF
	PRINTL
CASE "顔出し頻度変更"
	PRINTL 変更誰在活动室登場的频率？请选择角色、
	CALL PRINT_STRL, "拜托请出现吧(默认是这个)……角色番号的左边是_黄色_〇_、"
	CALL PRINT_STRL, "喜欢来的时候就ＯＫ　……角色番号的左边是_水色_△_、"
	CALL PRINT_STRL, "请切换。_水色_△_的登場頻度会直线下降、但発情期是不会被限制的。"
CASE "名前変更"
	PRINTL 要変更誰的名字？
CASE "分析"
	PRINTL 要分析誰？
ENDSELECT

;-------------------------------------------------
;ステータス表示
;-------------------------------------------------
@SHOW_CHARADATA
#DIM CHOICE
#DIM MEMO_LINECOUNT
MEMO_LINECOUNT = LINECOUNT

REDRAW 0

CALL SHOW_CHARA_LIST_PRE, "能力表示"
CALL SHOW_CHARA_LIST, "能力表示"

$INPUT_LOOP
INPUT

CHOICE = RESULT

IF CHOICE == 100
	REDRAW 1
	RETURN 0
ELSEIF CHOICE == 101
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CLEARBIT FLAG:能力画面, 0
	INVERTBIT FLAG:能力画面, 1
	RESTART
ELSEIF CHOICE == 102 && CHARA_NUM("控え角色")
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL CHANGE_TARGET
	RETURN 0
ELSEIF CHOICE == 103 && CHARA_NUM("助手可能")
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SELECT_ASSI
	RETURN 0
ELSEIF CHOICE == 104
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL CHANGE_FOCUS
	RETURN 0
ELSEIF CHOICE == 200
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	INVERTBIT FLAG:能力画面, 0
	CLEARBIT FLAG:能力画面, 1
	RESTART
ELSEIF CHOICE == 400
	CALL OUTPUT_GOUI_CSV
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	RESTART
ELSEIF CHOICE == 999 && FLAG:周回数 && FLAG:陥落人数
	CALL SHOW_CLEARCHARA
	RESTART
;性処理の内容変更
ELSEIF CHOICE >= 2002 && CHOICE < 2000 + CHARANUM && COND("性処理中", CHOICE - 2000)
	CALL CHECK_COM_ABLE, CHOICE - 2000
	CALL SETFLAG, "性処理でのPLAY内容", CHOICE - 2000
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	PRINTFORML 和%CALLNAME:(CHOICE - 2000)%商量学園内PLAY的内容
	RESTART
ELSEIF CHOICE < MASTER || CHOICE >= CHARANUM
	GOTO INPUT_LOOP
ENDIF

IF CONFIG("能力表示でABLUP")
	CALL ABLUP_CHARA, CHOICE
ELSE
	CALL NEW_PRINT_STATE, CHOICE, "通常"
ENDIF

RESTART

;-------------------------------------------------
;陥落角色の一覧表示
;SAVESTR:陥落角色 はCSVCALLNAMEで記録していることに注意
;-------------------------------------------------
@SHOW_CLEARCHARA
#DIM LCOUNT
#DIM NEXT_LINE

CALL PRINT_STRL, "この周で[恋慕]or[淫乱]にした角色は名前が_爱心粉紅_この色_になります"
NEXT_LINE = 0
FOR LCOUNT, 1, 101
	;存在する角色なのか判定
	SIF EXISTCSV_EX(LCOUNT) == 0
		CONTINUE
	SIF STRCOUNT(@"/%SAVESTR:陥落角色%", @"/%CSVCALLNAME(LCOUNT)%/") == 0
		CONTINUE
	SIF STRCOUNT(@"/%SAVESTR:この周での陥落角色%", @"/%CSVCALLNAME(LCOUNT)%/")
		SETCOLOR DEF_COLOR("爱心粉紅")
	PRINTPLAINFORM [{LCOUNT, 3}]%TEXT_LJ(CSVNAME(LCOUNT), 23)%
	RESETCOLOR

	NEXT_LINE += 1

	SIF NEXT_LINE%4 == 0
		PRINTL
NEXT
SIF NEXT_LINE%4
	PRINTL
WAIT

;-------------------------------------------------
;助手選択
;-------------------------------------------------
@SELECT_ASSI
#DIM LCOUNT
#DIM CHOICE
#DIMS CHOICES, 2
#DIM MEMO_LINECOUNT

FLAG:能力画面 = 0

MEMO_LINECOUNT = LINECOUNT
VARSET CHOICES

REDRAW 0

CALL SHOW_CHARA_LIST_PRE, "助手変更"
CALL SHOW_CHARA_LIST, "助手変更"

$INPUT_LOOP
INPUTS

SPLIT RESULTS, "/", CHOICES

SELECTCASE CHOICES
CASE "相性☆"
	IF TARGET
		PRINTFORML 和%CALLNAME:TARGET%相性最高！
		PRINTFORMW (指令的実行値有30点的加成)
	ENDIF
CASE "相性◎"
	IF TARGET
		PRINTFORML 和%CALLNAME:TARGET%的相性相当好
		PRINTFORMW (指令的実行値有15点的加成)
	ENDIF
CASE "相性○"
	IF TARGET
		PRINTFORML 和%CALLNAME:TARGET%的相性比较好
		PRINTFORMW (指令的実行値有5点的加成)
	ENDIF
CASE "３Ｐ禁止"
	PRINTFORMW 不会和你以外的人做Ｈ的事
CASE "針"
	PRINTFORMW 針指令的効果上升
CASE "調合"
	PRINTFORML 媚薬指令的効果上升
	PRINTFORMW 以及、可以制作各种薬物
CASE "施虐狂"
	PRINTFORMW 通俗点讲就是比较擅长ＳＭ里的Ｓ
CASE "鼓舞"
	PRINTFORML %TEXTS("助手の名称")%可以在旁边応援加油
	PRINTFORMW (指令的実行値有10点的加成)
CASE "扶她"
	PRINTFORMW 是扶她
CASE "♂"
	PRINTFORMW 是男的
;CASE "禁断的知識"
;	PRINTFORML お店で危険な商品を売ってもらえるようになります
;	PRINTFORMW また、錬金術と同様に媚薬の効果が強くなります
CASE "具現"
	PRINTFORMW 可以让女性长出阴茎
CASE "愛撫・奉仕知識"
	PRINTFORML 奉仕或者愛撫的快感增加五成、恐怖或者反感等负面状况減半
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "教育擅長"
	PRINTFORML 被奉仕時如果比对方的技巧LV要高、对方獲得的経験各+１
	PRINTFORML 以及、对象獲得的奉仕快楽経験1.5倍
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "ＳＭ知識"
	PRINTFORML 这个是只有在进行ＳＭPLAY系指令時才会有効果的知識
	PRINTFORML 欲情与屈服等增加五成、恐怖和反感等減半
	PRINTFORML 以及、对象獲得的嗜虐快楽経験和被虐快楽経験变为1.5倍
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "Ａ調教知識"
	PRINTFORML 玩弄菊花時的指令会让快Ａ和欲情等增加五成、
	PRINTFORML 苦痛和反感等半減
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "性器拡張知識"
	PRINTFORML 性器被拡張時的苦痛和恐怖等減半、拡張経験的増加量獲得加成
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "道具使"
	PRINTFORML 使用振动棒等道具系指令時快楽和欲情等增加五成、
	PRINTFORML 恐怖和反感等減半
	PRINTFORMW 以及、需要让%TEXTS("助手の名称")%本人去調教对方的话才能起作用
CASE "露出知識"
	PRINTFORML 对象的恥情增加五成、露出経験和羞恥快楽経験的獲得量增加
	PRINTFORMW 这个知識、只要%TEXTS("助手の名称")%持有就可以発揮効果
CASE "甜言蜜语"
	PRINTFORMW 可以说甜言蜜语
CASE "手下留情"
	PRINTFORMW 可以手下留情
CASEELSE
	;指导者能力？
	IF COMMENT_ADVISER(CHOICES) != ""
		CALL PRINT_STRW, COMMENT_ADVISER(CHOICES)
	;それ以外は数値入力へ変換
	ELSE
		CHOICE = TOINT(CHOICES)
		IF CHOICE == 100
			REDRAW 1
			RETURN 0
		ELSEIF CHOICE == 101
			CLEARLINE LINECOUNT - MEMO_LINECOUNT
			CALL SHOW_CHARADATA
			RETURN 0
		ELSEIF CHOICE == 102 && CHARA_NUM("控え角色")
			CLEARLINE LINECOUNT - MEMO_LINECOUNT
			CALL CHANGE_TARGET
			RETURN 0
		ELSEIF CHOICE == 104
			CLEARLINE LINECOUNT - MEMO_LINECOUNT
			CALL CHANGE_FOCUS
			RETURN 0
		ELSEIF CHOICE == 200 && CHARA_NUM("指示可能な助手")
			INVERTBIT FLAG:助手画面, 0
			RESTART
		ELSEIF CHOICE == 400
			PRINTFORML 换句话说就是変更"助手"的职位的名称
			PRINTFORML 現在是『%TEXTS("助手の名称")%』、要変更为什么呢？
			PRINTFORML  [ 0] 指导者
			PRINTFORML  [ 1] 助手
			PRINTFORML  [ 2] 秘書
			PRINTFORML  [ 3] 副官
			PRINTFORML  [ 4] 女仆長
			PRINTFORML  [ 5] 側近
			PRINTFORML  [ 6] 参謀
			PRINTFORML  [99] 直接输入
			PRINTFORML [100] 不変更

			CALL INPUT_SELECT, 7, 99, 100

			SELECTCASE RESULT
			CASE 100
				RESTART
			CASE 0
				LOCALS = 助手の名称：指导者
			CASE 1
				LOCALS = 助手の名称：助手
			CASE 2
				LOCALS = 助手の名称：秘書
			CASE 3
				LOCALS = 助手の名称：副官
			CASE 4
				LOCALS = 助手の名称：女仆長
			CASE 5
				LOCALS = 助手の名称：側近
			CASE 6
				LOCALS = 助手の名称：参謀
			CASE 99
				CALL PRINT_STR, "黄色_※全角６文字(半角なら12文字)以内で入力してください※_L"
				PRINTFORML 什么都不输入的话就不会変更。

				CALL INPUTS_SELECT, 16

				SELECTCASE RESULTS
				CASE ""
					RESTART
				CASEELSE
					LOCALS = 助手の名称：%RESULTS%
				ENDSELECT
			ENDSELECT
			;助手の名称フラグ重置
			CALL DEL_CEVENT_GROUP, "助手の名称", MASTER
			CALL SET_CEVENT, LOCALS, MASTER

			PRINTFORMW 职位名变成『%TEXTS("助手の名称")%』了

			RESTART
		ELSEIF CHOICE == 0
			ASSI = 0
			ASSI:1 = 0
			REDRAW 1
			RETURN 0
		ELSEIF CHOICE < MASTER || CHOICE >= CHARANUM
			GOTO INPUT_LOOP
		ELSEIF CHOICE == ASSI

		ELSEIF COND("助手可能", CHOICE) == 0
			GOTO INPUT_LOOP
		ELSEIF CONFIG("助手への指示") && ABL:CHOICE:助手 == 0
			GOTO INPUT_LOOP
		ENDIF

		;指示変更
		IF CONFIG("助手への指示")
			CALL ASSI_CHANGE_INDICATE, CHOICE
		;以下は助手変更
		;指导者を再選択で指导者没有に
		ELSEIF CHOICE == ASSI:1
			CALL SETFLAG, "助手指定", 0
		;それ以外は指定された角色が指导者に
		ELSE
			CALL SETFLAG, "助手指定", CHOICE
		ENDIF
	ENDIF
ENDSELECT

CLEARLINE LINECOUNT - MEMO_LINECOUNT
RESTART

;-------------------------------------------------
;partner選択
;-------------------------------------------------
@CHANGE_TARGET
#DIM MEMO_LINECOUNT
#DIM CHOICE
MEMO_LINECOUNT = LINECOUNT

FLAG:能力画面 = 0

REDRAW 0

CALL SHOW_CHARA_LIST_PRE, "partner変更"
CALL SHOW_CHARA_LIST, "partner変更"

$INPUT_LOOP
INPUT

CHOICE = RESULT

IF CHOICE == 100
	REDRAW 1
	RETURN 0
ELSEIF CHOICE == 101
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SHOW_CHARADATA
	RETURN 0
ELSEIF CHOICE == 103 && CHARA_NUM("助手可能")
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SELECT_ASSI
	RETURN 0
ELSEIF CHOICE == 104
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL CHANGE_FOCUS
	RETURN 0
ELSEIF CHOICE == 200
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	INVERTBIT FLAG:対象変更画面, 0
	RESTART
;性処理の内容変更
ELSEIF CHOICE >= 2002 && CHOICE < 2000 + CHARANUM && COND("性処理中", CHOICE - 2000)
	CALL CHECK_COM_ABLE, CHOICE - 2000
	CALL SETFLAG, "性処理でのPLAY内容", CHOICE - 2000
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	PRINTFORML 和%CALLNAME:(CHOICE - 2000)%商量学園内PLAY的内容
	RESTART
ELSEIF CHOICE <= MASTER || CHOICE >= CHARANUM
	GOTO INPUT_LOOP
ENDIF

SIF CHOICE && COND("現在不在", CHOICE) == 0
	CALL SETFLAG, "対象指定", CHOICE

CLEARLINE LINECOUNT - MEMO_LINECOUNT
RESTART

;-------------------------------------------------
;顔出し頻度の変更
;-------------------------------------------------
@CHANGE_FOCUS
#DIM MEMO_LINECOUNT
#DIM CHOICE
MEMO_LINECOUNT = LINECOUNT

FLAG:能力画面 = 0

REDRAW 0

CALL SHOW_CHARA_LIST_PRE, "顔出し頻度変更"
CALL SHOW_CHARA_LIST, "顔出し頻度変更"

$INPUT_LOOP
INPUT

CHOICE = RESULT

IF CHOICE == 100
	REDRAW 1
	RETURN 0
ELSEIF CHOICE == 101
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SHOW_CHARADATA
	RETURN 0
ELSEIF CHOICE == 102 && CHARA_NUM("控え角色")
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL CHANGE_TARGET
	RETURN 0
ELSEIF CHOICE == 103 && CHARA_NUM("助手可能")
	CLEARLINE LINECOUNT - MEMO_LINECOUNT
	CALL SELECT_ASSI
	RETURN 0
ELSEIF CHOICE <= MASTER || CHOICE >= CHARANUM
	GOTO INPUT_LOOP
ENDIF

INVERTBIT CFLAG:CHOICE:顔出し頻度, 0

CLEARLINE LINECOUNT - MEMO_LINECOUNT
RESTART

;-------------------------------------------------
;コスチュームの一覧表示
;-------------------------------------------------
@COSPLAY_LIST
DRAWLINE
PRINTL □ 服装一覧 □---------------------------------------------------------
CALL SHOW_CHARA_LIST, "コス確認"

WAIT
RETURN 0

@PRINT_MEMBER
#DIM LCOUNT
#DIMS ACTORS

ACTORS =
FOR LCOUNT, 2, CHARANUM
	IF COND("現在不在", LCOUNT)
		SIF CFLAG:LCOUNT:不在
			CONTINUE
		;相手が寝ている場合は呼べない
		SIF CFLAG:睡眠
			CONTINUE
		IF PLACE("自宅")
			SIF PLACE("居間") == 0
				CONTINUE
		ELSEIF PLACE("部室") == 0
			CONTINUE
		ENDIF
		ACTORS += "灰色/"
	ELSE
		SELECTCASE LCOUNT
		CASE TARGET
			ACTORS += "黄色/"
		CASE ASSI:1
			ACTORS += "緑/"
		ENDSELECT
	ENDIF
	ACTORS = %ACTORS%%NAME:LCOUNT%_{1000 + LCOUNT}\/

	SIF COND("助手可能", LCOUNT) == 0
		CONTINUE

	ACTORS += "＆/"

	SELECTCASE LCOUNT
	CASE ASSI:1
		ACTORS += "緑/"
	ENDSELECT
	ACTORS = %ACTORS%＆\/α_{2000 + LCOUNT}\/
NEXT
CALL PRINT_LIST, ACTORS
PRINTL

@PRINT_KURIKOSI
#DIM LCOUNT
#DIM CHOICE
#DIM MEMO_LINECOUNT

MEMO_LINECOUNT = LINECOUNT
REDRAW 0
PRINTFORML
CALL PRINT_STRL, "好感度が2500以上の部員を_イエロー_３人まで_引き継ぐことが出来ます。"
CALL PRINT_STRL, "以下から選択してください。選択された角色は、名前の右に _H_ が現れます"
FOR LCOUNT, 1, CHARANUM
	SIF CFLAG:LCOUNT:好感度 < 2500
		CONTINUE

	CALL PRINT_NUM_NAME, "繰り越し角色", LCOUNT
NEXT

IF CHARA_NUM("繰り越し角色")
	PRINTL  [100]这様就行
ELSE
	PRINTL  [100]谁都不保留
ENDIF

$INPUT_LOOP
INPUT

CHOICE = RESULT

IF CHOICE == 100
	REDRAW 1
	RETURN 0
ELSEIF CHOICE < MASTER || CHOICE >= CHARANUM
	GOTO INPUT_LOOP
ELSEIF CFLAG:CHOICE:好感度 < 2500
	GOTO INPUT_LOOP
ELSEIF CFLAG:CHOICE:繰り越し角色 == 0 && CHARA_NUM("繰り越し角色") > 3
	GOTO INPUT_LOOP
ENDIF

INVERTBIT CFLAG:CHOICE:繰り越し角色, 0

CLEARLINE LINECOUNT - MEMO_LINECOUNT
RESTART

@OUTPUT_GOUI_CSV
#DIM LCOUNT1
#DIM LCOUNT2
#DIM GCOUNT
#DIMS STR_GOUI, 50

VARSET STR_GOUI
GCOUNT = 0

FOR LCOUNT1, 2, CHARANUM
	VARSET LOCALS
	SPLIT CSTR:LCOUNT1:合意, "/", LOCALS

;	PRINTFORM %NAME:LCOUNT1%
	FOR LCOUNT2, 0, VARSIZE("STR_GOUI")
		SIF LOCALS:LCOUNT2 == ""
			CONTINUE
;		PRINTFORM %LOCALS:LCOUNT2%,
		SIF FINDELEMENT(STR_GOUI, LOCALS:LCOUNT2, , , 1) >= 0
			CONTINUE
		STR_GOUI:GCOUNT = %LOCALS:LCOUNT2%
		GCOUNT ++
	NEXT
;	PRINTL
NEXT

PRINTFORML 現在取得済み合意 計{GCOUNT}種類
PRINTL

PRINT NAME,NO,識別番号,好感度,
ARRAYSORT STR_GOUI
FOR LCOUNT2, 0, VARSIZE("STR_GOUI")
	SIF STR_GOUI:LCOUNT2 == ""
		CONTINUE
	PRINTFORM %STR_GOUI:LCOUNT2%,
NEXT
PRINTL

FOR LCOUNT1, 2, CHARANUM
	PRINTFORM %NAME:LCOUNT1%,{NO:LCOUNT1},{BASE:LCOUNT1:識別番号},{CFLAG:LCOUNT1:好感度},
	FOR LCOUNT2, 0, VARSIZE("STR_GOUI")
		SIF STR_GOUI:LCOUNT2 == ""
			CONTINUE
		SIF STRCOUNT(CSTR:LCOUNT1:合意, @"\/%STR_GOUI:LCOUNT2%\/")
			PRINT o
		PRINT ,
	NEXT
	PRINTL
NEXT

PRINTW