Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибки / 7 сообщений из 7, страница 1 из 1
15.06.2015, 12:19
    #38983893
Yorik333000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Создаю игру змейка на C++. Написал весь код, но компьютер дает ошибки. Почему он их дает? Ссылка на архив, в котором находится проект игры: https://yadi.sk/d/qOeyB3n4hFpiB
...
Рейтинг: 0 / 0
15.06.2015, 12:30
    #38983899
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Yorik333000Почему он их дает?
Потому что код неправильный, разве это не очевидно?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
15.06.2015, 12:33
    #38983904
Yorik333000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Dimitry Sibiryakov,

А как можно исправить ошибки?
...
Рейтинг: 0 / 0
15.06.2015, 12:43
    #38983912
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Yorik333000А как можно исправить ошибки?
Сначала надо их внимательно прочитать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
15.06.2015, 12:50
    #38983917
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Yorik333000,

Давай ошибки, по одной.
...
Рейтинг: 0 / 0
15.06.2015, 15:04
    #38984018
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Я скопипащу в форум. Так удобнее обсуждать. Надеюсь автор не против. Всё равно ведь опубликовал...


Код: plaintext
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.
#include <time.h>
#include <stdlib.h>
#include <glut.h>

int n = 30, m = 20;
int scale = 25;

int w = scale * n;
int h = scale * m;

int dir, num = 4;

bool controls_arrows = true;

struct
{
	int x, y;
}
s[100];

class Apple
{
public:
	int x, y;

	void New()
	{
		x = rand() % n;
		y = rand() % m;
	}

	void Draw_apple()
	{
		glColor3f(0.0, 0.0, 1.0);
		glRectf(x * scale, y * scale, (x + 1) * scale, (y + 1) * scale);
	}
}
m[10];

void Draw_snake()
{
	glColor3f(0.0, 0.0, 1.0);

	for (int i = 0; i < num; i++)
		glRectf(s[i].x * scale, s[i].y * scale, (s[i].x + 0.9) * scale, (s[i].y + 0.9) * scale);
}

void Tick()
{
	for (int i = num; i > 0; --i)
	{
		s[i].x = s[i - 1].x;
		s[i].y = s[i - 1].y;
	}

	if (dir == 0) s[0].y += 1;
	if (dir == 1) s[0].x -= 1;
	if (dir == 2) s[0].x += 1;
	if (dir == 3) s[0].y -= 1;

	for (int i = 0; i<10; i++)
	if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
	{
		num++; m[i].New();
	}

	if (s[0].x > n) dir = 1;
	if (s[0].x < 0) dir = 2;
	if (s[0].y > m) dir = 3;
	if (s[0].y < 0) dir = 0;

	for (int i = 0; i < num; i++)
	if (s[0].x == s[i].x && s[0].y == s[i].y) num = i;
}

void Draw_field()
{
	glColor3f(0.0, 7.0, 0.0);
	glBegin(GL_LINES);
	for (int i = 0; i < w; i += scale)
	{
		glVertex2f(i, 0);
		glVertex2f(i, h);
	}

	for (int j = 0; j < w; j += scale)
	{
		glVertex2f(0, j);
		glVertex2f(w, j);
	}

	glEnd();
}

void Display()
{
	glClear(GL_COLOR_BUFFER_BIT);

	Draw_field();

	Draw_snake();

	for (int i = 0; i < 10; i++)
		m[i].Draw_apple();

	glFlush();
	glutSwapBuffers();
}

void Keyboard(int key, int a, int b)
{
	switch (key)
	{
		if (controls_arrows == true) case 101: dir = 0; break;
		if (controls_arrows == true) case 102: dir = 2; break;
		if (controls_arrows == true) case 100: dir = 1; break;
		if (controls_arrows == true) case 103: dir = 3; break;
	}
}

void Timer(int i = 0)
{
	Display();

	Tick();

	glutTimerFunc(50, Timer, 0);
}

int main(int argc, char **argv)
{
	srand(time(0));

	for (int i = 0; i < 10; i++)
		m[i].New();

	s[i].x = 10;
	s[i].y = 10;

	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowSize(w, h);
	glutCreateWindow("Snake");
	glClearColor(1.0, 1.0, 0.6, 1.0);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	gluOrtho2D(0, w, 0, h);
	glutDisplayFunc(Display);
	glutSpecialFunc(Keyboard);
	glutTimerFunc(50, Timer, 0);
	glutMainLoop();
}

...
Рейтинг: 0 / 0
15.06.2015, 15:29
    #38984046
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибки
Ну начнем пожалуй с m, что это за фигня?
Код: plaintext
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.
#include <time.h>
#include <stdlib.h>
#include <glut.h>

int n = 30, m = 20;
int scale = 25;

int w = scale * n;
int h = scale * m;

int dir, num = 4;

bool controls_arrows = true;

struct
{
	int x, y;
}
s[100];

class Apple
{
public:
	int x, y;

	void New()
	{
		x = rand() % n;
		y = rand() % m;
	}

	void Draw_apple()
	{
		glColor3f(0.0, 0.0, 1.0);
		glRectf(x * scale, y * scale, (x + 1) * scale, (y + 1) * scale);
	}
}
m[10];

void Draw_snake()
{
	glColor3f(0.0, 0.0, 1.0);

	for (int i = 0; i < num; i++)
		glRectf(s[i].x * scale, s[i].y * scale, (s[i].x + 0.9) * scale, (s[i].y + 0.9) * scale);
}

void Tick()
{
	for (int i = num; i > 0; --i)
	{
		s[i].x = s[i - 1].x;
		s[i].y = s[i - 1].y;
	}

	if (dir == 0) s[0].y += 1;
	if (dir == 1) s[0].x -= 1;
	if (dir == 2) s[0].x += 1;
	if (dir == 3) s[0].y -= 1;

	for (int i = 0; i<10; i++)
	if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
	{
		num++; m[i].New();
	}

	if (s[0].x > n) dir = 1;
	if (s[0].x < 0) dir = 2;
	if (s[0].y > m) dir = 3;
	if (s[0].y < 0) dir = 0;

	for (int i = 0; i < num; i++)
	if (s[0].x == s[i].x && s[0].y == s[i].y) num = i;
}

void Draw_field()
{
	glColor3f(0.0, 7.0, 0.0);
	glBegin(GL_LINES);
	for (int i = 0; i < w; i += scale)
	{
		glVertex2f(i, 0);
		glVertex2f(i, h);
	}

	for (int j = 0; j < w; j += scale)
	{
		glVertex2f(0, j);
		glVertex2f(w, j);
	}

	glEnd();
}

void Display()
{
	glClear(GL_COLOR_BUFFER_BIT);

	Draw_field();

	Draw_snake();

	for (int i = 0; i < 10; i++)
		m[i].Draw_apple();

	glFlush();
	glutSwapBuffers();
}

void Keyboard(int key, int a, int b)
{
	switch (key)
	{
		if (controls_arrows == true) case 101: dir = 0; break;
		if (controls_arrows == true) case 102: dir = 2; break;
		if (controls_arrows == true) case 100: dir = 1; break;
		if (controls_arrows == true) case 103: dir = 3; break;
	}
}

void Timer(int i = 0)
{
	Display();

	Tick();

	glutTimerFunc(50, Timer, 0);
}

int main(int argc, char **argv)
{
	srand(time(0));

 	for (int i = 0; i < 10; i++)
 		m[i].New();

	s[i].x = 10;
	s[i].y = 10;

	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowSize(w, h);
	glutCreateWindow("Snake");
	glClearColor(1.0, 1.0, 0.6, 1.0);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	gluOrtho2D(0, w, 0, h);
	glutDisplayFunc(Display);
	glutSpecialFunc(Keyboard);
	glutTimerFunc(50, Timer, 0);
	glutMainLoop();
}
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибки / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]