code:
;FileName_MOVEMENT.ERB ----------------------------- Rev1. 00
;캐릭터별_각종 데이터
;81~90번까지의 캐릭터
;CALL		USER
;ARG		0:호출 데이터 NO, 1:이동 경향 취득시의 방NO
;RETURN		캐릭터별 호출 데이터치
;COMMENT
;-----------------------------------------------------------
;렌코
@CHARAMOVE_DATA_81(ARG, ARG:2)
LOCAL = 81
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		;연동 처리(메리의 것이 높을 때는 메리를 참조)
		IF TALENT:82:연모 || (TALENT:82:사모 && !TALENT:81:사모)
			CFLAG:LOCAL:현재위치 = CFLAG:82:만난위치 ?  CFLAG:82:만난위치 # SUKIMA()
		ELSE
			CFLAG:LOCAL:현재위치 = CFLAG:81:만난위치 ?  CFLAG:81:만난위치 # SUKIMA()
		ENDIF
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
			;창고 등을 찾아다니고 싶다
			CASE 6, 17, 19, 51, 53
				RETURN 5
			;낡은오두막때는 오히려 간다
			CASE 16
				SIF FLAG:15 == 82
					RETURN 5
				SIF FLAG:15 == 81
					RETURN 0
				SIF FLAG:15
					RETURN -100
				RETURN 5
			;유적에 자주 간다
			CASE 26 TO 51
				RETURN 5
			;자기 방, 메리의 방, 광장
			CASE 232, 233, 202
				RETURN 5
			;당신의 방
			CASE 230
				IF TALENT:LOCAL:연모
					RETURN 5
				ELSE
					RETURN -100
				ENDIF
			;가지 않는다
			CASE 220, 225, 221, 222, 224, 226
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 0, 1, 2, 4, 6
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 1,2,3,4,6, 12,13,15, 21,22,23,27, 41,42,43, 61,62
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;메리
@CHARAMOVE_DATA_82(ARG, ARG:2)
LOCAL = 82
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		;연동 처리(렌코와 함께)
		IF TALENT:82:연모 || (TALENT:82:사모 && !TALENT:81:사모)
			CFLAG:LOCAL:현재위치 = CFLAG:82:만난위치 ?  CFLAG:82:만난위치 # SUKIMA()
		ELSE
			CFLAG:LOCAL:현재위치 = CFLAG:81:만난위치 ?  CFLAG:81:만난위치 # SUKIMA()
		ENDIF
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
			;창고 등을 찾아다니고 싶다
			CASE 6, 17, 19, 51, 53
				RETURN 5
			;낡은오두막때는 오히려 간다
			CASE 16
				SIF FLAG:15 == 82
					RETURN 5
				SIF FLAG:15 == 81
					RETURN 0
				SIF FLAG:15
					RETURN -100
				RETURN 5
			;유적에 자주 간다
			CASE 26 TO 51
				RETURN 5
			;자기 방, 렌코의 방, 광장
			CASE 232, 233, 202
				RETURN 5
			;당신의 방
			CASE 230
				IF TALENT:LOCAL:연모
					RETURN 5
				ELSE
					RETURN -100
				ENDIF
			;가지 않는다
			CASE 220, 225, 221, 222, 224, 226
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 0, 1, 2, 4, 6
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 1,2,3,4,6, 12,13,15, 21,22,23,27, 41,42,43, 61,62
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;키스메
@CHARAMOVE_DATA_83(ARG, ARG:2)
LOCAL = 83
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;좁은 곳이 좋아
			CASE 3, 5, 6, 12, 14, 16, 17, 18, 23, 38, 40, 51, 53,
				RETURN 10
			;가지 않는다
			CASE 901 TO 930, 935, 936, 937, 939, 940, 941, 943
				RETURN -100
			;큰 길과 술집에 가기 쉽다
			CASE 931, 933
				RETURN 5
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 9
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 91,92,93
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;야마메
@CHARAMOVE_DATA_84(ARG, ARG:2)
LOCAL = 84
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;가지 않는다
			CASE 901 TO 930, 935, 936, 937, 939, 940, 942, 943
				RETURN -100
			;큰 길과 술집에 가기 쉽다
			CASE 931, 933
				RETURN 5
			;더러움에 매료된다
			CASEELSE
				RETURN YOGORE:(ARG:2) / 300
		ENDSELECT
	;일시간대
	CASE 5
		RETURN 0
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 9
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 91,92,93
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;이치린
@CHARAMOVE_DATA_85(ARG, ARG:2)
LOCAL = 85
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 114, 115, 117, 118
				RETURN -5
			;별채와 묘지와 신령묘내부
			CASE 119, 121, 125 TO 133
				RETURN -100
			;거실에 가기 쉽다
			CASE 108
				RETURN 5
			;뱌쿠렌이 본당에 있을 때 유행해 온다
			CASE 103
				SIF CFLAG:55:현재위치 == 103
					RETURN 10
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 2
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11 TO 15, 21,22
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;무라사
@CHARAMOVE_DATA_86(ARG, ARG:2)
LOCAL = 86
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 115, 116, 117, 118
				RETURN -5
			;별채와 묘지와 신령묘내부
			CASE 119, 121, 125 TO 133
				RETURN -100
			;거실에 가기 쉽다
			CASE 108
				RETURN 5
			;뱌쿠렌이 본당에 있을 때 유행해 온다
			CASE 103
				SIF CFLAG:55:현재위치 == 103
					RETURN 10
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1,3,6,8
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11 TO 15, 31, 61,62, 81,83
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;성
@CHARAMOVE_DATA_87(ARG, ARG:2)
LOCAL = 87
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 114, 116, 117, 118
				RETURN -5
			;별채와 묘지와 신령묘내부
			CASE 119, 121, 125 TO 133
				RETURN -100
			;거실에 가기 쉽다
			CASE 108
				RETURN 5
			;뱌쿠렌이 본당에 있을 때 유행해 온다
			CASE 103
				SIF CFLAG:55:현재위치 == 103
					RETURN 10
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 2
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11 TO 15, 21,22
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;쿄코
@CHARAMOVE_DATA_88(ARG, ARG:2)
LOCAL = 88
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		RETURN 0
	;이동 확률
	CASE 2
		;악천후시, 밖이라면 이동하기 쉽고
		SIF OUTROOF(CFLAG:(NO:88):현재위치) && ((TIME:5 & 4) || (TIME:5 & 8))
			RETURN 10
		RETURN 80
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 114, 115, 116, 117, 118
				RETURN -5
			;별채와 묘지와 신령묘내부
			CASE 119, 121, 125 TO 133
				RETURN -100
			;경내, 거실에 가기 쉽다
			CASE 102, 108
				RETURN 5
			;뱌쿠렌이 본당에 있을 때 유행해 온다
			CASE 103
				SIF CFLAG:55:현재위치 == 103
					RETURN 10
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 7
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11 TO 15, 71,72,73
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;요시카
@CHARAMOVE_DATA_89(ARG, ARG:2)
LOCAL = 89
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		RETURN 0
	;이동 확률
	CASE 2
		;악천후시, 밖이라면 이동하기 쉽고
		SIF OUTROOF(CFLAG:(NO:89):현재위치) && ((TIME:5 & 4) || (TIME:5 & 8))
			RETURN 10
		RETURN 110
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 114, 115, 116, 118
				RETURN -100
			;신령묘 멤버의 방
			CASE 125, 127, 128
				RETURN -100
			;별채
			CASE 119
				RETURN -100
			;묘지에 자주(잘) 있다
			CASE 121
				RETURN 5
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11,12,13,15,16
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;청아
@CHARAMOVE_DATA_90(ARG, ARG:2)
LOCAL = 90
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;명련사 멤버의 방(강당과 창고 제외하다)
			CASE 113, 114, 115, 116, 118
				RETURN -100
			;신령묘 멤버의 방
			CASE 125, 127, 128
				RETURN -100
			;별채
			CASE 119
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 2, 6
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11,12,15,16, 21,22,23, 61,62
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT


code:
;FileName_MOVEMENT.ERB ----------------------------- Rev1. 00
;캐릭터별_각종 데이터
;91~100번까지의 캐릭터
;CALL		USER
;ARG		0:호출 데이터 NO, 1:이동 경향 취득시의 방NO
;RETURN		캐릭터별 호출 데이터치
;COMMENT
;-----------------------------------------------------------
;토지코
@CHARAMOVE_DATA_91(ARG, ARG:2)
LOCAL = 91
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;신령묘 멤버의 방
			CASE 127, 128
				RETURN -5
			;별채와 묘지와 명련사 내부
			CASE 103 TO 122
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 6
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11,12,13,15,16, 61,62,67,68
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;후토
@CHARAMOVE_DATA_92(ARG, ARG:2)
LOCAL = 92
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;신령묘 멤버의 방
			CASE 125, 128
				RETURN -5
			;별채와 묘지와 명련사 내부
			CASE 103 TO 122
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 1, 2
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 11,12,13,15,16, 21,22,23
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;와카사기히메
@CHARAMOVE_DATA_93(ARG, ARG:2)
LOCAL = 93
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		;예외 처리
		IF !CFLAG:LOCAL:만난위치
			CFLAG:LOCAL:현재위치 = SUKIMA()
		ELSE
			CFLAG:LOCAL:현재위치 = CFLAG:LOCAL:만난위치
			IF FLAG:풀장 < 8
				SIF CFLAG:LOCAL:현재위치 != 610 && !AT_HOME(LOCAL) && !CFLAG:LOCAL:데이트중
					CFLAG:LOCAL:현재위치 = 안개의호수
			ENDIF
		ENDIF
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		IF FLAG:풀장 < 8
			SELECTCASE ARG:2
				CASE 347, 348
					RETURN 0
				CASEELSE
					RETURN -100
			ENDSELECT
		ELSE
			SELECTCASE ARG:2
				;헛간과 저택의 3층과 지하, 및 각개인 방에는 못 들어간다
				CASE 303, 304, 305, 311, 312, 318, 320, 321, 323, 325, 340, 341, 342, 344, 345, 346, 347, 348
					RETURN -100
			ENDSELECT
		ENDIF
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 3
				RETURN 1
			CASE 4
				SIF FLAG:풀장 >= 8
					RETURN 1
				RETURN 0
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 31
				RETURN 1
			CASE 32,33,34, 41,42,43
				SIF FLAG:풀장 >= 8
					RETURN 1
				RETURN 0
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;벤벤
@CHARAMOVE_DATA_94(ARG, ARG:2)
LOCAL = 94
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		;연동 처리(야츠하시가 비쌀 때는 야츠하시를 참조)
		IF TALENT:95:연모 || (TALENT:95:사모 && !TALENT:95:사모)
			CFLAG:LOCAL:현재위치 = CFLAG:95:만난위치 ?  CFLAG:95:만난위치 # SUKIMA()
		ELSE
			CFLAG:LOCAL:현재위치 = CFLAG:94:만난위치 ?  CFLAG:94:만난위치 # SUKIMA()
		ENDIF
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;특히 이루어
			CASEELSE
				RETURN 0
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 2, 5
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 21,22,23, 51,52,53,56,57
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;야츠하시
@CHARAMOVE_DATA_95(ARG, ARG:2)
LOCAL = 95
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
		;연동 처리(벤벤과 함께)
		IF TALENT:95:연모 || (TALENT:95:사모 && !TALENT:95:사모)
			CFLAG:LOCAL:현재위치 = CFLAG:95:만난위치 ?  CFLAG:95:만난위치 # SUKIMA()
		ELSE
			CFLAG:LOCAL:현재위치 = CFLAG:94:만난위치 ?  CFLAG:94:만난위치 # SUKIMA()
		ENDIF
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;특히 이루어
			CASEELSE
				RETURN 0
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 2, 5
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 21,22,23, 51,52,53,56,57
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;라이코
@CHARAMOVE_DATA_96(ARG, ARG:2)
LOCAL = 96
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;특히 이루어
			CASEELSE
				RETURN 0
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 2, 5
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 21,22,23, 51,52,53,56,57
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;세이자
@CHARAMOVE_DATA_97(ARG, ARG:2)
LOCAL = 97
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;아지트, 액가, 치유리 집, 슈우카, 카센가, 은둔지, 오두막
			CASE 704, 706, 709, 715 TO 719, 720 TO 730, 733, 734
				RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 3, 4, 5, 6, 7
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 31,32,33,34, 41,42,43,44,46,47, 51,53,56,57, 61,62, 71,72,73
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;요리히메
@CHARAMOVE_DATA_98(ARG, ARG:2)
LOCAL = 98
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 10
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 105 TO 108
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;토요히메
@CHARAMOVE_DATA_99(ARG, ARG:2)
LOCAL = 99
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 10
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 105 TO 108
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

;레이센
@CHARAMOVE_DATA_100(ARG, ARG:2)
LOCAL = 100
SELECTCASE ARG
	;이동 대상 멤버 체크
	CASE 1
	;이동 확률
	CASE 2
	;기상시간대
	CASE 3
		RETURN 수면시간(LOCAL)
	;이동 경향
	CASE 4
		SELECTCASE ARG:2
			;사람이 있는 집의 목욕탕이라든지 화장실에는 가지 않는다
			CASE 12, 13, 14, 18, 30, 35, 39, 40, 43, 44, 51, 52
				RETURN -100
			;개인 방에는 못 들어간다
			CASE 15, 17, 19, 53, 55
				SIF FLAG:15 != LOCAL
					RETURN -100
		ENDSELECT
	;일시간대
	CASE 5
	;가는 지역(0=박1=사2=리3=호4=죽5=삼6=명7=산8=수9=지10=월)
	CASE 6
		SELECTCASE ARG:2
			CASE 10
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
	;출현 장소
	CASE 7
		SELECTCASE ARG:2
			CASE 105 TO 108
				RETURN 1
			CASEELSE
				RETURN 0
		ENDSELECT
ENDSELECT

repo_name: purugi/eraTWKR

license: mit


code:
납득 있고인가-응! 라는 사람은 게시판으로 외칠까 각자 수정할까 패치를 주세요
거동의 바꾸는 방법은 「개조라든지 해 보고 싶은 사람을 위한 이것저것」에 있는 「캐릭터 추가의 추천(전진)」을 참조
-------------------------------------------------------------------
·이동율은 거점내에서의 이동의 하기 쉬움
·절도는 거점내에서 어느 정도 절도를 분별해 이동할까
　-1이하는 사실에 들어 올 가능성이 있다
·연동은 대상이 출금이나 거주해 상태에서도 괜찮아
·연동하고 있는 캐릭터의 나 가장 사이의 좋은 캐릭터에게 의존하고 있다
◎=자주 가는 지역. 자택도 있는 것이 많기 때문에 출현한다면 대체로 여기
○=출현하는 지역. 출현하지 않는 포인트있다
●=일부만 출현하는 지역. 출현하는 포인트가 적은 것뿐으로 확률이 낮은 것은 아니다
　　명계 방면의 것●은 삼도내는 건너지 않는다
☆=조건부로 출현하는 일이 있는 지역
－=출현하지 않는다

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
레이무　　　　　　　　　◎  －  ○  －  －  －  －  －  －  －  －  자택은 신사 툇마루
루코토  　　　　　 +1   ◎  －  －  －  －  －  －  －  －  －  －  자택은 신사 툇마루
카나　　　　　　　 -1   ◎  －  －  －  －  －  －  －  －  －  －  자택은 신사 툇마루
미마　　　　　　　 -1   ◎  －  ○  －  －  ○  －  －  －  －  －  자택은 신사 툇마루
서니　　  　+5　　 -1   ○  －  －  ○  －  ◎  －  －  －  －  －  자택은 요정의 큰 나무. 3월정령으로 연동
루나　　　　　　　 -1   ○  －  －  ○  －  ◎  －  －  －  －  －  자택은 요정의 큰 나무. 3월정령으로 연동
스타　　　  　　　 -1   ○  －  －  ○  －  ◎  －  －  －  －  －  자택은 요정의 큰 나무. 3월정령으로 연동
치유리　　　　　　 +1   －  －  ○  －  －  －  －  －  －  －  －  자택은 몽환 유적
유메미　　　　　　 +1   －  －  ○  －  －  －  －  －  －  －  －  자택은 몽환 유적
스이카　　　　　　　　　○  －  －  －  －  －  －  ○  ◎  －  －  자택은 신사 툇마루

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
마리사　　　　　　　　　－  －  ○  ○  ○  ◎  －  －  －  －  －  자택은 키리사메 마법점
루미아　　  　　　　　　－  ○  －  －  －  ◎  ●  －  －  －  －  자택은 숲의 입구
대요정　　　　　　 +1   ○  －  －  ◎  －  ○  －  －  －  －  －  자택은 안개호
치르노　　　+5　　 -1   ○  －  －  ◎  －  ○  －  ○  －  －  －  자택은 얼음의 카마쿠라
사쿠야　　　　　　 +1   ○  －  ○  ◎  －  ○  －  －  －  －  －  자택은 객실
레밀리아　　+5　　　　　○  －  －  ◎  －  －  －  －  －  －  －  자택은 객실
앨리스　　　　　　　　　○  －  ○  ○  －  ◎  －  －  －  －  －  자택은 인형의 양관
릴리 W 　　　 　　　　　－  －  ☆  ○  －  ○  －  ◎  －  －  －  자택은 산기슭의 수해. 봄은 마을에도 출현
릴리 B 　　　　 　　　　－  －  ☆  －  －  ○  ●  ◎  －  －  －  자택은 산기슭의 수해. 봄은 마을에도 출현
리리카　　　　　　　　　－  －  ○  ○  －  －  ◎  －  －  －  －  자택은 폐양관. 3 자매로 연동

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
메를랑　　  　　　　　　－  －  ○  ○  －  －  ◎  －  －  －  －  자택은 폐양관. 3 자매로 연동
루나사　　　　　　　　　－  －  ○  ○  －  －  ◎  －  －  －  －  자택은 폐양관. 3 자매로 연동
요우무　　　　　　 +1   ○  －  ◎  －  －  －  ○  －  －  －  －  자택은 백옥루
첸　　　　　+5　　 -1   －  －  －  －  －  －  ●  ◎  ○  －  －  자택은 마요히가（명）
란　　　　　　　　 +1   ○  －  ●  －  －  －  ○  ○  －  －  －  자택은 마요히가（명）. 마을에는 삼켜 가게만
유카리　　　　　　 -1   ◎  －  ○  ○  －  ○  ○  ○  －  －  －  자택은 마요히가（명）
리글　　　　  　　 +1   －  －  －  －  ○  ◎  －  －  －  －  －  자택은 고목의 큰 나무
미스티아　　　  　 +1   －  ○  ○  －  ◎  ○  －  －  －  －  －  자택은 대나무숲 입구
아야　　　　+5　　 -1   ○  －  ○  ○  －  ○  －  ◎  ○  －  －  자택은 구천의 폭포
에이키　　　　　　 +1   －  ○  ○  －  －  －  ◎  －  －  －  －  자택은 피안

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
사나에　　　　　　 +1   ○  －  ○  －  －  －  －  ○  ◎  －  －  자택은 모리야사 본전
카나코　　　　　　 +1   －  －  ○  －  －  －  －  ○  ◎  －  －  자택은 모리야사 본전
스와코　　　　　　　　　－  －  －  ●  －  －  －  ○  ◎  －  －  자택은 모리야사 본전
텐시　　　　　　　 +1   ○  －  ○  －  －  －  －  ○  ○  －  －  자택은 천계
이쿠　　　　　　　 +1   －  －  ○  －  －  －  －  ○  ○  －  －  자택은 천계
린　　  　　+5　　　　　○  ●  －  －  －  －  －  ●  －  ◎  －  자택은 지령전. 묘우렌절은 묘지만. 산은 지하만
우츠호　　　　　　　　　－  －  －  －  －  －  －  ●  －  ◎  －  자택은 지령전. 지하만
코이시　　 +10　　 -2   －  ○  ○  ○  －  －  －  －  ○  ○  －  자택은 지령전
나즈린　    　　　　　　－  ◎  ○  －  －  ○  ●  －  －  －  －  자택은 묘우렌 테라모토당
코가사　　　　　　　　　○  ◎  ○  －  －  ○  －  －  －  －  －  자택은 묘우렌절경내

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
누에　　　　+5　　 -1   －  ◎  －  －  －  －  －  ○  －  －  －  자택은 묘우렌 테라모토당
하타테　　　　　　　　　－  －  ○  ○  －  －  －  ◎  ○  －  －  자택은 구천의 폭포
카센　　　　　　　 +1   ◎  －  ○  －  －  －  －  ○  ○  －  －  자택은 신선의 저택
엘렌　　  　　　　　　　●  －  ○  ●  ○  ◎  －  －  －  －  －  자택은 마법의숲 입구（구상측에서 선택했을 때 마셔）
리카코　　　　　　　　　●  －  ○  －  －  ○  －  －  －  －  －  ※자택 없음
메이라　　　+5　　　　　－  －  ○  －  －  －  －  －  －  －  －  ※자택 없음
리카　　　　　　　　　　－  －  ○  －  －  －  －  －  －  －  －  ※자택 없음
루이즈　　　　　　 -1   －  －  ○  －  －  ○  －  －  －  －  －  ※자택 없음
사토리　　　-5　　 +1   －  －  －  －  －  －  －  －  －  ◎  －  자택은 지령전
플랑　　  　+5　　　　　－  －  －  ◎  －  －  －  －  －  －  －  자택은 지하실

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
니토리　　　　　　　　　－  －  ○  －  －  －  －  ◎  ○  －  －  자택은 현무의 늪
레이센　　　　　　 +1   ○  －  ○  －  ◎  －  －  －  －  －  －  자택은 영원정
테위　　　　+5　　 -1   －  －  －  －  ◎  ○  －  －  －  －  －  자택은 영원정
파츄리      -5　　 +1   －  －  －  ◎  －  －  －  －  －  －  －  자택은 대도서관
뱌쿠렌　　　　　　 +1   －  ◎  ○  －  －  －  －  －  －  －  －  자택은 묘우렌 테라모토당
미코　　　　　　　 +1   ○  ◎  ○  －  －  －  －  －  －  －  －  자택은 마사노리 도장
코코로　　　　　　　　　－  ○  ◎  －  －  －  －  －  －  －  －  자택은 신사 툇마루
메이링　　　　　　　　　－  －  －  ◎  －  －  －  －  －  －  －  자택은 정문
소악마　　　　　　 -1   －  －  －  ◎  －  －  －  －  －  －  －  자택은 대도서관
파르시　    　　　　　　－  －  －  －  －  －  －  －  －  ◎  －  자택은 지옥의 후카미치

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
모코우　　　　　　 +1   －  －  ○  －  ◎  －  －  －  －  －  －  자택은 경사각의 대나무숲
카구야　　　　　　 +1   －  －  ○  －  ◎  －  －  －  －  －  －  자택은 영원정오노원
카게로　　　　　　　　　－  －  ○  ●  ◎  －  －  －  －  －  －  자택은 경사각의 대나무숲. 호수는 안개호만
유우기　　　　　　　　　－  －  ☆  －  －  －  －  ☆  －  ◎  －  자택은 구지옥 큰길. 봄과 가을은 마을（이해가게）와 산에도 출현
모미지　  　　　　　　　－  －  －  －  －  －  －  ◎  ○  －  －  자택은 구천의 폭포
유유코　　　+5　　 -1   －  ○  ○  －  －  －  ◎  －  －  －  －  자택은 백옥루
케이네　　　　　　 +1   －  －  ◎  －  ○  －  －  －  －  －  －  자택은 연립 주택거리
유카　　　　　　　　　　－  －  －  －  ○  ○  －  －  －  －  －  자택은 몽환관
마미조　　  　　　　　　－  ○  ◎  －  －  －  －  －  －  －  －  자택은 묘우렌절경내
코스즈　　　　　　 +1   ○  －  ◎  －  －  －  －  －  －  －  －  자택은 상가마을

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
신묘마루　　　　　　　　◎  ○  ○  －  －  －  －  －  －  －  －  자택은 신사 툇마루
에이린　　　　　　 +1   －  －  ○  －  ◎  －  －  －  －  －  －  자택은 영원정
반키　　　　　　　　　　－  ○  ◎  －  －  －  －  －  －  －  －  자택은 연립 주택거리
레티　　　  　　　　　　－  －  ☆  ◎  －  ○  －  －  －  －  －  자택은 얼음의 카마쿠라. 겨울은 마을에도 출현
메디슨　　　    　　　　－  －  －  －  ◎  ○  ●  －  －  －  －  자택은 무명의 언덕
코마치　　　+5　　 -1   ○  －  ●  －  －  －  ○  ○  －  －  －  자택은 피안. 마을은 삼켜 가게만
시즈하　　　　　　 +1   －  －  ☆  －  －  －  －  ◎  ○  －  －  자택은 산기슭의 수해. 가을은 마을에도 출현
미노리코　　　　　 +1   －  －  ☆  －  －  －  －  ◎  ○  －  －  자택은 산기슭의 수해. 가을은 마을에도 출현. 시즈하와 연동
히나　　　　　　　　　　－  －  －  －  －  ●  ●  ◎  －  －  －  자택은 산기슭의 수해
아큐　　　　-5　　 +1   ○  －  ◎  －  －  －  －  －  －  －  －  자택은 연립 주택거리

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
렌코　　　　　　　　　　○  ○  ◎  －  ○  －  ●  －  －  －  －  자택은 연립 주택거리. 연꽃 메리로 연동
메리　　  　　　　　　　○  ○  ◎  －  ○  －  ●  －  －  －  －  자택은 연립 주택거리. 연꽃 메리로 연동
키스메　　　　　　　　　－  －  －  －  －  －  －  －  －  ◎  －  자택은 환상 바람구멍
야마메　　　　　　　　　－  －  －  －  －  －  －  －  －  ◎  －  자택은 환상 바람구멍
이치린　　　　　　　　　－  ◎  ○  －  －  －  －  －  －  －  －  자택은 묘우렌 테라모토당
무라사　　　　　　　　　－  ◎  －  ●  －  －  ●  ●  －  －  －  자택은 묘우렌 테라모토당. 안개호만
쇼　　　　　　　　　　　－  ◎  ○  －  －  －  －  －  －  －  －  자택은 묘우렌 테라모토당
쿄코　　　　　　　　　　－  ◎  －  －  －  －  －  ○  －  －  －  자택은 묘우렌절경내
요시카　　　-5　　 -2   －  ◎  －  －  －  －  －  －  －  －  －  자택은 묘지
청아　　　　+5　　 -2   －  ◎  ○  －  －  －  ●  －  －  －  －  자택은 마사노리 도장

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
토지코　　　　　　　　　－  ◎  －  －  －  －  ○  －  －  －  －  자택은 마사노리 도장
후토　　　　　　　　　　－  ◎  ○  －  －  －  －  －  －  －  －  자택은 마사노리 도장
와카사기히메　　　　　　－  －  －  ◎  ☆  －  －  －  －  －  －  자택은 안개호. 거품이 없으면 이동하지 않는다
벤벤　　　　　　　　　　－  －  ○  －  －  ○  －  －  －  －  －  츠쿠모 자매로 연동 ※자택 없음
야츠하시　　　　　　　　－  －  ○  －  －  ○  －  －  －  －  －  츠쿠모 자매로 연동 ※자택 없음
라이코　　　　　　　　　－  －  ○  －  －  ○  －  －  －  －  －  ※자택 없음
세이자　　　　　　　　　－  －  －  ○  ○  ○  ●  ○  －  －  －  ※자택 없음
요리히메　　　　　 +1   －  －  －  －  －  －  －  －  －  －  ◎  자택은 와타츠키정
토요히메　　　　　 +1   －  －  －  －  －  －  －  －  －  －  ◎  자택은 와타츠키정
레이센　　　　  　 +1   －  －  －  －  －  －  －  －  －  －  ◎  자택은 와타츠키정

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
토키코　　　　　　　　　－  －  －  ○  －  ◎  －  ○  －  －  －  자택은 고목의 큰 나무
신키　　　　　　　　　　－  －  ○  －  －  ◎  －  －  －  －  －  자택은 인형의 양관
유메코　　　　　　　　　－  －  ○  －  －  ◎  －  －  －  －  －  자택은 인형의 양관
유키　　　　　　　　　　－  －  ○  －  －  ◎  －  －  －  －  －  자택은 연립 주택거리
마이　　　　　　　　　　－  －  ○  －  －  ◎  －  －  －  －  －  자택은 연립 주택거리
스미레코　　　　　　　　◎  ○  ○  －  －  －  －  －  －  －  －  ※자택 없음
세이란　　　　　　　　　－  －  －  －  ○  －  －  －  ●  －  ◎  자택은 달궁전. 산록은 산기슭의 수해만
링고　　　　　　　　　　－  －  －  －  ○  －  －  －  ●  －  ◎  자택은 달궁전. 산록은 산기슭의 수해만
도레미　　  　　　　　　－  －  －  －  －  －  －  －  －  －  ◎  자택은 가이안 통로. 가이안 통로만
사구메　　　　　　 +1   －  －  －  －  －  －  －  －  －  －  ◎  자택은 달궁전

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
클라운피스　　　　　　　－  －  ○  －  －  －  －  －  －  －  ◎  자택은 정인가의 바다
순호　　　　　　　　　　－  －  －  －  ○  －  －  －  －  －  ◎  자택은 정인가의 바다
헤카　　　　　　　　　　－  －  ○  －  －  －  －  －  －  －  ◎  자택은 정인가의 바다
쿠루미　　　　　　　　　－  －  －  －  ◎  －  －  －  －  －  －  자택은 몽환관
에리　　　  　　　　　　－  －  －  －  ◎  －  －  －  －  －  －  자택은 몽환관
무게츠　　　 　 　　　　－  －  －  －  ◎  －  －  －  －  －  －  자택은 몽환관
겐게츠　　　　　　　　　－  －  －  －  ◎  －  －  －  －  －  －  자택은 몽환관
라바　  　　+5　　 -1   －  －  －  ○  －  ○  －  －  －  －  －  자택은 태양의 밭
네무노　　　　　　 +1   －  －  －  －  －  －  －  ◎  －  －  －  자택은 산기슭의 수해
아운　　  　　　　 +1   ◎  ○  －  －  －  －  －  －  －  －  －  자택은 신사 경내

캐릭터　　이동율  절도  박  절  주  호  죽  숲  명  산  수  지  월  비고
나루미　　　-5　　 +1   －  －  －  －  －  ◎  －  －  －  －  －  자택은 숲의 입구
마이　　　　　　　　　　－  －  ○  －  ○  ○  －  －  －  －  －  ※자택 없음
사토노　　　　　　　　　－  －  ○  －  ○  ○  －  －  －  －  －  ※자택 없음
오키나　　　　　　 +1   －  －  ○  －  －  ○  ○  －  ○  －  －  ※자택 없음
조온　　　　　　　 -1   －  ◎  ○  －  －  －  －  －  －  －  －  자택은 묘우렌 테라모토당
시온 　 　　　　　 -1   ◎  －  －  －  －  －  －  －  ○  －  －  자택은 천계


code:
;-----------------------------------------------------------
;맵 묘화 처리
;2캐릭터 세트의 반각 숫자(01이라든지)는 자동으로 버튼화, 전각 숫자는 인식하지 않는다
;-----------------------------------------------------------
@DRAW_MAP(ARGS)
#DIMS AA, 40
#DIM SPOT
#DIM MODE
#DIM LOCATION

#DIM LINENUM
#DIM X_POINT
#DIM FOUND_INT
;AA를 취득, 없으면 그대로 돌아간다
VARSET AA
;외출 맵인가 어떤가의 분기
IF ARGS == "ODEKAKE"
	TRYCCALLFORM ODEKAKEMAP_{CFLAG:MASTER:데이트중}(AA)
	CATCH
		RETURN 0
	ENDCATCH
ELSE
	TRYCCALLFORM MAP_VIEWING_{MAIN_MAP}(AA)
	CATCH
		RETURN 0
	ENDCATCH
ENDIF

;-----------------------------------------------------------
;묘화 처리
;-----------------------------------------------------------
FOR LINENUM, 0, VARSIZE("AA")
	SIF AA:LINENUM == ""
		CONTINUE
	;행 마다 초기화
	X_POINT = 0
	RESULTS = I
	;행의 종단까지 루프
	WHILE RESULTS != "" && STRLENSU(RESULTS) < 3
		;1문자 꺼낸다
		SUBSTRINGU AA:LINENUM, X_POINT, 1
		;숫자라면 버튼으로 한다
		IF ISNUMERIC(RESULTS)
			;분기 귀찮기 때문에 반드시 2자릿수 취한다
			SUBSTRINGU AA:LINENUM, X_POINT, 2
			FOUND_INT = TOINT(RESULTS)
			;외출 맵인가 어떤가의 분기
			IF ARGS == "ODEKAKE"
				SPOT = FOUND_INT
				CALL GETMAP2(SPOT)
			ELSE
				SPOT = MAIN_MAP * 100 + FOUND_INT
				CALL GETMAP(SPOT)
			ENDIF
			X_POINT += 2
		;기호에 의미를 갖게하는 예, 이것이라면#은 보통으로는 사용할 수 없게 되지만 뭐 좋은가
		ELSEIF RESULTS == "#"
			;반드시 2 문자 잡는다
			SUBSTRINGU AA:LINENUM, X_POINT, 2
			TRYCALLFORM DRAW_MAP_BG_{CFLAG:MASTER:현재위치 / 100}(RESULTS)
			X_POINT += 2
		;보통의 문자
		ELSE
			;CALL DRAW_MAP_BG(RESULTS)
			TRYCALLFORM DRAW_MAP_BG_{CFLAG:MASTER:현재위치 / 100}(RESULTS)
			X_POINT ++
		ENDIF
	WEND
	PRINTL
NEXT

RESETCOLOR

;===========================================================
;장소명 표시
;===========================================================
@PRINT_SPOT
#DIMS SPOTNAME, 100

VARSET SPOTNAME
CALLFORM MAP_SPOTNAME_{MAIN_MAP}(SPOTNAME)
FOR  LOCAL, 0, VARSIZE("SPOTNAME")
	IF SPOTNAME:LOCAL != ""
		IF MAIN_MAP * 100 + LOCAL != CFLAG:MASTER:현재위치
			PRINTBUTTON TOSTR(LOCAL, "00") + ". " + SPOTNAME:LOCAL + "　", MAIN_MAP * 100 + LOCAL
		ELSE
			SETCOLOR 0x00FF00
			PRINTS TOSTR(LOCAL, "00") + ". " + SPOTNAME:LOCAL + "　"
			RESETCOLOR
		ENDIF
	ENDIF
NEXT


code:
;FileName_JOB.ERB ----------------------------- Rev1. 00
;일 개시 처리
;CALL		USER
;ARG		캐릭터 NO
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_JOBSTR(ARG)
#DIM 이동전
#DIM 이동후
#DIMS HOLD_SAMEN

IF EX:ARG:질내정액 + EX:ARG:애널내정액 >= 500
	HOLD_SAMEN = 배에 충분히 정액을 모은
ELSEIF EX:ARG:질내정액 + EX:ARG:애널내정액 >= 100
	HOLD_SAMEN = 배에 정액을 모은
ELSE
	HOLD_SAMEN =
ENDIF

;FOR LOCAL, 0, CHARANUM
;	SIF CFLAG:LOCAL:직장 == 0 && CFLAG:LOCAL:행동 == 5
;		PRINTFORMW ### JOB 326ERROR %CALLNAME:LOCAL% ###
;NEXT
VARSET LOCAL
이동전 = 0
이동후 = 0
;울면서 일에게 성실하니까
IF CFLAG:ARG:우후후 && !GROUPMATCH(CFLAG:ARG:직종, 49, 51)
	PRINTFORMW %CALLNAME:ARG%는 일\@ CFLAG:ARG:직장 == CFLAG:ARG:현재위치 ?  (을)를 시작하는거야 # 로 향하는거야 \@차면 안 되는 것 같다…
	CALL ENDUFUFU(ARG)
	CFLAG:MASTER:우후후 = 0
	TFLAG:106 = 0
	IF TFLAG:102 == 3 && TFLAG:껴안기모드
		TFLAG:껴안기모드 = 0
		TFLAG:102 = 1
	ENDIF
ENDIF

SIF CFLAG:ARG:행동 == 5
	CALL JOBMOVE(ARG)

IF (CAN_MOVE(CFLAG:MASTER:현재위치, CFLAG:ARG:현재위치) == 2 || CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치) && !TFLAG:원거리이동
	IF CFLAG:ARG:현재위치 == TFLAG:연회장 && TIME_PROGRESS(TIME:1) && (CFLAG:ARG:직종 == 49 || CFLAG:ARG:직종 == 51)
		CALL 연회묘사(ARG)
	ELSEIF CFLAG:ARG:현재위치 == CFLAG:ARG:직장 && TIME_PROGRESS(TIME:1)
		CALL 일정경묘사(ARG)
		IF BASE:ARG:일량
			;일이 아직 3분의 2이상 남아 있다
			IF BASE:ARG:일량 >= (MAXBASE:ARG:일량 / 3) * 2
				IF CFLAG:ARG:직종 == 48
					PRINTW 　연회 준비는 꽤 남아 있는 것 같다…
				ELSEIF CFLAG:ARG:직종 == 50
					PRINTW 　연회 정리는 꽤 남아 있는 것 같다…
				ELSEIF CFLAG:ARG:직종 == 46
					PRINTW 놀이에 몰두하고 있다…
				ELSE
					PRINTFORMW %GET_JOBNAME(ARG)%는 꽤 남아 있는 것 같다…
				ENDIF
				LOCAL = 3
			;일이 아직 3분의 1이상 남아 있다
			ELSEIF BASE:ARG:일량 >= (MAXBASE:ARG:일량 / 3)
				IF CFLAG:ARG:직종 == 48
					PRINTW 　연회 준비가 끝나려면 아직 시간이 걸릴 것 같다…
				ELSEIF CFLAG:ARG:직종 == 50
					PRINTW 　연회 정리를 끝내려면 시간이 더 걸릴 것 같다…
				ELSEIF CFLAG:ARG:직종 == 46
					PRINTW 아직 더 놀고 싶은 것 같다…
				ELSE
					PRINTFORMW %GET_JOBNAME(ARG)%가 끝나려면 아직 시간이 더 걸릴 것 같다…
				ENDIF
				LOCAL = 2
			ELSE
				IF CFLAG:ARG:직종 == 48
					PRINTW 　조금만 더 하면 연회 준비를 마칠 수 있을 것 같다…
				ELSEIF CFLAG:ARG:직종 == 50
					PRINTW 　조금만 더 하면 연회 정리를 끝낼 수 있을 것 같다…
				ELSEIF CFLAG:ARG:직종 == 46
					PRINTW 놀다 지친 것 같다…
				ELSE
					PRINTFORMW 조금 더 있으면 %GET_JOBNAME(ARG)%가 끝날 것 같다…
				ENDIF
				LOCAL = 1
			ENDIF
			;통상의 일말 업무 중 한편 연회 플래그가 서지 않으면 표시한다
			SIF CFLAG:ARG:연회참가 == 0
				CALL KOJO_MESSAGE_SEND("EVENT", 13, ARG, 2, LOCAL)
		ENDIF
		;연회중의 경우만, 스무스하게 다음의 동작에 연결된다
		;술을 다 마셨을 때 에 1 턴 아무것도 하지 않고 멍하니 하는 것을 방지하는 처리
;		SIF CFLAG:ARG:연회참가 > 0 && BASE:ARG:일량 <= 0
;			CALL CHARA_JOBEND(ARG)
	ELSEIF CFLAG:ARG:직종 != 51
		IF !AT_HOME(ARG) && GET_MAPID(CFLAG:ARG:현재위치) != MAIN_MAP
			이동전 = 6000 + (CFLAG:ARG:현재위치 / 10)
		ELSE
			이동전 = CFLAG:ARG:현재위치
		ENDIF
		IF IN_HOME(CFLAG:ARG:직장) == 0 && GET_MAPID(CFLAG:ARG:직장) != MAIN_MAP
			이동후 = 6000 + (CFLAG:ARG:직장 / 10)
		ELSE
			이동후 = CFLAG:ARG:직장
		ENDIF
		;시간 경과하고 있지 않았으면 비표시
		IF !TIME_PROGRESS(TIME:1)
		;이동전과 이동 후의 위치가 같으면 비표시
		ELSEIF NAME_FROM_PLACE(이동전) == NAME_FROM_PLACE(이동후)
		ELSEIF CFLAG:ARG:현재위치 == OMANEKIBEYA()
			;방에 오르고 있으면 나온다, 미안합니다 귀찮은 것으로 지문 정리해 버립니다；
			CFLAG:MASTER:현재위치 = CFLAG:ARG:자택위치
			PRINTFORMW %CALLNAME:ARG%는 용무가 있는 것 같아서 밖으로 나왔다
		ELSEIF CFLAG:ARG:직종 == 48
			PRINTFORM %HOLD_SAMEN% %CALLNAME:ARG%는 연회를 준비하기 위해
			PRINTFORMS NAME_FROM_PLACE(이동전)
			PRINT 로부터
			PRINTFORMS NAME_FROM_PLACE(이동후)
			PRINTW 로 이동했습니다.
		ELSEIF CFLAG:ARG:직종 == 49
			PRINTFORM %HOLD_SAMEN% %CALLNAME:ARG%는
			PRINTFORMS NAME_FROM_PLACE(이동전)
			PRINT 로부터
			PRINTFORMS NAME_FROM_PLACE(이동후)
			PRINTW 의 연회에 참가하러 갔습니다.
		ELSEIF CFLAG:ARG:직종 == 46
			PRINTFORM %HOLD_SAMEN% %CALLNAME:ARG%는
			PRINTFORMS NAME_FROM_PLACE(이동전)
			PRINT 로부터
			PRINTFORMS NAME_FROM_PLACE(이동후)
			PRINTW 에 놀러 갔습니다.
		ELSE
			PRINTFORM %HOLD_SAMEN% %CALLNAME:ARG%는 %GET_JOBNAME(ARG)% 때문에
			PRINTFORMS NAME_FROM_PLACE(이동전)
			PRINT 로부터
			PRINTFORMS NAME_FROM_PLACE(이동후)
			PRINTW 로 이동했습니다.
		ENDIF

		;통상의 직장에 이동 말연회 플래그가 서지 않으면 표시한다
		SIF CFLAG:ARG:연회참가 == 0
			CALL KOJO_MESSAGE_SEND("EVENT", 13, ARG, 1, LOCAL)
	ENDIF
ENDIF
SIF CFLAG:ARG:동침중
	CALL SET_TOGETHER(0, ARG, 1)
SIF CFLAG:ARG:동행 && CFLAG:ARG:직종 != 51
	CFLAG:ARG:동행 = 0
IF FLAG:데이트상대 == ARG
	FLAG:데이트상대 = 0
	TFLAG:데이트전호감도 = 0
	CFLAG:ARG:데이트중 = MAIN_MAP
ENDIF
;직장에 이동
SIF CFLAG:ARG:직장 && SHIRAHU(ARG)
	CFLAG:ARG:현재위치 = CFLAG:ARG:직장
SIF CFLAG:ARG:직종 == 49 && !TCVAR:ARG:만취 && (BASE:ARG:술기운 > (MAXBASE:ARG:술기운 / 10) * 8)
	CALL ENKAI_DRUNK(ARG)
CFLAG:ARG:행동 = 5
IF TCVAR:ARG:갈아입음
	CALL OKIGAE(ARG, TCVAR:ARG:갈아입음)
ENDIF
;FileName_JOB.ERB ----------------------------- Rev1. 00
;일종료 처리
;CALL		USER
;ARG		캐릭터 NO
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_JOBEND(ARG)
;일 후 데일리 SET
SIF CFLAG:ARG:행동 == 5
	CALL SET_DERAY(3, ARG)

;일량을 0으로 한다
SIF CFLAG:ARG:행동 == 5
	BASE:ARG:일량 = 0
;이 타이밍에 피로 추가
CALL ADD_TIRED(ARG, MAXBASE:ARG:일량 / 2)

;업무중 플래그 OFF
CFLAG:ARG:행동 = 0
IF CFLAG:ARG:현재위치 == CFLAG:ARG:직장 && CFLAG:ARG:직종 != 51
	SELECTCASE CFLAG:ARG:직종
	CASE 46
		IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
			PRINTFORMW %CALLNAME:ARG%는 다 놀았습니다.
			;수고 하셨습니다 말
			SIF CFLAG:ARG:연회참가 == 0
				CALL KOJO_MESSAGE_SEND("EVENT", 13, ARG, 3,0)
		ENDIF
	CASE 48
		IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
			PRINTFORMW %CALLNAME:ARG%의 연회 준비가 끝났습니다.
			SIF ARG == 1
				PRINTL 수고레이무
		ENDIF
		IF DAY == FLAG:개시일 && TIME >= FLAG:33
			CALL ENKAI_START(ARG)
		ELSEIF FLAG:연회개최플래그 >= 98
			CALL ENKAI_START(ARG)
		ENDIF
	CASE 49
		CALL ENKAI_DRUNK(ARG)
	CASE 50
		IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
			PRINTFORMW %CALLNAME:ARG%의 연회 정리가 끝났습니다.
			SIF ARG == 1
				PRINTL 　수고레이무
		ENDIF
		CFLAG:ARG:직종 = 0
		CFLAG:ARG:연회참가 = 3
		CALL CHARA_JOBEND_GO_HOME(ARG)
	CASEELSE
		IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
			PRINTFORMW %CALLNAME:ARG%의 %GET_JOBNAME(ARG)%가 끝났습니다.
			;수고 하셨습니다 말
			CALL KOJO_MESSAGE_SEND("EVENT", 13, ARG, 3,0)
			IF MAXBASE:ARG:일량 < (TCVAR:ARG:도운양 * 3) && TCVAR:ARG:답례
				PRINTFORMW %CALLNAME:ARG%로부터 %ITEMNAME:(TCVAR:ARG:답례)%를 받았다
				ITEM:(TCVAR:ARG:답례) ++
			ENDIF
		ENDIF
		IF CFLAG:ARG:현재위치 / 100 != MAIN_MAP && !CFLAG:ARG:신사거주 && VISIT(ARG)
			IF !RAND:15
				CALL 주인공물건으로향한다(ARG)
			ELSEIF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치 && CAN_DATE(ARG)
				PRINTFORML %CALLNAME:ARG%에게 데이트 신청할까?
				CALL ASK_YN
				IF !RESULT
					CALL 외출처로부터권할수있을까(ARG)
					IF RESULT
						CFLAG:MASTER:동행 = 60
						CFLAG:ARG:동행 = 60
						CFLAG:ARG:데이트중 = CFLAG:MASTER:현재위치 / 100
						FLAG:데이트상대 = ARG
						TFLAG:데이트전호감도 = CFLAG:ARG:호감도
						TIME += 1
						PRINTFORMW 일을 마친 %CALLNAME:ARG%와 데이트하기로 했다
						;필요한가 모르겠지만 일단
						RETURN
					ENDIF
				ENDIF
			ENDIF
		ENDIF
		CALL CHARA_JOBEND_GO_HOME(ARG)
	ENDSELECT
ENDIF

@CHARA_JOBEND_GO_HOME(ARG)
IF CFLAG:ARG:신사거주 && !AT_HOME(ARG)
	SIF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
		PRINTFORMW %CALLNAME:ARG%는 %GET_MAPNAME(MAIN_MAP)%로 돌아갔다
	CFLAG:ARG:현재위치 = MAXROOM
ENDIF


code:
;FileName_JOB.ERB ----------------------------- Rev1. 00
;휴일 판정 처리
;CALL		USER
;ARG		캐릭터 NO
;ARG:1(생략가능)	0:일이 끝나 있으면 휴일 1:일인 어느 날은 일일(일량·종료시각을 보지 않는다)
;RETURN		0:일일, 1:휴일
;COMMENT
;-----------------------------------------------------------
@CHARA_HOLIDAY(ARG, ARG:1=0)
#FUNCTION

;잔일량·일종료시간을 확인할까 분기
IF !ARG:1
	SIF BASE:ARG:일량 <= 0
		RETURNF 1
	SIF TCVAR:ARG:일종료 > 0 && TIME > TCVAR:ARG:일종료
		RETURNF 1
ENDIF
RETURNF TCVAR:ARG:일개시 == -1

;-----------------------------------------------------------
;@CHARA_HOLIDAY로부터 분리
;MOVEMENT가 불릴 때에 갱신된다
;ARG:1에 1을 설정하면(자) 연회나 업무중에 의한 스킵을 무시
;-----------------------------------------------------------
@일내용설정(ARG, ARG:1)
#DIM 청소하기
VARSET LOCAL

;CFLAG:350 직종(40, 청소　41, 회화　42, 전투　43, 교양　44, 요리　45, 음악 46, 놀이 47, 장사중(도울수없다) 48, 연회준비 49, 연회참가 50, 연회 정리 51, 연회 후의 취기 52, 여자 모임
;TCVAR:도울수없다 =1 도울수없다 =2 도와도 빨리는 끝나지 않는다
;연회계의 일은 여기에서는 설정하지 않습니다. 연회. ERB를 참조해 주세요.

;에이키 님은 일이 있습니다. 일꾼이군요.
;IF ARG == 30
	;기수일은 비번입니다
;	IF (DAY % 2 == 1)
;		BASE:ARG:일량 = 0
;	ENDIF

IF !ARG:1
	;현재 업무중이라면 돌아간다
	SIF CFLAG:ARG:행동 == 5
		RETURN

	;연회에 참가하는 놈은 그 날의 일을 쉰다
	IF FLAG:연회개최플래그 > 0 && CFLAG:ARG:연회참가 > 0
		IF !GROUPMATCH(CFLAG:ARG:직종, 48, 49, 50, 51)
			TCVAR:ARG:일개시 = -1
			TCVAR:ARG:일종료 = -1
		ENDIF
		RETURN
	ENDIF
ENDIF

IF CFLAG:ARG:출산휴가
	TCVAR:ARG:일개시 = -1
	TCVAR:ARG:일종료 = -1
	RETURN
ENDIF

;일개시·일종료시각을―1으로 한다(개시시각이―1이라면 휴일이라고 판정)
TCVAR:ARG:일개시 = -1
TCVAR:ARG:일종료 = -1

;일의 처리
SELECTCASE ARG
CASE [[레이무]]
	청소하기 = 0
	IF YOGORE:참배길 > 1000
		청소하기 = 참배길
	ELSE
		청소하기 = FINDELEMENT(YOGORE, MAXARRAY(YOGORE, 1, 6), 1, 6)
	ENDIF
	IF 청소하기 <= 0
	ELSEIF YOGORE:청소하기 <= 1000
	ELSEIF TIME < CLOCK_TO_TIME(8, 0)
		CFLAG:ARG:직장 = 청소하기
		;아침 2시간 정도 청소하기
		MAXBASE:ARG:일량 = 600 * 2
		CFLAG:ARG:직종 = 40
		;TCVAR:ARG:도울수없다 = 1
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 6, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME( 8, 0)
	ENDIF
CASE [[루코토]]
	IF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 8
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 2
	ENDIF
CASE [[미마]]
	IF YOUBI_MATCH(DAY, "월수")
	;월요일은 마리사, 수요일은 스이카의 상대
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(16, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
		CFLAG:ARG:직장 = 11
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 5
		TCVAR:ARG:답례 = GETNUM(ITEM, "엿")
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[서니]]
	IF IS_WEEKEND(DAY)
		MAXBASE:ARG:일량 = 600 * 7
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(17, 0)
		CFLAG:ARG:직장 = 32
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	ENDIF
CASE [[루나]]
	IF IS_WEEKEND(DAY)
		MAXBASE:ARG:일량 = 600 * 7
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(17, 0)
		CFLAG:ARG:직장 = 32
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	ENDIF
CASE [[스타]]
	IF IS_WEEKEND(DAY)
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 32
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	ENDIF
;치유리는 평일 일찍 일어나 연구실에
CASE [[치유리]]
	IF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 6, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 49
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
	ENDIF
;유메미도 연구 짓고
CASE [[유메미]]
	IF IS_WEEKDAY(DAY)
		;사이에 1시간 자는 거야로 이 양
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(11, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(17, 0)
		CFLAG:ARG:직장 = 49
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[스이카]]
	;아츠무 코즈키 요는 술꾼, 수요일은 트레이닝
	IF YOUBI_MATCH(DAY, "월")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(16, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 10
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
	ELSEIF YOUBI_MATCH(DAY, "수")
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(16, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
		CFLAG:ARG:직장 = 11
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[마리사]]
	IF YOUBI_MATCH(DAY, "월")
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
		CFLAG:ARG:직장 = 6
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[루미아]]
	IF YOUBI_MATCH(DAY, "화") && CFLAG:ARG:임신경과일수 <= 36 && MAIN_MAP != 1
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(22,  0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(24, 00)
		CFLAG:ARG:직장 = 지장길
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:답례 = GETNUM(ITEM, "정체불명고기")
		RETURN
	ENDIF
CASE [[대요정]]
	IF IS_WEEKEND(DAY)
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 32
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	ENDIF
CASE [[치르노]]
	IF IS_WEEKEND(DAY)
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 32
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	;아침에 일어 나, 눈이 내리고 있으면(자) 논다
	ELSEIF TIME:5 == 8
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 6, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME( 7, 0)
		CFLAG:ARG:직장 = 343
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	;여름 개이고 맑은 하늘 아이스크림 가게
	ELSEIF (DAY:2 == 2 && TIME:5 < 2)
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(15, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:답례 = GETNUM(ITEM, "아이스크림")
	ENDIF
CASE [[사쿠야]]
	IF YOUBI_MATCH(DAY, "월수금")
		IF TIME <= CLOCK_TO_TIME(12, 0)
		;~12:00
			MAXBASE:ARG:일량 = 600 * 4
			TCVAR:ARG:일개시 = CLOCK_TO_TIME( 8, 0)
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
			CFLAG:ARG:직장 = 309
			CFLAG:ARG:직종 = 40
			TCVAR:ARG:급료 = 5
			TCVAR:ARG:답례 = GETNUM(ITEM, "홍차")
		ELSEIF !BASE:ARG:일량 && TIME <= CLOCK_TO_TIME(16, 59)
		;12:01~16:59
			BASE:ARG:일량 = 1200
		ELSE
		;17:00~
			MAXBASE:ARG:일량 = 600 * 2
			TCVAR:ARG:일개시 = CLOCK_TO_TIME(17, 0)
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
			CFLAG:ARG:직장 = 313
			CFLAG:ARG:직종 = 44
			TCVAR:ARG:급료 = 5
			TCVAR:ARG:답례 = GETNUM(ITEM, "홍차")
		ENDIF
	ENDIF
CASE [[레밀리아]]
	IF YOUBI_MATCH(DAY, "일")
		MAXBASE:ARG:일량 = 300
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 30)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19,  0)
		CFLAG:ARG:직장 = 327
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[앨리스]]
	IF DAY % 14 == 0
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 5
		TCVAR:ARG:답례 = GETNUM(ITEM, "엿")
		TCVAR:ARG:도울수없다 = 1
	ELSEIF GROUPMATCH(DAY:3, 7, 16, 17, 27)
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		;자신의 집의 부엌
		CFLAG:ARG:직장 = 525
		;신사에 거주해 하고 있는 경우 신사의 부엌
		SIF FLAG:더부살이캐릭터 == ARG && MAIN_MAP == 0
			CFLAG:ARG:직장 = 8
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:답례 = GETNUM(ITEM, "엿")
	ENDIF
CASE [[유메코]]
	IF YOUBI_MATCH(DAY,"월목")
		;掃除が仕事だけど、基本アリスの人形がやってくれてるから月木のみ
		MAXBASE:ARG:일량 = 600 * 4;=2400=4時間
		CFLAG:ARG:직종 = 40;掃除
		CFLAG:ARG:직장 = 520;洋館前スタート
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(11, 00)
		TCVAR:ARG:급료 = 3
		TCVAR:ARG:답례 = GETNUM(ITEM, "홍차")
	ENDIF
CASE [[루나사]], [[메를랑]], [[리리카]]
	IF  DAY % 28 == 21
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
		CFLAG:ARG:직장 = 202
		TCVAR:ARG:도울수없다 = 1
		CFLAG:ARG:직종 = 47
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[요우무]]
	IF YOUBI_MATCH(DAY, "수")
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 216
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[란]]
	IF GROUPMATCH(DAY:3, 5, 20)
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 4
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[유카리]]
	IF (DAY:2 == 4 && DAY:3 == 30)
		MAXBASE:ARG:일량 = 600 * 14
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13,  0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(24, 00)
		;원래는 180≒다음날 3시를 상정?
		;날 넘어 처리는 귀찮지만 하려고 생각하면 할 수 없지는 않는, 은 두
		CFLAG:ARG:직장 = 4
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[미스티아]]
	;-는 이따금 포장마차를 열고 있습니다. 미 술 정말 좋아합니다.
	;3일에 한 번 포장마차 열고 있습니다
	;이렇게 한다고 캘린더의 일자 준거가 되어 알기 쉽다고 생각하지만 제발
	;IF DAY:3 % 3 == 0
	IF DAY % 3 == 0
		MAXBASE:ARG:일량 = 600 * 8
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(16,  0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(24, 00)
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 2
		CFLAG:ARG:직장 = 444
		TCVAR:ARG:답례 = GETNUM(ITEM, "야트메꼬치")
	ENDIF
CASE [[테위]]
	IF YOUBI_MATCH(DAY, "금")
		;시간에 비해 일량 빈데 해
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
		CFLAG:ARG:직장 = 808
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 4
	ENDIF
CASE [[사나에]]
	IF YOUBI_MATCH(DAY, "화금")
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[카나코]]
	IF DAY:2 == 2 && DAY:3 == 5
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 9, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 222
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:답례 = GETNUM(ITEM, "떡잎으로싼떡")
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[스와코]]
	IF MONEY < 500 && !MAIN_MAP
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(11, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 8
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[텐시]]
	IF YOUBI_MATCH(DAY, "토")
		MAXBASE:ARG:일량 = 100
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10,  0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(10, 10)
		CFLAG:ARG:직장 = 3
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 1
	ENDIF
