Здесь показаны различия между двумя версиями данной страницы.
| Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
|
help:predmety_inventar [2013/10/10 09:16] newsash |
— (текущий) | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | =====Предметы (инвентарь)===== | ||
| - | |||
| - | |||
| - | |||
| - | SHOWOBJS [#выражение] - если значение выражения отлично от 0, то показывает список предметов, иначе скрывает его. | ||
| - | |||
| - | ADDOBJ [$название],[$путь к файлу изображения] или ADD OBJ [$название],[$путь к файлу изображения] - добавление предмета с заданным изображением в рюкзак. | ||
| - | |||
| - | К предметам добавляется новый с названием [$название] и изображением [$путь к файлу изображения]. | ||
| - | |||
| - | Параметр [$путь к файлу изображения] может отсутствовать, при этом предмет добавится без изображения. | ||
| - | |||
| - | Обратите внимание - для использования одинаковых предметов инвентаря, например денег, патронов и т.п., лучше использовать дополнительную переменную, обозначающую количество этих предметов, чтобы не загромождать инвентарь списком из 137 предметов Рубль / Патрон. Для хранения числа предметов можно использовать массивы, индексируемые через строки: | ||
| - | |||
| - | |||
| - | |||
| - | OBJECTS['деньги'] = 12 | ||
| - | |||
| - | OBJECTS['патроны'] = 137 | ||
| - | |||
| - | 'Количество: <<OBJECTS[$getobj(countobj)]>>' | ||
| - | |||
| - | |||
| - | |||
| - | Также см. локацию-обработчик добавления предмета. | ||
| - | |||
| - | |||
| - | |||
| - | DELOBJ [$название] или DEL OBJ [$название] - удаление предмета из рюкзака, если таковой имеется. Также см. локацию-обработчик удаления предмета. | ||
| - | |||
| - | |||
| - | |||
| - | KILLOBJ [#выражение] - удаление предмета, расположенного в заданной позиции. Если параметр [#выражение] не указан, то очистка рюкзака. | ||
| - | |||
| - | Индексация предметов рюкзака ведётся с 1. Также см. локацию-обработчик удаления предмета. | ||
| - | |||
| - | KILLALL - эквивалентен конструкции "KILLVAR & KILLOBJ". | ||
| - | |||
| - | COUNTOBJ - возвращает количество предметов в рюкзаке. | ||
| - | |||
| - | GETOBJ([#выражение]) - возвращает название предмета в рюкзаке, расположенного в заданной позиции. Индексация предметов рюкзака ведётся с 1. | ||
| - | |||
| - | Если предмета с заданным индексом не существует, возвращается пустая строка (''). | ||
| - | |||
| - | |||
| - | GETOBJ(1) - вернёт название первого предмета в рюкзаке | ||
| - | |||
| - | GETOBJ(COUNTOBJ) - вернёт название последнего добавленного предмета | ||
| - | |||
| - | |||
| - | |||
| - | Код, подсчитывающий в массиве OBJECTS число предметов с одинаковым названием: | ||
| - | |||
| - | |||
| - | |||
| - | i = 1 | ||
| - | |||
| - | :loop | ||
| - | |||
| - | IF i <= COUNTOBJ: | ||
| - | |||
| - | OBJECTS[$GETOBJ(i)] = OBJECTS[$GETOBJ(i)] + 1 | ||
| - | |||
| - | i = i + 1 | ||
| - | |||
| - | JUMP 'loop' | ||
| - | |||
| - | END | ||