카테고리 없음

2025.04.10(목) 코딩 4일차

mochoa 2025. 4. 10. 18:16

1,2,3,4주차 꺼 복습

 

아무리해도 안외워지는  

private void Awake()
 {
     if (Instance == null)
     {
         Instance = this;
     }
 }

이 부분에 대해서 이해를 하는 시간이였다.

 

그리고 3주차에 만들었던 고양이 밥주기 코드에서 약간 동영상에서 안나와있는 부분을 고쳤다.

동영상에 안나와있는 부분은 

 

'큰고양이가 음식을 5번만 먹어도 없어지는것'이였다.

구글링을 하다가 과연 최대값을 어떻게 고치지... 하다가 

 

if (energy == 5)
{
    if (!isFull)
    {
        isFull = true;

        hungryCat.SetActive(false);
        fullCat.SetActive(true);
        Destroy(gameObject, 3.0f);
        GameManager.Instance.AddScore();
    }
}

 

부분에서 힌트를 얻었다.

 

if (energy == full)
{
    if (!isFull)
    {
        isFull = true;

        hungryCat.SetActive(false);
        fullCat.SetActive(true);
        Destroy(gameObject, 3.0f);
        GameManager.Instance.AddScore();
    }
}

 

로 5인 정해진 값이 아니라 Full 이라는 변수 자체를 넣어주면

 

이런식으로 큰 고양이 먹이주는부분이 정상적으로 작동되는것이 보였다.

 

그리고 4주차 에 있는 

void Start()
{
    int[] arr = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7 };
    arr = arr.OrderBy(x => Random.Range(0f, 7f)). ToArray(); 

    for (int i = 0; i < 16; i++)
    {
        GameObject go = Instantiate(card, this.transform);

        float x = (i % 4) * 1.4f - 2.1f;
        float y = (i / 4) * 1.4f - 3.0f;
        go.transform.position= new Vector3(x, y, 0);
        go.GetComponent<Card>().Setting(arr[i]);

    }
    Gamemanager.Instance.cardCount = arr.Length;
}

 

이 부분이 이해가 잘 안되는 부분이 있었다.

물론 함수적인 부분이라고 하지만, '과연 이렇게하는것이 맞을까?' 라는 의문이 들었다. 그냥  구조체를 만들어서 하는게 편하지않을까?? 라고 생각해서

List<CardData> cardList = new List<CardData>();
for (int i = 0; i < 8; i++)
{
    CardData data = new CardData { id = i, imagePath = $"img{i}", effect = "None" };
    cardList.Add(data);
    cardList.Add(data);
}

로 바꿔보았다. 이부분은 어떤지 모르겟다.

 

그 후에 조별 분석 시간에 리그오브레전드 캐릭터 분석을 헀는데 나름 잘한것같다.

  1. 해당 시스템이 동작하는 구조의 시작부터 과정을 최대한 자세하게 분석, 나열해봅시다.
    • 입력 확인 → 유효성 검사 → 스킬 사용 → 스킬 쿨타임 시작+마나소모 적용 → 애니메이션 시작 → 스킬 효과 이펙트 구현 → 스킬 효과 판정 → 맞은 대상처리 → 데미지계산 → 스킬에 달려있는 부과적인 효과 부여

에서 이게 맞는지는 잘 모르겠지만, 스킬 구조의 매커니즘 부터 스킬 발동, 그리고 그후 메커니즘 까지 생각해봤는데 나쁘지는 않았던것같다. 

그리고 우리가 하고있는 게임이 많은 매커니즘이 들어갔구나... 이런 부분에서 더 좋은 부분이 있을것같다는 좋은생각도 들었다.

 

마무리

코딩을 하면서 느끼는 거지만 아직 아무것도 없는 부분에서 코딩해봐! 했을때 어떻게 해야될지 

어느부분부터 손봐야될지 아직은 막막한 부분이 있지만 이 과정을 하면서 천천히 익히고, 쓰는것들을 자주 쓰다버릇 하다보면 될것같다는 느낌도 든다. 

나는 지금 개발자로써 코딩을 배우고있는 거지만 기획쪽으로 갔을때 매커니즘 부분에서 많이 벽에 부딪힐것같은데, 앞으로 개발을 하면서도 매커니즘 공부를 좀 해봐야겠다.