code:
;------------------------------
;引き継ぎ用キャラセレクト部分
;------------------------------
@PASS_CHARA_CHARASELECT()
#DIM FIRST_LINE
#DIM 対象
#DIM 表示位置
#DIM 表示ページ
#DIM 総ページ数
#DIM キャラ数
#DIM キャラカウンタ
#DIM 表示開始位置
#DIM 表示終了位置

VARSET キャラ数
FOR LOCAL, 0, CHARANUM
	SIF IS_UNIQUE_CHARA(LOCAL) && LOCAL != NAME_TO_CHARA("あなた")
		キャラ数 ++
NEXT
総ページ数 = (キャラ数 - 1) / 60 + 1
表示ページ = 1

FIRST_LINE = LINECOUNT

$SHOW_LOOP

VARSET 表示位置
VARSET キャラカウンタ
表示開始位置 = (表示ページ - 1) * 60
表示終了位置 = 表示ページ * 60

CALL SINGLE_DRAWLINE
PRINTFORML 次の週にキャラの能力を引き継げます
PRINTFORML 設定するキャラを選んで下さい
PRINTBUTTON "[まとめて設定]", 3
PRINTBUTTON "[まとめて解除]", 4
PRINTL
CALL SINGLE_DRAWLINE

FOR LOCAL:0, 0, CHARANUM
	SIF !IS_UNIQUE_CHARA(LOCAL) || LOCAL == NAME_TO_CHARA("あなた")
		CONTINUE
	IF 表示開始位置 <= キャラカウンタ && キャラカウンタ < 表示終了位置
		IF 表示位置 % 3!= 0
			PRINT
		ELSEIF 表示位置 > 0
			PRINTL
		ENDIF
		SIF 引き継ぎ設定済み:LOCAL:0
			SETCOLOR 0x00FFFF
		PRINTFORM [{LOCAL + 99, 3, LEFT}]%ANAME(LOCAL), MAX_CHARANAME_LENGTH, LEFT%
		RESETCOLOR
		表示位置 ++
	ENDIF
	キャラカウンタ ++
NEXT

PRINTL
CALL SINGLE_DRAWLINE

IF 総ページ数 >= 2
	IF 表示ページ > 1
		PRINT [  1] 前のページ
	ELSE
		PRINT
	ENDIF
	IF 表示ページ < 総ページ数
		PRINT [  2] 後のページ
	ENDIF
	PRINTL
	CALL SINGLE_DRAWLINE
ENDIF

PRINTL [  0] これでよい

REDRAW 0

$INPUT_LOOP
INPUT
IF RESULT == 1 && 表示ページ > 1
	表示ページ --
	CLEARLINE LINECOUNT - FIRST_LINE
	GOTO SHOW_LOOP
ELSEIF RESULT == 2 && 表示ページ < 総ページ数
	表示ページ ++
	CLEARLINE LINECOUNT - FIRST_LINE
	GOTO SHOW_LOOP
ELSEIF RESULT == 3
	CALL PASS_CHARA_UI(-1)
	RESTART
ELSEIF RESULT == 4
	CALL CLEAR_ALL_PASS_SETTINGS
	RESTART
ELSEIF RESULT == 0
	RETURN
ENDIF

対象 = RESULT - 99
IF 対象 > CHARANUM || 対象 < 0 || !IS_UNIQUE_CHARA(対象) || 対象 == NAME_TO_CHARA("あなた")
	CLEARLINE 1
	GOTO INPUT_LOOP
ENDIF
CALL PASS_CHARA_UI(対象)
RESTART

;-------------------------------------------
;キャラごと（ないし全員）の引き継ぎ項目を設定する
;-------------------------------------------
@PASS_CHARA_UI(対象)
#DIM 対象
#DIM FIRST_LINE
#DIM 素質ページ
#DIM 経験ページ

LOADGLOBAL

CALL PASS_CHARA_COPY_ORIGINAL_TO_TMP(対象)

FIRST_LINE = LINECOUNT

$SHOW_LOOP

REDRAW 1
PRINTFORML 引き継ぎたい要素を選択してください
CALL SINGLE_DRAWLINE
PRINTL □性別□
CALL PRINT_TOGGLE_BUTTON("[性別]", 0, 性別引き継ぎ_TMP)
PRINTL
CALL SINGLE_DRAWLINE
PRINTL □体力□
FOR LOCAL, 0, 5
	SIF BASENAME:LOCAL != ""
		CALL PRINT_TOGGLE_BUTTON(@"%"[" + BASENAME:LOCAL + "]", 16, LEFT%", 100 + LOCAL, BASE引き継ぎ_TMP:LOCAL)
NEXT
PRINTL
CALL SINGLE_DRAWLINE
PRINTL □好感度□
CALL PRINT_TOGGLE_BUTTON(@"%"[好感度]", 16, LEFT%", 200 + GETNUM(CFLAG, "好感度"), CFLAG引き継ぎ_TMP:GETNUM(CFLAG, "好感度"))
CALL PRINT_TOGGLE_BUTTON(@"%"[従属度]", 16, LEFT%", 200 + GETNUM(CFLAG, "従属度"), CFLAG引き継ぎ_TMP:GETNUM(CFLAG, "従属度"))
CALL PRINT_TOGGLE_BUTTON(@"%"[依存度]", 16, LEFT%", 200 + GETNUM(CFLAG, "依存度"), CFLAG引き継ぎ_TMP:GETNUM(CFLAG, "依存度"))
CALL PRINT_TOGGLE_BUTTON(@"%"[支配度]", 16, LEFT%", 200 + GETNUM(CFLAG, "支配度"), CFLAG引き継ぎ_TMP:GETNUM(CFLAG, "支配度"))

PRINTL
CALL SINGLE_DRAWLINE
PRINTL □能力□
PRINTBUTTON @"%"[すべてオフ]", 16, LEFT%", 2000
PRINTBUTTON @"%"[すべてオン]", 16, LEFT%", 2001
PRINTL
FOR LOCAL, 0, VARSIZE("ABL")
	SIF ABLNAME:LOCAL != ""
		CALL PRINT_TOGGLE_BUTTON(@"%"[" + ABLNAME:LOCAL +"]", 16, LEFT%", 300 + LOCAL, ABL引き継ぎ_TMP:LOCAL)
NEXT
PRINTL
CALL SINGLE_DRAWLINE
PRINTL □素質□
PRINTBUTTON @"%"[すべてオフ]", 16, LEFT%", 2100
PRINTBUTTON @"%"[すべてオン]", 16, LEFT%", 2101
PRINTL
FOR LOCAL, 0, 300
	SIF TALENTNAME:LOCAL != "" && PASS_CHARA_CHECK_SHOW_TALENT(LOCAL)
		CALL PRINT_TOGGLE_BUTTON(@"%"[" + TALENTNAME:LOCAL + "]", 16, LEFT%", 500 + LOCAL, TALENT引き継ぎ_TMP:LOCAL)
NEXT
PRINTL
CALL SINGLE_DRAWLINE
PRINTL □経験□
PRINTBUTTON @"%"[すべてオフ]", 16, LEFT%", 2200
PRINTBUTTON @"%"[すべてオン]", 16, LEFT%", 2201
PRINTL
FOR LOCAL, 40, 70
	SIF EXPNAME:LOCAL != ""
		CALL PRINT_TOGGLE_BUTTON(@"%"[" + EXPNAME:LOCAL + "]", 16, LEFT%", 800 + LOCAL, EXP引き継ぎ_TMP:LOCAL)
NEXT
FOR LOCAL, 90, 94
	SIF EXPNAME:LOCAL != ""
		CALL PRINT_TOGGLE_BUTTON(@"%"[" + EXPNAME:LOCAL + "]", 16, LEFT%", 800 + LOCAL, EXP引き継ぎ_TMP:LOCAL)
NEXT
PRINTL
CALL SINGLE_DRAWLINE
PRINTL □その他□
CALL PRINT_TOGGLE_BUTTON(@"%"[陥落素質]", 16, LEFT%", 1000, 陥落素質引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[淫乱素質]", 16, LEFT%", 1001, 淫乱素質引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[特殊勢力陥落]", 16, LEFT%", 1003, 特殊勢力陥落引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[締まり]", 16, LEFT%", 1010, 締まり引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[陰毛]", 16, LEFT%", 1011, 陰毛引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[腋毛]", 16, LEFT%", 1014, 腋毛引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[ピアス]", 16, LEFT%", 1012, ピアス引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[タトゥー]", 16, LEFT%", 1013, タトゥー引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[キス初体験]", 16, LEFT%", 1020, キス引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[処女喪失]", 16, LEFT%", 1021, 処女引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[Ａ処女喪失]", 16, LEFT%", 1022, アナル処女引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[童貞喪失]", 16, LEFT%", 1023, 童貞引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[性的嗜好]", 16, LEFT%", 1032, 性的嗜好引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[妊娠記録]", 16, LEFT%", 1033, 妊娠記録引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[スキル]", 16, LEFT%", 1034, スキル引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[衣装]", 16, LEFT%", 1035, 衣装引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[スリーサイズ]", 16, LEFT%", 1040, スリーサイズ引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[体型]", 16, LEFT%", 1041, 体型引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[体格]", 16, LEFT%", 1042, 体格引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[バストサイズ]", 16, LEFT%", 1043, バストサイズ引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[ペニスサイズ]", 16, LEFT%", 1044, ペニスサイズ引き継ぎ_TMP)
CALL PRINT_TOGGLE_BUTTON(@"%"[ヒップサイズ]", 16, LEFT%", 1045, ヒップサイズ引き継ぎ_TMP)
PRINTL
CALL PRINT_TOGGLE_BUTTON(@"%"[研究開発]", 16, LEFT%", 1050, 研究開発引き継ぎ_TMP)

PRINTL
CALL SINGLE_DRAWLINE
PRINTBUTTON "[プリセットセーブ]", 9997
PRINT
PRINTBUTTON "[プリセットロード]", 9998
PRINT
PRINTBUTTON "[これでよい]", 9999

