Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.

Перейти к содержимому раздела

Blind games - Звуковые игры незрячим

Форум сайта "blind.games". Добро пожаловать.

Архивный режим

Форум переводится в архивный режим. Это значит, что все учетные записи, темы и сообщения остаются на момент 19.07.2018, а добавлять новые уже нельзя. То есть, закрыта регистрация, добавлен запрет на создание новых тем и ответы в существующих.
По всем вопросам, как и ранее, вы можете писать на support (собачка) blind (точка) games.

(Страница 12 из 14)

Страницы Назад 1 10 11 12 13 14 Далее

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Topic RSS feed

Сообщений с 111 по 120 из 135

111 (Wed-02-17 03:35:23 отредактировано Igorek)

Re: BGT

Немного нидопонял вопрос, ну может ответ выше будет кому-нибудь полезен, а проверку на комбинации я бы наверно сделал бы так.
функция возвращающая количество предметов например

int get_count_subject(int[] numbers, int subject) { // numbers - массив с числами, subject - число предмета которое ищем
int count =0;
for(int a=0; a<numbers.length; a++)
if(numbers[a] == subject) count++;
return count;
}

а где-то в коде
if (get_count_subject(numbers, 1) == 3) points +=100; // где 1 это вишня
if (get_count_subject(numbers, 1) == 2) points +=80;
if (get_count_subject(numbers, 3) == 3) points -=100; // где 3 это пчела
и т.д.

п.с. на ошибки код не проверял, ночь, засыпаю.

Хорошо(+) Плохо(-)

112

Re: BGT

ребят где я накосячил?
int x = 1;
int y - 1;
int key_x = 5;
int key_y = 5;
int dore_x = 1;
int dore_y = 10;
bool check = false;
sound step;
sound key;
sound open_dore;
sound dore_disabled;
timer steper;
void main() {
screen_reader_set_library_path(NVDA, "NVDA.dll");
key.load("key.wav");
open_dore.load("open_dore.wav");
dore_disabled.load("dore_disabled.wav");
show_game_window("в поисках ключа");
while(true) {
if(key_down(KEY_UP)) {
if(steper.elapsed>300) {
y+=1;
int step_rand = random(1, 3);
step.load("step"+step_rand+".wav");
step.play();
steper.restart();
}
}
if(key_down(KEY_DOWN)) {
if(steper.elapsed>300) {
y-=1;
int step_rand = random(1, 3);
step.load("step"+step_rand+".wav");
step.play();
steper.restart();
}
}
if(key_down(KEY_RIGHT)) {
if(steper.elapsed>300) {
x-=1;
int step_rand = random(1, 3);
step.load("step"+step_rand+".wav");
step.play();
steper.restart();
}
}
if(key_down(KEY_left)) {
if(steper.elapsed>300) {
x-=1;
int step_rand = random(1, 3);
step.load("step"+step_rand+".wav");
step.play();
steper.restart();
}
}
if(x>10) {
x-=1;
step.stop();
}
if(x<=0) {
x+=1;
step.stop();
}
if(y>10) {
y-=1;
step.stop();
}
if(y<=0) {
y+=1;
step.stop();
}
if(x==key_x and y==key_y and check==false) {
check=true;
key.play();
screen_reader_speak(NVDA, "Вы подняли ключ");
}
if(x==dore_x and y==dore_y) {
if(key_pressed(KEY_RETURN)) {
if(check==false) {
screen_reader_speak(NVDA, "К сожалению, у вас нет нужного ключа!");
dore_disabled.stop();
dore_disabled.play();
}
if(check==true) {
open_dore.play_wait();
screen_reader_speak(NVDA, "У вас был ключ, которым вы открыли дверь и убежали из странной комнаты!");
exit();
}
}
}
if(key_pressed(KEY_ESCAPE)) {
exit();
}
}
}

Хорошо(+) Плохо(-)

113

Re: BGT

ОДНУ ОШИБКУ НАШЁЛ, ВМЕСТО = НАПИСАЛ -;
исправил, теперь игра работает, только хожу я вверх и вниз.
а влево вправо ни как.

Хорошо(+) Плохо(-)

114

Re: BGT

всё разобрался, извиняюсь за беспокойство.

Хорошо(+) Плохо(-)

115

Re: BGT

Вторая строка надо равно, у вас минус.
Не освобождаете память в звуковых объектах. например step.close();

Хорошо(+) Плохо(-)

116

Re: BGT

а где надо писать этот step.close?

Хорошо(+) Плохо(-)

117

Re: BGT

выгружать звуковой объект надо тогда, когда он вам больше не нужен. каждый шаг вы загружаете звук и проигрываете его, следовательно перед тем, как загрузить новый звук, вы должны выгрузить старый, освобождая память.
перед step.load, вам нужно написать step.close(); в четырёх местах.
также для других звуков.
Может быть при загрузке звуков в bgt память освобождается автоматически, но в документации об этом не сказано, а сказано то, что выгружать звуки если они вам не нужны надо.
также выгрузить все звуки нужно при завершении программы. то есть лучше сделать отдельную функцию на завершение игры и вызывать её когда нужно, например

void exit_program() {
step.close();
// здесь закрываем и другие звуковые объекты
// здесь уничтожаем и другие объекты, если они есть
exit(); // закрываем игру
}

а вместо exit(); там где нужно вызываем exit_program();

Хорошо(+) Плохо(-)

118

Re: BGT

здравствуйте.
вот написал я скрипт, вроде всё правильно.
только bgt всё равно выдаёт ошибку.
можете пожалуйста посмотреть в чём проблема?

https://yadi.sk/d/R9BfO5vA3EF3EV

Хорошо(+) Плохо(-)

119

Re: BGT

В архиве папки и аудиозапись. Выкладывайте код.

Хорошо(+) Плохо(-)

120

Re: BGT

извиняюсь

Хорошо(+) Плохо(-)

Сообщений с 111 по 120 из 135

Страницы Назад 1 10 11 12 13 14 Далее

Чтобы отправить ответ, вы должны войти или зарегистрироваться



Currently installed 4 official extensions. Copyright © 2003–2009 PunBB.

Сгенерировано за 0.067 секунды (87% PHP — 13% БД) 10 запросов к базе данных