꺼진 코드도 다시보았다, 그만 보자...
사전때와 본 캠프때 배웠던 내용을 다다시 했을뿐이고 강의도 안보고 했을뿐인데 모든게 뜻대로 안되는 곳입니다...

코드는 이상이 없는데....
public void Mached()
{
if (firstCard.idx == secondCard.idx)
{
firstCard.DestroyCard();
secondCard.DestroyCard();
cardCount -= 2;
if (cardCount == 0)
{
Time.timeScale = 0.0f;
endTxt.gameObject.SetActive(true);
}
}
else
{
firstCard.ChangeColor(Color.red);
secondCard.ChangeColor(Color.red);
firstCard.CloseCard();
secondCard.CloseCard();
}
if (thirdCard != null && fourthCard != null)
{
thirdCard.ChangeColor(Color.green);
fourthCard.ChangeColor(Color.green);
}
firstCard = null;
secondCard = null;
thirdCard = firstCard;
fourthCard = secondCard;

이상합니다, 많이 이상합니다 분명 기억속에 루틴대로 저는 로직을 작성했을 뿐인데 지금 생각한것과 많이 다른 부분들이 보입니다. 코드에는 문제가 없고 아무 이상도 없고 다 이상없는데 이것만 한시간을 붙잡았습니다...그러다가 진짜 도무지 안될것같아서 선생님에게 후딱 달려가 HELP를 요청했습니다. 물론 답을 바로 알려주지 말아달라고 사정하면서 말이죠...그런데 상상치도 못한곳에서 이유가 생겼던 겁니다.

thirdCard = firstCard;
fourthCard = secondCard;
firstCard = null;
secondCard = null;
firstCard = null;
secondCard = null;
thirdCard = firstCard;
fourthCard = secondCard;
//서순을 바꾼것만으로 제기능을 한다
예, 그렇습니다 순서는...바꾸는것 만으로도 기능을 찾아 갑니다.
else
{
firstCard.ChangeColor(Color.red);
secondCard.ChangeColor(Color.red);
firstCard.CloseCard();
secondCard.CloseCard();
}
if (thirdCard != null && fourthCard != null)
{
thirdCard.ChangeColor(Color.green);
fourthCard.ChangeColor(Color.green);
}
//이것도 정상 기능
else
{
if (thirdCard != null && fourthCard != null)
{
thirdCard.ChangeColor(Color.green);
fourthCard.ChangeColor(Color.green);
}
firstCard.ChangeColor(Color.red);
secondCard.ChangeColor(Color.red);
firstCard.CloseCard();
secondCard.CloseCard();
}
//이것도 정상 기능
코드는 순서가 중요하며 위에부터 아래로 실행이 되는 순서이기 때문에 처음에 넣었던 코드의 경우에는 firstCard = null, thirdCard = firstCard < 아무것도 없는 상태에서 자꾸 세번째 카드에 넣으려고만 하니 원하는 색이 들어가지 않았던 겁니다. A 는 B가 아니라 A에 B를 넣어라 였던거죠. 그러므로 처음부터 원하는 방식을 진행할려면 처음부터 세번째, 네번째 카드에 먼저 넣어놓고 그 다음에 A = NULL 을 해야 제가 원하던 방식의 색 배치가 완료되던 것이었습니다. 분명 저번에도 배운것 같은데 정말 단순한 실수도 놓치지않게 조심해야할것 같습니다.
오늘 하루를 얼른 마무리를 해야하기에...

이제부터는 Audiosource와 Clip에 관하여 또 C#으로 스크립트를 해야하기에...하하
물론 소리를 넣는 방식은 강의 자체에서 매우 짧게 나왔고 또 간단해 보였지만 강의를 안보고 도전하는것이기에 더 의미가 있지 않나 싶긴합니다 어디까지 가능할까 부딪혀보는것도 하나의 묘미였던것 같습니다.
'스파르탄캠프 > 본격적인 캠프' 카테고리의 다른 글
| 노베이스의 게임개발(본 캠프) 2주차 진입! (0) | 2024.04.22 |
|---|---|
| 노베이스의 게임개발(본 캠프) 1주차의 마무리 (1) | 2024.04.20 |
| 노베이스의 게임개발(본 캠프) GitHub (0) | 2024.04.17 |
| 노베이스의 게임개발(본 캠프) (2) | 2024.04.16 |
| 노베이스의 게임개발(본 캠프) Change Color (0) | 2024.04.16 |