INPUT
SELECTCASE RESULT
	CASE 0
		性別引き継ぎ_TMP = !性別引き継ぎ_TMP
	CASE IS < 200
		RESULT = RESULT - 100
		SIF BASENAME:RESULT != ""
			BASE引き継ぎ_TMP:RESULT = !BASE引き継ぎ_TMP:RESULT
	CASE IS < 300
		RESULT = RESULT - 200
		SIF GROUPMATCH(RESULT, GETNUM(CFLAG, "好感度"), GETNUM(CFLAG, "依存度"), GETNUM(CFLAG, "従属度"), GETNUM(CFLAG, "支配度"))
			CFLAG引き継ぎ_TMP:RESULT = !CFLAG引き継ぎ_TMP:RESULT
	CASE IS < 500
		RESULT = RESULT - 300
		SIF ABLNAME:RESULT != ""
			ABL引き継ぎ_TMP:RESULT = !ABL引き継ぎ_TMP:RESULT
	CASE IS < 800
		RESULT = RESULT - 500
		SIF TALENTNAME:RESULT != "" && PASS_CHARA_CHECK_SHOW_TALENT(RESULT)
			TALENT引き継ぎ_TMP:RESULT = !TALENT引き継ぎ_TMP:RESULT
	CASE 840 TO 870, 890 TO 893
		RESULT = RESULT - 800
		SIF EXPNAME:RESULT != ""
			EXP引き継ぎ_TMP:RESULT = !EXP引き継ぎ_TMP:RESULT
	CASE 1000
		陥落素質引き継ぎ_TMP = !陥落素質引き継ぎ_TMP
	CASE 1001
		淫乱素質引き継ぎ_TMP = !淫乱素質引き継ぎ_TMP
	CASE 1003
		特殊勢力陥落引き継ぎ_TMP = !特殊勢力陥落引き継ぎ_TMP
	CASE 1010
		締まり引き継ぎ_TMP = !締まり引き継ぎ_TMP
	CASE 1011
		陰毛引き継ぎ_TMP = !陰毛引き継ぎ_TMP
	CASE 1012
		ピアス引き継ぎ_TMP = !ピアス引き継ぎ_TMP
	CASE 1013
		タトゥー引き継ぎ_TMP = !タトゥー引き継ぎ_TMP
	CASE 1014
		腋毛引き継ぎ_TMP = !腋毛引き継ぎ_TMP
	CASE 1020
		キス引き継ぎ_TMP = !キス引き継ぎ_TMP
	CASE 1021
		処女引き継ぎ_TMP = !処女引き継ぎ_TMP
	CASE 1022
		アナル処女引き継ぎ_TMP = !アナル処女引き継ぎ_TMP
	CASE 1023
		童貞引き継ぎ_TMP = !童貞引き継ぎ_TMP
	CASE 1032
		性的嗜好引き継ぎ_TMP = !性的嗜好引き継ぎ_TMP
	CASE 1033
		妊娠記録引き継ぎ_TMP = !妊娠記録引き継ぎ_TMP
	CASE 1034
		スキル引き継ぎ_TMP = !スキル引き継ぎ_TMP
	CASE 1035
		衣装引き継ぎ_TMP = !衣装引き継ぎ_TMP
	CASE 1040
		スリーサイズ引き継ぎ_TMP = !スリーサイズ引き継ぎ_TMP
		性別引き継ぎ_TMP = 1
		体型引き継ぎ_TMP = 1
		体格引き継ぎ_TMP = 1
		バストサイズ引き継ぎ_TMP = 1
		ペニスサイズ引き継ぎ_TMP = 1
		ヒップサイズ引き継ぎ_TMP = 1
		TALENT引き継ぎ_TMP:GETNUM(TALENT, "幼児") = 1
		TALENT引き継ぎ_TMP:GETNUM(TALENT, "美尻") = 1
	CASE 1041
		体型引き継ぎ_TMP = !体型引き継ぎ_TMP
	CASE 1042
		体格引き継ぎ_TMP = !体格引き継ぎ_TMP
	CASE 1043
		バストサイズ引き継ぎ_TMP = !バストサイズ引き継ぎ_TMP
	CASE 1044
		ペニスサイズ引き継ぎ_TMP = !ペニスサイズ引き継ぎ_TMP
	CASE 1045
		ヒップサイズ引き継ぎ_TMP = !ヒップサイズ引き継ぎ_TMP
	CASE 1050
		研究開発引き継ぎ_TMP = !研究開発引き継ぎ_TMP
	CASE 2000, 2001
		RESULT = RESULT - 2000
		FOR LOCAL, 0, VARSIZE("ABL")
			SIF ABLNAME:LOCAL != ""
				ABL引き継ぎ_TMP:LOCAL = RESULT
		NEXT
	CASE 2100, 2101
		RESULT = RESULT - 2100
		FOR LOCAL, 0, 300
			SIF TALENTNAME:LOCAL != "" && PASS_CHARA_CHECK_SHOW_TALENT(LOCAL)
				TALENT引き継ぎ_TMP:LOCAL = RESULT
		NEXT
	CASE 2200, 2201
		RESULT = RESULT - 2200
		FOR LOCAL, 40, 70
			SIF EXPNAME:LOCAL != ""
				EXP引き継ぎ_TMP:LOCAL = RESULT
		NEXT
		FOR LOCAL, 90, 94
			SIF EXPNAME:LOCAL != ""
				EXP引き継ぎ_TMP:LOCAL = RESULT
		NEXT
	CASE 9997
		CALL PASS_CHARA_SAVE_GLOBAL
	CASE 9998
		CALL PASS_CHARA_LOAD_GLOBAL
	CASE 9999
		CALL PASS_CHARA_COPY_TMP_TO_ORIGINAL(対象)
		RETURN
ENDSELECT

{
	IF スリーサイズ引き継ぎ_TMP && !ALLSAMES(1, 性別引き継ぎ_TMP, 体型引き継ぎ_TMP, 体格引き継ぎ_TMP, バストサイズ引き継ぎ_TMP, ペニスサイズ引き継ぎ_TMP,
		ヒップサイズ引き継ぎ_TMP, TALENT引き継ぎ_TMP:GETNUM(TALENT, "幼児"), TALENT引き継ぎ_TMP:GETNUM(TALENT, "美尻"))
}
	PRINTFORMW スリーサイズ引き継ぎに前提となる要素が引き継がれない設定になったため、スリーサイズ引き継ぎをオフにします
	スリーサイズ引き継ぎ_TMP = 0
ENDIF

CLEARLINE LINECOUNT - FIRST_LINE
GOTO SHOW_LOOP

;-------------------------------------------
;キャラの引き継ぎ設定をTMPにコピーする
;-------------------------------------------
@PASS_CHARA_COPY_ORIGINAL_TO_TMP(対象)
#DIM 対象
VARSET 性別引き継ぎ_TMP
VARSET ABL引き継ぎ_TMP
VARSET TALENT引き継ぎ_TMP
VARSET EXP引き継ぎ_TMP
VARSET CFLAG引き継ぎ_TMP
VARSET BASE引き継ぎ_TMP
VARSET 陥落素質引き継ぎ_TMP
VARSET 淫乱素質引き継ぎ_TMP
VARSET 締まり引き継ぎ_TMP
VARSET 陰毛引き継ぎ_TMP
VARSET 腋毛引き継ぎ_TMP
VARSET ピアス引き継ぎ_TMP
VARSET 特殊勢力陥落引き継ぎ_TMP
VARSET 性的嗜好引き継ぎ_TMP
VARSET タトゥー引き継ぎ_TMP
VARSET キス引き継ぎ_TMP
VARSET 童貞引き継ぎ_TMP
VARSET 処女引き継ぎ_TMP
VARSET アナル処女引き継ぎ_TMP
VARSET 妊娠記録引き継ぎ_TMP
VARSET スリーサイズ引き継ぎ_TMP
VARSET バストサイズ引き継ぎ_TMP
VARSET ペニスサイズ引き継ぎ_TMP
VARSET ヒップサイズ引き継ぎ_TMP
VARSET 体型引き継ぎ_TMP
VARSET 体格引き継ぎ_TMP
VARSET 研究開発引き継ぎ_TMP

IF INRANGE(対象, 0, CHARANUM)
	;ARRAYCOPYがキャラ変数に対応してればこんなことはせずに済むんだが:-(
	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		ABL引き継ぎ_TMP:LOCAL = ABL引き継ぎ:対象:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		TALENT引き継ぎ_TMP:LOCAL = TALENT引き継ぎ:対象:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		EXP引き継ぎ_TMP:LOCAL = EXP引き継ぎ:対象:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		CFLAG引き継ぎ_TMP:LOCAL = CFLAG引き継ぎ:対象:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		BASE引き継ぎ_TMP:LOCAL = BASE引き継ぎ:対象:LOCAL
	NEXT
	性別引き継ぎ_TMP = 性別引き継ぎ:対象:0
	陥落素質引き継ぎ_TMP = 陥落素質引き継ぎ:対象:0
	淫乱素質引き継ぎ_TMP = 淫乱素質引き継ぎ:対象:0
	締まり引き継ぎ_TMP = 締まり引き継ぎ:対象:0
	陰毛引き継ぎ_TMP = 陰毛引き継ぎ:対象:0
	腋毛引き継ぎ_TMP = 腋毛引き継ぎ:対象:0
	ピアス引き継ぎ_TMP = ピアス引き継ぎ:対象:0
	特殊勢力陥落引き継ぎ_TMP = 特殊勢力陥落引き継ぎ:対象:0
	性的嗜好引き継ぎ_TMP = 性的嗜好引き継ぎ:対象:0
	タトゥー引き継ぎ_TMP = タトゥー引き継ぎ:対象:0
	キス引き継ぎ_TMP = キス引き継ぎ:対象:0
	童貞引き継ぎ_TMP = 童貞引き継ぎ:対象:0
	処女引き継ぎ_TMP = 処女引き継ぎ:対象:0
	アナル処女引き継ぎ_TMP = アナル処女引き継ぎ:対象:0
	バストサイズ引き継ぎ_TMP = バストサイズ引き継ぎ:対象:0
	ペニスサイズ引き継ぎ_TMP = ペニスサイズ引き継ぎ:対象:0
	妊娠記録引き継ぎ_TMP = 妊娠記録引き継ぎ:対象:0
	スリーサイズ引き継ぎ_TMP = スリーサイズ引き継ぎ:対象:0
	バストサイズ引き継ぎ_TMP = バストサイズ引き継ぎ:対象:0
	ペニスサイズ引き継ぎ_TMP = ペニスサイズ引き継ぎ:対象:0
	ヒップサイズ引き継ぎ_TMP = ヒップサイズ引き継ぎ:対象:0
	体型引き継ぎ_TMP = 体型引き継ぎ:対象:0
	体格引き継ぎ_TMP = 体格引き継ぎ:対象:0
	研究開発引き継ぎ_TMP = 研究開発引き継ぎ:対象:0
ELSE

	;ARRAYCOPYがキャラ変数に対応してればこんなことはせずに済むんだが:-(
	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		SIF (CMATCH(ABL引き継ぎ:LOCAL, 1)) == CHARANUM
			ABL引き継ぎ_TMP:LOCAL = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		SIF (CMATCH(TALENT引き継ぎ:LOCAL, 1)) == CHARANUM
			TALENT引き継ぎ_TMP:LOCAL = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		SIF (CMATCH(EXP引き継ぎ:LOCAL, 1)) == CHARANUM
			EXP引き継ぎ_TMP:LOCAL = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		SIF (CMATCH(CFLAG引き継ぎ:LOCAL, 1)) == CHARANUM
			CFLAG引き継ぎ_TMP:LOCAL = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		SIF (CMATCH(BASE引き継ぎ:LOCAL, 1)) == CHARANUM
			BASE引き継ぎ_TMP:LOCAL = 1
	NEXT
	SIF (CMATCH(性別引き継ぎ:0, 1)) == CHARANUM
		性別引き継ぎ_TMP = 1
	SIF (CMATCH(陥落素質引き継ぎ:0, 1)) == CHARANUM
		陥落素質引き継ぎ_TMP = 1
	SIF (CMATCH(淫乱素質引き継ぎ:0, 1)) == CHARANUM
		淫乱素質引き継ぎ_TMP = 1
	SIF (CMATCH(締まり引き継ぎ:0, 1)) == CHARANUM
		締まり引き継ぎ_TMP = 1
	SIF (CMATCH(陰毛引き継ぎ:0, 1)) == CHARANUM
		陰毛引き継ぎ_TMP = 1
	SIF (CMATCH(腋毛引き継ぎ:0, 1)) == CHARANUM
		腋毛引き継ぎ_TMP = 1
	SIF (CMATCH(ピアス引き継ぎ:0, 1)) == CHARANUM
		ピアス引き継ぎ_TMP = 1
	SIF (CMATCH(特殊勢力陥落引き継ぎ:0, 1)) == CHARANUM
		特殊勢力陥落引き継ぎ_TMP = 1
	SIF (CMATCH(性的嗜好引き継ぎ:0, 1)) == CHARANUM
		性的嗜好引き継ぎ_TMP = 1
	SIF (CMATCH(タトゥー引き継ぎ:0, 1)) == CHARANUM
		タトゥー引き継ぎ_TMP = 1
	SIF (CMATCH(キス引き継ぎ:0, 1)) == CHARANUM
		キス引き継ぎ_TMP = 1
	SIF (CMATCH(童貞引き継ぎ:0, 1)) == CHARANUM
		童貞引き継ぎ_TMP = 1
	SIF (CMATCH(処女引き継ぎ:0, 1)) == CHARANUM
		処女引き継ぎ_TMP = 1
	SIF (CMATCH(アナル処女引き継ぎ:0, 1)) == CHARANUM
		アナル処女引き継ぎ_TMP = 1
	SIF (CMATCH(妊娠記録引き継ぎ:0, 1)) == CHARANUM
		妊娠記録引き継ぎ_TMP = 1
	SIF (CMATCH(スリーサイズ引き継ぎ:0, 1)) == CHARANUM
		スリーサイズ引き継ぎ_TMP = 1
	SIF (CMATCH(バストサイズ引き継ぎ:0, 1)) == CHARANUM
		バストサイズ引き継ぎ_TMP = 1
	SIF (CMATCH(ペニスサイズ引き継ぎ:0, 1)) == CHARANUM
		ペニスサイズ引き継ぎ_TMP = 1
	SIF (CMATCH(ヒップサイズ引き継ぎ:0, 1)) == CHARANUM
		ヒップサイズ引き継ぎ_TMP = 1
	SIF (CMATCH(体型引き継ぎ:0, 1)) == CHARANUM
		体型引き継ぎ_TMP = 1
	SIF (CMATCH(体格引き継ぎ:0, 1)) == CHARANUM
		体格引き継ぎ_TMP = 1
	SIF (CMATCH(研究開発引き継ぎ:0, 1)) == CHARANUM
		研究開発引き継ぎ_TMP = 1
ENDIF

;-------------------------------------------
;TMPをキャラの引き継ぎ設定に反映する
;ついでに設定済みフラグをたてたり折ったり
;-------------------------------------------
@PASS_CHARA_COPY_TMP_TO_ORIGINAL(対象)
#DIM 対象
#DIM 設定済みフラグ
設定済みフラグ = 0
IF INRANGE(対象, 0, CHARANUM)
	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		SIF ABL引き継ぎ_TMP:LOCAL
			設定済みフラグ  = 1
		ABL引き継ぎ:対象:LOCAL = ABL引き継ぎ_TMP:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		SIF TALENT引き継ぎ_TMP:LOCAL
			設定済みフラグ  = 1
		TALENT引き継ぎ:対象:LOCAL = TALENT引き継ぎ_TMP:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		SIF EXP引き継ぎ_TMP:LOCAL
			設定済みフラグ  = 1
		EXP引き継ぎ:対象:LOCAL = EXP引き継ぎ_TMP:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		SIF CFLAG引き継ぎ_TMP:LOCAL
			設定済みフラグ  = 1
		CFLAG引き継ぎ:対象:LOCAL =CFLAG引き継ぎ_TMP:LOCAL
	NEXT

	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		SIF BASE引き継ぎ_TMP:LOCAL
			設定済みフラグ = 1
		BASE引き継ぎ:対象:LOCAL = BASE引き継ぎ_TMP:LOCAL
	NEXT
	SIF 性別引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 陥落素質引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 淫乱素質引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 締まり引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 陰毛引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 腋毛引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF ピアス引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 特殊勢力陥落引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 性的嗜好引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF タトゥー引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF キス引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 童貞引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 処女引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF アナル処女引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF バストサイズ引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF ペニスサイズ引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 妊娠記録引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF スキル引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 衣装引き継ぎ_TMP
		設定済みフラグ = 1
	SIF スリーサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF バストサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF ペニスサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF ヒップサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 体型引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 体格引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 研究開発引き継ぎ_TMP
		設定済みフラグ = 1
	性別引き継ぎ:対象:0 = 性別引き継ぎ_TMP
	陥落素質引き継ぎ:対象:0 = 陥落素質引き継ぎ_TMP
	淫乱素質引き継ぎ:対象:0 = 淫乱素質引き継ぎ_TMP
	締まり引き継ぎ:対象:0 = 締まり引き継ぎ_TMP
	陰毛引き継ぎ:対象:0 = 陰毛引き継ぎ_TMP
	腋毛引き継ぎ:対象:0 = 腋毛引き継ぎ_TMP
	ピアス引き継ぎ:対象:0 = ピアス引き継ぎ_TMP
	特殊勢力陥落引き継ぎ:対象:0 = 特殊勢力陥落引き継ぎ_TMP
	性的嗜好引き継ぎ:対象:0 = 性的嗜好引き継ぎ_TMP
	タトゥー引き継ぎ:対象:0 = タトゥー引き継ぎ_TMP
	キス引き継ぎ:対象:0 = キス引き継ぎ_TMP
	童貞引き継ぎ:対象:0 = 童貞引き継ぎ_TMP
	処女引き継ぎ:対象:0 = 処女引き継ぎ_TMP
	アナル処女引き継ぎ:対象:0 = アナル処女引き継ぎ_TMP
	妊娠記録引き継ぎ:対象:0 = 妊娠記録引き継ぎ_TMP
	スキル引き継ぎ:対象:0 = スキル引き継ぎ_TMP
	衣装引き継ぎ:対象:0 = 衣装引き継ぎ_TMP
	スリーサイズ引き継ぎ:対象:0 = スリーサイズ引き継ぎ_TMP
	バストサイズ引き継ぎ:対象:0 = バストサイズ引き継ぎ_TMP
	ペニスサイズ引き継ぎ:対象:0 = ペニスサイズ引き継ぎ_TMP
	ヒップサイズ引き継ぎ:対象:0 = ヒップサイズ引き継ぎ_TMP
	体型引き継ぎ:対象:0 = 体型引き継ぎ_TMP
	体格引き継ぎ:対象:0 = 体格引き継ぎ_TMP
	研究開発引き継ぎ:対象:0 = 研究開発引き継ぎ_TMP
	引き継ぎ設定済み:対象:0 = 設定済みフラグ
ELSE

	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		CVARSET ABL引き継ぎ, LOCAL, ABL引き継ぎ_TMP:LOCAL
		SIF MATCH(ABL引き継ぎ_TMP:LOCAL, 1)
			設定済みフラグ = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		CVARSET TALENT引き継ぎ, LOCAL, TALENT引き継ぎ_TMP:LOCAL
		SIF MATCH(TALENT引き継ぎ_TMP:LOCAL, 1)
			設定済みフラグ = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		CVARSET BASE引き継ぎ, LOCAL, BASE引き継ぎ_TMP:LOCAL
		SIF MATCH(BASE引き継ぎ_TMP:LOCAL, 1)
			設定済みフラグ = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		CVARSET EXP引き継ぎ, LOCAL, EXP引き継ぎ_TMP:LOCAL
		SIF MATCH(EXP引き継ぎ_TMP:LOCAL, 1)
			設定済みフラグ = 1
	NEXT

	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		CVARSET CFLAG引き継ぎ, LOCAL, CFLAG引き継ぎ_TMP:LOCAL
		SIF MATCH(CFLAG引き継ぎ_TMP:LOCAL, 1)
			設定済みフラグ = 1
	NEXT
	SIF 性別引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 陥落素質引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 淫乱素質引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 締まり引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 陰毛引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 腋毛引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF ピアス引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 特殊勢力陥落引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 性的嗜好引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF タトゥー引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF キス引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 童貞引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 処女引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF アナル処女引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF 妊娠記録引き継ぎ_TMP
		設定済みフラグ  = 1
	SIF スキル引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 衣装引き継ぎ_TMP
		設定済みフラグ = 1
	SIF スリーサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF バストサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF ペニスサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF ヒップサイズ引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 体型引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 体格引き継ぎ_TMP
		設定済みフラグ = 1
	SIF 研究開発引き継ぎ_TMP
		設定済みフラグ = 1
	CVARSET 性別引き継ぎ, 0, 性別引き継ぎ_TMP
	CVARSET 陥落素質引き継ぎ, 0, 陥落素質引き継ぎ_TMP
	CVARSET 淫乱素質引き継ぎ, 0, 淫乱素質引き継ぎ_TMP
	CVARSET 締まり引き継ぎ, 0, 締まり引き継ぎ_TMP
	CVARSET 陰毛引き継ぎ, 0, 陰毛引き継ぎ_TMP
	CVARSET 腋毛引き継ぎ, 0, 腋毛引き継ぎ_TMP
	CVARSET ピアス引き継ぎ, 0, ピアス引き継ぎ_TMP
	CVARSET 特殊勢力陥落引き継ぎ, 0, 特殊勢力陥落引き継ぎ_TMP
	CVARSET 性的嗜好引き継ぎ, 0, 性的嗜好引き継ぎ_TMP
	CVARSET タトゥー引き継ぎ, 0, タトゥー引き継ぎ_TMP
	CVARSET キス引き継ぎ, 0, キス引き継ぎ_TMP
	CVARSET 童貞引き継ぎ, 0, 童貞引き継ぎ_TMP
	CVARSET 処女引き継ぎ, 0, 処女引き継ぎ_TMP
	CVARSET アナル処女引き継ぎ, 0, アナル処女引き継ぎ_TMP
	CVARSET 妊娠記録引き継ぎ, 0, 妊娠記録引き継ぎ_TMP
	CVARSET スキル引き継ぎ, 0, スキル引き継ぎ_TMP
	CVARSET 衣装引き継ぎ, 0, 衣装引き継ぎ_TMP
	CVARSET スリーサイズ引き継ぎ, 0, スリーサイズ引き継ぎ_TMP
	CVARSET バストサイズ引き継ぎ, 0, バストサイズ引き継ぎ_TMP
	CVARSET ペニスサイズ引き継ぎ, 0, ペニスサイズ引き継ぎ_TMP
	CVARSET ヒップサイズ引き継ぎ, 0, ヒップサイズ引き継ぎ_TMP
	CVARSET 体型引き継ぎ, 0, 体型引き継ぎ_TMP
	CVARSET 体格引き継ぎ, 0, 体格引き継ぎ_TMP
	CVARSET 研究開発引き継ぎ, 0, 研究開発引き継ぎ_TMP
	CVARSET 引き継ぎ設定済み, 0, 設定済みフラグ
ENDIF

;-------------------------------------------
;プリセットセーブ
;-------------------------------------------
@PASS_CHARA_SAVE_GLOBAL
#DIM FIRST_LINE
FIRST_LINE = LINECOUNT
CALL SINGLE_DRAWLINE
PRINTFORML 引き継ぎ（一人分）をプリセットとしてセーブします
PRINTFORML 五個までセーブできます
CALL SINGLE_DRAWLINE
FOR LOCAL, 0, MAX_PASS_GLOBAL_SAVE
	PRINTFORML [{LOCAL}] - %PASS_GLOBAL_SAVE_NAME:LOCAL%
NEXT
CALL SINGLE_DRAWLINE
PRINTFORML [9] 戻る
INPUT
IF RESULT == 9
	RETURN
ELSEIF INRANGE(RESULT, 0, MAX_PASS_GLOBAL_SAvE)
	LOCAL:1 = RESULT
	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		ABL引き継ぎ_G:(LOCAL:1):LOCAL = ABL引き継ぎ_TMP:LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		BASE引き継ぎ_G:(LOCAL:1):LOCAL = BASE引き継ぎ_TMP:LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		TALENT引き継ぎ_G:(LOCAL:1):LOCAL = TALENT引き継ぎ_TMP:LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		CFLAG引き継ぎ_G:(LOCAL:1):LOCAL = CFLAG引き継ぎ_TMP:LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		EXP引き継ぎ_G:(LOCAL:1):LOCAL = EXP引き継ぎ_TMP:LOCAL
	NEXT

	性別引き継ぎ_G:(LOCAL:1) = 性別引き継ぎ_TMP
	陥落素質引き継ぎ_G:(LOCAL:1) = 陥落素質引き継ぎ_TMP
	淫乱素質引き継ぎ_G:(LOCAL:1) = 淫乱素質引き継ぎ_TMP
	締まり引き継ぎ_G:(LOCAL:1) = 締まり引き継ぎ_TMP
	陰毛引き継ぎ_G:(LOCAL:1) = 陰毛引き継ぎ_TMP
	腋毛引き継ぎ_G:(LOCAL:1) = 腋毛引き継ぎ_TMP
	ピアス引き継ぎ_G:(LOCAL:1) = ピアス引き継ぎ_TMP
	特殊勢力陥落引き継ぎ_G:(LOCAL:1) = 特殊勢力陥落引き継ぎ_TMP
	性的嗜好引き継ぎ_G:(LOCAL:1) = 性的嗜好引き継ぎ_TMP
	タトゥー引き継ぎ_G:(LOCAL:1) = タトゥー引き継ぎ_TMP
	キス引き継ぎ_G:(LOCAL:1) = キス引き継ぎ_TMP
	童貞引き継ぎ_G:(LOCAL:1) = 童貞引き継ぎ_TMP
	処女引き継ぎ_G:(LOCAL:1) = 処女引き継ぎ_TMP
	アナル処女引き継ぎ_G:(LOCAL:1) = アナル処女引き継ぎ_TMP
	妊娠記録引き継ぎ_G:(LOCAL:1) = 妊娠記録引き継ぎ_TMP
	スキル引き継ぎ_G:(LOCAL:1) = スキル引き継ぎ_TMP
	衣装引き継ぎ_G:(LOCAL:1) = 衣装引き継ぎ_TMP
	スリーサイズ引き継ぎ_G:(LOCAL:1) = スリーサイズ引き継ぎ_TMP
	バストサイズ引き継ぎ_G:(LOCAL:1) = バストサイズ引き継ぎ_TMP
	ペニスサイズ引き継ぎ_G:(LOCAL:1) = ペニスサイズ引き継ぎ_TMP
	ヒップサイズ引き継ぎ_G:(LOCAL:1) = ヒップサイズ引き継ぎ_TMP
	体型引き継ぎ_G:(LOCAL:1) = 体型引き継ぎ_TMP
	体格引き継ぎ_G:(LOCAL:1) = 体格引き継ぎ_TMP
	研究開発引き継ぎ_G:(LOCAL:1) = 研究開発引き継ぎ_TMP
	PRINTFORML 名前を入力して下さい
	INPUTS
	IF RESULTS == ""
		RESULTS = %GETTIMES()%
	ENDIF
	PASS_GLOBAL_SAVE_NAME:(LOCAL:1) = %RESULTS%
	SAVEGLOBAL
ENDIF
CLEARLINE LINECOUNT - FIRST_LINE
RESTART

;-------------------------------------------
;プリセットセーブ
;-------------------------------------------
@PASS_CHARA_LOAD_GLOBAL
#DIM FIRST_LINE
FIRST_LINE = LINECOUNT
CALL SINGLE_DRAWLINE
PRINTFORML 引き継ぎプリセットをロードします
CALL SINGLE_DRAWLINE
FOR LOCAL, 0, MAX_PASS_GLOBAL_SAVE
	PRINTFORML [{LOCAL}] - %PASS_GLOBAL_SAVE_NAME:LOCAL%
NEXT
CALL SINGLE_DRAWLINE
PRINTFORML [9] 戻る
INPUT
IF RESULT == 9
	RETURN
ELSEIF INRANGE(RESULT, 0, MAX_PASS_GLOBAL_SAvE)
	LOCAL:1 = RESULT
	FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
		ABL引き継ぎ_TMP:LOCAL = ABL引き継ぎ_G:(LOCAL:1):LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
		BASE引き継ぎ_TMP:LOCAL = BASE引き継ぎ_G:(LOCAL:1):LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
		TALENT引き継ぎ_TMP:LOCAL = TALENT引き継ぎ_G:(LOCAL:1):LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
		CFLAG引き継ぎ_TMP:LOCAL = CFLAG引き継ぎ_G:(LOCAL:1):LOCAL
	NEXT
	FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
		EXP引き継ぎ_TMP:LOCAL = EXP引き継ぎ_G:(LOCAL:1):LOCAL
	NEXT

	性別引き継ぎ_TMP = 性別引き継ぎ_G:(LOCAL:1)
	陥落素質引き継ぎ_TMP = 陥落素質引き継ぎ_G:(LOCAL:1)
	淫乱素質引き継ぎ_TMP = 淫乱素質引き継ぎ_G:(LOCAL:1)
	締まり引き継ぎ_TMP = 締まり引き継ぎ_G:(LOCAL:1)
	陰毛引き継ぎ_TMP = 陰毛引き継ぎ_G:(LOCAL:1)
	腋毛引き継ぎ_TMP = 腋毛引き継ぎ_G:(LOCAL:1)
	ピアス引き継ぎ_TMP = ピアス引き継ぎ_G:(LOCAL:1)
	特殊勢力陥落引き継ぎ_TMP = 特殊勢力陥落引き継ぎ_G:(LOCAL:1)
	性的嗜好引き継ぎ_TMP = 性的嗜好引き継ぎ_G:(LOCAL:1)
	タトゥー引き継ぎ_TMP = タトゥー引き継ぎ_G:(LOCAL:1)
	キス引き継ぎ_TMP = キス引き継ぎ_G:(LOCAL:1)
	童貞引き継ぎ_TMP = 童貞引き継ぎ_G:(LOCAL:1)
	処女引き継ぎ_TMP = 処女引き継ぎ_G:(LOCAL:1)
	アナル処女引き継ぎ_TMP = アナル処女引き継ぎ_G:(LOCAL:1)
	妊娠記録引き継ぎ_TMP = 妊娠記録引き継ぎ_G:(LOCAL:1)
	スキル引き継ぎ_TMP = スキル引き継ぎ_G:(LOCAL:1)
	衣装引き継ぎ_TMP = 衣装引き継ぎ_G:(LOCAL:1)
	スリーサイズ引き継ぎ_TMP = スリーサイズ引き継ぎ_G:(LOCAL:1)
	バストサイズ引き継ぎ_TMP = バストサイズ引き継ぎ_G:(LOCAL:1)
	ペニスサイズ引き継ぎ_TMP = ペニスサイズ引き継ぎ_G:(LOCAL:1)
	ヒップサイズ引き継ぎ_TMP = ヒップサイズ引き継ぎ_G:(LOCAL:1)
	体型引き継ぎ_TMP = 体型引き継ぎ_G:(LOCAL:1)
	体格引き継ぎ_TMP = 体格引き継ぎ_G:(LOCAL:1)
	研究開発引き継ぎ_TMP = 研究開発引き継ぎ_G:(LOCAL:1)
	PRINTFORMW ロードしました
ENDIF
CLEARLINE LINECOUNT - FIRST_LINE
RESTART

;-------------------------------------------
;TMPをキャラの引き継ぎ設定に反映する
;ついでに設定済みフラグをたてたり折ったり
;-------------------------------------------
@CLEAR_ALL_PASS_SETTINGS()
FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
	CVARSET ABL引き継ぎ, LOCAL, 0
NEXT

FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
	CVARSET TALENT引き継ぎ, LOCAL, 0
NEXT

FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
	CVARSET BASE引き継ぎ, LOCAL, 0
NEXT

FOR LOCAL, 0, VARSIZE("EXP引き継ぎ")
	CVARSET EXP引き継ぎ, LOCAL, 0
NEXT

FOR LOCAL, 0, VARSIZE("CFLAG引き継ぎ")
	CVARSET CFLAG引き継ぎ, LOCAL, 0
NEXT
CVARSET 性別引き継ぎ, 0, 0
CVARSET 陥落素質引き継ぎ, 0, 0
CVARSET 淫乱素質引き継ぎ, 0, 0
CVARSET 締まり引き継ぎ, 0, 0
CVARSET 陰毛引き継ぎ, 0, 0
CVARSET 腋毛引き継ぎ, 0, 0
CVARSET ピアス引き継ぎ, 0, 0
CVARSET 特殊勢力陥落引き継ぎ, 0, 0
CVARSET 性的嗜好引き継ぎ, 0, 0
CVARSET タトゥー引き継ぎ, 0, 0
CVARSET キス引き継ぎ, 0, 0
CVARSET 童貞引き継ぎ, 0, 0
CVARSET 処女引き継ぎ, 0, 0
CVARSET アナル処女引き継ぎ, 0, 0
CVARSET バストサイズ引き継ぎ, 0, 0
CVARSET ペニスサイズ引き継ぎ, 0, 0
CVARSET 妊娠記録引き継ぎ, 0, 0
CVARSET スキル引き継ぎ, 0, 0
CVARSET 衣装引き継ぎ, 0, 0
CVARSET スリーサイズ引き継ぎ, 0, 0
CVARSET バストサイズ引き継ぎ, 0, 0
CVARSET ペニスサイズ引き継ぎ, 0, 0
CVARSET ヒップサイズ引き継ぎ, 0, 0
CVARSET 体型引き継ぎ, 0, 0
CVARSET 体格引き継ぎ, 0, 0
CVARSET 研究開発引き継ぎ, 0, 0
CVARSET 引き継ぎ設定済み, 0, 0

;-------------------------------------------
;キャラを引き継ぐ処理
;-------------------------------------------
@PASS_CHARA(対象)
#DIM 対象
#DIM 性別保存
#DIM ABL保存, VARSIZE("ABL引き継ぎ")
#DIM TALENT保存, VARSIZE("TALENT引き継ぎ")
#DIM EXP保存, VARSIZE("EXP引き継ぎ")
#DIM CFLAG保存, VARSIZE("CFLAG引き継ぎ")
#DIM BASE保存, VARSIZE("BASE引き継ぎ")
;#DIM 陥落素質保存
#DIM 淫乱素質保存
#DIM Ｖ締まり保存
#DIM Ａ締まり保存
#DIM 陰毛目標値保存
#DIM 陰毛現在値保存
#DIM 腋毛目標値保存
#DIM 腋毛現在値保存
#DIM ピアス保存
#DIM ピアス穴保存
#DIM 特殊勢力陥落保存
#DIM 調教カウント保存, VARSIZE("SP_TRAIN_COUNT")
#DIM 性的嗜好保存
#DIM 性的嗜好経験保存, VARSIZE("SEXUAL_PREFERENCE_EXP")
#DIM COM_EXP保存, VARSIZE("COM_EXP")
#DIMS タトゥー保存, VARSIZE("TATTOO")
#DIMS キス保存
#DIMS 童貞保存
#DIMS 処女保存
#DIMS アナル処女保存
#DIMS キスシチュ保存
#DIMS 童貞シチュ保存
#DIMS 処女シチュ保存
#DIMS アナル処女シチュ保存
#DIM バストサイズ保存
#DIM ペニスサイズ保存
#DIM ヒップサイズ保存
#DIM 体型保存
#DIM 体格保存
#DIM 研究開発保存, TECHNOLOGY_MAX_GENRE

#DIM PREGNANT_RECORD_TIMES保存, PREGNANT_RECORD_MAX
#DIM PREGNAMT_RECORD_FATHER保存, PREGNANT_RECORD_MAX
#DIM SKILL_ID_SLOT保存, SKILL_GENRE_NUM, MAX_SKILL_SLOT
#DIM SKILL_NO_SLOT保存, SKILL_GENRE_NUM, MAX_SKILL_SLOT
#DIM 衣装保存, CLOTH_PART_NUM
VARSET 性別保存
VARSET ABL保存
VARSET TALENT保存
VARSET EXP保存
VARSET CFLAG保存
VARSET BASE保存
;VARSET 陥落素質保存
VARSET 淫乱素質保存
VARSET Ｖ締まり保存
VARSET Ａ締まり保存
VARSET 陰毛目標値保存
VARSET 陰毛現在値保存
VARSET 腋毛目標値保存
VARSET 腋毛現在値保存
VARSET ピアス保存
VARSET ピアス穴保存
VARSET 特殊勢力陥落保存
VARSET 調教カウント保存
VARSET 性的嗜好保存
VARSET 性的嗜好経験保存
VARSET COM_EXP保存
VARSET タトゥー保存
VARSET キス保存
VARSET 童貞保存
VARSET 処女保存
VARSET アナル処女保存
VARSET キスシチュ保存
VARSET 童貞シチュ保存
VARSET 処女シチュ保存
VARSET アナル処女シチュ保存
VARSET バストサイズ保存
VARSET ペニスサイズ保存
VARSET ヒップサイズ保存
VARSET 体型保存
VARSET 体格保存
VARSET 研究開発保存

VARSET PREGNANT_RECORD_TIMES保存
VARSET PREGNAMT_RECORD_FATHER保存
VARSET SKILL_ID_SLOT保存, -1
VARSET SKILL_NO_SLOT保存, -1
VARSET 衣装保存
;デイリー系はPASS_CHARAで扱わない
TALENT保存:GETNUM(TALENT, "デイリー系") = TALENT:対象:デイリー系

;ABLを保存
FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
	SIF ABL引き継ぎ:対象:LOCAL
		ABL保存:LOCAL = ABL:対象:LOCAL
NEXT

;TALENTを保存
FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
	SIF TALENT引き継ぎ:対象:LOCAL
		TALENT保存:LOCAL = TALENT:対象:LOCAL
NEXT

;EXPを保存
FOR LOCAL, 40, 70
	SIF EXP引き継ぎ:対象:LOCAL
		EXP保存:LOCAL = EXP:対象:LOCAL
NEXT

;別途保存するやつ
FOR LOCAL, 90, 94
	SIF EXP引き継ぎ:対象:LOCAL
		EXP保存:LOCAL = EXP:対象:LOCAL
NEXT

;CFLAGを保存
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "好感度")
	CFLAG保存:GETNUM(CFLAG, "好感度") = CFLAG:対象:好感度
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "従属度")
	CFLAG保存:GETNUM(CFLAG, "従属度") = CFLAG:対象:従属度
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "依存度")
	CFLAG保存:GETNUM(CFLAG, "依存度") = CFLAG:対象:依存度
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "支配度")
	CFLAG保存:GETNUM(CFLAG, "支配度") = CFLAG:対象:支配度

