Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 4 из 4
  1. #1
    Аватар для HarrWe
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.05.2016
    Сообщений
    144
    Репутация:
    11 ±

    Run time error 4: "Array index out of bounds"

    Дратути, сегодня с утра заметил что не робит команда. Сразу вырубил сервер пошёл искать ошибку, но её не нашёл, потом запустил ещё раз сервер, выполнил команду, она опять не заработала, и когда сворачивал игру заметил консоль...
    PHP код:
    [07:09:04] [debugRun time error 4"Array index out of bounds"
    [07:09:04] [debug]  Accessing element at index 232 past array upper bound 46
    [07:09:04] [debugAMX backtrace:
    [
    07:09:04] [debug#0 00037f98 in public cmd_dropgun (playerid=0, ... <1 argument>) at C:\Users\has\Desktop\Сервер\gamemodes\fas.pwn:3239
    [07:09:04] [debug#1 native DC_CMD () from dc_cmd.DLL
    [07:09:04] [debug#2 0000137c in public OnPlayerCommandText (playerid=0, cmdtext[][email protected] "/dropgun") at C:\Users\has\Desktop\Сервер\pawno\include\dc_cmd.inc:62 
    Вот это команда
    3239 строка -
    PHP код:
    new MAX_DROP_GUN+1
    PHP код:
    CMD:dropgun(playerid)
    {
        
    SetPVarInt(playerid,"Floodgun",GetTickCount());new str23[30];
        if(
    GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return 1;
        new 
    GunID GetPlayerWeapon(playerid);
        new 
    GunSlot convert_slot(GunID);
        new 
    GunAmmo GetPlayerAmmo(playerid);
        if(
    GunID && GunAmmo != 0)
        {
            new 
    MAX_DROP_GUN+1;
            for(new 
    0MAX_DROP_GUNa++)
            {
                if(
    gi[a][ObjPos][0] == 0.0)
                 {
                    
    a;
                    break;
                }
            }
            
    ResetPlayerWeaponSlot(playeridGunSlot);
            
    gi[f][ObjData][0] = GunID;
            
    gi[f][ObjData][1] = GunAmmo;
            
    GetPlayerPos(playeridgi[f][ObjPos][0], gi[f][ObjPos][1], gi[f][ObjPos][2]);
            
    gi[f][ObjID] = CreateDynamicObject(gun_info[GunID][0], gi[f][ObjPos][0], gi[f][ObjPos][1], gi[f][ObjPos][2]-193.7120.0120.0);
            
            
    format(str2360"Вы выкинули | {FFFFFF}%s"gun_info[gi[f][ObjData][1]]);
            
    SendClientMessage(playerid, -1str23);
            return 
    true;
        }
        return 
    true;

    В моём старом моде это команда отлично работала.

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Значение MAX_DROP_GUN покажи (как макрос объявлен).
    И инициализацию массива gi (new gi[...][...])
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    29.05.2016
    Сообщений
    144
    Репутация:
    11 ±
    PHP код:
    #define MAX_DROP_GUN     50 
    PHP код:
    enum gInfo
    {
        
    Float:ObjPos[3],
        
    ObjID,
        
    ObjData[2]
    };
    new 
    gi[MAX_DROP_GUN][gInfo]; 



    Всё тему можно закрыть, проблема была в format(str23, 60, "Вы выкинули | %s", gun_info[gi[f][ObjData][1]]);

    Вот тут) gun_info[gi[f][ObjData][1]]

    gun_info[gi[f][ObjData]][1]

    DeimoS спс что пытался помочь)
    Последний раз редактировалось DeimoS; 06.09.2016 в 18:09.

  4. #4
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,656
    Репутация:
    2144 ±
    На будущее, для таких проблем уже есть отдельный урок:
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

 

 

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

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

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

Ваши права

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