CASE [[이쿠]]
	IF YOUBI_MATCH(DAY, "화")
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(20, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 830
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[오린]]
	IF IS_WEEKDAY(DAY)
		;시간 준거라면600*5=3000
		MAXBASE:ARG:일량 = 5000
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 928
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 3
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[오쿠]]
	IF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 930
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 2
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[코가사]]
	IF YOUBI_MATCH(DAY, "화금")
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(20, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(24, 0)
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 1
		CFLAG:ARG:직장 = 222

		;명련사 응접실
		SIF YOUBI_MATCH(DAY, "화")
			CFLAG:ARG:직장 = 109
	ENDIF
CASE [[누에]]
	;누에는 매월6일에 소악마와 요리
	IF DAY:3 == 6
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(22, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(23, 0)
		CFLAG:ARG:직장 = 313
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 5
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[카센]]
	IF YOUBI_MATCH(DAY, "토")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(11, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 217
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 2
	ELSE
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(9, 0)
		CFLAG:ARG:직장 = 722
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[엘렌]]
	;매월 15, 30일에 마을에 마법가게 출장
	IF GROUPMATCH(DAY:3, 15, 30)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(14, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(19, 0)
	;그 이외의해는 개이고인가 흐림이라면5%의 확률로 마법의숲의 채집, 다만 메인 맵이 마법의숲 때 한정
	ELSEIF TIME:5 <= 3 && FLAG:일일이벤트 < 50 && MAIN_MAP == 5
		IF !RAND:2
			CFLAG:ARG:직장 = 540
		ELSE
			CFLAG:ARG:직장 = 507
		ENDIF
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[플랑]]
	IF DAY % 2
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(19, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(20, 0)
		CFLAG:ARG:직장 = 329
		CFLAG:ARG:직종 = 46
		TCVAR:ARG:급료 = 0
	ENDIF
CASE [[우동게]]
	IF YOUBI_MATCH(DAY, "화")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(15, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
		TCVAR:ARG:갈아입음 = OBJNAME_TO_ID(ARG, "GET", "의상세트", "우동 약 행상인 세트")
	ELSEIF YOUBI_MATCH(DAY, "목")
		MAXBASE:ARG:일량 = 600 * 8
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(18, 0)
		CFLAG:ARG:직장 = 405
		CFLAG:ARG:직종 = 53
		TCVAR:ARG:급료 = 2
		SIF TALENT:MASTER:조합지식
			TCVAR:ARG:급료 = 3
	ENDIF
CASE [[파츄리]]
	;쳇은 진짜 은둔 형 외톨이
	IF !TALENT:ARG:연모 || YOUBI_MATCH(DAY, "토")
		CFLAG:ARG:직장 = 310
		TCVAR:ARG:일개시 = 480
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 8, 0)
		SELECTCASE CFLAG:ARG:2
		CASE IS <  100
			MAXBASE:ARG:일량 = 600 * 15
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(23, 0)
		CASE IS <  500
			MAXBASE:ARG:일량 = 600 * 9
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(20, 0)
		CASE IS < 1000
			MAXBASE:ARG:일량 = 600 * 6
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(14, 0)
		CASE IS < 3000
			MAXBASE:ARG:일량 = 600 * 4
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CASEELSE
			MAXBASE:ARG:일량 = 600 * 2
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(10, 0)
		ENDSELECT
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 1
	ENDIF
CASE [[뱌쿠렌]]
	;팔꿈치 링은 절의 선전으로 전직했습니다
	IF YOUBI_MATCH(DAY, "월목")
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
		TCVAR:ARG:답례 = GETNUM(ITEM, "엿")
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[미코]]
	IF YOUBI_MATCH(DAY, "월수금")
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 126
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[코코로]]
	IF FESTIVAL() == "예대제"
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 경내
		TCVAR:ARG:도울수없다 = 1
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 0
	ELSEIF YOUBI_MATCH(DAY, "일")
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 11
		TCVAR:ARG:도울수없다 = 1
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 0
	ENDIF
CASE [[메이링]]
	;메이링은 토일요일 이외 점심까지 문지기
	IF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 6, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 301
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 2
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[소악마]]
	;소악마는 매월6일에 요리
	IF DAY:3 == 6
		MAXBASE:ARG:일량 = 600
		CFLAG:ARG:직장 = 313
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(22, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(23, 0)
		CFLAG:ARG:직종 = 44
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[파르시]]
	IF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600
		CFLAG:ARG:직장 = 946
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(18, 0)
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 2
	ENDIF
CASE [[카구야]]
	;공주님은 매일 분재 를 돌보는 것
	MAXBASE:ARG:일량 = 600
	TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
	TCVAR:ARG:일종료 = CLOCK_TO_TIME(14, 0)
	CFLAG:ARG:직장 = 421
	CFLAG:ARG:직종 = 43
	TCVAR:ARG:급료 = 0
CASE [[유기]]
	IF YOUBI_MATCH(DAY, "목")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(16, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 10
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 1
	ENDIF
CASE [[모미지]]
	;수목일은 잘자, 6시간격 22시 취침
	;월 화는 아침에 일어 나 곧으로부터 오후, 7시부터 14시
	IF YOUBI_MATCH(DAY, "월화")
		MAXBASE:ARG:일량 = 600 * 7
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(14, 0)
		CFLAG:ARG:직장 = 802
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 2
		TCVAR:ARG:도울수없다 = 2
	;금흙은 오후부터 잘 때까지, 14시부터 21시
	ELSEIF YOUBI_MATCH(DAY, "금토")
		MAXBASE:ARG:일량 = 600 * 7
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(14, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 805
		CFLAG:ARG:직종 = 42
		TCVAR:ARG:급료 = 2
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[케이네]]
	;케이네은 토일요일 이외 14시까지 서당으로 수업중, 나머지의 30분은 뒷정리
	IF IS_WEEKDAY(DAY) && FESTIVAL() == ""
		MAXBASE:ARG:일량 = 600 * 6 + 300
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 8,  0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(14, 30)
		CFLAG:ARG:직장 = 222
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[유카]]
	;유카 4일에 한 번의 꽃의 손질
	;일자 의존의 판정 어째서 엄밀하게는 4일에 한 번에는 되지 않다
	IF DAY:2 < 4 && DAY:3 % 4 == 2
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 6, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(10, 0)
		CFLAG:ARG:직장 = 438
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 2
	ENDIF
CASE [[코스즈]]
	IF YOUBI_MATCH(DAY, "수목")
		MAXBASE:ARG:일량 = 600 * 8
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 9, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(17, 0)
		CFLAG:ARG:직장 = 213
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:도울수없다 = 2
		TCVAR:ARG:급료 = 2
	ELSEIF YOUBI_MATCH(DAY, "월화금")
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(20, 0)
		CFLAG:ARG:직장 = 213
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[에이린]]
	;에이린은 일요일 이외 저녁까지 꼭 진찰. 의사니까, 어쩔 수 없다
	IF !YOUBI_MATCH(DAY, "일")
		MAXBASE:ARG:일량 = 600 * 8
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(18, 0)
		CFLAG:ARG:직장 = 404
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
		TCVAR:ARG:도울수없다 = 2
		TCVAR:ARG:답례 = GETNUM(ITEM, "불끈불끈Z")
		;조합지식과 교양이 필요
		SIF !TALENT:MASTER:조합지식
			TCVAR:ARG:도울수없다 = 1
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임(선생님은 일 있으므로 조금 늦춤에)
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[메디슨]]
	IF DAY % 7 == 3
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 436
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[코마치]]
	;코마치는 월수금에 나룻배사공 하지만 2분의 1으로 게으름 피운다
	IF YOUBI_MATCH(DAY, "월수금")
		;추석은 바빠서 강제 출근
		SIF GET_MONTH() == "여름의 달" && INRANGE(DAY:3, 1, 15)
			TCVAR:ARG:일의유무 = 2
		SIF !TCVAR:ARG:일의유무
			TCVAR:ARG:일의유무 = RAND:2 + 1
		IF TCVAR:ARG:일의유무 == 2
			MAXBASE:ARG:일량 = 600 * 6
			TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
			TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
			CFLAG:ARG:직장 = 삼도천
			CFLAG:ARG:직종 = 41
			TCVAR:ARG:급료 = 2
		ENDIF
	ENDIF
CASE [[히나]]
	[SKIPSTART]
	;???
	청소하기 = 0
	FOR LOCAL, 701,733
		SELECTCASE LOCAL
			CASE 703,704
				CONTINUE
			CASE 708
				CONTINUE
			CASE 712 TO 730
				CONTINUE
		ENDSELECT
		IF YOGORE:LOCAL > 1000
			CFLAG:ARG:직장 = LOCAL
			청소하기 = 1
		ENDIF
	NEXT
	[SKIPEND]
	IF FESTIVAL() == "히나마츠리"
		MAXBASE:ARG:일량 = 600 * 10
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(20, 0)
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 2
	ELSEIF YOUBI_MATCH(DAY, "흙")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(17, 0)
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[아큐]]
	IF INRANGE(DAY:3, 15, 20)
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(10, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(13, 0)
		CFLAG:ARG:직장 = 221
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[렌코]]
	IF INRANGE(DAY:3, 25, 28)
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(19, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 232
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[메리]]
	IF INRANGE(DAY:3, 25, 28)
		MAXBASE:ARG:일량 = 600 * 2
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(19, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 232
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[이치린]]
	;이치린 언니(누나)와  일을 교대했습니다
	IF YOUBI_MATCH(DAY, "화목")
		MAXBASE:ARG:일량 = 600 * 5
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 7, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 102
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:급료 = 4
	ENDIF
