RU
Удалить пункт меню
Nex
Moderator
•
24.06.2013 03:24
•
0 comments
•
5488 views
Prophet:
А как удалить пункт? Только пункт, не все меню. Просто мне нужно сделать так: например, если ГГ изучил книгу, пункт “Изучил книгу” в меню книги удаляется навсегда.
Prophet,
для обычного меню есть несколько способов.
Первый самый простой: удалить элемент массива, с помощью которого вызывается меню.
Пример:
! Удаляем четвёртый пункт меню (нумерация ведётся с нуля)
KILLVAR '$Моё_крутое_меню', 3
Второй, более универсальный и надёжный, но посложнее - завести процедуру для меню, в которой заполнять его в зависимости от переменных. В отличие от первого он не зависит от расположения пунктов меню.
Пример:
! Локация, где вызываем меню
'<a href="EXEC:GS ''Вызов_меню''">...</a>'
! Служебная локация "Вызов_меню"
KILLVAR '$Моё_крутое_меню'
$Моё_крутое_меню[] = 'Осмотреть книгу:осмотреть_книгу'
$Моё_крутое_меню[] = 'Выбросить книгу:выбросить_книгу'
IF книга_изучена = 0:
$Моё_крутое_меню[] = 'Изучить книгу:изучить_книгу'
END
$Моё_крутое_меню[] = 'Сжечь книгу:сжечь_книгу'
MENU '$Моё_крутое_меню'