오늘 배운 내용
Inventory와 Item기능에서 0.나가기 기능 추가와 장착 해제기능[E]로 표시.
//기능 설명//
Inventory.cs
//UseItem으로 장착 판단
private void UseItem(Character character, Item item)
{
// 장비 아이템
if (item.Attack > 0 || item.Defense > 0)
{
if (!item.IsEquipped)
{
character.EquipItem(item); // 장착
}
else
{
character.UnequipItem(item); // 해제
}
Console.ReadLine();
}
else if (item.HealAmount > 0)
{
var (heal, _, _) = item.Use();
if (heal > 0)
{
character.Hp += heal;
if (character.Hp > character.MaxHp) character.Hp = character.MaxHp;
Console.WriteLine($"{item.Name} 사용! 체력 {heal} 회복 (현재 HP: {character.Hp}/{character.MaxHp})");
}
else
{
Console.WriteLine($"{item.Name}은 더 이상 사용할 수 없습니다.");
}
}
//heal을 하는 기능 구현. heal, , ,로 다른건 heal이 안되게 적용함.
Item.cs
public string GetInfo()
{
string info = "";
if (IsEquipped) info += "[E] ";
info += $"{Name} (남은 개수: {Count})";
if (HealAmount > 0) info += $" | 회복: {HealAmount}";
if (Attack > 0) info += $" | 공격력: {Attack}";
if (Defense > 0) info += $" | 방어력: {Defense}";
return info;
}
//장착 여부를 판단하여[E}를 추가해주고 Count로 개수 차감.
나머지는 0보다 크면 문자열을 추가해주는 방식이다.
트러블 슈팅
1.git에서 changes를 남겨두고 develop branch로 넘어가서 다른 사람과 충돌하는 현상 발생.
->미흡했던 git사용으로 일어났던 일로 완벽히 이해하는 과정으로 넘어가짐.
2. 코드를 짜는중 다른 사람과 겹치는 부분이 생기며 소통의 부족, 코드를 읽어내는 능력이 부족한 상황 발생
-> 활발한 소통, 코드의 통일, 개념 학습으로 성장을 이룰 수 있었음.