Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
help:predmety_inventar [2013/10/18 20:56] newsash |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | =====Предметы (инвентарь)===== | ||
- | 6) В названиях действий и предметов не важен регистр букв, т.е. "ДеньГи" и "деньги" - одна и та же локация. | ||
- | |||
- | 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 |