메뉴 건너뛰기

자유롭게 이야기를 적는 공간

<번갈아 가면서 출력, 어찌 하는가?>

혼돈님께서 잘 보셨군요. 반복문(for)갖다가 한 거 맞습니다.
흑곰님께서 말씀하신 타이머라는 것은 아마 VB의 그것인가 본데,
타이머고 뭐고 무지 간단하게 했으니 알려드리죠.

에, 그러니까. 제가 'a'라는 그림과 'b', 'c'라는 그림을
jdd->LoadPicture(); 로 불러왔다고 칩시다.

그럼 이제  a,b,c,를 차례로 출력하고 싶을 때 어떻게 하는지 이제부터 설명해보겠습니다.

while(!_GetKeyState(VK_ESCAPE))

라는 부분이 이해가 안 가셨을 수도 있는데, while문은 for랑 사용법과
특징의 차이만 있을 뿐이지 똑같은 반복문입니다.
지금 저 위의 while문은 _GetKeyState 클래스 함수가 VK_ESCAPE에
해당하는 값을  돌려줬을 때,
그러니까 사용자가 ESC를 누를 때까지 무한 반복한다는 뜻입니다.

즉 이 게임이 돌아가는 근본적인 메커니즘은 같은 명령을 반복 수행
하는 것이죠. 뭐 이건 뭐 그럭저럭 중요한 내용일지도 모르지만 복잡하니 건너 뛰고..

흑곰님께서 while문이 뭔지 모르실 수도 있으니 이렇게 바꿔볼까요.

for(;;) // 무한 반복문
{
     if(_GetKeyState(VK_ESCAPE))break; // break는 빠져나간다는 것
}

이제 아시겠죠? 지금 이 for문과 위의 while문은 모양만 틀리고 똑같습니다.
그럼 이렇게 한번 해보죠.

int flag = 0;
for(;;)
{
     if(_GetKeyState(VK_ESCAPE))break;
  
     if(flag >= 0 && flag <= 5){jdd->DrawPicture('a');flag++;} // 이건 이렇게 쓰면 에러가 나지만 설명을 간단히 하기 위해 임시로..
     if(flag>=5 && flag <= 10){jdd->DrawPicture('b');flag++;}
     if(flag>=10 && flag <= 15){jdd->DrawPicture('c');flag+=;}
     if(flag>=16){jdd->DrawPicture('c');flag=0;}
}


이제 다 썼으니 설명.

반복문 위에서 flag라는 변수를 초기값을 0으로 잡고 선언했습니다.
int는 VB에서 변수 선언할 때 "~ as integer(스펠링이 맞나)"하고 같습니다.

아무튼 그래서 반복문 안에서 이걸 계속 더 해주면서, 만약
flag의 값이 0 이상, 5 이하일 경우에는 그림 'a'를, 5 이상 10 이하일 땐 'b'를,
10 이상 15이상 일 땐 'c'를 출력하는 겁니다. 그리고 16이상이 되면
다시 0으로 돌려주는 거지요.

이해가 안될 수도 있겠지만 소스를 보시면 이해가 가실겁니다.


조회 수 :
263
등록일 :
2004.06.20
20:47:37 (*.151.)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=free&document_srl=74356

철없는 아이

2008.03.19
09:34:35
(*.81.198.146)
이게 뭐지...

행방불명

2008.03.19
09:34:35
(*.213.29.126)
그러게 말입니다.
List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜 최근 수정일sort
공지 (대피소) 혼돈과 어둠의 디스코드 노루발 116   2023-09-05 2023-09-05 16:05
공지 글 작성을 위해서는 회원 가입이 필요합니다. 노루발 4679   2016-02-22 2021-07-06 09:43
485 저기요! 프로그래머 돼면 [7] 초싸릿골인 261   2004-06-22 2008-03-19 09:34
돈 얼마 벌어요? 게임프로그래머는?? 시험 끝나면 컴퓨터 학원다니기로 했음, 중대한 결심도 했고,,만화가 포기하고 프로그래머 되기로 했음, 일단 한,,6년동안 다녀서 자격증 한 8정도 딸거임, 그 따는동안에 책 하나 사서 C 언어 차근차근 배워놓고,,  
484 으으.. [1] 검룡 181   2004-06-22 2008-03-19 09:34
내가 이런 것도 스캔했었군. 마요이 첫번째 그린 거. [아직까지 두번밖에 그리질 않았다만]  
483 무능. [3] 검룡 303   2004-06-22 2008-03-19 09:34
-로이머스탱 응원가- (무능보고 웃어버렸다...) 空は?空 日は高く 소라와 아오조라 히와 다카쿠 하늘은 푸르고, 햇님은 높이 떠 있어 今日は絶好の萌え日和 쿄-오와 젯코오노 모에히요리 오늘은 최고로 불타오를 날씨 マジキュ?お助け隊長 たまちゃんは 마...  
482 현재성향:욕구불만 [4] 검룡 362   2004-06-22 2008-03-19 09:34
크르을 카스테라가 하고 싶다! 여타 게임도 하고 싶다! 라그나로크 하고 싶다! 애니도 보고 싶다! 장난도 치고 싶다! 포토샵 가지고 놀고 싶다! 백과사전을 뒤지고 싶다![이건 아닌데..?] 번역기를 돌리면서 놀고 싶다! 만화책도 보고 싶다! 근데 주소가 엉망...  
481 파병 철회를 반대한다. [5] 행방불명 272   2004-06-22 2008-03-19 09:34
파병을 보내면 100여명의 교민들도 죽는다. 그렇지만 우리가 살아야한다. 그러니까 보내자. 우리는 미국에게 소국에 불과하다. 안보내면 경제가 망한다. 보내자, 보내야 한다. 현실에 직면해라. 배째라가 아니다. 그래도 김선일씨, 너무 불쌍한데요. 흑  
480 이라크인들이 한국인 납치했다네요. [4] Deicide 258   2004-06-22 2008-03-19 09:34
http://tvnews.media.daum.net/foreigntv/200406/21/ytni/v6863116.html?nil_profile=g&nil_NewsImg=1 그냥 힘없는저로써는 무사히살아남으라고 기도나해야겠습니다. 제기럴  
479 동헌이~ [2] ☆철없는Orol★친구☆ 363   2004-06-21 2008-03-19 09:34
동헌이 아이조아. 꿀꺽 이동헌 게임을 하눈데요. 아이 재미있어요. 울반 남자 11명 했뚬.. ㅋㅋ 동헌이 Pan  
478 컴퓨터 실 에서... [7] ☆철없는Orol★친구☆ 261   2004-06-21 2008-03-19 09:34
새로운 갑자 입니다.. 환영해 주세욤. 글구 철없는아이의 친구. 잘 부탁 드림 안늉 철없는아이.  
477 행방불명님 [3] 사과 182   2004-06-21 2008-03-19 09:34
Message 생성되지 않은 게시판입니다. 게시판을 생성후 사용하십시요 .... 라는데요? 게시판이 사용하고 싶어서 몸이다 근질거림  
476 흑곰에게 [3] 大슬라임 221   2004-06-21 2008-03-19 09:34
받는 입장이면서 그렇게 굴면 내가 주고 싶어지겠소? 내가 그 개판 같은 소스 가지고 째는 건 아니지만, 큰소리 떽떽치면 얄밉잖아요. 크르릉. 아무튼 간에, 도대체 뭐가 어쨌길레 에러가 93개? 위하고 아랫 부분 다 필요 없습니다. 그 부분만 있으면 됨. 왜...  
475 내 사진 대공개 [5] file 혼돈 243   2004-06-21 2008-03-19 09:34
 
