Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 29 мар 2024, 04:24

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 47 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 21 мар 2013, 01:31 
Не в сети
Зарегистрирован:
21 мар 2013, 01:01
Последнее посещение:
07 мар 2014, 13:48
Сообщения: 14
Пинг повышается при использовании огнемета


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 21 мар 2013, 01:44 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
brim писал(а):
Пинг повышается при использовании огнемета

Какое значение rate в консоли?

_________________
Изображение


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 21 мар 2013, 01:53 
Не в сети
Зарегистрирован:
21 мар 2013, 01:01
Последнее посещение:
07 мар 2014, 13:48
Сообщения: 14
30000


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 21 мар 2013, 02:54 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
brim писал(а):
30000

Значит, не в этом дело. Просто низкий рейт дает подобный эффект

_________________
Изображение


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 28 янв 2022, 18:25 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
30 дек 2023, 16:47
Сообщения: 55
ПЛАГИН ВЫДАЁТ ОШИБКУ ТУТ:

public fw_PlayerPreThink( pPlayer )
{
if( g_aBurnData[ pPlayer ][ __BurnTime ] <= 0 )
{
g_aBurnData[ pPlayer ][ __FlameDamage ] = 0;
return;
}

if( !is_user_connected( g_aBurnData[ pPlayer ][ __Attacker ] ) || entity_get_int( pPlayer, EV_INT_waterlevel ) > 1 )
{
//reset burning stuff when my attacker disconnects
//otherwise it will sum up when I'll set on fire
//for the next time.
arrayset( g_aBurnData[ pPlayer ], 0, eBurnData );
return;
}

static Float:tTime;
tTime = get_gametime( );

if( g_aBurnData[ pPlayer ][ __NextBurn ] > tTime )
return;

static Float:vecSrc[ 3 ];
entity_get_vector( pPlayer, EV_VEC_origin, vecSrc );

engfunc( EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, vecSrc, 0 );
write_byte( TE_SPRITE );
engfunc( EngFunc_WriteCoord, vecSrc[ 0 ] );
engfunc( EngFunc_WriteCoord, vecSrc[ 1 ] );
engfunc( EngFunc_WriteCoord, vecSrc[ 2 ] );
write_short( g_sModelIndexFlameBurst );
write_byte( 10 );
write_byte( 180 );
message_end( );

ExecuteHamB( Ham_TakeDamage, pPlayer, g_aBurnData[ pPlayer ][ __Attacker ], g_aBurnData[ pPlayer ][ __Attacker ], BURN_DAMAGE, DMG_SLOWBURN | DMG_NEVERGIB );

g_aBurnData[ pPlayer ][ __BurnTime ]--;
g_aBurnData[ pPlayer ][ __NextBurn ] = tTime + 1.0;
g_aBurnData[ pPlayer ][ __FlameDamage ] = 1;
}

ОШИБКА :
L 01/27/2022 - 17:39:53: [AMXX] [0] e6ef7bec720eb78f40d3e275c0e32d86.sma::fw_PlayerPreThink (line 413)
L 01/27/2022 - 17:39:53: [AMXX] Displaying debug trace (plugin "wpn_flamethrower.amxx", version "1.1")
L 01/27/2022 - 17:39:53: [AMXX] Run time error 4: index out of bounds

КАК ИСПРАВИТЬ??????


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 29 янв 2022, 12:13 
Не в сети
Аватара пользователя
Зарегистрирован:
27 дек 2019, 17:59
Последнее посещение:
26 мар 2024, 13:29
Сообщения: 273
Откуда: Иркутск
Виталий писал(а):
ОШИБКА :
L 01/27/2022 - 17:39:53: [AMXX] [0] e6ef7bec720eb78f40d3e275c0e32d86.sma::fw_PlayerPreThink (line 413)
L 01/27/2022 - 17:39:53: [AMXX] Displaying debug trace (plugin "wpn_flamethrower.amxx", version "1.1")
L 01/27/2022 - 17:39:53: [AMXX] Run time error 4: index out of bounds

