code:
;벌레배틀
@COM483
#DIM CHARA
#DIM 同室人数
#DIM 参加可能人数
#DIM 順位
VARSET MUSHI_BATTLER
VARSET MUSHI_TEAM
VARSET MUSHI_POWER
;TARGETがメイン
IF TCVAR:TARGET:벌레배틀참가여부 == -1
	PRINTFORML %CALLNAME:TARGET%의 벌레들은 지쳐 있다. 배틀은 그만두자.
	RETURN -1
ENDIF

MUSHI_BATTLER:1 = MASTER
;参加可能人数チェック
参加可能人数 = 0
同室人数 = GET_TARGETNUM()
FOR LOCAL, 1, 同室人数 + 1
	CHARA = TARGET:LOCAL
	SIF !SHIRAHU(CHARA)
		CONTINUE
	SIF CFLAG:CHARA:행동 == 5
		CONTINUE
	SIF BASE:CHARA:기력 < 500 || BASE:CHARA:체력 < 500
		CONTINUE
	SIF TCVAR:CHARA:벌레배틀참가여부 == -1
		CONTINUE
	参加可能人数 ++
NEXT
;TARGETは実行判定で可能なはずなのでエラーチェック
IF 参加可能人数 == 0
	THROW
;参加者一人(TARGETのみ）
ELSEIF 参加可能人数 == 1
	;一人の時は確認をとる
	MUSHI_CHARANUM = 2
	CHARA = TARGET
	PRINTFORML %CALLNAME:CHARA%와 대전합니다　\@ CFLAG:CHARA:벌레배틀직접승리 ? ★직접승리완료 # \@
	PRINTFORM %CALLNAME:CHARA%의 벌레 배틀 파워：
	CALL COLOR_STAMP(MBP_RANK(CHARA) + 1, 0, "★", RANKCOLOR(MBP_RANK(CHARA) + 1), 1)
	PRINTL
	;＠試合前口上
	CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 0, CHARA, 0, 0, "구상색")
	CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 0, CHARA, 0, 0, "試合前")
	PRINTFORML %RESULTS%
	RESETCOLOR
	PRINTL [1] 대전개시!
	PRINTL [0] 역시 그만둔다
	INPUT
	SIF !RESULT
		RETURN -1
	;1はMASTER
	MUSHI_BATTLER:2 = CHARA
	TCVAR:CHARA:벌레배틀참가여부 = 2
ELSE
	MUSHI_CHARANUM = 1
	CALL MUSHIBATTLE_CHARASELECT(同室人数, 参加可能人数)
	;キャンセル
	SIF RESULT == -1
		RETURN -1
ENDIF

;セットアップ１
CALL MUSHI_BATTLE_SETUP_1
;見せ合い＆ムシ選出
CALL MUSHI_BATTLE_SELECTION
;セットアップ２
CALL MUSHI_BATTLE_SETUP_2
;TARGETを変更しておく
IF MUSHI_TEAM
	TARGET = MUSHI_BATTLER:3
ELSE
	TARGET = MUSHI_BATTLER:2
ENDIF
;試合開始！
CALL MUSHI_BATTLE
;結果発表
CALL MUSHI_BATTLE_RESULT

;ソース獲得
DOWNBASE:MASTER:기력 += 400
DOWNBASE:MASTER:체력 += 200
TFLAG:194 = TCVAR:MASTER:벌레배틀참가여부 % 10
FOR LOCAL, 2, MUSHI_CHARANUM + 1
	CHARA = MUSHI_BATTLER:LOCAL
	DOWNBASE:CHARA:기력 += 400
	DOWNBASE:CHARA:체력 += 200
	順位 = TCVAR:CHARA:벌레배틀참가여부 % 10
	SELECTCASE TFLAG:193
	;タイマン
	CASE 1
		IF 順位 == 1
			SOURCE:CHARA:환락 = 2000 + ABL:CHARA:친밀 * 50
			SOURCE:CHARA:정복 = 400 + 120 * ABL:CHARA:새드끼
		ELSE
			SOURCE:CHARA:환락 = 1000 + ABL:CHARA:친밀 * 100
			SOURCE:CHARA:수동 = 400 + 120 * ABL:CHARA:순종
			TFLAG:신뢰도관리 = 1
			;初勝利
			IF !CFLAG:CHARA:벌레배틀직접승리
				CFLAG:CHARA:벌레배틀직접승리 = 1
				TFLAG:호감도보너스 = 100
				TFLAG:신뢰도관리  += 1
			ENDIF
		ENDIF
	;バトルロイヤル
	CASE 2
		IF 順位 == 1
			SOURCE:CHARA:환락 = 2500 + ABL:CHARA:친밀 * 60
			SOURCE:CHARA:정복 = 600 + 150 * ABL:CHARA:새드끼
		ELSEIF 順位 == 2
			SOURCE:CHARA:환락 = 1500 + ABL:CHARA:친밀 * 80
			SOURCE:CHARA:수동 = 200 + 80 * ABL:CHARA:순종
		ELSEIF 順位 == 3
			SOURCE:CHARA:환락 = 1200 + ABL:CHARA:친밀 * 90
			SOURCE:CHARA:수동 = 300 + 100 * ABL:CHARA:순종
		ELSE
			SOURCE:CHARA:환락 = 900 + ABL:CHARA:친밀 * 100
			SOURCE:CHARA:수동 = 400 + 120 * ABL:CHARA:순종
		ENDIF
	;チーム戦
	CASE 3
		IF 順位 == 1
			SOURCE:CHARA:환락 = 1600 + ABL:CHARA:친밀 * 50
			SOURCE:CHARA:정복 = 200 + 80 * ABL:CHARA:새드끼
		ELSE
			SOURCE:CHARA:환락 = 1200 + ABL:CHARA:친밀 * 80
			SOURCE:CHARA:수동 = 200 + 80 * ABL:CHARA:순종
		ENDIF
		IF CHARA == TARGET
			TIMES SOURCE:CHARA:환락, 2.00
			TIMES SOURCE:CHARA:수동, 2.00
			TIMES SOURCE:CHARA:정복, 2.00
			TFLAG:신뢰도관리 = 1
		ENDIF
	ENDSELECT
NEXT

;今日はもう戦えない
FOR LOCAL, 1, 同室人数 + 1
	CHARA = TARGET:LOCAL
	SIF TCVAR:CHARA:벌레배틀참가여부 > 1
		TCVAR:CHARA:벌레배틀참가여부 = -1
NEXT

;시간경과
TIME += 60

RETURN 1

;-------------------------------------------------
;実行可能判定
;-------------------------------------------------
;벌레배틀
@COM_ABLE483
;時間停止中
SIF FLAG:시간정지
	RETURN 0
SIF !TFLAG:100
	RETURN 0
;一括管理
SIF GLOBAL_COMABLE(483)
	RETURN RESULT
;昆虫採集セットがない
SIF !ITEM:곤충채집세트
	RETURN 0
;昆虫採集できる場所である
SIF !MUSHITORI_SPOT(CFLAG:MASTER:현재위치)
	RETURN 0
;冬の間はおやすみ
SIF GET_MONTH() == "겨울의 달"
	RETURN 0
;虫を持ってない
SIF !MUSHI_CAGE:1
	RETURN 0
;対象がいない
SIF TARGET <= 0
	RETURN 0
;意識がない
SIF !SHIRAHU(TARGET)
	RETURN 0
;동침중
SIF CFLAG:MASTER:동침중
	RETURN 0
;うふふ中
SIF CFLAG:MASTER:우후후
	RETURN 0
;仕事中
SIF CFLAG:행동 == 5
	RETURN 0
;체력・気力不足
SIF BASE:MASTER:기력 < 500 || BASE:MASTER:체력 < 500
	RETURN 0
;체력・気力不足
SIF BASE:TARGET:기력 < 500 || BASE:TARGET:체력 < 500
	RETURN 0
RETURN 1

;-------------------------------------------------
;벌레배틀：キャラクターセレクト関数
;ARG 同室人数
;TCVAR:벌레배틀참가여부 =-1,参加不可, =1,参加可能, =2～4,参加エントリー
;-------------------------------------------------
@MUSHIBATTLE_CHARASELECT(ARG, 参加可能人数)
#DIM CHARA
#DIM 参加可能人数
#DIM LINE
LINE = 7
PRINTFORML ＜＜참가자를 선택！！（최대%TOFULL(TOSTR(MUSHI_MAXBATTLE))%인）＞＞
SETCOLOR C_AQUA
PRINTPLAINFORM [  0] %CALLNAME:MASTER, 16, LEFT%★？Ｐ１
PRINTL
RESETCOLOR
FOR LOCAL, 1, ARG + 1
	CHARA = TARGET:LOCAL
	SIF !SHIRAHU(CHARA)
		CONTINUE
	SIF TCVAR:CHARA:벌레배틀참가여부 == -1
		CONTINUE
	IF TCVAR:CHARA:벌레배틀참가여부 > 1
		SETCOLOR C_AQUA
		PRINTFORM [{CHARA, 3}] %CALLNAME:CHARA, 16, LEFT%
		CALL PRINT_MBP_RANK(CHARA)
		PRINTFORM Ｐ%TOFULL(TOSTR(TCVAR:CHARA:벌레배틀참가여부))%
		SIF MUSHI_TEAM && TCVAR:CHARA:벌레배틀참가여부 == 3
			PRINTFORM (동료)
		;＠試合前口上
		CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 0, CHARA, 0, 0, "구상색")
		CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 0, CHARA, 0, 0, "試合前")
		PRINTFORML %RESULTS%
		RESETCOLOR
	ELSE
		TCVAR:CHARA:벌레배틀참가여부 = 1
		PRINTFORM [{CHARA, 3}] %CALLNAME:CHARA, 16, LEFT%
		CALL PRINT_MBP_RANK(CHARA)
		PRINTL
	ENDIF
	LINE ++
NEXT
DRAWLINE
SIF MUSHI_TEAM
	SETCOLOR C_AQUA
SIF 参加可能人数 < 3
	SETCOLOR C_GRAY
PRINTL [901] 단체전(Ｐ１＆Ｐ３ VS Ｐ２＆Ｐ４）
RESETCOLOR
IF MUSHI_BATTLER:2
	PRINTL [900] 대전개시！
ELSE
	PRINTL
ENDIF
PRINTL [999] 역시 그만둔다
INPUT

;그만둔다
IF RESULT == 999
	;参加可否をリセットする（-1以外）
	FOR LOCAL, 1, ARG + 1
		CHARA = TARGET:LOCAL
		SIF TCVAR:CHARA:벌레배틀참가여부 > 0
			TCVAR:CHARA:벌레배틀참가여부 = 0
	NEXT
	RETURN -1
;対戦開始
ELSEIF RESULT == 900
	IF MUSHI_TEAM && MUSHI_CHARANUM != 4
		PRINTW 참가자가 네 명 없으면 단체전은 할 수 없습니다！
		LINE ++
	ELSE
		;特殊補正(口上用？,数値は任意）
		FOR LOCAL, 1, MUSHI_CHARANUM + 1
			LOCAL:1 = 0
			MUSHI_POWER:LOCAL = LOCAL:1
		NEXT
		RETURN 1
	ENDIF
;チーム戦切り替え
ELSEIF RESULT == 901 && 参加可能人数 > 3
	MUSHI_TEAM = !MUSHI_TEAM
;参加キャンセル
ELSEIF INRANGE(RESULT, 1, CHARANUM) && TCVAR:RESULT:벌레배틀참가여부 > 1
	FOR LOCAL, TCVAR:RESULT:벌레배틀참가여부, MUSHI_MAXBATTLE + 1
		;参加者はキャンセルする
		IF MUSHI_BATTLER:LOCAL == RESULT
			MUSHI_BATTLER:LOCAL = 0
		;番号が後の人がいるなら登録番号を一つ下げる
		ELSEIF MUSHI_BATTLER:LOCAL
			TCVAR:(MUSHI_BATTLER:LOCAL):벌레배틀참가여부 --
		ENDIF
	NEXT
	;その後シフトする
	FOR LOCAL, TCVAR:RESULT:벌레배틀참가여부, MUSHI_MAXBATTLE + 1
		SIF !MUSHI_BATTLER:LOCAL
			SWAP MUSHI_BATTLER:LOCAL, MUSHI_BATTLER:(LOCAL + 1)
	NEXT
	;参加状態を戻す
	TCVAR:RESULT:벌레배틀참가여부 = 1
	MUSHI_CHARANUM --
;参加エントリー
ELSEIF INRANGE(RESULT, 1, CHARANUM) && TCVAR:RESULT:벌레배틀참가여부 == 1 && MUSHI_CHARANUM < MUSHI_MAXBATTLE
	FOR LOCAL, 2, MUSHI_MAXBATTLE + 1
		;空きに入れる
		IF !MUSHI_BATTLER:LOCAL
			MUSHI_BATTLER:LOCAL = RESULT
			TCVAR:RESULT:벌레배틀참가여부 = LOCAL
			BREAK
		ENDIF
	NEXT
	MUSHI_CHARANUM ++
ENDIF
CLEARLINE LINE
RESTART

;-------------------------------------------------
;벌레배틀：셋업 1: 보여주기 전
;-------------------------------------------------
@MUSHI_BATTLE_SETUP_1
#DIM CHARA
#DIM LPCOUNT
;1=MASTERはセット済み
FOR LPCOUNT, 2, MUSHI_MAXBATTLE + 1
	CHARA = MUSHI_BATTLER:LPCOUNT
	IF !CHARA
		BREAK
	ELSE
		CALL CHARA_MUSHICAGE_SETTING(CHARA, LPCOUNT)
	ENDIF
NEXT

;-------------------------------------------------
;벌레배틀：見せ合い
;-------------------------------------------------
@MUSHI_BATTLE_SELECTION
#DIM CHARA
#DIM LPCOUNT
VARSET MUSHI_SELECT
VARSET MUSHI_REST
PRINTFORML ◆대전 상대의 벌레 바구니◆
FOR LPCOUNT, -2, MUSHI_MAXCAGE + 2
	FOR LOCAL, 2, MUSHI_CHARANUM + 1
		CHARA = MUSHI_BATTLER:LOCAL
		IF LOCAL == 2
			IF LPCOUNT == -2
				PRINTFORM ┌
			ELSEIF LPCOUNT == 0
				PRINTFORM ├
			ELSEIF LPCOUNT == MUSHI_MAXCAGE + 1
				PRINTFORM └
			ELSE
				PRINTFORM │
			ENDIF
		ENDIF
		IF LPCOUNT == -2
			IF LOCAL == MUSHI_CHARANUM
				PRINTFORM %"─" * 20%┐
			ELSE
				PRINTFORM %"─" * 20%┬
			ENDIF
		ELSEIF LPCOUNT == -1
			LOCALS = %CALLNAME:CHARA%
			SIF MUSHI_TEAM && LOCAL == 3
				LOCALS += "(동료)"
			PRINTFORM %LOCALS, 36, LEFT%
			CALL PRINT_MBP_RANK(CHARA)
			PRINTFORM │
		ELSEIF LPCOUNT == MUSHI_MAXCAGE + 1
			IF LOCAL == MUSHI_CHARANUM
				PRINTFORM %"─" * 20%┘
			ELSE
				PRINTFORM %"─" * 20%┴
			ENDIF
		ELSEIF LPCOUNT == 0
			IF LOCAL == MUSHI_CHARANUM
				PRINTFORM %"─" * 20%┤
			ELSE
				PRINTFORM %"─" * 20%┼
			ENDIF
		ELSE
			CALL PRINT_MUSHINAME(MUSHI_NAME:(LOCAL * 10 + LPCOUNT), MUSHI_CAGE:(LOCAL * 10 + LPCOUNT), 40)
			PRINTFORM │
		ENDIF
	NEXT
	PRINTL
NEXT
;フィールドタイプ設定
MUSHI_FIELD:99 = 0
WHILE !MUSHI_FIELD:99
	SETBIT MUSHI_FIELD:99, RAND:8
	SIF !(MUSHITORI_SPOT(CFLAG:MASTER:현재위치) &  MUSHI_FIELD:99)
		MUSHI_FIELD:99 = 0
WEND
PRINTFORM ＜필드 타입：
CALL PRINT_FIELDTYPE(MUSHI_FIELD:99)
PRINTL ＞
PRINTFORML ◆%CALLNAME:MASTER%의 벌레 바구니◆　배틀에 참가시킬 벌레를 1마리에서 3마리까지 선택하세요
DRAWLINE
;MASTERの選出に引き渡し
MUSHI_REST:1 = 0
MUSHI_MENTAL:1 = 1000
CALL MUSHI_BATTLE_SELECTION_MASTER

;-------------------------------------------------
;벌레배틀：MASTERのムシ選出
;-------------------------------------------------
@MUSHI_BATTLE_SELECTION_MASTER
#DIM LINE
#DIM LPCOUNT
LINE = 9
;虫カゴ表示
FOR LPCOUNT, 1, MUSHI_MAXCAGE + 1
	IF MUSHI_CAGE:LPCOUNT
		SIF MATCH(MUSHI_SELECT, MUSHI_CAGE:LPCOUNT)
			SETCOLOR C_AQUA
		PRINTFORM [{LPCOUNT, 2}]
		LOCAL:1 = 0
		;選出済み
		FOR LOCAL, 1, MUSHI_MAXSELECT + 1
			IF MUSHI_SELECT:LOCAL == MUSHI_CAGE:LPCOUNT
				PRINTFORM 【%TOFULL(TOSTR(LOCAL))%】
				LOCAL:1 = 1
				BREAK
			ENDIF
		NEXT
		;未選出
		SIF !LOCAL:1
			PRINT
		PRINTFORM
		CALL SHOW_MUSHI_DATA(MUSHI_CAGE:LPCOUNT, "一行")
		PRINTL
		RESETCOLOR
	ELSE
		PRINTPLAINFORM [{LPCOUNT, 2}] 텅 비어 있음
		PRINTL
	ENDIF
NEXT
DRAWLINE
IF !MUSHI_SELECT:1
	SETCOLOR C_GRAY
ELSE
	SETCOLOR C_CREAM
ENDIF
PRINTL [99] ＜＜READY to FIGHT！＞＞
RESETCOLOR
INPUT
;試合開始！
IF RESULT == 99 && MUSHI_SELECT:1
	;RESTを入れる
	FOR LOCAL, 1, MUSHI_MAXSELECT + 1
		SIF MUSHI_SELECT:LOCAL
			SETBIT MUSHI_REST:1, LOCAL
	NEXT
	RETURN
;ムシ選択
ELSEIF INRANGE(RESULT, 1, MUSHI_MAXCAGE) && MUSHI_CAGE:RESULT
	;参加キャンセル
	IF MATCH(MUSHI_SELECT, MUSHI_CAGE:RESULT)
		FOR LOCAL, 1, MUSHI_MAXSELECT + 1
			;参加をキャンセルする
			IF MUSHI_SELECT:LOCAL == MUSHI_CAGE:RESULT
				MUSHI_SELECT:LOCAL = 0
				BREAK
			ENDIF
		NEXT
		;その後シフトする
		FOR LOCAL, 1, MUSHI_MAXSELECT + 1
			SIF !MUSHI_SELECT:LOCAL
				SWAP MUSHI_SELECT:LOCAL, MUSHI_SELECT:(LOCAL + 1)
		NEXT
	;参加エントリー
	ELSE
		FOR LOCAL, 1, MUSHI_MAXSELECT + 1
			;空きに入れる
			IF !MUSHI_SELECT:LOCAL
				MUSHI_SELECT:LOCAL = MUSHI_CAGE:RESULT
				BREAK
			ENDIF
		NEXT
	ENDIF
ENDIF
CLEARLINE LINE
RESTART

;-------------------------------------------------
;벌레배틀：セットアップ２：選出後
;-------------------------------------------------
@MUSHI_BATTLE_SETUP_2
#DIM CHARA
#DIM LPCOUNT
#DIM SETNUM
#DIM KIRIHUDA
VARSET MUSHI_STATUS
VARSET MUSHI_MENTAL
;MASTERの設定
FOR LPCOUNT, 1, MUSHI_MAXSELECT + 1
	MUSHI_SELECT:(10 + LPCOUNT) = MUSHI_SELECT:LPCOUNT
	CALL MUSHI_PALAM(MUSHI_SELECT:LPCOUNT, MUSHI_POWER:1)
	CALL MUSHI_FLAGSETTING(MUSHI_SELECT:(10 + LPCOUNT), 10 + LPCOUNT)
NEXT
;戦闘初期設定
;MASTERのMENTALは1000固定
MUSHI_MENTAL:1 = 1000
MUSHI_STAND:1 = MUSHI_SELECT:11
MUSHI_STANDNUM:1 = 11
GETCOLOR
MUSHI_COLOR:1 = RESULT
;キャラの選出を決める
FOR LPCOUNT, 2, MUSHI_CHARANUM + 1
	CHARA = MUSHI_BATTLER:LPCOUNT
	SETNUM = LPCOUNT * 10
	KIRIHUDA = 0
	;切り札がいるなら切り札は確定(番号はランダム）
	RESULT = 0
	TRYCALLFORM MUSHI_KIRIHUDA_{CHARA}
	IF RESULT
		KIRIHUDA = 1
		LOCAL = RAND:MUSHI_MAXSELECT + 1
		MUSHI_SELECT:(SETNUM + LOCAL) = MUSHI_CAGE:(SETNUM + 1)
		MUSHI_NAME:(SETNUM + LOCAL) = MUSHI_NAME:(SETNUM + 1)
		CALL MUSHI_PALAM(MUSHI_SELECT:(SETNUM + LOCAL), MUSHI_POWER:LPCOUNT)
		CALL MUSHI_FLAGSETTING(MUSHI_SELECT:(SETNUM + LOCAL), SETNUM + LOCAL)
	ENDIF
	;虫カゴからランダムで空いてる番号に入れていく,ただし切り札がいるなら1番は除外
	FOR LOCAL, 1, MUSHI_MAXSELECT + 1
		IF !MUSHI_SELECT:(SETNUM + LOCAL)
			WHILE !MUSHI_SELECT:(SETNUM + LOCAL)
				LOCAL:1 = SETNUM + RAND:(MUSHI_MAXCAGE - KIRIHUDA) + 1 + KIRIHUDA
				LOCAL:2 = MUSHI_CAGE:(LOCAL:1)
				IF !MATCH(MUSHI_SELECT, LOCAL:2)
					MUSHI_SELECT:(SETNUM + LOCAL) = LOCAL:2
					MUSHI_NAME:(SETNUM + LOCAL) = MUSHI_NAME:(LOCAL:1)
				ENDIF
			WEND
			CALL MUSHI_PALAM(MUSHI_SELECT:(SETNUM + LOCAL), MUSHI_POWER:LPCOUNT)
			CALL MUSHI_FLAGSETTING(MUSHI_SELECT:(SETNUM + LOCAL), SETNUM + LOCAL)
		ENDIF
	NEXT
	;戦闘初期設定
	FOR LOCAL, 1, MUSHI_MAXSELECT + 1
		SETBIT MUSHI_REST:LPCOUNT, LOCAL
	NEXT
	MUSHI_MENTAL:LPCOUNT = MBP(CHARA)
	MUSHI_STAND:LPCOUNT = MUSHI_SELECT:(SETNUM + 1)
	MUSHI_STANDNUM:LPCOUNT = SETNUM + 1
	;口上色の設定
	RESULT = 0
	GETCOLOR
	LOCAL = RESULT
	CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 0, CHARA, 0, 0, "구상색")
	GETCOLOR
	;色が変わってたら登録する
	IF LOCAL != RESULT
		MUSHI_COLOR:LPCOUNT = RESULT
	ELSE
		MUSHI_COLOR:LPCOUNT = LOCAL
	ENDIF
	RESETCOLOR
NEXT
[IF_DEBUG]
	;選出チェック
	FOR LPCOUNT, 1, MUSHI_CHARANUM + 1
		CHARA = MUSHI_BATTLER:LPCOUNT
		SETNUM = LPCOUNT * 10
		DRAWLINE
		PRINTFORML %CALLNAME:CHARA%
		FOR LOCAL, 1, MUSHI_MAXSELECT + 1
			SIF MUSHI_SELECT:(SETNUM + LOCAL)
				CALL PRINT_MUSHINAME(MUSHI_NAME:(SETNUM + LOCAL), MUSHI_CAGE:(SETNUM + LOCAL), 40)
				PRINTFORML HP:{MUSHI_HP:(SETNUM + LOCAL), 5, LEFT} ATK:{MUSHI_ATK:(SETNUM + LOCAL), 4, LEFT} SPD:{MUSHI_SPD:(SETNUM + LOCAL), 4, LEFT}
		NEXT
	NEXT
	DRAWLINE
	WAIT
[ENDIF]

;-------------------------------------------------
;벌레배틀：結果発表関数
;-------------------------------------------------
@MUSHI_BATTLE_RESULT
#DIM LPCOUNT
#DIM CHARA
PRINTFORML ■시합 결과■
;チーム戦
IF MUSHI_TEAM
	TFLAG:193 = 3
	PRINTFORML ┌%"─" * 42%┐
	PRINT │
	CALL COLORMESSAGE(@"＜인생의 승리자！＞", 0xff7878)
	PRINTFORML %" " * 66%│
	FOR LOCAL, 1, MUSHI_CHARANUM / 2 + 1
		CHARA = MUSHI_BATTLER:(MUSHI_FINISH:LOCAL)
		TCVAR:CHARA:벌레배틀참가여부 = 11
		PRINTFORM │
		SIF MUSHI_COLOR:(MUSHI_FINISH:LOCAL) != MUSHI_COLOR:1
			SETCOLOR MUSHI_COLOR:(MUSHI_FINISH:LOCAL)
		LOCALS = %CALLNAME:CHARA%
		;＠試合後一言口上
		CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 1, CHARA, MUSHI_FINISH:LOCAL, 0, "チーム戦：勝ち")
		LOCALS += RESULTS
		PRINTFORM %LOCALS, 84, LEFT%
		RESETCOLOR
		PRINTL │
		PRINT │　 ＆
		CALL PRINT_MUSHINAME(MUSHI_NAME:(MUSHI_STANDNUM:(MUSHI_FINISH:LOCAL)), MUSHI_STAND:(MUSHI_FINISH:LOCAL), 78)
		PRINTL │
	NEXT
	PRINTFORML ├%"─" * 42%┤
	PRINT │
	CALL COLORMESSAGE(@"＜패자조！＞", 0x6464ff)
	PRINTFORML %" " * 72%│
	FOR LOCAL, 1, MUSHI_CHARANUM + 1
		IF !MATCH(MUSHI_FINISH, LOCAL)
			CHARA = MUSHI_BATTLER:LOCAL
			TCVAR:CHARA:벌레배틀참가여부 = 12
			PRINTFORM │
			SIF MUSHI_COLOR:LOCAL != MUSHI_COLOR:1
				SETCOLOR MUSHI_COLOR:LOCAL
			LOCALS = %CALLNAME:CHARA%
			;＠試合後一言口上
			CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 2, CHARA, LOCAL, 0, "チーム戦：負け")
			LOCALS += RESULTS
			PRINTFORM %LOCALS, 84, LEFT%
			RESETCOLOR
			PRINTL │
			PRINT │　 ＆
			CALL PRINT_MUSHINAME(MUSHI_NAME:(MUSHI_STANDNUM:LOCAL), MUSHI_STAND:LOCAL, 78)
			PRINTL │
		ENDIF
	NEXT
	PRINTFORML └%"─" * 42%┘
;タイマン
ELSEIF MUSHI_CHARANUM == 2
	TFLAG:193 = 1
	FOR LPCOUNT, -3, MUSHI_MAXSELECT + 2
		FOR LOCAL, 1, MUSHI_CHARANUM + 1
			CHARA = MUSHI_BATTLER:LOCAL
			IF LOCAL == 1
				IF LPCOUNT == -3
					PRINTFORM ┌
				ELSEIF LPCOUNT == 0
					PRINTFORM ├
				ELSEIF LPCOUNT == MUSHI_MAXSELECT + 1
					PRINTFORM └
				ELSE
					PRINTFORM │
				ENDIF
			ENDIF
			IF LPCOUNT == -3
				IF LOCAL == MUSHI_CHARANUM
					PRINTFORM %"─" * 20%┐
				ELSE
					PRINTFORM %"─" * 20%┬
				ENDIF
			ELSEIF LPCOUNT == -2
				IF MUSHI_FINISH:1 == LOCAL
					LOCALS = %CALLNAME:CHARA%＜인생의 승리자！＞
					SETCOLOR 0xff7878
					TCVAR:CHARA:벌레배틀참가여부 = 11
				ELSE
					LOCALS = %CALLNAME:CHARA%＜패배자！＞
					SETCOLOR 0x6464ff
					TCVAR:CHARA:벌레배틀참가여부 = 12
				ENDIF
				PRINTFORM %LOCALS, 36, LEFT%
				RESETCOLOR
				CALL PRINT_MBP_RANK(CHARA)
				PRINTFORM │
			ELSEIF LPCOUNT == -1
				;＠試合後一言口上
				IF MUSHI_FINISH:1 == LOCAL
					CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 1, CHARA, LOCAL, 0, "タイマン：勝ち")
				ELSE
					CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", 2, CHARA, LOCAL, 0, "タイマン：負け")
				ENDIF
				SIF MUSHI_COLOR:LOCAL != MUSHI_COLOR:1
					SETCOLOR MUSHI_COLOR:LOCAL
				PRINTFORM %RESULTS, 40, LEFT%
				RESETCOLOR
				PRINTFORM │
			ELSEIF LPCOUNT == MUSHI_MAXSELECT + 1
				IF LOCAL == MUSHI_CHARANUM
					PRINTFORM %"─" * 20%┘
				ELSE
					PRINTFORM %"─" * 20%┴
				ENDIF
			ELSEIF LPCOUNT == 0
				IF LOCAL == MUSHI_CHARANUM
					PRINTFORM %"─" * 20%┤
				ELSE
					PRINTFORM %"─" * 20%┼
				ENDIF
			ELSE
				SIF !GETBIT(MUSHI_REST:LOCAL, LPCOUNT)
					SETCOLOR C_GRAY
				CALL PRINT_MUSHINAME(MUSHI_NAME:(LOCAL * 10 + LPCOUNT), MUSHI_CAGE:(LOCAL * 10 + LPCOUNT), 40)
				RESETCOLOR
				PRINTFORM │
			ENDIF
		NEXT
		PRINTL
	NEXT
	SIF MUSHI_FINISH:1 == 1
		CALL COLORMESSAGE(@"☆%CALLNAME:(MUSHI_BATTLER:(MUSHI_FINISH:2))%에 처음으로 맞대결에서 승리했다!", C_YELLOW, 1)
;バトルロイヤル
ELSE
	TFLAG:193 = 2
	PRINTFORML ┌%"─" * 44%┐
	FOR LOCAL, 1, MUSHI_CHARANUM + 1
		CHARA = MUSHI_BATTLER:(MUSHI_FINISH:LOCAL)
		PRINT │
		IF LOCAL == 1
			CALL COLORMESSAGE(@"☆우승☆", C_YELLOW)
			SIF MUSHI_COLOR:(MUSHI_FINISH:LOCAL) != MUSHI_COLOR:1
				SETCOLOR MUSHI_COLOR:(MUSHI_FINISH:LOCAL)
			LOCALS = %CALLNAME:CHARA%
			;＠試合後一言口上
			CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", LOCAL, CHARA, MUSHI_FINISH:LOCAL, 0, "バトルロイヤル：優勝")
			LOCALS += RESULTS
			PRINTFORM %LOCALS, 80, LEFT%
			RESETCOLOR
			PRINTL │
		ELSE
			PRINTFORM 　%TOFULL(TOSTR(LOCAL))%위
			SIF MUSHI_COLOR:(MUSHI_FINISH:LOCAL) != MUSHI_COLOR:1
				SETCOLOR MUSHI_COLOR:(MUSHI_FINISH:LOCAL)
			LOCALS = %CALLNAME:CHARA%
			;＠試合後一言口上
			CALL KOJO_MESSAGE_SEND("MUSHI_BATTLE", LOCAL, CHARA, MUSHI_FINISH:LOCAL, 0, "バトルロイヤル：２位以下")
			LOCALS += RESULTS
			PRINTFORM %LOCALS, 80, LEFT%
			RESETCOLOR
			PRINTL │
		ENDIF
		TCVAR:CHARA:벌레배틀참가여부 = LOCAL + 10
		PRINT │　　　　 ＆
		CALL PRINT_MUSHINAME(MUSHI_NAME:(MUSHI_STANDNUM:(MUSHI_FINISH:LOCAL)), MUSHI_STAND:(MUSHI_FINISH:LOCAL), 76)
		PRINTL │
		IF LOCAL == MUSHI_CHARANUM
			PRINTFORML └%"─" * 44%┘
		ELSE
			PRINTFORML ├%"─" * 44%┤
		ENDIF
	NEXT
ENDIF
WAIT

;-------------------------------------------------
;벌레배틀：캐릭터의 벌레 바구니를 설정하는 함수
;-------------------------------------------------
@CHARA_MUSHICAGE_SETTING(CHARA, BATTLE_NUM)
#DIM CHARA
#DIM BATTLE_NUM
#DIM MUSHI_ID
#DIM MUSHI_NUM
#DIM RARE_MIN
#DIM RARE_MAX
#DIM RANK_MIN
#DIM RANK_MAX
#DIM D_MUTA
#DIM D_FIELD
#DIM D_AREA
#DIMS D_TRIBE
#DIMS D_TYPE
#DIM MBP
RARE_MIN = 0
RARE_MAX = 0
RANK_MIN = 0
RANK_MAX = 0
D_MUTA = 0
D_FIELD = 0
D_AREA = 0
D_TRIBE =
D_TYPE =
MBP = MBP(CHARA)
;切り札チェック
RESULT = 0
TRYCALLFORM MUSHI_KIRIHUDA_{CHARA}
IF RESULT
	;비장의 카드가 있다면 1번으로 등록
	MUSHI_ID = RESULT:1 * 1000000 + RESULT:2 * 10000000 + RESULT
	CALL MUSHI_DATA(RESULT)
	MUSHI_ID += MUSHI_RANK * 10000 + MUSHI_RARE * 1000
	MUSHI_CAGE:(1 + BATTLE_NUM * 10) = MUSHI_ID
	MUSHI_NAME:(1 + BATTLE_NUM * 10) = %MUSHI_NAME%
	MUSHI_NUM = 2
ELSE
	MUSHI_NUM = 1
ENDIF
VARSET RESULT
VARSET RESULTS
;캐릭터 데이터를 통한 요청 접수
TRYCALLFORM MUSHI_CHARACAGE_{CHARA}
IF RESULT
	RARE_MIN = RESULT:1
	RARE_MAX = RESULT:2
	RANK_MIN = RESULT:3
	RANK_MAX = RESULT:4
	D_MUTA = RESULT:5
	D_FIELD = RESULT:6
	D_AREA = RESULT:7
	D_TRIBE = %RESULTS:1%
	D_TYPE = %RESULTS:2%
ENDIF
;리얼리티 설정
IF !RARE_MAX
	RARE_MIN = MBP_RANK(CHARA)
	IF MBP < 300
		RARE_MAX = 2
	ELSEIF MBP < 1000
		RARE_MAX = 3
	ELSEIF MBP < 1600
		RARE_MAX = 3
	ELSEIF MBP < 2200
		RARE_MAX = 4
	ELSEIF MBP < 3200
		RARE_MAX = 4
	ELSEIF MBP < 5000
		RARE_MAX = 5
	ELSEIF MBP < 6200
		RARE_MAX = 5
	ELSEIF MBP < 8000
		RARE_MAX = 6
	ELSEIF MBP < 12000
		RARE_MAX = 6
	ELSEIF MBP < 20000
		RARE_MAX = 7
	ELSEIF MBP < 30000
		RARE_MAX = 7
	ELSEIF MBP < 50000
		RARE_MAX = 8
	ELSEIF MBP < 150000
		RARE_MAX = 8
	ELSEIF MBP < 500000
		RARE_MAX = 9
	ELSEIF MBP < 1000000
		RARE_MAX = 9
	ELSE
		RARE_MAX = 9
	ENDIF
ENDIF
;ランク設定
IF !RANK_MAX
	RANK_MIN = LIMIT(MBP / 2000, 0 , 80)
	RANK_MAX = 100
ENDIF
;変異率設定
IF !D_MUTA
	D_MUTA = LIMIT(MBP / 10000, 1, 25)
ENDIF
;ムシを出力して虫カゴに登録していく
FOR LOCAL, MUSHI_NUM, MUSHI_MAXCAGE + 1
	CALL DRAW_MUSHI_DESIGN(CHARA, RARE_MIN, RARE_MAX, RANK_MIN, RANK_MAX, D_MUTA, D_FIELD, D_AREA, D_TRIBE, D_TYPE)
	MUSHI_CAGE:(LOCAL + BATTLE_NUM * 10) = RESULT
	MUSHI_NAME:(LOCAL + BATTLE_NUM * 10) = %MUSHI_NAME%
NEXT
;-------------------------------------------------
;벌레배틀：バトル用の戦闘力を出力する関数
;Mushi Battle Power
;-------------------------------------------------
@MBP(CHARA)
#FUNCTION
#DIM CHARA
;基本値1000
LOCAL = 1000
SELECTCASE TALENT:CHARA:채집Lv
CASE 0
	TIMES LOCAL, 1.00
CASE 1
	TIMES LOCAL, 2.00
CASE 2
	TIMES LOCAL, 4.00
CASE 3
	TIMES LOCAL, 8.00
CASE 4
	TIMES LOCAL, 12.00
CASE 5
	TIMES LOCAL, 18.00
CASEELSE
	TIMES LOCAL, 25.00
ENDSELECT
SELECTCASE ABL:CHARA:교양
CASE 0
	TIMES LOCAL, 1.00
CASE 1
	TIMES LOCAL, 1.20
CASE 2
	TIMES LOCAL, 1.40
CASE 3
	TIMES LOCAL, 1.60
CASE 4
	TIMES LOCAL, 1.80
CASE 5
	TIMES LOCAL, 2.00
CASEELSE
	TIMES LOCAL, 2.40
ENDSELECT
SELECTCASE ABL:CHARA:전투능력
CASE 0
	TIMES LOCAL, 1.00
CASE 1
	TIMES LOCAL, 1.10
CASE 2
	TIMES LOCAL, 1.20
CASE 3
	TIMES LOCAL, 1.30
CASE 4
	TIMES LOCAL, 1.50
CASE 5
	TIMES LOCAL, 1.70
CASEELSE
	TIMES LOCAL, 2.00
ENDSELECT
SELECTCASE TALENT:CHARA:악취내성
CASE -2
	TIMES LOCAL, 0.20
CASE -1
	TIMES LOCAL, 0.50
CASE 1
	TIMES LOCAL, 2.00
CASE 2
	TIMES LOCAL, 3.00
ENDSELECT
SIF TALENT:CHARA:조합지식
	TIMES LOCAL, 1.50
SIF TALENT:CHARA:금단의지식
	TIMES LOCAL, 2.50
SIF TALENT:CHARA:유치
	TIMES LOCAL, 15.00
IF GET_TRIBENAME(CHARA, GETNUM(TALENT, "인간")) == "천인"
	TIMES LOCAL, 0.30
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "인간")) == "선인"
	TIMES LOCAL, 1.50
;地上住みは除く
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "인간")) == "월인" && !GROUPMATCH(CHARA, [[카구야]], [[에이린]])
	TIMES LOCAL, 0.05
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "인간")) == "마계인"
	TIMES LOCAL, 1.50
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "인간")) == "외계인"
	TIMES LOCAL, 0.80
ENDIF
IF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "오니"
	TIMES LOCAL, 4.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "흡혈귀"
	TIMES LOCAL, 1.50
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "캇파"
	TIMES LOCAL, 2.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "텐구"
	TIMES LOCAL, 1.50
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "요수"
	TIMES LOCAL, 2.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "요조"
	TIMES LOCAL, 2.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "요충"
	TIMES LOCAL, 25.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "악마"
	TIMES LOCAL, 2.50
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "난쟁이"
	TIMES LOCAL, 0.05
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "야마와로"
	TIMES LOCAL, 4.00
ELSEIF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요괴")) == "요괴"
	TIMES LOCAL, 1.20
ENDIF
IF GET_TRIBENAME(CHARA, GETNUM(TALENT, "요정")) == "요정"
	TIMES LOCAL, 15.00
ENDIF
LOCALS = %GET_STR(, "캐릭터데이터", CHARA, "요리：좋아하는 맛")%
IF STRCOUNT(LOCALS, "그로테스크/") >= 5
	TIMES LOCAL, 4.00
ELSEIF STRCOUNT(LOCALS, "그로테스크/") >= 3
	TIMES LOCAL, 3.00
ELSEIF STRCOUNT(LOCALS, "그로테스크/") >= 1
	TIMES LOCAL, 2.00
ENDIF
LOCALS = %GET_STR(, "캐릭터데이터", CHARA, "요리：싫어하는 맛")%
IF STRCOUNT(LOCALS, "그로테스크/") >= 5
	TIMES LOCAL, 0.10
ELSEIF STRCOUNT(LOCALS, "그로테스크/") >= 3
	TIMES LOCAL, 0.20
ELSEIF STRCOUNT(LOCALS, "그로테스크/") == 1
	TIMES LOCAL, 0.50
ENDIF
RETURNF LOCAL

;-------------------------------------------------
;벌레배틀：ムシバトルパワーのランク,レアリティ最低値にもなる
;-------------------------------------------------
@MBP_RANK(CHARA)
#FUNCTION
#DIM CHARA
IF MBP(CHARA) < 300
	RETURNF 0
ELSEIF MBP(CHARA) < 1000
	RETURNF 0
ELSEIF MBP(CHARA) < 1600
	RETURNF 1
ELSEIF MBP(CHARA) < 2200
	RETURNF 1
ELSEIF MBP(CHARA) < 3200
	RETURNF 2
ELSEIF MBP(CHARA) < 5000
	RETURNF 2
ELSEIF MBP(CHARA) < 6200
	RETURNF 3
ELSEIF MBP(CHARA) < 8000
	RETURNF 3
ELSEIF MBP(CHARA) < 12000
	RETURNF 4
ELSEIF MBP(CHARA) < 20000
	RETURNF 4
ELSEIF MBP(CHARA) < 30000
	RETURNF 5
ELSEIF MBP(CHARA) < 50000
	RETURNF 5
ELSEIF MBP(CHARA) < 150000
	RETURNF 6
ELSEIF MBP(CHARA) < 500000
	RETURNF 6
ELSEIF MBP(CHARA) < 1000000
	RETURNF 7
ELSE
	RETURNF 8
ENDIF
;-------------------------------------------------
;벌레배틀：ムシバトルパワーのランクを★Ｘでプリントする関数
;-------------------------------------------------
@PRINT_MBP_RANK(CHARA)
#DIM CHARA
IF CHARA == MASTER
	PRINTFORM ★？
ELSE
	SETCOLOR RANKCOLOR(MBP_RANK(CHARA) + 1)
	PRINTFORM ★%TOFULL(TOSTR(MBP_RANK(CHARA)))%
	RESETCOLOR
ENDIF

;-------------------------------------------------
;벌레배틀：残りムシ数を○×でプリントする関数
;bit,0は使いません
;-------------------------------------------------
@PRINT_RESTMUSHI(ARG)
FOR LOCAL, 1, MUSHI_MAXSELECT + 1
	IF GETBIT(MUSHI_REST:ARG, LOCAL)
		PRINT ○
	ELSE
		PRINT ×
	ENDIF
NEXT

;-------------------------------------------------
;ムシバトル用のフィールドの描写っぽいなにか
;-------------------------------------------------
@PRINT_FIELD_EFFECT(ARG)
#DIM 色
IF GETBIT(ARG, 0)
	LOCALS = vvvv
	色 = 0x78ff78
ELSEIF GETBIT(ARG, 1)
	LOCALS = ＊＊
	色 = C_PINK
ELSEIF GETBIT(ARG, 2)
	LOCALS = 林林
	色 = 0x00c832
ELSEIF GETBIT(ARG, 3)
	LOCALS = ▒▒▒▒
	色 = 0xffc864
ELSEIF GETBIT(ARG, 4)
	LOCALS = ～～
	色 = 0x64c8ff
ELSEIF GETBIT(ARG, 5)
	LOCALS = ▲▼
	色 = 0xb49678
ELSEIF GETBIT(ARG, 6)
	LOCALS = ＃＃
	色 = 0xff7878
ELSEIF GETBIT(ARG, 7)
	LOCALS = _/_/
	色 = 0xc8dcff
ENDIF
CALL COLORMESSAGE(@"%LOCALS * 9% ", 色)
PRINT ＶＳ．
CALL COLORMESSAGE(@" %LOCALS * 9%", 色)

path: ERB/커맨드관련/COMF/일상계/COMF483 벌레 배틀.ERB


code:
;スイカ割り
@COM484
#DIM CHARA
#DIM 동실인원
#DIM 참가가능인원

;雨天中止
IF GROUPMATCH(날씨, 4, 5, 6, 7, 8, 10, 11, 12, 13) || GROUPMATCH(FLAG:이상기상, 9, 10)
	IF OUTROOF(CFLAG:MASTER:현재위치)
		PRINTFORMW 날씨가 나쁘니 그만두자…
		RETURN -1
	ENDIF
;料理がある
ELSEIF DISH_NAME != ""
	PRINTFORMW 손에 들고 있는 요리를 어떻게든 해야한다…
	RETURN -1
ENDIF

;참가가능인원チェック
참가가능인원 = 0
동실인원 = GET_TARGETNUM()
FOR LOCAL, 1, 동실인원 + 1
	CHARA = TARGET:LOCAL
	SIF !SHIRAHU(CHARA)
		CONTINUE
	SIF CFLAG:CHARA:행동 == 5
		CONTINUE
	SIF BASE:CHARA:기력 < 500 || BASE:CHARA:체력 < 500
		CONTINUE
	참가가능인원 ++
NEXT
;TARGETは実行判定で可能なはずなのでエラーチェック
SIF 참가가능인원 == 0
	THROW
SUIKA_PLAYERNUM = 0
CALL SUIKA_CHARASELECT(동실인원, 참가가능인원)
;キャンセル
SIF RESULT == -1
	RETURN -1

;武器選択
CALL SUIKA_WEAPONSELECT

;開幕地の文
DRAWLINE
IF GROUPMATCH(SUIKA_WEAPON, "요술망치", "제어봉")
	PRINTFORML %마스터는% 안대를 착용하고 일사분란하게 제자리에서 회전하기 시작했다…
ELSE
	PRINTFORML %마스터는% 안대를 착용하고 바닥에 꽂아놓은 %조사처리(SUIKA_WEAPON,"를")% 중심으로 일사분란하게 회전하기 시작했다…
ENDIF
;セットアップ
CALL SUIKA_SETUP
WAIT
;TARGETが参加していない場合はTARGETを変更しておく
IF FLAG:데이트상대
	;参加しなくても最優先,そんなひどいことする？
	TARGET = FLAG:데이트상대
ELSEIF !MATCH(SUIKA_PLAYER, TARGET)
	;一人目をターゲットに変更
	TARGET = SUIKA_PLAYER:1
ENDIF

TARGET = SUIKA_PLAYER:1
;ゲーム開始
CALL SUIKA_SMASHING
TFLAG:193 = RESULT

;ソース獲得
DOWNBASE:MASTER:체력 = 200
DOWNBASE:MASTER:기력 = 300
FOR LOCAL, 1, SUIKA_PLAYERNUM + 1
	CHARA = SUIKA_PLAYER:LOCAL
	DOWNBASE:CHARA:기력 += 100
	DOWNBASE:CHARA:체력 += 50
	SELECTCASE TFLAG:193
	CASE 0
		SOURCE:CHARA:환락 = 1500 + ABL:CHARA:친밀 * 100
		SOURCE:CHARA:수동 = 100 + 50 * ABL:CHARA:순종
		SOURCE:CHARA:정복 = 200 + 80 * ABL:CHARA:새드끼
	CASE 1, 2
		SOURCE:CHARA:환락 = 2500 + ABL:CHARA:친밀 * 100
		SOURCE:CHARA:수동 = 200 + 60 * ABL:CHARA:순종
		SOURCE:CHARA:정복 = 400 + 120 * ABL:CHARA:새드끼
	CASE -1
		IF SUIKA_LIAR:LOCAL || CHARA == [[세이자]]
			SOURCE:CHARA:환락 = 1500 + ABL:CHARA:친밀 * 100
			SOURCE:CHARA:정복 = 400 + 120 * ABL:CHARA:새드끼
		ELSE
			SOURCE:CHARA:환락 = 800 + ABL:CHARA:친밀 * 100
			SOURCE:CHARA:수동 = 100 + 50 * ABL:CHARA:순종
			SOURCE:CHARA:정복 = 50 + 20 * ABL:CHARA:새드끼
		ENDIF
	ENDSELECT
	IF TFLAG:193 >= 0
		SIF CHARA == TARGET
			TFLAG:신뢰도관리 = 1 + TFLAG:193
		IF TFLAG:193 == 2
			TIMES SOURCE:CHARA:환락, 1.20
			TIMES SOURCE:CHARA:수동, 1.20
			TIMES SOURCE:CHARA:정복, 1.20
		ENDIF
	ENDIF
	;口上用に役職情報を渡しておく
	SIF CHARA == TARGET && (SUIKA_LIAR:LOCAL || CHARA == [[세이자]])
		TFLAG:194 = 1
	;◆口上
	CALL KOJO_MESSAGE_SEND("SUIKA", 0, CHARA, SUIKA_LIAR:LOCAL, 0, "結果")
	IF RESULTS != ""
		PRINTL
		PRINTFORML %CALLNAME:CHARA%
		PRINTFORMW 「%RESULTS%」
		RESETCOLOR
	ENDIF
	;なるべく動かない
	TCVAR:CHARA:가능한한움직이지않는다 = 1
NEXT

;料理生成
SIF TFLAG:193 >= 0
	CALL 요리생성("자른수박")

;結果記録
IF TFLAG:193 > 0
	SUIKA_GREAT ++
ELSEIF TFLAG:193 == 0
	SUIKA_SUCCESS ++
ENDIF

;時間経過
TIME += 60

;フラグをリセットしてあなたのフラグを立てる
VARSET SUIKA_PLAYER
CVARSET TCVAR, GETNUM(TCVAR, "수박깨기참가"), 0
TCVAR:MASTER:수박깨기참가 = 1

RETURN 1

;-------------------------------------------------
;実行可能判定
;-------------------------------------------------
;スイカ割り
@COM_ABLE484
;時間停止中
SIF FLAG:시간정지
	RETURN 0
SIF !TFLAG:100
	RETURN 0
;一括管理
SIF GLOBAL_COMABLE(484)
	RETURN RESULT
;スイカがない
SIF !ITEM:수박
	RETURN 0
;アイマスクがない
SIF !ITEM:눈가리개
	RETURN 0
;夏じゃない
SIF GET_MONTH() != "여름의 달"
	RETURN 0
;とりあえず訓練できる場所
SIF !전투훈련가능(CFLAG:MASTER:현재위치)
	RETURN 0
;一日一回まで
SIF TCVAR:MASTER:수박깨기참가
	RETURN 0
;対象がいない
SIF TARGET <= 0
	RETURN 0
;意識がない
SIF !SHIRAHU(TARGET)
	RETURN 0
;添い寝中
SIF CFLAG:MASTER:동침중
	RETURN 0
;うふふ中
SIF CFLAG:MASTER:우후후
	RETURN 0
;仕事中
SIF CFLAG:행동 == 5
	RETURN 0
;体力・気力不足
SIF BASE:MASTER:기력 < 500 || BASE:MASTER:체력 < 500
	RETURN 0
;体力・気力不足
SIF BASE:TARGET:기력 < 500 || BASE:TARGET:체력 < 500
	RETURN 0
RETURN 1

;-------------------------------------------------
;スイカ割り：キャラクターセレクト関数
;ARG 동실인원
;-------------------------------------------------
@SUIKA_CHARASELECT(ARG, 참가가능인원)
#DIM CHARA
#DIM 참가가능인원
#DIM LINE
#DIM 参加要求
VARSET LOCAL
LINE = 7
DRAWLINE
;全員参加指示
SIF 参加要求
	SUIKA_PLAYERNUM = MIN(참가가능인원, SUIKA_MAXPLAYER)
PRINTFORML ●참가자를 골라주세요（%TOFULL(TOSTR(SUIKA_PLAYERNUM))%／%TOFULL(TOSTR(SUIKA_MAXPLAYER))%）거짓말쟁이의 인원수：{SUIKA_LIARNUM()}
FOR LOCAL, 1, ARG + 1
	CHARA = TARGET:LOCAL
	SIF !SHIRAHU(CHARA)
		CONTINUE
	SIF CFLAG:CHARA:행동 == 5
		CONTINUE
	SIF BASE:CHARA:기력 < 500 || BASE:CHARA:체력 < 500
		CONTINUE
	;全員参加指示
	IF 参加要求
		TCVAR:CHARA:수박깨기참가 = LOCAL:1 + 1
		SUIKA_PLAYER:(LOCAL:1 + 1) = CHARA
	ENDIF
	SIF TCVAR:CHARA:수박깨기참가
		SETCOLOR C_AQUA
	PRINTFORM [{CHARA, 3}] %CALLNAME:CHARA, 18, LEFT%
	LOCAL:1 ++
	IF LOCAL:1 % 3 == 0
		PRINTL
		LINE ++
	ENDIF
	RESETCOLOR
	SIF 参加要求 && LOCAL:1 == SUIKA_MAXPLAYER
		参加要求 = 0
NEXT
参加要求 = 0
IF LOCAL:1 % 3
	PRINTL
	LINE ++
ENDIF
IF 참가가능인원 > SUIKA_MAXPLAYER
	PRINTL [902] 상위 8명 참가
ELSE
	PRINTL [901] 전원참가
ENDIF
DRAWLINE
PRINTL [900] 결정　　　　　　　[903] 규칙설명
PRINTL [999] 역시 그만둔다
INPUT

;やめる
IF RESULT == 999
	;参加フラグをリセットする
	CVARSET TCVAR, GETNUM(TCVAR, "수박깨기참가"), 0
	VARSET SUIKA_PLAYER
	RETURN -1
;決定
ELSEIF RESULT == 900
	IF INRANGE(SUIKA_PLAYERNUM, 1, SUIKA_MAXPLAYER)
		RETURN 1
	ELSE
		PRINTFORMW 참가자가 1~%TOFULL(TOSTR(SUIKA_MAXPLAYER))%명이 되도록 해주세요!
		LINE ++
	ENDIF
;全員参加,上から８人を参加
ELSEIF RESULT == 901 || RESULT == 902
	;一旦リセット
	CVARSET TCVAR, GETNUM(TCVAR, "수박깨기참가"), 0
	SUIKA_PLAYERNUM = 0
	VARSET SUIKA_PLAYER
	参加要求 = 1
;ルール説明
ELSEIF RESULT == 903
	CALL SUIKA_TUTORIAL
	RESTART
;キャラ選択
ELSEIF INRANGE(RESULT, 1, CHARANUM) && MATCH(TARGET, RESULT)
	;参加エントリー
	IF !TCVAR:RESULT:수박깨기참가
		;上限
		IF SUIKA_PLAYERNUM >= SUIKA_MAXPLAYER
			PRINTW 더 이상 참가할 수 없습니다!
			LINE ++
		ELSE
			FOR LOCAL, 1, SUIKA_MAXPLAYER + 1
				;空きに入れる
				IF !SUIKA_PLAYER:LOCAL
					SUIKA_PLAYER:LOCAL = RESULT
					TCVAR:RESULT:수박깨기참가 = LOCAL
					BREAK
				ENDIF
			NEXT
			SUIKA_PLAYERNUM ++
		ENDIF
	;参加キャンセル
	ELSE
		FOR LOCAL, TCVAR:RESULT:수박깨기참가, SUIKA_MAXPLAYER + 1
			;参加者はキャンセルする
			IF SUIKA_PLAYER:LOCAL == RESULT
				SUIKA_PLAYER:LOCAL = 0
			;番号が後の人がいるなら登録番号を一つ下げる
			ELSEIF SUIKA_PLAYER:LOCAL
				TCVAR:(SUIKA_PLAYER:LOCAL):수박깨기참가 --
			ENDIF
		NEXT
		;その後シフトする
		FOR LOCAL, TCVAR:RESULT:수박깨기참가, SUIKA_MAXPLAYER + 1
			SIF !SUIKA_PLAYER:LOCAL
				SWAP SUIKA_PLAYER:LOCAL, SUIKA_PLAYER:(LOCAL + 1)
		NEXT
		;参加状態を戻す
		TCVAR:RESULT:수박깨기참가 = 0
		SUIKA_PLAYERNUM --
	ENDIF
ENDIF
CLEARLINE LINE
RESTART

;-------------------------------------------------
;スイカ割り：チュートリアル
;-------------------------------------------------
@SUIKA_TUTORIAL
#DIM MAXPAGE
#DIM PAGE
MAXPAGE = 4
SIF !PAGE
	PAGE = 1
DRAWLINE
PRINTFORML ●룰 설명({PAGE}/{MAXPAGE})
SELECTCASE PAGE
CASE 1
	PRINTFORML 당신은 눈을 가린 상태에서 무기를 들고 환상소녀들의 목소리에 의지해
	PRINTFORML 필드 어딘가에 있는 수박을 두드려 깨는 게임입니다.
	PRINTL
	PRINTFORML 다만 참가자 중에는 (인원에 따른) 거짓말쟁이가 섞여 있습니다.
	PRINTFORML 거짓말쟁이가 된 캐릭터는 당신에게 거짓 힌트를 줍니다.
CASE 2
	PRINTFORML 공격기회는 기본적으로 1회 뿐이므로 누가 거짓말쟁이인지,
	PRINTFORML 어떤 힌트가 진실인지 살펴보면서 신중하게 이동합시다.
	PRINTL
	PRINTFORML 필드 밖으로 이동하려고 하면 참가한 소녀에게 부딪히게 됩니다.
	PRINTFORML 이 경우 이동할 수 없습니다.
CASE 3
	PRINTFORML 수박의 위치를 완전히 파악하고 공격하면 대성공.
	PRINTFORML 아깝게 빗나가더라도 일단 성공입니다.
	PRINTL
	PRINTFORML 아깝게 빗나간 상태에서 캐릭터에 따라서는 "거기다!" 등의 지시를 합니다.
	PRINTFORML 대성공을 노린다면 더 심문하는 것이 좋을 것입니다.
CASE 4
	PRINTFORML 인원이 (3명 이상이고) 홀수일 때는 거짓말쟁이의 비율이 많아져 난이도가 높아집니다.
	PRINTFORML 어렵다고 느껴진다면 짝수로 플레이하는 것이 좋습니다.
	PRINTL
	PRINTFORML 멋지게 수박을 쪼개면 <잘린수박>이 완성됩니다.
	PRINTFORML 꼭 참가자 모두 함께 먹읍시다.
ENDSELECT
PRINTL
PRINTFORML \@ PAGE < MAXPAGE ? [1] 다음 # \@
PRINTFORML \@ PAGE > 1 ? [2] 이전 # \@
PRINTFORML [0] 돌아간다
INPUT
IF RESULT == 1 && PAGE < MAXPAGE
	PAGE ++
ELSEIF RESULT == 2 && PAGE > 1
	PAGE --
ELSE
	PAGE = 0
	RETURN
ENDIF
CLEARLINE 12
RESTART

;-------------------------------------------------
;スイカ割り：武器選択関数
;-------------------------------------------------
@SUIKA_WEAPONSELECT
DRAWLINE
PRINTFORML ●사용할 무기를 고르세요
PRINTFORML [1] - 마이빗자루       	%마스터가% 항상 가지고 다니는 빗자루. 추가로 1회의 공격기회가 주어진다.
PRINTFORML [2] - 불제봉         	약한 유도력을 지닌 신기한 제구. 시작할 때 반드시 수박이 있는 곳을 향한다
PRINTFORML [3] - 목도         	절단력이 있는 심플한 무기. 깨끗하게 자를 수 있어 획득 수량이 증가한다. ※상급자용
PRINTFORML [4] - 요술망치      	소원을 담은 망치. 닿기만 해도 깨끗하게 잘린다.
PRINTFORML [5] - 제어봉        	핵에너지를 흡수하는 묵직한 막대기. 시작할 때 수박을 끌어당긴다.
INPUT
IF INRANGE(RESULT, 1, 5)
	SELECTCASE RESULT
	CASE 1
		SUIKA_WEAPON = 마이빗자루
	CASE 2
		SUIKA_WEAPON = 불제봉
	CASE 3
		SUIKA_WEAPON = 목도
	CASE 4
		SUIKA_WEAPON = 요술망치
	CASE 5
		SUIKA_WEAPON = 제어봉
	ENDSELECT
ELSE
	CLEARLINE 8
	RESTART
ENDIF

;-------------------------------------------------
;スイカ割り：ウソつきの人数
;-------------------------------------------------
@SUIKA_LIARNUM
#FUNCTION
RETURNF MAX((SUIKA_PLAYERNUM - 1) / 2, 0)

;-------------------------------------------------
;スイカ割り：二点間の距離
;ARG:1,座標１ ARG:2,座標２ ARG:3,0=合計距離,1=X軸距離,2=Y軸距離
;-------------------------------------------------
@SUIKA_DISTANCE(ARG:1, ARG:2, ARG:3)
#FUNCTION
LOCAL:1 = ARG:1 / 10
LOCAL:2 = ARG:2 / 10
LOCAL:3 = ARG:1 % 10
LOCAL:4 = ARG:2 % 10
LOCAL:5 = ABS(LOCAL:1 - LOCAL:2)
LOCAL:6 = ABS(LOCAL:3 - LOCAL:4)
IF ARG:3 == 1
	RETURNF LOCAL:5
ELSEIF ARG:3 == 2
	RETURNF LOCAL:6
ELSE
	RETURNF LOCAL:5 + LOCAL:6
ENDIF

;-------------------------------------------------
;スイカ割り：打撃する位置（正面位置）
;-------------------------------------------------
@SUIKA_AIMING
#FUNCTION
SELECTCASE SUIKA_DIRECTION
CASE 2
	RETURNF SUIKA_MASTER_P - 1
CASE 4
	RETURNF SUIKA_MASTER_P - 10
CASE 6
	RETURNF SUIKA_MASTER_P + 10
CASE 8
	RETURNF SUIKA_MASTER_P + 1
ENDSELECT

;-------------------------------------------------
;スイカ割り：背面位置
;-------------------------------------------------
@SUIKA_BACK
#FUNCTION
SELECTCASE SUIKA_DIRECTION
CASE 2
	RETURNF SUIKA_MASTER_P + 1
CASE 4
	RETURNF SUIKA_MASTER_P + 10
CASE 6
	RETURNF SUIKA_MASTER_P - 10
CASE 8
	RETURNF SUIKA_MASTER_P - 1
ENDSELECT

;-------------------------------------------------
;スイカ割り：位置が場外に出ている判定
;ARG,座標
;-------------------------------------------------
@SUIKA_OVER(ARG)
#FUNCTION
SIF ARG >= 100 || ARG % 10 == 0 || ARG / 10 == 0
	RETURNF 1

;-------------------------------------------------
;スイカ割り：スイカのある方向（客観方向）
;ARG,0=軸指定なし,1=X軸,2=Y軸
;-------------------------------------------------
@SUIKA_RADAR(ARG)
#FUNCTION
IF !ARG
	LOCAL = RAND:2 + 1
ELSE
	LOCAL = ARG
ENDIF

IF LOCAL == 1
	IF SUIKA_MASTER_P / 10 - SUIKA_SUIKA_P / 10 > 0
		RETURNF 4
	ELSEIF SUIKA_MASTER_P / 10 - SUIKA_SUIKA_P / 10 < 0
		RETURNF 6
	ELSE
		RETURNF 5
	ENDIF
ELSEIF LOCAL == 2
	IF SUIKA_MASTER_P % 10 - SUIKA_SUIKA_P % 10 > 0
		RETURNF 2
	ELSEIF SUIKA_MASTER_P % 10 - SUIKA_SUIKA_P % 10 < 0
		RETURNF 8
	ELSE
		RETURNF 5
	ENDIF
ENDIF

;-------------------------------------------------
;スイカ割り：セットアップ関数
;-------------------------------------------------
@SUIKA_SETUP
#DIM 最大距離
;挑戦回数＋１
SUIKA_CHALLENGE ++
;得点リセット
SUIKA_SCORE = 0
;スイカを失う
CALL LOST_ITEM("수박", 1, 1)
;お手つき許容回数
IF SUIKA_WEAPON == "마이빗자루"
	SUIKA_OTETSUKI = 1
ELSE
	SUIKA_OTETSUKI = 0
ENDIF
;スイカの位置
SUIKA_SUIKA_P = (RAND:9 + 1) * 10 + RAND:9 + 1
;あなたの位置,スイカの位置と距離が6以上12以内,（제어봉なら距離8以内）
SUIKA_MASTER_P = 0
IF SUIKA_WEAPON == "제어봉"
	PRINTFORML 【제어봉의 효과】즈즈즈…… 제어봉의 효과로 수박이 끌어당겨졌다!
	最大距離 = 8
ELSE
	最大距離 = 16
ENDIF
WHILE !SUIKA_MASTER_P || !INRANGE(SUIKA_DISTANCE(SUIKA_SUIKA_P, SUIKA_MASTER_P), 6, 最大距離)
	SUIKA_MASTER_P = (RAND:9 + 1) * 10 + RAND:9 + 1
WEND
;あなたの向き
SUIKA_DIRECTION = 5
IF SUIKA_WEAPON == "불제봉"
	WHILE SUIKA_DIRECTION % 2 != 0
		SUIKA_DIRECTION = SUIKA_RADAR()
	WEND
	PRINTFORML 【불제봉의 효과】불제봉에 이끌려 %CALLNAME:MASTER%의 몸은 수박이 있는 곳을 향했다!
ELSE
	SUIKA_DIRECTION = RAND:4 * 2 + 2
ENDIF
;ウソつき役の設定
VARSET SUIKA_LIAR
SIF !SUIKA_LIARNUM()
	RETURN
CALL FISHER_YATES_SHAFFLE(SUIKA_PLAYERNUM)
FOR LOCAL:1, 0, SUIKA_LIARNUM()
	LOCAL = SHAFFLE_ARRAY:(LOCAL:1) + 1
	SUIKA_LIAR:LOCAL = 1
NEXT
[IF_DEBUG]
	DRAWLINE
	PRINTFORML SUIKA_SUIKA_P:{SUIKA_SUIKA_P}
	PRINTFORML SUIKA_MASTER_P:{SUIKA_MASTER_P}
	PRINTFORML SUIKA_DISTANCE:{SUIKA_DISTANCE(SUIKA_SUIKA_P, SUIKA_MASTER_P)}, {SUIKA_DISTANCE(SUIKA_SUIKA_P, SUIKA_MASTER_P, 1)}, {SUIKA_DISTANCE(SUIKA_SUIKA_P, SUIKA_MASTER_P, 2)}
	PRINTFORML SUIKA_DIRECTION:{SUIKA_DIRECTION}
	PRINTFORML SUIKA_AIMING:{SUIKA_AIMING()}
	FOR LOCAL, 1, SUIKA_PLAYERNUM + 1
		PRINTFORML SUIKA_PLAYER:{LOCAL} %CALLNAME:(SUIKA_PLAYER:LOCAL)% \@ SUIKA_LIAR:LOCAL ? ● # ○ \@
	NEXT
	PRINTFORML SUIKA_WEAPON:%SUIKA_WEAPON%
[ENDIF]

;-------------------------------------------------
;スイカ割り：ゲーム部分関数
;-------------------------------------------------
@SUIKA_SMASHING
#DIM CHARA
#DIM LINENUM
#DIM LINENUM_PLUS
CALL FISHER_YATES_SHAFFLE(8)

LINENUM_PLUS = 0
DRAWLINE
FOR LINENUM, 1, 9
	IF LINENUM % 2 == 1
		LOCAL = SHAFFLE_ARRAY:(LINENUM - 1) + 1
		CHARA = SUIKA_PLAYER:LOCAL
		PRINTPLAINFORM % CHARA ? CALLNAME:CHARA # "" , 30, LEFT%
	ELSE
		LOCAL = SHAFFLE_ARRAY:(LINENUM - 2) + 1
		CHARA = SUIKA_PLAYER:LOCAL
		CALL SUIKA_MESSAGE(CHARA, LOCAL, 1)
	ENDIF
	SELECTCASE LINENUM
	CASE 2
		PRINTFORM 　　　　　[8] 일보전진
	CASE 4
		PRINTFORM 　[4] 좌회전　　[6] 우회전
	CASE 6
		PRINTFORM 　　　＜＜[5] 공격!＞＞
	CASE 8
		PRINTFORM 　　　　　[2] 일보후퇴
	CASEELSE
		PRINTFORM %" " * 32%
	ENDSELECT
	IF LINENUM % 2 == 1
		LOCAL = SHAFFLE_ARRAY:(LINENUM) + 1
		CHARA = SUIKA_PLAYER:LOCAL
		PRINTPLAINFORM % CHARA ? CALLNAME:CHARA # "" , 30, RIGHT%
	ELSE
		LOCAL = SHAFFLE_ARRAY:(LINENUM - 1) + 1
		CHARA = SUIKA_PLAYER:LOCAL
		CALL SUIKA_MESSAGE(CHARA, LOCAL, 2)
	ENDIF
	PRINTL
NEXT
INPUT
DRAWLINE
SELECTCASE RESULT
CASE 5
	PRINTL
	PRINTFORMW %마스터는% 정면을 향해 혼신의 힘을 다하며 %조사처리(SUIKA_WEAPON,"를")% 내려쳤다!
	PRINTL
	LINENUM_PLUS += 3
	IF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 0
		IF SUIKA_WEAPON == "목도"
			CALL COLORMESSAGE("SLAAAASH!!", C_ORANGE, 2, 3)
			RETURN 2
		ELSE
			CALL COLORMESSAGE("SMAAAASH!!", C_V_PINK, 2, 3)
			RETURN 1
		ENDIF
	ELSEIF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 1
		IF SUIKA_WEAPON == "요술망치"
			CALL COLORMESSAGE("LUCKY STRIKE!", C_YELLOW, 2, 3)
			RETURN 1
		ELSE
			CALL COLORMESSAGE("HIT!", C_YELLOW, 2, 2)
			RETURN 0
		ENDIF
	ELSE
		CALL COLORMESSAGE("빗나감!", C_CREAM, 2, 2)
		IF SUIKA_OTETSUKI
			PRINTL
			PRINTFORMW …그러나 마이빗자루의 규칙으로 인해 한번 더 기회를 얻었다!
			SUIKA_OTETSUKI --
			LINENUM_PLUS += 4
		ELSE
			RETURN -1
		ENDIF
	ENDIF
CASE 4
	PRINTFORML …………
	PRINTFORMW %마스터는% 왼쪽으로 돌았다
	SELECTCASE SUIKA_DIRECTION
	CASE 2
		SUIKA_DIRECTION = 6
	CASE 4
		SUIKA_DIRECTION = 2
	CASE 6
		SUIKA_DIRECTION = 8
	CASE 8
		SUIKA_DIRECTION = 4
	ENDSELECT
	LINENUM_PLUS += 2
CASE 6
	PRINTFORML …………
	PRINTFORMW %마스터는% 오른쪽으로 돌았다
	SELECTCASE SUIKA_DIRECTION
	CASE 2
		SUIKA_DIRECTION = 4
	CASE 4
		SUIKA_DIRECTION = 8
	CASE 6
		SUIKA_DIRECTION = 2
	CASE 8
		SUIKA_DIRECTION = 6
	ENDSELECT
	LINENUM_PLUS += 2
CASE 2
	PRINTFORML …………
	IF SUIKA_OVER(SUIKA_BACK())
		CALL SUIKA_COLLISION
		LINENUM_PLUS += RESULT
	ELSE
		PRINTFORMW %마스터는% 한발자국 물러났다
		SUIKA_MASTER_P = SUIKA_BACK()
		LINENUM_PLUS += 2
	ENDIF
CASEELSE
	PRINTFORML …………
	IF SUIKA_OVER(SUIKA_AIMING())
		CALL SUIKA_COLLISION
		LINENUM_PLUS += RESULT
	ELSE
		PRINTFORMW %마스터는% 한발자국 나아갔다
		SUIKA_MASTER_P = SUIKA_AIMING()
		LINENUM_PLUS += 2
	ENDIF
ENDSELECT
CLEARLINE 11 + LINENUM_PLUS
RESTART

;-------------------------------------------------
;スイカ割り：衝突メッセージ
;-------------------------------------------------
@SUIKA_COLLISION
#DIM LINE
LINE = 4
LOCAL = SUIKA_PLAYER:(RAND:SUIKA_PLAYERNUM + 1)
PRINTFORMW 꽈당!
PRINTL
;◆口上
CALL KOJO_MESSAGE_SEND("SUIKA", 0, LOCAL, 0, 0, "衝突")
IF RESULTS != ""
	PRINTFORMW 「%RESULTS%」
	PRINTL
	LINE += 2
ENDIF
RESETCOLOR
;◆口上設定（※未実装）
IF LOCAL == [[스이카]]
	PRINTFORMW 그것은 수박(スイカ,수이카)가 아니라 스이카다!
ELSE
	PRINTFORMW %마스터는% %CALLNAME:LOCAL%와 부딪쳐버렸다……
ENDIF
RETURN LINE

;-------------------------------------------------
;スイカ割り：台詞関数１,どんな台詞を言うかの判定
;ARG,プレイヤー番号
;ARG:1,表示位置 1=LEFT,2=RIGHT
;-------------------------------------------------
@SUIKA_MESSAGE(CHARA, ARG, ARG:1)
#DIM CHARA
#DIM 客観方向
#DIMS 主観方向
#DIM ウソつき
#DIMS 正直な指示
#DIMS 指示
;非表示
IF !CHARA
	IF ARG:1 == 1
		PRINTPLAINFORM %"" , 30, LEFT%
	ELSE
		PRINTPLAINFORM %"" , 30, RIGHT%
	ENDIF
	RETURN
ENDIF

;完全一致
IF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 0
	正直な指示 = 여기다!
;1マスずれ（2分の1）
ELSEIF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 1 && !RAND:2
	正直な指示 = 여기다!
;重なっている（1マスずれの漏れ）
ELSEIF SUIKA_DISTANCE(SUIKA_MASTER_P, SUIKA_SUIKA_P) == 0
	正直な指示 = 약간뒤
;それ以外
ELSE
	;近さ判定
	;LOCAL:1,距離について言う判定
	;LOCAL:2,「少し」を付けて言う判定
	IF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 1
		LOCAL:1 = !RAND:2
		LOCAL:2 = 1
	ELSEIF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 2
		LOCAL:1 = !RAND:2
		LOCAL:2 = !RAND:2
	ELSEIF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) == 3
		LOCAL:1 = !RAND:3
		LOCAL:2 = !RAND:4
	ELSE
		LOCAL:1 = !RAND:4
		LOCAL:2 = 0
	ENDIF
	;距離のヒント
	IF LOCAL:1
		IF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) <= 3
			正直な指示 = 가깝다
		ELSEIF SUIKA_DISTANCE(SUIKA_AIMING(), SUIKA_SUIKA_P) >= 8
			正直な指示 = 약간멀다
		ELSE
			正直な指示 = 멀다
		ENDIF
	;方向のヒント
	ELSE
		客観方向 = 5
		WHILE 客観方向 % 2 != 0
			客観方向 = SUIKA_RADAR()
		WEND
		IF 客観方向 == SUIKA_DIRECTION
			主観方向 = 앞
		ELSE
			SELECTCASE SUIKA_DIRECTION
			CASE 2
				SELECTCASE 客観方向
				CASE 4
					主観方向 = 오른쪽
				CASE 6
					主観方向 = 왼쪽
				CASE 8
					主観方向 = 뒤
				ENDSELECT
			CASE 4
				SELECTCASE 客観方向
				CASE 2
					主観方向 = 왼쪽
				CASE 6
					主観方向 = 뒤
				CASE 8
					主観方向 = 오른쪽
				ENDSELECT
			CASE 6
				SELECTCASE 客観方向
				CASE 2
					主観方向 = 오른쪽
				CASE 4
					主観方向 = 뒤
				CASE 8
					主観方向 = 왼쪽
				ENDSELECT
			CASE 8
				SELECTCASE 客観方向
				CASE 2
					主観方向 = 뒤
				CASE 4
					主観方向 = 왼쪽
				CASE 6
					主観方向 = 오른쪽
				ENDSELECT
			ENDSELECT
		ENDIF
		SIF LOCAL:2
			主観方向 = 약간 %主観方向%
		正直な指示 = %主観方向%
	ENDIF
ENDIF
;正邪は役職を無視して嘘をつく
IF SUIKA_LIAR:ARG || CHARA == [[세이자]]
	ウソつき = 1
ELSE
	ウソつき = 0
ENDIF
IF ウソつき
	SELECTCASE 正直な指示
	CASE "여기다!"
		指示 =%TEXTR("약간뒤/약간앞/약간오른쪽/약간왼쪽")%
	CASE "가깝다"
		指示 = 멀다
	CASE "멀다"
		指示 = 가깝다
	CASE "약간멀다"
		指示 = 멀다
	CASE "앞"
		指示 = 뒤
	CASE "약간앞"
		指示 = %TEXTR("약간뒤/여기다!")%
	CASE "뒤"
		指示 = 앞
	CASE "약간뒤"
		指示 = %TEXTR("약간앞/여기다!")%
	CASE "왼쪽"
		指示 = 왼쪽
	CASE "약간오른쪽"
		指示 = %TEXTR("약간왼쪽/여기다!")%
	CASE "오른쪽"
		指示 = 오른쪽
	CASE "약간왼쪽"
		指示 = %TEXTR("약간오른쪽/여기다!")%
	ENDSELECT
ELSE
	指示 = %正直な指示%
ENDIF
;◆口上
CALL KOJO_MESSAGE_SEND("SUIKA", 0, CHARA, 0, 0, 指示)
IF RESULTS != ""
	IF ARG:1 == 1
		PRINTPLAINFORM %"「" + RESULTS + "」", 30, LEFT%
	ELSE
		PRINTPLAINFORM %"「" + RESULTS + "」", 30, RIGHT%
	ENDIF
ELSE
	IF ARG:1 == 1
		PRINTPLAINFORM %SUIKA_MESSAGE_2(CHARA, ARG, 指示), 30, LEFT%
	ELSE
		PRINTPLAINFORM %SUIKA_MESSAGE_2(CHARA, ARG, 指示), 30, RIGHT%
	ENDIF
ENDIF

;-------------------------------------------------
;スイカ割り：台詞関数２,実際に喋る台詞
;ARG,プレイヤー番号
;-------------------------------------------------
@SUIKA_MESSAGE_2(CHARA, ARG, 指示)
#FUNCTIONS
#DIM CHARA
#DIMS 指示
;汎用台詞
SELECTCASE 指示
CASE "여기다!"
	SELECTCASE CFLAG:CHARA:어조
	;～です系
	CASE 1
		RESULTS = %TEXTR("거기에요!/지금이예요!")%
	;～だよ系
	CASE 2
		RESULTS = %TEXTR("거기!/지금!")%
	;～だぞ系
	CASE 3
		RESULTS = %TEXTR("여기다!/지금이다!")%
	;～のじゃ系
	CASE 4
		RESULTS = %TEXTR("거기야!/지금이야!")%
	;無口系
	CASE 5
		RESULTS = %TEXTR("거기…!/지금…!")%
	;～のよ系
	CASEELSE
		RESULTS = %TEXTR("거기요!/지금이요!")%
	ENDSELECT
CASE "가깝다"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("조금 가까워요/가까워지고 있어요/조금 더요")%
	CASE 2
		RESULTS = %TEXTR("가까워!가까워!/가까워지고 있어!/조금만 더!")%
	CASE 3
		RESULTS = %TEXTR("약간 가까워/가까워지고 있어/얼마 안남았어")%
	CASE 4
		RESULTS = %TEXTR("가깝다네/가까워지고있단다/앞으로 조금이야")%
	CASE 5
		RESULTS = %TEXTR("……조금 가까워/……가까워지고 있어/……조금 더")%
	CASEELSE
		RESULTS = %TEXTR("조금 가까워요/가까워지고 있어요/조금만 더요")%
	ENDSELECT
CASE "멀다"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("아직 멀었어요/아직 멀어요")%
	CASE 2
		RESULTS = %TEXTR("아직 멀었어/아직이야~")%
	CASE 3
		RESULTS = %TEXTR("아직 멀구나/아직 멀었어")%
	CASE 4
		RESULTS = %TEXTR("아직 멀다네/아직 멀었단다")%
	CASE 5
		RESULTS = %TEXTR("……멀어/……어직 멀어")%
	CASEELSE
		RESULTS = %TEXTR("아직 멀어요/아직 멀었어요")%
	ENDSELECT
CASE "약간멀다"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("아직 멀었습니다/상당히 머네요")%
	CASE 2
		RESULTS = %TEXTR("완전 멀었어/아직이야 계속 멀어")%
	CASE 3
		RESULTS = %TEXTR("약간 멀구나/꽤 떨어져있어")%
	CASE 4
		RESULTS = %TEXTR("아직 멀단다/아직 멀었단다")%
	CASE 5
		RESULTS = %TEXTR("……약간 멀어/……멀리 떨어져있어")%
	CASEELSE
		RESULTS = %TEXTR("약간 멀어요/꽤 떨어져 있네요")%
	ENDSELECT
CASE "前"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("앞에 있습니다/그대로입니다/방향은 맞습니다")%
	CASE 2
		RESULTS = %TEXTR("앞에 있어/그대로, 그대로/그쪽")%
	CASE 3
		RESULTS = %TEXTR("앞쪽이다/그대로 앞/정면을 향하고 있어")%
	CASE 4
		RESULTS = %TEXTR("앞이란다/그대로 좋구나/자, 걸으렴")%
	CASE 5
		RESULTS = %TEXTR("……앞/……그대로/……그방향")%
	CASEELSE
		RESULTS = %TEXTR("앞에 있어요/그대로 걸어서/그쪽 방향이에요")%
	ENDSELECT
CASE "약간앞"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("조금 앞이에요/약간 앞이예요/한걸음 앞인가요…")%
	CASE 2
		RESULTS = %TEXTR("조금만 앞!/조-금 앞/앞으로 한발자국!")%
	CASE 3
		RESULTS = %TEXTR("조금 앞이다/약간 앞이다/한걸음 앞인가")%
	CASE 4
		RESULTS = %TEXTR("조금 앞이란다/약간 앞이란다/한걸음 앞이란다")%
	CASE 5
		RESULTS = %TEXTR("……조금 앞/……약간 앞/……앞으로 한걸음")%
	CASEELSE
		RESULTS = %TEXTR("조금만 앞으로요/약간만 앞으로요/앞으로 한걸음일까요")%
	ENDSELECT
CASE "뒤"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("뒤입니다/반대를 향하고 있습니다/그쪽에는 없습니다")%
	CASE 2
		RESULTS = %TEXTR("뒤쪽이야!/반대로, 반대로!/그쪽이 아니야-!")%
	CASE 3
		RESULTS = %TEXTR("뒤쪽이야/반대쪽이야/그쪽에는 없어")%
	CASE 4
		RESULTS = %TEXTR("뒤란다/반대로 향하고있단다/그쪽에는 없단다")%
	CASE 5
		RESULTS = %TEXTR("……뒤/……반대쪽/……그쪽이 아니야")%
	CASEELSE
		RESULTS = %TEXTR("뒤예요/반대방향이예요/그쪽이 아니예요")%
	ENDSELECT
CASE "약간뒤"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("바로 뒤입니다/약간 뒤입니다/한걸음 뒤입니다…")%
	CASE 2
		RESULTS = %TEXTR("바로 뒤야!/약간 뒤야!/한걸음 뒤야!")%
	CASE 3
		RESULTS = %TEXTR("바로 뒤야/약간 뒤야/한걸음 뒤야")%
	CASE 4
		RESULTS = %TEXTR("바로 뒤란다/약간 뒤란다/한걸음 뒤란다")%
	CASE 5
		RESULTS = %TEXTR("……바로 뒤/……약간 뒤/……한걸음 뒤")%
	CASEELSE
		RESULTS = %TEXTR("바로 뒤에요/약간 뒤예요/한걸음 뒤예요")%
	ENDSELECT
CASE "右"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("오른쪽이요/오른쪽입니다/우측입니다")%
	CASE 2
		RESULTS = %TEXTR("오른쪽이야/오른쪽/더 오른쪽")%
	CASE 3
		RESULTS = %TEXTR("오른쪽/오른쪽이네/우측")%
	CASE 4
		RESULTS = %TEXTR("오른쪽이란다/오른쪽이라네/우측이란다")%
	CASE 5
		RESULTS = %TEXTR("오른쪽/……오른쪽/……오른쪽이요")%
	CASEELSE
		RESULTS = %TEXTR("오른쪽이예요/아직 오른쪽이예요/오른쪽이려나")%
	ENDSELECT
CASE "약간오른쪽"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("조금 오른쪽이요/약간 오른쪽일까요")%
	CASE 2
		RESULTS = %TEXTR("조금만 오른쪽/아직 오른쪽이랄까")%
	CASE 3
		RESULTS = %TEXTR("약간 오른쪽이다/아직도 오른쪽이구나")%
	CASE 4
		RESULTS = %TEXTR("약간 오른쪽이란다/조금 오른쪽이란다")%
	CASE 5
		RESULTS = %TEXTR("……약간 오른쪽/……조금 오른쪽")%
	CASEELSE
		RESULTS = %TEXTR("조금 오른쪽이예요/약간 오른쪽이려나")%
	ENDSELECT
CASE "左"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("왼쪽이요/왼쪽입니다/좌측입니다")%
	CASE 2
		RESULTS = %TEXTR("왼쪽이야/왼쪽/더 왼쪽")%
	CASE 3
		RESULTS = %TEXTR("왼쪽/왼쪽이네/좌측")%
	CASE 4
		RESULTS = %TEXTR("왼쪽이란다/왼쪽이라네/좌측이란다")%
	CASE 5
		RESULTS = %TEXTR("왼쪽/……왼쪽/……왼쪽이요")%
	CASEELSE
		RESULTS = %TEXTR("왼쪽이예요/아직 왼쪽이예요/왼쪽이려나")%
	ENDSELECT
CASE "약간왼쪽"
	SELECTCASE CFLAG:CHARA:어조
	CASE 1
		RESULTS = %TEXTR("조금 왼쪽이요/약간 왼쪽일까요")%
	CASE 2
		RESULTS = %TEXTR("조금만 왼쪽/아직 왼쪽이랄까")%
	CASE 3
		RESULTS = %TEXTR("약간 왼쪽이다/아직도 왼쪽이구나")%
	CASE 4
		RESULTS = %TEXTR("약간 왼쪽이란다/조금 왼쪽이란다")%
	CASE 5
		RESULTS = %TEXTR("……약간 왼쪽/……조금 왼쪽")%
	CASEELSE
		RESULTS = %TEXTR("조금 왼쪽이예요/약간 왼쪽이려나")%
	ENDSELECT
ENDSELECT
RETURNF "「" + RESULTS + "」"

repo_name: DNS/eraTWKR

path: ERB/커맨드관련/COMF/일상계/COMF484 수박깨기.ERB

license: mit


code:
;-------------------------------------------------
;アイテム画面
;-------------------------------------------------
@COM490
#DIM 대상
#DIM 전원
#DIM CLIENT_ID
#DIM 공허로회귀
#DIM 사용아이템
#DIM 표시아이템종별
#DIMS 식품특징
VARSET LOCAL
VARSET LOCALS
대상 = MASTER
공허로회귀 = 0
PRINTL 무엇을 사용합니까？
$LOOP
DRAWLINE
FOR LOCAL,120, 699
	SIF 표시아이템종별 != 0 && ITEMTYPE(LOCAL) != 표시아이템종별
		CONTINUE
	IF 대상 != MASTER
		IF 사용가능아이템(LOCAL) == 2 && ITEM:LOCAL
			CALL PRINT_ITEM_EXPLANATION(LOCAL)
		ENDIF
	ELSE
		IF 사용가능아이템(LOCAL) && ITEM:LOCAL
			CALL PRINT_ITEM_EXPLANATION(LOCAL)
		ENDIF
	ENDIF
NEXT
PRINTL
DRAWLINE
CALL PRINTBUTTON_EX("[전체표시]", 2000, 표시아이템종별 != 0, 표시아이템종별 == 0)
CALL PRINTBUTTON_EX("[ 회복약 ]", 2001, 표시아이템종별 != 1, 표시아이템종별 == 1)
CALL PRINTBUTTON_EX("[ 버프약 ]", 2002, 표시아이템종별 != 2, 표시아이템종별 == 2)
CALL PRINTBUTTON_EX("[ 식　품 ]", 2003, 표시아이템종별 != 3, 표시아이템종별 == 3)
CALL PRINTBUTTON_EX("[　과자　]", 2004, 표시아이템종별 != 4, 표시아이템종별 == 4)
CALL PRINTBUTTON_EX("[ 과　일 ]", 2005, 표시아이템종별 != 5, 표시아이템종별 == 5)
CALL PRINTBUTTON_EX("[ 그　외 ]", 2006, 표시아이템종별 != 6, 표시아이템종별 == 6)
RESETCOLOR
PRINTL
DRAWLINE
SIF ITEM:곤충채집세트
	PRINTFORML [901] 곤충 채집통을 확인한다
PRINTFORML [900] 콜렉션의 스키마 자동 사양 변환（현재\@ FLAG:C스키마자동사양 ? ON# OFF\@）
IF TARGET && SHIRAHU(TARGET)
	SIF 대상 != MASTER
		SETCOLOR C_YELLOW
	PRINTFORML [998] %CALLNAME:TARGET%에 사용한다
	RESETCOLOR
ENDIF

PRINTL [999] 그만둔다
INPUT
사용아이템 = RESULT
;アイテム以外の処理
SELECTCASE RESULT
	CASE 999
		RETURN -1
	CASE 900
		FLAG:C스키마자동사양 = !FLAG:C스키마자동사양
		PRINTFORMW 자동 사양을\@ FLAG:C스키마자동사양 ? ON# OFF\@(으)로 했습니다
		GOTO LOOP
	CASE 901
		;[虫捕りをする]へ転送
		CALL SHOW_MUSHI_CAGE
		GOTO LOOP
	CASE 998
		IF 대상 != MASTER
			대상 = MASTER
		ELSEIF SHIRAHU(TARGET) && TARGET
			대상 = TARGET
		ENDIF
		GOTO LOOP
	CASE 2000 TO 2006
		표시아이템종별 = RESULT % 2000
		GOTO LOOP
ENDSELECT

;使用可能アイテム以外の入力、またはアイテム未所持の場合は再入力
IF 사용가능아이템(사용아이템) == 0 || ITEM:사용아이템 <= 0
	GOTO LOOP
ENDIF
;相手使用時にMASTERのみアイテムの選択は再入力
IF 대상 != MASTER && 사용가능아이템(사용아이템) == 1
	GOTO LOOP
ENDIF
;IF ITEMTYPE_DRUG(使用アイテム,対象) && TCVAR:(ARG:1):お薬
; 	PRINTL 이미 약을 복용했으니 오늘은 이제 그만두자
; 	GOTO LOOP
;ENDIF
IF ITEMTYPE_FOOD(사용아이템) && !TIME_PROGRESS(TCVAR:대상:공복시각)
	PRINTFORML %조사처리(CALLNAME:대상,"은")% 아직 배가 고프지 않다
	GOTO LOOP
ENDIF
IF ITEMTYPE_SWEETS(사용아이템) && !TIME_PROGRESS(TCVAR:대상:디저트공복시각)
	PRINTL 간식은 아직 먹고 싶지 않다
	GOTO LOOP
ENDIF
TFLAG:193 = 사용아이템
TFLAG:194 = 대상 == MASTER ? MASTER # 1
SELECTCASE 사용아이템
	CASE 120	;블랙썬더
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		SIF 대상 == MASTER
			PRINTL ……싸구려 맛이 났다
		식품특징 = %ITEMNAME:사용아이템%/단/정키/사각사각/
		CALL RECOVER(대상, ITEM_TASTE(대상, 50, 식품특징), "체력", "초코에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상, 50, 식품특징), "기력", "초코에 의한 회복")
		CALL 만복도상승(대상, "디저트", 60)
		LOCAL:1 ++
	CASE 121	;초콜릿
		IF 대상 == MASTER
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
			식품특징 = %ITEMNAME:사용아이템%/단/
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 300, 식품특징), "체력", "초코에 의한 회복")
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 300, 식품특징), "기력", "초코에 의한 회복")
			CALL 만복도상승(대상, "디저트")
			LOCAL:1 ++
		ENDIF
	CASE 122	;고급초콜릿
		IF 대상 == MASTER
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
			PRINTFORML 맛있어!
			식품특징 = %ITEMNAME:사용아이템%/단/품위있는/호화/고급식재/
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 500, 식품특징), "체력", "초코에 의한 회복")
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 500, 식품특징), "기력", "초코에 의한 회복")
			CALL 만복도상승(대상, "디저트")
			LOCAL:1 ++
		ENDIF
	CASE 123	;진심초콜릿
		IF 대상 == MASTER
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
			PRINTFORML 사랑이 느껴져!
			식품특징 = %ITEMNAME:사용아이템%/애정/단/
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 1000, 식품특징), "체력", "초코에 의한 회복")
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 1000, 식품특징), "기력", "초코에 의한 회복")
			CALL 만복도상승(대상, "디저트")
			LOCAL:1 ++
		ENDIF
	CASE 212	;떡잎으로싼떡
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		LOCAL:1 ++
		;端午の節句は여름의季語だそうなので봄철じゃなかった
		식품특징 = %ITEMNAME:사용아이템%/단/
		CALL RECOVER(대상, ITEM_TASTE(대상, 100, 식품특징), "체력", "떡잎으로 싼 떡에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상,   0, 식품특징), "기력", "떡잎으로 싼 떡에 의한 회복")
		CALL 만복도상승(대상, "디저트")
	CASE 213	;아이스
		SIF TARGET && SHIRAHU(TARGET)
			PRINT 둘이 나란히
			PRINTDATA
				DATAFORM 「아이스」
				DATAFORM 「냉동 귤」
				DATAFORM 「(무늬)격이 2개 붙은 소다 아이스」
				DATAFORM 「2개(살)로 1조의 달걀 아이스」
				DATAFORM 「츄-애완동물」
				DATAFORM 「파피코」
				DATAFORM 「연유가 찬 milk bar」
				DATAFORM 「아즈 어금니-」
				DATAFORM 「수박 바」
				DATAFORM 「가튼, 이라고 귤」
				DATAFORM 「블랙 번개 아이스」
				DATAFORM 「눈구경 큰 복」
			ENDDATA
		PRINTFORML (을)를 먹었다
		식품특징 = %ITEMNAME:사용아이템%/차가운/단/
		CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 150, 식품특징), "기력", "아이스크림에 의한 회복")
		CALL 만복도상승(MASTER, "디저트")
			IF  TARGET && SHIRAHU(TARGET)
			CALL RECOVER(TARGET, ITEM_TASTE(TARGET, 150, 식품특징), "기력", "아이스크림에 의한 회복")
			CALL 만복도상승(TARGET, "디저트")
			ENDIF
		LOCAL:1 ++
	CASE 215	;홍차
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 사용했다
		SETBIT TCVAR:MASTER:특별한차, 0
		LOCAL:1 ++
	CASE 352	;딸기
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		식품특징 = %ITEMNAME:사용아이템%/야채/과일/단/
		CALL RECOVER(대상, ITEM_TASTE(대상, 50, 식품특징), "기력", "딸기에 의한 회복")
		LOCAL:1 ++
	CASE 364	;수박
		식품특징 = %ITEMNAME:사용아이템%/야채/과일/단/
		IF FLAG:70 == 1
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
			CALL RECOVER(대상, ITEM_TASTE(대상, 100, 식품특징), "기력", "수박에 의한 회복")
		ELSE
			IF TARGET != MASTER
				IF GET_TARGETNUM() > 1
					PRINTFORM 다같이
				ELSEIF SHIRAHU(TARGET)
					PRINTFORM %타겟과%
				ENDIF
			ENDIF
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
			CALL RECOVER(MASTER, ITEM_TASTE(MASTER, 100, 식품특징), "기력", "수박에 의한 회복")
			FOR 전원, 1, GET_TARGETNUM() + 1
				SIF TARGET:전원 <= 0
					CONTINUE
				SIF !SHIRAHU(전원)
					CONTINUE
				CALL RECOVER(전원, ITEM_TASTE(대상, 100, 식품특징), "기력", "수박에 의한 회복")
			NEXT
		ENDIF
		LOCAL:1 ++
	;CASE 400
	;	PRINTFORML %CALLNAME:MASTER%は%ITEMNAME:사용아이템%を開いた
	;	CALL COM401
	;	LOCAL:1 ++
	CASE 500	;녹즙
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 맛없어! 한잔 더!
		; 한판 주, 맛 데이터에 苦い가 없는데 苦い를 쓰고 있음. 일단 주의
		식품특징 = %ITEMNAME:사용아이템%/苦い/苦い/苦い/건강한/야채/이파리/야취/
		CALL RECOVER(대상,100, "체력", "녹즙에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상, 200, 식품특징), "기력", "녹즙에 의한 회복")
		LOCAL:1 ++
	CASE 501	;영양드링크
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		CALL RECOVER(대상, 약학지식(200), "체력", "영양드링크에 의한 회복")
		CALL RECOVER(대상, 약학지식(100), "기력", "영양드링크에 의한 회복")
		CFLAG:대상:졸음쫒기강도 = MAX(약학지식(20), CFLAG:대상:졸음쫒기강도)
		TCVAR:대상:약 = 1
			LOCAL:1 ++
	CASE 502	;정력제
		IF HAS_PENIS(대상)
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
			CALL RECOVER(대상, 약학지식(300), "정력", "정력제에 의한 회복")
			TCVAR:대상:약 = 1
			LOCAL:1 ++
		ELSE
			PRINTFORML 정력제의 사용 대상이 아닌 것 같다
			GOTO LOOP
		ENDIF
	CASE 503	;불끈불끈Z
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 파이팅 한발, 가득！
		CALL RECOVER(대상, 약학지식(500), "체력", "불끈불끈Z에 의한 회복")
		CALL RECOVER(대상, 약학지식(300), "기력", "불끈불끈Z에 의한 회복")
		CFLAG:대상:졸음쫒기강도 = MAX(약학지식(60), CFLAG:대상:졸음쫒기강도)
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	;CASE 504
	;		IF FLAG:70
	;			PRINTFORML 時間停止を解除してから使おう
	;			GOTO LOOP
	;		ENDIF
	;		IF CFLAG:MASTER:현재위치 != CFLAG:MASTER:초기위치
	;			PRINTFORML これは自室で飲もう
	;			GOTO LOOP
	;		ENDIF
	;		PRINTFORML ストロング虚無を口にした途端、虚無の力で思考はぼやけ、すべてがどうでもよくなってきた
	;		PRINTFORML %CALLNAME:MASTER%は缶を空けながら一日を無為に過ごした…
	;		공허로회귀 = 1
	CASE 505	;반짝반짝Ｘ
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 24시간 싸울 수 있을 것 같은 생각이 든다…！
		CALL RECOVER(대상, 약학지식(800), "체력", "반짝반짝Ｘ에 의한 회복")
		CALL RECOVER(대상, 약학지식(600), "기력", "반짝반짝Ｘ에 의한 회복")
		CFLAG:대상:졸음쫒기강도 = MAX(약학지식(180), CFLAG:대상:졸음쫒기강도)
		CFLAG:대상:철야 = 1
		TCVAR:대상:약 = 1
			LOCAL:1 ++
	CASE 506	;정력제『천원凸파』
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 너의××× 그리고 하늘을 찔러라!
		CALL RECOVER(대상, 약학지식(400), "체력", "정력제『천원凸파』에 의한 회복")
		CALL RECOVER(대상, 약학지식(300), "기력", "정력제『천원凸파』에 의한 회복")
		CALL RECOVER(대상, 약학지식(800), "정력", "정력제『천원凸파』에 의한 회복")
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	CASE 507	;포션
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		CALL RECOVER(대상, 약학지식(150), "기력", "포션에 의한 회복")
		CALL RECOVER(대상, 약학지식(150), "TSP", "포션에 의한 회복")
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	CASE 508	;매직포션
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 마력이 넘쳐 온다…
		CALL RECOVER(대상, 약학지식(300), "기력", "매직포션에 의한 회복")
		CALL RECOVER(대상, 약학지식(600), "TSP", "매직포션에 의한 회복")
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	CASE 509	;잠깨기포션
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		CALL RECOVER(대상, 약학지식(200), "기력", "잠깨기포션에 의한 회복")
		CFLAG:대상:졸음쫒기강도 = MAX(약학지식(240), CFLAG:대상:졸음쫒기강도)
		CFLAG:대상:철야 = 1
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	CASE 510	;우콘드링크
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
			PRINTL 간기능이 높아져, 취하기 어려워졌다
			TFLAG:멀미약 = 1
			LOCAL:1 ++
	CASE 511	;엘릭서
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		PRINTL 피로가 저 쪽으로 물리쳤다…！
		CALL RECOVER(대상, MAX(9999, MAXBASE:대상:체력), "체력", "엘릭서에 의한 회복")
		CALL RECOVER(대상, MAX(9999, MAXBASE:대상:기력), "기력", "엘릭서에 의한 회복")
		CALL RECOVER(대상, MAX(9999, MAXBASE:대상:정력), "정력", "엘릭서에 의한 회복")
		CALL RECOVER(대상, MAX(9999, MAXBASE:대상:TSP),  "TSP",  "엘릭서에 의한 회복")
		CFLAG:대상:졸음쫒기강도 = MAX(300, CFLAG:대상:졸음쫒기강도)
		TCVAR:대상:약 = 1
		LOCAL:1 ++
	CASE 512	;선단
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
			PRINTL 심상치 않은 힘이 넘친다……！
			CALL BUFF_BASE(대상, BASE_체력, MAX(MAXBASE:대상:체력 / 5, 500))
			CALL BUFF_BASE(대상, BASE_기력, MAX(MAXBASE:대상:기력 / 5, 500))
			CALL BUFF_BASE(대상, BASE_정력, MAX(MAXBASE:대상:정력 / 5, 500))
			LOCAL:1 ++
	CASE 514	;선향옥토
		IF TFLAG:선향옥토 > 0
			PRINTFORML 이미 사용하고 있다
			GOTO LOOP
		ELSE
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 향로에 지폈다
			PRINTL 현혹적인 훈향이 주위에 감돈다……
			TFLAG:선향옥토 = 240
			LOCAL:1 ++
		ENDIF
	CASE 515	;국사무쌍약　３回目まではバフ効果
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 마셨다
		IF TCVAR:대상:국사무쌍약 < 3
			PRINTL 힘이 넘쳐 흐른다……！
			CALL BUFF_BASE(대상, BASE_체력, MAX(MAXBASE:대상:체력 / 15, 150))
			CALL BUFF_BASE(대상, BASE_정력, MAX(MAXBASE:대상:정력 / 10, 150))
			TCVAR:대상:국사무쌍약 ++
			LOCAL:1 ++
		ELSE
			;四回目で爆発、デバフに
			SETCOLOR C_RED
			PRINTFORMW ！！
			PRINTFORML ……폭발해서 아프로 머리가 되었다……너무 많이 마신 것 같다……
			RESETCOLOR
			CALL BUFF_BASE(대상, BASE_체력, MIN((-1 * (MAXBASE:대상:체력 / 5)), -450))
			CALL BUFF_BASE(대상, BASE_정력, MIN((-1 * (MAXBASE:대상: 정력 / 3)), -450))
			TCVAR:대상:국사무쌍약 = 0
			LOCAL:1 ++
		ENDIF
	CASE 516	;가싱가든
		IF TFLAG:GG설치위치 == CFLAG:MASTER:현재위치
			PRINTFORMW %TEXTR(@"「제가 키웠습니다」（%GET_MAPNAME(MAIN_MAP)%거주　%CALLNAME:MASTER%씨）/본 품종은 안정성을 고려하고 있지만, 만일 불편하신 분이 있다면 거리를 두고 충분한 휴식을 취해 주세요")%
		ELSEIF TFLAG:GG설치위치
			PRINTFORML 가싱가든은 하루 한도 덧없는 생명
			PRINTFORMW 한 그루를 최후까지 지켜보자
			GOTO LOOP
		ELSEIF INROOM(CFLAG:MASTER:현재위치)
			PRINTFORMW 야외에서 하자
			GOTO LOOP
		;目撃者がいると駄目
		ELSEIF (TARGET > 0 || DATE_HITOGOMI(CFLAG:MASTER:현재위치) > 0) && !FLAG:70
			PRINTFORMW 여기서는 남의 눈이 있다……몰래 장치해야 할 것이다
			GOTO LOOP
		ELSE
			PRINTFORML %마스터는% 마법의 씨앗을 뿌렸다
			PRINTFORML 순식간에 마법 생물이 피어나기 시작해, 주위에 정욕을 돋구는 향기가 가득하다……
			TFLAG:GG설치위치 = CFLAG:MASTER:현재위치
			LOCAL:1 ++
		ENDIF
	CASE 517	;포이즌바디
		IF TFLAG:포이즌바디 > 0
			PRINTFORML 이 이상 섭취하면 간 기능에 장애가 온다
			GOTO LOOP
		ELSEIF HAS_PENIS(대상)
			PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 복용했다
			PRINTFORML 빙글빙글 몸 속에서 소용돌이치는 뭔가의 감각과 함께, 거기가 뜨거워졌다……
			PRINTFORML （%CALLNAME:MASTER%의 정액에 발정 작용 부여　효과발휘 중에는 사정할 때 체력・기력소비 증가）
			PRINTFORML %마스터는% 두통・현기증・구역질・관절통이 업습했지만, 건강보다 중요한 것도 있다며 마음을 굳게 먹고 견뎠다
			TFLAG:포이즌바디 = 240
			LOCAL:1 ++
		ELSE
			PRINTFORML 이 약은 남성 전용인 것 같다
			GOTO LOOP
		ENDIF
	CASE 520	;붕대
		IF !TFLAG:키스마크
			PRINTFORML 지금 사용해도 의미가 없다
			GOTO LOOP
		ELSE
			PRINTFORML %마스터는% %조사처리(ITEMNAME:사용아이템,"를")% 감아 키스 마크를 숨겼다
			TFLAG:붕대 = 1
			LOCAL:1 ++
		ENDIF
	CASE 521	;역서
		IF FLAG:70
			PRINTFORML 시간 정지를 해제하고 나서 사용하자
			GOTO LOOP
		ENDIF
		PRINTFORML %마스터는% 역서를 열었다
		PRINTFORML 점쟁이가 나왔다
		PRINTFORMW
		IF CFLAG:[[레이무]]:현재위치 == CFLAG:MASTER:현재위치
			PRINTFORML 재빠르게 레이무는 점쟁이의 머리에 불제봉을 내려쳤다.
			PRINTFORML 가련한 점쟁이는 머V리 가 되서 떠나갔다.
			FOR LOCAL,1,CHARANUM
				IF CFLAG:LOCAL:현재위치 == CFLAG:MASTER:현재위치
					BASE:LOCAL:이성 = MAXBASE:LOCAL:이성
					BASE:LOCAL:무드 = 0
				ENDIF
			NEXT
			LOCAL:1 ++
		ELSE
			PRINTFORML 「점술을 통해서 가야할 길을 봐 주겠소」
			$EKISYA
			CALL ASK_M("오늘의 운세", !GETBIT(FLAG:999, 1), "곤란해 하고있는 사람을 찾는다.", 1, "손톱깍이를 대령하라", BASE:MASTER:TSP >= 20, "미라다의돌 해주(100카리스마)", MONEY:2 >= 100, "엄지척!", 1, "공물로 바친다", 1)
			SELECTCASE RESULT
				CASE 0
					SELECTCASE RAND:10
						CASE 0
							TFLAG:행운보정 = 3
							PRINTFORML 「절호조다, 복권이라도 뽑으러 가는게 어때？」
						CASE 1 TO 3
							TFLAG:행운보정 = 1
							PRINTFORML 「양호하다, 미루고 있던 일이 있으면 지금 해라」
						CASE 4,5
							PRINTFORML 「좋지도, 나쁘지도 않음, 이라는 느낌이다.」
						CASE 6 TO 8
							TFLAG:행운보정 = -1
							PRINTFORML 「저조하다, 무리는 하지 말아라」
						CASE 9
							TFLAG:행운보정 = -3
							PRINTFORML 「...너무 안좋다, 오늘 하루는 얌전히 있어라」
					ENDSELECT
				CASE 1
					CLIENT_ID = SEARCH_UNIQUE_COM_사람돕기()
					IF !CLIENT_ID
						PRINTFORML 「그런 사람은 딱히 보이지 않는구나」
						PRINTFORML 「굳이 말하자면 나다, 홍백 무녀에게 노려지고 있다」
						PRINTFORML ...그건 어떻게 해줄수도 없을 것 같다.
					ELSE
						PRINTFORML 「%CALLNAME:CLIENT_ID% 인가?, 저 아이가 도움을 요구하고 있는 것 같구나」
					ENDIF
				CASE 2
					PRINTFORMW %마스터가% 점쟁이를 가만히 바라보자 눈길이 되돌아 왔다.
					PRINTFORMW ……뭐야 그 손톱은.
					PRINTFORMW 인간을 그만두었다는 어필일진 몰라도, 너무 길다.
					PRINTFORMW 일상 생활에서 불편하지 않나?, 타인을 실수로 긁어버리면 어떻게 하려는 거지?
					PRINTFORMW 자신은 언제 부드러운 부분에 손대도 괜찮게 매일 체크하고 있는데...
					PRINTFORMW 아니아니 애초에 무언가에 걸려 생살을 뜯어지게하면 아프지 않은가...
					PRINTFORMW 손톱 밑에 때가 껴도 불편하지 않은건가?
					PRINTFORMW 참을 수 없게 된 %마스터는% 시간을 멈추어 점쟁이의 손톱을 정중하게 잘라 가지런히 했다
					PRINTFORMW %마스터는% 큰 달성감을 맛보았다……
					PRINTFORML 한편 돌연 손톱이 짧아진 점쟁이는 곤혹하고 있다……
					CALL RECOVER_PERMIL(대상,40,"기력")
					BASE:MASTER:TSP -= 20
				CASE 3
					PRINTFORML 누구의 것을 해주 할까?
					FOR LOCAL,1,CHARANUM
						SIF CFLAG:LOCAL:몸목적
							PRINTFORMLC [{LOCAL}] %CALLNAME:LOCAL%
					NEXT
					PRINTFORML
					DRAWLINE
					PRINTFORML [999] 그만둔다
					INPUT
					IF RESULT == 999
						GOTO EKISYA
					ELSEIF CFLAG:RESULT:몸목적
						PRINTFORML 「이런 도구는 좋지 않다고 생각한다」
						PRINTFORMW 점쟁이가 무엇인가 복잡한 의식을 거행하자, 미라다의 돌은 서서히 빛을 잃어 바스라졌다.
						TIME += 25
						CFLAG:RESULT:몸목적 = 0
						MONEY:2 -= 100
					ENDIF
				CASE 4
					PRINTFORML %마스터는% 점쟁이와 시선을 주고 받고는 무언으로 엄지척을 했다
					PRINTFORML 점쟁이는 잠깐 주저하다가, 강력한 엄지척 돌려주어 왔다
					PRINTFORMW 두 사람 사이에 우정이 자라났다.
					GOTO EKISYA
				CASE 5
					PRINTFORML %마스터는% 시간을 멈춰서 점쟁이의 옷을 벗긴 뒤, 속옷을 신께 공물로 바쳤다.
					CALL BUFF_BASE(MASTER,BASE_TSP,100,1)
					PRINTFORMW 자신도 모르는 사이에 속옷을 탈취당한 점쟁이는 당황하고 있다.
			ENDSELECT
			PRINTFORMW
			DRAWLINE
			$EKISYA_DIVIDE
			PRINTFORML 레이무가 나타나 점쟁이의 머리를 불제봉으로 내리쳤다.
			PRINTFORML 가련한 점쟁이는 머리가 2개로 갈라져 머V리가 됐다.
			PRINTFORMW 레이무는 %마스터를% 잠시 바라보더니 떠나갔다.
			FOR LOCAL,1,CHARANUM
				IF CFLAG:LOCAL:현재위치 == CFLAG:MASTER:현재위치
					BASE:LOCAL:이성 = MAXBASE:LOCAL:이성
					BASE:LOCAL:무드 = 0
				ENDIF
			NEXT
			LOCAL:1 ++
		ENDIF
	CASE 530	;미라다의돌
		CALL SET_MIRADA
		IF RESULT == -1
			RETURN -1
		ELSE
			LOCAL:1 ++
		ENDIF
	CASE 550	;야트메꼬치
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		CALL 만복도상승(대상,"경식")
		식품특징 = %ITEMNAME:사용아이템%/생선 요리/안주/
		CALL RECOVER_PERMIL(대상, ITEM_TASTE(대상, 40, 식품특징), "체력", 0, "야트메꼬치에 의한 회복")
		CALL RECOVER_PERMIL(대상, ITEM_TASTE(대상, 80, 식품특징), "기력", 0, "야트메꼬치에 의한 회복")
		CALL RECOVER_PERMIL(대상, ITEM_TASTE(대상, 50, 식품특징), "정력", 0, "야트메꼬치에 의한 회복")
		LOCAL:1 ++
	CASE 576	;(酒造パッチ)아쿠마키
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		CALL 만복도상승(대상,"주식")
		식품특징 = %ITEMNAME:사용아이템%/일식/쌀/경단/단/쫄깃한/가정적/봄철/
		CALL RECOVER(대상, ITEM_TASTE(대상, 150, 식품특징), "체력", "아쿠마키에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상, 150, 식품특징), "기력", "아쿠마키에 의한 회복")
		LOCAL:1 ++
	CASE 626	;나무딸기
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		식품특징 = %ITEMNAME:사용아이템%/과일/단/시큼한/야취/
		CALL RECOVER(대상, ITEM_TASTE(대상, 50, 식품특징), "기력", "나무딸기에 의한 회복")
		LOCAL:1 ++
	CASE 628	;으름덩굴
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		식품특징 = %ITEMNAME:사용아이템%/과일/단/야취/
		CALL RECOVER(대상,80, "체력", "으름덩굴에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상, 80, 식품특징), "기력", "으름덩굴에 의한 회복")
		LOCAL:1 ++
	CASE 630	;선도
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		PRINTL 힘이 넘친다……！
		CALL BUFF_BASE(대상, BASE_체력, MAX(MAXBASE:대상:체력 / 10, 500))
		CALL BUFF_BASE(대상, BASE_기력, MAX(MAXBASE:대상:기력 / 10, 500))
		CALL BUFF_BASE(대상, BASE_정력, MAX(MAXBASE:대상:정력 / 10, 500))
		LOCAL:1 ++
	CASE 665	;(酒造パッチ)머루
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		식품특징 = %ITEMNAME:사용아이템%/과일/단/시큼한/야취/
		CALL RECOVER(대상, ITEM_TASTE(대상, 50, 식품특징), "기력", "머루에 의한 회복")
		LOCAL:1 ++
	CASE 669	;(酒造パッチ)휴대용타코
		PRINTFORML %조사처리(ITEMNAME:사용아이템,"를")% 먹었다
		CALL 만복도상승(대상,"경식")
		;KR 주, 현재 タマネギ(양파)의 맛 데이터는 없음
		식품특징 = 양파/토마토/양배추/주식/야채/짐승고기/스파이스/치즈/매운/푸짐/농후/기능적/야취/선명한/사각사각/
		CALL RECOVER(대상, ITEM_TASTE(대상, 120, 식품특징), "체력", "타코에 의한 회복")
		CALL RECOVER(대상, ITEM_TASTE(대상, 120, 식품특징), "기력", "타코에 의한 회복")
		LOCAL:1 ++
	CASEELSE
		GOTO LOOP
ENDSELECT
IF LOCAL:1
	IF !FLAG:70
		TIME += 5
	ELSE
		BASE:MASTER:TSP -= 5
	ENDIF
	ITEM:사용아이템 -= 1
	SIF 공허로회귀
		CALL OYASUMI
	RETURN 0
ENDIF

@SET_MIRADA
PRINTFORML 대상을 선택해 주세요.
PRINTFORML 황색은 이미 유효, 핑크는 이미 함락 소질이 붙어 있는 캐릭터입니다.
SIF FLAG:정렬
	CALL CHARASORT_EX
FOR LOCAL:1, 1, EX_CHARANUM + 1
	IF FLAG:정렬
		LOCAL = RESULT:(LOCAL:1)
		SIF LOCAL < 0
			CONTINUE
	ELSE
		LOCAL = LOCAL:1
		SIF LOCAL >= CHARANUM
			BREAK
	ENDIF
	;SIF TALENT:LOCAL:스침
	;	CONTINUE
	SIF CFLAG:LOCAL:출금
		CONTINUE
	SIF CFLAG:LOCAL:몸목적
		SETCOLOR C_YELLOW
	SIF TALENT:LOCAL:섹프 || TALENT:LOCAL:연모
		SETCOLOR C_PINK
	PRINTFORMLC [{LOCAL}] %CALLNAME:LOCAL%
	RESETCOLOR
NEXT
PRINTFORML
DRAWLINE
PRINTFORML [999] 그만둔다
INPUT
SIF !INRANGE(RESULT,1,CHARANUM)
	RETURN -1
SIF CFLAG:RESULT:몸목적
	RETURN -1
IF TALENT:RESULT:섹프 || TALENT:RESULT:연모
	TCVAR:RESULT:발정 = 1
ELSE
	CFLAG:RESULT:몸목적 = 1
ENDIF
PRINTFORMW %조사처리(CALLNAME:RESULT,"를")% 떠올리면서 미라다의 돌을 강하게 잡자, 돌은 희미하게 빛을 띠었다
RETURN 1

@사용가능아이템(ARG)
;1だとMASTERのみ、2だとあなた以外にも使える
#FUNCTION

SIF CFLAG:MASTER:우후후 && !ITEMTYPE_DRUG(ARG)
	RETURNF 0
;(酒造パッチ)あくまきと머루、タコス
;SELECTCASE ARG
;	CASE 121 TO 123, 215, 364, 500, 510, 514, 515, 516, 517, 520, 521, 530
;		RETURNF 1
;	CASE 120, 212, 213, 352, 501, 503, 505 TO 509, 511, 512, 550, 576, 626, 628, 630, 665, 669
;		RETURNF 2
;	CASE 502
;		SIF HAS_PENIS(TARGET)
;			RETURNF 2
;		RETURNF 1
;	CASEELSE
;		RETURNF 0
;ENDSELECT
SELECTCASE ITEMTYPE(ARG)
	CASE 1, 2, 3, 4, 5
		IF GROUPMATCH(ITEMNAME:ARG, "국사무쌍약", "초콜릿", "고급초콜릿", "진심초콜릿", "녹즙")
			RETURNF 1
		ENDIF
		RETURNF 2
	CASE 6
		RETURNF 1
	CASEELSE
		RETURNF 0
ENDSELECT

;本来@ITEMDATAを使うべきだが#FUNCTIONじゃないのがなんかやだ
@ITEMTYPE(ARG)
#FUNCTION
IF ITEMTYPE_DRUG(ARG)
	RETURNF 1
ELSEIF ITEMTYPE_BUFF(ARG)
	RETURNF 2
ELSEIF ITEMTYPE_FOOD(ARG)
	RETURNF 3
ELSEIF ITEMTYPE_SWEETS(ARG)
	RETURNF 4
ELSEIF ITEMTYPE_FRUIT(ARG)
	RETURNF 5
ELSEIF ITEMTYPE_ETCETERA(ARG)
	RETURNF 6
ENDIF
RETURNF 0

@ITEMTYPE_DRUG(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 501, 502, 503, 505, 506, 507, 508, 509, 511)
SIF GROUPMATCH(ITEMNAME:ARG, "영양드링크", "정력제", "불끈불끈Z", "반짝반짝Ｘ", "정력제『천원凸파』", "포션", "매직포션", "잠깨기포션", "엘릭서")
	RETURNF 1

;BUFF_BASEを行うもの
@ITEMTYPE_BUFF(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 512, 515, 630)
SIF GROUPMATCH(ITEMNAME:ARG, "선단", "국사무쌍약", "선도")
	RETURNF 1

;満腹度が増えるもの
@ITEMTYPE_FOOD(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 550, 576, 669)
SIF GROUPMATCH(ITEMNAME:ARG, "야트메꼬치", "아쿠마키", "휴대용타코")
	RETURNF 1

;デザート満腹度が増えるもの
@ITEMTYPE_SWEETS(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 120, 121, 122, 123, 212, 213)
SIF GROUPMATCH(ITEMNAME:ARG, "블랙썬더", "초콜릿", "고급초콜릿", "진심초콜릿", "떡잎으로싼떡", "아이스크림")
	RETURNF 1

;満腹度が増えないもの
@ITEMTYPE_FRUIT(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 352, 364, 500, 626, 628, 665)
SIF GROUPMATCH(ITEMNAME:ARG, "딸기", "수박", "녹즙", "나무딸기", "으름덩굴", "머루")
	RETURNF 1

;その他のもの
@ITEMTYPE_ETCETERA(ARG)
#FUNCTION
;SIF GROUPMATCH(ARG, 215, 510, 514, 516, 517, 520, 521, 530)
SIF GROUPMATCH(ITEMNAME:ARG, "홍차", "우콘드링크", "선향옥토", "가싱가든", "포이즌바디", "붕대", "역서", "미라다의돌")
	RETURNF 1

@PRINT_ITEM_EXPLANATION(ARG)
PRINTFORM [{ARG, 3, RIGHT}] %ITEMNAME:ARG, 18, LEFT% {ITEM:ARG, 3, RIGHT}개
SETCOLOR C_L_GRAY
	PRINTFORML %ITEM_EXPLANATION(ARG)%
RESETCOLOR

@약학지식(ARG)
#FUNCTION
#DIM 회복량
#DIM 강화횟수
회복량 = ARG
;回復量 = 基準値 * (1.1 ^ (조제Lv + 薬に関係しそうな知識))
강화횟수 = TALENT:MASTER:조제Lv + TALENT:MASTER:금단의지식 + TALENT:MASTER:조합지식
WHILE 강화횟수 > 0
	TIMES 회복량, 1.1
	강화횟수 --
WEND
RETURNF 회복량

;미각에 대한 회복 보정
;만복도가 오르지 않는 식품은 기력만 보정
@ITEM_TASTE(CHARA, 기준치, 식품특징)
#FUNCTION
#DIM CHARA
#DIM 기준치
#DIMS 식품특징
#DIMS TASTE_CHARA_GOOD
#DIMS TASTE_CHARA_BAD
#DIM 회복량
TASTE_CHARA_GOOD = %GET_STR(, "캐릭터데이터", CHARA, "요리：좋아하는 맛")%
TASTE_CHARA_BAD = %GET_STR(, "캐릭터데이터", CHARA, "요리：싫어하는 맛")%

회복량 = 기준치 + (STR_MULTI_COUNT(TASTE_CHARA_GOOD, 식품특징) - STR_MULTI_COUNT(TASTE_CHARA_BAD, 식품특징)) * 10

;제철 등 계절에 따른 보정
SELECTCASE GET_MONTH()
	CASE "봄의 달"
		IF STRCOUNT(식품특징, "봄철/") && !STRCOUNT(TASTE_CHARA_BAD, "봄철/")
			TIMES 회복량, 1.3
		ENDIF
	CASE "여름의 달"
		;夏は아이스크림が2.0倍(嫌いじゃなければ）
		IF STRCOUNT(식품특징, "아이스크림/") && !STRCOUNT(TASTE_CHARA_BAD, "아이스크림/")
			TIMES 회복량, 2.0
		ELSEIF STRCOUNT(식품특징, "수박/")
			TIMES 회복량, 1.3
		ENDIF
	CASE "가을의 달"
		IF STRCOUNT(식품특징, "으름덩굴/")
			TIMES 회복량, 1.3
		ENDIF
	CASE "겨울의 달"
		;冬は아이스크림が0.5倍(好きじゃなければ）
		IF STRCOUNT(식품특징, "아이스크림/") && !STRCOUNT(TASTE_CHARA_GOOD, "아이스크림/")
			TIMES 회복량, 0.5
		ENDIF
ENDSELECT

RETURNF 회복량

;아이템
@COM_ABLE490
;移動実行判定
SIF !TFLAG:100
	RETURN 0
;一括管理
SIF GLOBAL_COMABLE(490)
	RETURN RESULT
RETURN 1

path: ERB/커맨드관련/COMF/일상계/COMF490 아이템.ERB


code:
;-------------------------------------------------
;화이트데이
;-------------------------------------------------
@COM491

#DIM CAN_COOK
#DIM 친밀계수
#DIM 신뢰계수
#DIM WD_BUFF
#DIMS WD_GIFT

친밀계수 = 0
신뢰계수 = 0
CAN_COOK = 0
WD_BUFF = 0

;調理可能か
CALL COM_ABLE413
CAN_COOK = RESULT
IF FESTIVAL() == "화이트 데이" && INRANGE(CFLAG:TARGET:발렌타인,1,4) && SHIRAHU(TARGET)
	CALL ASK_M("답례 상대 목록",1,"답례용 과자를 만든다 (감미재 5개)",ITEM:감미재 >= 5,@"%CALLNAME:TARGET%에게 답례품을 전달",1)
ELSE
	CALL ASK_M("답례 상대 목록",1,"답례용 과자를 만든다",1)
ENDIF
SELECTCASE RESULT
	CASE 0
		CALL Valentine_List
		WAIT
		RETURN -1
	CASE 1
		IF !CAN_COOK
			PRINTFORMW 요리를 할 수 있는 환경이 필요하다
			RETURN -1
		ENDIF
		CALL WD_COOK
		RETURN RESULT
	CASE 2
		PRINTFORML 무엇을 건네줄까？（받은 것：%Valentine_Chocolate(TARGET)%）
		{
		CALL ASK_M("그만둔다",1,"블랙썬더",ITEM:블랙썬더,"로터초코",ITEM:로터초코,"WD초콜릿",ITEM:WD초콜릿,
		"수제초코쿠키",ITEM:수제초코쿠키,"WD푸딩",ITEM:WD푸딩,
		"수제푸딩",ITEM:수제푸딩,"데코레이션케이크",ITEM:데코레이션케이크 && CFLAG:TARGET:발렌타인 == 4)
		}
		SELECTCASE RESULT
			CASE 0
				RETURN -1
			CASE 1
				WD_GIFT = 블랙썬더
				SIF CFLAG:발렌타인 > 1
					PRINTFORMW %타겟은% 석연치 않은 얼굴을 하고 있다……
				친밀계수 = 5
			CASE 2
				WD_GIFT = 로터초코
				친밀계수 = 10
				SOURCE:쾌C += 3000
				SOURCE:반감 += 300
			CASE 3
				WD_GIFT = WD초콜릿
				친밀계수 = 25
				WD_BUFF = 100
			CASE 4
				WD_GIFT = 수제초코쿠키
				친밀계수 = 50
				EXP:애정경험 += 1
				WD_BUFF = 100
			CASE 5
				WD_GIFT = WD푸딩
				친밀계수 = 70
				EXP:애정경험 += 3
				WD_BUFF = 100
			CASE 6
				WD_GIFT = 수제푸딩
				친밀계수 = 80
				EXP:애정경험 += 5
				WD_BUFF = 200
			CASE 7
				WD_GIFT = 데코레이션케이크
				친밀계수 = 200
				EXP:애정경험 += 30
				WD_BUFF = 1000
		ENDSELECT
		TFLAG:193 = RESULT
		SIF RESULT >= 5
			TALENT:기분 = 1
		PRINTFORMW %타겟에게% %조사처리(WD_GIFT,"를")% 선물했다
		ITEM:WD_GIFT --
		CALL JUEL_UP_SPECIAL(TARGET,"호의","친밀",친밀계수,1)
		CALL CHANGE_CFLAG(4,TARGET,친밀계수)
		IF WD_BUFF
			CALL BUFF_BASE(TARGET,BASE_체력, WD_BUFF, 1)
			CALL BUFF_BASE(TARGET,BASE_기력, WD_BUFF, 1)
		ENDIF
		CFLAG:TARGET:발렌타인 += 100
		TIME += 10
		RETURN 1
ENDSELECT

@Valentine_List
FOR LOCAL,1,CHARANUM
	SIF !CFLAG:LOCAL:발렌타인
		CONTINUE
	SELECTCASE CFLAG:LOCAL:발렌타인 % 100
		CASE 2
			SETCOLOR C_GREEN
		CASE 3
			SETCOLOR C_YELLOW
		CASE 4
			SETCOLOR C_PINK
	ENDSELECT
	;返礼済みなら打ち消し線
	SIF CFLAG:LOCAL:발렌타인 > 100
		FONTSTYLE 4
	PRINTFORMLC [{LOCAL}]%CALLNAME:LOCAL%
	FONTREGULAR
	RESETCOLOR
NEXT
PRINTFORML
DRAWLINE
SETCOLOR C_PINK
PRINTFORM 수제
SETCOLOR C_YELLOW
PRINTFORM 고급
SETCOLOR C_GREEN
PRINTFORM 보통
RESETCOLOR
PRINTFORML 의리

@WD_COOK
PRINTFORML 무엇을 만들까？（전부 감미재５개 소비）
PRINTFORML 가지고 있는 재료：감미재({ITEM:감미재})　벌꿀({ITEM:벌꿀})　딸기({ITEM:딸기})　로터({ITEM:로터})
{
CALL ASK_M("그만둔다",1, "초코쿠키×10＋α：대량으로 만들 수 있다。흩뿌리기용。",ITEM:감미재 >= 5,
"푸딩×5＋α：밸런스가 좋다。벌꿀이 필요。（필요: 벌꿀）",ITEM:벌꿀 && ITEM:감미재 >= 5,
"데코레이션케이크：소중한 사람에게。（필요: 딸기３・요리기능４）",ITEM:딸기 >= 3 && ITEM:감미재 >= 5 && ABL:MASTER:요리기능 >= 4,
"로터초코×5：로터를 사용한 먹을 수 있는 수수께끼의 초콜릿。（필요: 로터）",ITEM:로터 && ITEM:감미재 >= 5)
}
SELECTCASE RESULT
	CASE 0
		RETURN -1
	CASE 1
		CALL GET_ITEM("수제초코쿠키", 10 + ABL:MASTER:요리기능, 2)
		ITEM:감미재 -= 5
	CASE 2
		CALL GET_ITEM("수제푸딩", 5 + ABL:MASTER:요리기능 / 3, 2)
		ITEM:감미재 -= 5
		ITEM:벌꿀 -= 1
	CASE 3
		ITEM:감미재 -= 5
		ITEM:딸기 -= 3
		CALL GET_ITEM("데코레이션케이크", 1, 2)
	CASE 4
		CALL GET_ITEM("로터초코", 5, 2)
		ITEM:감미재 -= 5
		ITEM:로터 -= 1
ENDSELECT
TIME += 60
EXP:MASTER:요리경험 += 3
DOWNBASE:MASTER:기력 = 300
RETURN 1

;-------------------------------------------------
;実行判定
;-------------------------------------------------
@COM_ABLE491
;チョコレートを贈る実行判定
SIF !TFLAG:100
	RETURN 0
;一括管理
SIF GLOBAL_COMABLE(491)
	RETURN RESULT
;気力0
SIF BASE:MASTER:기력 <= 0
	RETURN 0
;停止中は不可
SIF FLAG:70 == 1
	RETURN 0
;添い寝中
SIF CFLAG:동침중
	RETURN 0
;イタズラ中
SIF CFLAG:MASTER:장난
	RETURN 0
SIF CFLAG:우후후 == 2
	RETURN 0
SIF !PREPARE_WD()
	RETURN 0
IF FESTIVAL() != "화이트 데이"
	SIF !KITCHEN(CFLAG:MASTER:현재위치)
		RETURN 0
ENDIF

RETURN 1

@PREPARE_WD()
#FUNCTION
SIF DAY:2 != 1
	RETURNF 0
SIF DAY:3 > 14
	RETURNF 0
RETURNF 1

;デバッグ用
@WD_DEBUG
ITEM:감미재 = 99
ITEM:딸기 = 99
ITEM:벌꿀 = 99
DAY:2 = 1
DAY:3 = 13
FOR LOCAL,1,CHARANUM
	CFLAG:LOCAL:발렌타인 = 1 + RAND:4
NEXT

path: ERB/커맨드관련/COMF/일상계/COMF491 화이트데이.ERB


path: ERB/커맨드관련/COMF/일상계/COMF495 하늘을바라본다.ERB


code:
;-------------------------------------------------
;ラジオをいじる
;日常系コマンド、レベル1
;-------------------------------------------------
@COM496
#DIMS 大雨情報
#DIMS 大雪情報
#DIMS 暴風情報
#DIMS 雷情報
#DIMS 低温情報
#DIMS 雪崩情報
#DIMS 低気圧位置
#DIMS 線状降水帯位置
#DIMS 積乱雲位置
#DIMS 台風勢力
#DIMS 早期注意情報

低気圧位置 = %GET_LOCATION_LOW()%
線状降水帯位置 = %GET_LOCATION_LINER_RAINBAND()%
積乱雲位置 = %GET_LOCATION_CUMULUS()%

大雨情報 = %GET_WEATHER_WARNING_HEAVY_RAIN()%
大雪情報 = %GET_WEATHER_WARNING_HEAVY_SNOWFALL()%
暴風情報 = %GET_WEATHER_WARNING_STORM()%
雷情報 = %GET_WEATHER_WARNING_LIGHTNING()%
低温情報 = %GET_WEATHER_WARNING_COLD()%
雪崩情報 = %GET_WEATHER_WARNING_AVALANCHE()%
早期注意情報 = %GET_WEATHER_ADVISORY_probability_subsequent_WARNING()%

SELECTCASE IS_TYPHOON:1
	CASE 5
		台風勢力 = 猛烈な
	CASE 4
		台風勢力 = 非常に強い
	CASE 3
		台風勢力 = 強い
	CASEELSE
		台風勢力 =
ENDSELECT

[IF_DEBUG]
SELECTCASE TIME:0
	CASE 345 TO 359, 375 TO 389, 405 TO 419, 435 TO 449, 465 TO 479, 525 TO 539, 585 TO 599, 705 TO 719, 735 TO 749, 825 TO 839, 885 TO 899, 945 TO 959, 1005 TO 1019, 1065 TO 1079, 1125 TO 1139, 1185 TO 1199, 1245 TO 1259, 1305 TO 1319, 1365 TO 1379
	;天気予報(15分間)(05:45 06:15 06:45 07:15 07:45 08:45 09:45 11:45 12:15 13:45 14:45 15:45 16:45 17:45 18:45 19:45 20:45 21:45 22:45)
		DEBUGPRINTFORML 現在の放送：天気予報
	CASE 300 TO 329, 360 TO 374, 420 TO 434, 540 TO 554, 600 TO 614, 660 TO 674, 720 TO 734, 780 TO 794, 840 TO 854, 900 TO 914, 1020 TO 1034, 1140 TO 1184, 1200 TO 1214, 1260 TO 1274, 1380 TO 1394, 0 TO 14, 60 TO 74, 120 TO 134, 180 TO 194, 240 TO 254
	;ニュース(原則15分間)(05:00~05:29 06:00 07:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 17:00 19:00~19:44 20:00 21:00 23:00 24:00 01:00 02:00 03:00 04:00)
		DEBUGPRINTFORML 現在の放送：ニュース
	CASE 960 TO 989
	;気象通報(16:00~16:29)
		DEBUGPRINTFORML 現在の放送：気象通報
	CASEELSE
		DEBUGPRINTFORML 現在の放送：不明
ENDSELECT

DEBUGPRINTFORML %大雨情報%
DEBUGPRINTFORML %大雪情報%
DEBUGPRINTFORML %暴風情報%
DEBUGPRINTFORML %雷情報%
DEBUGPRINTFORML %低温情報%
DEBUGPRINTFORML %雪崩情報%
DEBUGPRINTFORML %早期注意情報%

[ENDIF]

PRINTW 라디오의 조작계통을 여기저기 건드려 보았다.
PRINTL

PRINTL ┏━━━━━━┓
PRINT ┃전원［
IF 大雨情報 == "大雨特別警報"
	PRINT □□
ELSEIF 大雨情報 == "大雨警報(土砂災害警戒情報)" || 大雪情報 == "大雪特別警報" || 暴風情報 == "暴風雪特別警報" || 暴風情報 == "暴風特別警報"
	IF CONTINUOUS_RAINFALL >= 10
		SETCOLOR C_気象_土砂災害警戒情報
		PRINT ■
		RESETCOLOR
		PRINT □
	ELSE
		SETCOLOR C_気象_土砂災害警戒情報
		PRINT ■■
		RESETCOLOR
	ENDIF
ELSEIF 大雨情報 == "大雨警報" || 大雪情報 == "大雪警報" || 暴風情報 == "暴風雪警報" || 暴風情報 == "暴風警報" || 雷情報 == "雷注意報(竜巻注意情報)" || 雪崩情報 == "なだれ注意報"
	SETCOLOR C_気象_警報
	PRINT ■■
	RESETCOLOR
ELSEIF 大雨情報 == "大雨注意報" || 大雪情報 == "大雪注意報" || 暴風情報 == "風雪注意報" || 暴風情報 == "強風注意報" || 雷情報 == "雷注意報"
	SELECTCASE 早期注意情報
		CASE "警報級の可能性［高］"
			SETCOLOR C_気象_注意報
			PRINT ■■
			RESETCOLOR
		CASE "警報級の可能性［中］"
			SETCOLOR C_気象_注意報
			PRINT ■
			RESETCOLOR
			PRINT ■
		CASEELSE
			SETCOLOR C_気象_注意報
			PRINT ■
			SETCOLOR C_GREEN
			PRINT ■
			RESETCOLOR
	ENDSELECT
ELSE
	SELECTCASE 早期注意情報
		CASE "警報級の可能性［高］"
			PRINT ■■
		CASE "警報級の可能性［中］"
			SETCOLOR C_GREEN
			PRINT ■
			RESETCOLOR
			PRINT ■
		CASEELSE
			SETCOLOR C_GREEN
			PRINT ■■
			RESETCOLOR
	ENDSELECT
ENDIF
PRINTL ］┃
PRINTL ┗━━━━━━┛
;(天候パッチ)雷発生時はノイズが混じる
IF GET_FRONTAL_THUNDERSTORM() == 1 && GET_HEAT_THUNDERSTORM() == 1
	PRINT ……
	FONTBOLD
	PRINT 파짓파짓！
	FONTREGULAR
	PRINT ………
	FONTBOLD
	PRINT 지지직
	FONTREGULAR
	PRINTL ……
ELSEIF GET_FRONTAL_THUNDERSTORM() == 1 || GET_HEAT_THUNDERSTORM() == 1
	PRINT ……
	FONTBOLD
	PRINT 파짓짓
	FONTREGULAR
	PRINTL ………　……
ELSE
	PRINTL ……　………　……
ENDIF

SELECTCASE TIME:0
	CASE 345 TO 359, 375 TO 389, 405 TO 419, 435 TO 449, 465 TO 479, 525 TO 539, 585 TO 599, 705 TO 719, 735 TO 749, 825 TO 839, 885 TO 899, 945 TO 959, 1005 TO 1019, 1065 TO 1079, 1125 TO 1139, 1185 TO 1199, 1245 TO 1259, 1305 TO 1319, 1365 TO 1379
	;天気予報(15分間)(05:45 06:15 06:45 07:15 07:45 08:45 09:45 11:45 12:15 13:45 14:45 15:45 16:45 17:45 18:45 19:45 20:45 21:45 22:45)
		SELECTCASE 低気圧位置
			CASE "台風遠方"
				PRINTFORML …의 남해상에 %台風勢力%태풍…경로는……
			CASE "台風勢力圏"
				PRINTFORML …해상의 %台風勢力%태풍……중심기압은…hPa…
			CASE "台風接近強風域", "台風接近暴風域"
				PRINTFORM …%台風勢力%태풍…경로는……
				IF 暴風情報 == "暴風特別警報"
					PRINTFORML ……{TIME_CLOSEST_TYPHOON:1}日%GET_NAME_WEATHER_TIMEZOME(TIME_CLOSEST_TYPHOON:2)%에…수십 년에 한번 오는 정도의 강도로…에 접근…
				ELSEIF IS_TYPHOON:1 >= 3
					PRINTFORML ……{TIME_CLOSEST_TYPHOON:1}日%GET_NAME_WEATHER_TIMEZOME(TIME_CLOSEST_TYPHOON:2)%에…세력을 유지한 채…에 접근…
				ELSE
					PRINTFORML ……{TIME_CLOSEST_TYPHOON:1}日%GET_NAME_WEATHER_TIMEZOME(TIME_CLOSEST_TYPHOON:2)%에…에 접근…
				ENDIF
			CASE "台風最接近"
				PRINTFORM …%台風勢力%태풍…호는
				IF 暴風情報 == "暴風特別警報"
					PRINTFORML ……수십년에 한번 오는 강도로…근접하여…삼엄한 경계를…
				ELSEIF IS_TYPHOON:1 >= 3
					PRINTFORML ……최접근하여…엄중한 경계를…
				ELSE
					PRINTFORML ……최접근하여…충분한 경계를…
				ENDIF
			CASE "台風通過暴風域", "台風通過強風域"
				PRINTFORM …%台風勢力%태풍…호는
				IF 暴風情報 == "暴風特別警報"
					PRINTFORML ……기록적인 강도 그대로…통과하여…엄중한 경계를…
				ELSEIF IS_TYPHOON:1 >= 3
					PRINTFORML ……세력을 유지한 채…통과하고…
				ELSE
					PRINTFORML ……을 통과하여…
				ENDIF
			CASE "寒冷渦遠方", "寒冷渦接近"
				SELECTCASE DAY:2
					CASE 1, 3, 4
						PRINTFORML …한랭 소용돌이가 동해쪽으로 진행되어……
					CASE 2
						PRINTFORML …상공에 강한 한기가 흘러들어와……
				ENDSELECT
			CASE "二つ玉低気圧遠方", "日本海低気圧遠方"
				PRINTFORML …동해상에 저기압이……
			CASE "二つ玉低気圧接近", "疑似好天", "二つ玉低気圧通過中"
				PRINTFORML …동해상에 급속도로 발달한 저기압이……
				PRINTFORML …山では天気の急変に……
			CASE "日本海低気圧接近", "日本海低気圧通過中"
				PRINTFORML …동해상에 발달한 저기압이……
			CASE "南岸低気圧遠方"
				PRINTFORML …남해상에…저기압이……
			CASE "南岸低気圧接近"
				PRINTFORML …태평양상에 발달한 저기압이……
			CASE "温暖前線遠方"
				IF TIME_ENTER_TERRITORY_EXTRATROPICAL_LOW:0 == DAY:2 && TIME_ENTER_TERRITORY_EXTRATROPICAL_LOW:1 <= DAY:3 + 1
					PRINTFORML …내일 이후에 전선이……
				ELSE
					PRINTFORML …주 중에 저기압이……
				ENDIF
			CASE "温暖前線接近"
				PRINTFORML …온난 전선의 접근으로 서쪽에서……
			CASE "暖域"
				PRINTFORML …한랭 전선 통과 시에는……
			CASE "寒冷前線通過"
				PRINTFORML …곳곳에 소나기가……
			CASEELSE
				SELECTCASE DAY:2
					CASE 1,3
						IF IS_RAINY_SEASON1:0 == 1 || IS_RAINY_SEASON2 == 1
							PRINTFORML …는 흐릴 것으로……
						ELSE
							PRINTFORML …는 맑을 것으로……
						ENDIF
					CASE 2
						IF POWER_WARM_AIR == 1
							PRINTFORML …태평양 고기압의 확장이 약해……
						ELSE
							PRINTFORML …전국적으로 여름 하늘이……
						ENDIF
					CASE 4
						PRINTFORML …시베리아 고기압…겨울형 기압차가가……
				ENDSELECT
		ENDSELECT

		SELECTCASE 大雨情報
			CASE "大雨特別警報"
				SELECTCASE RAND:4
					CASE 0
						PRINTFORML ……에 지금까지 경험해 본 적이 없는 폭우가……
					CASE 1
						PRINTFORML …에 수십년에 한번씩 오는 많은은 강수량이……
					CASE 2
						PRINTFORML ……지역에…호우 특별 경보를……
					CASE 3
						PRINTFORML ……모두들 안전한 피난이… 생명을 지키기 위한 행동을……
				ENDSELECT
			CASE "大雨警報(土砂災害警戒情報)"
				SELECTCASE RAND:2
					CASE 0
						PRINTFORML …지난 몇 년간 가장큰 산사태의 위험성이……
					CASE 1
						PRINTFORML …기상청에서는…지역에 산사태의 위험성이……
				ENDSELECT
			CASE "大雨警報"
				SELECTCASE RAND:3
					CASE 0
						PRINTFORML …등의 이동이 어려운 분은……
					CASE 1
						PRINTFORML …어두워지기 전에…피난을……
					CASE 2
						PRINTFORML …기상청에서는…지역에 호우·홍수경보를……
				ENDSELECT
			CASE "大雨注意報"
				SELECTCASE RAND:2
					CASE 0
						PRINTFORML …살고 계신 지역의 대피소 지도를……
					CASE 1
						PRINTFORML …기상청에서는…지역에 호우주의보를……
				ENDSELECT
		ENDSELECT

		SELECTCASE 大雪情報
			CASE "大雪特別警報"
				SELECTCASE RAND:3
					CASE 0
						PRINTFORML …폭설에 이어서 계속되는 폭설이……
					CASE 1
						PRINTFORML …수십 년에 한 번씩 내리는 폭설이……
					CASE 2
						PRINTFORML …지역에 대설 특별경보를……
				ENDSELECT
			CASE "大雪警報"
				IF CONTINUOUS_SNOWFALL >= 20
					PRINTFORML ……기상청에서는…지역에 현저한 폭설에 관한……
				ELSE
					PRINTFORML ……지역에는 대설경보가……
				ENDIF
			CASE "大雪注意報"
				PRINTFORML ……지역에는 대설주의보가……
		ENDSELECT

		SELECTCASE 暴風情報
			CASE "暴風雪特別警報"
				SELECTCASE RAND:4
					CASE 0
						PRINTFORML ……지역에…폭설 특별경보를……
					CASE 1
						PRINTFORML …수십 년에 한 번꼴로 눈보라가……
					CASE 2
						PRINTFORML …지금까지 없던 눈보라가…최대한 외출을 자제하시어……
					CASE 3
						PRINTFORML …맹렬한 눈보라가... 언제 발생해도 이상하지 않을……
				ENDSELECT
			CASE "暴風特別警報"
				SELECTCASE RAND:4
					CASE 0
						PRINTFORML ……지역에...폭풍 특별경보를……
					CASE 1
						PRINTFORML …지금까지 경험해 본 적이 없는 맹렬한 바람이……
					CASE 2
						PRINTFORML …태풍 이래의…기록적인……
					CASE 3
						PRINTFORML …맹렬한 바람이…신체의 안전을……
				ENDSELECT
			CASE "暴風雪警報"
				SELECTCASE RAND:2
					CASE 0
						PRINTFORML …지역에는 눈폭풍 경보가…외출은 삼가 주십시오……
					CASE 1
						PRINTFORML …수년간 최대급의 눈보라가……
				ENDSELECT
			CASE "暴風警報"
				PRINTFORML …지역에는 폭풍경보가…빠른 대피를……
			CASE "風雪注意報"
				PRINTFORML ……지역에는 풍설주의보가……
			CASE "強風注意報"
				PRINTFORML ……지역에는 강풍주의보가……
		ENDSELECT

		SELECTCASE 雷情報
			CASE "雷注意報(竜巻注意情報)"
					PRINTFORML …대기상태가 매우 불안정해져서……
					PRINTFORML …지역에는 토네이도…의 우려가 높아지고……
			CASE "雷注意報"
				IF DAY:2 == 2 && (IS_COLD_LOW || 低気圧位置 == "台風勢力圏")
					PRINTFORML …대기상태가 매우 불안정해져서……
				ELSE
					PRINTFORML …대기 상태가 불안정하게……
				ENDIF
		ENDSELECT

		SELECTCASE 雪崩情報
			CASE "なだれ注意報"
				PRINTFORML ……그럼 눈사태가 발생할 우려가……
		ENDSELECT

		SELECTCASE 低温情報
			CASE "低温注意報"
				PRINTFORML …지역은 평년에 비해 기온이 낮고……
		ENDSELECT

	CASE 300 TO 329, 360 TO 374, 420 TO 434, 540 TO 554, 600 TO 614, 660 TO 674, 720 TO 734, 780 TO 794, 840 TO 854, 900 TO 914, 1020 TO 1034, 1140 TO 1184, 1200 TO 1214, 1260 TO 1274, 1380 TO 1394, 0 TO 14, 60 TO 74, 120 TO 134, 180 TO 194, 240 TO 254
	;ニュース(原則15分間)(05:00~05:29 06:00 07:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 17:00 19:00~19:44 20:00 21:00 23:00 24:00 01:00 02:00 03:00 04:00)
		SELECTCASE 低気圧位置
			CASE "台風遠方"
				PRINTFORML …의 남해상에 %台風勢力%태풍…경로는……
			CASE "台風勢力圏"
				PRINTFORML …해상의 %台風勢力%태풍……중심기압은…hPa…
			CASE "台風接近強風域", "台風接近暴風域", "台風最接近", "台風通過暴風域", "台風通過強風域"
				PRINTFORM …%台風勢力%태풍…경로는……
				IF IS_TYPHOON:1 >= 3
					PRINTFORML ……세력을 유지한 채 …에 접근…
				ELSE
					PRINTFORML ……날에는 …에 접근…
				ENDIF
			CASE "寒冷渦遠方", "寒冷渦接近"
				SELECTCASE DAY:2
					CASE 1, 3, 4
						PRINTFORML …한랭 소용돌이가 동해측으로 진행되어……
					CASE 2
						PRINTFORML …상공에 강한 한기가 흘러들어……
				ENDSELECT
			CASE "二つ玉低気圧接近", "疑似好天", "二つ玉低気圧通過中"
				PRINTFORML …산에서의 조난이 연달아……
		ENDSELECT

		SELECTCASE 大雨情報
			CASE "大雨特別警報"
				SELECTCASE RAND:5
					CASE 0
						PRINTFORML ……에 지금까지 경험한 적이 없는 것 같은 폭우가……
					CASE 1
						PRINTFORML …에 수십년에 한번씩의 강수량이……
					CASE 2
						PRINTFORML ……지역에 호우 특별경보를……
					CASE 3
						PRINTFORML ……의 경계 레벨이 5로……
					CASE 4
						PRINTFORML ……모두 안전한 피난이… 생명을 지키기 위한 행동을……
				ENDSELECT

				SELECTCASE CONTINUOUS_RAINFALL
					CASE IS >= 40
						SELECTCASE RAND:2
							CASE 0
								PRINTFORML …정부는…격심재해로 지정……
							CASE 1
								PRINTFORML …각지에서... 갈기갈기 찢어진……가 구조……
						ENDSELECT
					CASE IS >= 20
						SELECTCASE RAND:3
							CASE 0
								PRINTFORML …산사태로…마을이…고립……
							CASE 1
								PRINTFORML …이미 기록적인 폭우가 쏟아진 지역도……
							CASE 2
								PRINTFORML …강이 범람하여 위험 수위를 넘어……
						ENDSELECT
					CASE IS >= 10
						SELECTCASE RAND:2
							CASE 0
								PRINTFORML …도심지에 기록적 단시간 호우정보를……
							CASE 1
								PRINTFORML …에 몇 년에 한 번씩 내리는 폭우가……
						ENDSELECT
				ENDSELECT
			CASE "大雨警報(土砂災害警戒情報)"
				SELECTCASE RAND:5
					CASE 0
						PRINTFORML ……의 경계 레벨이 4로……
					CASE 1
						PRINTFORML …지난 몇 년간 가장높은 산사태의 위험성이……
					CASE 2
						PRINTFORML …기상청에서는…지역에 산사태의 위험성이……
					CASE 3
						PRINTFORML …시는…각 가구…에 피난 지시를……
					CASE 4
						PRINTFORML …전철은 전 노선에서 운전을 보류하고……
				ENDSELECT

			CASE "大雨警報"
				SELECTCASE RAND:5
					CASE 0
						PRINTFORML …등의 이동이 어려운 분은……
					CASE 1
						PRINTFORML …어두워지기 전에…대피를……
					CASE 2
						PRINTFORML …기상청에서는 …지역에 호우·홍수 경보를……
					CASE 3
						PRINTFORML …시는… 각 가구…에 고령자 등 피난을……
					CASE 4
						PRINTFORML ……의 경계 레벨이 2로……
				ENDSELECT
		ENDSELECT

		SELECTCASE 大雪情報
			CASE "大雪特別警報"
				SELECTCASE RAND:4
					CASE 0
						PRINTFORML …폭설중의 폭설이 되어……
					CASE 1
						PRINTFORML …수십 년에 한 번씩 내리는 폭설이……
					CASE 2
						PRINTFORML …지역에 대설 특별경보를……
					CASE 3
						PRINTFORML …기록적인 폭설로 곳곳 고립……
				ENDSELECT
			CASE "大雪警報"
				IF CONTINUOUS_SNOWFALL >= 20
					SELECTCASE RAND:2
						CASE 0
							PRINTFORML ……기상청에서는 …지역에 현저한 폭설에 관한……
						CASE 1
							PRINTFORML …폭설로 인해 대규모 교통 장애가……
					ENDSELECT
				ELSE
					SELECTCASE RAND:2
						CASE 0
							PRINTFORML …기상청에서는 지역에 대설경보를……
						CASE 1
							PRINTFORML …폭설로 각지의 교통기관에 영향이……
					ENDSELECT
				ENDIF
		ENDSELECT

		SELECTCASE 暴風情報
			CASE "暴風雪特別警報"
				SELECTCASE RAND:6
					CASE 0
						PRINTFORML ……지역에…폭풍설 특별경보를……
					CASE 1
						PRINTFORML …수십 년에 한 번꼴로 눈보라가……
					CASE 2
						PRINTFORML …지금까지 없던 눈보라가…불필요한 외출은……
					CASE 3
						PRINTFORML …맹렬한 눈보라가... 언제 발생해도 이상하지 않을……
					CASE 4
						PRINTFORML …각지에서 …가 고립…에 구조 요청…
					CASE 5
						PRINTFORML …자동차 도로에서는… 많은 차가 꼼짝 못하고……
				ENDSELECT
			CASE "暴風特別警報"
				SELECTCASE RAND:4
					CASE 0
						PRINTFORML ……지역에…폭풍 특별경보를……
					CASE 1
						PRINTFORML …지금까지 경험이 없는 맹렬한 바람이……
					CASE 2
						PRINTFORML …태풍 이래의…기록적인……
					CASE 3
						PRINTFORML …맹렬한 바람이…신체의 안전을……
				ENDSELECT
			CASE "暴風雪警報"
				SELECTCASE RAND:2
					CASE 0
						PRINTFORML …지역에는 눈폭풍 경보가…외출은 삼가 주십시오……
					CASE 1
						PRINTFORML …몇 년에 한 번 꼴의 눈보라가……
				ENDSELECT
			CASE "暴風警報"
				SELECTCASE RAND:2
					CASE 0
						PRINTFORML …기상청에서는…지역에 폭풍경보를……
					CASE 1
						PRINTFORML …바람이 ...로부터의 피난은 위험...빠른 피난을……
				ENDSELECT
		ENDSELECT

		SELECTCASE 雷情報
			CASE "雷注意報(竜巻注意情報)"
				PRINTFORML …대기상태가 매우 불안정해져서……
				PRINTFORML …지역에는 토네이도…의 우려가 높아져……
			CASE "雷注意報"
				IF DAY:2 == 2 && (IS_COLD_LOW || 低気圧位置 == "台風勢力圏")
					PRINTFORML …대기상태가 매우 불안정해져서……
				ENDIF
		ENDSELECT

		IF POSSIBLITY_AVALANCHE >= 1
			PRINTFORML …각지에서 눈사태로 인한 피해가……
		ENDIF

		SIF IS_RAINY_SEASON1:1 == 1
			PRINTFORML …기상청에서는 서일본에 장마철 선언을……

		SELECTCASE IS_COLD_CROP_DAMAGE
			CASE IS >= 3
				PRINTFORML …기록적인 냉해에 의해… 긴급하고……
			CASE IS >= 1
				PRINTFORML …날씨 불순으로 작물에 영향이……
		ENDSELECT

		SELECTCASE RAND:3
			CASE 0
				PRINTFORML …오늘의 엔 시세는……
			CASE 1
				PRINTFORML …이어서 각지의 뉴스를……
			CASE 2
				PRINTFORML …에 의하면……
		ENDSELECT

	CASE 960 TO 989
	;気象通報(16:00~16:29)
		PRINTFORML …발표의...{DAY:3}일 정오 기상 통보입니다……
		SELECTCASE RAND:54
			CASE 0
				PRINTFORML ……계속해서...{DAY:3}일 정오의 날씨를 전하며……
			CASE 1
				PRINTFORML …후지산 … 기온……
			CASEELSE
				{
				PRINTFORML …%TEXTR("이시가키지마/나하/나세/가고시마/후쿠에/오쿠하라/아시미사키곶/무로마토곶/마쓰야마/하마다/사이고/오사카/시오미사키/
하치조지마/오시마/오마에자키/조시/마에바시/코나하마/와시마/아이카와/센다이/미야코/아키타/하코다테/우라카와/네무로/왓카나이/
폴로나이스쿠/세베로클리스크/하바롭스크/루도나야프리스타/블라디보스톡/
서울/울릉도/부산/목포/제주도/타이베이/항춘/창춘/베이징/다롄/칭다오/
상하이/우한/아모이/홍콩/바스코/마닐라/아버지섬/남조섬/
				")%…풍속은……hPa……
				}
		ENDSELECT

		PRINTFORML …이어서 어업 기상입니다

		SELECTCASE 低気圧位置
			CASE "台風遠方", "台風勢力圏", "台風接近強風域", "台風接近暴風域", "台風最接近", "台風通過暴風域", "台風通過強風域"
				PRINTFORML ……에는..hPa의 태풍..호가 있어서..km로 나아가서..……
			CASE "寒冷渦遠方", "寒冷渦接近"
				PRINTFORML ……에는 ...hPa의 저기압이 있어서 ...거의 정체……
			CASE "二つ玉低気圧遠方", "日本海低気圧遠方"
				PRINTFORML 황해의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "日本海低気圧接近", "日本海低気圧通過中"
				PRINTFORML 동해의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "二つ玉低気圧接近", "疑似好天", "二つ玉低気圧通過中"
				PRINTFORML 동해의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
				PRINTFORML 혼슈의 …에는 …hPa의 저기압이 있어…km로 나아가……
			CASE "南岸低気圧遠方"
				PRINTFORML 남해의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "南岸低気圧接近"
				PRINTFORML 혼슈의 …에는 …hPa의 저기압이 있어…km로 나아가……
			CASE "温暖前線遠方"
				PRINTFORML 장강 하류의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "温暖前線接近"
				PRINTFORML 서일본의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "暖域"
				PRINTFORML 호쿠리쿠의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가서……
			CASE "寒冷前線通過"
				PRINTFORML 산리쿠 앞바다의 ...에는 ...hPa의 저기압이 있어서 ...km로 나아가……
			CASE "低気圧未発生"
				PRINTFORML …의 ...에는 ...hPa의 고기압이 있어서 ...거의 정체……
		ENDSELECT
	CASEELSE
		IF GET_LOCATION_AREA_TYPHOON() == 1 && IS_TYPHOON:1 >= 5
			SELECTCASE RAND:5
				CASE 0
					IF 暴風情報 == "暴風特別警報"
						PRINTFORML …맹렬한 태풍 경로로… 기록적인 세력 그대로 접근……
					ELSE
						PRINTFORML …맹렬한 태풍…경로로 접근…
					ENDIF
				CASE 1
					IF 暴風情報 == "暴風特別警報"
						PRINTFORML …태풍…호로 인해 각지에 막대한 피해가……
					ELSE
						PRINTFORML …태풍…호로 인해 각지에 피해가……
					ENDIF
				CASE 2
					PRINTFORML …전철은 전 노선에서 운전을 보류하고……
				CASE 3
					IF 暴風情報 == "暴風特別警報"
						PRINTFORML …태풍 이래의…신변안전 확보……
					ELSE
						PRINTFORML …가능한 한 빠른 시일 내에 피난을……
					ENDIF
				CASE 4
					PRINTFORML …항공편에도 큰 영향이……
			ENDSELECT
		ENDIF
		SELECTCASE 大雨情報
			CASE "大雨特別警報"
				SELECTCASE RAND:5
					CASE 0
						PRINTFORML ……지금까지 경험해 본 적이 없는 폭우가……
					CASE 1
						PRINTFORML …에게 수십년에 한번씩의 강수량이……
					CASE 2
						PRINTFORML ……지역에 호우 특별경보를……
					CASE 3
						PRINTFORML ……의 경계 레벨이 5로……
					CASE 4
						PRINTFORML ……이미 안전한 피난이… 생명을 지키기 위한 행동을……
				ENDSELECT

				SELECTCASE CONTINUOUS_RAINFALL
					CASE IS >= 40
						SELECTCASE RAND:2
							CASE 0
								PRINTFORML …정부는…격심 재해로 지정……
							CASE 1
								PRINTFORML …각지에서... 갈기갈기 찢어……가 구조……
						ENDSELECT
					CASE IS >= 20
						SELECTCASE RAND:3
							CASE 0
								PRINTFORML …산사태에 의해…세대…고립…
							CASE 1
								PRINTFORML …이미 기록적인 폭우가 쏟아진 지역도……
							CASE 2
								PRINTFORML …강은 범람 위험 수위를 넘어……
						ENDSELECT
					CASE IS >= 10
						SELECTCASE RAND:2
							CASE 0
								PRINTFORML …시에 기록적 단시간 호우정보를……
							CASE 1
								PRINTFORML …에 몇 년에 한 번씩 내리는 폭우가……
						ENDSELECT
				ENDSELECT
			CASE "大雨警報(土砂災害警戒情報)"
				SELECTCASE RAND:5
					CASE 0
						PRINTFORML ……의 경계 레벨이 4로……
					CASE 1
						PRINTFORML …지난 몇 년간 가장 산사태의 위험성이……
					CASE 2
						PRINTFORML …기상청에서는… 지역에 산사태의 위험성이…
					CASE 3
						PRINTFORML …시는…각 가구…에 피난 지시를……
					CASE 4
						PRINTFORML …전철은 전 노선에서 운전을 보류하고……
				ENDSELECT
			CASEELSE
				IF 暴風情報 == "暴風雪特別警報"
					SELECTCASE RAND:6
						CASE 0
							PRINTFORML ……지역에 폭풍설 특별경보를……
						CASE 1
							PRINTFORML …수십 년에 한 번꼴로 눈보라가……
						CASE 2
							PRINTFORML …지금까지 없던 눈보라가…불필요한 외출은……
						CASE 3
							PRINTFORML …맹렬한 눈보라가... 언제 발생해도 이상하게……
						CASE 4
							PRINTFORML …각지에서 고립에 구조 요청……
						CASE 5
							PRINTFORML …자동차 도로에서는… 많은 차가 꼼짝 못하다……
					ENDSELECT
				ELSEIF 大雪情報 == "大雪特別警報"
					SELECTCASE RAND:4
						CASE 0
							PRINTFORML …폭설 이래의 폭설이 되어……
						CASE 1
							PRINTFORML …수십 년에 한 번씩 내리는 폭설이……
						CASE 2
							PRINTFORML …지역에 대설 특별경보를……
						CASE 3
							PRINTFORML …기록적인 폭설로 곳곳 고립……
					ENDSELECT
				ELSEIF 大雪情報 == "大雪警報" && CONTINUOUS_SNOWFALL >= 20
					SELECTCASE RAND:2
						CASE 0
							PRINTFORML ……기상청에서는 …지역에 현저한 폭설에 관한……
						CASE 1
							PRINTFORML …폭설로 인해 대규모 교통 장애가……
					ENDSELECT
				ELSEIF 雷情報 == "雷注意報(竜巻注意情報)"
					SELECTCASE RAND:3
						CASE 0
							PRINTFORML …지역에는 토네이도…의 우려가 높아져……
						CASE 1
							PRINTFORML …적란운 다가와…… 안전한 곳으로……
						CASE 2
							PRINTFORML …각지에서 돌풍이나 우박으로 인한 피해가……
					ENDSELECT
				ELSEIF POSSIBLITY_AVALANCHE >= 1
					PRINTFORML …각지에서 눈사태로 인한 피해가……
				ELSE
					PRINTFORML … ……………… ……
				ENDIF
		ENDSELECT
ENDSELECT

TIME += 15

;-------------------------------------------------
;実行判定
;-------------------------------------------------
@COM_ABLE496
SIF !TFLAG:100
	RETURN 0
;停止中は不可
SIF FLAG:70
	RETURN 0
;ウフフ中は不可
SIF CFLAG:우후후
	RETURN 0
;睡眠イタズラ中は不可
SIF CFLAG:장난
	RETURN 0
;添い寝中
SIF CFLAG:동침중
	RETURN 0
;デート中
;SIF CHK_DATENOW(CFLAG:デート中) && CFLAG:現在位置 != OMANEKIBEYA()
;	RETURN 0

RETURN 1

path: ERB/커맨드관련/COMF/일상계/COMF496 라디오를 만진다.ERB


code:
@CRITTER_DATA(C_ID)
#DIM C_ID

;CritterName = 獲物の名前
;CritterMeat = 入手できる肉のアイテム番号 701;ヤマドリ 702;獣肉 703;鳥肉 704;牛肉(未実装) 705;得体の知れない肉
;CritterMeat_Value = 入手できる肉の量（基礎）
;CritterEffort = 獲物の解体時間　TSPの消費量
;CritterIntro = 説明文
;CritterHint = ヒント文
;CritterTribe = 種族・特徴のタグ
;				獣/鳥/ 罠の対象判定に   小型/中型/大型/謎/ 捕獲時の歓楽等補正判定に
;				HUNTING_SPOT対応	博=1 竹=2 魔=3 沢=4 山=5 底=6
;				希少/猛禽/生体/外来/毛皮/水棲/絶滅/地中/爬虫類/水鳥/山鳥/ 今のところフレーバー
;				冬眠/夏鳥/冬鳥/ 季節出現判定に 今のところフレーバー

SELECTCASE C_ID
	CASE 1
		CritterName = 쥐
		CritterMeat = 702;獣肉
		CritterMeat_Value = 1
		CritterEffort = 15
		CritterIntro = 소형의 설치류. 농경민에게는 천적으로, 피해를 막기 위해 다양한 수단을 동원하여 싸워왔다
		CritterHint = 모든 환경에 분포／소형 동물
		CritterTribe = 짐승/소형/하쿠레이/죽림/마법의숲/산기슭/산정/지저/
	CASE 2
		CritterName = 족제비
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 개아목 족제비과의 소형 짐승. 몸집이 작으면서도 매우 난폭하며, 자기보다 큰 사냥감도 잡아먹는다
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포／소형 동물
		CritterTribe = 짐승/소형/하쿠레이/죽림/마법의숲/산기슭/산정/
	CASE 3
		CritterName = 담비
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 개아목 족제비과의 소형 짐승. 여우는 일곱 번 변신, 너구리는 여덟 번 변신, 담비는 아홉 번 변신, 이라고도 불리는 변화의 달인이라고 하지만…
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포／소형 동물
		CritterTribe = 짐승/소형/하쿠레이/죽림/마법의숲/산기슭/산정/모피/
	CASE 4
		CritterName = 밍크
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 개아목 족제비과의 소형 짐승. 모피가 목적으로 도입된 외래종으로 수달로 종종 오인된다
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포／소형 동물
		CritterTribe = 짐승/소형/왜래/하쿠레이/죽림/마법의숲/산기슭/산정/모피/
	CASE 5
		CritterName = 다람쥐
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 소형의 설치류. 물가에 사는 것이나 뭍에 사는 것, 날아다니는 것 등 종류가 풍부
		CritterHint = 죽림과 극단적으로 어두컴컴한 환경 이외에 분포。동면한다／소형 동물
		CritterTribe = 짐승/소형/동면/하쿠레이/마법의숲/산기슭/산정/
	CASE 6
		CritterName = 라쿤
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 개아목 너구리과의 중형 짐승. 아메리카 대륙 원산의 외래종. 너구리로 오인받는 검은 옆섬 꼬리는 사실 본종의 특징
		CritterHint = 고산과 극단적으로 어두컴컴한 환경 이외에 분포／중형 동물
		CritterTribe = 짐승/중형/왜래/하쿠레이/죽림/마법의숲/산기슭/
	CASE 7
		CritterName = 너구리
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 개아목 개과의 중형 짐승. 고기는 냄새가 심하므로 사전 손질을 잘 할 필요가 있다
		CritterHint = 고산과 극단적으로 어두컴컴한 환경 이외에 분포／중형 동물
		CritterTribe = 짐승/중형/하쿠레이/죽림/마법의숲/산기슭/
	CASE 8
		CritterName = 오소리
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 개아목 족제비과의 중형 짐승. 옛날에는 무지나라는 이름으로 불렸으며, 판 구멍을 너구리 등에게 이용당하는 일이 있다
		CritterHint = 고산 이외에 분포。동면한다／중형 동물
		CritterTribe = 짐승/중형/동면/하쿠레이/죽림/마법의숲/산기슭/지저/
	CASE 9
		CritterName = 흰코사향고양이
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 고양이아목 사향고양이과의 중형 짐승. 외래종으로 생각되고 있지만, 언제쯤 일본에 왔는지는 확실치 않다
		CritterHint = 고산과 극단적으로 어두컴컴한 환경 이외에 분포／중형 동물
		CritterTribe = 짐승/중형/왜래/하쿠레이/죽림/마법의숲/산기슭/모피/
	CASE 10
		CritterName = 여우
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 개아목 개과의 중형 짐승. 개과에는 드물게 떼지어 다니지 않고 작은 가족 단위로 생활한다
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포／중형 동물
		CritterTribe = 짐승/중형/하쿠레이/죽림/마법의숲/산기슭/산정/모피/
	CASE 11
		CritterName = 들개
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 야생화된 개. 산야에서 자활하고 있는 것을 노이누(ノイヌ), 일시적 인간으로부터 떨어져 생활하고 있는 것을 노라이누(ノライヌ)라고 한다
		CritterHint = 인계에 가까운 환경을 좋아한다／중형 동물
		CritterTribe = 짐승/중형/하쿠레이/죽림/마법의숲/
	CASE 12
		CritterName = 들고양이
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 야생화한 고양이. 그 포식력은 매우 높아, 작은 동물을 모조리 사냥하는 등 각지에서 문제가 되고 있다
		CritterHint = 인계에 가까운 환경을 좋아한다／중형 동물
		CritterTribe = 짐승/중형/하쿠레이/죽림/마법의숲/
	CASE 13
		CritterName = 멧토끼
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro = 토끼목 토끼과의 소형 짐승. 옛부터 사냥의 대상이었으며, 깔끔한 맛의 토끼 전골 등으로 중용되었다
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포　사정이 있어 죽림에 많다／중형 동물
		CritterTribe = 짐승/중형/하쿠레이/죽림/마법의숲/산기슭/산정/모피/
	CASE 14
		CritterName = 뉴트리아
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 45
		CritterIntro= 중형 설치류. 모피 목적으로 도입된 남아메리카 원산의 외래종. 강을 헤엄치는 등 물가에서의 생활을 좋아한다
		CritterHint = 늪이나 강 등 물길을 좋아한다／중형 동물
		CritterTribe = 짐승/중형/수서/왜래/마법의숲/산기슭/모피/
	CASE 15
		CritterName = 멧돼지
		CritterMeat = 702
		CritterMeat_Value = 5
		CritterEffort = 100
		CritterIntro = 경우제목 멧돼지과의 짐승. 상당히 신경질적이며 인간과 생활권이 겹칠 경우 야행성을 나타낸다
		CritterHint = 극단적으로 어두컴컴한 환경 이외에 분포。겨울에 가장 살이 오른다／대형 동물
		CritterTribe = 짐승/대형/하쿠레이/죽림/마법의숲/산기슭/산정/
	CASE 16
		CritterName = 사슴
		CritterMeat = 702
		CritterMeat_Value = 6
		CritterEffort = 100
		CritterIntro = 우제목 사슴과의 짐승. 예로부터 사냥의 대상이나 영수로도 취급된 친숙한 짐승
		CritterHint = 죽림과 극단적으로 어두컴컴한 환경 이외에 분포。가을에 가장 살이 오른다／대형 동물
		CritterTribe = 짐승/대형/하쿠레이/마법의숲/산기슭/산정/모피/
	CASE 17
		CritterName = 영양
		CritterMeat = 702
		CritterMeat_Value = 6
		CritterEffort = 100
		CritterIntro = 우제목 소과 양아과. 현대 일본에서는 수렵이 금지되어 있지만, 과거에는「아오지시(アオジシ)」라고도 불리며 사냥 대상으로 인기였다
		CritterHint = 죽림과 극단적으로 어두컴컴한 환경 이외에 분포。가을에 가장 살이 오른다／대형 동물
		CritterTribe = 짐승/대형/하쿠레이/마법의숲/산기슭/산정/모피/
	CASE 18
		CritterName = 원숭이
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 60
		CritterIntro = 영장목 긴꼬리원숭이과의 짐승. 현대 일본에서는 수렵이 금지되어 있지만, 이전에는「스네(スネ)」라고도 불리며 전문 사냥꾼조차 존재했다
		CritterHint = 인계와 떨어진 환경을 좋아한다／중형 동물
		CritterTribe = 짐승/중형/죽림/산기슭/산정/
	CASE 19
		CritterName = 반달가슴곰
		CritterMeat = 702
		CritterMeat_Value = 7
		CritterEffort = 120
		CritterIntro = 식육목 곰과의 대형 짐승. 곰고기는 물론이고 약이 되는 웅담을 찾아 예로부터 사냥의 대상이 되어 온 짐승
		CritterHint = 인계와 떨어진 환경을 좋아한다。동면한다。가을에 가장 살이 오른다／대형 동물
		CritterTribe = 짐승/대형/동면/마법의숲/산기슭/산정/모피/
	CASE 20
		CritterName = 뱀
		CritterMeat = 705
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 파충강 유린목 뱀아목. 껍질은 길한 물건으로, 고기는 잔가시가 많지만 스프 등으로 만들어 먹을 수 있다
		CritterHint = 고산 이외에 분포。동면한다／소형 동물
		CritterTribe = 짐승/소형/파충류/동면/하쿠레이/죽림/마법의숲/산기슭/지저/
	CASE 21
		CritterName = 큰박쥐
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 60
		CritterIntro = 익수목의 포유류. 큰박쥐의 근연종은 과실 등을 먹는 것이 많고 흡혈을 하는 종은 극히 일부분에 한한다
		CritterHint = 어두컴컴한 환경을 좋아한다。동면한다／중형 동물
		CritterTribe = 짐승/중형/동면/마법의숲/지저/
	CASE 22
		CritterName = 두더지
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 60
		CritterIntro = 진무맹장목 두더지과의 포유류. 포획에는 땅속에 덫을 둘 필요가 있을 텐데…
		CritterHint = 어두컴컴한 환경을 좋아한다／소형 동물
		CritterTribe = 짐승/소형/땅속/하쿠레이/죽림/마법의숲/산기슭/지저/
	CASE 23
		CritterName = 데스웜
		CritterMeat = 705
		CritterMeat_Value = 15
		CritterEffort = 200
		CritterIntro = 몸길이는 약 50cm이고 성충은 1.5m나 되는 거대한 지렁이나 애벌레 같은 생물. 독을 토한다고도 한다는데…
		CritterHint = 희소종。땅속에 숨어있는 것 같다／대형 동물
		CritterTribe = 짐승/희소/대형/땅속/수수께끼/지저/
	CASE 24
		CritterName = 츠치노코
		CritterMeat = 705
		CritterMeat_Value = 1
		CritterEffort = 60
		CritterIntro = 또 다른 이름은 벌뱀(バチヘビ). 짧고 몸통이 굵은 절구통 형태의 뱀으로, 2m 가까운 도약력을 갖고 맹독을 가진 것으로 알려진 환상의 생물
		CritterHint = 희소종。비교적 밝은 임야에 숨어 있는 것 같다。동면한다／중형 동물
		CritterTribe = 짐승/희소/중형/파충류/동면/하쿠레이/죽림/
	CASE 25
		CritterName = 슬라임
		CritterMeat = 705
		CritterMeat_Value = 5
		CritterEffort = 10
		CritterIntro = 아메바 형태의 점체로 외부로부터 받아드린 것을 소화·분해한다. 생태계에서는 분해자격의 역할을 하고 있다고 하는데…
		CritterHint = ……짐승？　어두컴컴한 환경을 좋아하는 것 같다／중형 동물
		CritterTribe = 짐승/중형/수수께끼/지저/
	CASE 26
		CritterName = 마탕고
		CritterMeat = 604
		CritterMeat_Value = 5
		CritterEffort = 30
		CritterIntro = 왠지 덫에 걸린 사람형으로도 보이는 섬뜩한 분위기의 대형 버섯. 옆에는「버섯은 먹지 마라」라는 메모가 떨어져 있었지만…
		CritterHint = 희소종。버섯이 자라는 환경에 나타나는 것 같다／대형 동물
		CritterTribe = 짐승/희소/대형/수수께끼/마법의숲/
	CASE 27
		CritterName = 야베오오츠노지카
		CritterMeat = 702
		CritterMeat_Value = 8
		CritterEffort = 120
		CritterIntro = 우제목 사슴과. 어깨 높이 1.8m나 되는, 체격도 뿔도 거대한 일본 고유의 사슴. 죠몬 시대 무렵에 멸종했다고 하지만…
		CritterHint = 희소종。신성한 숲의 영수로서 나타난다고 전해진다／대형 동물
		CritterTribe = 짐승/희소/대형/멸종/하쿠레이/
	CASE 28
		CritterName = 하나이즈미모리우시
		CritterMeat = 702
		CritterMeat_Value = 8
		CritterEffort = 120
		CritterIntro = 우제목 소과. 발굴된 유적과 발견자 이름의 한 글자를 따서 하나이즈미(花泉) 모리우(盛牛)라고 명명된, 죠몬 시대에 멸종된 바이슨의 조상
		CritterHint = 희소종。고산에서 조용히 살고 있다고 전해진다／대형 동물
		CritterTribe = 짐승/희소/대형/멸종/산정/
	CASE 29
		CritterName = 일본늑대
		CritterMeat = 702
		CritterMeat_Value = 2
		CritterEffort = 60
		CritterIntro = 개아목 개과의 중형 짐승. 메이지 시대에 멸종한 것으로 알려져 있으며, 예로부터 사람들에게 경외받고, 신으로 취급받았던 짐승
		CritterHint = 희소종。세력권의 산림을 배회하고 있다고 전해진다／중형 동물
		CritterTribe = 짐승/희소/중형/멸종/하쿠레이/죽림/산기슭/
	CASE 30
		CritterName = 일본수달
		CritterMeat = 702
		CritterMeat_Value = 1
		CritterEffort = 45
		CritterIntro = 개아목 족제비과의 소형 동물. 남획과 환경 악화로, 쇼와 말기 이후 목격 사례가 없어, 멸종 취급을 받았으나…
		CritterHint = 희소종。맑은 물 옆에서 조용히 지내고 있다고 전해진다／소형 동물
		CritterTribe = 짐승/희소/소형/수서/멸종/산기슭/
	CASE 31
		CritterName = 로터
		CritterMeat = 0
		CritterMeat_Value = 1
		CritterEffort = 15
		CritterIntro = 덫에 걸려 있던 진동하는 무언가。벌레의 일종이라고도 물고기의 일종이라고도 농작물이나 성인용품이라고도 한다
		CritterHint = ……생물？　온갖 환경에 분포한다／소형 동물
		CritterTribe = 짐승/소형/수서/수수께끼/하쿠레이/죽림/마법의숲/산기슭/산정/

	;ここからは鳥シリーズ
	CASE 50
		CritterName = 야생닭
		CritterMeat = 703
		CritterMeat_Value = 2
		CritterEffort = 30
		CritterIntro = 꿩과 닭속. 아마도 도망쳐 야생화된 닭. 소위 야생종의 닭은 아닌 것 같다
		CritterHint = 인간 마을 근처 임야에 산재／텃새
		CritterTribe = 새/중형/산새/하쿠레이/죽림/마법의숲/
	CASE 51
		CritterName = 뇌조
		CritterMeat = 703
		CritterMeat_Value = 1
		CritterEffort = 30
		CritterIntro = 꿩과 뇌조속. 랭지에 적응해, 고산대에만 분포. 털갈이해 겨울은 새하얀 모습으로 변한다
		CritterHint = 고산에 산재／텃새
		CritterTribe = 새/소형/산새/산정/
	CASE 52
		CritterName = 메추라기
		CritterMeat = 703
		CritterMeat_Value = 1
		CritterEffort = 20
		CritterIntro = 꿩과 메추라기속. 저지대의 초원・농경지 등에서 서식. 꿩과 중 유일하게「이주」를 하는 철새이기도 하다
		CritterHint = 저지대의 밝은 임야에 분포／여름・겨울새
		CritterTribe = 새/소형/산새/여름새/겨울새/하쿠레이/죽림/산기슭/
	CASE 53
		CritterName = 구리꿩
		CritterMeat = 701
		CritterMeat_Value = 3
		CritterEffort = 60
		CritterIntro = 꿩과 구리꿩속. 산간의 삼림에 서식. 전체 길이는 100cm가 넘으며, 수컷은 적갈색 깃털과 검은색・흰색이 섞인 선명한 꼬리깃을 지닌다
		CritterHint = 저지대의 산림에 분포／텃새
		CritterTribe = 새/중형/산새/하쿠레이/마법의숲/산기슭/
	CASE 54
		CritterName = 일본꿩
		CritterMeat = 703
		CritterMeat_Value = 3
		CritterEffort = 60
		CritterIntro = 꿩과 구리꿩속. 산지～평지의 숲, 하천 부지의 초원 등에 서식. 예로부터 사냥의 대상이 되어, 각종 노래와 민화에 등장하는 뛰어난 지명도를 자랑한다
		CritterHint = 저지대의 밝은 임야에 분포／텃새
		CritterTribe = 새/중형/산새/하쿠레이/죽림/마법의숲/산기슭/

ENDSELECT