474 게임 못만들겠다. [2] 케르메스 234   2004-06-21 2008-03-19 09:34
만화가 중간에서 끝난느낌이 강해서 최대한 늘릴려고 별의별짓 다 해봤지만 플레이시간 총 3분인가 정도뿐. 그래서 그냥 삭제함. 뭐 게임같지도 않은걸.... -보물을 찾아 떠난 선비- 이건 너무 짧아. 후곰님 만화를 게임으로 구현하기엔 만화에 심도가 너무 ...  
473 우와와. [1] 케르메스 186   2004-06-21 2008-03-19 09:34
비주얼 C 플러스 플러스네. 난 꾸준히 VB하고있는데 언젠가 나도 비주얼 C 플러스플러스 하겠다. 솔직히 VB랑 비주얼 C 플러스플러스가 비슷하다지만 천지차이.  
472 내 사진 공개 [10] file 혼돈 355   2004-06-21 2008-03-19 09:34
 
471 대화방에서 벌어진일 [4] 사과 312   2004-06-21 2008-03-19 09:34
'혼돈과 어둠의 강당'에 입장하셨습니다. 대화방 운영자 메세지 ▶ 어서오세요. lakh9033 ▶ 짜잔!! 혼돈▶ 흐음... 흑곰▶ 이런 대슬라임같은 혼돈▶ 누구시지? 흑곰▶ 어디서 봤는데 흑곰▶ 이 사람. 흑곰▶ 혼둠 인 흑곰▶ 확실한건 혼둠인이고 lakh9033 ▶ 보기를줄...  
470 슬라임 소스 최적화 [2] 혼돈 266   2004-06-21 2008-03-19 09:34
최적화하면 할 곳이 더 많지만, 귀찮아서 대강 이것만... int frame=0; void animate_self() // 애니메이션 함수 { if(++flag>=5) { if(++frame>=4)frame=0; flag=0; } char surfname[4]; strcpy(surfname,"s0x"); if(frame<3)surfname[2]='1'+frame; else sur...  
469 동흥님 패밀리 ( 그림 ) [3] file 초싸릿골인 289   2004-06-20 2008-03-19 09:34
 
468 새 학살 main.cpp 공개 [4] 大슬라임 554   2004-06-20 2008-03-19 09:34
int x=320,flag=0,flag2=0,flag3=0,missleX,missleY; //움직임 관련 변수 int bird[10]={0,},birdX[10]={0,},birdY[10]={0,},birdS[10]={0,},doa[10]={0,}; void animate_self() // 애니메이션 함수 { if(flag >= 0 && flag <= 10){jdd->DrawPicture(backbuffe...  
» 음, 지금 내가 데스크탑에 접근을 못하니 일단 흑곰님이 물어보는 것만 답하죠. [2] 大슬라임 263   2004-06-20 2008-03-19 09:34
<번갈아 가면서 출력, 어찌 하는가?> 혼돈님께서 잘 보셨군요. 반복문(for)갖다가 한 거 맞습니다. 흑곰님께서 말씀하신 타이머라는 것은 아마 VB의 그것인가 본데, 타이머고 뭐고 무지 간단하게 했으니 알려드리죠. 에, 그러니까. 제가 'a'라는 그림과 'b', ...  
466 나의 고민 [6] 이소룡선생 269   2004-06-20 2008-03-19 09:34
내가 짝사랑하는 여자애A라는 애 가 있었는데 나의 학원에 요즘에 들어온 여자애B라는 애 가 절 좋아하네욥 난 마음이 약해 B의 마음을 거절할수도 없고 이일을 어쩐당 누구를 선택하지?