КАК ИСПРАВИТЬ??????

Так, у нас тут выход за пределы массива. Единственный массив, использущийся в fw_PlayerPreThink - g_aBurnData. В функции первое измерение массив - pPlayer, в коде я не заметил какой-либо проверки на валидность игрока. Можно попробовать изменить функцию так:

Код:
public fw_PlayerPreThink( pPlayer )
{   
   if( !is_user_connected( g_aBurnData[ pPlayer ][ __Attacker ] ) || entity_get_int( pPlayer, EV_INT_waterlevel ) > 1 || !ExecuteHam(Ham_IsPlayer, id) )
   {
      //reset burning stuff when my attacker disconnects
      //otherwise it will sum up when I'll set on fire
      //for the next time.
      arrayset( g_aBurnData[ pPlayer ], 0, eBurnData );
      return;
   }
    //дальше код функции
}

_________________
ВК: https://vk.com/pristavka2013
GitHub: https://github.com/mrglaster
Почта: [email protected]

Есть объективная реальность, а есть печенье.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: [Weapon] Flamethrower
СообщениеДобавлено: 29 янв 2022, 16:53 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
30 дек 2023, 16:47
Сообщения: 55
Glaster писал(а):
Виталий писал(а):
ОШИБКА :
L 01/27/2022 - 17:39:53: [AMXX] [0] e6ef7bec720eb78f40d3e275c0e32d86.sma::fw_PlayerPreThink (line 413)
L 01/27/2022 - 17:39:53: [AMXX] Displaying debug trace (plugin "wpn_flamethrower.amxx", version "1.1")
L 01/27/2022 - 17:39:53: [AMXX] Run time error 4: index out of bounds

КАК ИСПРАВИТЬ??????

Так, у нас тут выход за пределы массива. Единственный массив, использущийся в fw_PlayerPreThink - g_aBurnData. В функции первое измерение массив - pPlayer, в коде я не заметил какой-либо проверки на валидность игрока. Можно попробовать изменить функцию так:

Код:
public fw_PlayerPreThink( pPlayer )
{   
   if( !is_user_connected( g_aBurnData[ pPlayer ][ __Attacker ] ) || entity_get_int( pPlayer, EV_INT_waterlevel ) > 1 || !ExecuteHam(Ham_IsPlayer, id) )
   {
      //reset burning stuff when my attacker disconnects
      //otherwise it will sum up when I'll set on fire
      //for the next time.
      arrayset( g_aBurnData[ pPlayer ], 0, eBurnData );
      return;
   }
    //дальше код функции
}

Добавлено спустя 2 минуты 45 секунд:
Виталий писал(а):
Glaster писал(а):
Виталий писал(а):
ОШИБКА :
L 01/27/2022 - 17:39:53: [AMXX] [0] e6ef7bec720eb78f40d3e275c0e32d86.sma::fw_PlayerPreThink (line 413)
L 01/27/2022 - 17:39:53: [AMXX] Displaying debug trace (plugin "wpn_flamethrower.amxx", version "1.1")
L 01/27/2022 - 17:39:53: [AMXX] Run time error 4: index out of bounds

КАК ИСПРАВИТЬ??????

Так, у нас тут выход за пределы массива. Единственный массив, использущийся в fw_PlayerPreThink - g_aBurnData. В функции первое измерение массив - pPlayer, в коде я не заметил какой-либо проверки на валидность игрока. Можно попробовать изменить функцию так:

Код:
public fw_PlayerPreThink( pPlayer )
{   
   if( !is_user_connected( g_aBurnData[ pPlayer ][ __Attacker ] ) || entity_get_int( pPlayer, EV_INT_waterlevel ) > 1 || !ExecuteHam(Ham_IsPlayer, id) )
   {
      //reset burning stuff when my attacker disconnects
      //otherwise it will sum up when I'll set on fire
      //for the next time.
      arrayset( g_aBurnData[ pPlayer ], 0, eBurnData );
      return;
   }
    //дальше код функции
}
посмотри, эта проверка уже есть в начале, что изменил?


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 47 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB