[WL-816zc] PD 조정 — 울타리 콜라이더도 끔(투명 벽) + 3 s 상시 재숨김 · 상인/사과나무 자리 교환 · 던전 발판 = 입구 자리(0,0,3) · 좌판·사과나무 콜라이더 유지(판매·수확 트리거) (#816)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
깃 관리자 2026-09-15 17:05:42 +09:00
parent 4d5aa6f546
commit 4175874c51
3 changed files with 16 additions and 5 deletions

View File

@ -140,7 +140,7 @@ MonoBehaviour:
gateColor: {r: 0.28, g: 0.5, b: 0.66, a: 1}
gatePrefabPath: Assets/WL/Island/Prefabs/WL_DungeonGate_Arch.prefab
platformUseFarm: 0
platformPosition: {x: -2, y: 0, z: -2}
platformPosition: {x: -2.5, y: 0, z: 8.5}
- enabled_: 0
id: 3
displayName: "\uB358\uC804 3"
@ -153,7 +153,7 @@ MonoBehaviour:
gateColor: {r: 0.62, g: 0.42, b: 0.24, a: 1}
gatePrefabPath: Assets/WL/Island/Prefabs/WL_DungeonGate_Arch.prefab
platformUseFarm: 0
platformPosition: {x: -2.5, y: 0, z: 8.5}
platformPosition: {x: -2, y: 0, z: -2}
- enabled_: 0
id: 4
displayName: "\uB358\uC804 4"
@ -166,4 +166,4 @@ MonoBehaviour:
gateColor: {r: 0.55, g: 0.24, b: 0.3, a: 1}
gatePrefabPath: Assets/WL/Island/Prefabs/WL_DungeonGate_Arch.prefab
platformUseFarm: 0
platformPosition: {x: 6, y: 0, z: -2}
platformPosition: {x: 0, y: 0, z: 3}

View File

@ -393,6 +393,13 @@ namespace WL.Island
if (rends[r] == null || !rends[r].enabled) continue;
rends[r].enabled = false; s_hiddenRends.Add(rends[r]); FenceRenderersHidden++;
}
// 2026-09-15 PD 「플레이어 위치에 투명 벽」 — 렌더러만 끈 울타리의 콜라이더가 보이지 않는 벽으로 남았다 → 같이 끈다.
var fcols = ch.GetComponentsInChildren<Collider>(true);
for (int r = 0; r < fcols.Length; r++)
{
if (fcols[r] == null || !fcols[r].enabled) continue;
fcols[r].enabled = false; s_hiddenCols.Add(fcols[r]);
}
}
}
@ -425,11 +432,13 @@ namespace WL.Island
static IEnumerator Co_ReHideFences(WLIslandSettings cfg, Scene scene)
{
float wait = Mathf.Max(0.5f, cfg.farmReHideDelaySeconds);
for (int k = 0; k < 8; k++)
// 섬이 살아 있는 동안 3 s 마다 계속 훑는다(이미 꺼진 것은 건너뛰어 비용 0에 가깝다) — 늦게 활성화되는 타일·밭까지 덮는다.
for (int k = 0; k < 400; k++)
{
yield return new WaitForSeconds(wait);
if (cfg == null || cfg.hideIslandFences == 0) yield break;
if (cfg == null || cfg.hideIslandFences == 0 || !scene.IsValid() || !scene.isLoaded) yield break;
HideIslandFences(cfg, scene, null);
if (cfg.hideFarms != 0) { Vector3 _c; HideFarms(cfg, scene, out _c); } // 늦게 생긴 밭의 울타리·소품도
}
}

View File

@ -553,6 +553,7 @@ namespace WL.Island
extraSkipIfComponent = "Merchant", // 좌판 안에 이미 상인이 있으면 안 덧붙인다
extraOffset = new Vector3(0f, 0f, -1.1f),
yaw = 180f,
keepCollider = 1, // 2026-09-15 PD — 좌판 트리거가 있어야 판매가 된다
},
new WLFlowStepDef
{
@ -560,6 +561,7 @@ namespace WL.Island
platformFromDungeonRow = 2, // 기존 발판 #3 좌표
kind = "prefab",
prefabPath = "Assets/FarmingIsland/Prefabs/FruitTrees/Tree_Apple.prefab",
keepCollider = 1, // 2026-09-15 PD 「과일 나무 수집이 안 된다」 — 콜라이더를 지우면 FI 수확 트리거가 안 걸린다
},
new WLFlowStepDef
{