code:
;각 ABL의 상승에 필요한 주나 경험의 수를 돌려준다

@JUEL_DEMAND(ARG, ARG:1, ARG:2, ARG:3)
#FUNCTION
IF ARG == 0
	RETURNF JUEL_DEMAND_0(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 1
	RETURNF JUEL_DEMAND_1(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 2
	RETURNF JUEL_DEMAND_2(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 3
	RETURNF JUEL_DEMAND_3(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 4
	RETURNF JUEL_DEMAND_4(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 9
	RETURNF JUEL_DEMAND_9(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 10
	RETURNF JUEL_DEMAND_10(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 11
	RETURNF JUEL_DEMAND_11(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 12
	RETURNF JUEL_DEMAND_12(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 13
	RETURNF JUEL_DEMAND_13(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 14
	RETURNF JUEL_DEMAND_14(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 15
	RETURNF JUEL_DEMAND_15(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 16
	RETURNF JUEL_DEMAND_16(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 17
	RETURNF JUEL_DEMAND_17(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 18
	RETURNF JUEL_DEMAND_18(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 30
	RETURNF JUEL_DEMAND_30(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 31
	RETURNF JUEL_DEMAND_31(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 32
	RETURNF JUEL_DEMAND_32(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 33
	RETURNF JUEL_DEMAND_33(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 34
	RETURNF JUEL_DEMAND_34(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 35
	RETURNF JUEL_DEMAND_35(ARG:1, ARG:2, ARG:3)
ENDIF

@EXP_DEMAND(ARG, ARG:1, ARG:2, ARG:3)
#FUNCTION
IF ARG == 0
	RETURNF EXP_DEMAND_0(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 1
	RETURNF EXP_DEMAND_1(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 2
	RETURNF EXP_DEMAND_2(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 3
	RETURNF EXP_DEMAND_3(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 9
	RETURNF EXP_DEMAND_9(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 10
	RETURNF EXP_DEMAND_10(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 11
	RETURNF EXP_DEMAND_11(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 12
	RETURNF EXP_DEMAND_12(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 13
	RETURNF EXP_DEMAND_13(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 14
	RETURNF EXP_DEMAND_14(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 15
	RETURNF EXP_DEMAND_15(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 16
	RETURNF EXP_DEMAND_16(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 17
	RETURNF EXP_DEMAND_17(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 18
	RETURNF EXP_DEMAND_18(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 30
	RETURNF EXP_DEMAND_30(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 31
	RETURNF EXP_DEMAND_31(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 32
	RETURNF EXP_DEMAND_32(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 33
	RETURNF EXP_DEMAND_33(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 34
	RETURNF EXP_DEMAND_34(ARG:1, ARG:2, ARG:3)
ELSEIF ARG == 35
	RETURNF EXP_DEMAND_35(ARG:1, ARG:2, ARG:3)
ENDIF

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;C감각
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;내친 김에 패턴의 인식이나 필요한 ABL등의 처리
;--------------------------------------------------
@JUEL_DEMAND_0(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
SELECTCASE ABL:(ARG:2):C감각
	CASE 0
		LOCAL:0 = 1
	CASE 1
		LOCAL:0 = 20
	CASE 2
		LOCAL:0 = 400
	CASE 3
		LOCAL:0 = 5000
	CASE 4
		LOCAL:0 = 15000
	CASE 5
		LOCAL:0 = 30000
	CASE 6
		LOCAL:0 = 40000
	CASE 7
		LOCAL:0 = 50000
	CASE 8
		LOCAL:0 = 60000
	CASE 9
		LOCAL:0 = 70000
	CASEELSE
		LOCAL:0 = 20000 * (ABL:(ARG:2):C감각 - 6)
ENDSELECT
;경험 보정
LOCAL:0 = LOCAL:0 * 10 / (5 + GETEXPLV(EXP:(ARG:2):C경험, 8))
LOCAL:0 = LOCAL:0 * (1 + ABL:(ARG:2):C감각) / (1 + GETEXPLV(EXP:(ARG:2):C절정경험, 8))
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.50
	ENDIF
ENDIF

SIF ARG:2 == MASTER
	LOCAL:0 *= (ABL:(ARG:2):C감각 + 1)

RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_0(ARG, ARG:1, ARG:2)
#FUNCTION
RETURNF 0

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;V감각
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_1(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
SELECTCASE ABL:(ARG:2):V감각
	CASE 0
		LOCAL:1 = 1
	CASE 1
		LOCAL:1 = 20
	CASE 2
		LOCAL:1 = 400
	CASE 3
		LOCAL:1 = 5000
	CASE 4
		LOCAL:1 = 15000
	CASE 5
		LOCAL:1 = 30000
	CASE 6
		LOCAL:1 = 40000
	CASE 7
		LOCAL:1 = 50000
	CASE 8
		LOCAL:1 = 60000
	CASE 9
		LOCAL:1 = 70000
	CASEELSE
		LOCAL:1 = 20000 * (ABL:(ARG:2):V감각 - 6)
ENDSELECT
IF EXP:(ARG:2):V확장경험 > 50
	TIMES LOCAL:1 , 0.50
ELSEIF EXP:(ARG:2):V확장경험 > 40
	TIMES LOCAL:1 , 0.60
ELSEIF EXP:(ARG:2):V확장경험 > 30
	TIMES LOCAL:1 , 0.70
ELSEIF EXP:(ARG:2):V확장경험 > 20
	TIMES LOCAL:1 , 0.80
ELSEIF EXP:(ARG:2):V확장경험 > 10
	TIMES LOCAL:1 , 0.90
ELSEIF EXP:(ARG:2):V확장경험
	TIMES LOCAL:1 , 0.95
ENDIF
IF ARG:2 != MASTER
	LOCAL:1 = LOCAL:1 * 10 / (5 + GETEXPLV(EXP:(ARG:2):V경험, 8))
	LOCAL:1 = LOCAL:1 * (1 + ABL:(ARG:2):V감각) / (1 + GETEXPLV(EXP:(ARG:2):V절정경험, 8))
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:1 , 2.00
	ELSE
		TIMES LOCAL:1 , 0.50
	ENDIF
ENDIF

SIF ARG:2 == MASTER
	LOCAL:1 *= (ABL:(ARG:2):V감각 + 1)

RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_1(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
SIF ABL:(ARG:2):V감각 > 2
	LOCAL:1 = 1
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;A감각
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_2(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
SELECTCASE ABL:(ARG:2):A감각
	CASE 0
		LOCAL:2 = 1
	CASE 1
		LOCAL:2 = 50
	CASE 2
		LOCAL:2 = 400
	CASE 3
		LOCAL:2 = 5000
	CASE 4
		LOCAL:2 = 15000
	CASE 5
		LOCAL:2 = 30000
	CASE 6
		LOCAL:2 = 40000
	CASE 7
		LOCAL:2 = 50000
	CASE 8
		LOCAL:2 = 60000
	CASE 9
		LOCAL:2 = 70000
	CASEELSE
		LOCAL:2 = 20000 * (ABL:(ARG:2):A감각 - 6)
ENDSELECT
IF EXP:(ARG:2):A확장경험 > 50
	TIMES LOCAL:2 , 0.50
ELSEIF EXP:(ARG:2):A확장경험 > 40
	TIMES LOCAL:2 , 0.60
ELSEIF EXP:(ARG:2):A확장경험 > 30
	TIMES LOCAL:2 , 0.70
ELSEIF EXP:(ARG:2):A확장경험 > 20
	TIMES LOCAL:2 , 0.80
ELSEIF EXP:(ARG:2):A확장경험 > 10
	TIMES LOCAL:2 , 0.90
ELSEIF EXP:(ARG:2):A확장경험
	TIMES LOCAL:2 , 0.95
ENDIF
IF ARG:2 != MASTER
	LOCAL:2 = LOCAL:2 * 10 / (5 + GETEXPLV(EXP:(ARG:2):A경험, 8))
	LOCAL:2 = LOCAL:2 * (1 + ABL:(ARG:2):A감각) / (1 + GETEXPLV(EXP:(ARG:2):A절정경험, 8))
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:2 , 2.00
	ELSE
		TIMES LOCAL:2 , 0.50
	ENDIF
ENDIF

SIF ARG:2 == MASTER
	LOCAL:2 *= (ABL:(ARG:2):A감각 + 1)

RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_2(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
SELECTCASE ABL:(ARG:2):A감각
	CASE 0
		LOCAL:2 = 2
	CASE 1
		LOCAL:2 = 10
	CASE 2
		LOCAL:2 = 30
	CASE 3
		LOCAL:2 = 75
	CASE 4
		LOCAL:2 = 150
	CASE 5
		LOCAL:2 = 220
	CASE 6
		LOCAL:2 = 270
	CASE 7
		LOCAL:2 = 360
	CASE 8
		LOCAL:2 = 420
	CASE 9
		LOCAL:2 = 500
	CASEELSE
		LOCAL:2 = 100 * (ABL:(ARG:2):A감각 - 4)
ENDSELECT
IF EXP:(ARG:2):A확장경험 > 50
	TIMES LOCAL:2 , 0.50
ELSEIF EXP:(ARG:2):A확장경험 > 40
	TIMES LOCAL:2 , 0.60
ELSEIF EXP:(ARG:2):A확장경험 > 30
	TIMES LOCAL:2 , 0.70
ELSEIF EXP:(ARG:2):A확장경험 > 20
	TIMES LOCAL:2 , 0.80
ELSEIF EXP:(ARG:2):A확장경험 > 10
	TIMES LOCAL:2 , 0.90
ELSEIF EXP:(ARG:2):A확장경험
	TIMES LOCAL:2 , 0.95
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:2 , 2.00
	ELSE
		TIMES LOCAL:2 , 0.50
	ENDIF
ENDIF
SIF LOCAL:2 < 1
	LOCAL:2 = 1

SIF ARG:2 == MASTER
	LOCAL:2 *= (ABL:(ARG:2):A감각 + 1)

RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;B감각
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_3(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
SELECTCASE ABL:(ARG:2):B감각
	CASE 0
		LOCAL:3 = 1
	CASE 1
		LOCAL:3 = 20
	CASE 2
		LOCAL:3 = 400
	CASE 3
		LOCAL:3 = 5000
	CASE 4
		LOCAL:3 = 15000
	CASE 5
		LOCAL:3 = 30000
	CASE 6
		LOCAL:3 = 40000
	CASE 7
		LOCAL:3 = 50000
	CASE 8
		LOCAL:3 = 60000
	CASE 9
		LOCAL:3 = 70000
	CASEELSE
		LOCAL:3 = 20000 * (ABL:(ARG:2):B감각 - 6)
ENDSELECT
IF ARG:2 != MASTER
	LOCAL:3 = LOCAL:3 * 10 / (5 + GETEXPLV(EXP:(ARG:2):B경험, 8))
	LOCAL:3 = LOCAL:3 * (1 + ABL:(ARG:2):B감각) / (1 + GETEXPLV(EXP:(ARG:2):B절정경험, 8))
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:3 , 2.00
	ELSE
		TIMES LOCAL:3 , 0.50
	ENDIF
ENDIF

SIF ARG:2 == MASTER
	LOCAL:3 *= (ABL:(ARG:2):B감각 + 1)

RETURNF LOCAL:(ARG:1)
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;M감각
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;내친 김에 패턴의 인식이나 필요한 ABL등의 처리
;--------------------------------------------------
@JUEL_DEMAND_4(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
SELECTCASE ABL:(ARG:2):M감각
	CASE 0
		LOCAL:4 = 1
	CASE 1
		LOCAL:4 = 20
	CASE 2
		LOCAL:4 = 400
	CASE 3
		LOCAL:4 = 5000
	CASE 4
		LOCAL:4 = 15000
	CASE 5
		LOCAL:4 = 30000
	CASE 6
		LOCAL:4 = 40000
	CASE 7
		LOCAL:4 = 50000
	CASE 8
		LOCAL:4 = 60000
	CASE 9
		LOCAL:4 = 70000
	CASEELSE
		LOCAL:4 = 20000 * (ABL:(ARG:2):M감각 - 6)
ENDSELECT
;경험 보정
IF ARG:2 != MASTER
	LOCAL:4 = LOCAL:4 * 10 / (5 + GETEXPLV(EXP:(ARG:2):M경험, 8))
	LOCAL:4 = LOCAL:4 * (1 + ABL:(ARG:2):M감각) / (1 + GETEXPLV(EXP:(ARG:2):M절정경험, 8))
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:4 , 2.00
	ELSE
		TIMES LOCAL:4 , 0.50
	ENDIF
ENDIF

SIF ARG:2 == MASTER
	LOCAL:4 *= (ABL:(ARG:2):M감각 + 1)

RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_3(ARG, ARG:1, ARG:2)
#FUNCTION
RETURNF 0

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;친밀
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_9(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;JUEL:호의(LOCAL:20)가 필요
SELECTCASE ABL:(ARG:2):친밀
	CASE 0
		LOCAL:20 = 30
	CASE 1
		LOCAL:20 = 100
	CASE 2
		LOCAL:20 = 300
	CASE 3
		LOCAL:20 = 1500
	CASE 4
		LOCAL:20 = 5000
	CASE 5
		LOCAL:20 = 15000
	CASE 6
		LOCAL:20 = 40000
	CASE 7
		LOCAL:20 = 70000
	CASE 8
		LOCAL:20 = 120000
	CASE 9
		LOCAL:20 = 200000
	CASEELSE
		LOCAL:20 = 100000 * (ABL:(ARG:2):친밀 - 7)
ENDSELECT

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:20 , 2.00
	ELSE
		TIMES LOCAL:20 , 0.50
	ENDIF
ENDIF
SIF CFLAG:(ARG:2):몸목적
	TIMES LOCAL:20 , 1.50
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_9(ARG, ARG:1, ARG:2)
#FUNCTION
RETURNF 0
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;순종
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;내친 김에 패턴의 인식이나 필요한 ABL등의 처리
;--------------------------------------------------
@JUEL_DEMAND_10(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 3
	RETURNF -1
;공포의 구슬로 올린다
VARSET LOCAL
IF ARG == 0
	SELECTCASE ABL:(ARG:2):순종
		CASE 0
			LOCAL:16 = 30
		CASE 1
			LOCAL:16 = 200
		CASE 2
			LOCAL:16 = 1000
		CASE 3
			LOCAL:16 = 5000
		CASE 4
			LOCAL:16 = 7500
		CASE 5
			LOCAL:16 = 10000
		CASE 6
			LOCAL:16 = 15000
		CASE 7
			LOCAL:16 = 20000
		CASE 8
			LOCAL:16 = 25000
		CASE 9
			LOCAL:16 = 30000
		CASEELSE
			LOCAL:16 = 10000 * (ABL:(ARG:2):순종 - 6)
	ENDSELECT
;복종의 구슬로 올린다
ELSEIF ARG == 1
		SELECTCASE ABL:(ARG:2):순종
			CASE 0
				LOCAL:10 = 30
			CASE 1
				LOCAL:10 = 200
			CASE 2
				LOCAL:10 = 1000
			CASE 3
				LOCAL:10 = 5000
			CASE 4
				LOCAL:10 = 7500
			CASE 5
				LOCAL:10 = 15000
			CASE 6
				LOCAL:10 = 25000
			CASE 7
				LOCAL:10 = 40000
			CASE 8
				LOCAL:10 = 50000
			CASE 9
				LOCAL:10 = 80000
			CASEELSE
				LOCAL:10 = 25000 * (ABL:(ARG:2):순종 - 5)
		ENDSELECT
;욕정의 구슬로 올린다
ELSEIF ARG == 2
;		SELECTCASE ABL:(ARG:2):순종
;			CASE 0
;				LOCAL:11 = 150
;			CASE 1
;				LOCAL:11 = 450
;			CASE 2
;				LOCAL:11 = 1000
;			CASEELSE
				RETURNF -1
;		ENDSELECT
;굴복의 구슬로 올린다
ELSEIF ARG == 3
		SELECTCASE ABL:(ARG:2):순종
			CASE 0
				LOCAL:12 = 100
			CASE 1
				LOCAL:12 = 600
			CASE 2
				LOCAL:12 = 1200
			CASEELSE
				RETURNF -1
		ENDSELECT
ENDIF
;연모
LOCAL:10 = LOCAL:10 * (10 - 2 * TALENT:(ARG:2):연모) / 10

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:10 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
		TIMES LOCAL:16 , 2.00
	ELSE
		TIMES LOCAL:10 , 0.50
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
		TIMES LOCAL:16 , 0.50
	ENDIF
ENDIF

RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_10(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;LV5로부터 6에 올릴 때는 이상경험 필요(소질：[겁장이][솔직함]이라면 무시할 수 있다)
;IF ABL:(ARG:2):순종 == 5 && TALENT:(ARG:2):담력 >= 0 && TALENT:(ARG:2):태도 >= 0
;	LOCAL:53 = 1
;LV8로부터 9에 올릴 때는 이상경험 3이상 필요(소질：[겁장이][솔직함]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):순종 == 8 && TALENT:(ARG:2):담력 >= 0 && TALENT:(ARG:2):태도 >= 0
;	LOCAL:53 = 3
;ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;욕망
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_11(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 1
	RETURNF -1
;욕망의 구슬로 올린다
VARSET LOCAL
IF ARG == 0
	SELECTCASE ABL:(ARG:2):욕망
		CASE 0
			LOCAL:11 = 1
		CASE 1
			LOCAL:11 = 20
		CASE 2
			LOCAL:11 = 1000
		CASE 3
			LOCAL:11 = 8000
		CASE 4
			LOCAL:11 = 24000
		CASE 5
			LOCAL:11 = 30000
		CASE 6
			LOCAL:11 = 40000;36000
		CASE 7
			LOCAL:11 = 50000;45000
		CASE 8
			LOCAL:11 = 75000;55000
		CASE 9
			LOCAL:11 = 100000;70000
		CASEELSE
			LOCAL:11 = 150000 * (ABL:(ARG:2):욕망 - 8)
	ENDSELECT
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):욕망
		CASE 0
			LOCAL:21 = 50
		CASE 1
			LOCAL:21 = 200
		CASE 2
			LOCAL:21 = 1000
		CASE 3
			LOCAL:21 = 8000
		CASE 4
			LOCAL:21 = 24000
		CASE 5
			LOCAL:21 = 30000
		CASE 6
			LOCAL:21 = 36000
		CASE 7
			LOCAL:21 = 45000
		CASE 8
			LOCAL:21 = 55000
		CASE 9
			LOCAL:21 = 70000
		CASEELSE
			LOCAL:21 = 10000 + 20000 * (ABL:(ARG:2):욕망 - 6)
	ENDSELECT
ENDIF
;연모
LOCAL:11 = LOCAL:11 * (10 - 2 * TALENT:(ARG:2):연모) / 10
LOCAL:21 = LOCAL:21 * (10 - 2 * TALENT:(ARG:2):연모) / 10
SIF LOCAL:11 == 0
	LOCAL:11 = 1
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:21 , 2.00
	ELSE
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:21 , 0.50
	ENDIF
ENDIF
SIF CFLAG:(ARG:2):몸목적
	TIMES LOCAL:21 , 0.70
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_11(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;LV4로부터 5에 올릴 때는 이상경험 필요(소질：[쾌감에 솔직]이라면 무시할 수 있다)
;IF ABL:(ARG:2):욕망 == 4 && TALENT:(ARG:2):쾌감응답 < 1
;	LOCAL:53 = 1
;LV7로부터 8에 올릴 때는 이상경험 3이상 필요(소질：[쾌감에 솔직]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):욕망 == 7 && TALENT:(ARG:2):쾌감응답 < 1
;	LOCAL:53 = 3
;ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;기교
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_12(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
;기교의 구슬로 올린다
VARSET LOCAL
SELECTCASE ABL:(ARG:2):기교
	CASE 0
		LOCAL:13 = 1
	CASE 1
		LOCAL:13 = 20
	CASE 2
		LOCAL:13 = 200
	CASE 3
		LOCAL:13 = 3000
	CASE 4
		LOCAL:13 = 20000
	CASE 5
		LOCAL:13 = 25000
	CASE 6
		LOCAL:13 = 34000
	CASE 7
		LOCAL:13 = 45000
	CASE 8
		LOCAL:13 = 55000
	CASE 9
		LOCAL:13 = 70000
	CASEELSE
		LOCAL:13 = 10000 + 20000 * (ABL:(ARG:2):기교 - 6)
ENDSELECT
IF TALENT:(ARG:2):습득속도==1
	TIMES LOCAL:13 , 0.50
ELSEIF TALENT:(ARG:2):습득속도==-1
	TIMES LOCAL:13 , 2.00
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:13 , 2.00
	ELSE
		TIMES LOCAL:13 , 0.50
	ENDIF
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_12(ARG, ARG:1, ARG:2)
#FUNCTION
RETURNF 0

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;봉사정신
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_13(ARG, ARG:1, ARG:2)
#FUNCTION
;순종이 필요
SIF ABL:(ARG:2):순종 < ABL:(ARG:2):봉사정신 + 1
	RETURNF -2
SIF ARG > 2
	RETURNF -1
VARSET LOCAL
;굴복의 구슬(LOCAL:12)로 올린다
IF ARG == 0
	SELECTCASE ABL:(ARG:2):봉사정신
		CASE 0
			LOCAL:12 = 100
		CASE 1
			LOCAL:12 = 1200
		CASE 2
			LOCAL:12 = 5000
		CASE 3
			LOCAL:12 = 10000
		CASE 4
			LOCAL:12 = 30000
		CASE 5
			LOCAL:12 = 35000
		CASE 6
			LOCAL:12 = 40000
		CASE 7
			LOCAL:12 = 45000
		CASE 8
			LOCAL:12 = 50000
		CASE 9
			LOCAL:12 = 60000
		CASEELSE
			LOCAL:12 = 10000 + 20000 * (ABL:(ARG:2):봉사정신 - 7)
	ENDSELECT
;복종의 구슬(LOCAL:10)로 올린다
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):봉사정신
		CASE 0
			LOCAL:10 = 20
		CASE 1
			LOCAL:10 = 100
		CASE 2
			LOCAL:10 = 600
		CASE 3
			LOCAL:10 = 2000
		CASE 4
			LOCAL:10 = 8000
		CASE 5
			LOCAL:10 = 8500
		CASE 6
			LOCAL:10 = 10000
		CASE 7
			LOCAL:10 = 15000
		CASE 8
			LOCAL:10 = 20000
		CASE 9
			LOCAL:10 = 30000
		CASEELSE
			LOCAL:10 = 10000 + 20000 * (ABL:(ARG:2):봉사정신 - 7)
	ENDSELECT
;습득의 구슬(LOCAL:13)로 올린다
ELSEIF ARG == 2
	IF ABL:(ARG:2):봉사정신 == 0
		LOCAL:13 = 100
	ELSE
		RETURNF -1
	ENDIF
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:10 , 2.00
		TIMES LOCAL:13 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:10 , 0.50
		TIMES LOCAL:13 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_13(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;굴복의 구슬로 올리려면  절정경험(LOCAL:10)과 정음경험(LOCAL:14)이 필요
IF ARG == 0
	SELECTCASE ABL:(ARG:2):봉사정신
		CASE 0
			LOCAL:10 = 5
			LOCAL:14 = 5
		CASE 1
			LOCAL:10 = 10
			LOCAL:14 = 10
		CASE 2
			LOCAL:10 = 20
			LOCAL:14 = 20
		CASE 3
			LOCAL:10 = 20
			LOCAL:14 = 20
		CASE 4
			LOCAL:10 = 30
			LOCAL:14 = 30
		CASE 5
			LOCAL:10 = 40
			LOCAL:14 = 40
		CASE 6
			LOCAL:10 = 100
			LOCAL:14 = 100
		CASE 7
			LOCAL:10 = 150
			LOCAL:14 = 150
		CASE 8
			LOCAL:10 = 200
			LOCAL:14 = 200
		CASE 9
			LOCAL:10 = 300
			LOCAL:14 = 300
		CASEELSE
			LOCAL:10 = 100 * (ABL:(ARG:2):봉사정신 - 6)
			LOCAL:14 = 100 * (ABL:(ARG:2):봉사정신 - 6)
	ENDSELECT
;복종의 구슬로 올리려면  봉사쾌락경험(LOCAL:40)이 필요
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):봉사정신
		CASE 0
			LOCAL:40 = 5
		CASE 1
			LOCAL:40 = 10
		CASE 2
			LOCAL:40 = 20
		CASE 3
			LOCAL:40 = 50
		CASE 4
			LOCAL:40 = 100
		CASE 5
			LOCAL:40 = 150
		CASE 6
			LOCAL:40 = 200
		CASE 7
			LOCAL:40 = 250
		CASE 8
			LOCAL:40 = 300
		CASE 9
			LOCAL:40 = 400
		CASEELSE
			LOCAL:40 = 100 * (ABL:(ARG:2):봉사정신 - 5)
	ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:40 , 2.00
	ELSE
		TIMES LOCAL:40 , 0.50
	ENDIF
ENDIF
;습득의 공으로 올리려면  절정경험이 필요
ELSEIF ARG == 2
	LOCAL:10 = 1
ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;노출벽
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_14(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;치정의 구슬(LOCAL:14)가 필요
SELECTCASE ABL:(ARG:2):노출벽
	CASE 0
		LOCAL:14 = 100
	CASE 1
		LOCAL:14 = 500
	CASE 2
		LOCAL:14 = 1500
	CASE 3
		LOCAL:14 = 3000
	CASE 4
		LOCAL:14 = 6000
	CASE 5
		LOCAL:14 = 10000
	CASE 6
		LOCAL:14 = 15000
	CASE 7
		LOCAL:14 = 24000
	CASE 8
		LOCAL:14 = 30000
	CASE 9
		LOCAL:14 = 40000
	CASEELSE
		LOCAL:14 = 20000 * (ABL:(ARG:2):노출벽 - 7)
ENDSELECT

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	SIF !TALENT:(ARG:2):연모
		TIMES LOCAL:14 , 2.00
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_14(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;조교자위경험과 절정경험이 필요
LOCAL:10 = 1
LOCAL:23 = 1
;LV3나 4에 올릴 때는 이상경험 필요(소질：[눈에띄고싶어함]이라면 무시할 수 있다)
;IF ABL:(ARG:2):노출벽 == 3 && !TALENT:(ARG:2):눈에띄고싶어함
;	LOCAL:53 = 1
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[눈에띄고싶어함]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):노출벽 == 4 && !TALENT:(ARG:2):눈에띄고싶어함
;	LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[눈에띄고싶어함]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):노출벽 == 6 && !TALENT:(ARG:2):눈에띄고싶어함
;	LOCAL:53 = 5
;ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;마조끼
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_15(ARG, ARG:1, ARG:2)
#FUNCTION
;욕망이 필요
SIF ABL:(ARG:2):욕망 < ABL:(ARG:2):마조끼 + 1
	RETURNF -2
SIF ARG > 1
	RETURNF -1
VARSET LOCAL

;고통(LOCAL:15)과 욕정(LOCAL:11)으로 올린다
;마조끼 끌어 올리기 패치 공포의 구슬의 저금이 많으면 고통의 구슬의 소비를 큰폭으로 저감 해, 마조끼를 올리기 쉬워진다
IF ARG == 0
	SELECTCASE ABL:(ARG:2):마조끼
		CASE 0
			LOCAL:11 = 100
			LOCAL:15 = 100
		CASE 1
			LOCAL:11 = 300
			LOCAL:15 = 500
		CASE 2
			LOCAL:11 = 1000
			LOCAL:15 = 1500
		CASE 3
			LOCAL:11 = 6000
			LOCAL:15 = 3000
		CASE 4
			LOCAL:11 = 12000
			LOCAL:15 = 5000
		CASE 5
			LOCAL:11 = 15000
			LOCAL:15 = 8000
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
		CASE 6
			LOCAL:11 = 20000
			LOCAL:15 = 12000
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
		CASE 7
			LOCAL:11 = 25000
			LOCAL:15 = 16000
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
		CASE 8
			LOCAL:11 = 30000
			LOCAL:15 = 20000
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
		CASE 9
			LOCAL:11 = 40000
			LOCAL:15 = 30000
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
		CASEELSE
			LOCAL:11 = 10000 * (ABL:(ARG:2):마조끼 - 5)
			LOCAL:15 = 10000 * (ABL:(ARG:2):마조끼 - 6)
		SIF JUEL:(ARG:2):15 < (JUEL:(ARG:2):16 / 10)
			LOCAL:15 = LOCAL:15 / 10
	ENDSELECT
;고통(LOCAL:15)과 굴복(LOCAL:12)으로 올린다
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):마조끼
		CASE 0
			LOCAL:12 = 100
			LOCAL:15 = 100
		CASE 1
			LOCAL:12 = 500
			LOCAL:15 = 500
		CASE 2
			LOCAL:12 = 1000
			LOCAL:15 = 1200
		CASEELSE
			RETURNF -1
	ENDSELECT
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:15 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:15 , 0.50
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
;마조
IF TALENT:(ARG:2):마조
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
	TIMES LOCAL:15 , 0.50
ENDIF
IF FLAG:생활능력무
	TIMES LOCAL:11 , 1.50
	TIMES LOCAL:12 , 1.50
	TIMES LOCAL:15 , 1.50
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_15(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;고통쾌락경험(EXP:(ARG:2):42)가 필요
SELECTCASE ABL:(ARG:2):마조끼
	CASE 3
		LOCAL:42 = 10
	CASE 4
		LOCAL:42 = 50
	CASE 5
		LOCAL:42 = 100
	CASE 6
		LOCAL:42 = 150
	CASE 7
		LOCAL:42 = 200
	CASE 8
		LOCAL:42 = 250
	CASE 9
		LOCAL:42 = 300
	CASE IS > 9
		LOCAL:42 = 50 + (ABL:(ARG:2):마조끼 - 3)
ENDSELECT
;고통(LOCAL:10)과 굴복(LOCAL:7)으로 올리려면  절정경험(EXP:(ARG:2):10)가 필요
SIF ARG == 0
	LOCAL:10 = 1
;LV3나 4에 올릴 때는 이상경험 필요(소질：[마조]라면 무시할 수 있다)
;IF ABL:(ARG:2):마조끼 == 3 && !TALENT:(ARG:2):마조
;	LOCAL:53 = 1
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[마조]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):마조끼 == 4 && !TALENT:(ARG:2):마조
;	LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[마조]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):마조끼 == 6 && !TALENT:(ARG:2):마조
;	LOCAL:53 = 5
;ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:42 , 2.00
	ELSE
		TIMES LOCAL:42 , 0.50
	ENDIF
ENDIF
;마조
SIF TALENT:(ARG:2):마조
	TIMES LOCAL:42 , 0.50
SIF FLAG:생활능력무
	TIMES LOCAL:42 , 1.50

RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;새드끼
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_16(ARG, ARG:1, ARG:2)
#FUNCTION
;욕망이 필요
SIF ABL:(ARG:2):욕망 < ABL:(ARG:2):새드끼 + 1
	RETURNF -2
SIF ARG > 1
	RETURNF -1
VARSET LOCAL
IF ARG == 0
;욕정(LOCAL:11)으로 올린다
	SELECTCASE ABL:(ARG:2):새드끼
		CASE 0
			LOCAL:11 = 100
		CASE 1
			LOCAL:11 = 500
		CASE 2
			LOCAL:11 = 1500
		CASE 3
			LOCAL:11 = 3000
		CASE 4
			LOCAL:11 = 5000
		CASE 5
			LOCAL:11 = 8000
		CASE 6
			LOCAL:11 = 12000
		CASE 7
			LOCAL:11 = 15000
		CASE 8
			LOCAL:11 = 25000
		CASE 9
			LOCAL:11 = 30000
		CASEELSE
			LOCAL:11 = 10000 * (ABL:(ARG:2):새드끼 - 6)
	ENDSELECT
ELSEIF ARG == 1
	;우월
	SELECTCASE ABL:(ARG:2):새드끼
		CASE 0
			LOCAL:21 = 100
		CASE 1
			LOCAL:21 = 500
		CASE 2
			LOCAL:21 = 1500
		CASE 3
			LOCAL:21 = 3000
		CASE 4
			LOCAL:21 = 5000
		CASE 5
			LOCAL:21 = 7500
		CASE 6
			LOCAL:21 = 10000
		CASE 7
			LOCAL:21 = 15000
		CASE 8
			LOCAL:21 = 20000
		CASE 9
			LOCAL:21 = 25000
		CASEELSE
			LOCAL:21 = 10000 * (ABL:(ARG:2):새드끼 - 7)
	ENDSELECT
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:21 , 2.00
	ELSE
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:21 , 0.50
	ENDIF
ENDIF
;새드
IF TALENT:(ARG:2):새드
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:21 , 0.50
ENDIF
IF FLAG:생활능력무
	TIMES LOCAL:11 , 0.80
	TIMES LOCAL:21 , 0.80
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_16(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;가학쾌락경험(EXP:(ARG:2):43)가 필요
SELECTCASE ABL:(ARG:2):새드끼
	CASE 0
		LOCAL:43 = 5
	CASE 1
		LOCAL:43 = 20
	CASE 2
		LOCAL:43 = 50
	CASE 3
		LOCAL:43 = 80
	CASE 4
		LOCAL:43 = 120
	CASE 5
		LOCAL:43 = 150
	CASE 6
		LOCAL:43 = 200
	CASE 7
		LOCAL:43 = 300
	CASE 8
		LOCAL:43 = 500
	CASE 9
		LOCAL:43 = 700
	CASEELSE
		LOCAL:43 = 250 * (ABL:(ARG:2):새드끼 - 6)
ENDSELECT

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:43 , 2.00
	ELSE
		TIMES LOCAL:43 , 0.50
	ENDIF
ENDIF
;새드
SIF TALENT:(ARG:2):새드
	TIMES LOCAL:43 , 0.50
SIF FLAG:생활능력무
	TIMES LOCAL:11 , 0.80
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;레즈끼
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_17(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 1
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 굴복(LOCAL:12)으로 올린다
IF ARG == 0
	SELECTCASE ABL:(ARG:2):레즈끼
		CASE 0
			LOCAL:11 = 200
			LOCAL:12 = 0
		CASE 1
			LOCAL:11 = 1000
			LOCAL:12 = 0
		CASE 2
			LOCAL:11 = 3000
			LOCAL:12 = 1000
		CASE 3
			LOCAL:11 = 8000
			LOCAL:12 = 2000
		CASE 4
			LOCAL:11 = 20000
			LOCAL:12 = 5000
		CASE 5
			LOCAL:11 = 25000
			LOCAL:12 = 6000
		CASE 6
			LOCAL:11 = 30000
			LOCAL:12 = 8000
		CASE 7
			LOCAL:11 = 35000
			LOCAL:12 = 10000
		CASE 8
			LOCAL:11 = 40000
			LOCAL:12 = 15000
		CASE 9
			LOCAL:11 = 45000
			LOCAL:12 = 20000
		CASEELSE
			LOCAL:11 = 10000 * (ABL:(ARG:2):레즈끼 - 4)
			LOCAL:12 = 10000 * (ABL:(ARG:2):레즈끼 - 7)
	ENDSELECT
;쾌C의 구슬로 올린다
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):레즈끼
		CASE 0
			LOCAL:0 = 1000
		CASE 1
			LOCAL:0 = 5000
		CASEELSE
			RETURNF -1
	ENDSELECT
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.50
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_17(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;레즈경험(EXP:(ARG:2):51)가 필요
SELECTCASE ABL:(ARG:2):레즈끼
	CASE 0
		LOCAL:51 = 50
	CASE 1
		LOCAL:51 = 200
	CASE 2
		LOCAL:51 = 500
	CASE 3
		LOCAL:51 = 1000
	CASE 4
		LOCAL:51 = 2000
	CASE 5
		LOCAL:51 = 2300
	CASE 6
		LOCAL:51 = 2600
	CASE 7
		LOCAL:51 = 3000
	CASE 8
		LOCAL:51 = 3500
	CASE 9
		LOCAL:51 = 4000
	CASEELSE
		LOCAL:51 = 500 * (ABL:(ARG:2):레즈끼 - 1)
ENDSELECT
;LV3나 4에 올릴 때는 이상경험 필요(소질：[양도]라면 무시할 수 있다)
;IF ABL:(ARG:2):레즈끼 == 3 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 1
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[양도]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):레즈끼 == 4 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[양도]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):레즈끼 == 8 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 5
;ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:51 , 2.00
	ELSE
		TIMES LOCAL:51 , 0.50
	ENDIF
ENDIF
SIF FLAG:포부 == 2
	TIMES LOCAL:51 , 0.90
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;호모끼
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_18(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG > 1
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 굴복(LOCAL:12)으로 올린다
IF ARG == 0
	SELECTCASE ABL:(ARG:2):호모끼
		CASE 0
			LOCAL:11 = 200
			LOCAL:12 = 0
		CASE 1
			LOCAL:11 = 1000
			LOCAL:12 = 0
		CASE 2
			LOCAL:11 = 3000
			LOCAL:12 = 1000
		CASE 3
			LOCAL:11 = 8000
			LOCAL:12 = 2000
		CASE 4
			LOCAL:11 = 20000
			LOCAL:12 = 5000
		CASE 5
			LOCAL:11 = 25000
			LOCAL:12 = 6000
		CASE 6
			LOCAL:11 = 30000
			LOCAL:12 = 8000
		CASE 7
			LOCAL:11 = 35000
			LOCAL:12 = 10000
		CASE 8
			LOCAL:11 = 40000
			LOCAL:12 = 15000
		CASE 9
			LOCAL:11 = 45000
			LOCAL:12 = 20000
		CASEELSE
			LOCAL:11 = 10000 * (ABL:(ARG:2):호모끼 - 4)
			LOCAL:12 = 10000 * (ABL:(ARG:2):호모끼 - 7)
	ENDSELECT
;쾌C의 구슬로 올린다
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):호모끼
		CASE 0
			LOCAL:0 = 1000
		CASE 1
			LOCAL:0 = 5000
		CASEELSE
			RETURNF -1
	ENDSELECT
ENDIF
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.50
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_18(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;게이경험(EXP:(ARG:2):42)가 필요
SELECTCASE ABL:(ARG:2):호모끼
	CASE 0
		LOCAL:52 = 50
	CASE 1
		LOCAL:52 = 200
	CASE 2
		LOCAL:52 = 500
	CASE 3
		LOCAL:52 = 1000
	CASE 4
		LOCAL:52 = 2000
	CASE 5
		LOCAL:52 = 2300
	CASE 6
		LOCAL:52 = 2600
	CASE 7
		LOCAL:52 = 3000
	CASE 8
		LOCAL:52 = 3500
	CASE 9
		LOCAL:52 = 4000
	CASEELSE
		LOCAL:52 = 500 * (ABL:(ARG:2):호모끼 - 1)
ENDSELECT
;LV3나 4에 올릴 때는 이상경험 필요(소질：[양도]라면 무시할 수 있다)
;IF ABL:(ARG:2):호모끼 == 3 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 1
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[양도]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):호모끼 == 4 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[양도]라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):호모끼 == 8 && TALENT:(ARG:2):성별기호 == -1
;	LOCAL:53 = 5
;ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:52 , 2.00
	ELSE
		TIMES LOCAL:52 , 0.50
	ENDIF
ENDIF
IF FLAG:포부 == 2
	TIMES LOCAL:52 , 0.90
ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;자위중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_30(ARG, ARG:1, ARG:2)
#FUNCTION
;C감각이 필요
SIF ABL:(ARG:2):C감각 <= ABL:(ARG:2):자위중독 + 1
	RETURNF -2
;노출벽이 필요
SIF ABL:(ARG:2):노출벽 <= ABL:(ARG:2):자위중독 + 1
	RETURNF -2
SIF ARG > 1
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 쾌C(LOCAL:0), 치정(LOCAL:14)으로 올린다
SELECTCASE ABL:(ARG:2):자위중독
	CASE 0
		LOCAL:11 = 1000
		LOCAL:0 = 5000
		LOCAL:14 = 1000
	CASE 1
		LOCAL:11 = 2000
		LOCAL:0 = 10000
		LOCAL:14 = 3000
	CASE 2
		LOCAL:11 = 3000
		LOCAL:0 = 30000
		LOCAL:14 = 5000
	CASE 3
		LOCAL:11 = 10000
		LOCAL:0 = 50000
		LOCAL:14 = 12000
	CASE 4
		LOCAL:11 = 15000
		LOCAL:0 = 100000
		LOCAL:14 = 20000
	CASE 5
		LOCAL:11 = 25000
		LOCAL:0 = 150000
		LOCAL:14 = 25000
	CASE 6
		LOCAL:11 = 30000
		LOCAL:0 = 200000
		LOCAL:14 = 40000
	CASE 7
		LOCAL:11 = 50000
		LOCAL:0 = 250000
		LOCAL:14 = 50000
	CASE 8
		LOCAL:11 = 60000
		LOCAL:0 = 300000
		LOCAL:14 = 60000
	CASE 9
		LOCAL:11 = 70000
		LOCAL:0 = 500000
		LOCAL:14 = 70000
	CASEELSE
		LOCAL:11 = 10000 * (ABL:(ARG:2):자위중독 - 2)
		LOCAL:0 = 100000 * (ABL:(ARG:2):자위중독 - 3)
		LOCAL:14 = 10000 * (ABL:(ARG:2):자위중독 - 2)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:14 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.40
		TIMES LOCAL:11 , 0.40
		TIMES LOCAL:14 , 0.40
	ENDIF
ENDIF
;중독되기쉬움
IF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:0 , 0.50
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:14 , 0.50
ENDIF
IF FLAG:포부 == 1
	TIMES LOCAL:0 , 0.75
	TIMES LOCAL:11 , 0.75
	TIMES LOCAL:14 , 0.75
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_30(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;자위경험(EXP:(ARG:2):22)가 필요
IF ARG == 0
	SELECTCASE ABL:(ARG:2):자위중독
		CASE 0
			LOCAL:22 = 5
		CASE 1
			LOCAL:22 = 15
		CASE 2
			LOCAL:22 = 30
		CASE 3
			LOCAL:22 = 50
		CASE 4
			LOCAL:22 = 80
		CASE 5
			LOCAL:22 = 120
		CASE 6
			LOCAL:22 = 180
		CASE 7
			LOCAL:22 = 250
		CASE 8
			LOCAL:22 = 350
		CASE 9
			LOCAL:22 = 500
		CASEELSE
			LOCAL:22 = 100 * (ABL:(ARG:2):자위중독 - 4)
	ENDSELECT
ELSEIF ARG == 1
	SELECTCASE ABL:(ARG:2):자위중독
		CASE 0
			LOCAL:22 = 5
		CASE 1
			LOCAL:22 = 15
		CASE 2
			LOCAL:22 = 30
		CASE 3
			LOCAL:22 = 50
		CASE 4
			LOCAL:22 = 80
		CASE 5
			LOCAL:22 = 120
		CASE 6
			LOCAL:22 = 180
		CASE 7
			LOCAL:22 = 250
		CASE 8
			LOCAL:22 = 350
		CASE 9
			LOCAL:23 = 500
		CASEELSE
			LOCAL:23 = 100 * (ABL:(ARG:2):자위중독 - 4)
	ENDSELECT
ENDIF
;LV3나 4에 올릴 때는 이상경험 필요(소질：[중독되기쉬움][자위중독]이라면 무시할 수 있다)
;IF ABL:(ARG:2):자위중독 == 3 && !TALENT:(ARG:2):중독되기쉬움 && !TALENT:(ARG:2):자위중독
;	LOCAL:53 = 1
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[중독되기쉬움][자위중독]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):자위중독 == 4 && !TALENT:(ARG:2):중독되기쉬움 && !TALENT:(ARG:2):자위중독
;	LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[중독되기쉬움][자위중독]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):자위중독 == 8 && !TALENT:(ARG:2):중독되기쉬움 && !TALENT:(ARG:2):자위중독
;	LOCAL:53 = 5
;ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:22 , 2.00
		TIMES LOCAL:23 , 2.00
	ELSE
		TIMES LOCAL:22 , 0.40
		TIMES LOCAL:23 , 0.40
	ENDIF
ENDIF
;중독되기쉬움
IF TALENT:(ARG:2):중독되기쉬움 || TALENT:(ARG:2):자위중독
	TIMES LOCAL:22 , 0.50
	TIMES LOCAL:23 , 0.50
ENDIF
IF FLAG:포부 == 1
	TIMES LOCAL:22 , 0.75
	TIMES LOCAL:23 , 0.75
ENDIF
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;정액중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_31(ARG, ARG:1, ARG:2)
#FUNCTION
;봉사정신이 필요
SIF ABL:(ARG:2):봉사정신 < ABL:(ARG:2):정액중독 + 1
	RETURNF -2
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 굴복(LOCAL:12)
SELECTCASE ABL:(ARG:2):정액중독
	CASE 0
		LOCAL:11 = 3000
		LOCAL:12 = 10000
	CASE 1
		LOCAL:11 = 8000
		LOCAL:12 = 25000
	CASE 2
		LOCAL:11 = 15000
		LOCAL:12 = 50000
	CASE 3
		LOCAL:11 = 30000
		LOCAL:12 = 100000
	CASE 4
		LOCAL:11 = 45000
		LOCAL:12 = 300000
	CASE 5
		LOCAL:11 = 60000
		LOCAL:12 = 350000
	CASE 6
		LOCAL:11 = 65000
		LOCAL:12 = 400000
	CASE 7
		LOCAL:11 = 70000
		LOCAL:12 = 450000
	CASE 8
		LOCAL:11 = 75000
		LOCAL:12 = 500000
	CASE 9
		LOCAL:11 = 90000
		LOCAL:12 = 600000
	CASEELSE
		LOCAL:11 = 15000 * (ABL:(ARG:2):정액중독 - 3)
		LOCAL:12 = 100000 * (ABL:(ARG:2):정액중독 - 3)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:11 , 0.40
		TIMES LOCAL:12 , 0.40
	ENDIF
ENDIF
;중독되기쉬움
IF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
;정액중독
@EXP_DEMAND_31(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;정음경험(EXP:(ARG:2):14)가 필요
SELECTCASE ABL:(ARG:2):정액중독
	CASE 0
		LOCAL:14 = 10
	CASE 1
		LOCAL:14 = 25
	CASE 2
		LOCAL:14 = 40
	CASE 3
		LOCAL:14 = 80
	CASE 4
		LOCAL:14 = 200
	CASE 5
		LOCAL:14 = 250
	CASE 6
		LOCAL:14 = 300
	CASE 7
		LOCAL:14 = 350
	CASE 8
		LOCAL:14 = 400
	CASE 9
		LOCAL:14 = 500
	CASEELSE
		LOCAL:14 = 100 * (ABL:(ARG:2):정액중독 - 4)
ENDSELECT
;LV2나 3에 올릴 때는 이상경험 필요(소질：[악취 둔감][중독되기쉬움]이라면 무시할 수 있다)
;IF ABL:(ARG:2):정액중독 == 2 && TALENT:(ARG:2):악취내성 > 0 && !TALENT:(ARG:2):중독되기쉬움
;	;LOCAL:53 = 1
;LV3나 4에 올릴 때는 이상경험 필요(소질：[악취 둔감][중독되기쉬움]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):정액중독 == 3 && TALENT:(ARG:2):악취내성 > 0 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 2
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[악취 둔감][중독되기쉬움]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):정액중독 == 4 && TALENT:(ARG:2):악취내성 > 0 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[악취 둔감][중독되기쉬움]이라면 무시할 수 있다)
;ELSEIF ABL:(ARG:2):정액중독 == 8 && TALENT:(ARG:2):악취내성 > 0 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 5
;ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:14 , 2.00
	ELSE
		TIMES LOCAL:14 , 0.50
	ENDIF
ENDIF
;중독되기쉬움
SIF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:14 , 0.50
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;레즈중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_32(ARG, ARG:1, ARG:2)
#FUNCTION
;레즈끼이 필요
SIF ABL:(ARG:2):레즈끼 < ABL:(ARG:2):레즈중독 + 1
	RETURNF -2
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;쾌C(LOCAL:0), 욕정(LOCAL:11), 굴복(LOCAL:12)이 필요
SELECTCASE ABL:(ARG:2):레즈중독
	CASE 0
		LOCAL:0 = 3000
		LOCAL:11 = 10000
		LOCAL:12 = 10000
	CASE 1
		LOCAL:0 = 8000
		LOCAL:11 = 25000
		LOCAL:12 = 25000
	CASE 2
		LOCAL:0 = 15000
		LOCAL:11 = 50000
		LOCAL:12 = 50000
	CASE 3
		LOCAL:0 = 30000
		LOCAL:11 = 100000
		LOCAL:12 = 100000
	CASE 4
		LOCAL:0 = 55000
		LOCAL:11 = 300000
		LOCAL:12 = 300000
	CASE 5
		LOCAL:0 = 60000
		LOCAL:11 = 350000
		LOCAL:12 = 350000
	CASE 6
		LOCAL:0 = 65000
		LOCAL:11 = 400000
		LOCAL:12 = 400000
	CASE 7
		LOCAL:0 = 70000
		LOCAL:11 = 450000
		LOCAL:12 = 450000
	CASE 8
		LOCAL:0 = 75000
		LOCAL:11 = 500000
		LOCAL:12 = 500000
	CASE 9
		LOCAL:0 = 80000
		LOCAL:11 = 550000
		LOCAL:12 = 550000
	CASEELSE
		LOCAL:0 = 10000 * (ABL:(ARG:2):레즈중독 - 1)
		LOCAL:11 = 60000 * (ABL:(ARG:2):레즈중독 + 1)
		LOCAL:12 = 60000 * (ABL:(ARG:2):레즈중독 + 1)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.40
		TIMES LOCAL:11 , 0.40
		TIMES LOCAL:12 , 0.40
	ENDIF
ENDIF
;중독되기쉬움
IF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:0 , 0.50
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_32(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;레즈경험(EXP:(ARG:2):51)가 필요
SELECTCASE ABL:(ARG:2):레즈중독
	CASE 0
		LOCAL:51 = 1000
	CASE 1
		LOCAL:51 = 1500
	CASE 2
		LOCAL:51 = 2000
	CASE 3
		LOCAL:51 = 4500
	CASE 4
		LOCAL:51 = 6000
	CASE 5
		LOCAL:51 = 6500
	CASE 6
		LOCAL:51 = 7000
	CASE 7
		LOCAL:51 = 7500
	CASE 8
		LOCAL:51 = 8000
	CASE 9
		LOCAL:51 = 9000
	CASEELSE
		LOCAL:51 = 1000 * ABL:(ARG:2):레즈중독
ENDSELECT
;LV2나 3에 올릴 때는 이상경험 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
IF ABL:(ARG:2):레즈중독 == 2 && TALENT:(ARG:2):성별기호 == -1 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 1
;LV3나 4에 올릴 때는 이상경험 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):레즈중독 == 3 && TALENT:(ARG:2):성별기호 == -1 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 2
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):레즈중독 == 4 && TALENT:(ARG:2):성별기호 == -1 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):레즈중독 == 8 && TALENT:(ARG:2):성별기호 == -1 && !TALENT:(ARG:2):중독되기쉬움
	;LOCAL:53 = 5
ENDIF

IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:51 , 2.00
	ELSE
		TIMES LOCAL:51 , 0.50
	ENDIF
ENDIF
;중독되기쉬움
SIF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:51 , 0.50
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;게이중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_33(ARG, ARG:1, ARG:2)
#FUNCTION
;호모끼이 필요
SIF ABL:(ARG:2):호모끼 < ABL:(ARG:2):게이중독 + 1
	RETURNF -2
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;쾌C(LOCAL:0), 욕정(LOCAL:11), 굴복(LOCAL:12)이 필요
SELECTCASE ABL:(ARG:2):게이중독
	CASE 0
		LOCAL:0 = 3000
		LOCAL:11 = 10000
		LOCAL:12 = 10000
	CASE 1
		LOCAL:0 = 8000
		LOCAL:11 = 25000
		LOCAL:12 = 25000
	CASE 2
		LOCAL:0 = 15000
		LOCAL:11 = 50000
		LOCAL:12 = 50000
	CASE 3
		LOCAL:0 = 30000
		LOCAL:11 = 100000
		LOCAL:12 = 100000
	CASE 4
		LOCAL:0 = 55000
		LOCAL:11 = 300000
		LOCAL:12 = 300000
	CASE 5
		LOCAL:0 = 60000
		LOCAL:11 = 350000
		LOCAL:12 = 350000
	CASE 6
		LOCAL:0 = 65000
		LOCAL:11 = 400000
		LOCAL:12 = 400000
	CASE 7
		LOCAL:0 = 70000
		LOCAL:11 = 450000
		LOCAL:12 = 450000
	CASE 8
		LOCAL:0 = 75000
		LOCAL:11 = 500000
		LOCAL:12 = 500000
	CASE 9
		LOCAL:0 = 80000
		LOCAL:11 = 550000
		LOCAL:12 = 550000
	CASEELSE
		LOCAL:0 = 10000 * (ABL:(ARG:2):게이중독 - 1)
		LOCAL:11 = 60000 * (ABL:(ARG:2):게이중독 + 1)
		LOCAL:12 = 60000 * (ABL:(ARG:2):게이중독 + 1)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:0 , 2.00
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:0 , 0.50
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
;중독되기쉬움
IF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:0 , 0.50
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@EXP_DEMAND_33(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;게이경험(EXP:(ARG:2):42)가 필요
SELECTCASE ABL:(ARG:2):게이중독
	CASE 0
		LOCAL:52 = 1000
	CASE 1
		LOCAL:52 = 1500
	CASE 2
		LOCAL:52 = 2000
	CASE 3
		LOCAL:52 = 4500
	CASE 4
		LOCAL:52 = 6000
	CASE 5
		LOCAL:52 = 6500
	CASE 6
		LOCAL:52 = 7000
	CASE 7
		LOCAL:52 = 7500
	CASE 8
		LOCAL:52 = 8000
	CASE 9
		LOCAL:52 = 9000
	CASEELSE
		LOCAL:52 = 1000 * ABL:(ARG:2):게이중독
ENDSELECT
;LV2나 3에 올릴 때는 이상경험 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
IF ABL:(ARG:2):게이중독 == 2 && !TALENT:(ARG:2):중독되기쉬움 && TALENT:(ARG:2):성별기호 == -1
	;LOCAL:53 = 1
;LV3나 4에 올릴 때는 이상경험 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):게이중독 == 3 && !TALENT:(ARG:2):중독되기쉬움 && TALENT:(ARG:2):성별기호 == -1
	;LOCAL:53 = 2
;LV4나 5에 올릴 때는 이상경험 3 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):게이중독 == 4 && !TALENT:(ARG:2):중독되기쉬움 && TALENT:(ARG:2):성별기호 == -1
	;LOCAL:53 = 3
;LV8나 9에 올릴 때는 이상경험 5 필요(소질：[양도][중독되기쉬움]이라면 무시할 수 있다)
ELSEIF ABL:(ARG:2):게이중독 == 8 && !TALENT:(ARG:2):중독되기쉬움 && TALENT:(ARG:2):성별기호 == -1
	;LOCAL:53 = 5
ENDIF

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:52 , 2.00
	ELSE
		TIMES LOCAL:52 , 0.50
	ENDIF
ENDIF
;중독되기쉬움
SIF TALENT:(ARG:2):중독되기쉬움
	TIMES LOCAL:52 , 0.50
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;질내사정중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_34(ARG, ARG:1, ARG:2)
#FUNCTION
;정액중독이 필요
SIF ABL:(ARG:2):정액중독 < ABL:(ARG:2):질내사정중독 + 1
	RETURNF -2
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 굴복(LOCAL:12)
SELECTCASE ABL:(ARG:2):질내사정중독
	CASE 0
		LOCAL:11 = 3000
		LOCAL:12 = 10000
	CASE 1
		LOCAL:11 = 8000
		LOCAL:12 = 25000
	CASE 2
		LOCAL:11 = 15000
		LOCAL:12 = 50000
	CASE 3
		LOCAL:11 = 30000
		LOCAL:12 = 100000
	CASE 4
		LOCAL:11 = 45000
		LOCAL:12 = 300000
	CASE 5
		LOCAL:11 = 60000
		LOCAL:12 = 350000
	CASE 6
		LOCAL:11 = 65000
		LOCAL:12 = 400000
	CASE 7
		LOCAL:11 = 70000
		LOCAL:12 = 450000
	CASE 8
		LOCAL:11 = 75000
		LOCAL:12 = 500000
	CASE 9
		LOCAL:11 = 90000
		LOCAL:12 = 600000
	CASEELSE
		LOCAL:11 = 15000 * (ABL:(ARG:2):질내사정중독 - 3)
		LOCAL:12 = 100000 * (ABL:(ARG:2):질내사정중독 - 3)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:11 , 0.50
		TIMES LOCAL:12 , 0.50
	ENDIF
ENDIF
;V감도
IF TALENT:(ARG:2):V감도 > 0
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
ENDIF
RETURNF LOCAL:(ARG:1)

;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
;질내사정중독
@EXP_DEMAND_34(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;질내사정경험(EXP:(ARG:2):16)가 필요
SELECTCASE ABL:(ARG:2):질내사정중독
	CASE 0
		LOCAL:16 = 10
	CASE 1
		LOCAL:16 = 25
	CASE 2
		LOCAL:16 = 40
	CASE 3
		LOCAL:16 = 80
	CASE 4
		LOCAL:16 = 200
	CASE 5
		LOCAL:16 = 250
	CASE 6
		LOCAL:16 = 300
	CASE 7
		LOCAL:16 = 350
	CASE 8
		LOCAL:16 = 400
	CASE 9
		LOCAL:16 = 500
	CASEELSE
		LOCAL:16 = 100 * (ABL:(ARG:2):질내사정중독 - 4)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:16 , 2.00
	ELSE
		TIMES LOCAL:16 , 0.40
	ENDIF
ENDIF
;V감도
SIF TALENT:(ARG:2):V감도 > 0
	TIMES LOCAL:16 , 0.50
RETURNF LOCAL:(ARG:1)

;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;항내사정중독
;≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
;--------------------------------------------------
;ARG 패턴
;JUEL:(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
@JUEL_DEMAND_35(ARG, ARG:1, ARG:2)
#FUNCTION
;정액중독이 필요
SIF ABL:(ARG:2):항내사정중독 > ABL:(ARG:2):정액중독 + 1
	RETURNF -2
SIF ARG > 0
	RETURNF -1
VARSET LOCAL
;욕정(LOCAL:11), 굴복(LOCAL:12)
SELECTCASE ABL:(ARG:2):항내사정중독
	CASE 0
		LOCAL:11 = 3000
		LOCAL:12 = 10000
	CASE 1
		LOCAL:11 = 8000
		LOCAL:12 = 25000
	CASE 2
		LOCAL:11 = 15000
		LOCAL:12 = 50000
	CASE 3
		LOCAL:11 = 30000
		LOCAL:12 = 100000
	CASE 4
		LOCAL:11 = 45000
		LOCAL:12 = 300000
	CASE 5
		LOCAL:11 = 60000
		LOCAL:12 = 350000
	CASE 6
		LOCAL:11 = 65000
		LOCAL:12 = 400000
	CASE 7
		LOCAL:11 = 70000
		LOCAL:12 = 450000
	CASE 8
		LOCAL:11 = 75000
		LOCAL:12 = 500000
	CASE 9
		LOCAL:11 = 90000
		LOCAL:12 = 600000
	CASEELSE
		LOCAL:11 = 15000 * (ABL:(ARG:2):항내사정중독 - 3)
		LOCAL:12 = 100000 * (ABL:(ARG:2):항내사정중독 - 3)
ENDSELECT
;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:11 , 2.00
		TIMES LOCAL:12 , 2.00
	ELSE
		TIMES LOCAL:11 , 0.40
		TIMES LOCAL:12 , 0.40
	ENDIF
ENDIF
;A감도
IF TALENT:(ARG:2):A감도 > 0
	TIMES LOCAL:11 , 0.50
	TIMES LOCAL:12 , 0.50
ENDIF
RETURNF LOCAL:(ARG:1)
;--------------------------------------------------
;ARG 패턴
;EXP:(ARG:2):(ARG:1)가 필요하면 LOCAL:(ARG:1)에 대입해 그 값을 돌려준다
;--------------------------------------------------
;항내사정중독
@EXP_DEMAND_35(ARG, ARG:1, ARG:2)
#FUNCTION
VARSET LOCAL
;항내사정경험(EXP:(ARG:2):항내사정경험)가 필요
SELECTCASE ABL:(ARG:2):항내사정중독
	CASE 0
		LOCAL:17 = 10
	CASE 1
		LOCAL:17 = 25
	CASE 2
		LOCAL:17 = 40
	CASE 3
		LOCAL:17 = 80
	CASE 4
		LOCAL:17 = 200
	CASE 5
		LOCAL:17 = 250
	CASE 6
		LOCAL:17 = 300
	CASE 7
		LOCAL:17 = 350
	CASE 8
		LOCAL:17 = 400
	CASE 9
		LOCAL:17 = 500
	CASEELSE
		LOCAL:17 = 100 * (ABL:(ARG:2):항내사정중독 - 4)
ENDSELECT

;일선을넘지않음
IF TALENT:(ARG:2):일선을넘지않음
	IF !TALENT:(ARG:2):연모
		TIMES LOCAL:17 , 2.00
	ELSE
		TIMES LOCAL:17 , 0.50
	ENDIF
ENDIF
;A감도
SIF TALENT:(ARG:2):A감도 > 0
	TIMES LOCAL:17 , 0.50
RETURNF LOCAL:(ARG:1)


code:
@SHOW_JUEL

@SHOW_ABLUP_SELECT
#DIM 올리는ABL
#DIM 캐릭터
#DIM 능력치부족
#DIM 경험부족

FOR 캐릭터, 0, CHARANUM
	FOR LOCAL:11, 0,30
		SELECTCASE LOCAL:11
			;많은 요소가 필요한 능력으로부터 올려 간다
			;자위중독
			CASE 0
				올리는ABL= 30
			;질내사정중독
			CASE 1
				올리는ABL= 34
			;항내사정중독
			CASE 2
				올리는ABL= 35
			;정액중독
			CASE 3
				올리는ABL= 31
			;레즈중독
			CASE 4
				올리는ABL= 32
			;게이중독
			CASE 5
				올리는ABL= 33
			;봉사정신
			CASE 6
				올리는ABL= 13
			;레즈끼
			CASE 7
				올리는ABL= 17
			;호모끼
			CASE 8
				올리는ABL= 18
			;마조끼
			CASE 9
				올리는ABL= 15
			;새드끼
			CASE 10
				올리는ABL= 16
			;노출벽
			CASE 11
				올리는ABL= 14
			;친밀
			CASE 12
				올리는ABL= 9
			;순종
			CASE 13
				올리는ABL= 10
			;욕망
			CASE 14
				올리는ABL= 11
			;기교
			CASE 15
				올리는ABL= 12
			;C감각
			CASE 16
				올리는ABL= 0
			;V감각
			CASE 17
				올리는ABL= 1
			;A감각
			CASE 18
				올리는ABL= 2
			;B감각
			CASE 19
				올리는ABL= 3
			;M감각
			CASE 20
				올리는ABL= 4
			CASEELSE
				CONTINUE
		ENDSELECT
		FOR LOCAL, 0,4
			$AGAIN
			능력치부족 = 0
			경험부족 = 0
			SIF JUEL_DEMAND(올리는ABL, LOCAL, 0, 캐릭터) == -2
				BREAK
			SIF JUEL_DEMAND(올리는ABL, LOCAL, 0, 캐릭터) < 0
				CONTINUE
			;필요한 보주를 찾는다
			FOR LOCAL:1, 0,100
				IF JUEL_DEMAND(올리는ABL, LOCAL, LOCAL:1, 캐릭터) > 0
					IF JUEL:(캐릭터):(LOCAL:1) < JUEL_DEMAND(올리는ABL, LOCAL, LOCAL:1, 캐릭터)
						능력치부족 ++
						BREAK
					ENDIF
				ENDIF
			NEXT
			SIF 능력치부족
				CONTINUE
			;필요한 경험을 찾는다
			FOR LOCAL:1, 0,100
				IF EXP_DEMAND(올리는ABL, LOCAL, LOCAL:1, 캐릭터) > 0
					IF  EXP:(캐릭터):(LOCAL:1) < EXP_DEMAND(올리는ABL, LOCAL, LOCAL:1, 캐릭터)
						경험부족 ++
						BREAK
					ENDIF
				ENDIF
			NEXT
			SIF 경험부족
				CONTINUE
			FOR LOCAL:1, 0,40
				JUEL:(캐릭터):(LOCAL:1) -= JUEL_DEMAND(올리는ABL, LOCAL, LOCAL:1, 캐릭터)
			NEXT
			IF !LOCAL:5
				PRINTFORM %CALLNAME:(캐릭터), 14, RIGHT% …
				LOCAL:5 ++
			ELSE
				;18문자 공백을 삽입
				PRINTFORM
			ENDIF
			PRINTFORM %ABLNAME:(올리는ABL), 8, RIGHT%LVUP
			PRINTFORM  (
			;성장전
			CALL PRINT_RANK(ABL:캐릭터:올리는ABL, "MAX_99")
			PRINTFORM {ABL:(캐릭터):(올리는ABL), 2, RIGHT} →
			;성장은 여기서
			ABL:(캐릭터):(올리는ABL) += 1
			;성장 후
			CALL PRINT_RANK(ABL:캐릭터:올리는ABL, "MAX_99")
			PRINTFORMW {ABL:(캐릭터):(올리는ABL), 2, RIGHT})
			;BREAK
			GOTO AGAIN
		NEXT
	NEXT
	;값의 초기화
	LOCAL:5 = 0
NEXT
PRINT [100] - 확인

@USERABLUP
IF RESULT == 100
	CALL JUJUN_UP_CHECK
	CALL YOKUBO_UP_CHECK
	BEGIN TURNEND
	RETURN 1
ENDIF
RETURN 0

;ABL의 상한
@MAXABL(ARG)
;연모는 MAXLV99
IF ABL:ARG >= 99
	PRINTW 이미 MAX입니다
	RETURN 1
ELSEIF ABL:ARG >= 5 && !TALENT:연모
	PRINTW 이미 MAX입니다
	RETURN 1
ENDIF
RETURN 0

repo_name: purugi/eraTWKR

license: mit


code:
;FileName_ATTITUDE.ERB --------------------------------- Rev1. 00
;캐릭터의 태도
;CALL		USER
;ARG		VOID
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_ATTITUDE
VARSET LOCAL
FOR LOCAL, 1, CHARANUM
	SELECTCASE CFLAG:LOCAL:호감도
		CASE IS < 1000
			LOCAL:1 = 0
		CASE 1001 TO 3000
			LOCAL:1 = 50
		CASE 3001 TO 5000
			LOCAL:1 = 75
		CASE 5001 TO 10000
			LOCAL:1 = 100
		CASE 10001 TO 30000
			LOCAL:1 = 150
		CASE 30001 TO 50000
			LOCAL:1 = 200
		CASEELSE
			LOCAL:1 = 300
	ENDSELECT
	SELECTCASE CFLAG:LOCAL:신뢰도
		CASE IS < 100
			LOCAL:1 -= 50
		CASE 101 TO 300
			LOCAL:1 -= 20
		CASE 301 TO 500
			LOCAL:1 += 0
		CASE 501 TO 750
			LOCAL:1 += 30
		CASE 751 TO 1000
			LOCAL:1 += 50
		CASEELSE
			LOCAL:1 += 100
	ENDSELECT
	;함락 소질에 의한 수정
	LOCAL:1 += TALENT:LOCAL:연모 * 100 + TALENT:LOCAL:사모 * 30 + TALENT:LOCAL:애욕 * 80 + TALENT:LOCAL:섹프 * 30
	;ABL에 의한 수정
	LOCAL:1 += MIN(ABL:LOCAL:친밀, 20) * 10 + MIN(ABL:LOCAL:욕망, 20) * 5
	;PALAM에 의한 수정(함께 최대 15 LV)
	LOCAL:1 += GETPALAMLV(PALAM:LOCAL:욕정, 15) * 5 + GETPALAMLV(PALAM:LOCAL:호의, 15) * 5
	;무드와 이성의 밤수정
	LOCAL:1 += BASE:LOCAL:무드 / 25 + (1000 - BASE:LOCAL:이성) / 25
	;각인에 의한 수정
	LOCAL:1 += MARK:LOCAL:괘씸각인 * 20 + MARK:LOCAL:쾌락각인 * 20
	LOCAL:1 -= MIN(MARK:LOCAL:반발각인 - MARK:LOCAL:시간각인 , 0) * 30
	;약
	IF TCVAR:LOCAL:발정
		LOCAL:1 += 50
	ELSEIF TCVAR:LOCAL:미약 || TCVAR:LOCAL:춘약
		LOCAL:1 += 30
	ENDIF
	;남성기피
	SIF OTOKOGIRAI(LOCAL)
		LOCAL:1 -= 70
	;동성으로 양도가 아닌 경우, 태도가 2이상이 되기 어렵다
	;코멘트에 따른 조건에 개조, 덧붙여 양성은 동성 취급
	IF TALENT:LOCAL:성별기호 != -1 && HETEROSEX(MASTER, LOCAL)
			IF LOCAL:1 < 150
				LOCAL:1 += 20
			ELSEIF LOCAL:1 > 200
				LOCAL:1 -= 30
			ENDIF
		;ENDIF
	ENDIF
	SIF TALENT:LOCAL:걸레
		LOCAL:1 += 400
	SIF CFLAG:LOCAL:억지로질내사정
		LOCAL:1 -= 100
	SIF LOCAL:1 >= 100 && FLAG:생활능력무
		LOCAL:1 += 50
	CFLAG:LOCAL:합의판정 = LOCAL:1
	SELECTCASE CFLAG:LOCAL:합의판정
		CASE IS >= 500
			CFLAG:LOCAL:태도 = 3
		CASE IS >= 300
			CFLAG:LOCAL:태도 = 2
		CASE IS >= 150
			CFLAG:LOCAL:태도 = 1
		CASEELSE
			CFLAG:LOCAL:태도 = 0
	ENDSELECT
	SIF CFLAG:LOCAL:빡침 && !FLAG:70
		CFLAG:LOCAL:태도 = 0
	SIF CFLAG:LOCAL:수면
		CFLAG:LOCAL:태도 = 0
NEXT

;FileName_ATTITUDE.ERB ------------------------------- Rev1. 00
;키스 성공 여부 판정
;CALL		USER
;ARG		커맨드 NO
;RETURN		1:커맨드 거부, 0:커맨드 성공
;COMMENT
;-----------------------------------------------------------
@REJECT_CHECK(ARG)
#FUNCTION
#DIM 필요치
필요치 = 0
VARSET LOCAL
;파라미터에 의해 성공 기초치 판정

SELECTCASE ARG
	;키스
	CASE 312, 602
		필요치 = 200 + TALENT:일선을넘지않음 * 30 + ABS(TALENT:키스미경험) * 20
		SIF GETBIT(CFLAG:기정사실, 0)
			필요치 -= 20
		SIF TALENT:사모 && !TALENT:연모
			필요치 -= 30
		;키스에 의해 합의가 붙는, 합의유의 경우 판정 없음
		IF (CFLAG:합의판정 > 필요치) || GETBIT(CFLAG:기정사실 , 2)
			RETURNF 0
		ELSE
			RETURNF 1
		ENDIF
ENDSELECT

;TFLAG:194 (1=명째가 있다　2=야외는 싫어 입니다만　3=많은 사람 플레이는 용서　4=합의가 있어도 무드가 충분하지 않다
;TCVAR:껴안고첫회　1=보통으로 합의Get　2=먼저 키스 정도 해라　3=미약or발정에는 이길 수 없었어요 …　4=분한…각인조차 없으면 히″쿠히″군　5=억지로 재촉당한다고 거절할수 없다
;6=반드시 싫지만은 않다　7=안 돼　8=논외　9=삽입금지 10= 모리야복권데이트상대

@껴안고(ARG)
#DIM 호의판정치
#DIM 이성판정치
#DIM 합의붙지않는다

합의붙지않는다 = 0
호의판정치 = CFLAG:ARG:합의판정
이성판정치 = 껴안고필요치(ARG)
;발정 등은 미리 CFLAG:합의판정으로 계산에 들어가 있지만,
;그것을 강조하는 연출을 위해서(때문에) 굳이 거기를 공제해 둔다
IF TCVAR:ARG:발정
	호의판정치  -= 50
ELSEIF TCVAR:ARG:미약 || TCVAR:ARG:춘약
	호의판정치  -= 30
ENDIF
;종래의 100단위로 하트를 내는 형식이라고 줄선 수가 적어 외롭기 때문에, 50단위로 한다
CALL SHOW_LOVEPOWER(호의판정치, 50)
CALL SHOW_REASONWALL(이성판정치, 50)

;이 보정만은 합의를 저해하지 않는다
IF CFLAG:ARG:대주고말았다
	CALL COLORMESSAGE(@"기세라고 해도 이전 몸을 용서(허락)해 끝내고 있는 만큼, 저항이 얇은 것 같다", C_YELLOW, 2)
	이성판정치 -= 20
	CALL SHOW_REASONWALL(이성판정치, 50)
ENDIF
IF 호의판정치 >= 이성판정치
	IF !GETBIT(CFLAG:ARG:기정사실 , 0) && !TALENT:ARG:무지
		TCVAR:ARG:껴안고첫회 = 2
	ELSE
		TCVAR:ARG:껴안고첫회 = 1
	ENDIF
	;보정없이 밀어 넘어뜨리지 않는다고 합의가 붙지 않는다
	SETBIT CFLAG:ARG:기정사실 , 1
	CALL COLORMESSAGE(@"%CALLNAME:ARG%의 합의를 얻은", C_YELLOW, 2)
ELSE
	IF TCVAR:ARG:발정
		이성판정치  -= 50
		CALL COLORMESSAGE(@"발정한 %CALLNAME:ARG%의 몸은, 뜻에 반해 %마스터를% 요구해 버리는……", C_YELLOW, 2)
	ELSEIF TCVAR:ARG:미약 || TCVAR:ARG:춘약
		이성판정치  -= 30
		CALL COLORMESSAGE(@"약의 효과로 %CALLNAME:ARG%의\@ TCVAR:ARG:춘약?  가슴이 크게 고동친다# 몸이 쑤시는\@……", C_YELLOW, 2)
	ENDIF
	SIF TCVAR:ARG:미약 || TCVAR:ARG:춘약 || TCVAR:ARG:발정
		CALL SHOW_REASONWALL(이성판정치, 50)
	IF 호의판정치 >= 이성판정치
		TCVAR:ARG:껴안고첫회 = 3
	ELSEIF FLAG:모리야복권데이트상대 == ARG
		TCVAR:ARG:껴안고첫회 = 10
	ELSE
		IF CFLAG:ARG:몸목적
			CALL COLORMESSAGE(@"애욕을 독점하는 미라다의돌밀레니엄이 요염하게 빛난다…!", C_YELLOW, 2)
			이성판정치 -= 100
			CALL SHOW_REASONWALL(이성판정치, 50)
		ENDIF
		IF MARK:ARG:시간각인
			CALL COLORMESSAGE(@"멈추었을 때 중(안)에서 개발된%CALLNAME:TARGET%의 몸은, 본인의 의지와 구 어쩔 수 없고 %마스터를% 요구해 버리는…", C_YELLOW, 2)
			이성판정치 -= MARK:ARG:시간각인 * 30
			CALL SHOW_REASONWALL(이성판정치, 50)
		ENDIF
		IF 호의판정치 >= 이성판정치
			TCVAR:ARG:껴안고첫회 = 4
		ELSEIF 호의판정치 >= 이성판정치 - 50
			IF TALENT:ARG:담력 < 0
				TCVAR:ARG:껴안고첫회 = 5
			ELSE
				TCVAR:ARG:껴안고첫회 = 6
			ENDIF
		ELSEIF 호의판정치 >= 이성판정치 - 150
			TCVAR:ARG:껴안고첫회 = 7
		ELSE
			TCVAR:ARG:껴안고첫회 = 8
		ENDIF
	ENDIF
ENDIF

SELECTCASE TCVAR:ARG:껴안고첫회
	CASE 1 TO 5
		CFLAG:ARG:우후후 = 1
		CFLAG:MASTER:우후후 = 1
		SIF TCVAR:ARG:껴안고첫회 == 5
			SOURCE:ARG:공포 += 1000
			SIF !GETBIT(CFLAG:ARG:기정사실, 1)
				CFLAG:ARG:대주고말았다 = 1
	CASE 6
		SOURCE:ARG:사랑 += 500
		TFLAG:밀어넘어뜨릴수없다 ++
	CASE 7
		SOURCE:ARG:반감 += 1000
		TFLAG:밀어넘어뜨릴수없다 ++
		TFLAG:98 = -3
	CASE 10
		SOURCE:ARG:반감 += 1000
		TFLAG:98 = -10

	CASE 8
		SOURCE:ARG:반감 += 3000
		TFLAG:밀어넘어뜨릴수없다 ++
		TFLAG:98 = -5
		SIF TALENT:ARG:담력 < 0
			SOURCE:ARG:공포 += 1000
	[SKIPSTART]
	CASE 9
		PRINTFORML %타겟은% %마스터를% 거절했지만, 그 뺨은 희미하게 상기 해, 눈동자는 정욕에 물기를 띠고 있다…
		$LOOP
		PRINTL [0] 억지로 강요한다
		PRINTFORML [1] \@ TALENT:MASTER:2 == 2 ?  신사 # 숙녀 \@이므로 그런 일은 하지 않는다
		INPUT
		IF RESULT == 1
			PRINTFORML %마스터는% 솔직하게 물러났다
			PRINTFORML %타겟은% 기분 탓인지 아쉬움 아까워하는 기색이다…
			SOURCE:ARG:반감 += 700
			TFLAG:밀어넘어뜨릴수없다 ++
			TFLAG:98 = -1
		ELSEIF RESULT == 0
			PRINTFORML %마스터는% 조용히%타겟을% 껴안으면(자), 억지로 입술을 빼앗았다…
				PRINTL
				PRINTL
				FONTSTYLE 3
				ALIGNMENT CENTER
				PRINTL 즈큐우우
				PRINTL
				PRINTW
				FONTREGULAR
				ALIGNMENT LEFT
				IF TALENT:TARGET:6
					CALL SET_FIRSTKISS(TARGET)
					PRINT 끔찍하게 첫키스를 빼앗겼음에도 불구하고,
				ENDIF
				PRINTFORMW 알지 않는 사이에 저속해지고 자르고 있던%CALLNAME:TARGET%의 몸은, %CALLNAME:MASTER%의 체온, 냄새나 반응해 %마스터를% 받아들이려고 끝낸다…
				;실패
				IF TALENT:TARGET:6
					PRINTFORMW 그러나%타겟은% 기력을 쥐어짜%마스터를% 뿌리치면(자)
					PRINTW 진한 개 도대체 뭐 생각하는거야!도둑 물로 입을 씻고 있겠어!
					IF ABL:TARGET:전투 기능 > ABL:MASTER:전투 기능
						FONTITALIC
						PRINTW 「이 여자!일부러 도둑으로 씻어 자신의 의지를 나타낼까!그런것은 꽉 차지 않는 자존심다!」
						FONTREGULAR
						PRINTFORML 이성을 잃은 %마스터는% %CALLNAME:TARGET%에 덤벼 들었지만, 그녀 힘은 %마스터를% 능가하고 있었다.
						PRINTFORML %CALLNAME:TARGET%의 눈이 결단적 살의에 번쩍과 빛난다!「이약!」
						PRINTFORML 「그워!」%마스터는% 와이어 액션인 듯해 날아가 벽에 두드려 붙여졌다.
						PRINTFORML %타겟은% 재빠르게 달려들어 마운트를 빼앗는다!
						FONTITALIC
						PRINTFORMW 「네가 울 때까지 때리는 것을 그만두지 않는!」
						FONTREGULAR
						PRINTFORMW 「이약!」 오른쪽 파운드!「그워!」
						PRINTFORMW 「이약!」왼쪽 파운드!「그워!」
						PRINTFORMW %마스터가% 되받아 친다!「이약!」
						PRINTFORMW %타겟은% 가이드 해, 「이약!」 오른쪽 파운드!「그워!」
						PRINTFORMW 「이약!」왼쪽 파운드!「그워!」
						FONTITALIC
						PRINTFORMW 「, 잘도……잘도 잘도!이 %CALLNAME:MASTER%로 향해… 이 추접스러운 바보가!」
						FONTREGULAR
						PRINTFORML 위독한 대미지를 진%마스터는% 울부짖어 도망갔다
						PRINTFORML 브자마!
						DOWNBASE:MASTER:체력 = ABL:TARGET:전투 기능 * 500
						DOWNBASE:MASTER:기력 = ABL:TARGET:전투 기능 * 500
					ELSE
				;성공
			IF TEQUIP:0 > 1
				IF PALAM:윤활 > PALAMLV:4
					PRINTFORM 질퍽질퍽하게 젖었다
				ELSEIF PALAM:윤활 > PALAMLV:2
					PRINTFORM 희미하게 습기찼다
				ENDIF
			ENDIF
			PRINTFORML %SHOW_BOTTOM(TARGET)%에 손을 넣어 깐족깐족괴롭히고 …
			PRINTFORML %CALLNAME:TARGET%
			;실패
	[SKIPEND]
ENDSELECT

@껴안고필요치(ARG)
#FUNCTION
LOCAL = 350
LOCAL += TALENT:ARG:일선을넘지않음 * 50 + TALENT:ARG:자존심 * 30 + TALENT:ARG:태도 * 20 - TALENT:ARG:성적흥미 * 20 + TALENT:ARG:정조 * 50
SIF !GETBIT(CFLAG:ARG:기정사실 , 0)
	LOCAL += 20
;양도가 아니고 동성
IF TALENT:ARG:성별기호 != -1
	SIF OTOKOGIRAI(ARG)
		LOCAL += 50
ENDIF
;연모도 사모도 애욕도 없음
SIF TALENT:ARG:사모 && !TALENT:ARG:연모 && !TALENT:ARG:애욕
	LOCAL += 50
;남성기피
SIF OTOKOGIRAI(ARG)
	LOCAL += 50
;무지
SIF TALENT:ARG:무지
	LOCAL -= 50
SIF CFLAG:ARG:약점잡힘
	LOCAL -= 50
;욕구 불만
LOCAL -= CFLAG:ARG:욕구불만도 / 20
LOCAL -= (EX:ARG:C절정직전 + EX:ARG:V절정직전 + EX:ARG:A절정직전 + EX:ARG:B절정직전 + EX:ARG:M절정직전) * 15
RETURNF LOCAL


code:
@PEARL_CHK_MASTER
#DIM INSERTER
#DIM CONST INTERVAL = 30
#DIM KAKUNIN
#DIM LAPSE

SIF !TFLAG:펄기한
	RETURN

INSERTER = TFLAG:펄넣은사람

;과연 타인이 있으면 체크하지 않는다
KAKUNIN = 1
SIF CFLAG:INSERTER:현재위치 != CFLAG:MASTER:현재위치
	KAKUNIN = 0
SIF GET_TARGETNUM() > 1
	KAKUNIN = 0
SIF !SHIRAHU(INSERTER)
	KAKUNIN = 0

IF TFLAG:펄삽입개수
	SOURCE:MASTER:쾌A += TIME_PROGRESS(TIME:1) * TFLAG:펄삽입개수
	SOURCE:MASTER:고통 += TIME_PROGRESS(TIME:1) * TFLAG:펄삽입개수 * 2
	DOWNBASE:MASTER:체력 += TIME_PROGRESS(TIME:1)
ENDIF

IF TFLAG:펄기한 < TIME && TFLAG:펄기한 > 0 && TFLAG:펄삽입개수
	PRINTFORML %마스터는% 약속의 시간까지 참아냈다
	PRINTFORML %CALLNAME:INSERTER%에 뽑아 받자
	TFLAG:펄기한 = -1
ENDIF
IF KAKUNIN
	IF TFLAG:펄기한 == -1
		PRINTFORMW %CALLNAME:INSERTER%는 기한까지 참을 수 있었던 %CALLNAME:MASTER%의 머리를 어루만지면서, 애널 펄을 한 개씩 천천히 뽑아 냈다
		CALL PEARL_EJECT("뽑아냄")
		RETURN
	ELSEIF TFLAG:펄기한 == -2
		PRINTFORML 애널 펄이 다 없어지고 있던 일을 눈치챈 %CALLNAME:INSERTER%는, 다시 해, 라고 말해 또 1구슬씩 %CALLNAME:MASTER%의 직장에 밀어넣었다!
		CALL PEARL_INSERT(INSERTER,5)
	ENDIF
ENDIF

LAPSE = (TIME - TFLAG:펄배출체크) / INTERVAL

IF LAPSE && TFLAG:펄기한 > 0
	TFLAG:펄배출체크 = TIME
	IF KAKUNIN
		PRINTFORML %CALLNAME:INSERTER%는 %CALLNAME:MASTER%의 엉덩이에 손을 움직여, 애널 펄 상태를 확인했다…
		PRINTFORML %CALLNAME:MASTER%의 엉덩이 구멍으로부터 펄이 매달려 있는 것을 확인하면, %CALLNAME:INSERTER%는 미소지어 링을 가볍게 당겨, %CALLNAME:MASTER%에 좀 더 참도록 말했다…
		SOURCE:MASTER:쾌A += 50
	ENDIF
	FOR LOCAL, 0, LAPSE
		CALL PEARL_PATIENCE
	NEXT
ENDIF

@PEARL_EJECT(ARGS)
#DIM INSERTER
#DIM OTOSIDAMA
INSERTER = TFLAG:펄넣은사람

IF ARGS == "자연 배출"
	SOURCE:MASTER:쾌A += 100
	EXP:MASTER:A경험 += 1
	TFLAG:펄삽입개수 -= 1
	PRINTFORMW 애널 펄이 1구슬 나와 버렸다（나머지 {TFLAG:펄삽입개수}구슬）
	IF !TFLAG:펄삽입개수
		PRINTFORMW 펄이 다 없어져 버렸다…
		TFLAG:펄기한 = -2
	ENDIF
ELSEIF ARGS == "뽑아냄"
	SOURCE:MASTER:쾌A += TFLAG:펄삽입개수 * 200
	EXP:MASTER:A경험 += TFLAG:펄삽입개수
	EXP:MASTER:고통쾌락경험 += TFLAG:펄삽입개수 * 3
	EXP:INSERTER:가학쾌락경험 += TFLAG:펄삽입개수 * 3
	SOURCE:INSERTER:가학 += TFLAG:펄삽입개수 * 100
	TFLAG:펄삽입개수 = 0
	TFLAG:펄기한 = 0
	TFLAG:펄넣은사람 = 0
	TFLAG:펄배출체크 = 0
	IF FESTIVAL() == "설날"
		SELECTCASE RAND:3
			CASE 0
				OTOSIDAMA = 10000
			CASE 1
				OTOSIDAMA = 30000
			CASE 2
				OTOSIDAMA = 50000
		ENDSELECT
		PRINTFORMW …?
		PRINTFORMW 펄의 말단에, 넣어진 기억이 없는 황금의 구슬이 도착해 있다
		CALL COLORMESSAGE(@"세배돈 보너스! ￥{OTOSIDAMA} 손에 넣었다!",C_YELLOW,2)
		MONEY += OTOSIDAMA
	ENDIF
ENDIF

@PEARL_INSERT(ARG,ARG:1)
TFLAG:펄삽입개수 = ARG:1
TFLAG:펄기한 = TIME + TFLAG:펄삽입개수 * 30 + RAND:30 + RAND:30
TFLAG:펄넣은사람 = ARG
SOURCE:MASTER:쾌A += TFLAG:펄삽입개수 * 10
TFLAG:펄배출체크 = TIME

@PEARL_PATIENCE
PRINTFORML 애널 펄이 항문으로부터 흘러넘칠 것 같다…
CALL ASK_M("견딘다(기력 50)",BASE:MASTER:기력 >= 50, "전력으로 견딘다(기력 200)",BASE:MASTER:기력 >= 100, "힘을 뺀다",1)
SELECTCASE RESULT
	CASE 0
		DOWNBASE:MASTER:기력 += 50
		IF !RAND:2
			PRINTFORMW %마스터는% 배설감을 견뎠다
		ELSE
			PRINTFORMW %마스터는% 배설감을 견디지 못했다
			CALL PEARL_EJECT("자연 배출")
		ENDIF
	CASE 1
		PRINTFORMW %마스터는% 필사적으로 배설감을 견뎠다
		DOWNBASE:MASTER:기력 += 200
	CASE 2
		CALL PEARL_EJECT("자연 배출")
ENDSELECT


code:
@ACTABLE(ARG, ARG:1)
#FUNCTION
#DIM 실행중커맨드, 510
VARSET LOCAL
;이전캐릭터가 무엇을 했는지를[실행중커맨드]에 출력
FOR LOCAL, 1, GET_TARGETNUM() + 1
	SIF TARGET:LOCAL <= 0
		CONTINUE
	SIF TCVAR:(TARGET:LOCAL):20
		실행중커맨드:(TCVAR:(TARGET:LOCAL):20) ++
NEXT

SELECTCASE ARG:1
	;거리가 가깝다
	CASE 1
		RETURNF 1
	;치라 보고
	CASE 2
		RETURNF 1
	;이야기
	CASE 3
		RETURNF 1
	;좋은 냄새
	CASE 4
		RETURNF 1
	;안이고 후 (? )
	CASE 9
		SIF 충전율(ARG, 4) >= 15
			RETURNF 1
;------------------------------------------
;10~19 베리소프트
;------------------------------------------
	;접근해 온다
	CASE 11
		RETURNF 1
	;웃는 얼굴을 띄운다
	CASE 12
		RETURNF 1
	;상관해 갖고 싶어한다
	CASE 13
		RETURNF 1
	;몸을 문질러 댄다
	CASE 14
		RETURNF 1
	;응시해 온다
	CASE 15
		RETURNF 1
	;어깨에 턱이상
	CASE 16
		RETURNF 1
;------------------------------------------
;20~29 유혹
;------------------------------------------
	;요염한 행동
	CASE 20
		RETURNF 1
	;응시한다
	CASE 21
		RETURNF 1
	;몸을 접댄다
	CASE 22
		RETURNF 1
	;치마를 걷어 붙인다
	CASE 23
		;복장 제한
		SIF !(EQUIP:PLAYER:치마|| EQUIP:PLAYER:원피스|| EQUIP:PLAYER:기모노)
		RETURNF 0
		SIF TEQUIP:PLAYER:0 > 3
			RETURNF 0
		SIF !EQUIP:PLAYER:0
			RETURNF 0
		SIF !ONCE("치마째구", 1, ARG)
			RETURNF 0
		RETURNF 1
	;귓전에 입김을 내뿜는다
	CASE 24
		;회화중은 안 돼
		SIF SELECTCOM == 300
			RETURNF 0
		RETURNF 1
	;엉덩이를어루만진다
	CASE 25
		SIF !(TALENT:MASTER:2 & 1)
			RETURNF 0
		RETURNF 1
	;팔에 달라붙어
	CASE 26
		RETURNF 1
	;골짜기를 보인다
	CASE 27
		SIF TALENT:ARG:가슴사이즈 <= -1
			RETURNF 0
		SIF TEQUIP:ARG:1 == 1
			RETURNF 0
		RETURNF 1
	;엉덩이 즈리
	CASE 28
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF TFLAG:64
			RETURNF 0
		SIF BASE:ARG:발기 < 500
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
;------------------------------------------
;30~39 착의 성희롱
;------------------------------------------
	;키스
	CASE 30
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:MASTER:체위 == 2
			RETURNF 0
		RETURNF 1
	;뒤로부터 안겨든다
	CASE 31
		SIF 실행중커맨드:31
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		RETURNF 1
	;앞에서 안겨든다
	CASE 32
		SIF 실행중커맨드:32
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,5)
			RETURNF 0
		;키스
		SIF 실행중커맨드:31
			RETURNF 0
		SIF TEQUIP:MASTER:체위 == 2
			RETURNF 0
		RETURNF 1
	;가슴을 비비게 한다
	CASE 33
		SIF TFLAG:61
			RETURNF 0
		SIF TEQUIP:MASTER:체위 == 2
			RETURNF 0
		RETURNF 1
	;고간뒤진다
	CASE 34
		SIF TEQUIP:PLAYER:0 <= 3
			RETURNF 0
		SIF TFLAG:62
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		RETURNF 1
	;치마안을 보인다
	CASE 35
		;복장 제한(조건이 의미 불명해서, 재설정(치마를 입지 않은가 개 원피스를 오지 않겠는가 개 기모노를 오지 않은 )
		;SIF !(EQUIP:레오타드 || EQUIP:상반신윗도리2 || EQUIP:원피스)
		SIF !EQUIP:치마 && !EQUIP:원피스 && !EQUIP:기모노
			RETURNF 0
		SIF TEQUIP:0 > 3
			RETURNF 0
		;전라(MASTER의 유무는 관계없어요?
		SIF !EQUIP:0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;가슴을 비빈다
	CASE 36
		SIF !(TALENT:MASTER:2 & 1)
			RETURNF 0
		SIF TEQUIP:PLAYER:1 < 1
			RETURNF 0
		SIF TFLAG:65
			RETURNF 0
		SIF TEQUIP:MASTER:체위 == 1
			RETURNF 0
		RETURNF 1
;------------------------------------------
;40~49 애원
;------------------------------------------
	;정상위·후배위 V 애원
	CASE 41,43
		SIF 삽입불가(ARG) >= 2 && EXP:ARG:V경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TFLAG:MASTER의V사용중 || TEQUIP:50 >= 0 || TEQUIP:51 >= 0 || TFLAG:MASTER의A사용중
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF PALAM:ARG:윤활 < PALAMLV:3
			RETURNF 0
		SIF TEQUIP:ARG:바이브
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		;IF 임신가부(TARGET) && CFLAG:TARGET:생해금 != 2 && !TALENT:TARGET:무지 && !TCVAR:TARGET:만취
		;	SIF !TEQUIP:MASTER:콘돔
		;		RETURNF 0
		;ENDIF
		;정조대, 촉수 속옷, 바이브 팬티, 두 구멍 바이브 팬티를 입고 있다고(면) 안 돼
		SIF EQUIP:하반신속옷2 == 27 || EQUIP:하반신속옷2 == 28 || EQUIP:하반신속옷2 == 29 || EQUIP:하반신속옷2 == 30
			RETURNF 0
		RETURNF 1
	CASE 42
	;후배위 A 애원
	CASE 44
		SIF 삽입불가(ARG) >= 2 && EXP:ARG:A경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TFLAG:MASTER의V사용중 || TEQUIP:50 >= 0 || TEQUIP:51 >= 0 || TFLAG:MASTER의A사용중
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF PALAM:ARG:윤활 < PALAMLV:3
			RETURNF 0
		SIF TEQUIP:ARG:애널바이브
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF EXP:ARG:A경험 < 30
			RETURNF 0
		;정조대, 촉수 속옷, 바이브 팬티, 두 구멍 바이브 팬티를 입고 있다고(면) 안 돼
		SIF EQUIP:하반신속옷2 == 27 || EQUIP:하반신속옷2 == 28 || EQUIP:하반신속옷2 == 29 || EQUIP:하반신속옷2 == 30
			RETURNF 0
		RETURNF 1
;C
;	CASE 45
;B
;	CASE 46
;V
;	CASE 47
;A
;	CASE 48
;M
;	CASE 49
;------------------------------------------
;50~69 탈의 성희롱(애무)
;------------------------------------------
	;수음
	CASE 50
		SIF TFLAG:62
			RETURNF 0
		SIF ABL:ARG:손가락 < 1
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 && !(TALENT:MASTER:2 & 2)
			RETURNF 0
		RETURNF 1
	;펠라치오
	CASE 51
		SIF TFLAG:62
			RETURNF 0
		SIF ABL:ARG:혀 < 1
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;가랑이
	CASE 52
		SIF TFLAG:62
			RETURNF 0
		SIF ABL:ARG:허리 < 1
			RETURNF 0
		;윤활
		SIF PALAM:ARG:윤활 < 2000
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;파이즈리
	CASE 53
		SIF TFLAG:62
			RETURNF 0
		SIF ABL:ARG:가슴 < 1
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		;[절벽]이라면 불가
		SIF TALENT:ARG:가슴사이즈 == -2
			RETURNF 0
		;[폭유]라면 기교 LV1 이상,[거유]가 아니면 기교 3이상,[작은 가슴]이라면 기교 4이상 필요
		SIF TALENT:ARG:가슴사이즈 + ABL:ARG:기교 < 3
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;풋잡
	CASE 54
		SIF TCVAR:MASTER:120 != 1
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF TFLAG:62
			RETURNF 0
		SIF ABL:ARG:새드끼 < 1
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;애널애무
	CASE 55
		SIF TFLAG:64
			RETURNF 0
		SIF ABL:ARG:손가락 < 1
			RETURNF 0
		SIF TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF PALAM:MASTER:윤활 < PALAMLV:2
			RETURNF 0
		RETURNF 1
	;애널빨기
	CASE 56
		SIF TFLAG:64
			RETURNF 0
		SIF STAIN:PLAYER:4 & 8 && TALENT:ARG:악취내성 < 1
			RETURNF 0
		SIF ABL:ARG:혀 < 1
			RETURNF 0
		SIF TEQUIP:ARG:50 >= 0 || TEQUIP:ARG:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 == ARG
			RETURNF 0
		SIF TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;손가락 삽입
	CASE 57
		SIF TFLAG:63
			RETURNF 0
		SIF !TALENT:ARG:새드 && TALENT:PLAYER:처녀 && TALENT:PLAYER:처녀 != -1
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 1)
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0
			RETURNF 0
		SIF !TALENT:ARG:새드 && PALAM:MASTER:윤활 < PALAMLV:2
			RETURNF 0
		RETURNF 1
	;가슴애무
	CASE 58
		SIF TFLAG:65
			RETURNF 0
		SIF ABL:ARG:손가락 < 1
			RETURNF 0
		RETURNF 1
	;유두빨기
	CASE 59
		SIF TFLAG:65
			RETURNF 0
		SIF ABL:ARG:혀 < 1
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;딥키스
	CASE 60
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
;------------------------------------------
;70~79 탈의 성희롱(강요)
;------------------------------------------
	;커닐링구스강제
	CASE 70
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:ARG:50 >= 0 || TEQUIP:ARG:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		;정조대, 촉수 속옷을 입고 있다고(면) 안 돼
		SIF EQUIP:하반신속옷2 == 27 || EQUIP:하반신속옷2 == 28
			RETURNF 0
		RETURNF 1
	;펠라치오 강제
	CASE 71
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:ARG:50
			RETURNF 0
		SIF TEQUIP:MASTER:50 == ARG || TEQUIP:MASTER:51 == ARG
			RETURNF 0
		RETURNF 1
	;애널 봉사
	CASE 72
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:ARG:50 >= 0 || TEQUIP:ARG:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;
	CASE 73
		SIF TEQUIP:MASTER:50 == ARG || TEQUIP:MASTER:51 == ARG
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,5)
			RETURNF 0
		RETURNF 1
	;젖 맞추어라
	CASE 74
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF TFLAG:65
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		RETURNF 1
	;타와시 세탁
	CASE 75
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		;윤활
		SIF PALAM:ARG:윤활 < 1500
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		;입이 비어 있으면 쿠니 시킨다
		SIF !TFLAG:60
			RETURNF 0
		SIF TFLAG:61 > 1
			RETURNF 0
		RETURNF 1
	;강제 보지 애무
	CASE 76
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		;윤활
		SIF PALAM:ARG:윤활 < 1000
			RETURNF 0
		SIF TEQUIP:MASTER:50 == ARG || TEQUIP:MASTER:51 == ARG
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		;정조대, 촉수 속옷, 바이브 팬티, 두 구멍 바이브 팬티를 입고 있다고(면) 안 돼
		SIF EQUIP:하반신속옷2 == 27 || EQUIP:하반신속옷2 == 28 || EQUIP:하반신속옷2 == 29 || EQUIP:하반신속옷2 == 30
			RETURNF 0
		RETURNF 1
	;젖을 들이마시게 한다
	CASE 77
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:MASTER:50 == ARG || TEQUIP:MASTER:51 == ARG
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,5)
			RETURNF 0
		RETURNF 1
	;엉덩이 즈리
	CASE 78
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF TFLAG:64
			RETURNF 0
		SIF BASE:ARG:발기 < 500
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		RETURNF 1
;------------------------------------------
;80~89 성교
;------------------------------------------
	;정상위 V삽입된다
	CASE 80
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 1)
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF BASE:ARG:발기 < 1000
			RETURNF 0
		SIF TFLAG:63
			RETURNF 0
		SIF TEQUIP:ARG:50 >= 0 || TEQUIP:ARG:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		;정조대, 촉수 속옷을 입고 있다고(면) 안 돼
		SIF EQUIP:ARG:하반신속옷2 == 27 || EQUIP:ARG:하반신속옷2 == 28
			RETURNF 0
		SIF !TALENT:ARG:새드 && PALAM:MASTER:윤활 < PALAMLV:3
			RETURNF 0
		RETURNF 1

	;후배위 V삽입된다
	CASE 83
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 1)
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF BASE:ARG:발기 < 1000
			RETURNF 0
		SIF TFLAG:63
			RETURNF 0
		SIF TEQUIP:ARG:50 >= 0 || TEQUIP:ARG:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		;정조대, 촉수 속옷을 입고 있다고(면) 안 돼
		SIF EQUIP:ARG:하반신속옷2 == 27 || EQUIP:ARG:하반신속옷2 == 28
			RETURNF 0
		SIF !TALENT:ARG:새드 && PALAM:MASTER:윤활 < PALAMLV:3
			RETURNF 0
		RETURNF 1
	;허리 모습 V접수
	CASE 84
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 1)
			RETURNF 0
		SIF TEQUIP:MASTER:50 != ARG
			RETURNF 0
		RETURNF 1
	;V삽입한다
	CASE 85
		SIF 삽입불가(ARG) >= 2 && EXP:ARG:V경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TFLAG:63
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF PALAM:ARG:윤활 < PALAMLV:3
			RETURNF 0
		SIF TEQUIP:ARG:바이브
			RETURNF 0
		;정조대, 촉수 속옷, 바이브 팬티, 두 구멍 바이브 팬티를 입고 있다고(면) 안 돼
		SIF EQUIP:하반신속옷2 == 27 || EQUIP:하반신속옷2 == 28 || EQUIP:하반신속옷2 == 29 || EQUIP:하반신속옷2 == 30
			RETURNF 0
		RETURNF 1
	;매우 수기 hold
	CASE 86
		SIF TCVAR:PLAYER:12 != 1 && CFLAG:ARG:우후후 != 2
			RETURNF 0
		SIF !TCVAR:PLAYER:이기초 && CFLAG:ARG:우후후 == 2
			RETURNF 0
		SIF TEQUIP:ARG:50 < 0
			RETURNF 0
		SIF CFLAG:ARG:생해금 != 2
			RETURNF 0
		SIF TEQUIP:ARG:체위 == 2 || TEQUIP:ARG:체위 == 5
			RETURNF 0
		RETURNF 1
	;A삽입한다
	CASE 87
		SIF 삽입불가(ARG) >= 2 && EXP:ARG:A경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TALENT:ARG:임신 && (CFLAG:ARG:903 <= 30 || CFLAG:ARG:903 >= 71)
			RETURNF 0
		SIF CFLAG:ARG:육아인원수 >= 1 && CFLAG:ARG:육아인원수 <= 30
			RETURNF 0
		SIF ABL:2 < 3
			RETURNF 0
		SIF TFLAG:63
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF TEQUIP:ARG:체위
			RETURNF 0
		SIF PALAM:ARG:윤활 < PALAMLV:3
			RETURNF 0
		SIF TEQUIP:ARG:애널바이브
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;허리 모습 V
	CASE 88
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TEQUIP:ARG:50 < 0
			RETURNF 0
		SIF !(TEQUIP:50 >= 0 || TEQUIP:51 >= 0)
			RETURNF 0
		SIF TCVAR:ARG:100 != PLAYER
			RETURNF 0
		SIF ABL:ARG:허리 < 2
			RETURNF 0
		RETURNF 1
	;허리 모습 A
	CASE 89
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TEQUIP:ARG:51 < 0
			RETURNF 0
		SIF !(TEQUIP:50 >= 0 || TEQUIP:51 >= 0)
			RETURNF 0
		SIF TCVAR:ARG:101 != PLAYER
			RETURNF 0
		SIF ABL:ARG:허리 < 2
			RETURNF 0
		RETURNF 1

;------------------------------------------
;90~99 TARGET에 의한 고문(하드한)
;------------------------------------------
	;후배위 A삽입된다
	CASE 90
		SIF 삽입불가(MASTER) >= 2 && EXP:ARG:A경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF BASE:ARG:발기 < 1000
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF TFLAG:64
			RETURNF 0
		SIF ABL:MASTER:2 < 2
			RETURNF 0
		SIF !TALENT:ARG:새드 && PALAM:MASTER:윤활 < PALAMLV:3
			RETURNF 0
		RETURNF 1
	;이라마치오 된다
	CASE 91
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF BASE:ARG:발기 < 1000
			RETURNF 0
		SIF TEQUIP:50 >= 0 || TEQUIP:51 >= 0
			RETURNF 0
		SIF TEQUIP:PLAYER:50 == ARG || TEQUIP:PLAYER:51 == ARG
			RETURNF 0
		SIF TFLAG:60
			RETURNF 0
		RETURNF 1
	;허리 모습역A
	CASE 93
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF TEQUIP:PLAYER:51 != ARG
			RETURNF 0
		RETURNF 1
	;정상위 A삽입된다
	CASE 94
		SIF 삽입불가(MASTER) >= 2 && EXP:ARG:A경험 < 50
			RETURNF 0
		SIF !(TALENT:ARG:2 & 2)
			RETURNF 0
		SIF BASE:ARG:발기 < 1000
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF TFLAG:64
			RETURNF 0
		SIF ABL:MASTER:2 < 2
			RETURNF 0
		SIF !TALENT:ARG:새드 && PALAM:MASTER:윤활 < PALAMLV:3
			RETURNF 0
		RETURNF 1
;------------------------------------------
;100~119 삽입중 전용
;------------------------------------------
[SKIPSTART]
	;앞에서 안겨든 ;CASE 32
	CASE 100
		;이전캐릭터가 안아 도착하는, 키스를 선택
		SIF 실행중커맨드:100 || 실행중커맨드:31 || 실행중커맨드:32
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,5)
			RETURNF 0
		SIF TEQUIP:MASTER:체위 == 2
			RETURNF 0
		RETURNF 1
	;가슴을 비비게 하는 33
	CASE 101
		SIF TFLAG:61
			RETURNF 0
		RETURNF 1
	;치마안을 보이는 35
	CASE 102
		;복장 제한(조건이 의미 불명해서, 재설정(치마를 입지 않은가 개 원피스를 오지 않겠는가 개 기모노를 오지 않은 )
		;SIF ! (EQUIP:레오타드 || EQUIP:상반신윗도리2 || EQUIP:원피스)
		SIF ! EQUIP:치마 && ! EQUIP:원피스 && ! EQUIP:기모노
			RETURNF 0
		SIF TEQUIP:0 > 3
			RETURNF 0
		;전라
		SIF !EQUIP:0
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;애널애무 55
	CASE 103
		SIF TFLAG:64
			RETURNF 0
		SIF ABL:ARG:손가락 < 1
			RETURNF 0
		SIF TEQUIP:MASTER:51 >= 0
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,3,5)
			RETURNF 0
		RETURNF 1
	;가슴애무 58
	CASE 104
		SIF TFLAG:65
			RETURNF 0
		SIF ABL:ARG:손가락 < 1
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,3,5)
			RETURNF 0
		RETURNF 1
	;유두빨기 59
	CASE 105
		SIF TFLAG:65
			RETURNF 0
		SIF ABL:ARG:혀 < 1
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;딥키스 60
	CASE 106
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:MASTER:50 >= 0 || TEQUIP:MASTER:51 >= 0
			RETURNF 0
		RETURNF 1
	;젖을 들이마시게 하는 77
	CASE 107
		SIF TFLAG:60
			RETURNF 0
		SIF TEQUIP:MASTER:50 == ARG || TEQUIP:MASTER:51 == ARG
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,3,5)
			RETURNF 0
		RETURNF 1
	;매우 수기 hold 86
	CASE 108
		SIF TCVAR:PLAYER:12 != 1 && CFLAG:ARG:우후후 != 2
			RETURNF 0
		SIF !TCVAR:PLAYER:이기초 && CFLAG:ARG:우후후 == 2
			RETURNF 0
		SIF TEQUIP:ARG:50 < 0
			RETURNF 0
		SIF CFLAG:ARG:생해금 != 2
			RETURNF 0
		SIF GROUPMATCH(TEQUIP:ARG:체위, 2,3,5)
			RETURNF 0
		RETURNF 1
	;허리 모습 V 88
	CASE 109
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TEQUIP:ARG:50 < 0
			RETURNF 0
		SIF !(TEQUIP:50 >= 0 || TEQUIP:51 >= 0)
			RETURNF 0
		SIF TCVAR:ARG:100 != PLAYER
			RETURNF 0
		SIF ABL:ARG:허리 < 2
			RETURNF 0
		RETURNF 1
	;허리 모습 A 89
	CASE 110
		SIF !(TALENT:ARG:2 & 1)
			RETURNF 0
		SIF !(TALENT:PLAYER:2 & 2)
			RETURNF 0
		SIF BASE:MASTER:발기 < 1000
			RETURNF 0
		SIF TEQUIP:ARG:51 < 0
			RETURNF 0
		SIF !(TEQUIP:50 >= 0 || TEQUIP:51 >= 0)
			RETURNF 0
		SIF TCVAR:ARG:101 != PLAYER
			RETURNF 0
		SIF ABL:ARG:허리 < 2
			RETURNF 0
		RETURNF 1
[SKIPEND]
;------------------------------------------
;120~139 껴안기모드
;------------------------------------------
	;머리 어루만지고
	CASE 120
		RETURNF 1
	;미용사나무
	CASE 121
		RETURNF 1
	;안아 붙어 있는
	CASE 122
		RETURNF 1
	;꼭 껴안고
	CASE 123
		RETURNF TALENT:ARG:체형 >= TALENT:MASTER:체형
	;뺨 어루만지고
	CASE 124
		RETURNF 1
	;간질임
	CASE 125
		RETURNF 1
	;무릎베개시킨다
	CASE 126
		RETURNF TALENT:ARG:체형 <= TALENT:MASTER:체형 + 1
	;냄새를 냄새 맡는다
	CASE 127
		;강아지 귀·고양이 귀 캐릭터 한정
		RETURNF GROUPMATCH(TALENT:ARG:동물귀, 2, 4)
	;말을 건넨다
	CASE 128
		RETURNF 1
	;목덜미 빨고
	CASE 129
		RETURNF BASE:ARG:이성 <= 800

ENDSELECT


code:
@EVENT_COUNTER_COMBINATION
VARSET LOCAL
;만들어 써라
;LOCAL:100~
FOR LOCAL, 1, GET_TARGETNUM() + 1
	SIF TARGET:LOCAL <= 0
		CONTINUE
	SIF TCVAR:(TARGET:LOCAL):20
		LOCAL:(100 + TCVAR:(TARGET:LOCAL):20) ++
NEXT


code:
;MASTER의 V에의 고통
@PAIN_CHECK_V_MASTER(ARG)
;EXP:V경험을 본다(처녀의 반감은 별도 처리필 모두의로 생략)
IF EXP:PLAYER:V경험 < EXPLV:1
	TIMES SOURCE:ARG:가학 , 1.50
ELSEIF EXP:PLAYER:V경험 < EXPLV:2
	TIMES SOURCE:ARG:가학 , 0.80
ELSEIF EXP:PLAYER:V경험 < EXPLV:3
	TIMES SOURCE:ARG:가학 , 0.40
ELSEIF EXP:PLAYER:V경험 < EXPLV:4
	TIMES SOURCE:ARG:가학 , 0.10
ELSEIF EXP:PLAYER:V경험 < EXPLV:5
	TIMES SOURCE:ARG:가학 , 0.00
ELSEIF EXP:PLAYER:V경험 >= EXPLV:5
	TIMES SOURCE:ARG:가학 , 0.00
ENDIF

;PALAM:윤활을 본다
IF PALAM:PLAYER:윤활 < PALAMLV:1
	TIMES SOURCE:ARG:가학 , 1.20
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:2
	TIMES SOURCE:ARG:가학 , 0.70
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:3
	TIMES SOURCE:ARG:가학 , 0.40
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:4
	TIMES SOURCE:ARG:가학 , 0.10
ELSEIF PALAM:PLAYER:윤활 >= PALAMLV:4
	TIMES SOURCE:ARG:가학 , 0.10
ENDIF
;MASTER의 A에의 고통
@PAIN_CHECK_A_MASTER(ARG)
;EXP:A경험을 본다
IF EXP:PLAYER:A경험 < EXPLV:1
	TIMES SOURCE:ARG:가학 , 1.50
ELSEIF EXP:PLAYER:A경험 < EXPLV:2
	TIMES SOURCE:ARG:가학 , 0.80
ELSEIF EXP:PLAYER:A경험 < EXPLV:3
	TIMES SOURCE:ARG:가학 , 0.40
ELSEIF EXP:PLAYER:A경험 < EXPLV:4
	TIMES SOURCE:ARG:가학 , 0.10
ELSEIF EXP:PLAYER:A경험 < EXPLV:5
	TIMES SOURCE:ARG:가학 , 0.00
ELSEIF EXP:PLAYER:A경험 >= EXPLV:5
	TIMES SOURCE:ARG:가학 , 0.00
ENDIF

;PALAM:윤활을 본다
IF PALAM:PLAYER:윤활 < PALAMLV:1
	TIMES SOURCE:ARG:가학 , 3.00
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:2
	TIMES SOURCE:ARG:가학 , 1.60
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:3
	TIMES SOURCE:ARG:가학 , 0.80
ELSEIF PALAM:PLAYER:윤활 < PALAMLV:4
	TIMES SOURCE:ARG:가학 , 0.40
ELSEIF PALAM:PLAYER:윤활 >= PALAMLV:4
	TIMES SOURCE:ARG:가학 , 0.10
ENDIF