diff --git a/.vscode/settings.json b/.vscode/settings.json
index 3e427d4..90d55eb 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -60,12 +60,12 @@
"*.asset": "yaml",
"*.meta": "yaml",
"*.prefab": "yaml",
- "*.unity": "yaml",
+ "*.unity": "yaml"
},
"explorer.fileNesting.enabled": true,
"explorer.fileNesting.patterns": {
"*.sln": "*.csproj",
"*.slnx": "*.csproj"
},
- "dotnet.defaultSolution": "Unity_2D_WhiteAction.slnx"
+ "dotnet.defaultSolution": "WhiteMan_Unity2D.slnx"
}
\ No newline at end of file
diff --git a/.vsconfig b/.vsconfig
new file mode 100644
index 0000000..f019fd0
--- /dev/null
+++ b/.vsconfig
@@ -0,0 +1,6 @@
+{
+ "version": "1.0",
+ "components": [
+ "Microsoft.VisualStudio.Workload.ManagedGame"
+ ]
+}
diff --git a/Assets/01_Scenes/BossScene.unity b/Assets/01_Scenes/BossScene.unity
index 63c4e3c..ac6c170 100644
--- a/Assets/01_Scenes/BossScene.unity
+++ b/Assets/01_Scenes/BossScene.unity
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:621eb6c2ee1aa1f0664699508dbf4ad49c69c0a3544212a040529f8524144e00
-size 212564
+oid sha256:66a8fa0b12a4dbe181ca4cf54c79e72f4d6964f5f34cfbaa2c135865609320dc
+size 212568
diff --git a/Assets/01_Scenes/GameScene.unity b/Assets/01_Scenes/GameScene.unity
index 33d03c5..ceb2aa3 100644
--- a/Assets/01_Scenes/GameScene.unity
+++ b/Assets/01_Scenes/GameScene.unity
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4936fa60de559c7c0bec4dc9602ff8e5525c773c8cd27af575fe8c6c6188455f
-size 182976
+oid sha256:ffe1d306d4bac29bfbff091e54d8540b457c18dbe743a424382a16716d85afeb
+size 183396
diff --git a/Assets/01_Scenes/StartScene.unity b/Assets/01_Scenes/StartScene.unity
index 4cf7aea..1d0a1d4 100644
--- a/Assets/01_Scenes/StartScene.unity
+++ b/Assets/01_Scenes/StartScene.unity
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c6458ae7b67f619741ded5457e5ddfc7134cf35f8530d7d68b1e8437eaa036ba
-size 64261
+oid sha256:f1e3b4a5ed5bdcec29fd614599b28b2ce734d175d2f620523f346a544d82ac6f
+size 64263
diff --git a/Assets/02_Scripts/Combat/PlayerWeaponInventory.cs b/Assets/02_Scripts/Combat/PlayerWeaponInventory.cs
index 077d914..26f0a23 100644
--- a/Assets/02_Scripts/Combat/PlayerWeaponInventory.cs
+++ b/Assets/02_Scripts/Combat/PlayerWeaponInventory.cs
@@ -119,6 +119,12 @@ public void EquipSlot(int slotIndex)
OnInventoryChanged?.Invoke();
}
+ public void ClearWeaponInven()
+ {
+ _weapons.Clear();
+ OnInventoryChanged?.Invoke();
+ }
+
// 디버그용: 슬롯에 해당 무기가 있는지 확인.
public bool HasWeaponInSlot(int slotIndex)
{
diff --git a/Assets/02_Scripts/Input/GameInput.cs b/Assets/02_Scripts/Input/GameInput.cs
index 91f3b01..1741893 100644
--- a/Assets/02_Scripts/Input/GameInput.cs
+++ b/Assets/02_Scripts/Input/GameInput.cs
@@ -1,77 +1,9 @@
-//------------------------------------------------------------------------------
-//
-// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
-// version 1.18.0
-// from Assets/11_Input/GameInput.inputactions
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Utilities;
-///
-/// Provides programmatic access to , , and instances defined in asset "Assets/11_Input/GameInput.inputactions".
-///
-///
-/// This class is source generated and any manual edits will be discarded if the associated asset is reimported or modified.
-///
-///
-///
-/// using namespace UnityEngine;
-/// using UnityEngine.InputSystem;
-///
-/// // Example of using an InputActionMap named "Player" from a UnityEngine.MonoBehaviour implementing callback interface.
-/// public class Example : MonoBehaviour, MyActions.IPlayerActions
-/// {
-/// private MyActions_Actions m_Actions; // Source code representation of asset.
-/// private MyActions_Actions.PlayerActions m_Player; // Source code representation of action map.
-///
-/// void Awake()
-/// {
-/// m_Actions = new MyActions_Actions(); // Create asset object.
-/// m_Player = m_Actions.Player; // Extract action map object.
-/// m_Player.AddCallbacks(this); // Register callback interface IPlayerActions.
-/// }
-///
-/// void OnDestroy()
-/// {
-/// m_Actions.Dispose(); // Destroy asset object.
-/// }
-///
-/// void OnEnable()
-/// {
-/// m_Player.Enable(); // Enable all actions within map.
-/// }
-///
-/// void OnDisable()
-/// {
-/// m_Player.Disable(); // Disable all actions within map.
-/// }
-///
-/// #region Interface implementation of MyActions.IPlayerActions
-///
-/// // Invoked when "Move" action is either started, performed or canceled.
-/// public void OnMove(InputAction.CallbackContext context)
-/// {
-/// Debug.Log($"OnMove: {context.ReadValue<Vector2>()}");
-/// }
-///
-/// // Invoked when "Attack" action is either started, performed or canceled.
-/// public void OnAttack(InputAction.CallbackContext context)
-/// {
-/// Debug.Log($"OnAttack: {context.ReadValue<float>()}");
-/// }
-///
-/// #endregion
-/// }
-///
-///
public partial class @GameInput: IInputActionCollection2, IDisposable
{
///
diff --git a/Assets/02_Scripts/Managers/GameManager.cs b/Assets/02_Scripts/Managers/GameManager.cs
index 5812abc..4e76d0d 100644
--- a/Assets/02_Scripts/Managers/GameManager.cs
+++ b/Assets/02_Scripts/Managers/GameManager.cs
@@ -36,5 +36,7 @@ public void OnSceneLoaded()
public void GameRestart()
{
Debug.Log("다시시작");
+
+ SceneLoadManager.Instance.RequestSceneChange("GameScene");
}
}
diff --git a/Assets/02_Scripts/Player/PlayerController.cs b/Assets/02_Scripts/Player/PlayerController.cs
index 749fac8..623861e 100644
--- a/Assets/02_Scripts/Player/PlayerController.cs
+++ b/Assets/02_Scripts/Player/PlayerController.cs
@@ -1758,7 +1758,6 @@ private void TickHitstun()
if (_hitstunTimer > 0f)
_hitstunTimer -= Time.fixedDeltaTime;
- Debug.Log($"_hitstunTimer : {_hitstunTimer}, _isGrounded : {_isGrounded} ");
if (_hitstunTimer <= 0f && _isGrounded && !IsActionActive())
{
@@ -1774,7 +1773,6 @@ public void TakeDamage(int amount, Vector2 hitVelocity = default, string hitReac
if (_health == null || _health.IsDead) return;
_health.TakeDamage(amount);
- Debug.Log($"{name} 피격: -{amount} (HP: {_health.CurrentHealth}/{_health.MaxHealth})");
if(_health.CurrentHealth <= 0)
{
@@ -1786,5 +1784,11 @@ public void PlayerDead()
{
//재시작 UI 띄우기
GameManager.Instance.Restart.ShowRestart();
+
+
+
+ PlayerWeaponInventory.Instance.ClearWeaponInven();
+
+ Destroy(gameObject);
}
}
diff --git a/Assets/99_Settings/UniversalRenderPipelineGlobalSettings.asset b/Assets/99_Settings/UniversalRenderPipelineGlobalSettings.asset
index b0bd9fb..3efd1b2 100644
--- a/Assets/99_Settings/UniversalRenderPipelineGlobalSettings.asset
+++ b/Assets/99_Settings/UniversalRenderPipelineGlobalSettings.asset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d7282c12ab73cfbdd29fe1fbe0a9dbfce98f05a4e5f772426e42b16631f91653
-size 24579
+oid sha256:41163b15a20534ce447518fb5800e1848647e2c63bca698751145a04218eafd5
+size 26615
diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
index a51f2db..3763740 100644
--- a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
+++ b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:14ed992af37c34b6993928b196f13db6fc2940dd1dcb0c5cec3fb03210a98728
-size 551003
+oid sha256:a73237e48a3b6c0164ad0ffd483edeb7f27dab722aaf42dada64a71c184dbdd7
+size 25217
diff --git a/Packages/manifest.json b/Packages/manifest.json
index 1dd4892..5d5e547 100644
--- a/Packages/manifest.json
+++ b/Packages/manifest.json
@@ -5,15 +5,15 @@
"com.unity.connect.share": "4.2.4",
"com.unity.feature.2d": "2.0.2",
"com.unity.feature.development": "1.0.2",
- "com.unity.inputsystem": "1.18.0",
- "com.unity.learn.iet-framework": "5.0.2",
+ "com.unity.inputsystem": "1.19.0",
+ "com.unity.learn.iet-framework": "5.0.3",
"com.unity.multiplayer.center": "1.0.1",
"com.unity.render-pipelines.universal": "17.3.0",
"com.unity.shadergraph": "17.3.0",
"com.unity.test-framework": "1.6.0",
- "com.unity.timeline": "1.8.10",
+ "com.unity.timeline": "1.8.12",
"com.unity.ugui": "2.0.0",
- "com.unity.visualscripting": "1.9.9",
+ "com.unity.visualscripting": "1.9.11",
"com.unity.modules.accessibility": "1.0.0",
"com.unity.modules.adaptiveperformance": "1.0.0",
"com.unity.modules.ai": "1.0.0",
diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json
index 3eade70..134a67b 100644
--- a/Packages/packages-lock.json
+++ b/Packages/packages-lock.json
@@ -11,11 +11,11 @@
"hash": "b92c05a25820cfc9f59ce4094eb46aaec8632ea2"
},
"com.unity.2d.animation": {
- "version": "13.0.4",
+ "version": "13.0.5",
"depth": 1,
"source": "registry",
"dependencies": {
- "com.unity.2d.common": "12.0.2",
+ "com.unity.2d.common": "12.0.3",
"com.unity.2d.sprite": "1.0.0",
"com.unity.collections": "2.4.3",
"com.unity.modules.animation": "1.0.0",
@@ -24,11 +24,11 @@
"url": "https://packages.unity.com"
},
"com.unity.2d.aseprite": {
- "version": "3.0.1",
+ "version": "3.0.2",
"depth": 1,
"source": "registry",
"dependencies": {
- "com.unity.2d.common": "12.0.1",
+ "com.unity.2d.common": "12.0.3",
"com.unity.2d.sprite": "1.0.0",
"com.unity.2d.tilemap": "1.0.0",
"com.unity.mathematics": "1.2.6",
@@ -61,11 +61,11 @@
"url": "https://packages.unity.com"
},
"com.unity.2d.psdimporter": {
- "version": "12.0.1",
+ "version": "12.0.2",
"depth": 1,
"source": "registry",
"dependencies": {
- "com.unity.2d.common": "12.0.1",
+ "com.unity.2d.common": "12.0.3",
"com.unity.2d.sprite": "1.0.0",
"com.unity.2d.tilemap": "1.0.0"
},
@@ -98,7 +98,7 @@
}
},
"com.unity.2d.tilemap.extras": {
- "version": "6.0.1",
+ "version": "6.0.2",
"depth": 1,
"source": "registry",
"dependencies": {
@@ -119,7 +119,7 @@
"url": "https://packages.unity.com"
},
"com.unity.burst": {
- "version": "1.8.28",
+ "version": "1.8.29",
"depth": 2,
"source": "registry",
"dependencies": {
@@ -139,14 +139,14 @@
"url": "https://packages.unity.com"
},
"com.unity.collections": {
- "version": "2.6.2",
+ "version": "2.6.6",
"depth": 2,
"source": "registry",
"dependencies": {
- "com.unity.burst": "1.8.23",
+ "com.unity.burst": "1.8.28",
"com.unity.mathematics": "1.3.2",
"com.unity.test-framework": "1.4.6",
- "com.unity.nuget.mono-cecil": "1.11.5",
+ "com.unity.nuget.mono-cecil": "1.11.6",
"com.unity.test-framework.performance": "3.0.3"
},
"url": "https://packages.unity.com"
@@ -162,7 +162,7 @@
"url": "https://packages.unity.com"
},
"com.unity.editorcoroutines": {
- "version": "1.0.1",
+ "version": "1.1.0",
"depth": 1,
"source": "registry",
"dependencies": {},
@@ -179,14 +179,14 @@
"depth": 0,
"source": "builtin",
"dependencies": {
- "com.unity.2d.animation": "13.0.4",
+ "com.unity.2d.animation": "13.0.5",
"com.unity.2d.pixel-perfect": "5.1.1",
- "com.unity.2d.psdimporter": "12.0.1",
+ "com.unity.2d.psdimporter": "12.0.2",
"com.unity.2d.sprite": "1.0.0",
"com.unity.2d.spriteshape": "13.0.0",
"com.unity.2d.tilemap": "1.0.0",
- "com.unity.2d.tilemap.extras": "6.0.1",
- "com.unity.2d.aseprite": "3.0.1",
+ "com.unity.2d.tilemap.extras": "6.0.2",
+ "com.unity.2d.aseprite": "3.0.2",
"com.unity.2d.tooling": "1.0.3"
}
},
@@ -196,15 +196,15 @@
"source": "builtin",
"dependencies": {
"com.unity.ide.visualstudio": "2.0.26",
- "com.unity.ide.rider": "3.0.39",
- "com.unity.editorcoroutines": "1.0.1",
- "com.unity.performance.profile-analyzer": "1.3.1",
+ "com.unity.ide.rider": "3.0.40",
+ "com.unity.editorcoroutines": "1.1.0",
+ "com.unity.performance.profile-analyzer": "1.3.4",
"com.unity.test-framework": "1.6.0",
"com.unity.testtools.codecoverage": "1.3.0"
}
},
"com.unity.ide.rider": {
- "version": "3.0.39",
+ "version": "3.0.40",
"depth": 1,
"source": "registry",
"dependencies": {
@@ -222,7 +222,7 @@
"url": "https://packages.unity.com"
},
"com.unity.inputsystem": {
- "version": "1.18.0",
+ "version": "1.19.0",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -231,7 +231,7 @@
"url": "https://packages.unity.com"
},
"com.unity.learn.iet-framework": {
- "version": "5.0.2",
+ "version": "5.0.3",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -270,7 +270,7 @@
"url": "https://packages.unity.com"
},
"com.unity.performance.profile-analyzer": {
- "version": "1.3.1",
+ "version": "1.3.4",
"depth": 1,
"source": "registry",
"dependencies": {},
@@ -332,7 +332,7 @@
}
},
"com.unity.splines": {
- "version": "2.8.2",
+ "version": "2.8.4",
"depth": 1,
"source": "registry",
"dependencies": {
@@ -353,7 +353,7 @@
}
},
"com.unity.test-framework.performance": {
- "version": "3.2.0",
+ "version": "3.4.0",
"depth": 3,
"source": "registry",
"dependencies": {
@@ -373,7 +373,7 @@
"url": "https://packages.unity.com"
},
"com.unity.timeline": {
- "version": "1.8.10",
+ "version": "1.8.12",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -394,7 +394,7 @@
}
},
"com.unity.visualscripting": {
- "version": "1.9.9",
+ "version": "1.9.11",
"depth": 0,
"source": "registry",
"dependencies": {
diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset
index 407d63c..acb7ffb 100644
--- a/ProjectSettings/ProjectSettings.asset
+++ b/ProjectSettings/ProjectSettings.asset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fb746600aa5bc9bc99198d954d34257f502227e8b93e4eaffe298d3b4a3949f5
-size 26799
+oid sha256:5289a9982a5b87c6ead607cfb4843954d8855854ddb0d4380227536d180c81ba
+size 26838
diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt
index c9e01d3..63d0eb1 100644
--- a/ProjectSettings/ProjectVersion.txt
+++ b/ProjectSettings/ProjectVersion.txt
@@ -1,2 +1,2 @@
-m_EditorVersion: 6000.3.9f1
-m_EditorVersionWithRevision: 6000.3.9f1 (7a9955a4f2fa)
+m_EditorVersion: 6000.3.16f1
+m_EditorVersionWithRevision: 6000.3.16f1 (a56f230f6470)
diff --git a/fix-mcp-key.ps1 b/fix-mcp-key.ps1
new file mode 100644
index 0000000..eb1b022
--- /dev/null
+++ b/fix-mcp-key.ps1
@@ -0,0 +1,50 @@
+# Claude Code 를 완전히 종료한 뒤 일반 PowerShell 창에서 실행하세요.
+# .claude.json 의 대/소문자 중복 프로젝트 키를 소문자 하나로 통일하고
+# UnityMCP 서버 설정을 보존합니다.
+
+$path = Join-Path $env:USERPROFILE ".claude.json"
+$upper = "C:/repos/UnityProject/WhiteMan_Unity2D"
+$lower = "c:/repos/UnityProject/WhiteMan_Unity2D"
+
+# 백업
+Copy-Item $path "$path.bak" -Force
+Write-Host "백업 생성: $path.bak"
+
+$json = Get-Content $path -Raw -Encoding UTF8 | ConvertFrom-Json
+$projects = $json.projects
+
+$unityMcp = $null
+if ($projects.PSObject.Properties.Name -contains $upper) {
+ $unityMcp = $projects.$upper.mcpServers.UnityMCP
+}
+if ($null -eq $unityMcp -and ($projects.PSObject.Properties.Name -contains $lower)) {
+ $unityMcp = $projects.$lower.mcpServers.UnityMCP
+}
+
+if ($null -eq $unityMcp) {
+ Write-Warning "UnityMCP 설정을 찾지 못했습니다. 중단합니다."
+ return
+}
+
+# 소문자 키가 없으면 대문자 항목을 그대로 옮겨 사용
+if (-not ($projects.PSObject.Properties.Name -contains $lower)) {
+ $projects | Add-Member -NotePropertyName $lower -NotePropertyValue $projects.$upper
+}
+
+# 소문자 키에 UnityMCP 보장
+if ($null -eq $projects.$lower.mcpServers) {
+ $projects.$lower | Add-Member -NotePropertyName "mcpServers" -NotePropertyValue ([pscustomobject]@{}) -Force
+}
+$projects.$lower.mcpServers | Add-Member -NotePropertyName "UnityMCP" -NotePropertyValue $unityMcp -Force
+
+# 대문자 중복 항목 제거
+if ($projects.PSObject.Properties.Name -contains $upper) {
+ $projects.PSObject.Properties.Remove($upper)
+}
+
+# UTF-8 (BOM 없음) 으로 저장
+$out = $json | ConvertTo-Json -Depth 100
+[System.IO.File]::WriteAllText($path, $out, (New-Object System.Text.UTF8Encoding($false)))
+
+Write-Host "완료. 대문자 키 제거 + 소문자 키에 UnityMCP 통일됨."
+Write-Host "이제 Claude Code 를 다시 실행하세요."