Форум программистов, компьютерный форум, киберфорум
Программирование мультимедиа
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 06.08.2016
Сообщений: 17
1

Ковыряю исходник Quake 3, хочу исправить баг

06.08.2016, 07:15. Показов 892. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
Ради своего интереса хочу пофиксить в Q3 баг, когда проигрывается звук (голос) падения игрока даже когда игрок уже мертв.
Нашел это место:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if ( !(pml.groundTrace.surfaceFlags & SURF_NODAMAGE) )  {
        if ( delta > 60 ) {
            PM_AddEvent( EV_FALL_FAR );
        } else if ( delta > 40 ) {
            // this is a pain grunt, so don't play it if dead
            if ( pm->ps->stats[STAT_HEALTH] > 0 ) {
                PM_AddEvent( EV_FALL_MEDIUM );
            }
        } else if ( delta > 7 ) {
            PM_AddEvent( EV_FALL_SHORT );
        } else {
            PM_AddEvent( PM_FootstepForSurface() );
        }
    }
. Здесь создаются звуковые ивенты. Добавил в конструкции условие
C++
1
if ( pm->ps->pm_type != PM_DEAD )
чтобы звуки не проигрывались, если игрок уже мертв.

Получилось так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if ( !(pml.groundTrace.surfaceFlags & SURF_NODAMAGE) )  {
        //don't play fall sound when player is dead (my FIX)
        if ( pm->ps->pm_type != PM_DEAD ) 
        {
            if ( delta > 60 ) {
                PM_AddEvent( EV_FALL_FAR );
            } else if ( delta > 40 ) {
                // this is a pain grunt, so don't play it if dead
                if ( pm->ps->stats[STAT_HEALTH] > 0 ) {
                    PM_AddEvent( EV_FALL_MEDIUM );
                }
            } else if ( delta > 7 ) {
                PM_AddEvent( EV_FALL_SHORT );
            } else {
                PM_AddEvent( PM_FootstepForSurface() );
            }
        }
    }
Но проблема в том, что при перекомпиляции в игре ничего не меняется. Если вообще удалить весь кусок кода, то аналогично. С нуля компилировать пробовал. Пробовал также ставить брейкпоинт, но он не срабатывает. Было предположение, что это не тот кусок кода, но других я не нашел.
Подскажите, что не так.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.08.2016, 07:15
Ответы с готовыми решениями:

Хочу улучшить свой поиск на сайте, исправить баг
Здравствуйте, у меня есть простой поиск на PHP, который ищет слова в базе данных<?function...

У меня есть программа и ее исходник. Хочу запустить эту программу в Builder C++...
Добрый вечер! У меня есть программа и ее исходник. Хочу запустить эту программу в Builder C++. В...

Исправить баг
сайт mixdoors.ru, плагин mavik Thumbnails (увеличение изображения ) работает в материалах, но не...

Исправить исходник приложения
Добрые люди здравствуйте. Имеется исходник лаунчера игры DayZ. Но в нем есть ошибки, я в c# не...

0
06.08.2016, 07:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.08.2016, 07:15
Помогаю со студенческими работами здесь

Как исправить баг
Ребята помогите исправить баг Win8x64

Надо исправить баг
У меня практика мне дали сайт и установили локал на мой нотбуке и дали задание исправить анимацию...

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

калькулятор на Си исправить баг
main: // calculator.cpp: определяет точку входа для консольного приложения. // #include...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru