C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[64368] Re:가능합니다.
박태호 [] 955 읽음    2011-05-17 21:59
조대현.Clau 님이 쓰신 글 :
: 1. 소스를 보니 DLL을 쓰지도 않고 기본 헤더만 사용하네요.
:
: 빌더에서 무리없이 컴파일 가능합니다.
:
:
: 2. 빌더에서 하신다면 크게 다음의 순서로 하시면 됩니다.
: 1) 빌더 설치(버전에 따라 다르겠네요^^)
: 2) 새프로젝트->Other->Console Application->C Type선택->VCL, Multi Thread 체크해제->OK
: 3) 기본 빈 프로젝트가 생성됩니다.
: 4) 가지고 계신 소스 복사&붙여넣기
: 5) 컴파일 후 실행
:
:
:
: 박태호 님이 쓰신 글 :
: : #include<stdio.h>
: : #include<conio.h>
: : #include<stdlib.h>
: : #include<windows.h>
: :
: : #define SCREEN_X 12
: : #define SCREEN_Y 28
: : #define MAX_EN 3
: : #define MAX_SPEED 100
: : #define MIN_SPEED 2000
: :
: : char arr[SCREEN_X][SCREEN_Y],
: :         en_xy[2][MAX_EN],
: :      frame, life, player_st;
: :     
: : int i, h, score, speed;
: : char player_x, player_y;
: :
: : void clear_arr(){
: :     for(i=0; i<SCREEN_Y; i++)
: :     {
: :         for(h=0; h<SCREEN_X; h++)
: :         {
: :             arr[h][i]='"';
: :         }
: :     }
: : }
: :
: : void reset()
: : {   
: :     for(i = 0; i < MAX_EN; ++i){
: :         en_xy[0][i] = 100;
: :     }
: :     clear_arr();
: :     player_x=SCREEN_X /2;
: :     player_y=SCREEN_Y-8;
: :     arr[player_x][player_y]='A';
: :     life = 5;
: :     score = 0;
: :     frame = 0;
: :     player_st = 0;
: :     speed = MIN_SPEED;
: : }
: :
: :
: : void key()
: : {
: :     switch(getch()){
: :         case 'K' :
: :             if(player_x != 0) player_x-=3;
: :         break;
: :         case 'M' :
: :             if(player_x !=9) player_x+=3;
: :         break;
: :         case 'r' :
: :             if(life == 0) reset();
: :         break;
: :    }
: : }
: :
: : void drowscreen()
: : {
: :     if(life == 0 && player_st >0){
: :         arr[player_x][player_y]= (i%2 == player_st%2)?' ' : 'X';
: :         arr[player_x+1][player_y]= (i%2 == player_st%2)?'X' : 'N';
: :         arr[player_x][player_y+1]= (i%2 == player_st%2)?'N' : 'X';
: :         arr[player_x+1][player_y+1]=(i%2 == player_st%2)?' ' : 'M';
: :         arr[player_x+2][player_y+1]=(i%2 == player_st%2)?'N' : 'X';
: :         arr[player_x][player_y+2]=(i%2 == player_st%2)?'X' : ' ';
: :         arr[player_x+1][player_y+2]=(i%2 == player_st%2)?'N' : 'X';
: :         arr[player_x][player_y+3]=(i%2 == player_st%2)?'X' : 'M';
: :         arr[player_x+1][player_y+3]=(i%2 == player_st%2)?'N' : 'M';
: :         arr[player_x+2][player_y+3]=(i%2 == player_st%2)?'X' : ' ';
: :         player_st--;
: :     }
: :     else if(!player_st && !life == 0){
: :         arr[player_x+1][player_y]='A';
: :         arr[player_x][player_y+1]= (i%2 == frame%2)?'Z' : 'E';
: :         arr[player_x+1][player_y+1]='A';
: :         arr[player_x+2][player_y+1]=(i%2 == frame%2)?'Z' : 'E';
: :
: :         arr[player_x+1][player_y+2]='A';
: :         arr[player_x][player_y+3]=(i%2 == frame%2)?'Z' : 'E';
: :         arr[player_x+1][player_y+3]='A';
: :         arr[player_x+2][player_y+3]=(i%2 == frame%2)?'Z' : 'E';
: :     }
: :     else if(player_st >0){
: :         arr[player_x+1][player_y]= (i%2 == frame%2)?'N' : 'M';
: :         arr[player_x][player_y+1]= (i%2 == frame%2)?'N' : 'M';
: :         arr[player_x+1][player_y+1]=(i%2 == frame%2)?'N' : 'M';
: :         arr[player_x+2][player_y+1]=(i%2 == frame%2)?'N' : 'M';
: :        
: :         arr[player_x+1][player_y+2]=(i%2 == frame%2)?'N' : 'M';
: :         arr[player_x][player_y+3]=(i%2 == frame%2)?'N' : 'M';
: :         arr[player_x+1][player_y+3]=(i%2 == frame%2)?'N' : 'M';
: :         arr[player_x+2][player_y+3]=(i%2 == frame%2)?'N' : 'M';
: :         player_st--;
: :     }
: :    
: :    
: :     for(i = 0; i < MAX_EN; ++i){
: :     if(en_xy[0][i] != 100)
: :     {
: :         arr[en_xy[0][i]+1][en_xy[1][i]] = 'E';
: :         arr[en_xy[0][i]][en_xy[1][i]+1] = (i%2 == frame%2)?'Z' : 'E';
: :         arr[en_xy[0][i]+1][en_xy[1][i]+1] = 'E';
: :         arr[en_xy[0][i]+2][en_xy[1][i]+1] = (i%2 == frame%2)?'Z' : 'E';
: :
: :         arr[en_xy[0][i]+1][en_xy[1][i]+2] = 'E';
: :         arr[en_xy[0][i]][en_xy[1][i]+3] = (i%2 == frame%2)?'Z' : 'E';
: :         arr[en_xy[0][i]+1][en_xy[1][i]+3] = 'E';
: :         arr[en_xy[0][i]+2][en_xy[1][i]+3] = (i%2 == frame%2)?'Z' : 'E';
: :     }
: :     }
: :
: :      for(i=0; i<SCREEN_Y-4; i++)
: :      {
: :          for(h=0; h<SCREEN_X; h++)
: :         {
: :             if(!(h % 3))
: :             {
: :                 printf("%s", (i%2 == frame%2)?"┃" : "  ");
: :             }       
: :            
: :             switch(arr[h][i]){
: :                 case'A':
: :                     printf("▣");
: :                     break;
: :                  case'E':
: :                     printf("□");
: :                     break;
: :                 case'Z':
: :                     printf("■");
: :                     break;
: :                  case'N':
: :                     printf("△");
: :                     break;
: :                 case'M':
: :                     printf("▽");
: :                     break;
: :                 case'X':
: :                     printf("※");
: :                     break;
: :                  default:
: :                     printf("  ");               
: :             }
: :             
: :         }
: :         printf("%s", (i%2 == frame%2)?"┃" : "  ");
: :        
: :      switch(i){
: :         case 0:
: :         case 1:
: :         printf("▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒", score);
: :         break;
: :         case 2:
: :         printf("▒     ☜ 자동차 게임 ☞    ▒", score);
: :         break;
: :         case 3:
: :         case 4:
: :         case 5:
: :         printf("▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒", score);
: :         break;  
: :         case 6:
: :         printf("▒  SPEED: %3dKm            ▒", ((MIN_SPEED+400) - speed) / 10);
: :         break;  
: :         case 7:
: :         printf("▒  SCORE: %5d            ▒", score);
: :         break;
: :         case 8:
: :         printf("▒   LIFE: %5d            ▒", life);
: :         break;
: :         case 12:
: :         printf("%s", (life == 0)? "▒    OH~ SHIT! GAME OVER   ▒" : "▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒");
: :         break;
: :         case 13:
: :         printf("%s", (life == 0)? "▒R키를 누르시면 계속됩니다!▒" : "▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒");
: :         break;
: :         default:
: :         printf("▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒", score);
: :        
: :      }
: :    
: :    
: :      printf("\n");
: :      }
: :
: : }
: :
: : void en(){
: :     if(!frame){
: :     for(i = 0; i < MAX_EN; ++i){
: :         if(en_xy[0][i] == 100)
: :         {
: :             en_xy[0][i] = (rand()%4)*3;
: :             en_xy[1][i] = 0;
: :             break;
: :         }
: :     }
: :     }
: :
: :     for(i = 0; i < MAX_EN; ++i){
: :         if(en_xy[0][i] != 100)
: :         {
: :             en_xy[1][i]++;
: :            
: :             if(en_xy[1][i]+3 >= player_y && en_xy[0][i] == player_x){
: :                 life--;
: :                 player_st = 10;
: :                 en_xy[0][i] = 100;
: :                 speed = MIN_SPEED;
: :             }
: :
: :             if(en_xy[1][i] >= SCREEN_Y-4){
: :                 en_xy[0][i] = 100;
: :                 score += 50;
: :             }
: :         }
: :     }
: : }
: :
: : void gotoxy(int x, int y)
: : {
: :     COORD Cur;
: :     Cur.X=x;
: :     Cur.Y=y;
: :     SetConsoleCursorPosition (GetStdHandle ( STD_OUTPUT_HANDLE),Cur);
: : }
: :
: : void main()
: : {
: :     reset();
: :     while(1)
: :     {       
: :         if(life)
: :         {
: :             en();   
: :             frame = frame > 10? 0 : frame+1;
: :             speed = (speed > MAX_SPEED)? speed-=7 : MAX_SPEED;
: :             score++;           
: :        
: :         }       
: :         gotoxy(0,0);
: :         drowscreen();          
: :         clear_arr();
: :         for(i=0; i<speed; i++) if(kbhit()) key();   
: :     }
: : }
: :
: :
: : 이소스를 빌더로 돌려볼려고하는데 가능한건가요? 한번도 못써봐서요.. 꼭빌더로해야하는데.. 휴...
: :
: : 어디 강좌같은거없나요 빠르게 익혀야해서요..




이소스를 구이로 돌릴려면 어케해야되나요.. msc로 바꿀려고해도 사정이생겨서.. 빌더로 꼭해야하는데..

너무 복잡하네요 ㅜㅜ

+ -

관련 글 리스트
64331 빌더를 한번도 써보지못했어요.. 박태호 1231 2011/05/11
64369     Re:꼭 빌더로 해야하는 이유가 궁금합니다. +_ + 남병철.레조 1111 2011/05/17
64372         Re:Re:꼭 빌더로 해야하는 이유가 궁금합니다. +_ + 박태호 953 2011/05/18
64332     가능합니다. 조대현.Clau 963 2011/05/11
64368         Re:가능합니다. 박태호 955 2011/05/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.