Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
aleebai
0 / 0 / 1
Регистрация: 06.09.2013
Сообщений: 55
#1

Гонка (С++) игра - C++

03.11.2013, 19:01. Просмотров 1224. Ответов 1
Метки нет (Все метки)

Сперва введешь координату примерно 20х20 и выходит на экран машина а теперь не могу его сдвинуть с места помогите

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <iostream>
#include <vector>
#include <time.h>
#include <cstdlib>
#include <conio.h>
#include <Windows.h>
using namespace std;
 
void setMap(char** m, int *h, int *w,int*x, int* y){
    for(int i=0;i<*h;i++){
        for(int j=0;j<*w;j++){
            if(i==0 || i==*h-1){m[i][j] = '-';}
            else if(j==0 || j==*w-1){m[i][j] = '|';}
            else {m[i][j] = ' ';}
        }
    }
    m[*x][*y] = 'x';
    m[*x-1][*y] = 'x';
    m[*x-2][*y] = 'x';
    m[*x-1][*y+1] = 'x';
    m[*x-1][*y-1] = 'x';
    m[*x+1][*y+1] = 'x';
    m[*x+1][*y-1] = 'x';
}
void clearscreen()
{
HANDLE hOut;
COORD Position;
hOut = GetStdHandle(STD_OUTPUT_HANDLE);
Position.X = 0;
Position.Y = 0;
SetConsoleCursorPosition(hOut, Position);
}
void printMap(char **m, int* h, int *w){
    for(int i=0;i<*h;i++){
        for(int j=0;j<*w;j++){
            cout<<m[i][j];
        }
        cout<<endl;
    }
    
}
 
int main(){
    int height, width;
    cout<<"Enter height and width of a map";
    cin>>height>>width;
    
    char** map = new char* [height];
    for(int i=0;i<height;i++)
    {
        map[i] = new char[width];
    }
    int x=7;
    int y= 7;
    setMap(map, &height, &width,&x,&y);
    printMap(map,&height, &width);
    char move;
 
    while (true)
    clearscreen();
    {
        printMap(map,&height,&width);
            move=getch();
        if (move=='w'&&x< 8 && map[x][y+1]!='*')
        {
        }
            {
    map[x][y] = 'x';
    map[x-1][y] = 'x';
    map[x-2][y] = 'x';
    map[x-1][y+1] = 'x';
    map[x-1][y-1] = 'x';
    map[x+1][y+1] = 'x';
    map[x+1][y-1] = 'x';
        }
 
    }
 
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2013, 19:01     Гонка (С++) игра
Посмотрите здесь:

Игра - C++
Помогите решить следующую задачу: Написать программу, которая отгадывает задуманное число в интервале за n вопросов типа &quot;Ваше число,...

Игра - C++
Доброе время суток! Хочу написать свою первую, простую игру на С++. Посоветуйте с чего начать.

игра (с++) - C++
Здравствуйте! Нужно составить игру про шарики. Если в линии встречаются 3 или больше одинаковых цветов шарико, то нужно этот ряд шаров...

2Д-игра - C++
Здравствуйте, хочу создать 2D игру. Раньше такие игры писал на C++ Builder, но больше не хочу (не серьёзно это ка-кто). Изучаю OpenGL, но...

Игра на C++ - C++
Господа эксперты, допустим что у меня в графическом режиме есть некий статический обьект. Как мне им управлять с клавиатуры?...

Игра - C++
Есть вопрос, но не знаю даже как правильно спросить. Написал логику игры &quot;Змейка&quot;. Теперь переношу на WinApi (писал на консоль). ...

Игра на C++ - C++
Нужно написать какую-небуть не особо сложную игру на C++. В голову приходять разные арканоиды/танчики/бомбермены, но для них, насколько я...

Игра - C++
Создать программу со структурой player. Структура должна содержать поля level - для сохранения уровня игрока (начальное значение 1), ХР -...

Игра на С++ - C++
Ну в общем нужна вам или нет, но всё равно выложу:) Это крестики-нолики. #include &lt;graphics.h&gt; #include &lt;stdlib.h&gt; #include...

Логическая игра - C++
Учюсь в Германии. В школе на информатике играли против учителя в игру. Он всегда выигрывал. Вот игра и правила: | | | 3...

Игра в кости C++ - C++
Написать программу, которая имитирует игру в кости. Игроки (2 человека) кидают по 2 кубика(генератор случайных чисел). У кого сумма на...

