Это не кусок кода, но способ использования
ArrayFindString для массивов. Натива задумывалась для динамических массивов содержащих только строки, но его можно использовать для поиска строки в динамических массивах содержащих массивы. Масло масленое, лучше покажу на примере.
Предположим у нас есть структура нашего массива, в котором три свойства — целочисленное, целочисленное и какая-то строка.
- Код: Выделить всё
enum Props {
TestProp,
TestProp1,
TestProp2[32]
};
И есть динамический массив.
- Код: Выделить всё
new Array: g_pItems = ArrayCreate(Props);
В котором, опять же предположим, есть куча записей и нам нужно найти одну запись по его свойству
TestProp2. В том виде структуры (перечисления, если быть точнее, но давайте представим, что Pawn нормальный язык и будем называть это структурой), который есть у нас сейчас, натива
ArrayFindString всегда будет возвращать -1, даже если искомая строка в одной из записей есть.
Но если мы поставим наше свойство
TestProp2 выше всех остальных:
- Код: Выделить всё
enum Props {
TestProp2[32],
TestProp,
TestProp1
};
то поиск будет работать.