code:
@SKIP_MOVE_9(ARG, ARG:1)
;LOCAL 일람
;0	현재위치

;현재위치 취득
LOCAL = CFLAG:MASTER:현재위치
SIF ARG:1
	LOCAL = ARG:1

;잠정 목적지에 직접 이동할 수 있는 경우
IF CAN_MOVE(LOCAL, ARG) & 1
	;거기에 이동
	RETURN ARG
ENDIF

;막다른 골목으로부터 갈 수 있는 장소는 고정이므로, 거기를 목표로 한다
SELECTCASE ARG
CASE 903
	RETURN 902
CASE 906,911,912
	RETURN 905
CASE 910
	RETURN 909
CASE 916,917,918
	RETURN 914
CASE 921
	RETURN 922
CASE 925
	RETURN 923
CASE 930
	RETURN 929
CASE 937
	RETURN 931
CASE 934,935,936,938
	RETURN 932
CASE 943
	RETURN 944
CASE 940,941,942
	RETURN 945
;CASE 947
;	RETURN 948
CASE MAXROOM
	RETURN 948
ENDSELECT

;직접 이동할 수 없는 경우,  1개가까운 위치를 잠정 목적지로 다시 설정해 루프
;지점 추가시 요점 보충(전케이스 수정하는 것)
SELECTCASE ARG
	CASE 901
		SELECTCASE LOCAL
		CASE 903 TO 930
			RETURN 902
		CASEELSE
			RETURN 931
		ENDSELECT
	CASE 902
		SELECTCASE LOCAL
		CASE 906 TO 930
			RETURN 905
		CASEELSE
			RETURN 901
		ENDSELECT
	CASE 903
		RETURN 902
	CASE 904
		SELECTCASE LOCAL
		CASE 901,903,931 TO 948
			RETURN 902
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 905
		SELECTCASE LOCAL
		CASE 910
			RETURN 909
		CASE 915 TO 922
			RETURN 914
		CASE 925
			RETURN 923
		CASE 927 TO 930
			RETURN 926
		CASEELSE
			RETURN 902
		ENDSELECT
	CASE 906
		RETURN 905
	CASE 907
		SELECTCASE LOCAL
		CASE 915 TO 922
			RETURN 914
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 908
		SELECTCASE LOCAL
		CASE 915 TO 922
			RETURN 914
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 909
		SELECTCASE LOCAL
		CASE 912,917,918,919
			RETURN 911
		CASEELSE
			RETURN 904
		ENDSELECT
	CASE 910
		RETURN 909
	CASE 911,912
		RETURN 905
	CASE 913
		SELECTCASE LOCAL
		CASE 910
			RETURN 909
		CASE 925
			RETURN 923
		CASE 927,928,929,930
			RETURN 926
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 914
		SELECTCASE LOCAL
		CASE 906,909,910
			RETURN 907
		CASE 921
			RETURN 922
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 915
		RETURN 914
	CASE 916
		RETURN 914
	CASE 917
		RETURN 914
	CASE 918
		RETURN 914
	CASE 919
		RETURN 914
	CASE 920
		RETURN 914
	CASE 921
		RETURN 922
	CASE 922
		RETURN 920
	CASE 923
		SELECTCASE LOCAL
		CASE 910
			RETURN 909
		CASE 927 TO 930
			RETURN 926
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 925
		RETURN 923
	CASE 926
		SELECTCASE LOCAL
		CASE 928,929,930
			RETURN 927
		CASEELSE
			RETURN 905
		ENDSELECT
	CASE 927
		SELECTCASE LOCAL
		CASE 929,930
			RETURN 928
		CASEELSE
			RETURN 926
		ENDSELECT
	CASE 928
		SELECTCASE LOCAL
		CASE 930
			RETURN 929
		CASEELSE
			RETURN 927
		ENDSELECT
	CASE 929
		RETURN 928
	CASE 930
		RETURN 929
	CASE 931
		SELECTCASE LOCAL
		CASE 902 TO 930
			RETURN 901
		CASE 940 TO 943,945 TO 948
			RETURN 944
		CASEELSE
			RETURN 932
		ENDSELECT
	CASE 932
		RETURN 931
	CASE 933
		SELECTCASE LOCAL
		CASE 934,935,936,938,939
			RETURN 932
		CASEELSE
			RETURN 931
		ENDSELECT
	CASE 934
		RETURN 932
	CASE 935
		RETURN 932
	CASE 936
		RETURN 932
	CASE 937
		RETURN 931
	CASE 938
		RETURN 932
	CASE 939
		RETURN 932
	CASE 940
		RETURN 945
	CASE 941
		RETURN 945
	CASE 942
		RETURN 945
	CASE 943
		RETURN 944
	CASE 944
		SELECTCASE LOCAL
		CASE 940,941,942
			RETURN 945
		CASE 948
			RETURN 946
		CASEELSE
			RETURN 931
		ENDSELECT
	CASE 945
		SELECTCASE LOCAL
		CASE 948
			RETURN 946
		CASEELSE
			RETURN 944
		ENDSELECT
	CASE 946
		SELECTCASE LOCAL
		CASE 940,941,942
			RETURN 945
		CASEELSE
			RETURN 944
		ENDSELECT
	CASE 948
		RETURN 946
ENDSELECT


code:
@ODEKAKEMAP_10(AA)
#DIMS REF AA, 0

AA:00 = ＃＃＃＃＃∫　∫/_/_/_/_/_/_/_/_｜□□｜％■■■■■■■■■林林林林林林 ∫／／／
AA:01 = ＃＃　＃＃∫　∫/_/_/_/_/_/_/_/_｜ 06 ｜％■■＿■■■＿■■林林林林林林 ∫／／／
AA:02 = ＃　01　＃∫　∫　　　　05　　　　　　　　　　　　07　　　　　　　　　　 ∫／／／
AA:03 = ＃＃　＃＃∫　∫ _______________________　　　　　　　　　　　　 08 　　 ∫／09／
AA:04 = ＃＃＃＃＃∫　∫/_/_/_/_/_/_/_/_/_/_/_/_％■￣■■￣■■￣■林林林林林林 ∫／／／
AA:05 = ＃＃＃＃＃∫　∫/_/_/_/_/_/_/_/_/_/_/_/_％■■■■■■■■■林林林林林林 ∫／／／

@DRAW_MAP_BG_10(SLICED)
#DIMS SLICED
SELECTCASE SLICED
;채색 싶을 때는 이런 느낌
CASE "나무","숲"
	SETCOLOR 0x90EE90
	PRINTS SLICED
	RESETCOLOR
;다른 문자를 표시시키는 예
CASE "#W"
	SETCOLOR 0x90EE90
	PRINT 나무
	RESETCOLOR
CASE "#E"
	SIF TALENT:MASTER:위치짐작 && COUNTCHARA:(MAXROOM) > 0 && FLAG:짐작모드 == 1
		SETCOLOR 255,100,200
	PRINT ↓
	RESETCOLOR
;보통의
CASEELSE
	PRINTS SLICED
ENDSELECT

repo_name: purugi/eraTWKR

license: mit


code:
@GETMAP_13(ARG)
KEHAI = 0
IF TALENT:MASTER:위치짐작 && FLAG:짐작모드 == 1
	SIF ROOMDATA:(ARG % 100) & 장소_모브
		SETCOLOR C_D_PINK
	FOR LOCAL, 1, CHARANUM
		IF CFLAG:LOCAL:현재위치 == ARG
			IF CFLAG:LOCAL:행동 == 5
				KEHAI = 2
			ELSEIF CFLAG:LOCAL:수면
				KEHAI = 3
			ENDIF
			SIF KEHAI > 1
				BREAK
			KEHAI = 1
		ENDIF
		SIF KEHAI > 1
			BREAK
	NEXT
	IF KEHAI == 1
		SETCOLOR 255, 100, 200
	ELSEIF KEHAI == 2
		SETCOLOR 255, 100, 0
	ELSEIF KEHAI == 3
		SETCOLOR 0, 120, 180
	ENDIF
ENDIF
CALL GETMAP_YOGORE(ARG)


code:
@MAP_OWN1_1(AA)
#DIMS REF AA, 0

AA:00 = ■■■■■■■■■■■■■■■■■■
AA:01 = ■WC■창고■　　　　　■　　　　　■
AA:02 = ■＿■ 07 ■　침　실　■　거　실　■
AA:03 = ■　■＿＿■　　03　　｜　　02　　■
AA:04 = ■　　　　■　　　　　｜　　　　　■
AA:05 = ■　　　　■　　　　　■　　　　　■
AA:06 = ■　정　　■■■――■■■――■■■
AA:07 = ■　 06　 　∥　　　　■　　　　　■
AA:08 = ■　　　　　∥　식사　｜　응접실　■
AA:09 = ■　　　　　∥　05　　｜　　04　　■
AA:10 = ■　　　　　∥　　　　■　　　　　■
AA:11 = ■＿＿　　　∥  　　　■　　　　　■
AA:12 = ■욕실■　　■＝＝＝＝■■＝＝＝■■
AA:13 = ■ 08 ■　　■　　　　　　봉당　　#E
AA:14 = ■　　■　　■　　　　　　　01　　#E
AA:15 = ■■■■■■■■■■■■■■■■■■

@DRAW_MAP_BG_13(SLICED)
#DIMS SLICED
SELECTCASE SLICED
;채색 싶을 때는 이런 느낌

CASE "#E"
	SIF TALENT:MASTER:위치짐작 && COUNTCHARA:(MAXROOM) > 0 && FLAG:짐작모드 == 1
		SETCOLOR 255,100,200
	PRINT →
	RESETCOLOR
;보통의
CASEELSE
	PRINTS SLICED
ENDSELECT


code:
;--------------------------------------------------
;	맵내 이동 처리 확장 패치 부속
;	명련사MAP용 함수
;--------------------------------------------------

@MAP_PLACENAME_13(ARG)
#FUNCTIONS
#DIM PLACEID

IF GET_MAPID(ARG) == MAIN_MAP
	SELECTCASE ARG
		CASE 1301 TO (MAXROOM - 1)
			RETURNF STR:(ARG + 8000)
		CASE 1398
			RETURNF OMANEKI_PLACE()
		CASE 1399
			RETURNF "스키마 공간"
		CASE MAXROOM
			RETURNF "주택 밖"
		CASEELSE
			RETURNF "불명"
	ENDSELECT
ELSE
	RETURNF "불명"
ENDIF

@MAP_VIEWING_13(AA)
#DIMS REF AA, 0
IF !TFLAG:맵변환
	TFLAG:맵변환 = 1
ENDIF
CALL DRAW_INFORMATIONLINE(@"%MAPNAME:(TFLAG:맵변환)%")
PRINTFORML
TRYCALLFORM MAP_OWN1_{TFLAG:맵변환}(AA)

@MAP_CAN_MOVE_13(ARG, ARG:1)
#FUNCTION
RETURNF 1

;@MAP_CANNOT_WORD_13(ARG)
;SELECTCASE TFLAG:이동불능메시지
;	CASE 1302
;		PRINTFORMW 영업 시간외다
;	CASEELSE
;ENDSELECT


code:
;지점 관련성 응답 처리
;-----------------------------------------------------------
@CAN_MOVE_13(ARG, ARG:1)
#FUNCTION
SELECTCASE ARG
	CASE 1301
		SIF GROUPMATCH(ARG:1, 1304,1305)
			RETURNF 1
		SIF ARG:1 == MAXROOM
			RETURNF 2
	CASE 1302
		SIF GROUPMATCH(ARG:1, 1303,1304)
			RETURNF 1
	CASE 1303
		SIF GROUPMATCH(ARG:1, 1302,1305)
			RETURNF 1
	CASE 1304
		SIF GROUPMATCH(ARG:1, 1301,1302,1305)
			RETURNF 1
	CASE 1305
		SIF GROUPMATCH(ARG:1, 1303,1304,1301,1306)
			RETURNF 1
	CASE 1306
		SIF GROUPMATCH(ARG:1, 1305,1307,1308)
			RETURNF 1
	CASE 1307
		SIF GROUPMATCH(ARG:1, 1306)
			RETURNF 1
	CASE 1308
		SIF GROUPMATCH(ARG:1, 1306)
			RETURNF 1
	CASE MAXROOM
		SIF ARG:1 == 1301
			RETURNF 1
ENDSELECT
RETURNF 0


code:
@KICKOUT_13()
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
	CASE 8
		RETURNF 1306
ENDSELECT
;RETURNF 101

@BATHCHECK_13(ARG)
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
ENDSELECT
RETURNF 0

@BATHROOM_13(ARG)
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
ENDSELECT
RETURNF 0

@MAP_UNIQUEMESSAGE_13
SELECTCASE CFLAG:MASTER:현재위치
	CASE 1301
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 봉당은 꽤 넓은 듯 하다
	CASE 1303
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 침실에는 꽤 큰 침대가 있다
	CASE 1304
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 「신축 축하해」라고 쓰여진 큰 하나와가 줄지어 있다
	CASE 1306
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 잔디가 무성하다
ENDSELECT

RETURN 1
;-----------------------------------------
;비자택시에 갈아넣는 장소 ID를 돌려주는 함수
;ARG, 대상ID
;RETURNF, 갈아넣고가 끝난 대상ID
;-----------------------------------------

@MAP_SEARCH_REPLACEMENT_13(ARG)
#FUNCTION
SELECTCASE ARG
	CASE 1301 TO 1308
		RETURNF 1310
	CASEELSE
		RETURNF 1320
ENDSELECT
RETURNF 0

@MAP13_AREANAME(PLACE_ID)
#FUNCTIONS
#LOCALSIZE 1
#LOCALSSIZE 1
#DIM PLACE_ID
IF MAIN_MAP == 13
	RETURNF "%CALLNAME:MASTER%의 주택"
ENDIF


code:
@ROOMSETTING_13
VARSET ROOMDATA
FOR LOCAL, 1,100
	SIF GROUPMATCH(LOCAL, 3)
		ROOMDATA:LOCAL |= 장소_이불
	SIF INRANGE(LOCAL, 1,8)
		ROOMDATA:LOCAL |= 장소_옥내
	SIF GROUPMATCH(LOCAL, 8)
		ROOMDATA:LOCAL |= 장소_목욕탕
	SIF GROUPMATCH(LOCAL, 5)
		ROOMDATA:LOCAL |= 장소_주방
	SIF GROUPMATCH(LOCAL, 6)
		ROOMDATA:LOCAL |= 장소_훈련
	SIF GROUPMATCH(LOCAL, 2)
		ROOMDATA:LOCAL |= 장소_공부
	SIF GROUPMATCH(LOCAL, 2,3,4,5)
		ROOMDATA:LOCAL |= 장소_휴식
	SIF GROUPMATCH(LOCAL, 6)
		ROOMDATA:LOCAL |= 장소_창공
	SIF GROUPMATCH(LOCAL, 6)
		ROOMDATA:LOCAL |= 장소_달구경
	SIF GROUPMATCH(LOCAL, 6)
		ROOMDATA:LOCAL |= 장소_채소밭
	SIF GROUPMATCH(LOCAL, 7)
		ROOMDATA:LOCAL |= 장소_좁다
	SIF GROUPMATCH(LOCAL, 3)
		ROOMDATA:LOCAL |= 장소_선잠_가능
	SIF GROUPMATCH(LOCAL, 1)
		ROOMDATA:LOCAL |= 장소_머물지않는다
	SIF GROUPMATCH(LOCAL, 8)
		ROOMDATA:LOCAL |= 장소_신체측정
	SIF GROUPMATCH(LOCAL, 7)
		ROOMDATA:LOCAL |= 장소_과소
	SIF GROUPMATCH(LOCAL, 3)
		ROOMDATA:LOCAL |= 장소_Private
NEXT

MAXROOM = 1309
ENTRANCE = 1301
피난처 = 1302

SIF GET_MAPID(거점_술벌레) != MAIN_MAP
	거점_술벌레 = 1305
MAP_PAGES = 1
MAPNAME:1 = %CALLNAME:MASTER%의 주택

@DEFAULT_OWNER_13
Default초기위치 = 1303
거점_주인 = 0


code:
@SKIP_MOVE_13(ARG:0, ARG:1)

;현재위치 취득
LOCAL:0 = CFLAG:MASTER:현재위치
SIF ARG:1
	LOCAL = ARG:1

;잠정 목적지에 직접 이동할 수 있는 경우
IF CAN_MOVE(LOCAL, ARG) & 1
	;거기에 이동
	RETURN ARG
ENDIF

;막다른 골목으로부터 갈 수 있는 장소는 고정이므로, 거기를 목표로 한다
SELECTCASE LOCAL
CASE 1307,1308
	RETURN 1306
ENDSELECT

;SIF INRANGE(LOCAL, 1321, 1333) && !INRANGE(ARG, 1320, 1333)
;	RETURN 1320

;직접 이동할 수 없는 경우,  1개가까운 위치를 잠정 목적지로 다시 설정해 루프
;지점 추가시 요점 보충(전케이스 수정하는 것)
SELECTCASE ARG
	CASE 1301
		RETURN 1305
	CASE 1302
		RETURN 1304
	CASE 1303
		RETURN 1305
	CASE 1304
		RETURN 1305
	CASE 1305
		SELECTCASE LOCAL:0
			CASE 1302
				RETURN 1304
			CASE 1307, 1308
				RETURN 1306
		ENDSELECT
	CASE 1306
		RETURN 1305
	CASE 1307,1308
		RETURN 1306

ENDSELECT


code:
@GETMAP_14(ARG)
KEHAI = 0
IF TALENT:MASTER:위치짐작 && FLAG:짐작모드 == 1
	SIF ROOMDATA:(ARG % 100) & 장소_모브
		SETCOLOR C_D_PINK
	FOR LOCAL, 1, CHARANUM
		IF CFLAG:LOCAL:현재위치 == ARG
			IF CFLAG:LOCAL:행동 == 5
				KEHAI = 2
			ELSEIF CFLAG:LOCAL:수면
				KEHAI = 3
			ENDIF
			SIF KEHAI > 1
				BREAK
			KEHAI = 1
		ENDIF
		SIF KEHAI > 1
			BREAK
	NEXT
	IF KEHAI == 1
		SETCOLOR 255, 100, 200
	ELSEIF KEHAI == 2
		SETCOLOR 255, 100, 0
	ELSEIF KEHAI == 3
		SETCOLOR 0, 120, 180
	ENDIF
ENDIF
CALL GETMAP_YOGORE(ARG)


code:
@MAP_OWN2_1(AA)
#DIMS REF AA, 0