CASE [[쇼]]
	IF YOUBI_MATCH(DAY, "금")
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(13, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(14, 0)
		CFLAG:ARG:직장 = 103
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 2
	ELSEIF IS_WEEKDAY(DAY)
		MAXBASE:ARG:일량 = 600 * 7
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 5, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(12, 0)
		CFLAG:ARG:직장 = 103
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 0
	ENDIF
CASE [[요시카]]
	IF DAY:3 == 4
		MAXBASE:ARG:일량 = 600 * 16
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 8, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(23, 0)
		CFLAG:ARG:직장 = 121
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 0
		TCVAR:ARG:도울수없다 = 0
	ENDIF
CASE [[청아]]
	IF DAY:3 == 4
		MAXBASE:ARG:일량 = 600 * 16
		TCVAR:ARG:일개시 = CLOCK_TO_TIME( 8, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(23, 0)
		CFLAG:ARG:직장 = 121
		CFLAG:ARG:직종 = 43
		TCVAR:ARG:급료 = 5
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[토지코]]
	IF YOUBI_MATCH(DAY, "화")
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(20, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 830
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[후토]]
	;후토신령묘의 권유 담당
	IF YOUBI_MATCH(DAY, "수토")
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 202
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 3
	ENDIF
CASE [[벤벤]], [[야츠하시]]
	IF  DAY % 28 == 7
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(15, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 202
		TCVAR:ARG:도울수없다 = 1
		CFLAG:ARG:직종 = 47
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[라이코]]
	IF  DAY % 28 == 7
		MAXBASE:ARG:일량 = 600 * 6
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(15, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 202
		TCVAR:ARG:도울수없다 = 1
		CFLAG:ARG:직종 = 47
		TCVAR:ARG:급료 = 5
	ELSEIF YOUBI_MATCH(DAY, "화")
		MAXBASE:ARG:일량 = 600 * 1
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(20, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 830
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 5
	ENDIF
CASE [[세이자]]
	IF YOUBI_MATCH(DAY, "월수")
		MAXBASE:ARG:일량 = 600 * 4
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(20, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(24, 0)
		CFLAG:ARG:직장 = 301
		SIF YOUBI_MATCH(DAY, "수")
			CFLAG:ARG:직장 = 540
		CFLAG:ARG:직종 = 41
		TCVAR:ARG:급료 = 1
	ENDIF
CASE [[유유코]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[오키나]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[신키]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
	;누가 뭐라고 말하건 여자 모임
		MAXBASE:ARG:일량 = 600 * 3
		TCVAR:ARG:일개시 = CLOCK_TO_TIME(18, 0)
		TCVAR:ARG:일종료 = CLOCK_TO_TIME(21, 0)
		CFLAG:ARG:직장 = 211
		CFLAG:ARG:직종 = 52
		TCVAR:ARG:도울수없다 = 2
	ENDIF
;다른 사람들은 지금 바쁜 일에는 붙지 않았습니다. 일안 모집. 아마 요우무와 란 님은 부정기에 바쁘겠지……
ENDSELECT

;휴가 플래그 사용하지 않아도 TCVAR:ARG:일개시에 판별할 수 있었으므로
;일이 없는 경우의 리셋 처리를 정리했다
IF TCVAR:ARG:일개시 >= 0
	;GET_JOBPLACE는 주인의 REPLACEMENT유기 처리
	CFLAG:ARG:직장 = GET_JOBPLACE("일", ARG)
	RETURN
ELSE
	MAXBASE:ARG:일량 = 0
ENDIF

;FileName_JOB.ERB ----------------------------- Rev1. 00
;업무중의 이동 처리
;CALL		USER
;ARG		캐릭터 NO
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@JOBMOVE(ARG)
#DIM 전의직장

SIF CFLAG:ARG:연회참가 > 0 || GROUPMATCH(CFLAG:ARG:직종, 48,49,50,51)
	RETURN
전의직장 = CFLAG:ARG:직장

SELECTCASE ARG
CASE [[레이무]]
	IF YOGORE:(CFLAG:ARG:직장) > 1000
	ELSEIF YOGORE:참배길 > 1000
		LOCAL = 참배길
	ELSE
		LOCAL = FINDELEMENT(YOGORE, MAXARRAY(YOGORE, 1, 6), 1, 6)
	ENDIF
	IF LOCAL <= 0
	ELSEIF YOGORE:LOCAL <= 1000
	ELSE
		CFLAG:ARG:직장 = LOCAL
	ENDIF
CASE [[스이카]]
	IF YOUBI_MATCH(DAY, "수")
		TCVAR:ARG:도울수없다 = 0
	ELSE
		TCVAR:ARG:도울수없다 = 1
	ENDIF
CASE [[마리사]]
	IF TIME >= CLOCK_TO_TIME(16, 0)
		CFLAG:ARG:직장 = 11
		CFLAG:ARG:직종 = 42
	ELSE
		CFLAG:ARG:직장 = 6
		CFLAG:ARG:직종 = 40
	ENDIF
CASE [[앨리스]]
	;공연이 끝나면 뒷정리를 도울 수 있다
	IF TIME >= CLOCK_TO_TIME(12, 0)
		TCVAR:ARG:도울수없다 = 0
	;공연일에 없으면 도울 수 있다
	ELSEIF DAY % 14 > 0
		TCVAR:ARG:도울수없다 = 0
	;공연중은 도울수없다
	ELSE
		TCVAR:ARG:도울수없다 = 1
	ENDIF
CASE [[유메코]]
	CFLAG:ARG:직종 = 40
	;屋敷中のお掃除 汚れている部分から4か所順次移動
	;今一番汚れているところから4つを探す　洋館前～人形の館全域
	;一律掃除時間は1時間とする
	IF TIME <= CLOCK_TO_TIME(8, 0)
		LOCAL = FINDELEMENT( YOGORE, MAXARRAY(YOGORE,520, 531), 520, 531)
		CFLAG:ARG:직장 = LOCAL
	ELSEIF TIME <= CLOCK_TO_TIME(9, 0)
		LOCAL = FINDELEMENT( YOGORE, MAXARRAY(YOGORE,520, 531), 520, 531)
		CFLAG:ARG:직장 = LOCAL
	ELSEIF TIME <= CLOCK_TO_TIME(10, 0)
		LOCAL = FINDELEMENT( YOGORE, MAXARRAY(YOGORE,520, 531), 520, 531)
		CFLAG:ARG:직장 = LOCAL
	ELSEIF TIME <= CLOCK_TO_TIME(11, 00)
		LOCAL = FINDELEMENT( YOGORE, MAXARRAY(YOGORE,520, 531), 520, 531)
		CFLAG:ARG:직장 = LOCAL
	ENDIF
CASE [[미스티아]]
	;교육은 도울 수 있다
	IF BASE:ARG:일량 > 3000
		TCVAR:ARG:도울수없다 = 0
	;포장마차를 내면(자) 도와도 시간은 변함없다
	ELSE
		TCVAR:ARG:도울수없다 = 2
	ENDIF
CASE [[아야]]
	;교양과 신뢰가 필요
	IF CFLAG:ARG:신뢰도 < 500 || ABL:MASTER:교양 < 3
		TCVAR:ARG:도울수없다 = 1
	ELSE
		TCVAR:ARG:도울수없다 = 0
	ENDIF
CASE [[카센]]
	IF YOUBI_MATCH(DAY, "토")
		IF TIME >= CLOCK_TO_TIME(14, 0)
			CFLAG:ARG:직장 = 212
			CFLAG:ARG:직종 = 41
		ELSE
			CFLAG:ARG:직장 = 218
			CFLAG:ARG:직종 = 41
		ENDIF
	ENDIF
CASE [[엘렌]]
	IF TIME:0 == TCVAR:ARG:357
	;전회의 처리로부터 시간이 경과하고 있지 않으면 패스
	ELSEIF GROUPMATCH(DAY:3, 15, 30)
	;출장
		;객수의 증감, 계상, 기본은-3~＋5
		LOCAL:1 = RAND:8 - 3

		;기후
		SELECTCASE TIME:5
		;안개비, 안개는-1
		CASE 6, 7
			LOCAL:1 -= 1
		;비, 눈은-2
		CASE 4, 8
			LOCAL:1 -= 2
		;큰 비, 눈보라, 진눈깨비, 뻥튀기는-3
		CASE 5, 9, 12, 13
			LOCAL:1 -= 3
		ENDSELECT
		;무지개, 다이아몬드 더스트는＋2
		SIF TIME:7 >= 1
			LOCAL:1 += 2

		;객수가 적으면보다 늘린다
		SIF TCVAR:ARG:354 < 5
			LOCAL:1 += 1
		;객수가 많으면보다 줄인다
		SIF TCVAR:ARG:354 > 25
			LOCAL:1 -= 3

		;음수 방지
		TCVAR:ARG:354 = MAX(0, TCVAR:ARG:354 + LOCAL:1)
		SIF LOCAL:1 > 0
			TCVAR:ARG:355 += LOCAL:1
		;현재의 객수가 일정 이상이라면 엘렌의 응원자로 돈다
		IF TCVAR:ARG:354 > 25
			CFLAG:ARG:직종 = 43
		;그렇지 않으면 유객 행위에
		ELSE
			CFLAG:ARG:직종 = 41
		ENDIF
	;채집 엘렌의 채집량을 계상
	ELSE
		;채집량이 이상하게 안 되게
		SIF !INRANGE(TCVAR:ARG:357, 420, 720)
			TCVAR:ARG:357 = 420
		;계산식은(현재의 TIME-전회 계산한 TIME)*1~20의 난수
		TCVAR:ARG:354 += (TIME:0 - TCVAR:ARG:357) * (RAND:20 + 1)
		;채집량이 최대 일량을 웃돌면(자) 종료
		SIF TCVAR:ARG:354 > MAXBASE:ARG:일량
			BASE:ARG:일량 = 1
	ENDIF
CASE [[케이네]]
	;수업이 끝나면 뒷정리를 도울 수 있다
	IF TIME >= CLOCK_TO_TIME(14, 0)
		CFLAG:ARG:직종 = 40
		TCVAR:ARG:도울수없다 = 0
	;점심시간은 당연히 무리
	ELSEIF INRANGE(TIME, CLOCK_TO_TIME(12, 0), CLOCK_TO_TIME(12, 59))
		TCVAR:ARG:도울수없다 = 1
	;교양이 3이상 또한 신뢰도가 50이상이라면 수업을 도울 수 있다
	ELSEIF ABL:MASTER:교양 >= 3 && CFLAG:ARG:신뢰도 >= 50
		TCVAR:ARG:도울수없다 = 2
	;그 이외는 도울수없다
	ELSE
		TCVAR:ARG:도울수없다 = 1
	ENDIF
ENDSELECT

;직장 갱신
SIF 전의직장 != CFLAG:ARG:직장
	CFLAG:ARG:직장 = GET_JOBPLACE("일", ARG)

;FileName_JOB.ERB ------------------------------- Rev1. 00
;일나토리 이득
;CALL		USER
;ARG		VOID
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@GET_JOBNAME(ARG)
#FUNCTIONS
SELECTCASE ARG
CASE [[레이무]]
	LOCALS = 청소
CASE [[루코토]]
	LOCALS = 가사
CASE [[미마]]
	IF YOUBI_MATCH(DAY, "월수")
		LOCALS = 트레이닝
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASE [[치유리]], [[유메미]]
	LOCALS = 연구
CASE [[스이카]]
	IF YOUBI_MATCH(DAY, "수")
		LOCALS = 트레이닝
	ELSE
		LOCALS = 음주
	ENDIF
CASE [[마리사]]
	IF TIME >= CLOCK_TO_TIME(16, 0)
		LOCALS = 트레이닝
	ELSE
		LOCALS = 발굴 작업
	ENDIF
CASE [[루미아]]
	LOCALS = 식료 확보
CASE [[치르노]]
	SIF CFLAG:ARG:직종 == 41
		LOCALS = 아이스 가게
CASE [[레밀리아]]
	LOCALS = 일요일의 일과
CASE [[앨리스]]
;도울 수 없으면 인형극, 요리라면 가사
	IF TCVAR:ARG:도울수없다
		LOCALS = 인형극
	ELSEIF CFLAG:ARG:직종 == 44
		LOCALS = 가사
	ELSE
		LOCALS = 뒷정리
	ENDIF
;3 자매
CASE [[루나사]], [[메를랑]], [[리리카]]
	LOCALS = 콘서트
CASE [[요우무]]
	LOCALS = 시장
CASE [[란]]
	LOCALS = 결계 관리
CASE [[유카리]]
	IF (DAY:2 == 4 && DAY:3 == 30)
		LOCALS = 결계 관리
	ELSEIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASE [[미스티아]]
	IF BASE:ARG:일량 > 3000
		LOCALS = 교육
	ELSE
		LOCALS = 포장마차 일
	ENDIF
CASE [[아야]]
	LOCALS = 기사 집필
CASE [[사나에]]
	LOCALS = 권유
CASE [[카나코]]
	SIF DAY:2 == 2 && DAY:3 == 5
		LOCALS = 신체측정
	SIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
CASE [[스와코]]
	LOCALS = 요리
CASE [[텐시]]
	LOCALS = 발원
CASE [[이쿠]]
	LOCALS = 회화
CASE [[오린]]
	LOCALS = 원령 관리
CASE [[오쿠]]
	LOCALS = 출력 관리
CASE [[코가사]]
	LOCALS = 보모
CASE [[누에]]
	LOCALS = 요리
CASE [[카센]]
	IF YOUBI_MATCH(DAY, "토")
		LOCALS = 식도락
	ELSE
		LOCALS = 수행
	ENDIF
CASE [[엘렌]]
	IF GROUPMATCH(DAY:3, 15, 30)
		LOCALS = 마법가게 출장
	ELSE
		LOCALS = 채집
	ENDIF
CASE [[우동게]]
	IF YOUBI_MATCH(DAY, "화")
		LOCALS = 약 행상인
	ELSE
		LOCALS = 조제
	ENDIF
CASE [[파츄리]]
	LOCALS = 독서
CASE [[뱌쿠렌]]
	IF YOUBI_MATCH(DAY, "월목")
		LOCALS = 포교
	ELSEIF YOUBI_MATCH(DAY, "토") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASE [[미코]]
	LOCALS = 수행
CASE [[코코로]]
	IF FESTIVAL() == "예대제"
		LOCALS = 노가쿠
	ELSE
		LOCALS = 노가쿠 연습
	ENDIF
CASE [[메이링]]
	LOCALS = 문지기
CASE [[소악마]]
	LOCALS = 요리
CASE [[파르시]]
	LOCALS = 다리 파수꾼
CASE [[카구야]]
	LOCALS = 분재 가꾸기
CASE [[유기]]
	LOCALS = 음주
CASE [[모미지]]
	LOCALS = 경비
CASE [[케이네]]
	IF INRANGE(TIME, CLOCK_TO_TIME(12, 0), CLOCK_TO_TIME(12, 59))
		LOCALS = 점심 시간
	ELSEIF TIME >= CLOCK_TO_TIME(14, 0)
		LOCALS = 뒷정리
	ELSE
		LOCALS = 서당 수업
	ENDIF
CASE [[유카]]
	LOCALS = 꽃의 손질
CASE [[코스즈]]
	IF YOUBI_MATCH(DAY, "수목")
		LOCALS = 가게 보기
	ELSE
		LOCALS = 장서 정리
	ENDIF
CASE [[에이린]]
	SIF !YOUBI_MATCH(DAY, "일")
		LOCALS = 진찰
	SIF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
CASE [[메디슨]]
	LOCALS = 독 채집
CASE [[코마치]]
	LOCALS = 사공
CASE [[히나]]
	LOCALS = 액 모으기
CASE [[아큐]]
	LOCALS = 집필 작업
CASE [[렌코]]
	LOCALS = 리포트
CASE [[메리]]
	LOCALS = 리포트
CASE [[이치린]]
	LOCALS = 청소
CASE [[쇼]]
	IF YOUBI_MATCH(DAY, "돈")
		LOCALS = 설법
	ELSE
		LOCALS = 근행
	ENDIF
CASE [[요시카]]
	LOCALS = 정비(피)
CASE [[청아]]
	LOCALS = 정비
CASE [[후토]]
	LOCALS = 회화
CASE [[벤벤]], [[야츠하시]]
	LOCALS = 콘서트
CASE [[라이코]]
	IF DAY % 28 == 7
		LOCALS = 콘서트
	ELSE
		LOCALS = 회화
	ENDIF
CASE [[유유코]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASE [[오키나]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASE [[신키]]
	IF YOUBI_MATCH(DAY, "일") && INRANGE(DAY:3, 8, 14)
		LOCALS = 정례 여자 모임
	ENDIF
CASEELSE
	LOCALS = 일
ENDSELECT
RETURNF LOCALS

@SPECIALJOB(ARG)
SELECTCASE ARG
	CASE 1
		PRINTFORML 오늘 %CALLNAME:ARG%는 요괴 퇴치 일이 있다고 한다
		INPUT
		PRINTL [0]돕는다
		PRINTL [1]열심히 해
		IF RESULT == 0
			IF ABL:MASTER:전투능력 < 2
				PRINTL 방해가 되니까 오지마~ 라는 소리를 들었다…
			ELSE
				PRINTFORML %CALLNAME:ARG%는 주저하면서도 동행을 허락해 주었다
				PRINTFORML %STR:(CFLAG:ARG:직장 / 10 + 6000)%로 갑니다
			ENDIF
		ELSE
			PRINTFORML %마스터는% %CALLNAME:ARG%에게 응원을 보냈다
		ENDIF
ENDSELECT


code:
@GETMAP2(ARG)
#DIM 기색
기색 = 0
IF TALENT:MASTER:위치짐작
	FOR LOCAL, 1, CHARANUM
		IF CFLAG:LOCAL:현재위치 == (ARG * 10) + (CFLAG:MASTER:데이트중 * 100)
			IF CFLAG:LOCAL:행동 == 5
				기색 = 2
				BREAK
			ENDIF
			기색 = 1
		ENDIF
	NEXT
	IF 기색 == 1
		SETCOLOR 255, 100, 200
	ELSEIF 기색 == 2
		SETCOLOR 255, 100, 0
	ENDIF
ENDIF
SIF CFLAG:MASTER:현재위치 == (ARG * 10) + (CFLAG:MASTER:데이트중 * 100)
	SETCOLOR 0 , 255, 0
IF ARG == 68
	SETCOLOR 75 , 35, 90
	PRINTBUTTON "숲", 680
ELSEIF ARG == 67
	SETCOLOR 100 , 255, 255
	PRINTBUTTON "◇", 670
ELSE
	PRINTBUTTON (TOFULL(TOSTR(ARG))), ARG
ENDIF
RESETCOLOR


code:
;FileName_MOVEMENT.ERB ----------------------------- Rev1. 00
;시간경과 처리
;CALL		USER
;ARG		경과시간전
;RETURN		시간경과량
;COMMENT
;-----------------------------------------------------------
@TIME_PROGRESS(ARG)
#FUNCTION
SIF TIME + DAY * 1440 < ARG
	RETURNF 0
RETURNF TIME + DAY * 1440 - ARG

;FileName_MOVEMENT.ERB ----------------------------- Rev1. 01
;캐릭터 귀가 처리
;CALL		USER
;ARG		0:캐릭터 NO
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@KITAKU(ARG)
IF CFLAG:(ARG):현재위치 == CFLAG:MASTER:현재위치 && !CFLAG:MASTER:수면
	IF 수면시간(ARG)
		PRINTFORMW %CALLNAME:ARG%는 침상에 도착했습니다.
	;데이트중
	ELSEIF CHK_DATENOW(CFLAG:(ARG):데이트중)
		IF TIME < 420 && TIME > 180
			PRINTFORMW 날도 밝아오니 %CALLNAME:ARG%와의 데이트는 여기까지다.
		ELSEIF TIME < 1140 && TIME > 900
			PRINTFORMW 해도 졌으니 %CALLNAME:ARG%와의 데이트는 여기까지다.
		ELSE
			PRINTFORMW 밤도 벌써 깊어졌으니 %CALLNAME:ARG%와의 데이트는 여기까지다.
		ENDIF
		;자택에 있을 때, 초대방에 있을 때는 우후후 하고 있지 않을 때
		IF (CFLAG:(ARG):현재위치 == CFLAG:(ARG):자택위치 || (CFLAG:(ARG):현재위치 == OMANEKIBEYA() && !CFLAG:(ARG):우후후))
			CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 3,0)
		;통상의 데이트중
		ELSE
			CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 2,0)
			SIF (CFLAG:MASTER:현재위치 % 100) % 10 && CHK_DATENOW(CFLAG:MASTER:데이트중) && FLAG:데이트상대 == ARG && CFLAG:MASTER:현재위치 != OMANEKIBEYA()
			CFLAG:MASTER:현재위치 = CFLAG:MASTER:데이트중 * 100
		ENDIF
	;신사내에 있을까 자택에서도 초대방도 아닌 장소
	ELSEIF AT_HOME(ARG) || (CFLAG:(ARG):현재위치 != CFLAG:(ARG):자택위치 && CFLAG:(ARG):현재위치 != OMANEKIBEYA()) && CFLAG:ARG:행동 != 5
		CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 1,0)
		IF TIME < 420 && TIME > 180
			PRINTFORMW 날도 밝아와서 %CALLNAME:ARG%는 돌아갔습니다.
		ELSEIF TIME < 1140 && TIME > 900
			PRINTFORMW 해도 져서 %CALLNAME:ARG%는 돌아갔습니다.
		ELSE
			PRINTFORMW 밤도 벌써 깊어져서 %CALLNAME:ARG%는 돌아갔습니다.
		ENDIF
		CALL SET_TOGETHER(0, ARG, 1)
		SIF (CFLAG:MASTER:현재위치 % 100) % 10 && CHK_DATENOW(CFLAG:MASTER:데이트중) && FLAG:데이트상대 == ARG && CFLAG:MASTER:현재위치 != OMANEKIBEYA()
			CFLAG:MASTER:현재위치 = CFLAG:MASTER:데이트중 * 100
	ENDIF
	IF CFLAG:(ARG):우후후 > 0 || CHK_DATENOW(CFLAG:(ARG):데이트중)
		FOR LOCAL, 1, CHARANUM
			;초대중은 계속
			SIF CFLAG:MASTER:초대 != LOCAL && CFLAG:LOCAL:우후후
				CALL ENDUFUFU(LOCAL)
			;데이트는 사라진다
			CFLAG:LOCAL:데이트중 = MAIN_MAP
			FLAG:데이트상대 = 0
			TFLAG:데이트전호감도 = 0
		NEXT
		;불러 우후후 안은 계속
		SIF !CFLAG:MASTER:초대
			CFLAG:MASTER:우후후 = 0
		CFLAG:MASTER:동행 = 0
	ENDIF
ENDIF
CFLAG:ARG:동행 = 0

IF !TCVAR:ARG:휴식안 && !CFLAG:ARG:초대
	;활동시간외는 자택이 있으면 잘 때까지 자택에 있다
	IF CFLAG:ARG:자택위치 && !IN_HOME(CFLAG:ARG:자택위치) && !수면시간(ARG)
		CFLAG:ARG:현재위치 = CFLAG:ARG:자택위치
	;자택이 없는가 자면(자) 사라진다
	ELSE
		CFLAG:ARG:현재위치 = SUKIMA()
	ENDIF
ENDIF

@침실로부터내쫓아(ARG)
IF ARG > 0 && CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치 && 수면시간(ARG) && (CFLAG:ARG:현재위치 == CFLAG:ARG:초기위치)
	;잠입해 안
	IF CFLAG:ARG:은밀중

	;그 이외
	ELSE
		;연모나 시지중이라면 입실을 허락한다
		IF (TALENT:ARG:연모 || FLAG:시간정지 == 1 || TEQUIP:ARG:밧줄 || TCVAR:ARG:수면제강도 || CFLAG:우후후 == 1 || EXP:ARG:수면간경험 > 300 || CFLAG:ARG:장난) && !CFLAG:ARG:빡침
		;소망 수면욕구 세트
		ELSEIF CFLAG:ARG:초기위치 == 15 && (TALENT:1:연모 || TALENT:57:연모 || TALENT:71:연모) && !CFLAG:ARG:빡침
		;여기는 누군가 혼자라도 연모라면 k
		;침입 성공이라면 입실
		ELSEIF GETBIT(CFLAG:ARG:42, 8) && !CFLAG:ARG:빡침
		;그 이외라면 내쫓아
		ELSE
			CLEARLINE 1
			;SIF !CFLAG:ARG:빡침
				PRINTFORMW 졸린 듯한 %CALLNAME:ARG%에게 쫓겨났다…
			;잠입해 OFF
			CALL SET_SNEAK(0, ARG, 2)
			;장난 OFF
			CALL SET_PRANK(0, ARG, 2)
			FOR LOCAL:1, 0, CHARANUM
				CALL ENDUFUFU(LOCAL:1)
			NEXT
			;침입 성공 플래그 클리어
			CLEARBIT CFLAG:ARG:42, 8
			TFLAG:MASTER의P삽입중 = 0
			;이동 가능한 장소에 이동
			CALL GETOUT(MASTER)
			;원거리이동 플래그 OFF
			TFLAG:원거리이동 = 0
		ENDIF
	ENDIF
ENDIF

@목욕탕으로부터내쫒아(ARG)
SETCOLOR 150,150,250
PRINTL 【목욕탕의 난입자】
RESETCOLOR
IF TALENT:ARG:수치심 < 0
	IF ABL:ARG:친밀 < 5
		PRINTFORML %CALLNAME:ARG%는 태연하게, 이마이리비치기 때문에 나가 있어요라고 말했다
		CFLAG:ARG:호감도 -= (20 - ABL:ARG:친밀 * 2)
		CFLAG:ARG:신뢰도 -= (20 - ABL:ARG:친밀 * 2)
		SOURCE:ARG:반감 += 300
		CFLAG:MASTER:현재위치 = KICKOUT()
	;ELSE
	;	PRINTFORML %CALLNAME:ARG%는 태연하게, 함께 들어가고 싶은 것인지라고 (들)물어 왔다
	ENDIF
ELSE
	PRINTFORML %CALLNAME:ARG%는 자신이 처한 상황을 깨닫자 비명과 함께 목욕탕에서 뛰쳐나갔다
	CFLAG:ARG:호감도 -= (50 - ABL:ARG:친밀 * 2)
	CFLAG:ARG:신뢰도 -= (50 - ABL:ARG:친밀 * 2)
	SOURCE:ARG:반감 += 1000
	BASE:ARG:분노 += (1500 - ABL:ARG:친밀 * 100)
	CFLAG:ARG:현재위치 = KICKOUT()
	;캐릭터를 움직였으므로 TARGET재설정
ENDIF
CFLAG:ARG:호감도 = MAX(CFLAG:ARG:호감도, 0)
CFLAG:ARG:신뢰도 = MAX(CFLAG:ARG:신뢰도, 0)
CALL TARGETSET_CHACK
CFLAG:ARG:동실 = 0
RETURN 1

@초대방처리(ARG)
SIF FLAG:시간정지 || !CFLAG:ARG:초대
	RETURN

;초대방에서 나오면(자) 일상에 돌아간다
;묵기 전인가 후인가는 연속숙박금지 플래그를 참조하고 있습니다
IF CFLAG:MASTER:현재위치 != OMANEKIBEYA()
	CALL 초대방에서나온다(ARG)

;다음날 일하러 가는 경우
ELSEIF 업무중체크(ARG) && TCVAR:ARG:연속숙박금지 && CFLAG:ARG:우후후 != 1
	CFLAG:MASTER:현재위치 = CFLAG:ARG:자택위치
	IF CFLAG:ARG:우후후
		PRINTFORMW %CALLNAME:ARG%는 지금부터 일이 있는 것 같다…
		CALL ENDUFUFU(LOCAL)
		PRINTFORMW %CALLNAME:ARG%는 아쉬움 아까운 듯이 하면서도 밖에 나왔다
	ELSE
		PRINTFORMW %CALLNAME:ARG%는 일이 있는지 밖으로 나갔다
	ENDIF
	CALL 초대방에서나온다(ARG)

;데이트중
ELSEIF CHK_DATENOW(CFLAG:ARG:데이트중)
	IF CFLAG:ARG:신사거주
		;더부살이캐릭터는 수면시간에 되면(자) 데이트 종료
		IF 수면시간(ARG)
			CFLAG:ARG:데이트중 = MAIN_MAP
			FLAG:데이트상대 = 0
		ENDIF
	ELSE
		;데이트중에 돌아가는 시간이 오면(자) 메시지＆데이트만 지운다
		IF !VISIT(ARG)
			CALL KITAKU(ARG)
		ENDIF
	ENDIF
ENDIF

@초대방에서나온다(ARG)
;만남 플래그를 자택위치로 설정(연동하고 있다고(면) 다른 캐릭터가 달려 들어 오는 것은 사양)
CFLAG:ARG:만난위치 = CFLAG:ARG:자택위치
;초기위치를 바탕으로 되돌린다(참배길저편이나 0도 있지만 99에서도 k)
IF CFLAG:ARG:신사거주
	CFLAG:ARG:초기위치 = CFLAG:ARG:신사거주
ELSE
	CFLAG:ARG:초기위치 = SUKIMA()
ENDIF
;활동시간이라면 그대로 데이트. 더부살이캐릭터는 일어나고 있으면 데이트
;의 예정이었지만 밸런스 브레이커생각이 드는＆아침 돌아오는 길은 한사람이 분위기 나오므로 더부살이캐릭터만
;활동전도 배치하게 되었으므로 기상시간이라면 밖으로 나오도록(듯이)
IF CFLAG:ARG:신사거주
	CFLAG:ARG:현재위치 = 97 + MAIN_MAP * 100
	CFLAG:ARG:데이트중 = MAIN_MAP
	FLAG:데이트상대 = 0
	TFLAG:데이트전호감도 = 0
ELSE
	IF !수면시간(ARG) && !CFLAG:ARG:수면
		;자택위치에 이동
		CFLAG:ARG:현재위치 = CFLAG:ARG:만난위치
		;묵기 전or더부살이캐릭터라면 데이트 계속, 워프 이동하고 있으면(자) 안 돼
		IF !TCVAR:ARG:연속숙박금지 && CHK_DATENOW(CFLAG:ARG:데이트중) && !AT_HOME(MASTER)
			CFLAG:ARG:데이트중 = (CFLAG:ARG:자택위치) / 100
			CFLAG:ARG:동행 = 60
		ENDIF
	;자고 있는 경우는 안보이는 곳에 이동
	;더부살이캐릭터는 식별하기 위해서 현재위치 97을 사용하고 있기 때문에 요주의(MOVEMENT2의 SLEEP에 계속된다)
	ELSE
		CFLAG:ARG:현재위치 = SUKIMA()
		CFLAG:ARG:데이트중 = MAIN_MAP
		FLAG:데이트상대 = 0
		TFLAG:데이트전호감도 = 0
	ENDIF
ENDIF

;초대 플래그를 지워 일상에 되돌린다
CFLAG:ARG:초대 = 0
CFLAG:MASTER:초대 = 0
LOCK:(OMANEKIBEYA()) = 0


code:
;----------------------------
;여기서 1을 돌려주는 캐릭터는 MOVEMENT 관계의 처리를 일절 실시하지 않는다
;----------------------------
@MOVEMENT스킵판정(ARG)
#FUNCTION
SIF TALENT:ARG:망상의산물
	RETURNF 1
SIF FLAG:모리야복권데이트상대 == ARG && GET_MAPID(CFLAG:MASTER:현재위치) != MAIN_MAP
	RETURNF 1
SIF CFLAG:ARG:출금
	RETURNF 1
RETURNF 0

;----------------------------
;MASTER 포함한 모든 캐릭터에게 적용
;시간경과에 의한 자연 변동, 회화 누적도, 목욕탕의 처리
;----------------------------
@MOVEMENT공통처리(ARG)
;BASE의 자연 변동
CALL BASE자연변동(ARG)

;회화 누적치(100이상 회화하면(자) 시간경과 100분 경과까지 회화불능)
SIF TCVAR:ARG:301 > 100
	TCVAR:ARG:302 = 1
TCVAR:ARG:301 = MAX(TCVAR:ARG:301 - TIME_PROGRESS(TIME:1) , 0)
;시각 경과로 누적치가 0이 되면 회화 가능
SIF TCVAR:ARG:301 == 0
	TCVAR:ARG:302 = 0

;몸의 청결도
LOCAL = CFLAG:ARG:목욕탕

;DEBUGPRINTFORML 【MOVEMENT】BATH_NO:{ARG} , {LOCAL} , \@ CFLAG:ARG:현재위치 == BATHROOM() ?  in_BATH # {CFLAG:ARG:현재위치} \@

;IF BATHCHECK(CFLAG:ARG:현재위치) && GET_MAPID(CFLAG:ARG:현재위치) == MAIN_MAP
IF BATHROOM(CFLAG:ARG:현재위치) && GET_MAPID(CFLAG:ARG:현재위치) == MAIN_MAP
	;악취내성이 낮을 정도(수록) 오래도록 목욕을 즐김(목욕탕 플래그가 내리기 어렵다), 하루 분의 더러움은 대체로 30분에 세정
	CFLAG:ARG:목욕탕 = MAX(CFLAG:ARG:목욕탕 - TIME_PROGRESS(TIME:1) * (50 + TALENT:ARG:악취내성 * 15), 0)
ELSE
	;이틀분약까지 축적
	CFLAG:ARG:목욕탕 = MIN(CFLAG:ARG:목욕탕 + TIME_PROGRESS(TIME:1), 2500)
ENDIF

;안아다하고금지시간의 감소
IF TCVAR:ARG:안아다하고금지시간 > 0
	TCVAR:ARG:안아다하고금지시간 = MAX(TCVAR:ARG:안아다하고금지시간 - TIME_PROGRESS(TIME:1), 0)
ENDIF

;----------------------------
;부적절한 위치에 있는 캐릭터를 다른 장소에 이동시킨다
;----------------------------
@강제이동(ARG)
;시간정지중은 처리하지 않는다
IF !FLAG:70
	;벌레 바구니에 들어가지 않는 캐릭터를 벌레 바구니로부터 내쫓는다
	IF CFLAG:ARG:현재위치 == 54 && TALENT:ARG:체형 > -5
		CFLAG:ARG:현재위치 = 9
	ENDIF

	;거점의 밖으로 쇠약중의 캐릭터가 있는 경우 스키마에 보낸다
	IF CFLAG:ARG:쇠약
		SIF GET_MAPID(CFLAG:ARG:현재위치) != MAIN_MAP
			CFLAG:ARG:현재위치 = SUKIMA()
	ENDIF
ENDIF

;----------------------------
;캐릭터가 수면시간대인가 어떤가를 취득 ※낮잠 등도 포함한다
;@수면시간(ARG)과는 거동이 다르므로 주의
;----------------------------
@캐릭터별취침판정(ARG)
TRYCCALLFORM CHARAMOVE_DATA_{ARG}(3, ARG)
;대상의 캐릭터데이터참조 할 수 있고 없으면 Default 처리
CATCH
	;AM1~AM7까지 수면
	RETURN TIME > 60 && TIME < 420
ENDCATCH
RETURN RESULT

;----------------------------
;동행중의 캐릭터를 당신에 맞추어 이동시킨다
;----------------------------
@동행처리(ARG)
;※만취중은 가능
SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || CFLAG:ARG:초대 || CFLAG:ARG:수면
	RETURN

;업무중은 기본적으로 무리, 다만 연회에서 만취하고 있는 경우는 예외
SIF CFLAG:ARG:행동 == 5 && CFLAG:ARG:직종 != 51
	RETURN

;동행 플래그는 1시간 지속
SIF !CHK_DATENOW(CFLAG:ARG:데이트중) && CFLAG:ARG:동행
	CFLAG:ARG:동행 = MAX(CFLAG:ARG:동행 - TIME_PROGRESS(TIME:1), 0)
SIF CFLAG:ARG:동행 || CHK_DATENOW(CFLAG:ARG:데이트중)
	CFLAG:ARG:현재위치 = CFLAG:MASTER:현재위치

;@캐릭터 이동 사전 처리(ARG)
;;쇠약중
;IF CFLAG:ARG:쇠약 || TCVAR:ARG:만취 || CFLAG:ARG:초대
;	RETURN
;ENDIF
;
;;초대중(수면등을 독자 처리)
;IF
;	CALL MOVEMENT_OMANEKI(ARG)
;	RETURN
;ENDIF
;
;;낮잠을 제외한 수면시간중
;IF !CFLAG:ARG:수면 && 수면시간(ARG)
;	;더부살이캐릭터의 집에 묵었을 때 는 돌아가지 않게 97 + MAIN_MAP * 100에 피난
;	IF CFLAG:(ARG):현재위치 != 97 + MAIN_MAP * 100
;		;데이트중이라면 강제적으로 중지해 귀가
;		CALL 수면시데이트중단(ARG)
;	ENDIF
;ENDIF

;------------------------------------------
;시간에 맞추어 캐릭터를 일으키는/재운다
;------------------------------------------
@기상취침처리(ARG)
SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || TCVAR:ARG:만취
	RETURN

CALL 캐릭터별취침판정(ARG)
;수면시간대의 경우
IF RESULT
	;일어나고 있으면(자) 재운다
	IF !CFLAG:ARG:수면 && !CFLAG:ARG:우후후
		;데이트중이라면 낮잠은 무시한다
		IF !(CHK_DATENOW(CFLAG:ARG:데이트중) && !수면시간(ARG))
			;더부살이캐릭터의 집에 묵었을 때 는 돌아가지 않게 97 + MAIN_MAP * 100에 피난
			IF CFLAG:ARG:현재위치 != 97 + MAIN_MAP * 100
				;데이트중에 취침시간이 되면 강제적으로 중지해 귀가
				CALL 수면시데이트중단(ARG)
			ENDIF
			IF !CFLAG:ARG:초대 && !(CFLAG:ARG:신사거주 && CFLAG:ARG:현재위치 == CFLAG:ARG:초기위치)
				SIF CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치 && !CFLAG:MASTER:수면
					PRINTFORMW %CALLNAME:ARG%는 작별을 고하면(자), 졸린 듯이 떠나 갔습니다
			ENDIF
		ENDIF
	ENDIF
	;주인공이 기상중이라면 메시지 표시
	CALL CHARA_SLEEP, ARG, !CFLAG:MASTER:수면
;수면시간대부터 빗나가고 있는 경우
ELSE
	;자고 있으면(자) 일으킨다
	IF CFLAG:ARG:수면
		CALL CHARA_AWAKE, ARG
		;더부살이캐릭터가 자신의 집에서 일어났을 경우, 참배길저편에 이동시킨다
		SIF CFLAG:ARG:신사거주 && CFLAG:ARG:현재위치 == 97 + MAIN_MAP * 100
			CFLAG:ARG:현재위치 = MAXROOM
	ENDIF
ENDIF

;------------------------------------------
;방문 플래그가 서 있는 캐릭터를 당신의 거점 물건에 이동시킨다
;캐릭터를 자신의 집에 돌려주는/재택안의 처리를 실시한다
;------------------------------------------
@방문귀가처리(ARG)
SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || TCVAR:ARG:만취 || CFLAG:ARG:초대 || CFLAG:ARG:우후후
	RETURN

;더부살이캐릭터·연회에 참가하는 캐릭터는 내방·귀가의 처리를 실시하지 않는다
IF !CFLAG:ARG:신사거주 && !CFLAG:ARG:연회참가
	;활동시 마우치
	IF VISIT(ARG)
		IF CFLAG:ARG:거점내방
			;내방플래그가 있다면 주인공의 거점에 출현시킨다(업무중은 무리)
			IF !AT_HOME(ARG) && !업무중체크(ARG)
				CALL 주인공물건으로향한다(ARG)
			ENDIF
		ENDIF
	;활동시간외
	ELSE
		;귀가·재택 처리
		CALL KITAKU(ARG)
	ENDIF
ENDIF

;------------------------------------------
;일이 없는 캐릭터를 외출시킨다
;------------------------------------------
@휴일이동처리(ARG)
SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || TCVAR:ARG:만취 || CFLAG:ARG:수면 || CFLAG:ARG:초대 || CFLAG:ARG:우후후
	RETURN

;신사에 갈 예정의 캐릭터, 당일 일이 있는 캐릭터, 신사에 살고 있는 캐릭터는 무시
SIF CFLAG:ARG:거점내방 || 일일체크(ARG) || CFLAG:ARG:신사거주
	RETURN

;방문시간에 아직 이동하고 있지 않는 경우
IF VISIT(ARG) && !CFLAG:ARG:휴일이동완료
	CFLAG:ARG:휴일이동완료 = 1
	LOCAL = 0
	IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
		;묵으면(자) 일어나는 현상(연동 캐릭터를 고려하면(자) 귀찮은 일로)
		LOCAL = 1
	ENDIF
	;전원 공통의 처리
	CFLAG:ARG:현재위치 = CFLAG:ARG:만난위치 ?  CFLAG:ARG:만난위치 # SUKIMA()
	CFLAG:ARG:동행 = 0
	;연동이나 예외가 있는 캐릭터용의 처리
	TRYCALLFORM CHARAMOVE_DATA_{ARG}(1, ARG)
	IF CFLAG:ARG:현재위치 != CFLAG:MASTER:현재위치 && LOCAL
		PRINTFORMW %CALLNAME:ARG%는 어딘가에 나간 것 같다
	ENDIF
ENDIF

;------------------------------------------
;업무중이라면 1을 돌려준다
;@WORKING와는 거동이 다르므로 주의
;------------------------------------------
@업무중체크(ARG)
#FUNCTION
SIF TCVAR:ARG:일개시 >= 0 && BETWEENTIME(TCVAR:ARG:일개시, TCVAR:ARG:일종료) && BASE:ARG:일량 > 0
	RETURNF 1
RETURNF 0

;------------------------------------------
;당일에 일의 예정이 있다면 1을 돌려준다
;@WORKING와는 거동이 다르므로 주의
;------------------------------------------
@일일체크(ARG)
#FUNCTION
SIF TCVAR:ARG:일개시 >= 0
	RETURNF 1
RETURNF 0

@주인공물건으로향한다(ARG)
;묵으면(자) 일어나는 현상
IF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치 && !CHK_DATENOW(CFLAG:ARG:데이트중)
	IF CFLAG:태도 && !FLAG:데이트상대
		PRINTFORMW %CALLNAME:ARG%는 %GET_MAPNAME(MAIN_MAP)%에 가고 싶은 것 같다
		PRINTL [0] - 함께 간다　[1] - 전송한다
		INPUT
		IF !RESULT
			PRINTFORMW %CALLNAME:ARG%를 데려 돌아가기로 했다
			CALL 귀가의시간경과
			CALL SET_DATE(99, ARG)
			CFLAG:ARG:현재위치 = ENTRANCE
			CFLAG:MASTER:현재위치 = ENTRANCE
			CFLAG:ARG:데이트중 = MAIN_MAP
			CFLAG:MASTER:데이트중 = MAIN_MAP
			CFLAG:ARG:동행 = 60
			CFLAG:MASTER:동행 = 60
			IF TARGET == 93 && !GETBIT (FLAG:풀장, 0)
				TIME += 30
				BASE:MASTER:체력 = MAX(BASE:MASTER:체력 - 500,500)
			ENDIF
		ELSE
			PRINTFORMW %CALLNAME:ARG%는 %GET_MAPNAME(MAIN_MAP)%에 나갔다
			IF CFLAG:ARG:(450 + MAIN_MAP)
				CFLAG:ARG:현재위치 = CFLAG:ARG:(450 + MAIN_MAP)
			ELSE
				CFLAG:ARG:현재위치 = MAXROOM
			ENDIF
		ENDIF
	ELSE
		PRINTFORMW %CALLNAME:ARG%는 %GET_MAPNAME(MAIN_MAP)%에 나간 것 같다
		IF CFLAG:ARG:(450 + MAIN_MAP)
			CFLAG:ARG:현재위치 = CFLAG:ARG:(450 + MAIN_MAP)
		ELSE
			CFLAG:ARG:현재위치 = MAXROOM
		ENDIF
	ENDIF
ELSE
	IF CFLAG:ARG:(450 + MAIN_MAP)
		CFLAG:ARG:현재위치 = CFLAG:ARG:(450 + MAIN_MAP)
	ELSE
		CFLAG:ARG:현재위치 = MAXROOM
	ENDIF
	SIF GETBIT(TALENT:MASTER:위치짐작, 1) && AT_HOME(MASTER) == 1 && !CFLAG:MASTER:수면 && !CFLAG:MASTER:우후후
		PRINTFORMW 【%CALLNAME:ARG%가 방문해 온 것 같다】
ENDIF
CALL EX_COSTUME(ARG, "집 데이트")

;------------------------------------------
;일이나 연회의 개시/경과/종료나 메시지의 표시를 실시한다
;------------------------------------------
@일연회처리(ARG)
SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || CFLAG:ARG:초대 || CFLAG:ARG:수면
	RETURN

IF TCVAR:ARG:만취
	;연회에서 만취했을 경우는 메시지만 표시해 돌아간다
	IF CFLAG:ARG:직종 == 51 && CFLAG:ARG:현재위치 == TFLAG:연회장 && CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치
		CALL 연회묘사(ARG)
	ENDIF
	RETURN
ENDIF

IF !CFLAG:ARG:우후후 || WORKING(ARG) || (CFLAG:ARG:우후후 == 2 && CFLAG:ARG:연회참가 == 2)
	;연회 시간대 호출
	IF CFLAG:ARG:연회참가 == 1 || CFLAG:ARG:연회참가 == 2
		CALL ENKAI_WORK(ARG)

	;연회회장에 들르거나 가까워진 캐릭터는 일정 확률로 연회에 참가한다
	ELSEIF FLAG:참가인수 >= 2 && (CFLAG:ARG:현재위치 == TFLAG:연회장 || CAN_MOVE(CFLAG:ARG:현재위치, TFLAG:연회장) >= 2) && !CFLAG:ARG:우후후
		IF CFLAG:ARG:연회참가 == 0 && RAND:5 < 4 && FLAG:30 >= 98 && TIME_PROGRESS(TIME:1)
			IF CFLAG:MASTER:현재위치 == TFLAG:연회장
				IF FLAG:참가인수 >= 8
					PRINTFORMW 즐거운 모습에, %CALLNAME:ARG%가 연회에 참가했다!
				ELSE
					PRINTFORMW 상태를 보고 있던%CALLNAME:ARG%는, 그대로 연회에 참가했다!
				ENDIF
			ENDIF
			CFLAG:ARG:연회참가 = 1
			CALL ENKAI_START(ARG)
		ENDIF
	ENDIF

	;데이트상대가 연회나 그 준비에 참가했을 경우, 데이트는 강제적으로 중지
	IF GROUPMATCH(CFLAG:ARG:직종, 48, 49, 50, 51) && CHK_DATENOW(CFLAG:ARG:데이트중)
		PRINTFORMW %CALLNAME:ARG%과의 데이트는 일단 연회의 끝으로 하기로 했다
		CFLAG:ARG:데이트중 = MAIN_MAP
		FLAG:데이트상대 = 0
		TFLAG:데이트전호감도 = 0
		CFLAG:ARG:동행 = 0
	ENDIF

	;연회의정리 예정이 들어가 있는 캐릭터는 시간이 나는 대로 정리 개시
	IF CFLAG:ARG:정리일량
		IF CFLAG:ARG:행동 == 0 && FLAG:참가인수 == 0
			CALL ENKAI_KATAZUKE(ARG)
			CFLAG:ARG:정리일량 = 0
			CFLAG:ARG:정리장소 = 0
		ENDIF
	ENDIF

	;일시간중, 연회참가중, 연회준비중이라면 CHARA_JOBSTR(ARG)
	IF WORKING(ARG) || (GROUPMATCH(CFLAG:ARG:직종, 48, 49, 50) && BASE:ARG:일량 > 0) || GROUPMATCH(CFLAG:ARG:직종, 51)
		CALL CHARA_JOBSTR(ARG)
	;일종료하고 있으면 종료 처리
	ELSEIF CFLAG:ARG:행동 == 5
		CALL CHARA_JOBEND(ARG)
	ENDIF
ENDIF

@수면시데이트중단(ARG)
IF CHK_DATENOW(CFLAG:ARG:데이트중)
	IF CFLAG:ARG:쇠약
		PRINTFORMW %CALLNAME:ARG%벗기는 충분하고로서 졸린 것 같다…
	ELSE
		PRINTFORMW %CALLNAME:ARG%는 이제(벌써) 돌아가 자는 시간입니다…
	ENDIF
	IF GET_MAPID(CFLAG:ARG:자택위치) == MAIN_MAP
		PRINTFORMW 함께 %GET_MAPNAME(MAIN_MAP)%로 돌아가기로 했습니다
		CALL SET_DATE(99, ARG)
	ELSE
		CALL ASK_YN("집까지 보내는","그 자리에서 헤어진다")
		IF RESULT == 0
			PRINTFORMW %CALLNAME:ARG%를 집까지 데려다 주기로 했습니다
			CALL SET_DATE(99, ARG)
		ELSE
			PRINTFORMW %CALLNAME:ARG%과의 데이트는 그 자리에서 연회의 끝이 되었습니다
			FLAG:데이트상대 = 0
			TFLAG:데이트전호감도 = 0
			CFLAG:ARG:데이트중 = MAIN_MAP
		ENDIF
		CFLAG:ARG:현재위치 = CFLAG:ARG:자택위치
	ENDIF
	CFLAG:ARG:동행 = 0
ENDIF


code:
;FileName_MOVEMENT.ERB ----------------------------- Rev1. 01
;캐릭터이동처리
;CALL		USER
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_MOVEMENT()
LOCAL:99 = LINECOUNT
PRINTL 　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　(소녀이동중…)

;시간경과에 의한 BASE등의 자연 변동, 회화 누적도, 목욕탕의 처리
CALL MOVEMENT공통처리(MASTER)

;각 캐릭터마다의 그 날의 일정보를 갱신
FOR LOCAL, 1, CHARANUM
	;출금캐릭터를 스키마에 날린다
	IF CFLAG:LOCAL:출금
		CFLAG:LOCAL:현재위치 = SUKIMA()
	ELSE
		CALL 일내용설정(LOCAL)
	ENDIF
NEXT

;행동순서를 셔플
;CALL FISHER_YATES_SHAFFLE(CHARANUM)
;MASTER를 0번에 이동
;SWAP SHAFFLE_ARRAY:0 , SHAFFLE_ARRAY:(FINDELEMENT(SHAFFLE_ARRAY , 0))

FOR LOCAL, 1, CHARANUM
	;LOCAL = SHAFFLE_ARRAY:(LOCAL:100)

	SIF MOVEMENT스킵판정(LOCAL)
		CONTINUE

	CALL 침실로부터내쫓아(LOCAL)

	;시간경과에 의한 BASE등의 자연 변동, 회화 누적도, 목욕탕의 처리
	CALL MOVEMENT공통처리(LOCAL)

	;부적절한 위치에 있는 캐릭터를 다른 장소에 이동시킨다
	CALL 강제이동(LOCAL)
NEXT

CALL 연회참가인원수재계산

FOR LOCAL, 1, CHARANUM
	;LOCAL = SHAFFLE_ARRAY:(LOCAL:100)
	SIF MOVEMENT스킵판정(LOCAL)
		CONTINUE

	;시간에 맞추어 캐릭터를 일으키는/재운다
	CALL 기상취침처리(LOCAL)

	;방문 플래그가 서 있는 캐릭터를 당신의 거점 물건에 이동시킨다
	;캐릭터를 자신의 집에 돌려주는/재택안의 처리를 실시한다
	CALL 방문귀가처리(LOCAL)

	;일이 없는 캐릭터를 외출시킨다
	CALL 휴일이동처리(LOCAL)

	;초대방에 있는 캐릭터의 처리
	CALL 초대방처리(LOCAL)

	;동행중의 캐릭터를 당신의 이동에 맞추어 이동시킨다
	CALL 동행처리(LOCAL)

	;일이나 연회의 개시/경과/종료나 메시지의 표시를 실시한다
	CALL 일연회처리(LOCAL)

	;당신의 거점 물건에 있는 캐릭터를 이동시킨다
	CALL 캐릭터이동처리(LOCAL)

	;만취가 되는/만취로부터의 부활
	CALL CHARA_ACTION_DRUNK(LOCAL)

	SIF CFLAG:LOCAL:현재위치 == 0
		PRINTFORMW ### MOVEMENT LOCATION ERROR %CALLNAME:LOCAL%의 현재 위치가 이상합니다 ### CHARA_NO:{LOCAL}
NEXT

CALL 연회참가인원수재계산

SIF LINECOUNT == LOCAL:99 + 1
	CLEARLINE 1


code:
@캐릭터이동처리(ARG)
#DIM 머물어비율
#DIM 이동처
#DIM 이동결정
#DIM 무차별이동
#DIM 강제이동
#DIM 원룸인원수카운트
VARSET LOCAL
;당신의 거점 물건에 있는 캐릭터만이 대상
SIF !AT_HOME(ARG)
	GOTO FINISH

SIF FLAG:시간정지 || CFLAG:ARG:쇠약 || CFLAG:ARG:초대 || CFLAG:ARG:수면
	GOTO FINISH

;일, 데일리, 동침, 우후후, 동행중은 이동 처리 리셋
SIF CFLAG:ARG:행동 == 5 || CFLAG:ARG:데일리 || CFLAG:ARG:동침중 || CFLAG:ARG:우후후 || CFLAG:ARG:동행
	GOTO FINISH

;루프 앞에 처리
CALLFORM CHARAMOVE_DATA_{ARG}(4, CFLAG:ARG:현재위치)
머물어비율 = RESULT
;머물기 어려운 장소
SIF CFLAG:ARG:현재위치 == GET_ENTRANCE(MAIN_MAP) || ROOMDATA:(CFLAG:ARG:현재위치 % 100) & 장소_머물지않는다
	머물어비율 += -5
;당신과 동실이라면 태도로 머문다
SIF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
	머물어비율 += CFLAG:ARG:태도 * 2
SIF CFLAG:ARG:현재위치 == MAXROOM
	머물어비율 = -5

무차별이동 = 0
강제이동 = 0
IF BATHROOM(CFLAG:ARG:현재위치)
	;목욕탕
	IF CFLAG:ARG:목욕탕
		GOTO FINISH
	;오른다
	ELSE
		무차별이동 = 1
	ENDIF
ENDIF
;화장실에 있어 10분 이상 경과하고 있다
SIF ROOMDATA:(CFLAG:ARG:현재위치 % 100) & 장소_화장실 && TIME_PROGRESS(TIME:1) >= 10
	무차별이동 = 1
;기후 대미지가 아프다
SIF 기후에의한영향(ARG, CFLAG:ARG:현재위치) <= -3
	무차별이동 = 1
;현재위치가 본래 들어가지 않는 장소(게다가 당신이 없다)
CALL 캐릭터이동율(ARG, CFLAG:ARG:현재위치, 머물어비율)
SIF RESULT <= 0 && CFLAG:ARG:현재위치 != CFLAG:MASTER:현재위치
	무차별이동 = 1
;가능한한움직이지않는다
SIF TCVAR:ARG:가능한한움직이지않는다 && !무차별이동
	GOTO FINISH

;차례 셔플
CALL FISHER_YATES_SHAFFLE(MAXROOM - MINROOM())
;셔플 했으므로 이동할 수 있을 것 같은 곳부터 순서대로 이동해 나간다
;PRINTFORML %CALLNAME:ARG%＠%NAME_FROM_PLACE(CFLAG:ARG:현재위치)%
이동결정 = 0
$KYOUSEI

FOR LOCAL, 0, MAXROOM - MINROOM()
	이동처 = SHAFFLE_ARRAY:LOCAL + MAIN_MAP * 100 + 1
;	PRINTFORML 이동처：%NAME_FROM_PLACE(이동처)%({이동처})
	;현재위치
	SIF 이동처 == CFLAG:ARG:현재위치
		CONTINUE
	;이동할 수 없다
	SIF !(CAN_MOVE(CFLAG:ARG:현재위치, 이동처) & 1)
		CONTINUE
	;이동할 수 없는 2, 원룸 제한등 , 이동에 제한이 있는 장소
	SIF !MAP_CAN_MOVE(이동처, ARG)
		CONTINUE
	;밖으로 나올 수  없다
	SIF 기후에의한영향(ARG, 이동처) <= -3 && CFLAG:ARG:현재위치 != MAXROOM && 기후에의한영향(ARG, CFLAG:ARG:현재위치) >= -2
		CONTINUE
	;이동처가 당신 방이며, 그 캐릭터의 방이 아니고, 거기서 당신이 우후후중의 경우는 들어가 이것 없다
	SIF 이동처 == CFLAG:MASTER:초기위치 && 이동처 != CFLAG:ARG:초기위치 && 이동처 == CFLAG:MASTER:현재위치 && CFLAG:MASTER:우후후
		CONTINUE
	;결계발동중
	SIF TEQUIP:MASTER:결계발동 && 이동처 == CFLAG:MASTER:현재위치
		CONTINUE
	CALL 캐릭터이동율(ARG, 이동처, 머물어비율)

	;이동 판정, 강제이동이라면 즉이동
	IF RESULT * TIME_PROGRESS(TIME:1) > RAND:1000
;		PRINTFORMW ＞이동!
		이동결정 = 이동처
		BREAK
	;무차별이동시는 이동율이 있으면 즉이동, 강제이동이 발동하고 있다면 어디라도 이동
	ELSEIF (RESULT && 무차별이동) || 강제이동
;		PRINTFORMW ＞이동!
		이동결정 = 이동처
		BREAK
	;이동율0%가 아니면 종료
	ELSEIF RESULT
;		PRINTFORMW ＞루프
		BREAK
	ENDIF
NEXT

;무차별이동시에 전방위 이동율 0이라면 강제이동
IF 무차별이동 && !이동결정 && !강제이동
	강제이동 = 1
	GOTO KYOUSEI
ENDIF

;이동하지 않았으면 종료
IF !이동결정
	$FINISH
	TCVAR:ARG:가능한한움직이지않는다 = 0
	RETURN
ENDIF

IF (CAN_MOVE(CFLAG:MASTER:현재위치, CFLAG:ARG:현재위치) & 2 || CFLAG:ARG:동실) && !CFLAG:MASTER:수면
	IF CFLAG:ARG:현재위치 != 이동처 && AT_HOME(MASTER) == 1 && INRANGE(이동처, MINROOM(), MAXROOM)
		IF CFLAG:ARG:현재위치 == MAXROOM
			PRINTFORMW %CALLNAME:ARG%가 【%NAME_FROM_PLACE(이동처)%】에 왔다
		ELSE
			PRINTFORM %CALLNAME:ARG%는 【
			PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:현재위치)
			PRINT 】에서 【
			PRINTFORMS NAME_FROM_PLACE(이동처)
			PRINTW 】로 이동했다
			LOCAL:4 = 1
		ENDIF
	ENDIF
ENDIF

IF ROOMDATA:(CFLAG:ARG:현재위치 % 100) & 장소_원룸
	IF CFLAG:ARG:현재위치 == CFLAG:ARG:초기위치
		원룸인원수카운트 = 0
		LOCAL:2 = FINDCHARA(CFLAG:현재위치, CFLAG:ARG:현재위치, 1)
		WHILE INRANGE(LOCAL:2, 1, CHARANUM - 1)
			IF LOCAL:2 != ARG
				CFLAG:(LOCAL:2):현재위치 = 이동처
				원룸인원수카운트 ++
			ENDIF
			SIF LOCAL:2 == CHARANUM - 1
				BREAK
			LOCAL:2 = FINDCHARA(CFLAG:현재위치, CFLAG:ARG:현재위치, LOCAL:2 + 1)
		WEND
		IF LOCAL:4
			IF !TALENT:ARG:연모 && CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
				PRINTFORM %CALLNAME:MASTER%\@ 원룸인원수카운트 ?  들 #  \@도 %CALLNAME:ARG%에 촉구받아 【
				PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:현재위치)
				PRINT 】에서 【
				PRINTFORMS NAME_FROM_PLACE(이동처)
				PRINTW 】로 이동했다
				CFLAG:MASTER:현재위치 = 이동처
			ELSEIF 원룸인원수카운트
				PRINTFORM %CALLNAME:ARG%에 촉구받아 %CALLNAME:MASTER% 외에는 【
				PRINTFORMS NAME_FROM_PLACE(CFLAG:MASTER:현재위치)
				PRINT 】에서 【
				PRINTFORMS NAME_FROM_PLACE(이동처)
				PRINTW 】로 이동했다
			ELSE
				PRINTFORMW %CALLNAME:ARG%는 %CALLNAME:MASTER%에게 빈집을 지켜달라 부탁하고 이동했다
			ENDIF
		ENDIF
	ELSEIF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치 && IN_ROOM_NUMBER(CFLAG:ARG:현재위치) == 2
		PRINTFORM %CALLNAME:MASTER%도 %CALLNAME:ARG%에게 촉구받아 【
		PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:현재위치)
		PRINT 】에서 【
		PRINTFORMS NAME_FROM_PLACE(이동처)
		PRINTW 】로 이동했다
		CFLAG:MASTER:현재위치 = 이동처
	ENDIF
ENDIF

;이동 처리
CFLAG:ARG:현재위치 = 이동처
TCVAR:ARG:가능한한움직이지않는다 = 1

;--------------------------------------------------------
;캐릭터(ARG)가 지점(ARG:1)에 이동하는 확률/분
;ARG:2=머물어비율(마이나스 보정)
;실수치는  10배가 된 것
;식 나카노세키수로 하고 싶었지만…
;--------------------------------------------------------
@캐릭터이동율(ARG, ARG:1, ARG:2)
#DIM 이동율
#DIM 이동처
#DIM 욕실들어가고싶다
이동처 = ARG:1
IF TALENT:ARG:한기선호
	욕실들어가고싶다 = 1500
;CHARAMOVE에 욕실이 싫으면 기술이 있던 캐릭터(등, 별, 정사)
ELSEIF GROUPMATCH(ARG, 24, 87, 97)
	욕실들어가고싶다 = 1500
ELSEIF TALENT:ARG:악취내성 == -2
	욕실들어가고싶다 = 600
ELSEIF TALENT:ARG:악취내성 == -1
	욕실들어가고싶다 = 800
ELSEIF TALENT:ARG:악취내성 == 0
	욕실들어가고싶다 = 1000
ELSEIF TALENT:ARG:악취내성 == 1
	욕실들어가고싶다 = 1500
ELSEIF TALENT:ARG:악취내성 == 2
	욕실들어가고싶다 = 2000
ENDIF
;기본 이동율, 1.5% / 분 = 45.0% / 30분
이동율 = 15 + CFLAG:ARG:이동율보정
;당신이 보이고 있으면(자) 태도로 업
SIF CAN_MOVE(CFLAG:ARG:현재위치, 이동처) == 3
	이동율 += CFLAG:ARG:태도 * 2
;청소부는 청소중 더러움에 영향을 받는다
SIF TALENT:ARG:청소부 && CFLAG:ARG:신사거주 && BETWEENTIME(720,1080)
	이동율 += YOGORE:이동처 / 300
;MOVEMENT_PRESET의 설정 인계(추가의 보정)
CALLFORM CHARAMOVE_DATA_{ARG}(4, 이동처)
이동율 = 이동율 + RESULT

;목욕을 하고 싶을 때는 접어들러 간다
IF ROOMDATA:(이동처 % 100) & 장소_목욕탕
	IF CFLAG:ARG:목욕탕 >= 욕실들어가고싶다
		이동율 = 이동율 * 10
	ELSE
		이동율 = 0
	ENDIF
ENDIF

;은둔 형 외톨이 대책으로서 기후 대미지가 없는 상황으로 옥내에 있는 경우 옥외에 가고 싶어하도록(듯이)
SIF !ROOMDATA:(이동처 % 100) & 장소_옥내 && 기후에의한영향(ARG, 이동처) >= 0 && ROOMDATA:(CFLAG:ARG:현재위치 % 100) & 장소_옥내
	이동율 += 30

;이동절도에 의해 가지 않는 장소를 설정
;MAP 거주자의 Private(사적인) 개소는 개별적으로 설정해 주세요
;1=창고나 골목길 뒤, 지하실등 불필요한 장소에는 이동하지 않는다
;-1=Private(사적인)장소에서도 그다지 신경쓰지 않고 이동한다
;-2=온갖 곳으로 이동한다
IF 이동처 != CFLAG:ARG:초기위치 && CFLAG:ARG:현재위치 != MAXROOM
	IF CFLAG:ARG:이동절도 >= 1 && !CFLAG:ARG:신사거주
		SIF ROOMDATA:(이동처 % 100) & 장소_과소
			이동율 = 0
	ENDIF
	IF CFLAG:ARG:이동절도 >= 0 && !CFLAG:ARG:신사거주
		SIF ROOMDATA:(이동처 % 100) & 장소_Private
			이동율 = 0
		SIF ROOMDATA:(이동처 % 100) & 장소_과소
			이동율 = 이동율 * 1 / 3
	ENDIF
	IF CFLAG:ARG:이동절도 >= -1
		SIF ROOMDATA:(이동처 % 100) & 장소_Private && !CFLAG:ARG:신사거주
			이동율 = 이동율 * 2 / 3
		SIF ROOMDATA:(이동처 % 100) & 장소_화장실
			이동율 = 이동율 * 1 / 3
		SIF 기후에의한영향(ARG, 이동처) <= -1
			이동율 = 이동율 * 1 / 3
	ENDIF
ENDIF
;머물어비율
이동율 = MAX(이동율 - ARG:2, 0)
RETURN 이동율


code:
;FileName_SLEEP.ERB ----------------------------- Rev1. 00
;캐릭터 수면 처리
;CALL		USER
;ARG		0:캐릭터 NO, 1:MESSAGE 출력 필요와 불필요
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_SLEEP, ARG , ARG:1
SIF TALENT:ARG:망상의산물
	RETURN 0
SIF TCVAR:ARG:만취
	RETURN 0

VARSET LOCAL
IF (CAN_MOVE(CFLAG:MASTER:현재위치, CFLAG:ARG:현재위치) == 2 || CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치) && !CFLAG:MASTER:수면 && !CFLAG:ARG:빡침
	IF (IN_HOME(CFLAG:MASTER:현재위치) && CFLAG:ARG:현재위치 == CFLAG:ARG:초기위치 && CFLAG:ARG:현재위치 != MAXROOM) || CFLAG:MASTER:현재위치 == OMANEKIBEYA()
		IF TALENT:ARG:연모
			IF CFLAG:ARG:동침중
				IF CFLAG:ARG:수면
					IF ARG:1
						PRINTDATA
							DATAFORM %CALLNAME:ARG%는 행복한 미소를 짓고 있다
							DATAFORM %CALLNAME:ARG%는 %CALLNAME:MASTER%의 이름을 자그맣게 중얼거렸다
							DATAFORM %CALLNAME:ARG%는 새근새근 자고 있다
							DATAFORM %CALLNAME:ARG%는 무의식 중에 %마스터를% 껴안았다
						ENDDATA
					ENDIF
					LOCAL = 3
					PRINTW
				ELSE
					IF ARG:1
						PRINTDATA
							DATAFORM %CALLNAME:ARG%는 행복한 미소를 짓고 있다
							DATAFORM %CALLNAME:ARG%는 작게 하품했다
							DATAFORM %CALLNAME:ARG%는 볼을 붉히며 %마스터를% 바라보고 있다
							DATAFORM %CALLNAME:ARG%는 살며시 %CALLNAME:MASTER%에게 밀착했다
						ENDDATA
					ENDIF
					LOCAL = 2
					PRINTW
				ENDIF
			ELSE
				IF CFLAG:ARG:수면
					SIF ARG:1
						PRINTFORMW %CALLNAME:ARG%는 자고 있다
					LOCAL = 3
				ELSEIF CFLAG:ARG:현재위치 == CFLAG:ARG:전턴위치
					IF ARG:1
						IF CFLAG:ARG:데일리
							PRINTFORMW %CALLNAME:ARG%는 졸린 눈치다
						ELSE
							PRINTFORMW %CALLNAME:ARG%는 졸다가 결국 잠들었다…
							IF CFLAG:ARG:우후후
								LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:ARG:우후후, 1)
								WHILE INRANGE(LOCAL:3, 1, CHARANUM - 1)
									SIF LOCAL:3 != ARG
										CALL ENDUFUFU(LOCAL:3)
									SIF LOCAL:3 == CHARANUM - 1
										BREAK
									LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:ARG:우후후, LOCAL:3 + 1)
								WEND
								CALL ENDUFUFU(ARG)
								TFLAG:106 = 0
								CFLAG:MASTER:우후후 = 0
							ENDIF
						ENDIF
					ENDIF
					SIF !CFLAG:ARG:데일리
						LOCAL = 9
				ENDIF
			ENDIF
		ELSEIF CFLAG:ARG:수면 == 1
			SIF ARG:1
				PRINTFORMW %CALLNAME:ARG%는 자고 있다
			LOCAL = 3
		ELSE
			SIF ARG:1
				PRINTFORMW %CALLNAME:ARG%는 졸린 눈치다
			CALL 침실로부터내쫓아(ARG)
			LOCAL = 2
		ENDIF
		;은밀중 세트
		SIF CFLAG:MASTER:현재위치 != CFLAG:MASTER:전턴위치
			CALL SET_SNEAK(1, ARG, 1)
	;자지 않은 경우
	ELSEIF 수면시간(ARG) && CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치 && CFLAG:ARG:현재위치 == CFLAG:ARG:전턴위치 && !TCVAR:ARG:휴식안
		IF CFLAG:ARG:신사거주
			CALL SLEEP_RESIDENT(ARG)
		ELSE
			CALL SLEEP_VISITOR(ARG)
		ENDIF
		LOCAL = RESULT
		IF CFLAG:ARG:우후후
			LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:ARG:우후후, 1)
			WHILE INRANGE(LOCAL:3, 1, CHARANUM - 1)
				SIF LOCAL:3 != ARG
					CALL ENDUFUFU(LOCAL:3)
				SIF LOCAL:3 == CHARANUM - 1
					BREAK
				LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:ARG:우후후, LOCAL:3 + 1)
			WEND
			CALL ENDUFUFU(ARG)
			TFLAG:106 = 0
			CFLAG:MASTER:우후후 = 0
		ENDIF
		LOCAL:6 ++
	;상대가 자기 방에 돌아간다
	ELSE
		LOCAL = 1
	ENDIF
	;휴업(휴가) 말or귀가 말
	IF (CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치 || (수면시간(ARG) && CFLAG:ARG:현재위치 == CFLAG:ARG:신사거주)) && !LOCAL:6
		;CALL KOJO_EVENT(7, ARG, LOCAL)
		IF CFLAG:ARG:신사거주 || CFLAG:MASTER:현재위치 == OMANEKIBEYA() || TCVAR:ARG:휴식안
			CALL KOJO_MESSAGE_SEND("EVENT", 3, ARG, LOCAL, 0)
		ELSE
			LOCAL:2 = 1
			SIF CHK_DATENOW(CFLAG:데이트중)
				LOCAL:2 = 2
			CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, LOCAL:2, 0)
		ENDIF
	ENDIF
ENDIF
;연회중에 잔 캐릭터는 연회 플래그가 빗나간다
IF GROUPMATCH(CFLAG:ARG:직종, 48, 49, 50, 51)
	CFLAG:ARG:연회참가 = 0
	CFLAG:ARG:직종 = 0
	CFLAG:ARG:행동 = 0
	BASE:ARG:일량 = 0
ENDIF
SIF BASE:ARG:일량 <= 0 && CFLAG:ARG:행동 == 5
	CALL CHARA_JOBEND(ARG)
;업무중넘어지면(자) 일종료
IF CFLAG:ARG:쇠약 && CFLAG:ARG:행동 == 5
	CFLAG:ARG:행동 = 0
	BASE:ARG:일량 = 0
ENDIF

;자기 방에서 잘 수 있도록 돌아간다
IF CFLAG:ARG:현재위치 != CFLAG:ARG:초기위치 && !CFLAG:ARG:수면 && !CFLAG:ARG:출금
	IF CFLAG:MASTER:현재위치 == CFLAG:ARG:초기위치
		PRINTFORML %CALLNAME:ARG%가 방에 돌아왔다
		IF TALENT:ARG:연모 || (CFLAG:ARG:초기위치 == 15 && (TALENT:1:연모 || TALENT:57:연모 || TALENT:71:연모))
			LOCAL:4 = 0
			LOCAL:5 = 0
			IF CFLAG:MASTER:우후후
				LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:MASTER:우후후, 1)
				WHILE INRANGE(LOCAL:3, 1, CHARANUM - 1)
					CALL ENDUFUFU(LOCAL:3)
					LOCAL:4 ++
					SIF LOCAL:3 == CHARANUM - 1
						BREAK
					LOCAL:3 = FINDCHARA(CFLAG:우후후, CFLAG:MASTER:우후후, LOCAL:3 + 1)
				WEND
				TFLAG:106 = 0
				CFLAG:MASTER:우후후 = 0
				IF !RAND:2
					LOCAL:3 = FINDCHARA(CFLAG:현재위치, CFLAG:MASTER:현재위치, 1)
					SIF LOCAL:3 == ARG
						LOCAL:3 = FINDLASTCHARA(CFLAG:현재위치, CFLAG:MASTER:현재위치, 1)
				ELSE
					LOCAL:3 = FINDLASTCHARA(CFLAG:현재위치, CFLAG:MASTER:현재위치, 1)
					SIF LOCAL:3 == ARG
						LOCAL:3 = FINDCHARA(CFLAG:현재위치, CFLAG:MASTER:현재위치, 1)
				ENDIF
				PRINTFORML 입술을 삐죽인 %CALLNAME:ARG%에게 %마스터는% 마지못해 %CALLNAME:(LOCAL:3)%\@ LOCAL:4 > 1 ?  타츠 #  \@로부터 멀어졌다
				LOCAL:5 = 2
			ENDIF
			PRINTL
			CALL 자고일어나기갈아입음(ARG)
			;PRINTFORMW %CALLNAME:ARG%는 갈아입으면(자) 이불에 기어들었다…
			CALL KOJO_MESSAGE_SEND("EVENT", 3, ARG, 7, LOCAL:5)
		ELSE
			PRINTFORMW 졸린 듯한 %CALLNAME:ARG%에게 쫓겨났다…
			CALL KOJO_MESSAGE_SEND("EVENT", 3, ARG, 7,1)
			;잠입해 OFF
			CALL SET_SNEAK(0, LOCAL, 2)
			;장난 OFF
			CALL SET_PRANK(0, LOCAL, 2)
			FOR LOCAL:1, 0, CHARANUM
				CALL ENDUFUFU(LOCAL:1)
			NEXT
			TFLAG:106 = 0
			;이동 가능한 장소에 이동
			CALL GETOUT(MASTER)
			;원거리이동 플래그 OFF
			TFLAG:195 = 0
		ENDIF
	ENDIF
	;잠옷에 갈아 입을 옷

	CALL CTRL_CLOTHES_SET(ARG, "현재 의상의 변경_파자마")
	CALL 속옷확인리셋(ARG)
	CALL CLOTHES_SETTING_TRAIN(ARG)
ENDIF

;자기 방에서 잔다
IF !TCVAR:ARG:휴식안 || (수면시간(ARG) && CFLAG:ARG:현재위치 != CFLAG:ARG:초기위치)
	CFLAG:ARG:현재위치 = CFLAG:ARG:초기위치
	DEBUGPRINTFORML %CALLNAME:ARG%는{TIME}에{CFLAG:ARG:초기위치}로 잤어
ENDIF
SIF LOCAL == 5 && CFLAG:ARG:초기위치 == 54 && TALENT:MASTER:100 >= -4
	CFLAG:MASTER:현재위치 = 9
SIF LOCAL == 5
	CFLAG:MASTER:현재위치 = CFLAG:ARG:초기위치
;자물쇠를 채워 문을 잠금
SIF GET_MAPID(CFLAG:ARG:초기위치) == MAIN_MAP && CFLAG:MASTER:초기위치 != CFLAG:ARG:초기위치
	LOCK:(CFLAG:ARG:초기위치) = 1
CFLAG:ARG:동행 = 0
CALL SET_SLEEP(1, ARG, 0)
SIF CFLAG:ARG:수면
	CALL SET_DERAY(99, ARG)
;FileName_SLEEP.ERB ----------------------------- Rev1. 00
;캐릭터 기상 처리
;CALL		USER
;ARG		0:캐릭터 NO, 1:자물쇠를 채워 문을 잠금 해제 유무, 2:수면간으로부터의 기상인가 어떤가
;기상장소 수치 1이라면 동거(同棲), 수치 0이라면 비동거(同棲)
;RETURN		VOID
;COMMENT
;-----------------------------------------------------------
@CHARA_AWAKE, ARG, ARG:1, ARG:2
#DIM 기상장소
기상장소 = 0
IF CFLAG:ARG:수면 && CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치 && CFLAG:ARG:기상시간 <= TIME
	SIF ARG > 0 && !CFLAG:MASTER:수면 && !ARG:2
		PRINTFORMW %CALLNAME:ARG%가 깼다
	TCVAR:ARG:수면심도 = 0
	;수면간으로부터의 기상이라면 패스
	IF !ARG:2
		IF !TALENT:ARG:연모
			PRINTFORML %마스터는% %CALLNAME:ARG%가 옷을 다 갈아입을 때까지 일단 밖으로 내쫓겼다
			;안녕 말
			IF !CFLAG:ARG:안면
				CALL KOJO_MESSAGE_SEND("ENCOUNTER", 0, ARG, 2,0)
			ELSEIF !ARG:1 && !CFLAG:MASTER:수면
				CALL KOJO_MESSAGE_SEND("EVENT", 2, ARG, 4,0)
			ENDIF
		ELSE
			SIF CFLAG:MASTER:초기위치 == CFLAG:ARG:초기위치
				기상장소 = 1
			;안녕 말
			IF !CFLAG:ARG:안면
				CALL KOJO_MESSAGE_SEND("ENCOUNTER", 0, ARG, 2,0)
			ELSEIF !ARG:1 && !CFLAG:MASTER:수면
				CALL KOJO_MESSAGE_SEND("EVENT", 2, ARG, 4, 기상장소)
			ENDIF
			IF GETBIT(CFLAG:ARG:갈아입음실행, 1) && !CFLAG:MASTER:수면
				CALL 자고일어나기갈아입음(ARG)
			ENDIF
		ENDIF
		CALL CTRL_CLOTHES_SET(ARG, "현재 의상의 변경_평상복")
		CALL 속옷확인리셋(ARG)
		CALL CLOTHES_SETTING_TRAIN(ARG)
	ENDIF
