[WL-816] 게임 시작마다 섬 세이브 초기화(resetSaveEveryStart 1) + 몬스터 공격 예고 바닥 판 off(decalEnabled 0) (PD 2026-09-15 · #816)
- WLIslandSave.Prepare: resetSaveEveryStart 면 실행 1회당 1번 세이브 삭제·던전 해금 0·보류 보상 0(던전→섬 복귀 시엔 아님). 되돌리기 = 0. - WLTelegraphSettings.asset decalEnabled 1→0 (값만). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
546ea28b43
commit
d32399fa0b
|
|
@ -27,7 +27,7 @@ MonoBehaviour:
|
|||
defaultHitSeconds: 0.16
|
||||
correctFromLiveClip: 1
|
||||
maxTelegraphSeconds: 2.5
|
||||
decalEnabled: 1
|
||||
decalEnabled: 0
|
||||
maxConcurrent: 6
|
||||
poolWarmCount: 8
|
||||
groundYOffset: 0.06
|
||||
|
|
|
|||
|
|
@ -78,6 +78,7 @@ MonoBehaviour:
|
|||
applyStartCoin: 1
|
||||
startCoin: 10
|
||||
saveResetToken: 816g-1
|
||||
resetSaveEveryStart: 1
|
||||
dungeonCameraMatchIsland: 1
|
||||
camPitch: 45
|
||||
camYaw: 0
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@ namespace WL.Island
|
|||
|
||||
const string kTokenKey = "WL_Island_SaveToken";
|
||||
static System.Reflection.FieldInfo s_startingMoney;
|
||||
static bool s_resetDoneThisRun; // 2026-09-15 PD — 실행(Play) 1회당 1번만 초기화
|
||||
|
||||
/// <summary>`IslandManager.Awake` 안(= `LoadGameData()` 직전)에서 단 한 번 불린다.</summary>
|
||||
public static void Prepare(string saveName)
|
||||
|
|
@ -67,10 +68,14 @@ namespace WL.Island
|
|||
var cfg = WLIslandSettings.Instance;
|
||||
if (cfg == null || cfg.enabled_ == 0 || cfg.gateFlowEnabled == 0) return;
|
||||
|
||||
// ① 세이브 1회 초기화 — 토큰이 바뀌었을 때만(PD 에게 새 초기 상태를 보여 줄 때)
|
||||
if (!string.IsNullOrEmpty(cfg.saveResetToken) &&
|
||||
PlayerPrefs.GetString(kTokenKey, "") != cfg.saveResetToken)
|
||||
// ① 세이브 초기화 — 토큰이 바뀌었을 때(1회) · 또는 `resetSaveEveryStart` 면 **게임 시작마다**(실행 1회당 1번 ·
|
||||
// 던전에서 섬으로 돌아올 때는 아님 · 2026-09-15 PD 「내가 얘기하기 전까지 매번 초기화 상태에서 시작」)
|
||||
bool everyStart = cfg.resetSaveEveryStart != 0 && !s_resetDoneThisRun;
|
||||
if (everyStart ||
|
||||
(!string.IsNullOrEmpty(cfg.saveResetToken) &&
|
||||
PlayerPrefs.GetString(kTokenKey, "") != cfg.saveResetToken))
|
||||
{
|
||||
s_resetDoneThisRun = true;
|
||||
try
|
||||
{
|
||||
string path = Application.persistentDataPath + "/" + saveName + ".dat";
|
||||
|
|
|
|||
|
|
@ -313,6 +313,11 @@ namespace WL.Island
|
|||
"비우면 아무것도 지우지 않는다. PD 에게 새 상태를 보여 줄 때 값을 바꾼다.")]
|
||||
public string saveResetToken = "816g-1";
|
||||
|
||||
[Tooltip("🔴 1 이면 **게임을 시작할 때마다**(Play/앱 실행 1회당 1번 · 던전에서 섬으로 돌아올 때는 아님) 섬 세이브·던전 해금·보류 보상을 " +
|
||||
"전부 지우고 시작 골드부터 다시 시작한다 — 2026-09-15 PD 「내가 얘기하기 전까지는 게임 시작 시 매번 초기화된 상태에서 시작」" +
|
||||
"(초반 Flow 구성 예정). 0 = 세이브 유지(토큰 1회 초기화만).")]
|
||||
public int resetSaveEveryStart = 1;
|
||||
|
||||
// ───────────────────────────────── WL-816i · 카메라 구도 고정
|
||||
// PD 「카메라 구도는 섬에서 조작할 때의 각도와 뷰를 말한거야. 전장에 진입해도 바뀌지 않아야 하기 때문」
|
||||
// → 기준은 **섬**. 아래 기본값은 섬(FI) 카메라 실측값 그대로다.
|
||||
|
|
|
|||
Loading…
Reference in New Issue