Игра в камни - C++
Помогите пожалуйста решить задачу: На столе лежат N камней. За ход игрок может взять 1 или 2 камня, если N делится на 3; 1 или 3,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NeXt_X7
Сообщений: n/a
07.11.2013, 19:58     Гонка (С++) игра #2
конечно он работать не будет, ты не написал формулу его движения; тебе нечем управлять машиной; ниже я написал рабочий код; скопируй и всё,машина едет...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
#include <vector>
#include <iostream>
#include <time.h>
#include <cstdlib>
#include <conio.h>
#include <Windows.h>
using namespace std;
void setMap(char **k, int *h, int *w,int x,int y)
{
 
    for(int i=0;i<*h;i++){
        for(int j=0;j<*w;j++){
            if(i==0 || i==*h-1){k[i][j] = 'w';}
            else if(j==0 || j==*w-1){k[i][j] = 'w';}
            else {k[i][j] = ' ';}
        }
    }
 
    k[x][y]='*';
    k[x+1][y]='*';
    k[x+2][y]='*';
    k[x+1][y-1]='*';
    k[x+1][y+1]='*';
    k[x+3][y-1]='*';
    k[x+3][y+1]='*';
}
 
void printMap(char **m, int* h, int *w){
    for(int i=0;i<*h;i++){
        for(int j=0;j<*w;j++){
            cout<<m[i][j];
        }
    cout<<endl;
    } 
}
    
void clearscreen()
{
    HANDLE hOut;
    COORD Position;
    hOut = GetStdHandle(STD_OUTPUT_HANDLE);
    Position.X = 0;
    Position.Y = 0;
    SetConsoleCursorPosition(hOut, Position);
}
int main(){
    int height, width;
    cout<<"Enter height and width of a map"<<endl;
    cin>>height>>width;
    int x=8,y=6;
    char** map = new char* [height];
    for(int i=0;i<height;i++){
        map[i] = new char[width];
    }
    setMap(map, &height, &width, x, y);
    char move;
    while(true)
        {
        clearscreen();
        printMap(map,&height, &width);
        move=getch();
        if(move == 'w'  && x>1)
        {
            map[x+1][y+2]=' ';
            map[x+1][y+1]=' ';
            map[x][y]=' ';
            map[x+2][y-2]=' ';
            map[x+2][y-1]=' ';
            map[x+2][y+2]=' ';
            map[x+2][y+1]=' ';
            map[x+1][y]=' ';
            map[x+2][y]=' ';
            map[x+1][y-1]=' ';
            map[x+3][y]=' ';
            map[x+4][y]=' ';
            map[x+1][y+1]=' ';
            map[x+3][y-1]=' ';
            map[x+3][y+1]=' ';
            map[--x][y]='*';
            map[x+1][y]='*';
            map[x+2][y]='*';
            map[x+1][y-1]='*';
            map[x+1][y+1]='*';
            map[x+3][y-1]='*';
            map[x+3][y+1]='*';
        }
        if(move=='s' && x<height-6)
{
    map[x][y]=' ';
    map[x+2][y-2]=' ';
    map[x+2][y-1]=' ';
    map[x+2][y+2]=' ';
    map[x+2][y+1]=' ';
    map[x+1][y+2]=' ';
    map[x+1][y+1]=' ';
    map[x+1][y]=' ';
    map[x+2][y]=' ';
    map[x+1][y-1]=' ';
    map[x+1][y+1]=' ';
    map[x+3][y-1]=' ';
    map[x+3][y+1]=' ';
    map[++x][y]=' ';
    map[x+3][y]='*';
    map[x+4][y]='*';
    map[x+2][y]='*';
    map[x+1][y-1]='*';
    map[x+1][y+1]='*';
    map[x+3][y-1]='*';
    map[x+3][y+1]='*';
        }
        if(move=='d' && y<width-5)
{
    map[x+1][y+2]=' ';
    map[x+1][y+1]=' ';
    map[x][y]=' ';
    map[x+2][y-2]=' ';
    map[x+2][y-1]=' ';
    map[x+1][y]=' ';
    map[x+2][y]=' ';
    map[x+1][y-1]=' ';
    map[x+3][y]=' ';
    map[x+4][y]=' ';
    map[x+1][y+1]=' ';
    map[x+3][y-1]=' ';
    map[x+3][y+1]=' ';
    map[x][++y]=' ';
    map[x+1][y]=' ';
    map[x+2][y+2]='*';
    map[x+2][y+1]='*';
    map[x+2][y]='*';
    map[x+1][y-1]='*';
    map[x+1][y+1]='*';
    map[x+3][y-1]='*';
    map[x+3][y+1]='*';
        }
 
        if(move=='a' && y>3)
        {
            map[x+1][y+2]=' ';
            map[x+1][y+1]=' ';
            map[x][y]=' ';
            map[x+1][y]=' ';
            map[x+2][y]=' ';
            map[x+1][y-1]=' ';
            map[x+3][y]=' ';
            map[x+4][y]=' ';
            map[x+1][y+1]=' ';
            map[x+3][y-1]=' ';
            map[x+3][y+1]=' ';
            map[x][--y]=' ';
            map[x+1][y]=' ';
            map[x+2][y-2]='*';
            map[x+2][y-1]='*';
            map[x+2][y]='*';
            map[x+1][y-1]='*';
            map[x+1][y+1]='*';
            map[x+3][y-1]='*';
            map[x+3][y+1]='*';
        }
   }
   return 0;
}
Yandex
Объявления
07.11.2013, 19:58     Гонка (С++) игра
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru