심볼 계산기 주간퀘 계산 수정 + 일퀘 툴팁 문구 조정

- computeCompletion 에서 day 0(오늘)의 주간 지급 스킵. 주간퀘 획득 드롭다운
  값(0이 아닐 때)이 이미 '이번 주에 받은 수량'을 반영한다고 가정. 목요일이
  오늘이어도 day 1(다음 목요일)부터 누적 시작.
  별도 토글 없이 드롭다운 값만으로 해결.
- 일일 퀘스트 완료 토글 title 'oldgr 일퀘 완료 여부' → '금일 일일 퀘스트
  완료 여부' (표기 일관성)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
caadiq 2026-04-23 09:55:40 +09:00
parent 281332ad14
commit 3ef40e8111
2 changed files with 5 additions and 3 deletions

View file

@ -118,8 +118,8 @@ function SymbolCard({ symbol, equipped, charId }) {
<button
type="button"
onClick={() => patch({ dailyDone: !dailyDone })}
title="오늘 일퀘 완료 여부"
className="shrink-0 rounded-md h-8 px-3 text-xs font-semibold border disabled:opacity-40"
title="금일 일일 퀘스트 완료 여부"
className="shrink-0 rounded-md h-8 px-3 text-xs font-semibold border"
style={dailyDone ? {
background: 'var(--selected-bg)',
borderColor: 'var(--selected-border)',

View file

@ -18,6 +18,8 @@ export function formatKoreanDate(d) {
* - 일퀘는 매일, 주간퀘는 매주 목요일 리셋 N회분을 번에 지급한다고 가정
* - extra(추가 심볼) 즉시 적용
* - dailyDone이면 오늘 일퀘는 이미 받은 걸로 간주 (내일부터 다시 지급)
* - 주간퀘는 day 0(오늘) 목요일이어도 지급하지 않음: 주간퀘 획득 드롭다운의
* 값이 이미 '이번 주에 받은 수량' 반영한다고 가정. 다음 목요일부터 누적.
*/
export function computeCompletion({ remainingSymbols, daily, weeklyPerWeek, extra, dailyDone }) {
const need = Math.max(remainingSymbols - extra, 0)
@ -28,7 +30,7 @@ export function computeCompletion({ remainingSymbols, daily, weeklyPerWeek, extr
let cursor = dayjs().tz(KST).startOf('day')
for (let day = 0; day < 3650; day++) {
if (!(day === 0 && dailyDone)) acc += daily
if (cursor.day() === 4 && weeklyPerWeek > 0) acc += weeklyPerWeek
if (day > 0 && cursor.day() === 4 && weeklyPerWeek > 0) acc += weeklyPerWeek
if (acc >= need) return { days: day, date: cursor.toDate() }
cursor = cursor.add(1, 'day')
}