튜토리얼 졸업 시 정착 지원금 냥코인 200 (경제 소프트락 수정)
- 장터(회관 Lv2 건설) 전까지 코인 수입이 없어 3마리째 입양(100코인)이 불가능하던 문제 — 부엌 인력을 못 뽑아 굶는 소프트락 - 작별 단계 진입 시 촌장 냥이가 🪙200 지급 + 작별 대사에 안내 - 이미 튜토리얼을 마친 기존 마을도 접속 시 1회 소급 지급 (중복 방지 플래그) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
이 커밋은 다음에 포함됨:
@@ -98,7 +98,7 @@ const TUTORIAL_STEPS: TutStep[] = [
|
||||
check: (s) => s.hall.level >= 2,
|
||||
},
|
||||
{
|
||||
text: "축하해! 이제 이 마을은 온전히 네 거야. 건물을 늘리고, 마을을 꾸미고, 친구들을 돌봐줘. 난 회관에 있을게 — 언제든 놀러 와! 🐾",
|
||||
text: "축하해! 이제 이 마을은 온전히 네 거야. 아 참 — 정착 지원금으로 냥코인 🪙200을 문패 아래 두고 갈게. 새 친구를 데려오거나 장터를 짓는 데 쓰렴! 난 회관에 있을게 🐾",
|
||||
manual: true,
|
||||
},
|
||||
];
|
||||
|
||||
@@ -317,6 +317,11 @@ export const engine = {
|
||||
state.decors ??= [];
|
||||
state.tutorialStep ??= 99; // 기존 마을은 튜토리얼 생략
|
||||
state.coins ??= 0;
|
||||
// 소급 지급: 이미 튜토리얼을 마쳤는데 정착 지원금을 못 받은 마을
|
||||
if ((state.tutorialStep ?? 0) >= 99 && !state.settleGrantGiven) {
|
||||
state.coins += 200;
|
||||
state.settleGrantGiven = true;
|
||||
}
|
||||
if (state.happinessUnlocked === undefined) {
|
||||
const deckBuilt = state.buildings.some(
|
||||
(b) => b.type === "sun_deck" && b.constructionUntil === undefined,
|
||||
@@ -401,6 +406,11 @@ export const engine = {
|
||||
best.exp = 0;
|
||||
}
|
||||
}
|
||||
if (step === 9 && !state.settleGrantGiven) {
|
||||
// 졸업 선물: 마을 정착 지원금 (장터 전까지 코인 수입이 없는 구간 해소)
|
||||
state.coins = (state.coins ?? 0) + 200;
|
||||
state.settleGrantGiven = true;
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -742,6 +752,11 @@ export const engine = {
|
||||
state.decors ??= [];
|
||||
state.tutorialStep ??= 99; // 기존 마을은 튜토리얼 생략
|
||||
state.coins ??= 0;
|
||||
// 소급 지급: 이미 튜토리얼을 마쳤는데 정착 지원금을 못 받은 마을
|
||||
if ((state.tutorialStep ?? 0) >= 99 && !state.settleGrantGiven) {
|
||||
state.coins += 200;
|
||||
state.settleGrantGiven = true;
|
||||
}
|
||||
if (state.happinessUnlocked === undefined) {
|
||||
const deckBuilt = state.buildings.some(
|
||||
(b) => b.type === "sun_deck" && b.constructionUntil === undefined,
|
||||
|
||||
@@ -77,6 +77,7 @@ export interface GameState {
|
||||
syncToken?: string; // 세이브 보호 토큰
|
||||
happinessUnlocked?: boolean; // 행복도 시스템 해금 (회관 Lv3 + 햇볕 데크)
|
||||
happinessIntroSeen?: boolean; // 촌장 냥이 행복도 안내를 봤는가
|
||||
settleGrantGiven?: boolean; // 정착 지원금 지급 여부
|
||||
decors?: DecoTile[]; // 꾸미기 바닥 타일
|
||||
resources: Record<ResourceKey, number>;
|
||||
cats: Cat[];
|
||||
|
||||
새 이슈에서 참조
사용자 차단