Другие языки программирования и технологии
Как правильно называется штука в Pawn записываемая в таком виде: enum Array[][n] { N }. Впервые вижу такую конструкцию.
Массивы объявляются через ключевое слово new, а не enum
Эдвард-Эдуардович Банокин
Пасиба, поправил)
На самом деле это очень старая функция
Эдвард-Эдуардович Банокин
На самом деле просто над данным модом работал другой скриптер и просто ошибся тегом, и вместо new он поставил enum. Теперь то всё стало на свои места. Не правильный тут код вообще был.
Эдвард-Эдуардович Банокин
Глеб Овдеенко, enum не такой формат записи имеет.
Эдвард-Эдуардович Банокин
Тег: new arr[] в Pawn - - это как char arr[] в С/С++.
Эдвард-Эдуардович Банокин
Массив символов.
Эдвард-Эдуардович Банокин
Точнее Си-строка.
Эдвард-Эдуардович Банокин
Есть небольшие особенности и отличия Pawn от С/С++, например что в последних enum идёт как перечисление порядкового номера начиная с 0, когда в Pawn можно в ней хранить данные, как если бы это была struct или class в С/С++.
Эдвард-Эдуардович Банокин
Тогда не понимаю эту конструкцию вообще с enum'ом, именно 128 строка, сложно её понять..)
enum - структура
new объявление переменной/массива.
new объявление переменной/массива.
Эдвард-Эдуардович Банокин
да, так правильней)
enum - это структура.
Это что-то типо группы, в которую можно записывать отдельные предметы, например: костюмы на разные части тела игрока.
enum _:PLAYER_COSTUMES
{
szCostumeName_Head[32], // голова
szCostumeName_Back[32], // спина
szCostumeName_Legs[32] // ноги,
iEntity, // id entity костюма
bool:b_Hide // Надет или не надет костюм?
};
Ну это как пример, далее можно всё это дело выгрузить в динамичный массив :Array или :Trie и дальше уже с этим работать..
Также enum ведёт автоматический подсчёт:
enum
{
test1,
test2,
test3
};
В данном случае test1 = 0, test2 = 1, test3 = 2
enum
{
test1 = -2,
test2,
test3
};
В данном случае test1 = -2, test2 = -1, test3 = 0
enum (+=50)
{
test1 = 0,
test2,
test3
};
В данном случае test1 = 0, test2 = 50, test3 = 100
Также если enum как-нибудь обозвать, то можно узнать кол-во предметов в нём:
enum HelloWorld
{
test1,
test2,
test3,
test4
};
new MyNewArray[HelloWorld];
В данном случае в MyNewArray 4 ячейки, т.е. MyNewArray[HelloWorld] эквивалентно MyNewArray[4], т.к. в enum HelloWorld 4 предмета..
Также легко работать с бит суммой:
enum (<<=1)
{
BitSum1 = 1,
BitSum2,
BitSum3,
BitSum4
};
BitSum1 = 1 или же (1<<0)
BitSum2 = 2 или же (1<<1)
BitSum3 = 4 или же (1<<2)
BitSum4 = 8 или же (1<<3)
На твоём скрине, очевидно, ошибка на 128 строке. Там должно быть new, а не enum, т.к. там двумерный массив.
Это что-то типо группы, в которую можно записывать отдельные предметы, например: костюмы на разные части тела игрока.
enum _:PLAYER_COSTUMES
{
szCostumeName_Head[32], // голова
szCostumeName_Back[32], // спина
szCostumeName_Legs[32] // ноги,
iEntity, // id entity костюма
bool:b_Hide // Надет или не надет костюм?
};
Ну это как пример, далее можно всё это дело выгрузить в динамичный массив :Array или :Trie и дальше уже с этим работать..
Также enum ведёт автоматический подсчёт:
enum
{
test1,
test2,
test3
};
В данном случае test1 = 0, test2 = 1, test3 = 2
enum
{
test1 = -2,
test2,
test3
};
В данном случае test1 = -2, test2 = -1, test3 = 0
enum (+=50)
{
test1 = 0,
test2,
test3
};
В данном случае test1 = 0, test2 = 50, test3 = 100
Также если enum как-нибудь обозвать, то можно узнать кол-во предметов в нём:
enum HelloWorld
{
test1,
test2,
test3,
test4
};
new MyNewArray[HelloWorld];
В данном случае в MyNewArray 4 ячейки, т.е. MyNewArray[HelloWorld] эквивалентно MyNewArray[4], т.к. в enum HelloWorld 4 предмета..
Также легко работать с бит суммой:
enum (<<=1)
{
BitSum1 = 1,
BitSum2,
BitSum3,
BitSum4
};
BitSum1 = 1 или же (1<<0)
BitSum2 = 2 или же (1<<1)
BitSum3 = 4 или же (1<<2)
BitSum4 = 8 или же (1<<3)
На твоём скрине, очевидно, ошибка на 128 строке. Там должно быть new, а не enum, т.к. там двумерный массив.
Похожие вопросы
- Помогите составить блок схему. Данны целые числа n, k (n>=k>=0). Вычислить n(n-1)*(n-2)... (n-k-1)/k!
- Заполнить массив против часовой стрелки начиная с нижнего правого угла размер массива N*N и допустить возможность измене
- Java: Вычислить приблеженое значение бесконечной сумы с епс=0.00001. ((-1)в степени(n+1) *x в степени n) /n +-λ
- Почему я на код С++ (или C#) смотрю так, как будто впервые вижу программирование?
- Дан линейный массив чисел N. N вводит пользователь. Вывести все простые числа массива.
- Дано натуральное А (максимум 1000 цифр) . Найти такое минимальное натуральное N, что N^N будет делиться на А без остатка.
- Что означает выражение. И так что означает выражение n=n+1 . Растолкуйте . Буду оч благодарен за ответ .
- Как правильно называется эта профессия?
- Дан прямоугольный целочисленный массив размером N*N. Определить является ли данный массив магическим квадратом, т.е. сум
- Если в заданной матрице A(N, N) есть хотя бы один элемент, боль-ший ста, то элементы обеих диагоналей замените нулям