Работа с инвентарем

Работа с инвентарем

Здравствуйте.
Пробую написать игру, но чем дальше пишу, тем больше усложняю себе процесс. Как правило, все решаю средствами "хэлпа" или форума, но в данный момент не могу найти простого и изящного решения одной задачи, а именно: мне надо сделать проверку пустой рюкзак или в нем есть вещи, затем если есть вещи, необходимо получить список вещей в рюкзаке, чтобы потом вещи вернуть обратно. Например, при переходе в одну локацию выдать сообщение (при наличии вещей), что вход с локацию с вещами запрещен, и предложить убрать вещи в сейф/сундук, а после возвращения вещи можно забрать обратно. Есть ли у кого-нибудь соображения по данной задаче?

Rioxel
useravatar
Offline
2 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Работа с инвентарем

Код:

! Проверяем, есть ли предметы

IF COUNTOBJ > 0:
    GOTO 'Выгрузить вещи'
ELSE
    GOTO 'Здание'
END

! Выгружаем вещи
i = 1
SAVED_OBJS_COUNT = COUNTOBJ
:loop
IF i <= SAVED_OBJS_COUNT:
    $SAVED_OBJS[i] = $GETOBJ(i)
    i = i + 1
    JUMP 'loop'
END
KILLOBJ

! Возвращаем вещи
i = 1
:loop2
IF i <= SAVED_OBJS_COUNT:
    ADDOBJ $SAVED_OBJS[i]
    i = i + 1
    JUMP 'loop2'
END
SAVED_OBJS_COUNT = 0

Nex
useravatar
Offline
4277 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Работа с инвентарем

Видимо, это я так "хорошо" искал в "хэлпе". Нашел все эти команды в "хэлпе", разбираюсь. Ваше исполнение данной процедуры очень изящно. Спасибо Вам за помощь.
Полностью разобрался с написанным Вами алгоритмом, все понятно. Еще раз спасибо.

Изменено: rioxel
17.Апр.12 16:55:38
Rioxel
useravatar
Offline
2 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
970
Всего опросов:
14
Всего сообщений:
16790545
Сообщений на этой неделе:
10
Пользователи форума:
 
Всего пользователей:
2346
Последним зарегистрировался:
Rizrael