ENDIF

;데일리 SET
IF CFLAG:ARG:수면
	CALL SET_DERAY(2, ARG)
ENDIF

CALL SET_SLEEP(0, ARG, 0)

;각 플래그 OFF
CALL SET_PRANK(0, ARG, 2)
CALL SET_SNEAK(0, ARG, 2)
;CALL SET_TOGETHER(0, ARG, 0)
;자물쇠를 채워 문을 잠금
SIF ARG:1 == 0 && GET_MAPID(CFLAG:ARG:초기위치) == MAIN_MAP
	LOCK:(CFLAG:ARG:초기위치) = 0
CFLAG:ARG:휴일이동완료 = 0

@SLEEP_RESIDENT(ARG)
IF CHK_DATENOW(CFLAG:ARG:데이트중)
	PRINTFORML %CALLNAME:ARG%가 졸린 눈치라 귀가합니다
	CALL SET_DATE(99, ARG)
	CALL 귀가의시간경과
	CFLAG:ARG:현재위치 = CFLAG:ARG:신사거주
	CFLAG:MASTER:현재위치 = CFLAG:ARG:신사거주
	TCVAR:ARG:휴식안 = 1
	IF TALENT:ARG:연모
		CFLAG:MASTER:현재위치 = CFLAG:ARG:신사거주
	ELSE
		CFLAG:MASTER:현재위치 = CFLAG:MASTER:초기위치
	ENDIF
ELSEIF (TALENT:ARG:연모 && AT_HOME(MASTER) && CFLAG:ARG:쇠약) && CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치
	PRINTFORM %CALLNAME:ARG%를
	PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:현재위치)
	PRINT 에서
	PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:초기위치)
	PRINTW 로 옮겼습니다
	CFLAG:ARG:현재위치 = CFLAG:ARG:신사거주
	CFLAG:MASTER:현재위치 = CFLAG:ARG:신사거주
	TCVAR:ARG:휴식안 = 1
	RESULT = 5
	RETURN RESULT
ELSEIF CFLAG:ARG:현재위치 != CFLAG:ARG:초기위치
	PRINTFORM %CALLNAME:ARG%는
	PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:현재위치)
	PRINT 에서
	PRINTFORMS NAME_FROM_PLACE(CFLAG:ARG:초기위치)
	PRINTW 로 돌아왔습니다
	CFLAG:ARG:현재위치 = CFLAG:ARG:신사거주
	;MASTER 대해 구 필요없지요?
	;CFLAG:MASTER:현재위치 = CFLAG:ARG:신사거주
	TCVAR:ARG:휴식안 = 1
	RESULT = 1
	RETURN RESULT
ENDIF

@SLEEP_VISITOR(ARG)
IF CHK_DATENOW(CFLAG:ARG:데이트중) && CFLAG:MASTER:현재위치 != OMANEKIBEYA()
	CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 2,0)
	PRINTFORMW %CALLNAME:ARG%는 \@ CFLAG:ARG:쇠약 ? 지쳤다 # 졸리다 \@며 돌아갔습니다
	CFLAG:MASTER:동행 = 0
	CFLAG:ARG:동행 = 0
	CFLAG:ARG:데이트중 = MAIN_MAP
	FLAG:데이트상대 = 0
	TFLAG:데이트전호감도 = 0
	;일상 ON
	TFLAG:102 = 1
	;삽입해제
	TFLAG:106 = 0
ELSEIF TALENT:ARG:연모 && AT_HOME(MASTER) && CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치
	SIF 수면시간(ARG) && !CFLAG:ARG:쇠약
		GOTO 신사로부터돌아간다
	PRINTFORML %CALLNAME:ARG%는 녹초가 되었다…
	CALL ASK_YN("참배길까지 바래다줄게","잠깐 쉬다 가")
	IF RESULT == 0
		CFLAG:MASTER:현재위치 = GET_ENTRANCE(MAIN_MAP)
		;CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 1,0)
		GOTO 신사로부터돌아간다
	ELSE
		PRINTFORM %CALLNAME:ARG%를
		PRINTFORMW %NAME_FROM_PLACE(Default초기위치)%로 옮겼습니다
		CFLAG:ARG:동행 = 0
		FLAG:데이트상대 = 0
		TFLAG:데이트전호감도 = 0
		CFLAG:ARG:데이트중 = MAIN_MAP
		CFLAG:ARG:현재위치 = Default초기위치
		TCVAR:ARG:휴식안 = 1
		CFLAG:MASTER:현재위치 = Default초기위치
		SIF Default초기위치 == 난쟁이벌레통 && TALENT:MASTER:체형 > -5
			CFLAG:ARG:현재위치 = 툇마루
		RESULT = 8
		RETURN RESULT
	ENDIF
ELSEIF CFLAG:MASTER:현재위치 == OMANEKIBEYA()
	IF CFLAG:MASTER:장난 == 2
		PRINTFORMW %CALLNAME:ARG%에 엉뚱한 짓을 너무 한 것 같다, 눈을 뜨는 앞에 철수하자
	ELSE
		PRINTFORMW %CALLNAME:ARG%는 지쳤다며 드러누웠습니다
	ENDIF
	TCVAR:ARG:휴식안 = 1
	RESULT = 5
	RETURN RESULT
ELSE
	$신사로부터돌아간다
	CALL KOJO_MESSAGE_SEND("EVENT", 20, ARG, 1,0)
	PRINTFORMW 피곤해진 %CALLNAME:ARG%는 돌아갔습니다
	IF CHK_DATENOW(CFLAG:ARG:데이트중)
		CFLAG:ARG:동행 = 0
		FLAG:데이트상대 = 0
		TFLAG:데이트전호감도 = 0
		CFLAG:ARG:데이트중 = MAIN_MAP
		CFLAG:ARG:거점내방 = 0
	ENDIF
	CFLAG:ARG:현재위치 = CFLAG:ARG:초기위치
ENDIF


code:
@GETMAP_0(ARG)
#DIM 기색
기색 = 0
IF TALENT:MASTER:위치짐작 && FLAG:짐작모드 == 1
	FOR LOCAL, 1, CHARANUM
		IF CFLAG:LOCAL:현재위치 == ARG
			IF CFLAG:LOCAL:행동 == 5
				기색 = 2
				BREAK
			ELSEIF CFLAG:LOCAL:수면
				기색 = 3
				BREAK
			ENDIF
			기색 = 1
		ENDIF
		IF ARG == 26 && !GROUPMATCH(CFLAG:MASTER:현재위치, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
			IF CFLAG:LOCAL:현재위치 >= 26 && CFLAG:LOCAL:현재위치 <= 35
				IF CFLAG:LOCAL:행동 == 5
					기색 = 2
					BREAK
				ELSEIF CFLAG:LOCAL:수면
					기색 = 3
					BREAK
				ENDIF
				기색 = 1
			ENDIF
		ELSEIF ARG == 36 && !GROUPMATCH(CFLAG:MASTER:현재위치, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51)
			IF CFLAG:LOCAL:현재위치 >= 36 && CFLAG:LOCAL:현재위치 <= 44
				;유일하게 업무중에 선잠을 취하는 교수들은 수면 우선
				IF CFLAG:LOCAL:수면
					기색 = 3
					BREAK
				ELSEIF CFLAG:LOCAL:행동 == 5
					기색 = 2
					BREAK
				ENDIF
				기색 = 1
			ENDIF
		ELSEIF ARG == 49 && !GROUPMATCH(CFLAG:MASTER:현재위치, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51)
			IF CFLAG:LOCAL:현재위치 >= 45 && CFLAG:LOCAL:현재위치 <= 51
				IF CFLAG:LOCAL:행동 == 5
					기색 = 2
					BREAK
				ELSEIF CFLAG:LOCAL:수면
					기색 = 3
					BREAK
				ENDIF
				기색 = 1
			ENDIF
		ENDIF
	NEXT
	IF 기색 == 1
		SETCOLOR 255, 100, 200
	ELSEIF 기색 == 2
		SETCOLOR 255, 100, 0
	ELSEIF 기색 == 3
		SETCOLOR 0, 120, 180
	ENDIF
ENDIF
CALL GETMAP_YOGORE(ARG)