C언어 rpg game 프로그램입니다.(콘솔)

lfs의 이미지

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
struct _saram{
    int power;
    int gold;
    int destroy;
    int bag[10];
}SARAM;
 
struct _mop{
    int dokkabi[3];
}MOP;
 
int ganpan(void)
{
	printf("<====영 혼 게 임====>\n");
	printf("천상세계에서의 유람을\n");
	printf("즐기는 게임       입니다.\n");
	printf("재미있게 즐기십시요.   \n");
	printf("===================\n");
 
	return 0;
}
 
int main(void)
{
    int i; //for문 일회용 변수
    int key; //주된 키보드 변수
    int sub1key; //물약을 살건지 물어보는 변수
    int drug=0; //물약 갯수
    int count=0; //가방 카운트 갯수
    char chdrug[4];//물약을몇개 살지 물어보는 변수
 
    SARAM.power=30;SARAM.gold=10;SARAM.destroy=2;
    //사람 체력, 돈, 파괴력
    for(i=0;i<10;i++)
        SARAM.bag[i]=0;
    //사람 가방 초기화
    MOP.dokkabi[0]=2;MOP.dokkabi[1]=4;MOP.dokkabi[2]=10;
    //몹 도깨비 공격력,체력,도깨비에서 나올 돈
 
 
    ganpan();
 
    while(1){
        printf("<===꽃 동산===>\n");
		printf("도깨비가 나타났습니다.!!\n");
		printf("사람 %d 체력이 있습니다.\n", SARAM.power);
		(SARAM.power)-=(MOP.dokkabi[0]);
		key=_getch();
 
	if(key==55){ //7번키를 눌렀을때
            MOP.dokkabi[1]-=SARAM.destroy;
            printf("도깨비 체력이 %d 되었습니다.\n",MOP.dokkabi[1]);
 
            if(MOP.dokkabi[1]==0){
                SARAM.gold+=MOP.dokkabi[2];
                printf("돈 10원을 얻었습니다.\n");
            }
        }
        else if(key==57){ //9번키를 눌렀을때
            printf("사람 체력을 키웁니다.\n");
 
            for(i=0;i<10;i++){
                if(SARAM.bag[i]==4){
                    (SARAM.power)+=(SARAM.bag[i]);
                    SARAM.bag[i]=0;
                    count++;
 
                    if(count==1){
                        printf("체력을 충전하였습니다.\n");
                        break;
                    }
                }
            }
            count=0;
        }
        else if(key==53){  //5번키를 눌렀을때
            printf("상점에 왔습니다.\n");
            printf("돈 계산을 합니다.\n");
            printf("돈 계산은 %d 입니다.\n",SARAM.gold);
 
            printf("물약을 사겠습니까?(y/n)");
            sub1key=_getch();
            if(sub1key==121){ //y키를 눌렀을때
                printf("물약을 사겠습니다.\n");
                printf("몇개 사겠습니까?\n");
                printf("입력>>");
                gets(chdrug);
                drug=atoi(chdrug);
                /*scanf("%d",drug); */
 
                if((drug*10)>(SARAM.gold)){
                    printf("물약 갯수가 많습니다.\n");
                    continue;
                }
                else if((drug*10)<0){
                    printf("잘못된 입력입니다.\n");
                    continue;
                }else{
                    (SARAM.gold)-=(drug*10);
 
                    for(i=0;i<10;i++){
                        if(SARAM.bag[i]==0){
                            SARAM.bag[i]=4;
                            count++;
 
                            if(count==drug){
                                printf("물약을 %d 개 샀습니다.\n",drug);
                                break;
                            }
                        }
                    }
                    count=0;
                }
                drug=0;
 
            }
            else if(sub1key=110){ //n키를 눌었을때
                printf("물약을 안사겠습니다.\n");
                continue;
            }
        }
        else if(key==48){  //0번키를 눌렀을때
            printf("게임을 끝마치겠습니까?(y/n)");
            sub1key=_getch();
 
            if(sub1key==121){ //y키를 눌렀을때
                printf("게임을 끝내겠습니다.\n");
                break;
            }
            else if(sub1key==110){ //n키를 눌렀을때
                printf("게임을 계속합니다.\n");
                continue;
            }
        }
 
        if(MOP.dokkabi[1]==0)
            MOP.dokkabi[1]=4;
    }
 
    return 0;
}

rpg game소스입니다. 초 간단하면서 알차게 만들었으니
참고하시기 바랍니다.

Forums: