private void SkillInput() { //스킬 버튼 누를 때 if (_state == InputState.None) { if (Input.GetKeyDown(KeyCode.Q)) { _state = InputState.SkillWait; _skill = _characters[_selectCharactorIdx].skill_first; Debug.Log("선택스킬 : " + _skill); } if (Input.GetKeyDown(KeyCode.W)) { _state = InputState.SkillWait; _skill = _characters[_selectCharactorIdx].skill_second; Debug.Log("선택스킬 : " + _skill); } } //스킬 누르고 타겟 누를 때 if (_state == InputState.SkillWait) { if (Input.GetMouseButtonDown(0)) { _skillState = CheckSkillState(_skill); _characters[_selectCharactorIdx].skillStateData.skillState = _skillState; _characters[_selectCharactorIdx].skillStateData.skillMakeCallback = MakeSkill; _state = InputState.None; } else if (Input.GetMouseButtonDown(1)) { _characters[_selectCharactorIdx].skillStateData.Clear(); _state = InputState.None; } } }
/// <summary> /// 데이터가 없으므로 스킬종류 수동으로 구별 /// </summary> /// <returns></returns> private eSkillState CheckSkillState(eSkill skill) { eSkillState state = eSkillState.Nomal; switch (skill) { case eSkill.SinglePoisonSkill: state = eSkillState.JustMake; break; case eSkill.Sniping: state = eSkillState.NonTarget_Cast; break; default: state = eSkillState.NonTarget_Cast; // state = eSkillState.Nomal; break; } return(state); }
public void Clear() { hasAnimation = false; skillState = eSkillState.None; skillMakeCallback = null; }
public void Reset() { m_SkillID = -1; m_SkillState = eSkillState.kUnInit; }