Поясните, что за сокращения в коде?

MrBoogidy

Участник
Сообщения
24
Реакции
19
Всем привет. Открыл тут исходник [CSGO] AbNeR Dust2 [EN/RU]
и увидел там такие функции как: props.Length (строка 88) props.Clear() (строки 93, 97)
Откуда они взялись? Как их применять?

Буду благодарен за доходчивые объяснения или линки на мануалы.
Спасибо.
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
Всем привет. Открыл тут исходник [CSGO] AbNeR Dust2 [EN/RU]
и увидел там такие функции как: props.Length (строка 88) props.Clear() (строки 93, 97)
Откуда они взялись? Как их применять?

Буду благодарен за доходчивые объяснения или линки на мануалы.
Спасибо.

Это массивы.

На 9 строчке объявляется:
ArrayList props;

На 31 создаётся:
props = new ArrayList();

На 88 получает длину массива.

На 89 получает индексы пропов.

На 90 проверят индексы пропов.

На 91 удаляет пропы взятые из массива.

А на 93 уже очищает массив.

На 127 вносит индекс пропа в массив.

Все функции массивов можно найти в "include/adt_array.inc".
 
Последнее редактирование:

MrBoogidy

Участник
Сообщения
24
Реакции
19
Спасибо за пояснения, @Someone.
Правильно ли я понял, что:
PHP:
void DeleteAllProps(){

    for(int i = 0;i < props.Length;i++){
        int Ent = props.Get(i);
        if(IsValidEntity(Ent))
            AcceptEntityInput(props.Get(i), "kill");
    }
    props.Clear();
}

то же самое, что и:
PHP:
void DeleteAllProps(){

    for(int i = 0;i < sizeof (props); i++){
        int Ent = props[i];
        if(IsValidEntity(Ent))
            AcceptEntityInput(props[i], "kill");
            props[i] = 0;
    }
}
?
 

White Wolf

🍉
Сообщения
2,382
Реакции
2,187
  • Команда форума
  • #4
@MrBoogidy, второй способ обращения к элементам массива не будет работать в sourcepawn.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #5
Сверху Снизу