;BASEを保存
FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
	SIF GROUPMATCH(LOCAL, GETNUM(BASE, "身長"), GETNUM(BASE, "体重"), GETNUM(BASE, "バスト"), GETNUM(BASE, "ウェスト"), GETNUM(BASE, "ヒップ"), GETNUM(BASE, "ペニス"))
		CONTINUE
	SIF BASE引き継ぎ:対象:LOCAL
		BASE保存:LOCAL = MAXBASE:対象:LOCAL
NEXT

;陥落素質を保存
IF 陥落素質引き継ぎ:対象:0
	FOR LOCAL, 150, 157
		TALENT保存:LOCAL = TALENT:対象:LOCAL
	NEXT
ENDIF

SIF 性別引き継ぎ:対象:0
	性別保存 = TALENT:対象:性別

SIF 淫乱素質引き継ぎ:対象:0
	淫乱素質保存 = TALENT:対象:淫乱系

IF 締まり引き継ぎ:対象:0
	Ｖ締まり保存 = TALENT:対象:Ｖ締まり
	Ａ締まり保存 = TALENT:対象:Ａ締まり
ENDIF

IF 陰毛引き継ぎ:対象:0
	陰毛現在値保存 = TALENT:対象:陰毛現在値
	陰毛目標値保存 = TALENT:対象:陰毛目標値
