//스킬을 장착하는 함수 void Equip_Skill(string skillName) { try { //Exception 여부를 검사한다. (스킬을 추가로 장착할 수 있는지 확인한다.) Exception_FOR___Sample_Skill_Button_Manager.Validate_FullSkillInventoryException(sampleSkillInventory); Exception_FOR___Sample_Skill_Button_Manager.Validate_SkillOverlapped_IN_InventoryException(skillName, equippedSkills); //스킬을 장착할 빈 자리가 있으면 스킬을 장착한다. equippedSkills.Add(Search_SkillBaseStat_BY_Name_IN_List(skillName, allSkills)); Debug.Log(skillName + "을(를) 장착합니다."); //정보를 업데이트한다. UpdateSkillInventory(); } //스킬을 장착할 빈 자리가 없는 경우 catch (Exception_FOR___Sample_Skill_Button_Manager.FullSkillInventoryException) { //안내 메세지만 띄운다. Debug.Log("더 장착할 수 없습니다."); } //장착하려고 하는 스킬이 이미 장착된 경우 catch (Exception_FOR___Sample_Skill_Button_Manager.SkillOverlapped_IN_InventoryException) { //안내 메시지만 띄운다. Debug.Log(skillName + "을(를) 이미 장착했습니다."); } }
//스킬을 장착해제하는 함수 void UnEquip_Skill(string buttonText) { try { //Exception 여부를 검사한다. (장착 해제하려고 한 칸이 빈 칸인 지 확인한다.) Exception_FOR___Sample_Skill_Button_Manager.Validate_EmptySkillInventoryException(buttonText); //스킬을 제거한다. Debug.Log(buttonText + "스킬을 제거합니다"); equippedSkills.Remove(Search_SkillBaseStat_BY_Name_IN_List(buttonText, equippedSkills)); //정보를 업데이트한다. UpdateSkillInventory(); } catch (Exception_FOR___Sample_Skill_Button_Manager.EmptySkillInventoryException) { Debug.Log("비어있습니다"); } }