IEnumerator _MoveToPos() { float _Dir1 = transform.position.x - StageManagerSC._LumiaInst.transform.position.x; int _Dir2 = _Dir1 > 0 ? 1 : _Dir1 < 0 ? -1 : 0; _LSC._AutoWalk = _Dir2; while (0 < (transform.position.x - StageManagerSC._LumiaInst.transform.position.x) * _Dir2) { yield return(null); } _LSC._AutoWalk = 0; LumiaHitboxSC _LHBSC = _LSC._Hitbox.GetComponent <LumiaHitboxSC>(); _LHBSC._HP_Current = _LHBSC._HP_Max; _LSC._Canvas.GetComponent <PauseSC>()._UpdateCurrentHp(); _LSC._SavedScene = SceneManager.GetActiveScene().name; SysSaveSC._CharSave(); StartCoroutine(StageManagerSC._LumiaInst.GetComponent <Lumia_SC>()._WhiteFlash()); StageManagerSC._LumiaInst.GetComponent <SpriteRenderer>().flipX = false; StageManagerSC._LumiaInst.GetComponent <Animator>().SetBool("_Sitting", true); StageManagerSC._LSC._TemporaryFlag.Clear(); yield return(new WaitForSeconds(1f)); _CanStand = true; }
// Start is called before the first frame update void Start() { _LSC = StageManagerSC._LSC; _LHBSC = _LSC._Hitbox.GetComponent <LumiaHitboxSC>(); _UISC = transform.parent.GetComponent <PauseSC>(); _NoDamageToggle(false); _NoHitToggle(false); }
IEnumerator StartC() { while (StageManagerSC._LumiaInst == null) { yield return(null); } _LSC = StageManagerSC._LumiaInst.GetComponent <Lumia_SC>(); _HBSC = StageManagerSC._LumiaInst.GetComponent <Lumia_SC>()._Hitbox.GetComponent <LumiaHitboxSC>(); _UpdateMaxHp(); _UpdateSwordMax(); }
IEnumerator _VesselGet() { Time.timeScale = 0f; GameObject _FadeObj = StageManagerSC._CanvasInst.GetComponent <PauseSC>()._FadeObj; UIFaderSC _UIFader = _FadeObj.GetComponent <UIFaderSC>(); _UIFader._FadeSpeed = 1; _UIFader._TargetAlpha = 0.5f; _FadeObj.SetActive(true); while (_FadeObj.GetComponent <CanvasGroup>().alpha < 0.5f) { yield return(null); } GameObject _GetVesselAniInst = Instantiate(_GetVesselAni); _GetVesselAniInst.transform.SetParent(_FadeObj.transform.parent); _GetVesselAniInst.transform.position = _FadeObj.transform.position; _GetVesselAniInst.transform.localScale = new Vector3(1, 1, 1); Animator _GetAni = _GetVesselAniInst.GetComponent <Animator>(); if (StageManagerSC._LSC._HaveVessel == false) { StageManagerSC._LSC._HaveVessel = true; _GetAni.SetTrigger("_Half"); yield return(new WaitForSecondsRealtime(3f)); } else { StageManagerSC._LSC._HaveVessel = false; _GetAni.SetTrigger("_Whole"); LumiaHitboxSC _HBSC = StageManagerSC._LSC._Hitbox.GetComponent <LumiaHitboxSC>(); _HBSC._HP_Max += 1; yield return(new WaitForSecondsRealtime(3f)); StageManagerSC._CanvasInst.GetComponent <PauseSC>()._UpdateMaxHp(); _HBSC._HP_Current = _HBSC._HP_Max; StageManagerSC._CanvasInst.GetComponent <PauseSC>()._UpdateCurrentHp(); } if (GetComponent <MapSaverSC>() != null) { GetComponent <MapSaverSC>()._SaveStatus(); } _UIFader._TargetAlpha = 1f; _UIFader._FadeOut(); Transform _Child = transform.GetChild(0); _Child.GetComponent <SpriteRenderer>().enabled = false; _Child.GetComponent <ParticleSystem>().Stop(); _Child.GetChild(0).gameObject.SetActive(false); Time.timeScale = 1f; }
// Start is called before the first frame update void Start() { _MapOffsetNow = _MapOffset; _WorkingCam = gameObject; if (_GenerateAtStart == true && _LumiaInst == null) { Debug.Log("루미아 생성"); //필수 Instantiate 생성 _LumiaInst = Instantiate(_LumiaPrefab); _LSC = _LumiaInst.GetComponent <Lumia_SC>(); GameObject _TargetMark = Instantiate(_TargetMarkPrefab); _CanvasInst = Instantiate(_CanvasPrefab); //주인공 캐싱 _LSC._TargetMark = _TargetMark; _LSC._Canvas = _CanvasInst; LumiaHitboxSC _LHBSC = _LSC._Hitbox.GetComponent <LumiaHitboxSC>(); _LHBSC._Canvas = _CanvasInst; _LHBSC._FadeObj = _CanvasInst.GetComponent <PauseSC>()._FadeObj; //저장된 능력치 로드 if (SysSaveSC._Load_Required == true) { SysSaveSC._Load_Required = false; _LHBSC._HP_Max = SysSaveSC._Loaded_HP_Max; _LHBSC._HP_Current = SysSaveSC._Loaded_HP_Max; _LSC._SavedScene = SysSaveSC._Loaded_SavedScene; _LSC._FileNumber = SysSaveSC._Loaded_FileNumber; _LSC._PlayTime = SysSaveSC._Loaded_PlayTime; _LSC._SwordMax = SysSaveSC._Loaded_SwordMax; _LSC._SwordStock = SysSaveSC._Loaded_SwordMax; _LSC._Money = SysSaveSC._Loaded_Money; _LSC._HaveVessel = SysSaveSC._Loaded_HaveVessel; _LSC._SlashAtkLv = SysSaveSC._Loaded_SlashAtkLv; _LSC._ShotAtkLv = SysSaveSC._Loaded_ShotAtkLv; _LSC._AtkSpeedLv = SysSaveSC._Loaded_AtkSpeedLv; _LSC._WarpLv = SysSaveSC._Loaded_WarpLv; _LSC._SwordSizeLv = SysSaveSC._Loaded_SwordSizeLv; _LSC._PermanentFlag = SysSaveSC._Loaded_PermanentFlag; } //의자 존재여부 확인 if (_Chair != null && _Chair.activeSelf == true) { _ChairStart(); } else if (_StartPos != Vector2.zero) { _LumiaInst.transform.position = _StartPos; } //시스템 설정 불러오기 SysSaveSC._SysLoad(); } //스테이지 초기화 if (_LumiaInst != null) { if (_LSC == null) { _LSC = _LumiaInst.GetComponent <Lumia_SC>(); } _LSC._MyCamera = gameObject; _CamSC = _LumiaInst.GetComponent <LumiaCamSC>(); _CamSC._MyCamera = gameObject; _LSC._WhenSceneLoad(); _CamSC._CameraControl(); transform.position = _LumiaInst.GetComponent <LumiaCamSC>()._CamPos1; } }