AA:00 = 　　　　　　　　　　　　　　일층　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　이층
AA:01 = ■─■─■─■─■─■─■─■─■─■─■─■─■─■─■─■　|
AA:02 = ｜　　　　　　　　　　　　　　　　　　　　　　　　　　　　　｜　|
AA:03 = ■　■■■■■■■■■■　　　　　　　　　　　　　　　　　　■　|　■■■■■■■
AA:04 = ｜　■탈의｜　∬∫∬　■　　　　Ψ───Ψ　　■■■■■■　｜　|　■　유희실　■
AA:05 = ■　■ 07 ｜　　08　　■　　　.,｜능무대｜■■■　창고　■　■　|　■　 21 　　■
AA:06 = ｜　■　　■　 욕실 　■　 γ~_ ｜　12　｜｜｜｜ 　11 　■　｜　|　■　　　　　■
AA:07 = ■　■■─■■■■■■■ ｒ~　　｜　　　｜■■■　　　　■　■　|　■■─■■■■
AA:08 = ｜　■п　｜　　■　　 .ノ　＿　Ψ───Ψ ヽ,■■■─■■　｜　|　■п　｜｜13■
AA:09 = ■　■　　■■■■　п r　　　　연　못　＿　).　　　＝　　　■　|　■　　■■■■
AA:10 = ｜　■　　｜｜23■　　i　 γ⌒ヽ　10_　　　r" 　　　＝　　　｜　|　■　　｜　　■
AA:11 = ■　■　　■■■■　　l　~ 　~~　_ 　｡　 ,ﾉ 　뜰п　＝　　　■　|　■　　■■■■
AA:12 = ｜　■　　■부엌■　　ﾄ､ 　　　　　　　,'ﾞ　 09 　　＝　　　｜　|　■　　■안방■
AA:13 = ■　｜　　｜ 06 ■　　　"' `~ﾞ ''"ﾞ~`"　　　　　　　＝　　　■　|　■　　｜ 14 ■
AA:14 = ｜　■　　■　　■ТТТТТТТТТТТТТТТ］　＝　п　｜　|　■　　■　　■
AA:15 = ■　■　　■■─■⊥⊥■■■⊥⊥⊥■■■⊥⊥⊥■■　＝　　　■　|　■　　■■■■■■■■■■■■■■■■■■■■
AA:16 = ｜　■　　■　　식당　　■　응접실　■　 객실 　■　＝　　　｜　|　■　　■휴게실■#A■#B■#C■#D■#E■
AA:17 = ■　■　　■　　 05 　　｜　　03　　｜　　04　　■■─■■　■　|　■　　｜　20　■ 15 ■ 16 ■ 17 ■ 18 ■ 19 ■
AA:18 = ｜　■　　■　　　　　　■　　　　　■　　　　　■　　　■　｜　|　■　　■　　　■　　■　　■　　■　　■　　■■■■
AA:19 = ■　■　　■■■──■■■■───■■■■──■■ 거실 ■　■　|　■　　■■─■■■─■■─■■─■■─■■─■서재■
AA:20 = ｜　■　　　　　　　　п　통로13　　　п　　　　｜　02　■　｜　|　■　　　　　　　　　　　　　　　　　　　　　■ 22 ■
AA:21 = ■　■п　　　　　　　　　＝＝＝＝＝　　　　　　｜　　　■　■　|　■п　　　　　　　　통로23　　　　　　　　　｜　　■
AA:22 = ｜　■■■■■■■■■■■＝현∴관＝■■■■■■■■■■■　｜　|　■■■■■■■■■■■■■■■■■■■■■■■■■■
AA:23 = ■　　　　　　　　　　　■∴∴01∴∴■　　　　　　　　　　　■　|
AA:24 = ｜　　‡─‡─‡─‡　　■■≡≡≡■■　　‡─‡─‡─‡　　｜　|
AA:25 = ■　　｜σ　δ　σ｜　　仝□＋＋＋□仝　　｜♀　♀　♀｜　　■　|
AA:26 = ｜　　‡─‡─‡─‡　　　□＋＋＋□　　　‡─‡─‡─‡　　｜　|
AA:27 = ■─■─■─■─■─■─■〓#E#E#E〓■合■─■─■─■─■─■　|

SIF ITEM:주택>=4
	AA:08 = ｜　■п　｜｜43■　　 .ノ　＿　Ψ───Ψ ヽ,■■■─■■　｜　|　■п　｜｜13■
SIF ITEM:주택>=3
	AA:10 = ｜　■　　｜｜23■　　i　 γ⌒ヽ　10_　　　r" 　　　＝　　　｜　|　■　　｜｜33■

@MAP_OWN2_2(AA)
#DIMS REF AA, 0

AA:00 = 　　　　　　　　　　　　　　이층　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　삼층
AA:01 = ■■■■■■■　　　　　　　　　　　　　　　　　　　　　　　　　|　Ψ─────Ψ
AA:02 = ■　유희실　■　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　전망대　｜
AA:03 = ■　 21 　　■　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　 31 　　｜
AA:04 = ■　　　　　■　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　　　　　｜
AA:05 = ■■─■■■■　　　　　　　　　　　　　　　　　　　　　　　　　|　■■─■■■■
AA:06 = ■п　｜｜13■　　　　　　　　　　　　　　　　　　　　　　　　　|　■п　｜｜23■
AA:07 = ■　　■■■■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　■■■■
AA:08 = ■　　｜｜33■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　｜　　■
AA:09 = ■　　■■■■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　■■■■
AA:10 = ■　　■안방■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　■#F■
AA:11 = ■　　｜ 14 ■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　｜ 24 ■
AA:12 = ■　　■　　■　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　■　　■
AA:13 = ■　　■■■■■■■■■■■■■■■■■■■■　　　　　　　　　|　■　　■■■■■■■■■■■■■■■■■■■■
AA:14 = ■　　■휴게실■#A■#B■#C■#D■#E■　　　　　　　　　|　■　　■다용도■#G■#H■#I■#J■#K■
AA:15 = ■　　｜　20　■ 15 ■ 16 ■ 17 ■ 18 ■ 19 ■　　　　　　　　　|　■　　｜　30　■ 25 ■ 26 ■ 27 ■ 28 ■ 29 ■
AA:16 = ■　　■　　　■　　■　　■　　■　　■　　■■■■　　　　　　|　■　　■　　　■　　■　　■　　■　　■　　■■■■
AA:17 = ■　　■■─■■■─■■─■■─■■─■■─■서재■　　　　　　|　■　　■■─■■■─■■─■■─■■─■■─■휴계■
AA:18 = ■　　　　　　　　　　　　　　　　　　　　　■ 22 ■　　　　　　|　■　　　　　　　　　　　　　　　　　　　　　■ 32 ■
AA:19 = ■п　　　　　　　　통로23　　　　　　　　　｜　　■　　　　　　|　■п　　　　　　　　통로33　　　　　　　　　｜　　■
AA:20 = ■■■■■■■■■■■■■■■■■■■■■■■■■■　　　　　　|　■■■■■■■■■■■■■■■■■■■■■■■■■■

@MAP_OWN2_3(AA)
#DIMS REF AA, 0

AA:00 = 　　　　　　　　　　　　　지하　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　일층
AA:01 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　■─■─■─■─■─■─■─■─■─■─■─■─■─■─■─■
AA:02 = ■■■■■■■■■■■■　　　　　　■■■■■■■■　　|　｜　　　　　　　　　　　　　　　　　　　　　　　　　　　　　｜
AA:03 = ■　　　　도장　　　　■　　　　　　■　　　　　　■　　|　■　■■■■■■■■■■　　　　　　　　　　　　　　　　　　■
AA:04 = ■　  　　　41　　　　■　　　　　　■　　　　　　■　　|　｜　■탈의｜　∬∫∬　■　　　　Ψ───Ψ　　■■■■■■　｜
AA:05 = ■　　　　　　　　　　■　　　　　　■　　지하　　■　　|　■　■ 07 ｜　　08　　■　　　.,｜능무대｜■■■　창고　■　■
AA:06 = ■■─■■■■■■■■■　　　　　　■　　온천　　■　　|　｜　■　　■　욕　실　■　 γ~_ ｜　12　｜｜｜｜ 　11 　■　｜
AA:07 = ■п　｜｜13■　　　　　　　　　　　■　　　44　　■　　|　■　■■─■■■■■■■ ｒ~　　｜　　　｜■■■　　　　■　■
AA:08 = ■　　■■■■　　　　　　　　　　　■　　　　　　■　　|　｜　■п　｜｜　■　　 .ノ　＿　Ψ───Ψ ヽ,■■■─■■　｜
AA:09 = ■　　｜　　■　　연　못　아　래　　■　　　　　　■　　|　■　■　　■■■■　п r　　　　연　못　＿　).　　　＝　　　■
AA:10 = ■　　■■■■　　　　　　　　　　　■　　　　　　■　　|　｜　■　　｜｜23■　　i　 γ⌒ヽ　10_　　　r" 　　　＝　　　｜
AA:11 = ■　　■#L■　　　　　　　　　　　■　　　　　　■　　|　■　■　　■■■■　　l　~ 　~~　_ 　｡　 ,ﾉ 　뜰п　＝　　　■
AA:12 = ■　　｜ 34 ■　　　　　　　　　　　■　　　　　　■　　|　｜　■　　■부엌■　　ﾄ､ 　　　　　　　,'ﾞ　 09 　　＝　　　｜
AA:13 = ■　　■　　■　　　　　　　　　　　■　　　　　　■　　|　■　｜　　｜ 06 ■　　　"' `~ﾞ ''"ﾞ~`"　　　　　　　＝　　　■
AA:14 = ■　　■■■■■■■■■■■■■■■■■■■■＝＝■　　|　｜　■　　■　　■ТТТТТТТТТТТТТТТ］　＝　п　｜
AA:15 = ■　　■다용도■#M■#N■#O■#P■#Q■＝＝■　　|　■　■　　■■─■⊥⊥■■■⊥⊥⊥■■■⊥⊥⊥■■　＝　　　■
AA:16 = ■　　｜　40　■ 35 ■ 36 ■ 37 ■ 38 ■ 39 ■＝＝■　　|　｜　■　　■　　식당　　■　응접실　■　 객실 　■　＝　　　｜
AA:17 = ■　　■　　　■　　■　　■　　■　　■　　■■■■　　|　■　■　　■　　 05 　　｜　　03　　｜　　04　　■■─■■　■
AA:18 = ■　　■■─■■■─■■─■■─■■─■■─■탈의■　　|　｜　■　　■　　　　　　■　　　　　■　　　　　■　　　■　｜
AA:19 = ■　　　　　　　　　　　　　　　　　　　　　■　42■　　|　■　■　　■■■──■■■■───■■■■──■■ 거실 ■　■
AA:20 = ■п　　　　　　　　통로43　　　　　　　　　｜　　■　　|　｜　■　　　　　　　　п　통로13　　　п　　　　｜　02　■　｜
AA:21 = ■■■■■■■■■■■■■■■■■■■■■■■■■■　　|　■　■п　　　　　　　　　＝＝＝＝＝　　　　　　｜　　　■　■
AA:22 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　■■■■■■■■■■■＝현∴관＝■■■■■■■■■■■　｜
AA:23 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　　　　　　　　　　■∴∴01∴∴■　　　　　　　　　　　■
AA:24 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　　‡─‡─‡─‡　　■■≡≡≡■■　　‡─‡─‡─‡　　｜
AA:25 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　■　　｜σ　δ　σ｜　　仝□＋＋＋□仝　　｜♀　♀　♀｜　　■
AA:26 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　｜　　‡─‡─‡─‡　　　□＋＋＋□　　　‡─‡─‡─‡　　｜
AA:27 = 　　　　　　　　　　　　　　　　　　　　　　　　　　　　|　■─■─■─■─■─■─■〓#E#E#E〓■合■─■─■─■─■─■

@DRAW_MAP_BG_14(SLICED)
#DIMS SLICED
SELECTCASE SLICED
;채색 싶을 때는 이런 느낌
CASE "∬","∫","\"","\'","γ","`","~","⌒","ﾞ","ヽ", "ノ", ")", ",", "ﾞ", "r",")","ﾄ","i","l","､","｡","ｒ",".","＿","_","ﾉ"
	SETCOLOR C_AQUA
	PRINTS SLICED
	RESETCOLOR
;다른 문자를 표시시키는 예
CASE "#A"
	CALL 방호칭출력(0)
CASE "#B"
	CALL 방호칭출력(1)
CASE "#C"
	CALL 방호칭출력(2)
CASE "#D"
	CALL 방호칭출력(3)
CASE "#E"
	CALL 방호칭출력(4)
CASE "#F"
	CALL 방호칭출력(5)
CASE "#G"
	CALL 방호칭출력(6)
CASE "#H"
	CALL 방호칭출력(7)
CASE "#I"
	CALL 방호칭출력(8)
CASE "#J"
	CALL 방호칭출력(9)
CASE "#K"
	CALL 방호칭출력(10)
CASE "#L"
	CALL 방호칭출력(11)
CASE "#M"
	CALL 방호칭출력(12)
CASE "#N"
	CALL 방호칭출력(13)
CASE "#O"
	CALL 방호칭출력(14)
CASE "#P"
	CALL 방호칭출력(15)
CASE "#Q"
	CALL 방호칭출력(16)
CASEELSE
	PRINTS SLICED
ENDSELECT

@방호칭출력(방번호)
#DIM 방번호
IF FLAG:(161+방번호)
	LOCALS =%CALLNAME:(FLAG:(161+방번호))%
	SUBSTRING LOCALS,0,4
	STRLENS LOCALS
	IF RESULT==2
		PRINT
		PRINTFORM %RESULTS%
		PRINT
	ELSE
		PRINTFORM %RESULTS%
	ENDIF
ELSE
	PRINT 독실
ENDIF


code:
;--------------------------------------------------
;	맵내 이동 처리 확장 패치 부속
;	명련사MAP용 함수
;--------------------------------------------------

@MAP_PLACENAME_14(ARG)
#FUNCTIONS
#DIM PLACEID

IF GET_MAPID(ARG) == MAIN_MAP
	SELECTCASE ARG
		CASE 1401 TO (MAXROOM - 1)
			RETURNF STR:(ARG + 8000)
		CASE 1498
			RETURNF OMANEKI_PLACE()
		CASE 1499
			RETURNF "스키마 공간"
		CASE MAXROOM
			RETURNF "저택 밖"
		CASEELSE
			RETURNF "불명"
	ENDSELECT
ELSE
	RETURNF "불명"
ENDIF

@MAP_VIEWING_14(AA)
#DIMS REF AA, 0
IF !TFLAG:맵변환
	SELECTCASE CFLAG:MASTER:현재위치
		CASE 1424 TO 1433
			TFLAG:맵변환 = 2
		CASE 1434 TO 1444
			TFLAG:맵변환 = 3
		CASEELSE
			TFLAG:맵변환 = 1
	ENDSELECT
ENDIF
CALL DRAW_INFORMATIONLINE(@"%MAPNAME:(TFLAG:맵변환)%")
PRINTFORML
TRYCALLFORM MAP_OWN2_{TFLAG:맵변환}(AA)

@MAP_CAN_MOVE_14(ARG, ARG:1)
#FUNCTION
RETURNF 1


code:
;지점 관련성 응답 처리
;-----------------------------------------------------------
@CAN_MOVE_14(ARG, ARG:1)
#FUNCTION
SELECTCASE ARG
	CASE MAXROOM
		SIF ARG:1 == 1401
			RETURNF 1
	CASE 1401
		SIF GROUPMATCH(ARG:1, 1413)
			RETURNF 1
		SIF ARG:1 == MAXROOM
			RETURNF 2
	CASE 1402
		SIF GROUPMATCH(ARG:1, 1409)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1413)
			RETURNF 1
	CASE 1403
		SIF GROUPMATCH(ARG:1, 1413,1404,1405)
			RETURNF 1
	CASE 1404
		SIF GROUPMATCH(ARG:1, 1413,1403)
			RETURNF 1
	CASE 1405
		SIF GROUPMATCH(ARG:1, 1413,1403,1406)
			RETURNF 1
	CASE 1406
		SIF GROUPMATCH(ARG:1, 1413,1405)
			RETURNF 1
	CASE 1407
		SIF GROUPMATCH(ARG:1, 1413,1408)
			RETURNF 1
	CASE 1408
		SIF GROUPMATCH(ARG:1, 1407)
			RETURNF 1
	CASE 1409
		SIF GROUPMATCH(ARG:1, 1402)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1410,1411)
			RETURNF 1
	CASE 1410
		SIF GROUPMATCH(ARG:1, 1409,1412)
			RETURNF 1
	CASE 1411
		SIF GROUPMATCH(ARG:1, 1409,1412)
			RETURNF 1
	CASE 1412
		SIF GROUPMATCH(ARG:1, 1410,1411)
			RETURNF 1
	CASE 1413
		SIF GROUPMATCH(ARG:1,1423,1443)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1401,1402,1403,1404,1405,1406,1407)
			RETURNF 1
	CASE 1414 TO 1422
		SIF GROUPMATCH(ARG:1, 1423)
			RETURNF 1
	CASE 1423
		SIF GROUPMATCH(ARG:1,1413,1433)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1414,1415,1416,1417,1418,1419,1420,1421,1422)
			RETURNF 1
	CASE 1424 TO 1432
		SIF GROUPMATCH(ARG:1, 1433)
			RETURNF 1
	CASE 1433
		SIF GROUPMATCH(ARG:1,1423)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1424,1425,1426,1427,1428,1429,1430,1431,1432)
			RETURNF 1
	CASE 1434 TO 1441
		SIF GROUPMATCH(ARG:1, 1443)
			RETURNF 1
	CASE 1442
		SIF GROUPMATCH(ARG:1, 1443,1444)
			RETURNF 1
	CASE 1443
		SIF GROUPMATCH(ARG:1,1413)
			RETURNF 3
		SIF GROUPMATCH(ARG:1, 1434,1435,1436,1437,1438,1439,1440,1441,1442)
			RETURNF 1
	CASE 1444
		SIF GROUPMATCH(ARG:1, 1442)
			RETURNF 1
ENDSELECT
RETURNF 0


code:
@KICKOUT_14()
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
	CASE 8
		RETURNF 1407
	CASE 44
		RETURNF 1442
ENDSELECT
;RETURNF 101

@BATHCHECK_14(ARG)
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
ENDSELECT
RETURNF 0

@BATHROOM_14(ARG)
#FUNCTION
SELECTCASE CHK_INHOME(CFLAG:MASTER:현재위치)
ENDSELECT
RETURNF 0

@OPENPLACE_14(ARG)
#FUNCTION
SELECTCASE CHK_INHOME(ARG)
	;옥외
	CASE 9,10,12
		RETURNF 2
	;현관, 복도
	CASE 13,1,23,33,43
		RETURNF 1
	CASE 23,29
		RETURNF 1
	CASEELSE
		RETURNF 0
ENDSELECT

@MAP_UNIQUEMESSAGE_14
SELECTCASE CFLAG:MASTER:현재위치
	CASE 1405
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 식당은 단정하게 정리되어 있는 듯 하다
	CASE 1409
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 뜰에는 잔디만 무성하다
	CASE 1401
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 「신축 축하해」라고 쓰여진 큰 하나와가 줄지어 있다
	CASE 1403 TO 1405
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 창문밖으로 연못이 보인다
	CASE 1421
		CALL DRAW_INFORMATIONLINE("Info", 1)
		PRINTFORML 장난감으로 가득하다
ENDSELECT

RETURN 1
;-----------------------------------------
;비자택시에 갈아넣는 장소 ID를 돌려주는 함수
;ARG, 대상ID
;RETURNF, 갈아넣고가 끝난 대상ID
;-----------------------------------------

@MAP_SEARCH_REPLACEMENT_14(ARG)
#FUNCTION
SELECTCASE ARG
;;1 층 옥내
	CASE 1401 TO 1408, 1411
		RETURNF 1410
;;1층 옥외
	CASE 1409 TO 12
		RETURNF 1420
;;2층옥내
	CASE 1414 TO 1413
		RETURNF 1430

	CASE 1424 TO 1433
		RETURNF 1440

	CASE 1434 TO 1444
		RETURNF 1450
ENDSELECT
RETURNF 0

@MAP14_AREANAME(PLACE_ID)
#FUNCTIONS
#LOCALSIZE 1
#LOCALSSIZE 1
#DIM PLACE_ID
IF MAIN_MAP == 14
	SIF INRANGE(PLACE_ID, 1401, 1408)||PLACE_ID == 1413
		RETURNF "%CALLNAME:MASTER%의 저택 1층"
	SIF INRANGE(PLACE_ID, 1409, 1412)
		RETURNF "%CALLNAME:MASTER%의 저택 마당"
	SIF INRANGE(PLACE_ID, 1414, 1423)
		RETURNF "%CALLNAME:MASTER%의 저택 2층"
	SIF INRANGE(PLACE_ID, 1424, 1433)
		RETURNF "%CALLNAME:MASTER%의 저택 3층"
	SIF INRANGE(PLACE_ID, 1434, 1444)
		RETURNF "%CALLNAME:MASTER%의 저택 지하"
ELSE
	SELECTCASE PLACE_ID
	CASE 1410
		RETURNF "%CALLNAME:MASTER%의 저택 1층"
	CASE 1420
		RETURNF "%CALLNAME:MASTER%의 저택 마당"
	CASE 1430
		RETURNF "%CALLNAME:MASTER%의 저택 2층"
	CASE 1440
		RETURNF "%CALLNAME:MASTER%의 저택 3층"
	CASE 1450
		RETURNF "%CALLNAME:MASTER%의 저택 지하"
	ENDSELECT
ENDIF


code:
@ROOMSETTING_14
VARSET ROOMDATA
FOR LOCAL, 1,100
	SIF INRANGE(LOCAL, 14,19)|| INRANGE(LOCAL, 24,29)|| INRANGE(LOCAL, 34,39)
		ROOMDATA:LOCAL |= 장소_이불
	SIF INRANGE(LOCAL, 1,8) || INRANGE(LOCAL, 13,44) ||GROUPMATCH(LOCAL, 11)
		ROOMDATA:LOCAL |= 장소_옥내
	SIF GROUPMATCH(LOCAL, 8,44)
		ROOMDATA:LOCAL |= 장소_목욕탕
	SIF GROUPMATCH(LOCAL, 6,30,40)
		ROOMDATA:LOCAL |= 장소_주방
	SIF GROUPMATCH(LOCAL, 9,41)
		ROOMDATA:LOCAL |= 장소_훈련
	SIF GROUPMATCH(LOCAL, 22,32)
		ROOMDATA:LOCAL |= 장소_공부
	SIF GROUPMATCH(LOCAL, 2,3,4,5,44)||INRANGE(LOCAL, 14,22)|| INRANGE(LOCAL, 24,32)|| INRANGE(LOCAL, 34,42)
		ROOMDATA:LOCAL |= 장소_휴식
	SIF GROUPMATCH(LOCAL, 9,10,12,31)
		ROOMDATA:LOCAL |= 장소_창공
	SIF GROUPMATCH(LOCAL, 9,10,12,31)
		ROOMDATA:LOCAL |= 장소_달구경
	SIF GROUPMATCH(LOCAL, 14,31)
		ROOMDATA:LOCAL |= 장소_하늘의소리
	SIF GROUPMATCH(LOCAL, 9)
		ROOMDATA:LOCAL |= 장소_채소밭
	SIF GROUPMATCH(LOCAL, 10,44)
		ROOMDATA:LOCAL |= 장소_물긷기
	SIF GROUPMATCH(LOCAL, 12,31)
		ROOMDATA:LOCAL |= 장소_전망
	SIF GROUPMATCH(LOCAL, 11)
		ROOMDATA:LOCAL |= 장소_좁다
	SIF GROUPMATCH(LOCAL, 9,10,44,13,23,33,43)
		ROOMDATA:LOCAL |= 장소_넓은
	SIF GROUPMATCH(LOCAL, 3,4)||INRANGE(LOCAL, 14,20)||INRANGE(LOCAL, 24,30)||INRANGE(LOCAL, 34,40)
		ROOMDATA:LOCAL |= 장소_선잠_가능
	SIF GROUPMATCH(LOCAL, 11)
		ROOMDATA:LOCAL |= 장소_머물지않는다
	SIF GROUPMATCH(LOCAL, 7,8,42,44)
		ROOMDATA:LOCAL |= 장소_신체측정
	SIF INRANGE(LOCAL, 14,19)|| INRANGE(LOCAL, 24,29)|| INRANGE(LOCAL, 34,39)
		ROOMDATA:LOCAL |= 장소_원룸
	SIF GROUPMATCH(LOCAL, 11)
		ROOMDATA:LOCAL |= 장소_과소
	SIF INRANGE(LOCAL, 14,19)|| INRANGE(LOCAL, 24,29)|| INRANGE(LOCAL, 34,39)
		ROOMDATA:LOCAL |= 장소_Private
	SIF GROUPMATCH(LOCAL, 44)
		ROOMDATA:LOCAL |= 장소_공공장소
NEXT
;;
IF ITEM:주택 ==2
	MAXROOM = 1424
ELSEIF ITEM:주택 ==3
	MAXROOM = 1434
ELSEIF ITEM:주택 ==4
	MAXROOM = 1445
ENDIF
ENTRANCE = 1401
피난처 = 1402

SIF GET_MAPID(거점_술벌레) != MAIN_MAP
	거점_술벌레 = 1406
IF ITEM:주택 ==2
	MAP_PAGES = 1
ELSEIF ITEM:주택 ==3
	MAP_PAGES = 2
ELSEIF ITEM:주택 ==4
	MAP_PAGES = 3
ENDIF

MAPNAME:1 = %CALLNAME:MASTER%의 저택 1-2층
MAPNAME:2 = %CALLNAME:MASTER%의 저택 2-3층
MAPNAME:3 = %CALLNAME:MASTER%의 저택 지하-1층

@DEFAULT_OWNER_14
Default초기위치 = 1414
거점_주인 = 0


code:
@SKIP_MOVE_14(ARG:0, ARG:1)

;현재위치 취득
LOCAL:0 = CFLAG:MASTER:현재위치
SIF ARG:1
	LOCAL = ARG:1

;잠정 목적지에 직접 이동할 수 있는 경우
IF CAN_MOVE(LOCAL, ARG) & 1
	;거기에 이동
	RETURN ARG
ENDIF

;막다른 골목으로부터 갈 수 있는 장소는 고정이므로, 거기를 목표로 한다
SELECTCASE LOCAL
CASE 1408
	RETURN 1407
CASE 1414 TO 1422
	RETURN 1423
CASE 1424 TO 1432
	RETURN 1433
CASE 1434 TO 1441
	RETURN 1443
CASE 1444
	RETURN 1442
ENDSELECT

;직접 이동할 수 없는 경우,  1개가까운 위치를 잠정 목적지로 다시 설정해 루프
;지점 추가시 요점 보충(전케이스 수정하는 것)
SELECTCASE ARG
	CASE 1401
		RETURN 1413
	CASE 1402
		IF INRANGE(LOCAL, 1409,1412)
			RETURN 1409
		ELSE
			RETURN 1413
		ENDIF
	CASE 1403 TO 1407
		RETURN 1413
	CASE 1408
		RETURN 1407
	CASE 1409
		IF GROUPMATCH(LOCAL,1412)
			RETURN 1410
		ELSE
			RETURN 1402
		ENDIF
	CASE 1410
		RETURN 1409
	CASE 1411
		RETURN 1409
	CASE 1412
		RETURN 1410
	CASE 1413
		IF INRANGE(LOCAL, 1414,1433)
			RETURN 1423
		ELSEIF INRANGE(LOCAL, 1434,1444)
			RETURN 1443
		ELSE
			RETURN 1402
		ENDIF
	CASE 1414 TO 1422
		RETURN 1423
	CASE 1423
		IF INRANGE(LOCAL, 1424,1432)
			RETURN 1433
		ELSE
			RETURN 1413
		ENDIF
	CASE 1424 TO 1432
		RETURN 1433
	CASE 1433
		RETURN 1423
	CASE 1434 TO 1442
		RETURN 1443
	CASE 1443
		RETURN 1413
	CASE 1444
		RETURN 1442
ENDSELECT


code:
;
;	입력한 장소 ID가 자택 내부라면0-99에 갈아넣는 함수
;
;	FLAG:(XXX + 자택 장소 ID)에 FLAG:(XXX + CHK_INHOME(자택 장소 ID))라고 하는 형태로 사용하고 있다
;
;ARG, 장소 ID
@CHK_INHOME(ARG)
#FUNCTION
SIF MAIN_MAP == GET_MAPID(ARG)
	RETURNF (ARG) % 100
RETURNF ARG
;
;	장소에 대한 판정을 함수화할 수 없을까 만든 것.
;
@CHK_PLACE(ARG, ARGS, ARG:1 = 0, MAPID = -1)
#FUNCTION
#DIM MAPID
#DIM TARGET_INHOME
IF MAPID == -1
	MAPID = GET_MAPID(ARG:1)
ENDIF
IF MAPID == MAIN_MAP
	TARGET_INHOME = CFLAG:ARG:현재위치 % 100
ELSE
	TARGET_INHOME = -1
ENDIF

IF ARGS == "MASTER"
	SIF CFLAG:ARG:현재위치 == CFLAG:MASTER:현재위치
		RETURNF 1
ELSEIF ARGS == "ADDRESS"
	SIF CFLAG:ARG:현재위치 == ARG:1 + MAPID * 100 && CFLAG:ARG:현재위치 != 1000
		RETURNF 1
ELSEIF ARGS == "FLAG"
	SIF CFLAG:ARG:현재위치 == FLAG:(ARG:1)
		RETURNF 1
ENDIF
RETURNF 0

;
;	장소에 대한 입력을 함수화할 수 없을까 만든 것
;
@SET_PLACE(ARG, ARGS, ARG:1 = 0, MAPID = -1)
#DIM MAPID
#DIM TARGET_INHOME
IF MAPID == -1
	MAPID = GET_MAPID(ARG:1)
ENDIF

IF ARGS == "MASTER"
	CFLAG:ARG:현재위치 = CFLAG:MASTER:현재위치
ELSEIF ARGS == "ADDRESS"
	CFLAG:ARG:현재위치 = ARG:1 + MAPID * 100
ELSEIF ARGS == "FLAG"
	CFLAG:ARG:현재위치 = FLAG:(ARG:1)
ENDIF
;-------------------------------------------------
;
;	입력한 MAPID가 MAIN_MAP와 일치하는 경우에 0을 돌려주는 함수
;	IF CFLAG:캐릭터:데이트중의 종류에서는 반드시 사용하는 것
;
;	입력 :MAIN_MAP, 0, 1, ... , MAIN_MAP-1, MAIN_MAP+1, ...
;	출력:             0, 1, 2, ... ,    MAIN_MAP, MAIN_MAP+1, ...
;MAPID_DATE, 기본 CFLAG:~:데이트중을 안에 넣는다
;-------------------------------------------------
@CHK_DATENOW(MAPID_DATE)
#FUNCTION
#DIM MAPID_DATE
SIF MAPID_DATE < MAIN_MAP
	RETURNF MAPID_DATE + 1
SIF MAPID_DATE == MAIN_MAP
	RETURNF 0
SIF MAPID_DATE > MAIN_MAP
	RETURNF MAPID_DATE

;-------------------------------------------------
;장소 ID가 속하는 MAPID를 돌려주는 함수
;ARG, 장소 ID
;-------------------------------------------------
@GET_MAPID(ARG)
#FUNCTION
RETURNF ARG / 100

@GET_DATE_PLACE(ARG)
#FUNCTION
RETURNF ARG % 100 % 10
;-------------------------------------------------
;이른바 ROUND 함수 판정
;ARG <= ARG:1 <= ARG:2라면 1을, 그렇지 않으면 0을 돌려준다
;-------------------------------------------------
@CHK_FOCUS(ARG, ARG:1, ARG:2)
#FUNCTION
;SIF CALC_FOCUS(ARG, ARG:1, ARG:2) != ARG:1
;	RETURNF 0
;RETURNF 1
SIF INRANGE(ARG:1, ARG:0, ARG:2)
	RETURNF 1
SIF ARG > ARG:2
	PRINT ARG:0 > ARG:2 에러
RETURNF 0
;-------------------------------------------------
;이른바 ROUND 함수 출력
;-------------------------------------------------
@CALC_FOCUS(ARG, ARG:1, ARG:2)
#FUNCTION
SIF ARG >= ARG:1
	RETURNF ARG
SIF ARG	:1 >= ARG:2
	RETURNF ARG:2
RETURNF ARG:1

;-------------------------------------------------
;재택 판정
;CALL		USER
;ARG		캐릭터 번호
;RETURN		0=거점에 없는,1=거점에 있는,2=참배길저편
;COMMENT	지정 캐릭터가 거점에 있을까 판정
;-----------------------------------------------------------
@AT_HOME(ARG)
#FUNCTION
RETURNF IN_HOME(CFLAG:ARG:현재위치)

;-------------------------------------------------
;거점 판정
;CALL		USER
;ARG		장소 ID
;RETURN		0=거점은 아닌,1=거점,2=참배길저편
;COMMENT	지정 캐릭터가 거점에 있을까 판정
;-----------------------------------------------------------
@IN_HOME(ARG)
#FUNCTION
LOCAL = MAXROOM
IF ARG == LOCAL
	RETURNF 2
ELSEIF CHK_FOCUS(MINROOM(), ARG, LOCAL)
	RETURNF 1
ELSE
	RETURNF 0
ENDIF

;-------------------------------------------------
;지역구분 판정 함수
;하쿠레이 신사 맵에 있어서의 「하쿠레이 신사」 「삼요정의집」 「몽환유적」과 같은 지역구분
;지점 ID→AREA→MAP→환상향 전체, 같은
;외출 MAP의 스폿보다 약간 조잡합니다(약속 장소의 지정에는 사용할 수 없는 정도? )
;MAIN_MAP를 참조해 거점 맵 판정/외출 맵 판정을 바꾸고 있는 점에 주의
;하쿠레이 신사 거주시에 하쿠레이 신사의 외출 맵상에서의 번호를 건네주어도 능숙하게 동작하지 않는다
;-------------------------------------------------
@MAP_AREANAME(PLACE_ID)
#FUNCTIONS
#LOCALSIZE 1
#LOCALSSIZE 1
#DIM PLACE_ID
SIF PLACE_ID == OMANEKIBEYA()
	RETURNF "방"
SIF PLACE_ID == SUKIMA()
	RETURNF "스키마 공간"
SELECTCASE GET_MAPID(PLACE_ID)
CASE 0
	RETURNF MAP0_AREANAME(PLACE_ID)
CASE 1
	RETURNF MAP1_AREANAME(PLACE_ID)
CASE 2
	RETURNF MAP2_AREANAME(PLACE_ID)
CASE 3
	RETURNF MAP3_AREANAME(PLACE_ID)
CASE 4
	RETURNF MAP4_AREANAME(PLACE_ID)
CASE 5
	RETURNF MAP5_AREANAME(PLACE_ID)
CASE 6
	RETURNF MAP6_AREANAME(PLACE_ID)
CASE 7
	RETURNF MAP7_AREANAME(PLACE_ID)
CASE 8
	RETURNF MAP8_AREANAME(PLACE_ID)
CASE 9
	RETURNF MAP9_AREANAME(PLACE_ID)
CASE 10
	RETURNF MAP10_AREANAME(PLACE_ID)
CASE 13
	RETURNF MAP13_AREANAME(PLACE_ID)
CASE 14
	RETURNF MAP14_AREANAME(PLACE_ID)
ENDSELECT

@MAP10_AREANAME(PLACE_ID)
#FUNCTIONS
#LOCALSIZE 1
#LOCALSSIZE 1
#DIM PLACE_ID
IF MAIN_MAP == 10
ELSE
	SELECTCASE PLACE_ID
	CASE 101
		RETURNF "회안통로"
	CASE 1050, 1060, 1070
		RETURNF "달의도시"
	CASE 1080, 1090
		RETURNF "월 도교외"
	CASEELSE
		RETURNF "월면"
	ENDSELECT
ENDIF


code:
@FIELDMAP
PRINTL ■■■■■■■■■■■■■
PRINT ■■
CALL MAPPOINT("그", 67)
PRINT
CALL MAPPOINT("달", 102)
PRINT ─
CALL MAPBUTTON("괴", 10)
PRINTL 　■■
PRINT ■
CALL MAPPOINT("유", 68)
PRINT ─┴─
CALL MAPBUTTON("강", 6)
PRINT ─┐└
CALL MAPBUTTON("수", 8)
PRINTL ┐■
PRINT ■　　　　　│　├
CALL MAPBUTTON("산", 7)
PRINT ┤
CALL MAPPOINT("공", 89)
PRINTL ■
PRINT ■
CALL MAPPOINT("무", 57)
PRINT ┐　│　│：
CALL MAPPOINT("묘", 74)
PRINTL 　■
PRINT ■　　　└─
CALL MAPBUTTON("숲", 5)
PRINTL ┌┘：　　■
PRINT ■　　　홍　││
CALL MAPPOINT("저", 33)
PRINTL ：　　■
PRINT ■　　　│　├┴
CALL MAPBUTTON("연", 3)
PRINT ÷
CALL MAPPOINT("홍", 34)
PRINTL 　■
PRINT ■
CALL MAPPOINT("영", 45)
PRINT ┬
CALL MAPBUTTON("죽", 4)
PRINTL ┐│　　：　　■
PRINT ■　　│　├
CALL MAPBUTTON("리", 2)
PRINT
CALL MAPBUTTON("땅", 9)
PRINTL 　　■
PRINT ■
CALL MAPPOINT("태", 47)
PRINT ┘
CALL MAPBUTTON("절", 1)
PRINT └──┴
CALL MAPBUTTON("박", 0)
PRINTL 　■
PRINTL ■■　　　　　　　　　■■
PRINTL ■■■■■■■■■■■■■

@MAPBUTTON(ARGS, ARG)
SETCOLOR C_P_BLUE
SELECTCASE ARG
	CASE MAIN_MAP
		SIF !CHK_DATENOW(CFLAG:MASTER:데이트중)
			SETCOLOR 0 , 255, 0
	CASE 0
		SIF CFLAG:MASTER:데이트중 == ARG
			SETCOLOR 0 , 255, 0
	CASE 1
		SIF CFLAG:MASTER:데이트중 == ARG
			SETCOLOR 0 , 255, 0
	CASE 2
		SIF CFLAG:MASTER:데이트중 == ARG
			SETCOLOR 0 , 255, 0
	CASE 3
		SIF CFLAG:MASTER:현재위치 == 안개의호수 || CFLAG:MASTER:현재위치 == 얼음집
			SETCOLOR 0 , 255, 0
	CASE 4
		SIF CFLAG:MASTER:현재위치 >= 죽림입구 && CFLAG:MASTER:현재위치 <= 토끼동굴
			SETCOLOR 0 , 255, 0
	CASE 5
		SIF CFLAG:MASTER:현재위치 >= 숲의입구 && CFLAG:MASTER:현재위치 <= 재고의길
			SETCOLOR 0 , 255, 0
	CASE 6
		SIF CFLAG:MASTER:현재위치 >= 중유의길 && CFLAG:MASTER:현재위치 <= 삼도천
			SETCOLOR 0 , 255, 0
	CASE 7
		;SIF CFLAG:MASTER:데이트중 == ARG && CFLAG:MASTER:현재위치 != 마요히가
		;	SETCOLOR 0 , 255, 0
	CASE 8
		SIF CFLAG:MASTER:데이트중 == ARG && CFLAG:MASTER:현재위치 != 천계
			SETCOLOR 0 , 255, 0
	CASE 9
		SIF CFLAG:MASTER:데이트중 == ARG
			SETCOLOR 0 , 255, 0
	CASE 10
		SIF CFLAG:MASTER:현재위치 == 회안통로
			SETCOLOR 0 , 255, 0
ENDSELECT
PRINTBUTTON ARGS, ARG
RESETCOLOR

@MAPPOINT(ARGS, ARG)
SELECTCASE ARG
	CASE 33
		SIF CFLAG:MASTER:현재위치 == 폐양관
			SETCOLOR 0 , 255, 0
		PRINT 저
	CASE 34
		SIF CFLAG:MASTER:현재위치 >= 정문 && CFLAG:MASTER:현재위치 <= 지하실
			SETCOLOR 0 , 255, 0
		PRINT 홍
	CASE 45
		SIF CFLAG:MASTER:현재위치 == 영원정
			SETCOLOR 0 , 255, 0
		PRINT 영
	CASE 47
		SIF CFLAG:MASTER:현재위치 == 무명의언덕 || CFLAG:MASTER:현재위치 == 태양의밭
			SETCOLOR 0 , 255, 0
		PRINT 태
	CASE 57
		SIF CFLAG:MASTER:현재위치 == 무연총
			SETCOLOR 0 , 255, 0
		PRINT 무
	CASE 67
		SIF CFLAG:MASTER:현재위치 == 피안
			SETCOLOR 0 , 255, 0
		PRINT 그
	CASE 68
		SIF CFLAG:MASTER:현재위치 == 백옥루정원 || CFLAG:MASTER:현재위치 == 백옥루
			SETCOLOR 0 , 255, 0
		PRINT 유
	CASE 74
		;SIF CFLAG:MASTER:현재위치 == 마요히가
		;	SETCOLOR 0 , 255, 0
		PRINT 묘
	CASE 89
		SIF CFLAG:MASTER:현재위치 == 천계
			SETCOLOR 0 , 255, 0
		PRINT 공
	CASE 102
		SIF CFLAG:MASTER:현재위치 >= 달의도시 && CFLAG:MASTER:현재위치 <= 고요의바다
			SETCOLOR 0 , 255, 0
		PRINT 월
ENDSELECT
;PRINTBUTTON ARGS, (ARG / 10)
RESETCOLOR


code:
;-----------------------------------------
;일·연회 관련
;-----------------------------------------
@ENKAI_MAP_SETTING(ARG)
SELECTCASE ARG

ENDSELECT
;-----------------------------------------
;직장, 연회회장의 장소 ID를 돌려주는 함수
;ARGS,"연회"or"일"
;TCHARA, ARGS=="일"의 경우가 일하는 캐릭터 ID
;출력, 직장, 연회회장의 장소 ID
;-----------------------------------------
@GET_JOBPLACE(ARGS, TCHARA = 0)
#FUNCTION
#DIM 대상ID
#DIM 대상맵
#DIM TCHARA
#DIM OUTID
IF ARGS == "연회"
	대상ID = FLAG:32
ELSEIF ARGS == "일" && TCHARA != 0
	대상ID = CFLAG:TCHARA:직장
ELSE
	RETURNF 0
ENDIF
RETURNF GET_MAP_REPLACEMENT(대상ID)


code:
;--------------------------------------------------
;	MAP_MANAGE.ERB
;	이사 패치 관리
;				공개 개시：2015/09/14
;				최종 갱신：2015/10/17
;--------------------------------------------------
;
;실장이 끝난 상태：
;	"[400]이동"시 맵 표시
;	"[400]이동"시 이동 불능 판정
;	MASTER 원거리이동
;	지점 관련성 응답 처리
;	지명 캐릭터라인 취득
;	목욕탕, 청소, 공부, 훈련의 커맨드 표시 판정
;	CHARA 귀가 관련
;	CHARA 목욕탕 관련
;	일, 연회 관계
;미실장：
;	기색 짐작의 실장
;	그 외
;------------------------------------------
;"이동하는"으로 표시되는 맵 화면을 표시시킨다
;이사 계획에서는 MAIN_MAP 이외는 ODEKAKEMAP를 사용할 예정이었다
;요점 참조 COMF400_이동. ERB
;------------------------------------------
@MAP_VIEWING
TRYCALLFORM MAP_VIEWING_{MAIN_MAP}

;------------------------------------------
;기색 표시를 자택인가 그렇지 않은 것처럼 따라 처리를 바꿀 수 있도록(듯이) 한 GETMAP
;요점 참조 COMF400_이동. ERB, 호출원
;요점 참조 MAP_0.ERB
;ARG, 장소 ID
;------------------------------------------
@GETMAP(ARG)
IF MAIN_MAP == GET_MAPID(ARG)
	TRYCALLFORM GETMAP_{MAIN_MAP}(ARG)
ELSE
ENDIF
;------------------------------------------
;사이에 얼마든지 CALL GETMAP를 사이에 둔 맵을 써 일으키는 것이 귀찮았기 때문에 만든 함수
;------------------------------------------
@PRINTMAP(ARGS, ARG, ARGS:1, ARG:1, ARGS:2, ARG:2, ARGS:3, ARG:3, ARGS:4)
#DIM 지점수

FOR 지점수, 0,5
	PRINTFORM %ARGS:지점수%
	IF !ARG:지점수
		PRINTL
		BREAK
	ENDIF
	CALL GETMAP(ARG:지점수)
NEXT

;------------------------------------------
;초대방의 이름 캐릭터라인을 돌려준다. 초대되기 전은 TARGET의 초대방캐릭터라인을 돌려준다
;호출원:NAME_FROM_PLACE()
;ARG, VOID
;------------------------------------------
@OMANEKI_PLACE(ARG)
#FUNCTIONS
#DIMS PNAME
#DIM OMANEKI_TARGET
IF CFLAG:MASTER:초대
	OMANEKI_TARGET = CFLAG:MASTER:초대
ELSE
	OMANEKI_TARGET = TARGET
ENDIF
SIF ARG
	OMANEKI_TARGET = ARG

PNAME = %CALLNAME:(OMANEKI_TARGET)%

IF TEQUIP:목욕탕플레이
	PNAME = %PNAME%의 욕실
ELSE
	SELECTCASE OMANEKI_TARGET
		CASE 80;히에다노
				PNAME = 히에다 저택
		CASEELSE
			IF OUTROOF(CFLAG:OMANEKI_TARGET:자택위치)
				PNAME = %PNAME%의 거주지
			ELSE
				PNAME = %PNAME%의 방
			ENDIF
	ENDSELECT
ENDIF
RETURNF PNAME

;------------------------------------------
;참배길(출입구)의 장소 ID를 돌려준다
;------------------------------------------
@GET_ENTRANCE(MAPID)
#FUNCTION
#DIM MAPID
;	//ODEKAKEMAP 사용시
SIF MAPID != MAIN_MAP
	RETURNF MAPID * 100

IF GET_EXISTMAP(MAPID)
	RETURNF ENTRANCE
ELSE
	RETURNF MAPID * 100
ENDIF
;------------------------------------------
;장소 ID가 MAPID의 참배길(출입구)이나 판정한다
;MAPID를 생략 했을 경우는 MAPID에 ARG의 소속 MAP를 대입한다
;ARG:장소 ID
;MAPID：대상 MAP
;------------------------------------------
@CHK_ENTRANCE(ARG, MAPID = 999)
#FUNCTION
#DIM MAPID
;	// MAPID가 생략 되었을 경우
SIF MAPID == 999
	MAPID = GET_MAPID(ARG)
;	//ODEKAKEMAP 사용시
SIF ARG == GET_ENTRANCE(MAPID)
	RETURNF 1
;출발 전용의 현관(뒷문), 무엇인가를 위해서(때문에) 구별할 수 있도록(듯이) 2로 해 둔다
SIF MAPID == 7 && ARG == 732
	RETURNF 2
RETURNF 0
;------------------------------------------
;	이사의 표시와 처리
;------------------------------------------
@SET_MAINHOME
;
;멤버의 기상시간재설정
;
PRINTL 자택을 설정할 수 있습니다.
PRINTL 어디로 설정하겠습니까?
;SETCOLOR C_YELLOW
;	PRINTFORML 요괴의 산·산정은 막 실장했기에 오류가 발생할 확률이 높습니다
RESETCOLOR
FOR LOCAL, 0,15
	SIF GET_EXISTMAP(LOCAL)
		PRINTFORML [{LOCAL}] %GET_MAPNAME(LOCAL)%
NEXT
IF DAY
	DRAWLINE
	PRINTL [100]캔슬
ENDIF
$LOOP
INPUT
LOCAL:1 = RESULT
IF GET_EXISTMAP(RESULT)
	FLAG:운세뽑기계약 = 0
	CALL SET_ENKAI_LOCATIONDISPLAY
	FOR LOCAL, 1, CHARANUM
		;내방시간
		CFLAG:LOCAL:내방시간 = CSVCFLAG(LOCAL, 352)
		;귀가시간
		CFLAG:LOCAL:귀가시간 = CSVCFLAG(LOCAL, 353)
		;취침시간
		CFLAG:LOCAL:취침시간 = CSVCFLAG(LOCAL, 354)
		;기상시간
		CFLAG:LOCAL:기상시간 = CSVCFLAG(LOCAL, 355)

		CFLAG:LOCAL:신사거주 = 0

		CFLAG:LOCAL:초기위치 = CSVCFLAG (LOCAL, 311)
		CFLAG:LOCAL:자택위치 = CSVCFLAG (LOCAL, 358)
	NEXT
	CALL MAP_DEFAULTRESIDENT(LOCAL:1)
		;자물쇠를 채워 문을 잠금
		VARSET LOCK

	FOR LOCAL, 1, CHARANUM
		CALL CHARA_SLEEP, LOCAL, 0
	NEXT
ELSEIF RESULT == 100
ELSE
	GOTO LOOP
ENDIF
SIF FLAG:역극 && CFLAG:(FLAG:역극):출금 && MAIN_MAP == GET_MAPID(CSVCFLAG(FLAG:역극, 311))
	CFLAG:MASTER:초기위치 = CSVCFLAG(FLAG:역극, 311)

@HAS_DUPLICATE_KEY, ARG
#FUNCTION
	FOR LOCAL, 1, CHARANUM
		IF CFLAG:LOCAL:311 == ARG
			SIF TALENT:LOCAL:연모
				RETURNF 1
		ENDIF
	NEXT

@MAP_DEFAULTRESIDENT(ARG)
;ARG=맵 번호
FLAG:더부살이캐릭터 = 0
MAIN_MAP = ARG
FOR LOCAL, 1, CHARANUM
	IF MAP_거주자(MAIN_MAP, LOCAL)
		;PRINTFORML %CALLNAME:LOCAL% {CFLAG:LOCAL:저택에거주}맵{MAIN_MAP}
		IF (MAIN_MAP==13||MAIN_MAP==14)&& CFLAG:LOCAL:저택에거주>0
			CFLAG:LOCAL:초기위치=CFLAG:LOCAL:저택에거주
			CFLAG:LOCAL:신사거주 = CFLAG:LOCAL:초기위치
		ELSE
			CFLAG:LOCAL:초기위치 = CSVCFLAG(LOCAL, 311)
			CFLAG:LOCAL:신사거주 = CFLAG:LOCAL:초기위치
			;PRINTFORML %CALLNAME:LOCAL%가 거점에 삽니다
			IF LOCAL == 57
				CFLAG:RESULT:신사거주 = 55
				CFLAG:RESULT:초기위치 = 55
			ELSEIF  LOCAL == 71
				CFLAG:71:신사거주 = 54
				CFLAG:71:초기위치 = 54
			ENDIF
		ENDIF
	ELSE
		PRIVATEROOM:(CFLAG:LOCAL:초기위치 % 100) = 0
		CFLAG:LOCAL:초기위치 = SUKIMA()
		CFLAG:LOCAL:신사거주 = 0
	ENDIF
	CFLAG:LOCAL:현재위치 = CFLAG:LOCAL:초기위치
	CFLAG:LOCAL:데이트중 = MAIN_MAP
NEXT
PRINTFORMW %GET_MAPNAME(ARG)%로 설정했습니다
CALL ROOMSETTING
CFLAG:MASTER:초기위치 = Default초기위치
CFLAG:MASTER:현재위치 = CFLAG:MASTER:초기위치

@ROOMSETTING
#DIM R_ID
LOCAL:1 = 0
SUMIKOMI_ROOM = 0
TRYCCALLFORM ROOMSETTING_{MAIN_MAP}
	PRINTFORMW %GET_MAPNAME(MAIN_MAP)%의 방 정보를 설정했습니다
	IF FLAG:더부살이캐릭터 && SUMIKOMI_ROOM
		R_ID = SUMIKOMI_ROOM % 100
		ROOMDATA:R_ID |= 장소_이불
		ROOMDATA:R_ID |= 장소_옥내
		ROOMDATA:R_ID |= 장소_선잠_가능
		ROOMDATA:R_ID |= 장소_Private
		ROOMDATA:R_ID &= ~장소_과소
	ENDIF
CATCH
	PRINTFORMW 방 정보 설정에 실패했습니다
ENDCATCH
FOR LOCAL, 1, CHARANUM
	IF MAP_거주자(MAIN_MAP, LOCAL) && !CFLAG:LOCAL:출금
		;PRIVATEROOM 변수에, 거기의 집주인의 번호를 보존
		PRIVATEROOM:(CFLAG:LOCAL:초기위치 % 100) = LOCAL
	 	SIF CFLAG:LOCAL:집주인후보
			LOCAL:1 ++
	ENDIF
NEXT