ENDIF

IF 腋毛引き継ぎ:対象:0
	腋毛現在値保存 = TALENT:対象:腋毛現在値
	腋毛目標値保存 = TALENT:対象:腋毛目標値
ENDIF

IF ピアス引き継ぎ:対象:0
	ピアス保存 = TALENT:対象:ピアス
	ピアス穴保存 = TALENT:対象:ピアス穴
ENDIF

IF 特殊勢力陥落引き継ぎ:対象:0
	特殊勢力陥落保存 = TALENT:対象:特殊勢力陥落系
	FOR LOCAL, 0, VARSIZE("SP_TRAIN_COUNT")
		調教カウント保存:LOCAL = SP_TRAIN_COUNT:対象:LOCAL
	NEXT
ENDIF

IF 性的嗜好引き継ぎ:対象:0
	性的嗜好保存 = SEXUAL_PREFERENCE:対象:0
	FOR LOCAL, 0, VARSIZE("SEXUAL_PREFERENCE_EXP")
		性的嗜好経験保存:LOCAL = SEXUAL_PREFERENCE_EXP:対象:LOCAL
	NEXT
ENDIF

IF タトゥー引き継ぎ:対象:0
	FOR LOCAL, 0, VARSIZE("TATTOO")
		タトゥー保存:LOCAL = %TATTOO:対象:LOCAL%
	NEXT
ENDIF

IF キス引き継ぎ:対象:0
	キス保存 = %SEXUAL_EXPERIENCE:対象:初体験_キス%
	キスシチュ保存 = %SEXUAL_EXPERIENCE_SITUATION:対象:初体験_キス%
	TALENT保存:GETNUM(TALENT, "キス未経験") = TALENT:対象:キス未経験
ENDIF
IF 童貞引き継ぎ:対象:0
	童貞保存 = %SEXUAL_EXPERIENCE:対象:初体験_童貞%
	童貞シチュ保存 = %SEXUAL_EXPERIENCE_SITUATION:対象:初体験_童貞%
	TALENT保存:GETNUM(TALENT, "童貞") = TALENT:対象:童貞
ENDIF
IF 処女引き継ぎ:対象:0
	処女保存 = %SEXUAL_EXPERIENCE:対象:初体験_処女%
	処女シチュ保存 = %SEXUAL_EXPERIENCE_SITUATION:対象:初体験_処女%
	TALENT保存:GETNUM(TALENT, "処女") = TALENT:対象:処女
ENDIF
IF アナル処女引き継ぎ:対象:0
	アナル処女保存 = %SEXUAL_EXPERIENCE:対象:初体験_アナル処女%
	アナル処女シチュ保存 = %SEXUAL_EXPERIENCE_SITUATION:対象:初体験_アナル処女%
	TALENT保存:GETNUM(TALENT, "アナル処女") = TALENT:対象:アナル処女
ENDIF

IF スリーサイズ引き継ぎ:対象:0
	BASE保存:GETNUM(BASE, "身長") = BASE:対象:身長
	BASE保存:GETNUM(BASE, "体重") = BASE:対象:体重
	BASE保存:GETNUM(BASE, "バスト") = BASE:対象:バスト
	BASE保存:GETNUM(BASE, "ウェスト") = BASE:対象:ウェスト
	BASE保存:GETNUM(BASE, "ヒップ") = BASE:対象:ヒップ
	BASE保存:GETNUM(BASE, "ペニス") = BASE:対象:ペニス
ENDIF

IF バストサイズ引き継ぎ:対象:0
	IF CFLAG:対象:妊娠時バストサイズ増加
		バストサイズ保存 = GET_BUSTSIZE(対象) - 1
	ELSE
		バストサイズ保存 = GET_BUSTSIZE(対象)
	ENDIF
ENDIF

SIF ペニスサイズ引き継ぎ:対象:0
	ペニスサイズ保存 = GET_PENISSIZE(対象)
SIF ヒップサイズ引き継ぎ:対象:0
	ヒップサイズ保存 = GET_HIPSIZE(対象)
SIF 体格引き継ぎ:対象:0
	体格保存 = TALENT:対象:体格
SIF 体型引き継ぎ:対象:0
	体型保存 = TALENT:対象:体型

IF 研究開発引き継ぎ:対象:0
	FOR LOCAL, 0, TECHNOLOGY_MAX_GENRE
		研究開発保存:LOCAL = TECHNOLOGY_STATUS_CHARA:対象:LOCAL
	NEXT
ENDIF

IF 妊娠記録引き継ぎ:対象:0
	FOR LOCAL, 0, PREGNANT_RECORD_MAX
		PREGNAMT_RECORD_FATHER保存:LOCAL = PREGNANT_RECORD_FATHER:対象:LOCAL
		PREGNANT_RECORD_TIMES保存:LOCAL = PREGNANT_RECORD_TIMES:対象:LOCAL
	NEXT
ENDIF

IF スキル引き継ぎ:対象:0
	FOR LOCAL, 0, SKILL_GENRE_NUM
		FOR LOCAL:1, 0, MAX_SKILL_SLOT
			SKILL_NO_SLOT保存:LOCAL:(LOCAL:1) = SKILL_NO_SLOT:対象:LOCAL:(LOCAL:1)
			SKILL_ID_SLOT保存:LOCAL:(LOCAL:1) = SKILL_ID_SLOT:対象:LOCAL:(LOCAL:1)
		NEXT
	NEXT
ENDIF

IF 衣装引き継ぎ:対象:0
	FOR LOCAL, 0, CLOTH_PART_NUM
		衣装保存:LOCAL = CLOTH:対象:LOCAL
	NEXT
ENDIF

;初期化
CALL INIT_CHARA(対象)

;-----------ここから戻す作業--------------
TALENT:対象:デイリー系 = TALENT保存:GETNUM(TALENT, "デイリー系")

;ABLを戻す
FOR LOCAL, 0, VARSIZE("ABL引き継ぎ")
	SIF ABL引き継ぎ:対象:LOCAL
		ABL:対象:LOCAL = ABL保存:LOCAL
NEXT

;TALENTを戻す
FOR LOCAL, 0, VARSIZE("TALENT引き継ぎ")
	SIF TALENT引き継ぎ:対象:LOCAL
		TALENT:対象:LOCAL = TALENT保存:LOCAL
NEXT

;EXPを戻す
FOR LOCAL, 40, 70
	SIF EXP引き継ぎ:対象:LOCAL
		EXP:対象:LOCAL = EXP保存:LOCAL
NEXT

;別途保存するやつ
FOR LOCAL, 90, 94
	SIF EXP引き継ぎ:対象:LOCAL
		EXP:対象:LOCAL = EXP保存:LOCAL
NEXT

;CFLAGを戻す
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "好感度")
	CFLAG:対象:好感度 = CFLAG保存:GETNUM(CFLAG, "好感度")
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "従属度")
	CFLAG:対象:従属度 = CFLAG保存:GETNUM(CFLAG, "従属度")
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "依存度")
	CFLAG:対象:依存度 = CFLAG保存:GETNUM(CFLAG, "依存度")
SIF CFLAG引き継ぎ:対象:GETNUM(CFLAG, "支配度")
	CFLAG:対象:支配度 = CFLAG保存:GETNUM(CFLAG, "支配度")

;BASEを戻す
FOR LOCAL, 0, VARSIZE("BASE引き継ぎ")
	SIF GROUPMATCH(LOCAL, GETNUM(BASE, "身長"), GETNUM(BASE, "体重"), GETNUM(BASE, "バスト"), GETNUM(BASE, "ウェスト"), GETNUM(BASE, "ヒップ"), GETNUM(BASE, "ペニス"))
		CONTINUE
	SIF BASE引き継ぎ:対象:LOCAL
		MAXBASE:対象:LOCAL = BASE保存:LOCAL
NEXT

SIF 性別引き継ぎ:対象:0
	TALENT:対象:性別 = 性別保存

;陥落素質を戻す
IF 陥落素質引き継ぎ:対象:0
	FOR LOCAL, 150, 157
		TALENT:対象:LOCAL = TALENT保存:LOCAL
	NEXT
ENDIF

SIF 淫乱素質引き継ぎ:対象:0
	TALENT:対象:淫乱系 = 淫乱素質保存

IF 締まり引き継ぎ:対象:0
	TALENT:対象:Ｖ締まり = Ｖ締まり保存
	TALENT:対象:Ａ締まり = Ａ締まり保存
ENDIF

IF 陰毛引き継ぎ:対象:0
	TALENT:対象:陰毛現在値 = 陰毛現在値保存
	TALENT:対象:陰毛目標値 = 陰毛目標値保存
ENDIF

IF 腋毛引き継ぎ:対象:0
	TALENT:対象:腋毛現在値 = 腋毛現在値保存
	TALENT:対象:腋毛目標値 = 腋毛目標値保存
ENDIF

IF ピアス引き継ぎ:対象:0
	TALENT:対象:ピアス = ピアス保存
	TALENT:対象:ピアス穴 =ピアス穴保存
ENDIF

IF 特殊勢力陥落引き継ぎ:対象:0
	TALENT:対象:特殊勢力陥落系 = 特殊勢力陥落保存
	FOR LOCAL, 0, VARSIZE("SP_TRAIN_COUNT")
		SP_TRAIN_COUNT:対象:LOCAL = 調教カウント保存:LOCAL
	NEXT
ENDIF

IF 性的嗜好引き継ぎ:対象:0
	SEXUAL_PREFERENCE:対象:0 = 性的嗜好保存
	FOR LOCAL, 0, VARSIZE("SEXUAL_PREFERENCE_EXP")
		SEXUAL_PREFERENCE_EXP:対象:LOCAL = 性的嗜好経験保存:LOCAL
	NEXT
ENDIF

IF タトゥー引き継ぎ:対象:0
	FOR LOCAL, 0, VARSIZE("TATTOO")
		TATTOO:対象:LOCAL = %タトゥー保存:LOCAL%
	NEXT
ENDIF

IF キス引き継ぎ:対象:0
	SEXUAL_EXPERIENCE:対象:初体験_キス = %キス保存%
	SEXUAL_LAST_EXPERIENCE:対象:初体験_キス = %キス保存%
	SEXUAL_EXPERIENCE_SITUATION:対象:初体験_キス = %キスシチュ保存%
	SEXUAL_LAST_EXPERIENCE_SITUATION:対象:初体験_キス = %キスシチュ保存%
	TALENT:対象:キス未経験 = TALENT保存:GETNUM(TALENT, "キス未経験")
ENDIF
IF 童貞引き継ぎ:対象:0
	SEXUAL_EXPERIENCE:対象:初体験_童貞 = %童貞保存%
	SEXUAL_LAST_EXPERIENCE:対象:初体験_童貞 = %童貞保存%
	TALENT:対象:童貞 = TALENT保存:GETNUM(TALENT, "童貞")
	SEXUAL_EXPERIENCE_SITUATION:対象:初体験_童貞 = %童貞シチュ保存%
	SEXUAL_LAST_EXPERIENCE_SITUATION:対象:初体験_童貞 = %童貞シチュ保存%
ENDIF
IF 処女引き継ぎ:対象:0
	SEXUAL_EXPERIENCE:対象:初体験_処女 = %処女保存%
	SEXUAL_LAST_EXPERIENCE:対象:初体験_処女 = %処女保存%
	TALENT:対象:処女 = TALENT保存:GETNUM(TALENT, "処女")
	SEXUAL_EXPERIENCE_SITUATION:対象:初体験_処女 = %処女シチュ保存%
	SEXUAL_LAST_EXPERIENCE_SITUATION:対象:初体験_処女 = %処女シチュ保存%
ENDIF
IF アナル処女引き継ぎ:対象:0
	SEXUAL_EXPERIENCE:対象:初体験_アナル処女 = %アナル処女保存%
	SEXUAL_LAST_EXPERIENCE:対象:初体験_アナル処女 = %アナル処女保存%
	SEXUAL_EXPERIENCE_SITUATION:対象:初体験_アナル処女 = %アナル処女シチュ保存%
	SEXUAL_LAST_EXPERIENCE_SITUATION:対象:初体験_アナル処女 = %アナル処女シチュ保存%

	TALENT:対象:アナル処女 = TALENT保存:GETNUM(TALENT, "アナル処女")
ENDIF

SIF バストサイズ引き継ぎ:対象:0
	CALL SET_BUSTSIZE(対象, バストサイズ保存)

SIF ペニスサイズ引き継ぎ:対象:0
	CALL SET_PENISSIZE(対象, ペニスサイズ保存)

SIF ヒップサイズ引き継ぎ:対象:0
	CALL SET_HIPSIZE(対象, ヒップサイズ保存)

SIF 体格引き継ぎ:対象:0
	TALENT:対象:体格 = 体格保存
SIF 体型引き継ぎ:対象:0
	TALENT:対象:体型 = 体型保存

IF 研究開発引き継ぎ:対象:0
	FOR LOCAL, 0, TECHNOLOGY_MAX_GENRE
		TECHNOLOGY_STATUS_CHARA:対象:LOCAL = 研究開発保存:LOCAL
	NEXT
ENDIF

IF スリーサイズ引き継ぎ:対象:0
	MAXBASE:対象:身長 = BASE保存:GETNUM(BASE, "身長")
	MAXBASE:対象:体重 = BASE保存:GETNUM(BASE, "体重")
	MAXBASE:対象:バスト = BASE保存:GETNUM(BASE, "バスト")
	MAXBASE:対象:ウェスト = BASE保存:GETNUM(BASE, "ウェスト")
	MAXBASE:対象:ヒップ = BASE保存:GETNUM(BASE, "ヒップ")
	MAXBASE:対象:ペニス = BASE保存:GETNUM(BASE, "ペニス")
	BASE:対象:身長 = MAXBASE:対象:身長
	BASE:対象:体重 = MAXBASE:対象:体重
	BASE:対象:バスト = MAXBASE:対象:バスト
	BASE:対象:ウェスト = MAXBASE:対象:ウェスト
	BASE:対象:ヒップ  = MAXBASE:対象:ヒップ
	BASE:対象:ペニス = MAXBASE:対象:ペニス
ENDIF

IF 妊娠記録引き継ぎ:対象:0
	FOR LOCAL, 0, PREGNANT_RECORD_MAX
		PREGNANT_RECORD_FATHER:対象:LOCAL = PREGNAMT_RECORD_FATHER保存:LOCAL
		PREGNANT_RECORD_TIMES:対象:LOCAL = PREGNANT_RECORD_TIMES保存:LOCAL
	NEXT
ENDIF

IF スキル引き継ぎ:対象:0
	FOR LOCAL, 0, SKILL_GENRE_NUM
		FOR LOCAL:1, 0, MAX_SKILL_SLOT
			SKILL_NO_SLOT:対象:LOCAL:(LOCAL:1) = SKILL_NO_SLOT保存:LOCAL:(LOCAL:1)
			SKILL_ID_SLOT:対象:LOCAL:(LOCAL:1) = SKILL_ID_SLOT保存:LOCAL:(LOCAL:1)
		NEXT
	NEXT
ENDIF

IF 衣装引き継ぎ:対象:0
	FOR LOCAL, 0, CLOTH_PART_NUM
		CLOTH:対象:LOCAL = 衣装保存:LOCAL
	NEXT
ENDIF

RETURN

@PASS_CHARA_CHECK_SHOW_TALENT(ARG:0)
#FUNCTION
{
	RETURNF !GROUPMATCH(ARG:0, GETNUM(TALENT, "性別"), GETNUM(TALENT, "童貞"), GETNUM(TALENT, "処女"), GETNUM(TALENT, "キス未経験"), GETNUM(TALENT, "アナル処女"),
		GETNUM(TALENT, "恋慕"), GETNUM(TALENT, "親愛"), GETNUM(TALENT, "恋人"), GETNUM(TALENT, "服従"), GETNUM(TALENT, "隷属"), GETNUM(TALENT, "烙印"), GETNUM(TALENT,"主人"), GETNUM(TALENT, "所有者"), GETNUM(TALENT, "親友"),
		GETNUM(TALENT, "崩壊"), GETNUM(TALENT, "虚ろ"), GETNUM(TALENT, "正妻"), GETNUM(TALENT, "妾"), GETNUM(TALENT, "妊娠"), GETNUM(TALENT, "育児中"),
		GETNUM(TALENT, "触手妊娠"), GETNUM(TALENT, "Ａ触手妊娠"), GETNUM(TALENT, "Ｕ触手妊娠"), GETNUM(TALENT, "子供人質"),
		GETNUM(TALENT, "バストサイズ"), GETNUM(TALENT, "ペニスサイズ"),
		GETNUM(TALENT, "母性"))
}


code:
#DIM CHARADATA 引き継ぎ設定済み
#DIM CHARADATA 性別引き継ぎ
#DIM CHARADATA ABL引き継ぎ, VARSIZE("ABL")
#DIM CHARADATA TALENT引き継ぎ, VARSIZE("TALENT")
#DIM CHARADATA EXP引き継ぎ, VARSIZE("EXP")
#DIM CHARADATA CFLAG引き継ぎ, 10
#DIM CHARADATA BASE引き継ぎ, VARSIZE("BASE")
#DIM CHARADATA 陥落素質引き継ぎ
#DIM CHARADATA 淫乱素質引き継ぎ
#DIM CHARADATA 締まり引き継ぎ
#DIM CHARADATA 陰毛引き継ぎ
#DIM CHARADATA 腋毛引き継ぎ
#DIM CHARADATA ピアス引き継ぎ
#DIM CHARADATA 特殊勢力陥落引き継ぎ
#DIM CHARADATA 性的嗜好引き継ぎ
#DIM CHARADATA タトゥー引き継ぎ
#DIM CHARADATA キス引き継ぎ
#DIM CHARADATA 童貞引き継ぎ
#DIM CHARADATA 処女引き継ぎ
#DIM CHARADATA アナル処女引き継ぎ
#DIM CHARADATA 妊娠記録引き継ぎ
#DIM CHARADATA スキル引き継ぎ
#DIM CHARADATA 衣装引き継ぎ
#DIM CHARADATA スリーサイズ引き継ぎ
#DIM CHARADATA バストサイズ引き継ぎ
#DIM CHARADATA ペニスサイズ引き継ぎ
#DIM CHARADATA ヒップサイズ引き継ぎ
#DIM CHARADATA 体型引き継ぎ
#DIM CHARADATA 体格引き継ぎ
#DIM CHARADATA 研究開発引き継ぎ

#DIM 性別引き継ぎ_TMP
#DIM ABL引き継ぎ_TMP, VARSIZE("ABL")
#DIM TALENT引き継ぎ_TMP, VARSIZE("TALENT")
#DIM EXP引き継ぎ_TMP, VARSIZE("EXP")
#DIM CFLAG引き継ぎ_TMP, 10
#DIM BASE引き継ぎ_TMP, VARSIZE("BASE")
#DIM 陥落素質引き継ぎ_TMP
#DIM 淫乱素質引き継ぎ_TMP
#DIM 締まり引き継ぎ_TMP
#DIM 陰毛引き継ぎ_TMP
#DIM 腋毛引き継ぎ_TMP
#DIM ピアス引き継ぎ_TMP
#DIM 特殊勢力陥落引き継ぎ_TMP
#DIM 性的嗜好引き継ぎ_TMP
#DIM タトゥー引き継ぎ_TMP
#DIM キス引き継ぎ_TMP
#DIM 童貞引き継ぎ_TMP
#DIM 処女引き継ぎ_TMP
#DIM アナル処女引き継ぎ_TMP
#DIM 妊娠記録引き継ぎ_TMP
#DIM スキル引き継ぎ_TMP
#DIM 衣装引き継ぎ_TMP
#DIM スリーサイズ引き継ぎ_TMP
#DIM バストサイズ引き継ぎ_TMP
#DIM ペニスサイズ引き継ぎ_TMP
#DIM ヒップサイズ引き継ぎ_TMP
#DIM 体型引き継ぎ_TMP
#DIM 体格引き継ぎ_TMP
#DIM 研究開発引き継ぎ_TMP

#DIM CONST MAX_PASS_GLOBAL_SAVE = 5

#DIMS GLOBAL SAVEDATA PASS_GLOBAL_SAVE_NAME, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 性別引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA ABL引き継ぎ_G, MAX_PASS_GLOBAL_SAVE, VARSIZE("ABL")
#DIM GLOBAL SAVEDATA TALENT引き継ぎ_G, MAX_PASS_GLOBAL_SAVE, VARSIZE("TALENT")
#DIM GLOBAL SAVEDATA EXP引き継ぎ_G, MAX_PASS_GLOBAL_SAVE, VARSIZE("EXP")
#DIM GLOBAL SAVEDATA CFLAG引き継ぎ_G, MAX_PASS_GLOBAL_SAVE, 10
#DIM GLOBAL SAVEDATA BASE引き継ぎ_G, MAX_PASS_GLOBAL_SAVE, VARSIZE("BASE")
#DIM GLOBAL SAVEDATA 陥落素質引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 淫乱素質引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 締まり引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 陰毛引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 腋毛引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA ピアス引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 特殊勢力陥落引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 性的嗜好引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA タトゥー引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA キス引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 童貞引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 処女引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA アナル処女引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 妊娠記録引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA スキル引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 衣装引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA スリーサイズ引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA バストサイズ引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA ペニスサイズ引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA ヒップサイズ引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 体型引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 体格引き継ぎ_G, MAX_PASS_GLOBAL_SAVE
#DIM GLOBAL SAVEDATA 研究開発引き継ぎ_G, MAX_PASS_GLOBAL_SAVE

repo_name: napo/erafl

license: unknown


code:
;子供の誕生関連の処理

;-------------------------
;ARG:0を母親として子供を生成する
;-------------------------
@CREATE_CHILD(ARG:0)
#DIM DYNAMIC CHARA_ID
#DIM DYNAMIC RESERVED_TARGET
;ターゲットを退避
RESERVED_TARGET = TARGET

SIF !CAN_ADD_CHILD()
	RETURN -1

;キャラを追加
ADDVOIDCHARA

;作成したキャラをターゲットにする
TARGET = CHARANUM - 1

;NOの設定
NO = FLAG:子供カウント + MIN_NO_CHILD
FLAG:子供カウント ++

;父親・母親のIDを設定
CFLAG:母親 = GET_ID(ARG:0)
CFLAG:父親 = CFLAG:(ARG:0):子の父親

;素質と能力の決定
CALL CHILD_SETTING

;初期設定(※素質決定後に行う)
CALL INIT_NEWCHARA(TARGET)

CALL RANDOM_CHARA_SKILL_SETTING
CALL CHILD_SKILL_SETTING
CALL RANDOM_CHARA_CLOTH_SETTING()
CALL CHILD_TAG_SETTING()
;ターゲットの再設定
TARGET = RESERVED_TARGET
RETURN CHARANUM - 1

;-------------------------
;子供が生誕時の処理
;-------------------------
@CHILD_SETTING
#DIM EAR
#DIM TAIL

;両親の取得
LOCAL:5 = ID_TO_CHARA(CFLAG:父親)
LOCAL:6 = ID_TO_CHARA(CFLAG:母親)

;固定の素質を付与
TALENT:童貞 = 1
TALENT:処女 = 1
TALENT:キス未経験 = 1
TALENT:アナル処女 = 1
TALENT:幼児 = 1
TALENT:体格 = 体格_子供

;設定された男性率に応じて性別を設定
IF RAND:100 < CONFIG:4
	IF CONFIG:6 == 1
		IF RAND:30 == 0
			TALENT:性別 = 4
		ELSEIF RAND:30 == 0
			TALENT:性別 = 3
		ELSE
			TALENT:性別 = 0
		ENDIF
	ELSEIF CONFIG:6 == 2
		IF RAND:20 == 0
			TALENT:性別 = 3
		ELSE
			TALENT:性別 = 0
		ENDIF
	ELSEIF CONFIG:6 == 3
		IF RAND:20 == 0
			TALENT:性別 = 4
		ELSE
			TALENT:性別 = 0
		ENDIF
	ELSE
		TALENT:性別 = 0
	ENDIF
ELSE
	IF CONFIG:5 == 1
		IF RAND:20 == 0
			TALENT:性別 = 2
		ELSE
			TALENT:性別 = 1
		ENDIF
	ELSE
		TALENT:性別 = 1
	ENDIF
	CALL SET_BUSTSIZE(TARGET, -2)
ENDIF

;■BASE値の決定
IF (LOCAL:5 >= 0 && RAND:2) || LOCAL:6 < 0
	MAXBASE:体力 = MAXBASE:(LOCAL:5):体力 + (RAND:5 - 2) * 100
ELSE
	MAXBASE:体力 = MAXBASE:(LOCAL:6):体力 + (RAND:5 - 2) * 100
ENDIF
MAXBASE:体力 = LIMIT(MAXBASE:体力, 1200, 2500)

IF (LOCAL:5 >= 0 && RAND:2) || LOCAL:6 < 0
	MAXBASE:気力 = MAXBASE:(LOCAL:5):気力 + (RAND:5 - 2) * 100
ELSE
	MAXBASE:気力 = MAXBASE:(LOCAL:6):気力 + (RAND:5 - 2) * 100
ENDIF
MAXBASE:気力 = LIMIT(MAXBASE:気力, 1000, 2200)

BASE:体力 = MAXBASE:体力
BASE:気力 = MAXBASE:気力

;精神力は仮設定
MAXBASE:精神力 = 500
BASE:精神力 = MAXBASE:精神力

;■戦闘系能力と成長型の設定
LOCAL:7 = RAND:5
IF LOCAL:5 >= 0 && LOCAL:7 < 2
	LOCAL:8 = LOCAL:5
ELSEIF LOCAL:6 >= 0 && LOCAL:7 < 4
	LOCAL:8 = LOCAL:6
ELSE
	LOCAL:8 = -1
ENDIF

IF LOCAL:8 >= 0
	TALENT:成長型 = TALENT:(LOCAL:8):成長型

	ABL:身体 = RAND:8 + 1 + ABL:(LOCAL:8):身体 / 10
	ABL:器用 = RAND:8 + 1 + ABL:(LOCAL:8):器用 / 10
	ABL:知識 = RAND:8 + 1 + ABL:(LOCAL:8):知識 / 10
	ABL:社交 = RAND:8 + 1 + ABL:(LOCAL:8):社交 / 10
	ABL:歌唱 = RAND:21
	ABL:料理 = MAX(RAND:11 - 5, 0)
ELSE
	TALENT:成長型 = RAND:9

	ABL:身体 = RAND:12 + 1
	ABL:器用 = RAND:12 + 1
	ABL:知識 = RAND:12 + 1
	ABL:社交 = RAND:12 + 1
	ABL:歌唱 = RAND:21
	ABL:料理 = MAX(RAND:11 - 5, 0)
ENDIF

;■素質の決定
;臆病、気丈
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 10, 12, 12, 12
;反抗的、素直
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 11, 13, 20, 20
;大人しい
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 14, 7
;プライド高い、プライド低い
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 15, 17, 12, 3
;生意気(素直を持つなら確率低下)
IF TALENT:素直
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 16, 3
ELSE
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 16, 12
ENDIF
;ツンデレ(反抗的を持つキャラは高確率・素直と同居しない・遺伝によらず完全ランダム)
IF TALENT:反抗的
	CALL RCHARA_TALENT_SINGLE, 18, 23
ELSEIF !TALENT:素直
	CALL RCHARA_TALENT_SINGLE, 18, 5
ENDIF
;快感に素直、快感の否定
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 70, 71, 9, 5
;自制心(快感に素直と同居しない)
IF !TALENT:快感に素直
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 20, 7
ENDIF
;好奇心、保守的
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 23, 24, 13, 6
;楽観的、悲観的
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 25, 26, 11, 7
;一線越えない
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 27, 6
;目立ちたがり
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 28, 9
;貞操観念、貞操無頓着
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 30, 31, 10, 6
;抑圧(一部素質と同居しない)
IF !TALENT:生意気 && !TALENT:好奇心 && !TALENT:楽観的 && !TALENT:目立ちたがり && !TALENT:快感に素直
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 32, 6
ENDIF
;孤高(素直を持たないキャラ限定)
IF !TALENT:素直
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 34, 6
ENDIF
;恥じらい、恥薄い(目立ちたがりを持つなら確率変動)
IF TALENT:目立ちたがり
	CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 35, 36, 3, 13
ELSE
	CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 35, 36, 13, 7
ENDIF
;無関心(一部素質と同居しない)
IF !TALENT:好奇心 && !TALENT:目立ちたがり
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 21, 7
ENDIF
;感情乏しい(一部素質と同居しない)
IF !TALENT:臆病 && !TALENT:生意気 && !TALENT:好奇心 && !TALENT:目立ちたがり && !TALENT:恥じらい
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 22, 8
ENDIF
;解放(同居しない素質多数)
IF !TALENT:臆病 && !TALENT:ツンデレ && !TALENT:自制心 && !TALENT:感情乏しい && !TALENT:保守的 && !TALENT:悲観的
	IF !TALENT:一線越えない && !TALENT:貞操観念 && !TALENT:抑圧 && !TALENT:孤高 && !TALENT:恥じらい && !TALENT:快感の否定
		CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 33, 12
	ENDIF
ENDIF
;痛みに強い、痛みに弱い
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 41, 40, 5, 4
;濡れやすい、濡れにくい
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 42, 43, 8, 5
;習得早い、習得遅い
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 50, 51, 5, 4
;舌使い
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 52, 5
;自慰しやすい
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 60, 7
;汚臭鈍感、汚臭敏感
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 61, 62, 8, 8
;献身的
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 63, 9
;中毒しやすい
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 72, 8
;倒錯的
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 80, 8
;両刀(女性の方が確率高め)
IF IS_MALE(TARGET)
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 81, 14
ELSE
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 81, 8
ENDIF

IF !TALENT:TARGET:両刀
	;男嫌い、女嫌い(異性限定)
	IF IS_MALE(TARGET)
		CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 83, 9
	ELSE
		CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 82, 9
	ENDIF
ENDIF
;Ｓ気質、Ｍ気質
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 84, 85, 8, 8
;小悪魔(女性の方が確率高め)
IF IS_MALE(TARGET)
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 86, 3
ELSE
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 86, 10
ENDIF
;魅惑
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 87, 8
;謎の魅力
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 88, 2
;回復早い、回復遅い
CALL CHILD_TALENT_OPPOSE, LOCAL:5, LOCAL:6, 111, 112, 5, 4
;幼稚
;CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 132, 6

;美脚
SIF !TALENT:性別 == 0
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 113, 12
;美尻
SIF !TALENT:性別 == 0
	CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, 114, 12

;魔術師
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, GETNUM(TALENT, "魔術師"), 2

;神聖術師
CALL CHILD_TALENT_SINGLE, LOCAL:5, LOCAL:6, GETNUM(TALENT, "神聖術師"), 2

;父親が特殊な場合の処理
;ears and tail determination reworked and added monkey.
;now ancestry is factored in to the overall chance.
;45% from mother, 45% from father, 25% bonus chance from ancestor.
IF GROUPMATCH(CFLAG:父親, GET_SPERM_ID("犬"), GET_SPERM_ID("豚"), GET_SPERM_ID("馬"), GET_SPERM_ID("猿"), GET_SPERM_ID("ワーグ"))
	TALENT:動物耳 = 1
	TALENT:しっぽ = 1
ELSE
	LOCAL:0 = LINEAGE_TO_FIXED(TARGET)
	EAR = 0
	TAIL = 0
	IF LOCAL:0 >= 0
		EAR += TALENT:(LOCAL:0):動物耳 * 25
		TAIL += TALENT:(LOCAL:0):しっぽ * 25
	ENDIF
	IF LOCAL:5 >= 0
		EAR += TALENT:(LOCAL:5):動物耳 * 45
		TAIL += TALENT:(LOCAL:5):しっぽ * 45
	ENDIF

	IF LOCAL:6 >= 0
		EAR += TALENT:(LOCAL:6):動物耳 * 45
		TAIL += TALENT:(LOCAL:6):しっぽ * 45
	ENDIF
	TALENT:動物耳 = EAR > RAND:100
	TALENT:しっぽ = TAIL > RAND:100
ENDIF

;成長後の[幼稚]を退避し、固定で幼稚を付与
;Removed earlier genetic call for 132(Child's Mind)(幼稚)
;now ancestry is factored in to the overall chance.
;45% from mother, 45% from father, 25% bonus chance from ancestor.
LOCAL:0 = LINEAGE_TO_FIXED(TARGET)
LOCAL:1 = 0
SIF LOCAL:0 >= 0
	LOCAL:1 += (TALENT:(LOCAL:0):成長後幼稚 || (TALENT:(LOCAL:0):幼稚 && !TALENT:(LOCAL:0):幼児)) * 25
SIF LOCAL:5 >= 0
	LOCAL:1 += (TALENT:(LOCAL:5):成長後幼稚 || (TALENT:(LOCAL:5):幼稚 && !TALENT:(LOCAL:5):幼児)) * 45
SIF LOCAL:6 >= 0
	LOCAL:1 += (TALENT:(LOCAL:6):成長後幼稚 || (TALENT:(LOCAL:6):幼稚 && !TALENT:(LOCAL:6):幼児)) * 45
TALENT:成長後幼稚 = LOCAL:1 > RAND:100
TALENT:幼稚 = 1

;■敏鈍感素質の決定(ランダム性高め)
LOCAL:1 = RAND:100
IF LOCAL:5 >= 0 && LOCAL:1 < 30
	FOR LOCAL:0, 101, 111
		TALENT:(LOCAL:0) = TALENT:(LOCAL:5):(LOCAL:0)
	NEXT
	IF LOCAL:1 < 8
		LOCAL:2 = RAND:10 + 101
		TALENT:(LOCAL:2) = 1
	ELSEIF LOCAL:1 < 25
		LOCAL:2 = RAND:10 + 101
		TALENT:(LOCAL:2) = 0
	ENDIF
	CALL KILL_INCOMPATIBLE_SENSE()
ELSEIF LOCAL:6 >= 0 && LOCAL:1 < 60
	FOR LOCAL:0, 101, 111
		TALENT:(LOCAL:0) = TALENT:(LOCAL:6):(LOCAL:0)
	NEXT
	IF LOCAL:1 < 38
		LOCAL:2 = RAND:10 + 101
		TALENT:(LOCAL:2) = 1
	ELSEIF LOCAL:1 < 55
		LOCAL:2 = RAND:10 + 101
		TALENT:(LOCAL:2) = 0
	ENDIF
	CALL KILL_INCOMPATIBLE_SENSE()
ELSE
	;ランダムに敏鈍感素質を設定
	CALL RANDOM_CHARA_SENSE
ENDIF

;両親の情報からバストサイズを設定
LOCAL:0 = RAND:100
IF LOCAL:6 >= 0
	SELECTCASE GET_BUSTSIZE(LOCAL:6) - CFLAG:(LOCAL:6):妊娠時バストサイズ増加
		CASE -2
			TALENT:成長後バスト = RAND(-2, 1)
		CASE -1
			TALENT:成長後バスト = RAND(-2, 2)
		CASE 0
			TALENT:成長後バスト = RAND(-2, 2)
		CASE 1
			TALENT:成長後バスト = RAND(-1, 2)
		CASE 2
			TALENT:成長後バスト = RAND(-1, 3)
		CASE 3
			TALENT:成長後バスト = RAND(1, 4)
		CASE 4
			TALENT:成長後バスト = RAND(2, 5)
	ENDSELECT
ELSE
	CALL RANDOM_CHARA_BUSTSIZE
	TALENT:成長後バスト = GET_BUSTSIZE(TARGET)
	CALL SET_BUSTSIZE(TARGET, -2)
ENDIF

LOCAL:0 = RAND:100
IF LOCAL:6 >= 0
	SELECTCASE GET_HIPSIZE(LOCAL:6)
		CASE -2
			TALENT:成長後ヒップ = RAND(-2, 1)
		CASE -1
			TALENT:成長後ヒップ = RAND(-2, 2)
		CASE 0
			TALENT:成長後ヒップ = RAND(-2, 2)
		CASE 1
			TALENT:成長後ヒップ = RAND(-1, 2)
		CASE 2
			TALENT:成長後ヒップ = RAND(-1, 3)
	ENDSELECT
ELSE
	CALL RANDOM_CHARA_HIPSIZE
	TALENT:成長後ヒップ = GET_HIPSIZE(TARGET)
	CALL SET_HIPSIZE(TARGET, -2)
ENDIF

;両親の情報から性格を決定
LOCAL:0 = RAND:100
IF LOCAL:5 >= 0 && TALENT:(LOCAL:5):性格 != 0 && LOCAL:0 < 35
	TALENT:性格 = TALENT:(LOCAL:5):性格
ELSEIF LOCAL:6 >= 0 && TALENT:(LOCAL:6):性格 != 0 && LOCAL:0 < 70
	TALENT:性格 = TALENT:(LOCAL:6):性格
ELSE
	;性格をランダムに決定
	CALL SET_CHARACTER(TARGET)
ENDIF

;髪色・髪の長さの決定
CALL SET_HAIR(TARGET)

TALENT:TARGET:Ｖ締まり = GET_DEFAULT_TIGHTNESS("ぎちぎち")
TALENT:TARGET:Ａ締まり = GET_DEFAULT_TIGHTNESS("ぎちぎち")

ABL:野心 = RAND(30, 71)

SIF TALENT:反抗的
	ABL:野心 += 5
SIF TALENT:気丈
	ABL:野心 += 5
SIF TALENT:プライド高い
	ABL:野心 += 7
SIF TALENT:生意気
	ABL:野心 += 3
SIF TALENT:好奇心
	ABL:野心 += 3
SIF TALENT:孤高
	ABL:野心 += 15
SIF TALENT:臆病
	ABL:野心 -= 5
SIF TALENT:素直
	ABL:野心 -= 5
SIF TALENT:大人しい
	ABL:野心 -= 5
SIF TALENT:自制心
	ABL:野心 -= 5
SIF TALENT:無関心
	ABL:野心 -= 5
SIF TALENT:プライド低い
	ABL:野心 -= 10
SIF TALENT:抑圧
	ABL:野心 -= 10
ABL:野心 = MAX(ABL:野心, 0)

;-------------------------
;子供に相反する２つの素質を付与するか決定する関数
;引数 0:父親のキャラ番号 1:母親のキャラ番号 2:素質番号A 3:素質番号B 4:素質Aのランダム時の付加確率 5:素質Bのランダム時の付加確率
;-------------------------
@CHILD_TALENT_OPPOSE(ARG:0, ARG:1, ARG:2, ARG:3, ARG:4, ARG:5)
;各40%で片親に依存
IF RAND:10 < 8
	IF (ARG:0 >= 0 && RAND:2) || ARG:1 < 0
		TALENT:(ARG:2) = TALENT:(ARG:0):(ARG:2)
		TALENT:(ARG:3) = TALENT:(ARG:0):(ARG:3)
	ELSE
		TALENT:(ARG:2) = TALENT:(ARG:1):(ARG:2)
		TALENT:(ARG:3) = TALENT:(ARG:1):(ARG:3)
	ENDIF
	;20%でランダム
ELSE
	LOCAL:0 = RAND:100
	IF LOCAL:0 < ARG:4
		TALENT:(ARG:2) = 1
	ELSEIF 99 - LOCAL:0 < ARG:5
		TALENT:(ARG:3) = 1
	ENDIF
ENDIF

;-------------------------
;子供に特定の素質を付与するか決定する関数
;引数 0:父親のキャラ番号 1:母親のキャラ番号 2:素質番号 3:ランダム時の付加確率
;-------------------------
@CHILD_TALENT_SINGLE(ARG:0, ARG:1, ARG:2, ARG:3)
;各40%で片親に依存
IF RAND:10 < 8
	IF (ARG:0 >= 0 && RAND:2) || ARG:1 < 0
		TALENT:(ARG:2) = TALENT:(ARG:0):(ARG:2)
	ELSE
		TALENT:(ARG:2) = TALENT:(ARG:1):(ARG:2)
	ENDIF
	;20%でランダム
ELSE
	IF RAND:100 < ARG:3
		TALENT:(ARG:2) = 1
	ENDIF
ENDIF

;-------------------------
;子供にスキルを設定するでござるの巻
;-------------------------
@CHILD_SKILL_SETTING
#DIM 父
#DIM 母
#DIM ジャンル
#DIM スキルID
#DIM 試行回数
#DIM スキルNO群, SKILL_GENRE_NUM, MAX_SKILL_SLOT * 2
#DIM スキルID群, SKILL_GENRE_NUM, MAX_SKILL_SLOT * 2
#DIM スキルレベル群, SKILL_GENRE_NUM, MAX_SKILL_SLOT * 2
#DIM スキル数, SKILL_GENRE_NUM
#DIM スキル数合計
#DIM 習得確率
#DIM スキル位置
#DIM スキル習得数
#DIM スキル習得中止
#DIM スキルレベル
VARSET スキルNO群
VARSET スキルID群
VARSET スキルレベル群
VARSET スキル数
VARSET スキル数合計
父 = ID_TO_CHARA(CFLAG:父親)
母 = ID_TO_CHARA(CFLAG:母親)

;見つからなければキャンセル
SIF 父 < 0
	GOTO FATHER_CANCEL

FOR ジャンル, 0, SKILL_GENRE_NUM
	FOR スキルID, 0, MAX_SKILL_SLOT
		SIF スキル数:ジャンル >= MAX_SKILLS
			BREAK
		SIF SKILL_ID_SLOT:父:ジャンル:スキルID == -1
			CONTINUE
		SIF SKILL_NO_SLOT:父:ジャンル:スキルID == -1
			CONTINUE
		TRYCCALLFORM SKILL_{SKILL_NO_SLOT:父:ジャンル:スキルID}_%SKILL_GENRE_ENG:ジャンル%_{SKILL_ID_SLOT:父:ジャンル:スキルID}_EXIST
			スキルNO群:ジャンル:(スキル数:ジャンル) = SKILL_NO_SLOT:父:ジャンル:スキルID
			スキルID群:ジャンル:(スキル数:ジャンル) = SKILL_ID_SLOT:父:ジャンル:スキルID
			CALLFORM SKILL_{SKILL_NO_SLOT:父:ジャンル:スキルID}_%SKILL_GENRE_ENG:ジャンル%_{SKILL_ID_SLOT:父:ジャンル:スキルID}_LEVEL
			スキルレベル群:ジャンル:(スキル数:ジャンル) = RESULT
			スキル数:ジャンル ++
			スキル数合計 ++
		CATCH
		ENDCATCH
	NEXT
NEXT

$FATHER_CANCEL

;見つからなければキャンセル（別段問題はないが軽量化のため）
;あと父親がNO0の場合もキャンセル　これは汎用スキル覚えてしまうので

SIF 母 < 0
	GOTO MOTHER_CANCEL

FOR ジャンル, 0, SKILL_GENRE_NUM
	FOR スキルID, 0, MAX_SKILL_SLOT
		SIF スキル数:ジャンル >= MAX_SKILLS
			BREAK
		SIF SKILL_ID_SLOT:母:ジャンル:スキルID == -1
			CONTINUE
		SIF SKILL_NO_SLOT:母:ジャンル:スキルID == -1
			CONTINUE
		TRYCCALLFORM SKILL_{SKILL_NO_SLOT:母:ジャンル:スキルID}_%SKILL_GENRE_ENG:ジャンル%_{SKILL_ID_SLOT:母:ジャンル:スキルID}_EXIST
			スキルNO群:ジャンル:(スキル数:ジャンル) = SKILL_NO_SLOT:母:ジャンル:スキルID
			スキルID群:ジャンル:(スキル数:ジャンル) = SKILL_ID_SLOT:母:ジャンル:スキルID
			CALLFORM SKILL_{SKILL_NO_SLOT:母:ジャンル:スキルID}_%SKILL_GENRE_ENG:ジャンル%_{SKILL_ID_SLOT:母:ジャンル:スキルID}_LEVEL
			スキルレベル群:ジャンル:(スキル数:ジャンル) = RESULT
			スキル数:ジャンル ++
			スキル数合計 ++
		CATCH
		ENDCATCH
	NEXT
NEXT

$MOTHER_CANCEL

FOR ジャンル, 0, SKILL_GENRE_NUM
	スキル習得数 = 0
	スキル習得中止 = 0
	FOR スキルレベル, 5, 0, -1
		SELECTCASE スキルレベル
			CASE 5
				習得確率 = 30
			CASE 4
				習得確率 = 50
			CASE 3
				習得確率 = 70
			CASE 1, 2
				習得確率 = 90
		ENDSELECT
		FOR スキル位置, 0, スキル数:ジャンル
			SIF スキルレベル群:ジャンル:スキル位置 != スキルレベル
				CONTINUE
			SIF 習得確率 <= RAND:100
				CONTINUE
			CALL SKILL_LEARN(TARGET, ジャンル, スキルNO群:ジャンル:スキル位置, スキルID群:ジャンル:スキル位置)
			スキル習得数 ++
			IF スキル習得数 >= RAND(1, 6)
				スキル習得中止 = 1
				BREAK
			ENDIF
		NEXT
		SIF スキル習得中止
			BREAK
	NEXT
NEXT

;-------------------------
;子供にタグを設定するでござるの巻
;-------------------------
@CHILD_TAG_SETTING
#DIM 父
#DIM 母
父 = ID_TO_CHARA(CFLAG:父親)
母 = ID_TO_CHARA(CFLAG:母親)
SIF 父 < 0
	GOTO FATHER_CANCEL
FOR LOCAL, 0, MAX_TAG
	;modded to exclude Hourai Immortal from being inheritable. It makes no canon sense and unkillable children are really annyoing.
	SIF TAG:父:LOCAL != -1 && RAND:2 && (TAG:父:LOCAL != タグ_蓬莱人)
		CALL ADD_TAG(TARGET, TAG:父:LOCAL)
NEXT

$FATHER_CANCEL

SIF 母 < 0
	RETURN
FOR LOCAL, 0, MAX_TAG
	SIF TAG:母:LOCAL != -1 && RAND:2 && (TAG:母:LOCAL != タグ_蓬莱人)
		CALL ADD_TAG(TARGET, TAG:母:LOCAL)
NEXT