ИнформАрхив QSP
Использование массивов
Вкратце: в QSP есть возможность использовать массивы. Значит вместо одного значения одной переменной x = 10
, можно сохранить несколько значение под одним именем, указывая в скобках после имени переменной код или индекс очередного значения вот так:
x[1] = 12
x[2] = 9
Это удобно тем, что вместо прямого указания номера индекса мы можем подставить значение какой-нибудь переменной. Так, мы можем, например, произвести вывод всех значений массива, используя всего лишь один цикл:
*pl x[i]
end
В качестве индекса или кода может использоваться и строка:
сила['рак'] = 3
$я = 'щука'
сила[$я] = 2
Значок "$"
показывает что переменная строковая.
Начиная с версии плеера 5.8.0 можно создавать многомерные массивы без использования строковых индексов:
y = 2
$ячейка[x,y] = "3х палубный"
$ячейка[(x+1),y] = "3х палубный"
$ячейка[(x+2),y] = "3х палубный"
Даже если названия (имена) динамические, и их количество может отличаться в разных случаях, то для хранения информации об объекте игры, или персонаже, также можно использовать массив. Например, для случая с расстояниями до врагов:
$имя_персонажа[0]=$я
$имя_персонажа[1]="Иванов"
$имя_персонажа[2]="Петров"
$имя_персонажа[3]="Сидоров"
расстояние[$я,$имя_персонажа[1]] = 3
расстояние[$я,$имя_персонажа[2]] = 4
расстояние[$я,$имя_персонажа[3]] = 5
В этом примере, зная имена персонажей можно получать и изменять расстояния между ними.
Также вместо имен можно использовать и их порядковые номера:
расстояние2[2,3] = 7
расстояние2[1,4] = 8
В этом примере у нас массив 2-х мерный. А измерений может быть и больше.
Автор: Ntropy
Отредактировал для соответствия версии библиотеке 5.8.0: Aleks Versus
26.Июл.10 12:08:22
Оригинал в теме: Подробности использования массивов, все вопросы сюда