IF !Default초기위치 || Default초기위치 / 100 != MAIN_MAP
	SIF !LOCAL:1||MAIN_MAP>=13
		GOTO SONOMAMA

	PRINTFORMW 이 맵에는 방 후보가 다수 존재합니다.
	SIF DAY <= 1
		PRINTFORMW 첫날 한정으로, 필요 신뢰도에 관계없이 방을 선택할 수 있습니다.
	PRINTFORML
	FOR LOCAL, 1, CHARANUM
		IF MAP_거주자(MAIN_MAP, LOCAL) && CFLAG:LOCAL:집주인후보
			LOCAL:1 ++
			SIF CFLAG:LOCAL:더부살이필요신뢰도 > CFLAG:LOCAL:신뢰도 && DAY > 1
				SETCOLOR C_L_GRAY
			IF MAIN_MAP == 0
				LOCALS = %STR:(CFLAG:LOCAL:집주인후보)%
			ELSE
				LOCALS = %STR:(CFLAG:LOCAL:집주인후보 + 8000)%
			ENDIF
			PRINTFORML [{LOCAL}] - %LOCALS%　집주인 :%CALLNAME:LOCAL% 필요 신뢰도:{CFLAG:LOCAL:더부살이필요신뢰도}
			RESETCOLOR
		ENDIF
	NEXT

	PRINTFORML [0] - 그대로
	$LOOP
	INPUT
	IF MAP_거주자(MAIN_MAP, RESULT) && CFLAG:RESULT:집주인후보
		IF CFLAG:RESULT:더부살이필요신뢰도 > CFLAG:RESULT:신뢰도 && DAY > 1
			PRINTFORMW %CALLNAME:RESULT%는 그만큼 %마스터를% 신뢰하고 있지 않다
			GOTO LOOP
		ENDIF
		거점_주인 = RESULT
		Default초기위치 = CFLAG:RESULT:집주인후보
		ROOMDATA:(Default초기위치 % 100) |= 장소_이불
		PRINTFORMW %STR:(CFLAG:RESULT:집주인후보 + (MAIN_MAP ?  8000 # 0) )%로 이사합니다
	ELSEIF !RESULT
		$SONOMAMA
		TRYCCALLFORM DEFAULT_OWNER_{MAIN_MAP}
		CATCH
			PRINTFORMW 방 정보 설정에 실패했습니다
		ENDCATCH
			IF MAIN_MAP == 0
				LOCALS = %STR:(Default초기위치)%
			ELSE
				LOCALS = %STR:(Default초기위치 + 8000)%
			ENDIF
			PRINTFORMW %LOCALS%로 이사합니다
	ELSE
		GOTO LOOP
	ENDIF

ENDIF


code:
@GET_EXISTMOB(ARG)
#FUNCTION
SIF GROUPMATCH(ARG, 3,4,9)
	RETURNF 1

;MASTER가 재택안 또한 모브와 같은 위치에 있다면 MAIN_MAP를 돌려준다
@WITH_MOB()
#FUNCTION
SIF AT_HOME(MASTER) && ROOMDATA:(CFLAG:MASTER:현재위치 % 100) & 장소_모브
	RETURNF MAIN_MAP

@MOB_YOGORE(ARG)
#FUNCTION
SELECTCASE ARG
	CASE 3
		RETURNF -3
	CASE 4
		SIF !GROUPMATCH(TIME:2, 1,6,7)
			RETURNF 1
	CASE 9
		SIF !GROUPMATCH(TIME:2, 1,6,7)
			RETURNF 2
ENDSELECT

@MOB_PLACE_3
FOR LOCAL, 1,100
	CLEARBIT ROOMDATA:LOCAL, 20
	SELECTCASE TIME:2
		CASE 2
			SIF GROUPMATCH(LOCAL, 2,6,7,8,9,27)
				ROOMDATA:LOCAL |= 장소_모브
		CASE 3
			SIF GROUPMATCH(LOCAL, 13,14,15)
				ROOMDATA:LOCAL |= 장소_모브
		CASE 4
			SIF GROUPMATCH(LOCAL, 17,18,19)
				ROOMDATA:LOCAL |= 장소_모브
		CASE 5
			SIF GROUPMATCH(LOCAL, 24,25)
				ROOMDATA:LOCAL |= 장소_모브
		CASE 6
			SIF GROUPMATCH(LOCAL, 6,28,30)
				ROOMDATA:LOCAL |= 장소_모브
			SIF LOCAL == 29 && CFLAG:50:현재위치 != 329
				ROOMDATA:LOCAL |= 장소_모브
	ENDSELECT
NEXT

@MOB_MESSAGE_3
IF FLAG:70
	PRINTFORML 홉고블린이 정지해 있다…
ELSEIF CFLAG:MASTER:현재위치 == 329
	PRINTFORML 홉고블린이 고양이를 돌보고 있다…
ELSE
	PRINTFORML 홉고블린이 일하고 있다…
ENDIF

@MOB_TURNENDEVENT_3
IF !FLAG:70
	IF CFLAG:MASTER:우후후
		PRINTFORML 홉고블린에게서 이곳은 공공의 공간이니 그런 행위는 지양해달라는 말을 들었다
		PRINTFORML %마스터는% 겸연쩍은 기분을 느꼈다
		BASE:무드 = 0
		FOR LOCAL, 0, CHARANUM
			CALL ENDUFUFU(LOCAL)
		NEXT
		TFLAG:106 = 0
		;MASTER와의 접촉 위치를 리셋
		CALL TOUCH_SET(0,0,0,1)
		;(은)는만 플래그를 오프
		TEQUIP:2 = 0
		TEQUIP:상반신은만상태 = 0
		;캐릭터 전원의 복재세팅
		FOR LOCAL, 0, CHARANUM
			CALL CLOTHES_SETTING_TRAIN(LOCAL)
			;윗도리탈의가끝난상태 플래그를 오프
			TEQUIP:LOCAL:5 = 0
		NEXT
	ELSEIF CFLAG:MASTER:현재위치 == 313
		CALL MAKANAI
	ENDIF
ENDIF

@MOB_TURNENDEVENT_4
IF !FLAG:70
	IF CFLAG:MASTER:우후후
		PRINTFORML %CALLNAME:MASTER%들을 보고 주위 이나바들이 꺅꺅 떠들기 시작하고, 나아가 그 소리를 주워들은 구경꾼이 모이기 시작했다
		PRINTFORML 도저히 일을 벌일 분위기는 아니다……
		BASE:무드 = 0
		FOR LOCAL, 0, CHARANUM
			CALL ENDUFUFU(LOCAL)
		NEXT
		TFLAG:106 = 0
		;MASTER와의 접촉 위치를 리셋
		CALL TOUCH_SET(0,0,0,1)
		;(은)는만 플래그를 오프
		TEQUIP:2 = 0
		;캐릭터 전원의 복재세팅
		FOR LOCAL, 0, CHARANUM
			CALL CLOTHES_SETTING_TRAIN(LOCAL)
			;윗도리탈의가끝난상태 플래그를 오프
			TEQUIP:LOCAL:5 = 0
		NEXT
	ELSEIF CFLAG:MASTER:현재위치 == 313
		CALL MAKANAI
	ENDIF
ENDIF

@MOB_PLACE_4
FOR LOCAL, 1,100
	CLEARBIT ROOMDATA:LOCAL, 20
	SELECTCASE TIME:2
		CASE 1 TO 7
			SIF GROUPMATCH(LOCAL, 7,8,9,21,22,31)
				ROOMDATA:LOCAL |= 장소_모브
	ENDSELECT
NEXT

@MOB_PLACE_9
FOR LOCAL, 1,100
	CLEARBIT ROOMDATA:LOCAL, 20
	IF GROUPMATCH(TIME:2, 1,6,7)
		SIF GROUPMATCH(LOCAL, 2,3,4,5,13,14,15,23,26,28,29,30,33,38)
			ROOMDATA:LOCAL |= 장소_모브
	ELSE
		SIF GROUPMATCH(LOCAL, 2,3,4,5,13,14,15,23,24,26,28,29,30,31,32,33,38)
			ROOMDATA:LOCAL |= 장소_모브
	ENDIF
NEXT

@ANIMALNAME()
#FUNCTIONS
SELECTCASE TIME:1 % 25
	;소형 포유류
	CASE 0
		LOCALS = 개
	CASE 1
		LOCALS = 고양이
	CASE 2
		LOCALS = 코알라
	CASE 3
		LOCALS = 고릴라
	CASE 4
		LOCALS = 저지데빌
	CASE 5
		LOCALS = 아르마딜로
	CASE 6
		LOCALS = 새끼멧돼지
	CASE 7
		LOCALS = 카피바라
	;대형 포유류
	CASE 8
		LOCALS = 개미핥기
	CASE 9
		LOCALS = 말
	CASE 10
		LOCALS = 소
	CASE 11
		LOCALS = 양
	CASE 12
		LOCALS = 알파카
	CASE 13
		LOCALS = 바다표범
	;초대형 포유류
	CASE 14
		LOCALS = 코끼리
	CASE 15
		LOCALS = 기린
	;조류
	CASE 16
		LOCALS = 히나
	CASE 17
		LOCALS = 펭귄
	CASE 18
		LOCALS = 넓적부리황새
	CASE 19
	;LOCALS = 좀비 페어리
		LOCALS = 공작
	CASE 20
		LOCALS = 타조
	;파충류
	CASE 21
		LOCALS = 악어
	CASE 22
		LOCALS = 코모도도마뱀
	CASE 23
		LOCALS = 버마왕뱀
	CASE 24
		LOCALS = 코끼리거북
ENDSELECT
RETURNF LOCALS

@MAKANAI
#DIM 기력회복량
#DIM 체력회복량

VARSET LOCAL
IF !DISHTYPE && !TFLAG:가게에서주는식사 && TIME:2 == 3
;식사할 수 없는 사람이 있는지를 체크
FOR LOCAL, 0, CHARANUM
	SIF TCVAR:LOCAL:공복시각 - TIME:1 > 0 && CFLAG:LOCAL:현재위치 == CFLAG:MASTER:현재위치
		LOCAL:1 ++
NEXT
IF !LOCAL:1 && !RAND:5
	TFLAG:가게에서주는식사 = 1
	PRINTFORML %MOB_NAME()%에게서 새참을 권유받았다
	PRINTFORML 받겠습니까?
	CALL ASK_YN
	IF RESULT
		PRINTFORML %마스터는% 정중히 거절했다
	ELSE
		SELECTCASE RAND:5
			CASE 0,1
				PRINTFORML 대충 먹을 만하다
				체력회복량 = 100
				기력회복량 = 300
			CASE 2,3
				PRINTFORML 꽤 입맛을 돋운다
				체력회복량 = 150
				기력회복량 = 400
			CASE 4
				PRINTFORML 이건 맛있다!
				체력회복량 = 300
				기력회복량 = 500
		ENDSELECT
		PRINTFORMW %CALLNAME:MASTER%\@GET_TARGETNUM() ?  들# \@는 출출하던 배를 채웠다
		TIME += 15
		FOR LOCAL, 0, CHARANUM
			IF CFLAG:LOCAL:현재위치 == CFLAG:MASTER:현재위치
				CALL RECOVER(LOCAL, 체력회복량,"체력")
				CALL RECOVER(LOCAL, 기력회복량,"기력")
				CALL 만복도상승(LOCAL,"경식")
				PRINTFORML 체력+{체력회복량}(%CALLNAME:LOCAL%)
				PRINTFORML 기력+{기력회복량}(%CALLNAME:LOCAL%)
			ENDIF
		NEXT
	ENDIF
ENDIF
ENDIF
@MOB_NAME(ARG)
#FUNCTIONS
SIF !ARG
	ARG = MAIN_MAP
SELECTCASE ARG
CASE 3
	LOCALS = 홉고블린
CASE 4
	LOCALS = 이나바
CASE 9
	LOCALS = %ANIMALNAME()%
ENDSELECT
RETURNF LOCALS


code:
@OTHERREGIONS
#DIM 현재지점
#DIM 소요시간
#DIM 현재지MAPID
#DIM GOAL

CALL FIELDMAP
PRINTL 어디로 가겠습니까?
현재지MAPID = GET_MAPID(CFLAG:MASTER:현재위치)
;	// 신사가 표시되지 않는 것은 조금 외롭기 때문에
PRINTFORM [ 0] - %"하쿠레이 신사", 18, LEFT%
IF 현재지MAPID == 0
	SETCOLOR 0 , 255, 0
	PRINTFORM 현재지\@ FLAG:70 ?  %"   "% # %" "% \@
	RESETCOLOR
ELSEIF FLAG:70
	PRINTFORM 편도 {TIME_REQUIRED0(5000 + 현재지MAPID) * 3, 3, RIGHT}TSP
ELSE
	PRINTFORM 편도 {TIME_REQUIRED0(5000 + 현재지MAPID), 3, RIGHT}분
ENDIF
PRINTL
;	// 여기까지 신사 표시
FOR LOCAL, 5001, 5011
	IF LOCAL == 현재지MAPID + 5000
		PRINTFORM [{현재지MAPID, 2, RIGHT}] -
		PRINTFORM %NAME_FROM_PLACE(LOCAL), 21, LEFT%
		SETCOLOR 0 , 255, 0
		PRINTFORM 현재지\@ FLAG:70 ?  %"    "% # %"  "% \@
		RESETCOLOR
		SIF !(LOCAL % 2)
			PRINTL
		CONTINUE
	ENDIF
	PRINTFORM [{LOCAL - 5000, 2, RIGHT}] -
	PRINTFORM %NAME_FROM_PLACE(LOCAL), 18, LEFT%
	PRINTFORM 편도 \@ FLAG:70 ?  {TIME_REQUIRED(현재지MAPID, LOCAL - 5000) * 3, 3, RIGHT}TSP # {TIME_REQUIRED(현재지MAPID, LOCAL - 5000), 3, RIGHT}분 \@
	SIF !(LOCAL % 2)
		PRINTL
NEXT

PRINT [100] - 돌아간다
WHILE 1
	INPUT
	IF RESULT < 0 || 10 < RESULT
		PRINTL
		CLEARLINE 2
		CONTINUE
	ENDIF

	IF RESULT == 100
		RETURN RESULT
	ELSEIF RESULT == 현재지MAPID
		;전체 맵으로부터도 이동할 수 있지만 더욱 시간 걸리는, 덤기능이므로
		LOCAL:1 = 1
		현재지점 = (CFLAG:MASTER:현재위치 - (CFLAG:MASTER:데이트중 * 100)) / 10
		소요시간 = ABS(현재지점 - 0) * 3
		FOR LOCAL, 0, CHARANUM
			SIF CHK_DATENOW(CFLAG:LOCAL:데이트중)
				CFLAG:LOCAL:현재위치 = (CFLAG:LOCAL:데이트중 * 100) + (LOCAL:1 * 10)
		NEXT
		IF FLAG:70 == 1
			BASE:MASTER:TSP -= 소요시간 * 2
			IF TFLAG:운반
				BASE:MASTER:TSP -= 소요시간 / 3
				CFLAG:(TFLAG:운반):현재위치 = CFLAG:MASTER:현재위치
			ENDIF
		ELSEIF GETBIT(FLAG:순간이동, 0) && BASE:MASTER:TSP > 10  && !FLAG:데이트상대
			BASE:MASTER:TSP -= 소요시간 * 2
		ELSE
			TIME += 소요시간
			IF CHK_DATENOW(CFLAG:93:데이트중) && !GETBIT (FLAG:풀장, 0)
				TIME += 소요시간 / 2
				BASE:MASTER:체력 = MAX(BASE:MASTER:체력 - 50,500)
			ENDIF
		ENDIF
		RETURN RESULT
	ELSEIF RESULT == MAIN_MAP
		IF FLAG:70 && FLAG:데이트상대
			PRINTFORMW 돌아가겠다면 시간정지를 해제한 다음에 하자
			RETURN 100
		ENDIF
		CALL 외출처로부터귀가
		RETURN MAIN_MAP
	ELSE
		GOAL = RESULT
		소요시간 = TIME_REQUIRED(현재지MAPID, GOAL)
		;100분의 도중은 없습니다…

		IF FLAG:데이트상대 > 0 && 소요시간 >= 100
			PRINTW 너무 멀어서 한 번에는 못 간다
			CLEARLINE 2
		;자택으로부터 출발하는 처리
		ELSEIF GET_MAPID(CFLAG:MASTER:현재위치) == MAIN_MAP
			LOCAL:1 = 0
			FOR LOCAL, 1, CHARANUM
				SIF CFLAG:(LOCAL):동행
					LOCAL:1 ++
			NEXT
			IF LOCAL:1 == 1
				;100분의 도중은 없습니다…
				IF 소요시간 >= 100
					PRINTW 너무 멀어서 한 번에는 못 간다
					CLEARLINE 2
					RETURN 100
				ENDIF
				PRINTL 데이트를 하러 나갑니다
				FOR LOCAL, 1, CHARANUM
					IF CFLAG:(LOCAL):동행
						TFLAG:데이트전호감도 = CFLAG:LOCAL:2
						CALL SET_DATE(GOAL, LOCAL)
					ENDIF
				NEXT

			;같은 사람 데이트 처리(미설정)
			ELSEIF LOCAL:1 > 1
			;한사람
			ELSE
				IF FLAG:70 && GETBIT(FLAG:순간이동, 0)
					RESULT = 1
				ELSE
					PRINTL TSP를 소비하여 시간 경과 없이 이동할 수 있습니다.
					PRINTL TSP를 사용하겠습니까?
					CALL ASK_M("아니오", 1, @"예（TSP{소요시간 * 3}소비）", BASE:MASTER:TSP >= 소요시간 * 3)
				ENDIF

				IF RESULT == 0
					FLAG:70 = 0
					TIME += 소요시간
				ELSEIF RESULT == 1
					BASE:MASTER:TSP -= 소요시간 * 3
					FLAG:70 = 1
				ENDIF
				CALL SET_DATE(GOAL,0)
				RETURN GOAL
			ENDIF
			RETURN GOAL
		ELSEIF FLAG:데이트상대 > 0
			PRINTFORML %GET_MAPNAME(RESULT)%로 갑니다
			CALL SET_DATE(RESULT, (FLAG:데이트상대))
			RETURN RESULT
		ELSEIF GETBIT(FLAG:순간이동, 0) && BASE:MASTER:TSP > 소요시간 * 3 && !FLAG:데이트상대
			BASE:MASTER:TSP -= 소요시간 * 3
		ELSEIF FLAG:70
			IF BASE:MASTER:TSP < 소요시간 * 3
				PRINTW TSP가 부족합니다
				CLEARLINE 2
			ELSE
				BASE:MASTER:TSP -= 소요시간 * 3
			ENDIF
		ELSE
			TIME += 소요시간
			IF CHK_DATENOW(CFLAG:93:데이트중) && !GETBIT (FLAG:풀장, 0)
				TIME += 소요시간 / 2
				BASE:MASTER:체력 = MAX(BASE:MASTER:체력 - 5 * (소요시간), 500)
			ENDIF
		ENDIF
		FOR LOCAL, 0, CHARANUM
			IF CHK_DATENOW(CFLAG:LOCAL:데이트중)
				CFLAG:LOCAL:현재위치 = GET_ENTRANCE(RESULT)
				CFLAG:LOCAL:데이트중 = RESULT
			ENDIF
		NEXT
		RETURN RESULT
	ENDIF
WEND


code:
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;방에 있는 인원수 취득
;CALL		USER
;ARG		방NO
;RETURN		인원수
;COMMENT
;-----------------------------------------------------------
@IN_ROOM_NUMBER(ARG)
#FUNCTION
RETURNF CMATCH(CFLAG:현재위치, ARG)
[SKIPSTART]
VARSET LOCAL
FOR LOCAL, 0, CHARANUM
	SIF CFLAG:LOCAL:현재위치 == ARG
		LOCAL:1 ++
NEXT
RETURNF LOCAL:1
[SKIPEND]

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;방최소수참조
;CALL		USER
;ARG		VOID
;RETURN		최소 방번호
;COMMENT	장소를 추가했을 경우, RETRUNF의 수를 변경의 일
;-----------------------------------------------------------

@MINROOM()
#FUNCTION
SELECTCASE MAIN_MAP
	CASE 1
		RETURNF 101
	CASE 10
		RETURNF 1001
	CASEELSE
		RETURNF MAIN_MAP * 100 + 1
ENDSELECT

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;초대방
;CALL		USER
;ARG		VOID
;RETURN		초대방의 수치
;COMMENT	시인성 향상을 위해
;-----------------------------------------------------------
@OMANEKIBEYA()
#FUNCTION
RETURNF 98 + MAIN_MAP * 100

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;SUKIMA
;CALL		USER
;ARG		VOID
;RETURN		어디에도 없는 캐릭터가 보내지는 장소
;COMMENT	시인성 향상을 위해
;-----------------------------------------------------------
@SUKIMA()
#FUNCTION
RETURNF 99 + MAIN_MAP * 100

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;화장실이 있는 방
;CALL		USER
;ARG		장소 ID
;RETURNF		화장실의 장소인가 아닌가
;COMMENT	장소를 변경했을 경우, RETURNF를 변경의 일
;-----------------------------------------------------------

@IN_TOILET(ARG)
#FUNCTION
SIF ROOMDATA:(ARG % 100) & 장소_화장실 && IN_HOME(ARG)
	RETURNF 1
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;목욕탕이 있는 장소 판정
;CALL		USER
;ARG		판정 장소 ID
;RETURN		있다면 1, 없으면 0
;COMMENT	장소를 변경했을 경우, RETURNF를 변경의 일
;-----------------------------------------------------------
@BATHCHECK(ARG)
#FUNCTION
SIF ROOMDATA:(ARG % 100) & 장소_목욕탕 && IN_HOME(ARG)
	RETURNF 1
IF !IN_HOME(ARG)
	SELECTCASE ARG
		CASE 대중목욕탕, 옛지옥온천
			RETURNF 1
	ENDSELECT
ENDIF
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;신체측정할 수 있는 장소 판정
;CALL		USER
;ARG		판정 장소 ID
;RETURN		있다면 1, 없으면 0
;COMMENT	장소를 변경했을 경우, RETURNF를 변경의 일
;-----------------------------------------------------------
@MEASUREMENTCHECK(ARG)
#FUNCTION
SIF ROOMDATA:(ARG % 100) & 장소_신체측정 && IN_HOME(ARG)
	RETURNF 1
SIF GET_MAPID(ARG) == MAIN_MAP
	RETURNF 0
SELECTCASE ARG
	CASE 대중목욕탕, 옛지옥온천, 영원정
		RETURNF 1
ENDSELECT
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;목욕탕이 있는 방
;CALL		USER
;ARG		VOID
;RETURN		목욕탕의 장소
;COMMENT	장소를 변경했을 경우, RETURNF를 변경의 일
;-----------------------------------------------------------
@BATHROOM(ARG)
#FUNCTION
SIF !ARG
	ARG = CFLAG:MASTER:현재위치
SIF ROOMDATA:(ARG % 100) & 장소_목욕탕 && IN_HOME(ARG)
	RETURNF 1
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;이불이 있는 방
;CALL		USER
;ARG		판정 방NO
;RETURN		이불의 유무유라면 1
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@BEDROOM(ARG)
#FUNCTION
SIF ARG == 0
	ARG = CFLAG:MASTER:현재위치
IF ARG == OMANEKIBEYA()
	RETURNF 1
ELSEIF MAIN_MAP == GET_MAPID(ARG)
	SIF (ROOMDATA:(ARG % 100) & 장소_이불 && IN_HOME(ARG)) || ARG == CFLAG:MASTER:초기위치
		RETURNF 1
ENDIF
SELECTCASE ARG
	CASE 혼숙여관, 러브호텔, 주택가, OMANEKIBEYA()
		RETURNF 1
	CASE 540
		SIF TALENT:11:연모
			RETURNF 1
	CASE 550
		SIF TALENT:17:연모
			RETURNF 1
	CASE 630
		SIF TALENT:25:연모 || TALENT:26:연모
			RETURNF 1
	CASE 750
		SIF TALENT:43:연모
			RETURNF 1
	CASE 830
		SIF TALENT:31:연모 || TALENT:32:연모 || TALENT:33:연모
			RETURNF 1
	CASE 950
		SIF TALENT:36:연모 || TALENT:37:연모 || TALENT:38:연모 || TALENT:49:연모
			RETURNF 1
	CASE BATHROOM()
		;플레이매트
		SIF ITEM:20
			RETURNF 1
ENDSELECT
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;달구경 포인트
;CALL		USER
;ARG		판정 방NO
;RETURN		월이 보이는 장소라면 1
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@MOON_WATCH_POINT(ARG)
#FUNCTION
;옥외＋신사내의 실외
IF (!INROOM(ARG) && AT_HOME(MASTER) == 1) || OUTROOF(ARG)
	RETURNF 1
ELSE
	IF MAIN_MAP == GET_MAPID(ARG)
		SIF ROOMDATA:(ARG % 100) & 장소_달구경 && IN_HOME(ARG)
			RETURNF 1
	ENDIF
	SELECTCASE CHK_INHOME(ARG)
	;툇마루, 온천, 수양버들아래
	CASE 130, 명련사본당, 성덕도장, 상가거리, 술집소로, 서당, 주택가, 영원정, 모리야신사본전, 백옥루
		RETURNF 1
	CASE OMANEKIBEYA()
		;누구의 방인가
		SELECTCASE CFLAG:MASTER:초대
		;지저 거주자
		CASE 36,37,38,49,60,64,83,84
			RETURNF 0
		ENDSELECT
		RETURNF 1
	CASEELSE
		RETURNF 0
	ENDSELECT
ENDIF
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;주방이 있는 방
;CALL		USER
;ARG		판정 방NO
;RETURN		주방의 유무유라면 1
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@KITCHEN(ARG)
#FUNCTION
SIF ARG == OMANEKIBEYA()
	RETURNF 1
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_주방 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG)
	CASE 주택가, OMANEKIBEYA()
		RETURNF 1
ENDSELECT
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;실내
;CALL		USER
;ARG		판정 방NO
;RETURN		실내인가 아닌가 일본식방이라면 1, 양실이라면 2
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@INROOM(ARG)
#FUNCTION
SIF ARG == OMANEKIBEYA()
	RETURNF 1
IF MAIN_MAP == GET_MAPID(ARG)
	IF MAIN_MAP == 3
		SIF (ROOMDATA:(ARG % 100) & 장소_옥내) && IN_HOME(ARG)
			RETURNF 2
	ELSEIF MAIN_MAP == 9
		SIF ARG >= 901 && ARG <= 913
			RETURNF 2
		SIF (ROOMDATA:(ARG % 100) & 장소_옥내) && IN_HOME(ARG)
			RETURNF 1
	ELSE
		SIF (ROOMDATA:(ARG % 100) & 장소_옥내) && IN_HOME(ARG)
			RETURNF 1
	ENDIF
ENDIF
SELECTCASE CHK_INHOME(ARG)
	CASE 명련사본당, 성덕도장, 서당, 혼숙여관, 대중목욕탕, 백옥루, 선인의저택, 영원정, 영원정안채, 키리사메마법점, 마요히가, 모리야신사본전, 옛지옥온천
		RETURNF 1
	CASE 폐양관, 객실, 식당, 대도서관, 지하실, 인형양관, 지령전, 러브호텔
		RETURNF 2
	CASEELSE
		RETURNF 0
ENDSELECT

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;창공
;CALL		USER
;ARG		판정 방NO
;RETURN		지붕 첨부인가 아닌가 지붕 없음이라면 1
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;토리이, 경내, 개수대, 뜰, 본전의뒤, 참배길, 수호신의숲, 함교
;지장길, 명련사경내, 묘지, 광장, 정문, 죽림입구, 미혹의샛길, 사각의죽림, 안개의호수, ,
;숲의입구, 고목의큰나무, 현무의늪, 산록의수해, 큰두꺼비의연못, 구천의폭포, 절경의언덕
;100의 배수는 외출시, 귀찮아서의로 데이트 도중도 전부 담기로 한←옥내 함수다행이다가, 처음은 옥외의것이 적은 실사응!
;함수명은 INROOM의 패러디
;-----------------------------------------------------------
@OUTROOF(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_창공 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG)
	CASE 110, 120, 지장길, 명련사경내, 묘지, 광장, 정문, 죽림입구, 미혹의샛길, 사각의죽림, 무명의언덕, 태양의밭, 안개의호수, 숲의입구, 고목의큰나무, 재고의길, 무연총, 중유의길, 삼도천, 피안, 백옥루정원, 현무의늪, 산록의수해, 큰두꺼비의연못, 구천의폭포, 절경의언덕, 산의호수, 모리야신사경내, 천계
		RETURNF 1
	CASE 100 TO 109,200 TO 209,300 TO 309,400 TO 409,500 TO 509,600 TO 609,700 TO 709,800 TO 809
		RETURNF 1
	CASEELSE
		RETURNF 0
ENDSELECT
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;전망이 좋은 장소
;CALL		USER
;ARG		판정 방NO
;RETURN		1:넓은 실내, 2:야외
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@OPENPLACE(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG) && ROOMDATA:(ARG % 100) & 장소_전망
	IF ROOMDATA:(ARG % 100) & 장소_옥내 && IN_HOME(ARG)
		RETURNF 1
	ELSE
		RETURNF 2
	ENDIF
ENDIF
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;선잠 가능 에리어
;CALL		USER
;ARG		판정 방NO
;RETURN		1:가능, 2:상시가능
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@CATNAP_PLACE(ARG, ARG:1)
#FUNCTION
SIF ARG:1 == CFLAG:ARG:초기위치 || ARG:1 == OMANEKIBEYA()
	RETURNF 2
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_선잠_가능 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG:1)
	;거실, 각부가게
	CASE 서당, 주택가
		RETURNF 1
	RETURNF 0
