게임 기획/내일배움캠프(개발)

[TIL] 스파르타 던전 1

선조미 2025. 4. 16. 20:31
메인화면
컨텐츠 구현이 더 중요하다는 걸 알고있지만,, 메인화면이 못 생긴걸 참을수가 없어버렸다 ,,😂
메인까지만 꾸며서 구현하고 나머지는 컨텐츠 작동부터 구현할 예정이다,,!!

와이어프레임 만드는 법을 잘 몰라 일단 섹션별로 나눠서 어떻게 할지 대충 구상만 했다.
foreach 문 활용

텍스트 rpg 감성에 맞게 해커 타이핑 효과로 글이 나오도록 했다. 
반복문인 foreach를 활용해 한 글자씩 타이핑 되도록 했다. 
// 해커 타이핑
string text = "스파르타가 당신을 기다리고 있습니다 ";
foreach (char c in text)
{
    Console.Write(c);
    Thread.Sleep(50);
}​
for 문 활용

해커 타이핑 활용 전에 사용했던 방법이다. 
로딩 화면이 연상되게끔 뒤의 마침표만 한 글자씩 나오게 할 때 사용했다. 
for (int i = 0; i < 3; i++)
{
    Thread.Sleep(500);
    Console.Write(". ");
}​

원래는 이게 아니라 | 를 사용해서 커서가 깜빡이는 것 같은 효과를 주려고 했는데 그건 설명을 봐도 이해하기가 어려워서 패스했다,, 나중에 구현할 수 있게 분석을 해봐야겠다 ㅠㅇㅠ
Thread 활용

안내 멘트들이 한 번에 와다다 쏟아지니 어색해서 몇 초 간격을 두고 나오게 하기 위해 사용했다.
Thread.Sleep(1500);​

 

단위는 ms 라서 1.5초 뒤에 다음 코드가 실행된다! 처음엔 3초로 지정했는데 너무 느린 것 같아 1.5초로 수정
위에서 마침표를 반복 할 때는 0.5초로 지정해 지루하지 않도록 해줬다.

using System.Threading; 이거 선언해주는 거 잊지말기!
ReadKey 활용

게임 로딩 화면에 꼭 등장하는 "Press Any Key To Start" 이걸 구현하고 싶었다 ㅋ ㅋ
아무 키나 누르면 다음 코드로 넘어갈 수 있도록 하기 위해 사용했다.
Console.ReadKey(true);​

 

(true)를 사용하지 않고 ()로만 마무리 해주면 콘솔창에 내가 누른 버튼이 표시된다.

이렇게.....
근데 나중에 나오는 멘트들도 다 해커 타이핑 처리를 하게 되면 text574까지 써야 되는건지,, 
뭔가 방법이 있을 것 같은데 모르겠다ㅠㅠㅠ 

 

게임 시작
겨우 메인화면 마무리 하고 시작화면으로 넘어와서 한 일은 텍스트 색깔 바꾸기 ^_^ .. ,.,.,,
Console.Write("1. ");
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("상태보기");
Console.ResetColor();​
마지막에 ResetColor를 선언해주지 않으면 쭉 바뀐 색깔로 작성되기 때문에
귀찮아도 선택지마다 잊지않고 넣어주고 있다 ^0^,,
이렇게 출력된다! 
지금 색깔 테스트까지 하는 건 진짜 아닌 것 같아서 (..) 일단 선택지만 색 변환으로 뭔가 액티브 한 느낌을 주고 넘어갔다.

 

일단 정리는 여기까지!

필수과제 부분은 내일 오후 중으로 끝날 것 같다. 도전과제도 할 수 있으면 구현해보고 싶다😎👍