diff --git a/music_quiz/data/mq/function/load.mcfunction b/music_quiz/data/mq/function/load.mcfunction index 489ca37..9845e29 100644 --- a/music_quiz/data/mq/function/load.mcfunction +++ b/music_quiz/data/mq/function/load.mcfunction @@ -2,10 +2,6 @@ data modify storage mq:main answer set value {title:"", author:"", alias:[]} data merge storage func:temp {} data merge storage mq:tmp {} -# chat_answer 모드 활성화 플래그 초기화. 모드가 살아있으면 첫 플레이어 로그인 직후 -# 모드가 다시 1b 로 set 함. 모드가 빠지면 이대로 0b 유지 → 로그인 메세지 미표시. -data modify storage chat_answer:status active set value 0b - function mq:init/config function mq:init/songs function mq:init/buttons diff --git a/music_quiz/data/mq/function/players/login.mcfunction b/music_quiz/data/mq/function/players/login.mcfunction index 86e778b..226bec4 100644 --- a/music_quiz/data/mq/function/players/login.mcfunction +++ b/music_quiz/data/mq/function/players/login.mcfunction @@ -9,6 +9,5 @@ $setworldspawn $(x) $(y) $(z) $(r) $(f) $tp @s $(x) $(y) $(z) $(r) $(f) gamemode adventure @s -# chat_answer 모드가 살아있으면 PlayerLoggedInEvent 핸들러가 active=1b 로 set. -# mq:load 에서 0b 로 초기화되어 있으므로, 1b 인 상황 = 모드 활성. -execute if data storage chat_answer:status {active:1b} run tellraw @s ["",{"text":"[채팅정답] ","color":"green","bold":true},{"text":"모드가 활성화되어 있습니다.","color":"gray"},{"text":" 정답 입력 시 ","color":"gray"},{"text":"채팅","color":"yellow","bold":true},{"text":"으로 바로 제출할 수 있습니다.","color":"gray"}] +# 채팅정답 모드 활성 알림은 모드가 직접 PlayerLoggedInEvent 핸들러에서 +# mq:players/mod_active_notice 를 호출해서 표시한다 (race-free). diff --git a/music_quiz/data/mq/function/players/mod_active_notice.mcfunction b/music_quiz/data/mq/function/players/mod_active_notice.mcfunction new file mode 100644 index 0000000..fd11c33 --- /dev/null +++ b/music_quiz/data/mq/function/players/mod_active_notice.mcfunction @@ -0,0 +1,3 @@ +# chat_answer 모드의 PlayerLoggedInEvent 핸들러가 직접 호출. +# 모드가 없으면 이 함수가 호출될 일이 없으므로 메세지가 안 뜬다. +tellraw @s ["",{"text":"[채팅정답] ","color":"green","bold":true},{"text":"모드가 활성화되어 있습니다.","color":"gray"},{"text":" 정답 입력 시 ","color":"gray"},{"text":"채팅","color":"yellow","bold":true},{"text":"으로 바로 제출할 수 있습니다.","color":"gray"}]