ENDSELECT
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;좁은 방
;CALL		USER
;ARG		판정 방NO
;RETURN		1:좁은, 2:좁지 않다
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@SMALL_PLACE(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_좁다 && IN_HOME(ARG)
		RETURNF 1
ENDIF
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;휴식가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:휴식 할 수 있다
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@휴식가능(ARG)
#FUNCTION
SIF ARG == OMANEKIBEYA()
	RETURNF 1
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_휴식 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG)
	CASE 객실, 식당, 대도서관, 서당, 혼숙여관, 러브호텔
		RETURNF 1
ENDSELECT
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;전투훈련가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:훈련할 수 있다
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@전투훈련가능(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_훈련 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG)
	CASE 백옥루정원
		RETURNF 1
ENDSELECT
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;공부가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:공부할 수 있다
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@공부가능(ARG)
#FUNCTION
SIF ARG == OMANEKIBEYA()
	RETURNF 1
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_공부 && IN_HOME(ARG)
		RETURNF 1
ENDIF
SELECTCASE CHK_INHOME(ARG)
;	CASE 240
	CASE 서당
		RETURNF 1
ENDSELECT
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;하늘의 소리
;CALL		USER
;ARG		판정 방NO
;RETURN		1:하늘의 목소리가 들린다
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@하늘의성가(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_하늘의소리 && IN_HOME(ARG)
		RETURNF 1
	SIF ITEM:제단 && CFLAG:MASTER:현재위치 == CFLAG:MASTER:311
		RETURNF 1
ENDIF
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;텃밭가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:텃밭을 생기는 장소
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@텃밭가능(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_채소밭 && IN_HOME(ARG)
		RETURNF 1
ENDIF
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;물긷기가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:물긷기를 할 수 있는 장소
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@물긷기가능(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(ARG)
	SIF ROOMDATA:(ARG % 100) & 장소_물긷기 && IN_HOME(ARG)
		RETURNF 1
ELSEIF CFLAG:MASTER:현재위치 == 안개의호수
	RETURNF 1
ELSEIF CFLAG:MASTER:현재위치 == 산의호수
	RETURNF 1
ENDIF
RETURNF 0
;FileName_COMMON.ERB ------------------------------- Rev1. 00
;빨래너는곳가능
;CALL		USER
;ARG		판정 방NO
;RETURN		1:빨래 너는 곳을 생기는 장소
;COMMENT	장소를 추가했을 경우, CASE를 변경의 일
;-----------------------------------------------------------
@빨래너는곳가능(ARG)
#FUNCTION
SIF ROOMDATA:(ARG % 100) & 장소_빨래너는곳 && IN_HOME(ARG)
	RETURNF 1
RETURNF 0

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;
;CALL		USER
;ARG		캐릭터 NO
;RETURNF	그 캐릭터의 현재의 지명  아마 MASTER 이외가 필요하게 될 기회는 한정되겠지만
;-----------------------------------------------------------
@PLACE_NAME(ARG)
#FUNCTIONS
IF !IN_HOME(CFLAG:ARG:현재위치) && CFLAG:ARG:현재위치 != OMANEKIBEYA()
	LOCALS = %DATENAME_SPOT()%
ELSEIF CHK_DATENOW(CFLAG:MASTER:데이트중) && CFLAG:MASTER:현재위치 != OMANEKIBEYA()
	LOCALS = %DATENAME_PLACE()%의 %DATENAME_SPOT()%
ELSE
	LOCALS = %NAME_FROM_PLACE(CFLAG:ARG:현재위치)%
ENDIF
RETURNF LOCALS

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;기본적인 GETMAP  대체로의 거점은 이것으로 k
;-----------------------------------------------------------
@GETMAP_BASIC(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
	NEXT
	IF 기색 == 1
		SETCOLOR 255, 100, 200
	ELSEIF 기색 == 2
		SETCOLOR 255, 100, 0
	ELSEIF 기색 == 3
		SETCOLOR 0, 120, 180
	ELSEIF ROOMDATA:(ARG % 100) & 장소_모브
		SETCOLOR C_D_PINK
	ENDIF
ENDIF
CALL GETMAP_YOGORE(ARG)

@GETMAP_YOGORE(ARG)
IF TALENT:MASTER:오방짐작 && FLAG:짐작모드 == 2
	IF ARG == 0
		SIF YOGORE:(CFLAG:MASTER:초기위치) >= 500 && YOGORE:(CFLAG:MASTER:초기위치) < 1000
			SETCOLOR 0xFFFF00
		SIF YOGORE:(CFLAG:MASTER:초기위치) > 1000 && YOGORE:(CFLAG:MASTER:초기위치) < 2000
			SETCOLOR 0xFFFF00
		SIF YOGORE:(CFLAG:MASTER:초기위치) >= 2000 && YOGORE:(CFLAG:MASTER:초기위치) < 3500
			SETCOLOR 0xFF00FF
		SIF YOGORE:(CFLAG:MASTER:초기위치) >= 3500 && YOGORE:(CFLAG:MASTER:초기위치) < 5000
			SETCOLOR 0xFF00FF
		SIF YOGORE:(CFLAG:MASTER:초기위치) >= 5000
			SETCOLOR 0xFF0000
	ELSE
		SIF YOGORE:(ARG) >= 500 && YOGORE:(ARG) < 1000
			SETCOLOR 0xFFFF00
		SIF YOGORE:(ARG) > 1000 && YOGORE:(ARG) < 2000
			SETCOLOR 0xFFFF00
		SIF YOGORE:(ARG) >= 2000 && YOGORE:(ARG) < 3500
			SETCOLOR 0xFF00FF
		SIF YOGORE:(ARG) >= 3500 && YOGORE:(ARG) < 5000
			SETCOLOR 0xFF00FF
		SIF YOGORE:(ARG) >= 5000
			SETCOLOR 0xFF0000
	ENDIF
ENDIF
SIF CFLAG:MASTER:현재위치 == ARG
	SETCOLOR 0 , 255, 0
PRINTBUTTON ((ARG % 100) > 9 ?  TOSTR((ARG % 100)) # TOFULL(TOSTR((ARG % 100)))), ARG
RESETCOLOR

@GETMAP_BUILDING(ARG, ARG:1, ARG:2)
IF !INRANGE(CFLAG:MASTER:현재위치, ARG:1, ARG:2) && INRANGE(CFLAG:ARG:현재위치, ARG:1, ARG:2)
	IF CFLAG:ARG:행동 == 5
		KEHAI = 2
	ELSEIF CFLAG:ARG:수면
		KEHAI = 3
	ELSE
		KEHAI = 1
	ENDIF
ENDIF

;장서 열람 판정
;
;거점/산책 MAP 양쪽 모두 사용할 수 있습니다
;MASTER의 현재위치를 던져 붐비면(자) 자료를 보여 줄지 어떨지를 판정
;반환값은 0혹은 「거점 MAP의 장소 ID」입니다
;산책 맵으로 어디어디(에)에서 자료 본 따라 주는 용
;PLACE_ID와 MASTER의 현재위치가 다른 경우는 상정하고 있습니다
;즉, 하쿠레이 신사에 있을 때에 아큐의 저택의 판정하면 안 돼
@IS_LIBRARY(PLACE_ID)
#FUNCTION
#DIM PLACE_ID              ;반드시 MASTER의 현재위치를 건네주는 것
#DIM DYNAMIC PLACE_LIBRARY
;PRINTFORML {PLACE_ID} : %NAME_FROM_PLACE(PLACE_ID)%
IF GET_MAPID(PLACE_ID) == MAIN_MAP
	SELECTCASE GET_MAPNAME(GET_MAPID(PLACE_ID))
	CASE "하쿠레이 신사"
	;MAP_하쿠레이 신사 연구 조수를 매일 하고 있었던 탓으로 누구라도 자료 열람할 수 있을 것 같은 이미지
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "몽환유적·제1자료실", "몽환유적·연구실", "몽환유적·제2자료실")
			PLACE_LIBRARY = PLACE_ID
	CASE "명련사"
	;MAP_명련사, 절/도장 모두 부탁하면 자료를 보여 줘그렇게
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "강당", "도장")
			PLACE_LIBRARY = PLACE_ID
	CASE "마을"
	;MAP_마을, 대본소와 개인택
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "스즈나안", "서당", "케이네댁", "아큐의 저택")
			PLACE_LIBRARY = PLACE_ID
	CASE "홍마관"
	;MAP_홍마관 우선 사용 조건이라든지 없기 때문에 소안내
		SIF NAME_FROM_PLACE(PLACE_ID) == "도서관"
			PLACE_LIBRARY = PLACE_ID
	CASE "미혹의 죽림"
	;MAP_미혹의 죽림, 이 맵 특히 도서실적인 것이 없다
		;영원정은 많이 장서가 있을 듯 하는 이미지
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "카구야방", "창고", "창고")
			PLACE_LIBRARY = PLACE_ID
	CASE "마법의숲"
	;MAP_마법의숲, 마법사들은 자료지비치겠지요
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "마리사댁·연구부가게", "인형의 관·연구실")
			PLACE_LIBRARY = PLACE_ID
	CASE "요괴의 산·산록"
	;MAP_마법의숲, 카센저택만
		SIF NAME_FROM_PLACE(PLACE_ID) == "선인의저택·서재"
			PLACE_LIBRARY = PLACE_ID
	CASE "지저"
	;MAP_지저, 사토리의 서재만
		SIF NAME_FROM_PLACE(PLACE_ID) == "서재"
			PLACE_LIBRARY = PLACE_ID
	CASE "저택"
		;PRINTFORML {PLACE_ID} : %NAME_FROM_PLACE(PLACE_ID)%
		SIF GROUPMATCH(NAME_FROM_PLACE(PLACE_ID), "이층·서재")
			PLACE_LIBRARY = PLACE_ID
	ENDSELECT
ELSE
	SELECTCASE GET_MAPNAME(GET_MAPID(PLACE_ID))
	CASE "하쿠레이 신사"
		SIF STR:(6000 + PLACE_ID / 10) == "몽환유적"
			PLACE_LIBRARY = 49
	CASE "명련사"
		SIF STR:(6000 + PLACE_ID / 10) == "명련사경내"
			PLACE_LIBRARY = 105
		SIF STR:(6000 + PLACE_ID / 10) == "성덕도장"
			PLACE_LIBRARY = 126
	CASE "인간 마을"
		SIF STR:(6000 + PLACE_ID / 10) == "상가거리"
			PLACE_LIBRARY = 213
		SIF STR:(6000 + PLACE_ID / 10) == "서당"
			PLACE_LIBRARY = 222
		SIF STR:(6000 + PLACE_ID / 10) == "주택가"
			PLACE_LIBRARY = 221
	CASE "안개의호수~홍마관"
		SIF STR:(6000 + PLACE_ID / 10) == "대도서관"
			PLACE_LIBRARY = 310
	CASE "미혹의 죽림"
		SIF STR:(6000 + PLACE_ID / 10) == "영원정안채"
			PLACE_LIBRARY = 427
	CASE "마법의숲"
		SIF STR:(6000 + PLACE_ID / 10) == "키리사메마법점"
			PLACE_LIBRARY = 513
		SIF STR:(6000 + PLACE_ID / 10) == "인형양관"
			PLACE_LIBRARY = 524
	CASE "삼도천~명계"
		[SKIPSTART]
		IF STR:(6000 + PLACE_ID / 10) == "마요히가"
			PLACE_LIBRARY = 630
		ENDIF
		IF STR:(6000 + PLACE_ID / 10) == "백옥루"
			PLACE_LIBRARY = 690
		ENDIF
		[SKIPEND]
	CASE "요괴의 산 (산록)"
		IF STR:(6000 + PLACE_ID / 10) == "선인의저택"
			PLACE_LIBRARY = 724
		ENDIF
	CASE "요괴의 산 (산정)"
		[SKIPSTART]
		IF STR:(6000 + PLACE_ID / 10) == "천계"
			PLACE_LIBRARY = 890
		ENDIF
		[SKIPEND]
	CASE "지저"
		IF STR:(6000 + PLACE_ID / 10) == "지령전"
			PLACE_LIBRARY = 920
		ENDIF
	CASE "꿈의 세계~달"
		[SKIPSTART]
		IF STR:(6000 + PLACE_ID / 10) == "와타츠키정"
			PLACE_LIBRARY = 1060
		ENDIF
		[SKIPEND]
	ENDSELECT
ENDIF
RETURNF CAN_READ_BOOK_COLLECTION(PLACE_LIBRARY)

;장서 열람 허락 판정
;·반드시 거점 맵의 장소 ID(상세한 지점의 (분)편)를 건네주는 것
;·MASTER가 그 장소에 있는 것이 전제로 처리를 짜고 있습니다
@CAN_READ_BOOK_COLLECTION(PLACE_ID)
#FUNCTION
#DIM PLACE_ID
SELECTCASE PLACE_ID
;몽환유적은 소안내
CASE 48, 49, 50
	RETURNF PLACE_ID
;절과 성덕도장은 소안내
CASE 105, 126
	RETURNF PLACE_ID
;스즈나안와 서당은 소안내
CASE 213, 222
	RETURNF PLACE_ID
;아큐의 저택
;사모/연모로 해방
CASE 221
	SIF !TALENT:80:연모 && !TALENT:80:사모
		RETURNF 0
	RETURNF PLACE_ID
;케이네택
CASE 224
	SIF FLAG:역극 == 67
		RETURNF PLACE_ID
	SIF CFLAG:67:신뢰도 < 30
		RETURNF 0
	SIF CFLAG:67:현재위치 == CFLAG:MASTER:현재위치
		RETURNF PLACE_ID
;도서관은 소안내
CASE 310
	RETURNF PLACE_ID
;카구야 방
CASE 414
	SIF GROUPMATCH(FLAG:역극, 52, 53, 62, 72)
		RETURNF PLACE_ID
	SIF !TALENT:62:연모 && !TALENT:62:사모
		RETURNF 0
	SIF CFLAG:62:현재위치 == CFLAG:MASTER:현재위치
		RETURNF PLACE_ID
;창고/창고의 수색은 느슨하고
;누군가 한사람 동석 하고 있으면 좋아
CASE 424, 427
	SIF GROUPMATCH(FLAG:역극, 52, 53, 62, 72)
		RETURNF PLACE_ID
	SIF GROUPMATCH(CFLAG:MASTER:현재위치, CFLAG:52:현재위치, CFLAG:53:현재위치, CFLAG:62:현재위치, CFLAG:72:현재위치)
		RETURNF PLACE_ID
;마리사 택의 연구실
;다소의 신뢰도로 k
CASE 513
	SIF FLAG:역극 == 11
		RETURNF PLACE_ID
	SIF CFLAG:11:신뢰도 < 30
		RETURNF 0
	SIF CFLAG:11:현재위치 == CFLAG:MASTER:현재위치
		RETURNF PLACE_ID
;인형관의 연구실
CASE 524
	SIF GROUPMATCH(FLAG:역극, 17, 102)
		RETURNF PLACE_ID
	SIF INRANGE(CFLAG:MASTER:초기위치, 521, 531)
		RETURNF PLACE_ID
	SIF !TALENT:17:연모 && !TALENT:17:사모 && !TALENT:102:연모 && !TALENT:102:사모
		RETURNF 0
	SIF GROUPMATCH(CFLAG:MASTER:현재위치, CFLAG:17:현재위치, CFLAG:102:현재위치)
		RETURNF PLACE_ID
;선인 저택의 서재
CASE 724
	SIF FLAG:역극 == 43
		RETURNF PLACE_ID
	SIF INRANGE(CFLAG:MASTER:초기위치, 720, 730)
		RETURNF PLACE_ID
	SIF !TALENT:43:연모 && !TALENT:43:사모
		RETURNF 0
	SIF CFLAG:43:현재위치 == CFLAG:MASTER:현재위치
		RETURNF PLACE_ID
;사토리의 서재
;동거(同居) 해도 신뢰도 50 필요
CASE 920
	SIF FLAG:역극 == 49
		RETURNF PLACE_ID
	SIF CFLAG:49:신뢰도 < 50
		RETURNF 0
	SIF INRANGE(CFLAG:MASTER:초기위치, 902, 926)
		RETURNF PLACE_ID
	SIF !TALENT:49:연모 && !TALENT:49:사모
		RETURNF 0
	SIF CFLAG:49:현재위치 == CFLAG:MASTER:현재위치
		RETURNF PLACE_ID
CASE 1422
	RETURNF PLACE_ID
ENDSELECT


