diff --git a/.idea/.idea.Degulleo3D116Rework/.idea/.gitignore b/.idea/.idea.Degulleo3D116Rework/.idea/.gitignore deleted file mode 100644 index 5d68b23f..00000000 --- a/.idea/.idea.Degulleo3D116Rework/.idea/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -# 디폴트 무시된 파일 -/shelf/ -/workspace.xml -# Rider에서 무시된 파일 -/contentModel.xml -/projectSettingsUpdater.xml -/modules.xml -/.idea.Degulleo3D116Rework.iml -# 에디터 기반 HTTP 클라이언트 요청 -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/.idea.Degulleo3D116Rework/.idea/indexLayout.xml b/.idea/.idea.Degulleo3D116Rework/.idea/indexLayout.xml deleted file mode 100644 index 7b08163c..00000000 --- a/.idea/.idea.Degulleo3D116Rework/.idea/indexLayout.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/.idea.Degulleo3D116Rework/.idea/vcs.xml b/.idea/.idea.Degulleo3D116Rework/.idea/vcs.xml deleted file mode 100644 index 35eb1ddf..00000000 --- a/.idea/.idea.Degulleo3D116Rework/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Assets/LIN/Animations.meta b/Assets/LIN/Animations.meta new file mode 100644 index 00000000..f8bc5ded --- /dev/null +++ b/Assets/LIN/Animations.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dba2935d28b61d24cb995b4b892247b9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Drag Down Animation.anim b/Assets/LIN/Animations/Drag Down Animation.anim new file mode 100644 index 00000000..66fb6531 --- /dev/null +++ b/Assets/LIN/Animations/Drag Down Animation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fffbe9b85d58069c33dc202e70b3a3b8af13cf5f88b248080c8597ce83e648a +size 7263 diff --git a/Assets/LIN/Animations/Drag Down Animation.anim.meta b/Assets/LIN/Animations/Drag Down Animation.anim.meta new file mode 100644 index 00000000..65e15a11 --- /dev/null +++ b/Assets/LIN/Animations/Drag Down Animation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f27b3abad6872c44e97912eebec8d88f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Drag Left Animation.anim b/Assets/LIN/Animations/Drag Left Animation.anim new file mode 100644 index 00000000..4d12afa9 --- /dev/null +++ b/Assets/LIN/Animations/Drag Left Animation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fd626b2b544043134a4c1ff58ef989f182a0a74bf9ff1f3e5727987f483f466 +size 9257 diff --git a/Assets/LIN/Animations/Drag Left Animation.anim.meta b/Assets/LIN/Animations/Drag Left Animation.anim.meta new file mode 100644 index 00000000..51017116 --- /dev/null +++ b/Assets/LIN/Animations/Drag Left Animation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1508ea9e5623cf14ab2378f0cef9e4f9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Drag Right Animation.anim b/Assets/LIN/Animations/Drag Right Animation.anim new file mode 100644 index 00000000..837d994a --- /dev/null +++ b/Assets/LIN/Animations/Drag Right Animation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:125fa2e38a92fbae4474768b166c76afdae57b5d1672054b46304c47a7d1718a +size 9258 diff --git a/Assets/LIN/Animations/Drag Right Animation.anim.meta b/Assets/LIN/Animations/Drag Right Animation.anim.meta new file mode 100644 index 00000000..5d8ecffa --- /dev/null +++ b/Assets/LIN/Animations/Drag Right Animation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8702846e8ccd4b34e9e500d748366282 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Drag Up Animation.anim b/Assets/LIN/Animations/Drag Up Animation.anim new file mode 100644 index 00000000..4f910117 --- /dev/null +++ b/Assets/LIN/Animations/Drag Up Animation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f99b0015366ffe4c3f1caa83d8e581e39a572cf38ae6c34c9c083585e8635bb1 +size 6927 diff --git a/Assets/LIN/Animations/Drag Up Animation.anim.meta b/Assets/LIN/Animations/Drag Up Animation.anim.meta new file mode 100644 index 00000000..e90ac20f --- /dev/null +++ b/Assets/LIN/Animations/Drag Up Animation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8731d87063872e443b687cb8fde04d4d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Finger Animator Controller.controller b/Assets/LIN/Animations/Finger Animator Controller.controller new file mode 100644 index 00000000..ddbf4438 --- /dev/null +++ b/Assets/LIN/Animations/Finger Animator Controller.controller @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:366a1c7763b9ad47d29283041d58a762637a8b7d605c7e54e839b64504f96519 +size 9451 diff --git a/Assets/LIN/Animations/Finger Animator Controller.controller.meta b/Assets/LIN/Animations/Finger Animator Controller.controller.meta new file mode 100644 index 00000000..b33cae66 --- /dev/null +++ b/Assets/LIN/Animations/Finger Animator Controller.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e9f04be805588144f91257ba68a51876 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/FingerImage.controller b/Assets/LIN/Animations/FingerImage.controller new file mode 100644 index 00000000..a2bd7cb4 --- /dev/null +++ b/Assets/LIN/Animations/FingerImage.controller @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a49043f7f6ff144df5fa892e7e7f57fdd93ec36ea31f90da4f7da9d8d0fed7e +size 2033 diff --git a/Assets/LIN/Animations/FingerImage.controller.meta b/Assets/LIN/Animations/FingerImage.controller.meta new file mode 100644 index 00000000..08458775 --- /dev/null +++ b/Assets/LIN/Animations/FingerImage.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5905112edad17434fb13083581ef0f4f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Animations/Touch Animation.anim b/Assets/LIN/Animations/Touch Animation.anim new file mode 100644 index 00000000..4ffdd712 --- /dev/null +++ b/Assets/LIN/Animations/Touch Animation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8634abaebb7d2c1757f9971089bf7b19108ea0d491f96179da04ecddde5117 +size 7051 diff --git a/Assets/LIN/Animations/Touch Animation.anim.meta b/Assets/LIN/Animations/Touch Animation.anim.meta new file mode 100644 index 00000000..2d82983a --- /dev/null +++ b/Assets/LIN/Animations/Touch Animation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cd99c947dee3d52458ca54e58f038438 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Housing Copy.unity b/Assets/LIN/Housing Copy.unity index 0a1561fc..b9596720 100644 --- a/Assets/LIN/Housing Copy.unity +++ b/Assets/LIN/Housing Copy.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0eefa4bbfa3ac0e963a5464f3dbe3292376003e14d61dad7a394b52508698028 -size 139931 +oid sha256:243765a59e3126abd17abc02258bff6f2428294a5d373dacfe09c3ba123b5b96 +size 338192 diff --git a/Assets/LIN/Prefabs/JoystickPanel.prefab b/Assets/LIN/Prefabs/JoystickPanel.prefab new file mode 100644 index 00000000..dc23f970 --- /dev/null +++ b/Assets/LIN/Prefabs/JoystickPanel.prefab @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad7c2d01633f79023bd478dc15868e75d4473d6b146bd15fa9e11e16d7b70878 +size 22447 diff --git a/Assets/LIN/Prefabs/JoystickPanel.prefab.meta b/Assets/LIN/Prefabs/JoystickPanel.prefab.meta new file mode 100644 index 00000000..f2fdb7b4 --- /dev/null +++ b/Assets/LIN/Prefabs/JoystickPanel.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce82122427e6b6246b822185fdb82c2e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Prefabs/TutorialExamplePanel.prefab b/Assets/LIN/Prefabs/TutorialExamplePanel.prefab new file mode 100644 index 00000000..5071a7c0 --- /dev/null +++ b/Assets/LIN/Prefabs/TutorialExamplePanel.prefab @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d996355527e9a0aa940a2d0a503ba8e7c6e660cb7f0b7f9d403435862da11ee +size 44871 diff --git a/Assets/LIN/Prefabs/TutorialExamplePanel.prefab.meta b/Assets/LIN/Prefabs/TutorialExamplePanel.prefab.meta new file mode 100644 index 00000000..bfc4b97b --- /dev/null +++ b/Assets/LIN/Prefabs/TutorialExamplePanel.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b916de1e6eb0c5542884194f24ef6b1d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial.meta b/Assets/LIN/Scripts/Tutorial.meta new file mode 100644 index 00000000..9daf2ed4 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4153e2ad34614334a86d1fc810eaed5e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs b/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs new file mode 100644 index 00000000..11ae8e3c --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs @@ -0,0 +1,37 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public enum fingerAnimationType +{ + None = 0, + Touch = 1, + DragUp = 2, + DragDown = 3, + DragRight = 4, + DragLeft = 5, +} +[RequireComponent(typeof(Animator))] +public class FingerAnimationController : MonoBehaviour +{ + private static readonly int AnimationType = Animator.StringToHash("AnimationType"); + public fingerAnimationType fingerAnimationType = fingerAnimationType.None; + + private Animator animator; + private int _animType; + + private void Awake() + { + animator = GetComponent(); + animator.SetInteger(AnimationType,(int)fingerAnimationType); + } + + private void Update() + { + if ((int)fingerAnimationType == animator.GetInteger(AnimationType)) + { + return; + } + animator.SetInteger(AnimationType,(int)fingerAnimationType); + } +} diff --git a/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs.meta b/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs.meta new file mode 100644 index 00000000..c19a6025 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/FingerAnimationController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: aebdd610e1140f644acb596cc9acec39 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs b/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs new file mode 100644 index 00000000..9a9ae0e2 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs @@ -0,0 +1,15 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +[RequireComponent(typeof(InteractionAnimationPanelController))] +public class PanelTmpController : MonoBehaviour +{ + InteractionAnimationPanelController interactionAnimationPanelController; + + private void Awake() + { + interactionAnimationPanelController = GetComponent(); + interactionAnimationPanelController.TutorialSleepAnimation(); + } +} diff --git a/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs.meta b/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs.meta new file mode 100644 index 00000000..1591cc6b --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/PanelTmpController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 11e12f4334717874d87ff58d5053e430 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialManager.cs b/Assets/LIN/Scripts/Tutorial/TutorialManager.cs new file mode 100644 index 00000000..0fef1105 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialManager.cs @@ -0,0 +1,152 @@ +using System; +using UnityEngine; +using TMPro; +using UnityEngine.UI; +using System.Collections; +using Unity.VisualScripting; +using UnityEngine.Serialization; +using UnityEngine.Events; + +public class TutorialManager : MonoBehaviour +{ + [SerializeField] private TutorialStep firstStep; // 인스펙터에서 첫 단계 드래그 + + [Header("튜토리얼 패널 생성")] + [SerializeField] private GameObject[] tutorialPanelPrefabs; + [FormerlySerializedAs("parentObject")] public Canvas parentCanvas; + + private GameObject _tutorialPanelObject; + private TutorialPanelController _tutorialPanelController; + + private Coroutine _runningCoroutine; + private CanvasGroup overlay; // 화면 암전 및 입력 차단 + private RectTransform targetRt; + private Canvas overlayCanvas; // RectTransformUtility를 위한 Canvas + private Action onTutorialComplete; + + public void Start( ) + { + StartTutorial(null); + } + public void StartTutorial(Action onTutorialEnd, int panelIndex = 0) + { + if(parentCanvas == null) + parentCanvas = FindObjectOfType(typeof(Canvas)) as Canvas; + + if (parentCanvas != null) + { + overlayCanvas = parentCanvas as Canvas; + + _tutorialPanelObject = Instantiate(tutorialPanelPrefabs[panelIndex], parentCanvas.GameObject().transform); + overlay = _tutorialPanelObject.GetComponent(); + _tutorialPanelController = _tutorialPanelObject.GetComponent(); + } + + if (_tutorialPanelController != null) + { + onTutorialComplete = onTutorialEnd; + overlay.alpha = 1f; + overlay.blocksRaycasts = true; + RunStep(firstStep); + } + else Debug.Log("패널 생성 실패, 튜토리얼 진행이 불가능합니다."); + } + + private void RunStep(TutorialStep step) + { + if (_runningCoroutine != null) StopCoroutine(_runningCoroutine); + _runningCoroutine = StartCoroutine(RunStepCoroutine(step)); + } + + private IEnumerator RunStepCoroutine(TutorialStep step) + { + // 단계 시작 이벤트 + step.onStepBegin?.Invoke(); + // 메시지 갱신 + _tutorialPanelController.setTutorialText(step.message); + + float elapsed = 0f; + bool done = false; + + //터치해야 할 위치가 있는지 체크 + if (step.touchTargetIndex >= 0) + { + _tutorialPanelController.ShowTouchTarget(step.touchTargetIndex); + targetRt = _tutorialPanelController.touchTargets[step.touchTargetIndex].GetComponent(); + } + + if (step.imageIndex >= 0) + { + _tutorialPanelController.ShowImage(step.imageIndex); + } + + while (!done) + { + // 1) 영역 터치 체크 + if (targetRt != null) + { + // 클릭 또는 터치 이벤트 + bool pressed = Input.GetMouseButtonDown(0) || Input.touchCount > 0; + if (pressed) + { + Vector2 screenPos = Input.touchCount > 0 + ? Input.GetTouch(0).position + : (Vector2)Input.mousePosition; + + // 터치 위치가 지정 RectTransform 안에 있는지 검사 + if (RectTransformUtility.RectangleContainsScreenPoint( + targetRt, screenPos, overlayCanvas.worldCamera)) + { + Debug.Log("타겟 터치"); + targetRt = null; + _tutorialPanelController.HideTouchTarget(step.touchTargetIndex); + done = true; + } + else + { + Debug.Log("타겟이 아닌 곳 터치"); + } + } + } + + // 타임아웃 체크 + if (step.timeout > 0f && elapsed >= step.timeout) + done = true; + + elapsed += Time.deltaTime; + yield return null; + } + + // 단계 완료 이벤트 + step.onStepComplete?.Invoke(); + + if (step.imageIndex >= 0) + { + _tutorialPanelController.HideImage(step.imageIndex); + } + + // 다음 단계로 + if (step.nextStep != null) + RunStep(step.nextStep); + else + EndTutorial(); + } + + private void EndTutorial() + { + _tutorialPanelController.setTutorialText(""); + overlay.alpha = 0f; + overlay.blocksRaycasts = false; + + if(onTutorialComplete!=null) + { + onTutorialComplete?.Invoke(); + onTutorialComplete = null; + } + + if (_tutorialPanelObject == null) + return; + Destroy(_tutorialPanelObject); + _tutorialPanelController = null; + } +} \ No newline at end of file diff --git a/Assets/LIN/Scripts/Tutorial/TutorialManager.cs.meta b/Assets/LIN/Scripts/Tutorial/TutorialManager.cs.meta new file mode 100644 index 00000000..36be15fc --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 93a1ace26bb85054ba68cb96470bd8c6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs b/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs new file mode 100644 index 00000000..01953d3f --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs @@ -0,0 +1,42 @@ +using System.Collections; +using System.Collections.Generic; +using TMPro; +using UnityEngine; + +[RequireComponent(typeof(CanvasGroup))] +public class TutorialPanelController : MonoBehaviour +{ + [SerializeField] private TMP_Text tutorialText; + + [Header("튜토리얼 터치 타겟들")] + [SerializeField] + public GameObject[] touchTargets; + [Header("튜토리얼에서 보여줄 이미지 혹은 판넬들")] + [SerializeField] private GameObject[] images; + + public void setTutorialText(string tutorialText) + { + this.tutorialText.text = tutorialText; + } + //TODO:RangeCheck + public void ShowTouchTarget(int index) + { + touchTargets[index].SetActive(true); + } + + public void HideTouchTarget(int index) + { + touchTargets[index].SetActive(false); + } + + public void ShowImage(int index) + { + images[index].SetActive(true); + } + + public void HideImage(int index) + { + images[index].SetActive(false); + } + +} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs.meta b/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs.meta new file mode 100644 index 00000000..d7e6d351 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialPanelController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 50f463251502b134d9b627d30c30842b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep.cs b/Assets/LIN/Scripts/Tutorial/TutorialStep.cs new file mode 100644 index 00000000..a19046b9 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep.cs @@ -0,0 +1,25 @@ +// TutorialStep.cs +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.Serialization; + +[CreateAssetMenu(fileName = "TutorialStep", menuName = "Tutorial/Tutorial Step")] +public class TutorialStep : ScriptableObject +{ + [TextArea(2, 5)] + public string message; // 플레이어에게 보여줄 텍스트 + public float timeout = 2f; // 0 이상이면 이 시간 경과 후 자동 완료 + + [Tooltip("단계별로 시작, 완료시 추가로 실행할 이벤트")] + public UnityEvent onStepBegin; // 단계 시작 시 추가로 실행할 이벤트 + public UnityEvent onStepComplete; // 단계 완료 시 실행할 이벤트 + + [Tooltip("터치해야 할 위치가 있다면, 튜토리얼 매니저에게 인덱스 전달")] + public int touchTargetIndex=-1; + + [Tooltip("보여줄 이미지가 있다면, 튜토리얼 매니저에게 인덱스 전달")] + public int imageIndex=-1; + + [Tooltip("다음 단계로 넘어갈 TutorialStep, null이면 튜토리얼 종료")] + public TutorialStep nextStep; +} \ No newline at end of file diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep.cs.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep.cs.meta new file mode 100644 index 00000000..72728424 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b22d834cf5e26e647be215074940d40e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset b/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset new file mode 100644 index 00000000..c0ef50ce --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b22d834cf5e26e647be215074940d40e, type: 3} + m_Name: TutorialStep1 + m_EditorClassIdentifier: + message: "\uC9D1\uC5D0\uC11C\uB3C4 \uC2AC\uB77C\uC774\uB354\uB97C \uC870\uC791\uD574 + \uCE90\uB9AD\uD130\uB97C \uC6C0\uC9C1\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4." + timeout: 0 + onStepBegin: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + touchTargetIndex: 0 + imageIndex: -1 + nextStep: {fileID: 11400000, guid: a6f10decfc8504843b358ab8893c01f7, type: 2} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset.meta new file mode 100644 index 00000000..62470ab2 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep1.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 80e7d98a23eacbb4eab74b9a479a04e2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset b/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset new file mode 100644 index 00000000..9dd10882 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset @@ -0,0 +1,27 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b22d834cf5e26e647be215074940d40e, type: 3} + m_Name: TutorialStep2 + m_EditorClassIdentifier: + message: "\uCE68\uB300, \uB0C9\uC7A5\uACE0, \uD604\uAD00 \uADF8\uB9AC\uACE0 \uC8FC\uBC29\uC5D0 + \uAC00\uAE4C\uC774 \uAC00\uBA74 \uADF8\uC5D0 \uC5B4\uC6B8\uB9AC\uB294 \uC0C1\uD638\uC791\uC6A9\uC744 + \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4." + timeout: 0 + onStepBegin: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + touchTargetIndex: 1 + imageIndex: -1 + nextStep: {fileID: 11400000, guid: c25f773b8e1446d45837ee656d510061, type: 2} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset.meta new file mode 100644 index 00000000..f4e3954f --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep2.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6f10decfc8504843b358ab8893c01f7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset b/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset new file mode 100644 index 00000000..94f97c52 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset @@ -0,0 +1,25 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b22d834cf5e26e647be215074940d40e, type: 3} + m_Name: TutorialStep3 + m_EditorClassIdentifier: + message: "\uC0C1\uD638\uC791\uC6A9 \uBC84\uD2BC\uC744 \uB20C\uB7EC \uBCF4\uC138\uC694" + timeout: 0 + onStepBegin: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + touchTargetIndex: 2 + imageIndex: 0 + nextStep: {fileID: 11400000, guid: 3629cede21d4bb340924cd9b1d401bb9, type: 2} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset.meta new file mode 100644 index 00000000..8b313d90 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep3.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c25f773b8e1446d45837ee656d510061 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset b/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset new file mode 100644 index 00000000..4920ff03 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset @@ -0,0 +1,25 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b22d834cf5e26e647be215074940d40e, type: 3} + m_Name: TutorialStep4 + m_EditorClassIdentifier: + message: + timeout: 2 + onStepBegin: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + touchTargetIndex: -1 + imageIndex: 1 + nextStep: {fileID: 11400000, guid: e3d4da4e50044c54394663ac9e7b2afa, type: 2} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset.meta new file mode 100644 index 00000000..35d65f65 --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep4.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3629cede21d4bb340924cd9b1d401bb9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset b/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset new file mode 100644 index 00000000..dc7e68ad --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b22d834cf5e26e647be215074940d40e, type: 3} + m_Name: TutorialStep5 + m_EditorClassIdentifier: + message: "\uB2E4\uC591\uD55C \uC0C1\uD638\uC791\uC6A9\uC744 \uD1B5\uD574 \uB2A5\uB825\uCE58\uB97C + \uC62C\uB9AC\uACE0 \uB358\uC804\uC744 \uACF5\uB7B5\uD574\uBCF4\uC138\uC694." + timeout: 0 + onStepBegin: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + touchTargetIndex: 1 + imageIndex: -1 + nextStep: {fileID: 0} diff --git a/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset.meta b/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset.meta new file mode 100644 index 00000000..6cc8f6cf --- /dev/null +++ b/Assets/LIN/Scripts/Tutorial/TutorialStep5.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e3d4da4e50044c54394663ac9e7b2afa +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Scripts/UI/InteractionAnimationPanelController.cs b/Assets/LIN/Scripts/UI/InteractionAnimationPanelController.cs index 7f9ae100..bd5318e3 100644 --- a/Assets/LIN/Scripts/UI/InteractionAnimationPanelController.cs +++ b/Assets/LIN/Scripts/UI/InteractionAnimationPanelController.cs @@ -16,6 +16,7 @@ public class InteractionAnimationPanelController : MonoBehaviour private Coroutine _textAnimCoroutine; private Coroutine _autoHideCoroutine; + private Canvas _parentCanvas; public void SetDoingText(string text) { @@ -102,5 +103,13 @@ public class InteractionAnimationPanelController : MonoBehaviour _autoHideCoroutine = null; } } + + public void TutorialSleepAnimation() + { + _parentCanvas = FindObjectOfType(typeof(Canvas)) as Canvas; + + HousingConstants.interactions.TryGetValue(ActionType.Sleep, out var interactionTexts); + ShowAnimationPanel(ActionType.Sleep, interactionTexts.AnimationText); + } } \ No newline at end of file diff --git a/Assets/LIN/Sprites.meta b/Assets/LIN/Sprites.meta new file mode 100644 index 00000000..3aae8305 --- /dev/null +++ b/Assets/LIN/Sprites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7406a965318c4c54790e003c4852dee7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Sprites/Finger.png b/Assets/LIN/Sprites/Finger.png new file mode 100644 index 00000000..fdd8c332 --- /dev/null +++ b/Assets/LIN/Sprites/Finger.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c0f54f6200953fa8cc55705c0981eb2c652737a7a71c1fd916b0e3898a54581 +size 2241 diff --git a/Assets/LIN/Sprites/Finger.png.meta b/Assets/LIN/Sprites/Finger.png.meta new file mode 100644 index 00000000..8f30db90 --- /dev/null +++ b/Assets/LIN/Sprites/Finger.png.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: c7de568cd24a02446b221be0785f87f3 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/Sprites/FridgeDungeonUI.png b/Assets/LIN/Sprites/FridgeDungeonUI.png new file mode 100644 index 00000000..9d54115e --- /dev/null +++ b/Assets/LIN/Sprites/FridgeDungeonUI.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:350ec60d7002e2861ab1b50dfc1be9e9da67be0b48513b988c18e30b6df5dab9 +size 7071150 diff --git a/Assets/LIN/Sprites/FridgeDungeonUI.png.meta b/Assets/LIN/Sprites/FridgeDungeonUI.png.meta new file mode 100644 index 00000000..fbfc51ff --- /dev/null +++ b/Assets/LIN/Sprites/FridgeDungeonUI.png.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: b8c9a96772b117744ad2781240f3f8f9 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/TutorialAnimController.controller b/Assets/LIN/TutorialAnimController.controller new file mode 100644 index 00000000..c39ecd67 --- /dev/null +++ b/Assets/LIN/TutorialAnimController.controller @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e16cca55b1904684098899207794949a9b782eaa3481defe80f261dd9d117e8a +size 2055 diff --git a/Assets/LIN/TutorialAnimController.controller.meta b/Assets/LIN/TutorialAnimController.controller.meta new file mode 100644 index 00000000..ed17020c --- /dev/null +++ b/Assets/LIN/TutorialAnimController.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9b52bf42130896940b1762721509ab7d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LIN/TutorialIndicateAnimation.anim b/Assets/LIN/TutorialIndicateAnimation.anim new file mode 100644 index 00000000..2ead5d4c --- /dev/null +++ b/Assets/LIN/TutorialIndicateAnimation.anim @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75e5fe6224ee40dff0a2d15d06a4d86bbe4d27d91f5c91f4ffe936affd8522c2 +size 3893 diff --git a/Assets/LIN/TutorialIndicateAnimation.anim.meta b/Assets/LIN/TutorialIndicateAnimation.anim.meta new file mode 100644 index 00000000..774aa448 --- /dev/null +++ b/Assets/LIN/TutorialIndicateAnimation.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cd947f5b39b9e6549885e225061e752d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LYM/Fonts/Galmuri9 SDF new.asset b/Assets/LYM/Fonts/Galmuri9 SDF new.asset index d0898952..12b4f95a 100644 --- a/Assets/LYM/Fonts/Galmuri9 SDF new.asset +++ b/Assets/LYM/Fonts/Galmuri9 SDF new.asset @@ -70,7 +70,7 @@ Material: - _OutlineSoftness: 0 - _OutlineUVSpeedX: 0 - _OutlineUVSpeedY: 0 - - _OutlineWidth: 0 + - _OutlineWidth: 0.3 - _PerspectiveFilter: 0.875 - _Reflectivity: 10 - _ScaleRatioA: 0.8 diff --git a/Assets/Scripts/Character/Enemy/Bullet/MagicMissile.cs b/Assets/Scripts/Character/Enemy/Bullet/MagicMissile.cs index 0965588b..2478e596 100644 --- a/Assets/Scripts/Character/Enemy/Bullet/MagicMissile.cs +++ b/Assets/Scripts/Character/Enemy/Bullet/MagicMissile.cs @@ -1,8 +1,8 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class MagicMissile : BulletBase -{ - -} +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class MagicMissile : BulletBase +{ + +} diff --git a/Assets/StoreAssets/Cartoon Game Sound 2.0/JBoB Sound Pack Demo.meta b/Assets/StoreAssets/Cartoon Game Sound 2.0/JBoB Sound Pack Demo.meta new file mode 100644 index 00000000..775f9c8d --- /dev/null +++ b/Assets/StoreAssets/Cartoon Game Sound 2.0/JBoB Sound Pack Demo.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dfd81883413431543baf7e526cf17f78 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: