Форум » » вопрос по инвентарю » Ответить

вопрос по инвентарю

Domik12: возник вопрос по инвентарю: есть однотипные предметы. Надо их складывать в рюкзак. Все замечательно складывается и суммируется к переменной количества, не создавая много однотипных предметов в рюказке (через проверку наличие предмета и добавление еще одного к имеющимся). Только вот хотелось бы отбразить количество предметов, например монет, в рюкзаке. Т.е. хочется чтобы в окошке инвентаря было видно: "монеты 3" . Или мне хочется невозможного и можно только через команду посмотреть инвентарь вывести количество предметов каждого вида? Посмотрел как реализованы пайки в Черном замке - но там просто идет счетчик и убирание/добавление (убирается из рюкзака "паек(количество)" и создается "паек(количество-1)" ) А по другому не реализовать?

Ответов - 38, стр: 1 2 All

Byte: Domik12, количество можно отображать например в доп. описании (сразу, без кликов на предметы).

Domik12: Byte , это один из вариантов или единственный? :)

Byte: Domik12, вариантов много - например, динамически обновлять список предметов с указанием количества.


Domik12: Byte а как в окошке инвентаря вывести после названия предмета его количество? добавлять предмет вида деньги(5) и после увеличения/уменьшения - удалять объект и дабавлять новый? или как то еще? просто возможно ли предмет в инвентаре сделать состоящим из двух величин - название и количество, и чтобы оба параметра в инвентаре были сразу видны?

Byte: Domik12, только вручную разделять. Можно вести отдельный список с предметами и их количеством. Обновлять отображаемый список на $ONOBJADD/$ONOBJDEL.

Domik12: Byte спасибо, теперь понятно.

Domik12: а еще вопрос - можно ли делать динамическое меню для предметов? вида: Menu[0]='перейти к лок1:2-0' if loc3=1: $Menu[1]='перейти к лок2:3-0' end If loc4=1: $Menu[2]='перейти к лок3:4-0' end где loc3 и loc4 - переменные, получающие свои значения в разных локациях при разных событиях, т.е. чтобы на разных локациях при разных значениях переменных было разное меню у одного и того же предмета? просто попробовал реализовать - но меню остается постоянным, хотя переменные значение менют на нужные. В чем косяк? Может в счетчике надо еще что то писать?

Byte: Элементы меню должны друг за другом идти - если есть пропущенные, то меню "оборвётся" на элементе со значением "пусто". Вариант - создать меню по текстовым индексам :) [pre2] $Menu['0']='перейти к лок1:2-0' if loc3=1: $Menu['1']='перейти к лок2:3-0' end If loc4=1: $Menu['2']='перейти к лок3:4-0' end[/pre2] Можно через доп. переменную: [pre2] $Menu[0]='перейти к лок1:2-0' n=1 if loc3=1: $Menu[n]='перейти к лок2:3-0' n=n+1 end If loc4=1: $Menu[n]='перейти к лок3:4-0' n=n+1 end[/pre2]

Domik12: Byte спасибо, работает! только не понял, почему пункты меню с индексами [1] [2] не работали, а текстовые ['1'] ['2'] начали работать. Он по строчкам там считает пункты меню чтоли? Т.е. на след. строке обязательно после $Menu[1] обязательно должно быть $Menu[2], да?

Byte: Строковые индексы работают по-другому - их значение не вычисляется (можно было написать не '1','2','3', а например 'z','b','u').

Domik12: понятно. спасибо. а зачем тогда вообще в строковых индекасах эти '1','2','3' или 'z','b','u' ? если нумерация роли не играет...

Byte: В твоём случае важно, чтобы эти строки были разными :)

Domik12: Byte, у меня опять вопрос: использую код $Menu['0']='перейти к лок1:2-0' if loc3=1: $Menu['1']='перейти к лок2:3-0' end If loc4=1: $Menu['2']='перейти к лок3:4-0' end при переходе на локакацию 2-0 идет присвоение переменной loc3=1 но если на этой же локации попытаться опять открыть меню, то пункт там только один - первый. так же при попадании в локацию 3-0 - там есть присвоение loc4=1, но опять пункт меню только один. Пункты в меню добавляются, только если из локации, где произошло присвоение переменной идет переход в начальную локацию, где описывается принцип работы меню. Я подумал, что просто при заходе в локацию с описанием создается меню с условиями, которые там присутствуют. И чтобы создалось новое меню - нужно опять зайти на туже локацию с описанием меню . Я прав? И если да - то можно ли реализовать изменяющееся меню без возврата на локацию с описанием? может как то через GOSUB или как то по доугому?

Byte: Domik12, чтобы сформировалось новое меню, интерпретатор должен выполнить этот же код. Да, можно создать отдельную локацию с описанием меню: [pre2] $Menu['0']='перейти к лок1:2-0' if loc3=1: $Menu['1']='перейти к лок2:3-0' end If loc4=1: $Menu['2']='перейти к лок3:4-0' end menu '$Menu'[/pre2] и когда нужно показать меню, делать просто gs 'имя локации с меню'

Domik12: Byte, спасибо, работает! Я вас вообще не сильно отвлекаю со своими вопросами по мелочам?

трибуше: люди плиз помогите .... Сделал я меню для вищей по бразцу(нажимаеш на предмет и там поевляется 3 клавишу использовать,осмотреть выкинуть) так вот плиз скажите как сделать так чтобы когда нажимаеш "использовать"(где либо)поивилась новая лакация или новый предмет в инвентаре А?если можно то поподробнее обьесните пожалуста(не смейтесь если вапрос глупый просто я навечек)

Byte: трибуше не нужно постить в несколько тем. когда прописываешь пункты меню, строчка разделена двоеточиями. н-р "текст:локация". так вот на локации "локация" нужно написать либо gt 'куда перейти' (для смены локации), либо addobj 'имя предмета' (чтобы добавить предмет).

трибуше: спосибо но ты не ответил на мой вопрос как имено при нажатии клавижи испоьзовать....(или чевото я непонял..) ты не могбы показать на примери....

Byte: трибуше а можно проверять текст поста хотя бы в ворде? [pre2] #test $menu[0]='добавить предмет:object' $menu[1]='перейти:go' menu 'menu' -- #loc 'новая локация' -- #object addobj 'предмет' -- #go gt 'loc' --[/pre2]

трибуше: все прописал но ошибок повыползала .......... вот залил плиз посмотри в чем ошибка хочу чтобы ной предмет поивился .... http://depositfiles.com/files/34865gr1s



полная версия страницы