code:
@GET_EXISTMAP(ARG)
#FUNCTION
SIF GROUPMATCH(ARG, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
	RETURNF 1
SIF ITEM:주택==1&&ARG==13
	RETURNF 1
SIF ITEM:주택>=2&&ARG==14
	RETURNF 1
;ARG 13 = 주택, 14 = 저택 KR판 고유기능

;------------------------------------------
;대상맵의 통칭 캐릭터라인을 돌려준다
;COMF410_청소. ERB, 호출원
;요점 참조 MAP_COMM_0.ERB
;ARG, MAPID
;ARG:1, 캐릭터 ID
;------------------------------------------
@GET_MAPNAME(ARG, ARG:1 = 0)
#FUNCTIONS
#DIMS PNAME
SELECTCASE ARG
	CASE 0
		PNAME = 하쿠레이 신사
	CASE 1
		PNAME = 명련사
	CASE 2
		PNAME = 인간 마을
	CASE 3
		PNAME = 안개의호수~홍마관
	CASE 4
		PNAME = 미혹의 죽림
	CASE 5
		PNAME = 마법의숲
	CASE 6
		PNAME = 삼도천~명계
	CASE 7
		PNAME = 요괴의 산 (산록)
	CASE 8
		PNAME = 요괴의 산 (산정)
	CASE 9
		PNAME = 지저
	CASE 10
		PNAME = 꿈의 세계~달
	CASE 13
		PNAME = 주택
	CASE 14
		PNAME = 저택
	CASEELSE
		PNAME = 수수께끼의 영역
ENDSELECT
RETURNF PNAME

;FileName_COMMON.ERB ------------------------------- Rev1. 00
;목욕탕을 내쫓아지는 앞
;CALL		USER
;ARG		VOID
;RETURN		탈출처의 장소
;COMMENT	장소를 변경했을 경우, RETURNF를 변경의 일
;-----------------------------------------------------------
@KICKOUT(ARG)
#FUNCTION
IF MAIN_MAP == GET_MAPID(CFLAG:MASTER:현재위치)
	SELECTCASE MAIN_MAP
		CASE 0
			RETURNF KICKOUT_0()
		CASE 1
			RETURNF KICKOUT_1()
		CASE 2
			RETURNF KICKOUT_2()
		CASE 3
			RETURNF KICKOUT_3()
		CASE 4
			RETURNF KICKOUT_4()
		CASE 5
			RETURNF KICKOUT_5()
		CASE 6
			RETURNF KICKOUT_6()
		CASE 7
			RETURNF KICKOUT_7()
		CASE 8
			RETURNF KICKOUT_8()
		CASE 9
			RETURNF KICKOUT_9()
		CASE 13
			RETURNF KICKOUT_13()
		CASE 14
			RETURNF KICKOUT_14()
	ENDSELECT
ENDIF
RETURNF CFLAG:MASTER:전턴위치

;------------------------------------------
;맵 마다 이동할 수 없는 상황이 있는 경우에 호출한다(온천에 사람이 있는, 열쇠를 잡고 있는 등)
;요점 참조 COMF400_이동. ERB
;ARG, 장소 ID
;ARG:1, 캐릭터 ID, 생략 하면(자) 0=MASTER, 현상 캐릭터 이동 이외에서는 사용하지 않습니다
;------------------------------------------
@MAP_CAN_MOVE(ARG, ARG:1)
#FUNCTION
#DIM 집주인
#DIM 재택
IF ROOMDATA:(ARG % 100) & 장소_원룸
	집주인 = PRIVATEROOM:(ARG % 100)
	재택 = 0
	;당신
	IF ARG:1 == MASTER
		;자택이라면 가능
		IF ARG == Default초기위치||ITEM:28||MAIN_MAP==14
			RETURNF 1
		;동행이나 연모라면 넣는다(집주인 수면중도 가능
		ELSEIF CFLAG:집주인:동행 || TALENT:집주인:연모
			재택 = 1
		;집주인이 있어 일어나고 있다
		ELSEIF CFLAG:집주인:현재위치 == ARG
			IF SHIRAHU(집주인)
				재택 = 1
			ENDIF
		;집주인 이외의누군가가 있는, 이 사람 물건은 자기도 해도 좋다
		ELSEIF IN_ROOM_NUMBER(ARG)
			재택 = 1
		ENDIF
	;집주인은 넣는다
	ELSEIF ARG:1 == 집주인
		재택 = 1
	;그렇지 않은 캐릭터는 궁합이 100을 넘지 않았다고 안 돼
	ELSEIF RELATION:집주인:(ARG:1) > 100
		재택 = 1
	ENDIF
	IF !재택
		TFLAG:이동불능메시지 = 999
		RETURNF 0
	ENDIF
ENDIF

;;잠금 처리 ;KR판 구잔재 또는 오리지날
IF 	!(ARG:1 == MASTER)&&(ARG == CFLAG:MASTER:초기위치)&&(FLAG:창고잠금)&&!(CFLAG:(ARG:1):초기위치==ARG)
	SIF CFLAG:MASTER:현재위치==ARG
		PRINTFORML %CALLNAME:(ARG:1)%가 들어오려 했으나 잠겨 있어서 발길을 돌렸다.
	RETURNF 0
ENDIF
IF !MAIN_MAP
	SIF STR:ARG == ""
	RETURNF 0
ELSEIF STR:(8000 + ARG) == ""
	RETURNF 0
ENDIF
SELECTCASE MAIN_MAP
	CASE 0
		RETURNF MAP_CAN_MOVE_0(ARG, ARG:1)
	CASE 1
		RETURNF MAP_CAN_MOVE_1(ARG, ARG:1)
	CASE 2
		RETURNF MAP_CAN_MOVE_2(ARG, ARG:1)
	CASE 3
		RETURNF MAP_CAN_MOVE_3(ARG, ARG:1)
	CASE 4
		RETURNF MAP_CAN_MOVE_4(ARG, ARG:1)
	CASE 5
		RETURNF MAP_CAN_MOVE_5(ARG, ARG:1)
	CASE 6
		RETURNF MAP_CAN_MOVE_6(ARG, ARG:1)
	CASE 7
		RETURNF MAP_CAN_MOVE_7(ARG, ARG:1)
	CASE 8
		RETURNF MAP_CAN_MOVE_8(ARG, ARG:1)
	CASE 9
		RETURNF MAP_CAN_MOVE_9(ARG, ARG:1)
	CASE 13
		RETURNF MAP_CAN_MOVE_13(ARG, ARG:1)
	CASE 14
		RETURNF MAP_CAN_MOVE_14(ARG, ARG:1)
ENDSELECT
RETURNF 1

;------------------------------------------
;지점 관련성 응답 처리
;요점 참조 MOVEMENT_CAN_MOVE_0.ERB
;ARG, 현재지점
;ARG:1, 비교처 지점
;------------------------------------------
@CAN_MOVE(ARG, ARG:1)
#FUNCTION

IF MAIN_MAP == GET_MAPID(ARG)
SELECTCASE MAIN_MAP
	CASE 0
		RETURNF CAN_MOVE_0(ARG, ARG:1)
	CASE 1
		RETURNF CAN_MOVE_1(ARG, ARG:1)
	CASE 2
		RETURNF CAN_MOVE_2(ARG, ARG:1)
	CASE 3
		RETURNF CAN_MOVE_3(ARG, ARG:1)
	CASE 4
		RETURNF CAN_MOVE_4(ARG, ARG:1)
	CASE 5
		RETURNF CAN_MOVE_5(ARG, ARG:1)
	CASE 6
		RETURNF CAN_MOVE_6(ARG, ARG:1)
	CASE 7
		RETURNF CAN_MOVE_7(ARG, ARG:1)
	CASE 8
		RETURNF CAN_MOVE_8(ARG, ARG:1)
	CASE 9
		RETURNF CAN_MOVE_9(ARG, ARG:1)
	CASE 13
		RETURNF CAN_MOVE_13(ARG, ARG:1)
	CASE 14
		RETURNF CAN_MOVE_14(ARG, ARG:1)
ENDSELECT
ENDIF
RETURNF 0
;------------------------------------------
;장소 ID의 이름 캐릭터라인을 돌려준다
;요점 참조 신분 표시 관련/INFO.ERB, COMF400_이동. ERB, 호출원
;요점 참조 MAP_COMM_0.ERB
;ARG, 장소 ID
;------------------------------------------
@NAME_FROM_PLACE(ARG)
#FUNCTIONS
#DIM MAPID
#DIMS PNAME
PNAME =
MAPID = GET_MAPID(ARG)
IF TFLAG:망상중 == 1
	PNAME =수려 공간
ELSEIF ARG == OMANEKIBEYA()
;	초대방의 이름 처리
	RETURNF OMANEKI_PLACE()
ELSEIF ARG == SUMIKOMI_ROOM && FLAG:더부살이캐릭터 && MAPID == MAIN_MAP
	PNAME = %CALLNAME:(FLAG:더부살이캐릭터)%의 %SUMIKOMI_PN%
ELSEIF MAPID == MAIN_MAP
;
;	물건 맵내의 이름 처리
;
	SELECTCASE MAPID
		CASE 0
			PNAME = %MAP_PLACENAME_0(ARG)%
		CASE 1
			PNAME = %MAP_PLACENAME_1(ARG)%
		CASE 2
			PNAME = %MAP_PLACENAME_2(ARG)%
		CASE 3
			PNAME = %MAP_PLACENAME_3(ARG)%
		CASE 4
			PNAME = %MAP_PLACENAME_4(ARG)%
		CASE 5
			PNAME = %MAP_PLACENAME_5(ARG)%
		CASE 6
			PNAME = %MAP_PLACENAME_6(ARG)%
		CASE 7
			PNAME = %MAP_PLACENAME_7(ARG)%
		CASE 8
			PNAME = %MAP_PLACENAME_8(ARG)%
		CASE 9
			PNAME = %MAP_PLACENAME_9(ARG)%
		CASE 13
			PNAME = %MAP_PLACENAME_13(ARG)%
		CASE 14
			PNAME = %MAP_PLACENAME_14(ARG)%
		;CASE 10
		;	PNAME = %MAP_PLACENAME_10(ARG)%
	ENDSELECT
ELSE
;
;	도중외, 그외범위
;
	PNAME = %STR:(ARG)%
ENDIF
RETURNF PNAME

@MAP_거주자(ARG, ARG:1)
#FUNCTION
;CSV의 초기위치를 취득
IF MAIN_MAP==13||MAIN_MAP==14&& CFLAG:(ARG:1):저택에거주
	RETURNF 1
ELSE
	LOCAL = CSVCFLAG(ARG:1, 311)
ENDIF
SIF LOCAL == 99 || !LOCAL
	RETURNF 0
SIF LOCAL / 100 == ARG
	RETURNF 1

;-----------------------------------------
;비자택시에 갈아넣는 장소 ID를 돌려주는 함수
;ARG, 대상ID
;RETURNF, 갈아넣고가 끝난 대상ID
;-----------------------------------------
@GET_MAP_REPLACEMENT(ARG)
#FUNCTION
#DIM 대상맵
#DIM OUTID
OUTID = 0
대상맵 =  GET_MAPID(ARG)
SIF MAIN_MAP == 대상맵
	RETURNF ARG

SELECTCASE 대상맵
	CASE 0
		OUTID = MAP_SEARCH_REPLACEMENT_0(ARG)
	CASE 1
		OUTID = MAP_SEARCH_REPLACEMENT_1(ARG)
	CASE 2
		OUTID = MAP_SEARCH_REPLACEMENT_2(ARG)
	CASE 3
		OUTID = MAP_SEARCH_REPLACEMENT_3(ARG)
	CASE 4
		OUTID = MAP_SEARCH_REPLACEMENT_4(ARG)
	CASE 5
		OUTID = MAP_SEARCH_REPLACEMENT_5(ARG)
	CASE 6
		OUTID = MAP_SEARCH_REPLACEMENT_6(ARG)
	CASE 7
		OUTID = MAP_SEARCH_REPLACEMENT_7(ARG)
	CASE 8
		OUTID = MAP_SEARCH_REPLACEMENT_8(ARG)
	CASE 9
		OUTID = MAP_SEARCH_REPLACEMENT_9(ARG)
	CASE 13
		OUTID = MAP_SEARCH_REPLACEMENT_13(ARG)
	CASE 14
		OUTID = MAP_SEARCH_REPLACEMENT_14(ARG)
	CASEELSE
		OUTID = ARG
ENDSELECT

SIF OUTID > 0
	RETURNF OUTID

;そのキャラがあなたから見える位置にいるか
@CAN_SEE(ARG)
#FUNCTION
SIF CFLAG:MASTER:현재위치 == CFLAG:ARG:현재위치
	RETURNF 1
SIF CAN_MOVE(CFLAG:MASTER:현재위치, CFLAG:ARG:현재위치) == 2
	RETURNF 1
RETURNF 0

;-----------------------------------------
;私室に最も近い共用風呂を判定する関数
;ヒノキ風呂の効果を付与する際の判定に利用
;ARG =1のときは設置場所を表記する時に利用する
;基本は=0
;-----------------------------------------
@NEAR_BATH(ARG = 0)
#FUNCTION

;拠点でなければ判定しない
SIF !IN_HOME(CFLAG:MASTER:현재위치) && ARG == 0
	RETURNF 0
SELECTCASE CFLAG:MASTER:초기위치
	CASE 35, 32, 33, 34;博麗神社・三妖精の家地下室　三妖精の私室→30三妖精の家・風呂
		RETURNF 30
	CASE 51, 43, 44;夢幻遺跡・倉庫　夢美ちゆり私室→39夢幻遺跡・浴室
		RETURNF 39
	CASE 53, 15, 16, 17, 18, 19, 52, 54, 55;博麗神社・納戸　ほか、博麗神社内私室→13風呂
		RETURNF 13
	CASE 108, 109, 113 TO 120;命蓮寺・離れ　ほか命蓮寺内私室→112浴室
		RETURNF 112
	CASE 134, 125, 127, 128;聖徳道場・蔵　ほか道場内私室→133湯殿
		RETURNF 133
	CASE 230, 226, 221, 224, 225, 231 TO 235;人里・あなたの部屋　ほか私室→228貸切浴場
		RETURNF 228
	CASE 304, 303, 311, 312, 320, 321, 326, 329, 331;霧の湖～紅魔館・空き小屋　ほか私室→333大浴場
		RETURNF 333
	CASE 340 TO 342, 344 TO 346, 348;廃洋館と霧の湖周りの私室→338廃洋館・風呂
		RETURNF 338
	CASE 410 TO 414, 423, 424, 427, 428, 430;永遠亭・空き部屋or二階空き部屋　ほか、私室→420風呂
		RETURNF
	CASE 442, 432, 437, 439, 440, 443, 445;迷いの竹林・空き小屋　ほか、私室→441温泉
		RETURNF 441
	CASE 460, 451, 452, 457, 459, 463;夢幻館 空室　ほか、私室→454夢幻館 風呂
		RETURNF 454
	CASE 515, 512, 541 TO 544;魔法の森・魔理沙宅・倉庫　ほか、森の私室→514魔理沙宅・風呂
		RETURNF 514
	CASE 531, 521, 522, 523;魔法の森・人形の館・空き部屋　ほか私室→526人形の館・風呂
		RETURNF 526
	CASE 536, 535;魔法の森・エレン宅・倉庫　エレン私室→537エレン宅・風呂
		RETURNF 537
	CASE 618, 608, 609, 615, 616;是非直曲庁・空き部屋　ほか、私室→617風呂
		RETURNF 617
	CASE 625, 623, 624;冥界・あなたの部屋　妖夢、幽々子私室→627風呂
		RETURNF 627
	CASE 634, 633, 635, 638;八雲邸空部屋　紫藍橙私室→636風呂
		RETURNF 636
	CASE 644, 645;袿姫、磨弓私室→643霊長園の風呂
		RETURNF 643
	CASE 648;八千慧宅の寝室→646八千慧宅の風呂
		RETURNF 646
	CASE 651;早鬼宅の寝室→652早鬼宅の風呂
		RETURNF 652
	CASE 719, 734, 704, 706, 717, 733, 736;妖怪の山・山麓・秋姉妹の家・座敷or小屋　ほか私室→735水浴び場
		RETURNF 735
	CASE 728, 727;仙人の屋敷・空き部屋　華扇私室→721仙人の屋敷・風呂
		RETURNF 721
	CASE 810, 823, 807, 808, 809, 817, 818, 820;妖怪の山・山頂・山小屋or空室→825風呂
		RETURNF 825
	CASE 842, 839, 840, 841;比那名居邸物置　ほか、私室→837比那名居邸風呂
		RETURNF 837
	CASE 916, 943, 911, 912, 918, 919;地底・物置orあばら家→921風呂
		RETURNF 921
	CASEELSE
		RETURNF 0
ENDSELECT


code:
;지역간의 소요시간
@TIME_REQUIRED(출발지역, 행선지)
#FUNCTION
#DIM 출발지역
#DIM 행선지

SELECTCASE 출발지역
	CASE 0
		RETURNF TIME_REQUIRED0(행선지 + 5000)
	CASE 1
		RETURNF TIME_REQUIRED1(행선지 + 5000)
	CASE 2
		RETURNF TIME_REQUIRED2(행선지 + 5000)
	CASE 3
		RETURNF TIME_REQUIRED3(행선지 + 5000)
	CASE 4
		RETURNF TIME_REQUIRED4(행선지 + 5000)
	CASE 5
		RETURNF TIME_REQUIRED5(행선지 + 5000)
	CASE 6
		RETURNF TIME_REQUIRED6(행선지 + 5000)
	CASE 7
		RETURNF TIME_REQUIRED7(행선지 + 5000)
	CASE 8
		RETURNF TIME_REQUIRED8(행선지 + 5000)
	CASE 9
		RETURNF TIME_REQUIRED9(행선지 + 5000)
	CASE 10
		RETURNF TIME_REQUIRED10(행선지 + 5000)
	CASE 13
		RETURNF TIME_REQUIRED13(행선지 + 5000)
	CASE 14
		RETURNF TIME_REQUIRED14(행선지 + 5000)
	CASEELSE
		RETURNF 0
ENDSELECT
@TIME_REQUIRED0(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 0
	;명련사
	CASE 5001
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 30
	;인간 마을
	CASE 5002
		RETURNF 20
	;안개의호수~홍마관
	CASE 5003
		RETURNF 50
	;미혹의 죽림
	CASE 5004
		RETURNF 40
	;마법의숲
	CASE 5005
		RETURNF 50
	;삼도천
	CASE 5006
		SIF SHORTCUT(3) && CFLAG:MASTER:현재위치 >= 피안 && CFLAG:MASTER:현재위치 <= 백옥루
			RETURNF 5
		SIF SHORTCUT(5) == 1
			RETURNF 80
		RETURNF 70
	;요괴의 산(산록)
	CASE 5007
			RETURNF 40
	;요괴의 산(산정)
	CASE 5008
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 5
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 5
			SIF SHORTCUT(4) == 1
				RETURNF 50
		RETURNF 60
	;지저
	CASE 5009
		RETURNF 20
	;월
	CASE 5010
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 25
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 25
			SIF SHORTCUT(4) == 1
				RETURNF 70
		RETURNF 80
	CASE 5013,5014
		RETURNF 10
ENDSELECT
;명련사로부터
@TIME_REQUIRED1(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 30
	;명련사
	CASE 5001
		RETURNF 0
	;인간 마을
	CASE 5002
		RETURNF 10
	;안개의호수~홍마관
	CASE 5003
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 40
	;미혹의 죽림
	CASE 5004
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 20
	;마법의숲
	CASE 5005
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 40
	;삼도천
	CASE 5006
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 60
	;요괴의 산(산록)
	CASE 5007
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 70
	;요괴의 산(산정)
	CASE 5008
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 90
	;지저
	CASE 5009
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 5
		RETURNF 50
	;월
	CASE 5010
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 25
		RETURNF 110
	CASE 5013,5014
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 15
		RETURNF 40
ENDSELECT
;마을
@TIME_REQUIRED2(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 20
	;명련사
	CASE 5001
		RETURNF 10
	;인간 마을
	CASE 5002
		RETURNF 0
	;안개의호수~홍마관
	CASE 5003
		RETURNF 30
	;미혹의 죽림
	CASE 5004
		RETURNF 20
	;마법의숲
	CASE 5005
		RETURNF 30
	;삼도천
	CASE 5006
		RETURNF 50
	;요괴의 산(산록)
	CASE 5007
		RETURNF 60
	;요괴의 산(산정)
	CASE 5008
		RETURNF 80
	;지저
	CASE 5009
		RETURNF 40
	;월
	CASE 5010
		RETURNF 100
	CASE 5013,5014
		RETURNF 30
ENDSELECT

;안개의호수~홍마관
@TIME_REQUIRED3(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 50
	;명련사
	CASE 5001
		RETURNF 40
	;인간 마을
	CASE 5002
		RETURNF 30
	;안개의호수~홍마관
	CASE 5003
		RETURNF 0
	;미혹의 죽림
	CASE 5004
		RETURNF 50
	;마법의숲
	CASE 5005
		RETURNF 30
	;삼도천
	CASE 5006
		RETURNF 50
	;요괴의 산(산록)
	CASE 5007
		RETURNF 30
	;요괴의 산(산정)
	CASE 5008
		RETURNF 50
	;지저
	CASE 5009
		RETURNF 50
	;월
	CASE 5010
		RETURNF 70
	CASE 5013,5014
		RETURNF 60
ENDSELECT
;죽림
@TIME_REQUIRED4(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 40
	;명련사
	CASE 5001
		RETURNF 20
	;인간 마을
	CASE 5002
		RETURNF 20
	;안개의호수~홍마관
	CASE 5003
		RETURNF 50
	;미혹의 죽림
	CASE 5004
		RETURNF 0
	;마법의숲
	CASE 5005
		RETURNF 50
	;삼도천
	CASE 5006
		RETURNF 70
	;요괴의 산(산록)
	CASE 5007
		RETURNF 80
	;요괴의 산(산정)
	CASE 5008
		RETURNF 100
	;지저
	CASE 5009
		RETURNF 60
	;월
	CASE 5010
		RETURNF 120
	CASE 5013,5014
		RETURNF 50
ENDSELECT
;마법의숲
@TIME_REQUIRED5(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 50
	;명련사
	CASE 5001
		RETURNF 40
	;인간 마을
	CASE 5002
		RETURNF 30
	;안개의호수~홍마관
	CASE 5003
		RETURNF 30
	;미혹의 죽림
	CASE 5004
		RETURNF 50
	;마법의숲
	CASE 5005
		RETURNF 0
	;삼도천
	CASE 5006
		RETURNF 20
	;요괴의 산(산록)
	CASE 5007
		RETURNF 60
	;요괴의 산(산정)
	CASE 5008
		RETURNF 80
	;지저
	CASE 5009
		RETURNF 70
	;월
	CASE 5010
		RETURNF 100
	CASE 5013,5014
		RETURNF 60
ENDSELECT

;삼도천~명계
@TIME_REQUIRED6(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		SIF SHORTCUT(5) == 1
			RETURNF 80
		SIF SHORTCUT(5) == 2
			RETURNF 5
		RETURNF 70
	;명련사
	CASE 5001
		SIF SHORTCUT(5) == 1
			RETURNF 70
		SIF SHORTCUT(5) == 2
			RETURNF 20
		RETURNF 60
	;인간 마을
	CASE 5002
		SIF SHORTCUT(5) == 1
			RETURNF 60
		SIF SHORTCUT(5) == 2
			RETURNF 15
		RETURNF 50
	;안개의호수~홍마관
	CASE 5003
		SIF SHORTCUT(5) == 1
			RETURNF 60
		SIF SHORTCUT(5) == 2
			RETURNF 15
		RETURNF 50
	;미혹의 죽림
	CASE 5004
		SIF SHORTCUT(5) == 1
			RETURNF 80
		SIF SHORTCUT(5) == 2
			RETURNF 25
		RETURNF 70
	;마법의숲
	CASE 5005
		SIF SHORTCUT(5) == 1
			RETURNF 30
		SIF SHORTCUT(5) == 2
			RETURNF 10
		RETURNF 20
	;삼도천
	CASE 5006
		RETURNF 0
	;요괴의 산(산록)
	CASE 5007
		SIF SHORTCUT(5) == 1
			RETURNF 40
		SIF SHORTCUT(5) == 2
			RETURNF 10
		RETURNF 30
	;요괴의 산(산정)
	CASE 5008
		SIF SHORTCUT(5) == 1
			RETURNF 60
		SIF SHORTCUT(5) == 2
			RETURNF 15
		RETURNF 50
	;지저
	CASE 5009
		SIF SHORTCUT(5) == 1
			RETURNF 60
		SIF SHORTCUT(5) == 2
			RETURNF 15
		RETURNF 50
	;월
	CASE 5010
		SIF SHORTCUT(5) == 1
			RETURNF 80
		SIF SHORTCUT(5) == 2
			RETURNF 35
		RETURNF 70

	CASE 5013,5014
		SIF SHORTCUT(5) == 1
			RETURNF 90
		SIF SHORTCUT(5) == 2
			RETURNF 15
		RETURNF 80
ENDSELECT

;요괴의 산(산록)
@TIME_REQUIRED7(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 40
	;명련사
	CASE 5001
		RETURNF 70
	;인간 마을
	CASE 5002
		RETURNF 60
	;안개의호수~홍마관
	CASE 5003
		RETURNF 30
	;미혹의 죽림
	CASE 5004
		RETURNF 80
	;마법의숲
	CASE 5005
		RETURNF 60
	;삼도천
	CASE 5006
		RETURNF 30
	;요괴의 산(산록)
	CASE 5007
		RETURNF 0
	;요괴의 산(산정)
	CASE 5008
		RETURNF 20
	;지저
	CASE 5009
		RETURNF 20
	;월
	CASE 5010
		RETURNF 40
	CASE 5013,5014
		RETURNF 50
ENDSELECT

;요괴의 산(산정)
@TIME_REQUIRED8(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
			RETURNF 5
		SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
			RETURNF 5
		SIF SHORTCUT(4) == 1
			RETURNF 70
		RETURNF 60
	;명련사
	CASE 5001
		SIF SHORTCUT(4) == 1
			RETURNF 100
		SIF SHORTCUT(4) == 2
			RETURNF 30
		RETURNF 90
	;인간 마을
	CASE 5002
		SIF SHORTCUT(4) == 1
			RETURNF 90
		SIF SHORTCUT(4) == 2
			RETURNF 25
		RETURNF 80
	;안개의호수~홍마관
	CASE 5003
		SIF SHORTCUT(4) == 1
			RETURNF 60
		SIF SHORTCUT(4) == 2
			RETURNF 15
		RETURNF 50
	;미혹의 죽림
	CASE 5004
		SIF SHORTCUT(4) == 1
			RETURNF 110
		SIF SHORTCUT(4) == 2
			RETURNF 30
		RETURNF 100
	;마법의숲
	CASE 5005
		SIF SHORTCUT(4) == 1
			RETURNF 90
		SIF SHORTCUT(4) == 2
			RETURNF 25
		RETURNF 80
	;삼도천
	CASE 5006
		SIF SHORTCUT(4) == 1
			RETURNF 60
		SIF SHORTCUT(4) == 2
			RETURNF 15
		RETURNF 50
	;요괴의 산(산록)
	CASE 5007
		SIF SHORTCUT(4) == 1
			RETURNF 30
		SIF SHORTCUT(4) == 2
			RETURNF 10
		RETURNF 20
	;요괴의 산(산정)
	CASE 5008
		RETURNF 0
	;지저
	CASE 5009
		SIF SHORTCUT(4) == 1
			RETURNF 50
		SIF SHORTCUT(4) == 2
			RETURNF 15
		RETURNF 40
	;월
	CASE 5010
		RETURNF 20
	CASE 5013,5014
		RETURNF 70
ENDSELECT

;지저
@TIME_REQUIRED9(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 20
	;명련사
	CASE 5001
		RETURNF 50
	;인간 마을
	CASE 5002
		RETURNF 40
	;안개의호수~홍마관
	CASE 5003
		RETURNF 50
	;미혹의 죽림
	CASE 5004
		RETURNF 60
	;마법의숲
	CASE 5005
		RETURNF 70
	;삼도천
	CASE 5006
		RETURNF 50
	;요괴의 산(산록)
	CASE 5007
		RETURNF 20
	;요괴의 산(산정)
	CASE 5008
		RETURNF 40
	;지저
	CASE 5009
		RETURNF 0
	;월
	CASE 5010
		RETURNF 60
	CASE 5013,5014
		RETURNF 30
ENDSELECT
;월
@TIME_REQUIRED10(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 120
	;명련사
	CASE 5001
		RETURNF 110
	;인간 마을
	CASE 5002
		RETURNF 100
	;안개의호수~홍마관
	CASE 5003
		RETURNF 70
	;미혹의 죽림
	CASE 5004
		RETURNF 120
	;마법의숲
	CASE 5005
		RETURNF 100
	;삼도천
	CASE 5006
		RETURNF 70
	;요괴의 산(산록)
	CASE 5007
		RETURNF 40
	;요괴의 산(산정)
	CASE 5008
		RETURNF 20
	;지저
	CASE 5009
		RETURNF 60
	;월
	CASE 5010
		RETURNF 0
	CASE 5013,5014
		RETURNF 80
ENDSELECT

@TIME_REQUIRED13(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 10
	;명련사
	CASE 5001
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 15
		RETURNF 40
	;인간 마을
	CASE 5002
		RETURNF 30
	;안개의호수~홍마관
	CASE 5003
		RETURNF 60
	;미혹의 죽림
	CASE 5004
		RETURNF 50
	;마법의숲
	CASE 5005
		RETURNF 60
	;삼도천
	CASE 5006
		SIF SHORTCUT(3) && CFLAG:MASTER:현재위치 >= 피안 && CFLAG:MASTER:현재위치 <= 백옥루
			RETURNF 15
		SIF SHORTCUT(5) == 1
			RETURNF 90
		RETURNF 80
	;요괴의 산(산록)
	CASE 5007
			RETURNF 50
	;요괴의 산(산정)
	CASE 5008
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 15
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 15
			SIF SHORTCUT(4) == 1
				RETURNF 60
		RETURNF 70
	;지저
	CASE 5009
		RETURNF 30
	;월
	CASE 5010
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 35
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 35
			SIF SHORTCUT(4) == 1
				RETURNF 80
		RETURNF 80
	CASE 5013,5014
		RETURNF 0
ENDSELECT
@TIME_REQUIRED14(ARG)
#FUNCTION
SELECTCASE ARG
	;신사
	CASE 5000
		RETURNF 10
	;명련사
	CASE 5001
		SIF MAIN_MAP != 1 && ((CHK_DATENOW(CFLAG:56:데이트중) == 1 || TARGET == 56) && CFLAG:56:현재위치 == 성덕도장)
			RETURNF 15
		RETURNF 40
	;인간 마을
	CASE 5002
		RETURNF 30
	;안개의호수~홍마관
	CASE 5003
		RETURNF 60
	;미혹의 죽림
	CASE 5004
		RETURNF 50
	;마법의숲
	CASE 5005
		RETURNF 60
	;삼도천
	CASE 5006
		SIF SHORTCUT(3) && CFLAG:MASTER:현재위치 >= 피안 && CFLAG:MASTER:현재위치 <= 백옥루
			RETURNF 15
		SIF SHORTCUT(5) == 1
			RETURNF 90
		RETURNF 80
	;요괴의 산(산록)
	CASE 5007
			RETURNF 50
	;요괴의 산(산정)
	CASE 5008
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 15
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 15
			SIF SHORTCUT(4) == 1
				RETURNF 60
		RETURNF 70
	;지저
	CASE 5009
		RETURNF 30
	;월
	CASE 5010
			SIF SHORTCUT(1) && CFLAG:MASTER:현재위치 >= 모리야신사경내 && CFLAG:현재위치 <= 모리야신사본전
				RETURNF 35
			SIF SHORTCUT(2) && CFLAG:MASTER:현재위치 >= 천계
				RETURNF 35
			SIF SHORTCUT(4) == 1
				RETURNF 80
		RETURNF 80
	CASE 5013,5014
		RETURNF 0
ENDSELECT
;명련사로부터
;　　박테라자토호수 타케노모리강야마모리지월
;
;박　－　30　20　50　40　50　70　40　60　20 120
;사　30　－　10　40　20　40　60　70　90　50 110
;리　20　10　－　30　20　30　50　60　80　40 100
;호　50　40　30　－　50　30　50　30　50　50　70
;죽　40　20　20　50　－　50　70　80 100　60 120
;숲 50　40　30　30　50　－　20　60　80　70 100
;천　70　60　50　50　70　20　－　30　50　50　70
;산　80　70　60　30　80　60　30　－　20　20　40
;수 100　90　80　50 100　80　50　20　－　40　20
;지　20　50　40　50　60　70　50　20　40　－　60
;월 120 110 100　70 120 100　70　40　20　60　－
;산~숲은 강경유(수동)로 가면 10분 빠르다
;달은 기본적으로 수+20
@SHORTCUT(ARG)
#FUNCTION
SELECTCASE ARG
	;모리야조
	CASE 1
		SIF (FLAG:데이트상대 >= 31 && FLAG:데이트상대 <= 33) || (TARGET >= 31 && TARGET <= 33)
			RETURNF 1
	;천계조
	CASE 2
		SIF (FLAG:데이트상대 >= 34 && FLAG:데이트상대 <= 35) || (TARGET >= 34 && TARGET <= 35)
			RETURNF 1
	;명계조
	CASE 3
		SIF GROUPMATCH(FLAG:데이트상대, 23, 26, 30, 66, 76) || GROUPMATCH(TARGET, 23, 26, 30, 66, 76)
			RETURNF 1
	;천계
	CASE 4
		IF CFLAG:MASTER:현재위치 == 천계
			SIF SHORTCUT(2)
				RETURNF 2
			RETURNF 1
		ENDIF
	;명계
	CASE 5
		IF CFLAG:MASTER:현재위치 >= 피안 && CFLAG:MASTER:현재위치 <= 백옥루
			SIF SHORTCUT(3)
				RETURNF 2
			RETURNF 1
		ENDIF
	;죽림조
	CASE 6
		SIF GROUPMATCH(FLAG:데이트상대, 52, 53, 61, 62, 63, 67, 68, 72, 75, )
			RETURNF 1
ENDSELECT
RETURNF 0


code:
@일정경묘사(ARG)
;ARG는 캐릭터 캐릭터별의 정경묘사에 부디.
IF CFLAG:ARG:직종 == 48
	PRINTFORMW %ARG는% \@ TALENT:ARG:연모 ? %마스터를% 신경 쓰면서 # 바쁘게\@ 연회 준비를 하고 있다.
ELSEIF CFLAG:ARG:직종 == 50
	PRINTFORMW %ARG는% \@ TALENT:ARG:연모 ? %마스터를% 신경 쓰면서 # 묵묵히\@ 연회 정리를 하고 있다.
ELSEIF CFLAG:ARG:직종 == 46
	PRINTFORMW %ARG는% \@ TALENT:ARG:연모 ? %CALLNAME:MASTER%에 가끔식 시선을 돌리며 # \@놀고 있다.
ELSEIF CFLAG:ARG:직종 == 52
	SELECTCASE ARG
		;어쨌거나 여자 모임
		CASE 4
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 유유코와 최근 무서웠던 일을 이야기해 노란 비명을 지르고 있다.
			ENDSELECT
		CASE 26
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 미마와 함께 염라에의 험담으로 분위기를 살리고 있다.
			ENDSELECT
		CASE 32
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 신키와 유행의 네일 아트에 대해 말하고 있다.
			ENDSELECT
		CASE 55
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 에이린에 안티 에이징의 화제를 털고 있다.
			ENDSELECT
		CASE 66
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 유카리의 접시로부터 닭꼬치를 군것질하고 있다.
			ENDSELECT
		CASE 72
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 카나코와 즉 친구인 것을 서로 맹세하고 있다.
			ENDSELECT
		CASE 102
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 오키나와 반짝반짝의 많이 붙은 스맛폰을 서로 보이고 있다.
			ENDSELECT
		CASE 124
			SELECTCASE RAND:2
			CASE 0
				PRINTFORML %ARG는%, 여자들과 떠들썩하게 담소하고 있다.
			CASEELSE
				PRINTFORML %ARG는%, 뱌쿠렌과 서로의 머리카락의 예쁨을 칭찬하고 서로 뜯고.
			ENDSELECT
	ENDSELECT
		;여자 모임 여기까지
ELSE
	SELECTCASE ARG
		CASE 54
			PRINTFORMW %ARG는% 책에 박힌 얼굴을 들지도 않는다…
		CASE 57
			PRINTFORMW %ARG는% 한가롭게 %GET_JOBNAME(ARG)%를 하고 있다.
		CASE 67
			IF TIME >= 720 && TIME <= 780
				PRINTFORMW %ARG는% \@ TALENT:ARG:연모 ? %마스터를% 신경 쓰면서 # \@아이들과 %GET_JOBNAME(ARG)%를 취하고 있다.
			ELSE
				PRINTFORMW %ARG는% \@ TALENT:ARG:연모 ? %마스터를% 신경 쓰면서 # \@%GET_JOBNAME(ARG)%를 하고 있다.
			ENDIF
		CASE 70
			IF DAY % 7 == 3 || DAY % 7 == 4
				PRINTFORML %ARG는% 책을 읽으면서 %GET_JOBNAME(ARG)%를 하고 있다.
			ELSE
				PRINTFORML %ARG는% 내용을 확인하면서 정중하게 %GET_JOBNAME(ARG)%를 하고 있다.
			ENDIF
		CASEELSE
			PRINTFORML %ARG는% 기분 좋게 %GET_JOBNAME(ARG)%를 해내고 있다.
	ENDSELECT
ENDIF
@연회묘사(ARG)
;FLAG:연회개최플래그를 사용해 연회 종별로 나누어 써도 괜찮을지도

IF TCVAR:ARG:만취 == 0
	IF CFLAG:ARG:직종 == 49 && TALENT:ARG:연모 == 1
		PRINTFORMW %ARG는% %CALLNAME:MASTER%에 가끔씩 눈길을 주면서 연회를 즐기고 있다.
	ELSE
		PRINTFORML %ARG는% 연회를 즐기고 있다.
	ENDIF
ELSE
	IF TALENT:ARG:연모 == 1
		PRINTFORMW %ARG는% %CALLNAME:MASTER%에 가끔씩 눈길을 주면서 만취하고 있다.
	ELSE
		PRINTFORML %ARG는% 만취해서 녹초가 되어 있다.
	ENDIF
ENDIF
IF CFLAG:ARG:직종 == 51 && (BASE:ARG:술기운 > (MAXBASE:ARG:술기운 / 10) * 8)
	PRINTW 　취기는 꽤 남은 것 같다…
ELSEIF CFLAG:ARG:직종 == 51 && (BASE:ARG:술기운 > (MAXBASE:ARG:술기운 / 10) * 6)
	PRINTW 　취기가 해소되려면 아직 시간이 필요할 것 같다…
ELSEIF CFLAG:ARG:직종 == 51
	PRINTW 　조금 있으면 취기가 깰 것 같다…
ELSEIF CFLAG:ARG:직종 == 49 && (BASE:ARG:술기운 > (MAXBASE:ARG:술기운 / 10) * 6)
	IF TALENT:ARG:감정결여 && RAND:4
		ELSEIF !RAND:10
			IF !RAND:2
				PRINTFORMW 　%CALLNAME:ARG%의 눈이 감겨있다…
				PRINTFORMW 　나쁜 술버릇을 가진 것 같다
					TALENT:ARG:15 = -1
			ELSE
				PRINTFORMW 　%ARG는% 무척 즐거워 보인다
				PRINTFORMW 　좋은 느낌으로 취기가 올라온 것 같다
					TALENT:ARG:15 = 1
			ENDIF
		ELSE
			IF TALENT:ARG:15 == -1
				PRINTFORMW 　%ARG는% 몸을 비비 꼬고 있다…
			ELSEIF TALENT:ARG:15 == 1
				PRINTFORMW 　%ARG는% 의미도 없이 웃고 있다…
			ELSE
				PRINTW 　슬슬 취기에서 회복된 것 같다…
			ENDIF
	 	ENDIF
ELSEIF CFLAG:ARG:직종 == 49 && (BASE:ARG:술기운 > (MAXBASE:ARG:술기운 / 10) * 4)
	PRINTW 　조금 기분이 업되었다…
ELSEIF TALENT:ARG:술내성 == -2 || CFLAG:ARG:임신자각상태 == 1
	IF BASE:ARG:일량 >= (MAXBASE:ARG:일량 / 3) * 2
		PRINTW 　술은 마시지 않고 담소하고 있다…
	ELSEIF BASE:ARG:일량 >= (MAXBASE:ARG:일량 / 3)
		IF CFLAG:ARG:임신자각상태 == 1
			PRINTW 　정신을 바짝 차리고 술을 마시지 않으며 즐기고 있다…
		ELSEIF TALENT:ARG:술내성 == -2
			PRINTW 　여전히 술은 마시지 않는 것 같다…
		ENDIF
	ELSEIF TALENT:ARG:술내성 == -2 || CFLAG:ARG:임신자각상태 == 1
		PRINTW 　술에는 일절 손대지 않을 태세다…
	ENDIF
ELSEIF CFLAG:ARG:직종 == 49
	PRINTW 　아직 쌩쌩한 편이다…
ENDIF