Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для m1n1vv
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±

    Проблема с перехватом OnPlayerDeath

    При самоубийстве появляется такая ошибка:
    PHP код:
    [debugRun time error 4"Array index out of bounds"
    [debug]  Accessing element at index 65535 past array upper bound 29
    [debugAMX backtrace:
    [
    debug#0 0002a630 in public hud_3d__OnPlayerDeath (playerid=0, killerid=65535, reason=54) at ...\gamemodes\sfcr.pwn:212
    [debug#1 0002525c in public stores_OnPlayerDeath (playerid=0, killerid=65535, reason=54) at ../R1/hud_3d.inc:94
    [debug#2 0001b808 in public sfkick_OnPlayerDeath (playerid=0, killerid=65535, reason=54) at ../R1/stores.inc:424
    [debug#3 000167f0 in public bm_OnPlayerDeath (playerid=0, killerid=65535, reason=54) at ../R1/sfkick.inc:109
    [debug#4 00015d68 in public OnPlayerDeath (playerid=0, killerid=65535, reason=54) at ../R1/money.inc:101 
    Везде перехват по 1 шаблону, только разные наименования:
    PHP код:
    public OnPlayerDeath(playeridkilleridreason)
    {
        
    //код
    #if defined hud_3d__OnPlayerDeath
        
    hud_3d__OnPlayerDeath(playeridkilleridreason);
    #endif
        
    return 1;
    }
    #if defined _ALS_OnPlayerDeath
        #undef OnPlayerDeath
    #else
        #define _ALS_OnPlayerDeath
    #endif
    #define  OnPlayerDeath hud_3d__OnPlayerDeath
    #if defined hud_3d__OnPlayerDeath
    forward hud_3d__OnPlayerDeath(playeridkilleridreason);
    #endif 

  2. #2
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    А так если?
    PHP код:
    public OnPlayerDeath(playeridkilleridreason

        
    //код 
    #if defined hud_3d__OnPlayerDeath 
        
    hud_3d__OnPlayerDeath(playeridkilleridreason); 
    #endif 
        
    return 1

    #if defined _ALS_OnPlayerDeath 
        #undef OnPlayerDeath 
    #else 
        #define _ALS_OnPlayerDeath 
    #endif

    #if defined hud_3d__OnPlayerDeath 
    forward hud_3d__OnPlayerDeath(playeridkilleridreason); 
    #endif

    #define  OnPlayerDeath hud_3d__OnPlayerDeath 
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  3. #3
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    А ты уверен, что именно с хуком? Тебе же пишет, что выход за пределы массива (такое чаще бывает, когда проверки валидности killerid нет).
    Покажи строчки 212, 94, 424, 109, 101. Вероятнее всего проблема на первой.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  4. #4
    Аватар для m1n1vv
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±
    PHP код:
    kill_detected[killerid] += 30//212
    return 1//94, 424, 109, 101 
    PHP код:
    if (killerid != INVALID_PLAYER_ID
    Исправит эту ошибку?
    Последний раз редактировалось m1n1vv; 22.10.2016 в 21:07.

  5. #5
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    Цитата Сообщение от m1n1vv Посмотреть сообщение
    PHP код:
    kill_detected[killerid] += 30//212
    return 1//94, 424, 109, 101 
    PHP код:
    if (killerid != INVALID_PLAYER_ID
    Исправит эту ошибку?
    Да. И при любом обращении к массивам с индексом killerid всегда нужно проверять, стоит ли этот код под соответствующей проверкой.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

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