게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어) 극초보 슈팅게임 질문 좀 ㅠㅠㅠ
게시물ID : programmer_17485짧은주소 복사하기
작성자 : 자징자징거
추천 : 0
조회수 : 3776회
댓글수 : 9개
등록시간 : 2016/06/04 04:45:07
옵션
  • 본인삭제금지

아주 저급한 게임을 만들고 있는데요.

총알을 어떻게 움직이게 하는 지 감이 안 오네요 ㅠㅠ

아래부터 코드입니다 ㅠㅠ

전 글에서도 많이 이야기했지만, 노트북이 망가져서 수리센터에 맡겼거든요.

물론 수리기간동안 노트북을 빌려주지만, 그 노트북으로는 웹 브라우징만 할 수 있어서

피씨방에 와서 코딩해봤는데, 총알이 출력은 되지만, 위로 안 올라가네요 ㅠㅠ

while(1)문을 열고 적하고 충돌할 때까지 y--로 올라가야할텐데, 쉽지가 않네요 ㅠㅠ


도와주세요 ㅠㅠ





#include <stdio.h>

#include <stdlib.h>

#include <windows.h>

#include <time.h>

#include <conio.h>



#define LEFT 75     //좌로이동

#define RIGHT 77    //우로이동

#define UP 72     //발사


void TitleMenu();

void gotoxy();

void myjet();

void enemy();




int main()

{

    TitleMenu();

    gamescreen();

    myjet();

    void enemy();


    return 0;

}



void TitleMenu(void){


    int start;


    printf("\n\n\n");

    printf("\t\t***   ***** ***** *****  *    *  ***** *****\n");

    printf("\t\t*  *  *     *     *      * *  *  *     *    \n");

    printf("\t\t*   * ***** ***   *****  *  * *  ***** *****\n");

    printf("\t\t*  *  *     *     *      *   **      * *    \n");

    printf("\t\t***   ***** *     *****  *    *  ***** *****\n\n\n");

    printf("\t\tPress Space bar to start!!\n");

    printf("\t\tPress any other key to exit!!\n");


    start=getch();


    if (start==32){

        system("cls");

    }else{

        exit(1);

    }


}



void gamescreen(void){


    int x=3;

    int y=3;

    int i=0;


    for (i=0;i<24;i++){

        gotoxy(50,y+i); printf("|");

    }



    gotoxy(52,5);printf("Score:");




}


void myjet(void){


    int move;

    int y=27;

    int x_min=3;

    int x_max=50;

    int x=26;


    gotoxy(x,27);printf("A");



    while (1){

        move=getch();


        switch (move){


            case LEFT:   //좌로 이동

                gotoxy(x,27);printf(" ");  //왼쪽 방향키를 눌렀을 때 전에 있던 자리에는 아무것도 없음

                x--;   //비행기의 새로운 x좌표값

                gotoxy(x,27);printf("A");  //새로운 비행기 자리에 비행기 출력

                if (x==0){  //맨 왼쪽에 갔을 때 맨 오른쪽으로 나타남

                    gotoxy(x,27);printf(" ");

                    x=50;

                    gotoxy(x,27);printf("A");

                    }

                break;

            case RIGHT:

                gotoxy(x,27);printf(" ");  //오른쪽 방향키를 눌렀을 때 전에 있던 자리에는 아무것도 없음

                x++;   //비행기의 새로운 x좌표값

                gotoxy(x,27);printf("A");  //새로운 비행기 자리에 비행기 출력

                if (x==50){  //맨 오른쪽에 갔을 때 맨 왼쪽으로 나타남

                    gotoxy(x,27);printf(" ");

                    x=0;

                    gotoxy(x,27);printf("A");

                    }

                break;

            case UP:

                gotoxy(x,y-1);printf("^"); //총알 발사

                break;

        }

    }

}



void gotoxy(int x, int y)

{

 COORD Cur;

 Cur.X=x;

 Cur.Y=y;

 SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),Cur);

}


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호