NETRAT
offline
Опыт:
83,712Активность: |
Господа, огромная просьба, у кого есть немного свободного времени - нужно создать классификацию стандартных вещей. Система работает, но базы нехватает.
На данный момент существует 15 классов // 0 - Any slot item // 1 - Cap // 2 - Armor // 3 - Cloak,Rod // 4 - Belt // 5 - Boots // 6 - Weapon // 7 - Shield // 8 - Dagger // 9 - Accessory (Orb, Bracer etc.) // 10 - Amulet // 11 - Ring // 12 - Misc // 13 - Charged // 14 - Quest Теоретически можно добавлять свои, но лучше чтобы их было не слишком много. Система поддерживает возможность присвоить одному слоту инвентаря несколько слотов - то есть, скажем в руку могут быть прописаны и 6 и 7 и 8 и 9, в-общем сколько угодно. Поэтому от реализации системы классов меня отделает только недостаток базы. Обьясняю чего нужно сделать - из строки типа call inv100_RegisterItem('belv', 'BI02', "Boots of Quel'Thalas +6", "Provides a bonus to Agility.", 500) нужно сделать строку call inv100_RegisterItem('belv', 'BI02', "Boots of Quel'Thalas +6", "Provides a bonus to Agility.", 500, 5) То есть добавить в функцию значение класса вещи. Если это ботинки, то число, соответствующее ботинкам, если меч - то соответствующее мечу число. Некоторые числа я уже сам добавил. Это реально очень нужно, но я знаю, что если я возьмусь эту штуку сделать то я вообще забуду что я тут в скриптах писал и как все найденные баги исправлять, а их откопалось немало, а еще немного приболел, так, вообще чего доброго коньки откину, поэтому ПОЖАЛУЙСТА сделайте эту штуку и прилепите к этой теме. Классы можно свои добавлять - работа творческая Баг с дропом айтема - это был не совсем баг(это я немного глюканул и что-то не то сделал...). FIXED RPG Diablo-style ИНВЕНТАРЬ БУДЕТ. И БУДЕТ РАБОТАТЬ! Тут вопросов о возможности реализации уже нет - оно реально, возможно, осуществимо. Мне нужна лишь некоторая помошь и тестирование. Отредактировано NETRAT, 04.10.2005 в 01:28. |
04.10.2005, 01:17 | #61
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Main Issue Инвентарь сохраняется со всеми вещами, но при загрузке мы получаем вещи у нас под ногами, а скрытый инв забит указателями на вещи из основного. Сохранение работает, но пока некорректно... Я над этим работаю
NETRAT добавил: + 5. После использования многозарядных вещей из EMI, вещ помещается в доп. инв. + 6. Drop Item работает, но может не заменить иконку на пустую, а на каку-нить соседнюю |
04.10.2005, 09:15 | #62
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
zibada
offline
Опыт: отключен
|
NETRAT, может, классы задавать не числом, а строкой?
например: call inv100_RegisterItem('belv', 'BI02', "Boots of Quel'Thalas +6", "Provides a bonus to Agility.", 500, "boots") имхо, так понятнее.. |
04.10.2005, 09:55 | #63
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
ну да, понятней. Жаль что не поддерживаются define
NETRAT добавил: 1. Использование вещей 2. Дроп вещей 3. Сохранение 4. Камера 5. Кнопка 5/1 6. Кнопка Equip/Unequip NETRAT добавил: Вместо цифр можно писать константы // 0 - 'Any ' - Any slot item // 1 - 'Helm' - Cap // 2 - 'Armr' - Armor // 3 - 'Rod ' - Cloak,Rod // 4 - 'Belt' - Belt // 5 - 'Bts ' - Boots // 6 - 'Wpn ' - Weapon // 7 - 'Shld' - Shield // 8 - 'Dggr' - Dagger // 9 - 'Acss' - Accessory (Orb, Bracer etc.) // 10 - 'Amlt' - Amulet // 11 - 'Ring' - Ring // 12 - 'Misc' - Misc // 13 - 'Chrg' - Charged // 14 - 'Qst ' - Quest Однако пробелы не забывать |
04.10.2005, 15:45 | #64
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
VolkPK
offline
Опыт:
4,877Активность: |
Яб посидел, пописал, но у меня варик русский, а тут названия английские.... |
04.10.2005, 16:20 | #65
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
VolkPK фиглиш не изучал? Там по названию понятно что за айтем
|
04.10.2005, 17:46 | #66
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
могу сделать, но нужно понять какие предметы у тебя будут относится к класам 8,12 и к какому классу отнеси анк реинкорнации к примеру... |
04.10.2005, 17:51 | #67
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
ZlaYa1000 мне просто нужна нормальная классификация вещей по ИД. Причем ИД неограничено - то есть можно хоть каждую вещь прописывать свой ИД. Это только версия классификации - если есть своя, пиши, я так и сделаю
NETRAT добавил: Анх - аксессоря, Даггеры - фик его знает, а амулеты - не тратимые амулеты. Тратимые - в charged |
04.10.2005, 18:39 | #68
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
я не про 10, а про 12... это миск...
и кстати как ты себе представляешь предмет типа any сейчас займусь ZlaYa1000 добавил: Э класы всё таки числом или строкой задавать? |
04.10.2005, 18:51 | #69
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
ZlaYa1000 как угодно. Это не строка а символ в таких апострофах 'ABCD' - это вар читает как число (видимо по кодам символов), главное чтобы четыре буквы было. Пиши как тебе удобней.
К классу misc я начал относить все флаги... NETRAT добавил: item класса any - это типа неклассифицированный. По дефаулту ставится - если поле не задано. То есть такой айтем подойдет в любой слот. Это скорее, системный(нестандартный) классификатор |
04.10.2005, 18:59 | #70
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
Фух усё, сам пока не проерял
если глюки будут исправишь. есть предложения: 1) объединить категории миск и квестовых вещей 2) предлагаю сделать кнопку "Упорядочить" для пассивного инвентаря. И разделить категорию chrg на несколько категорий бутылки, свитки посохи, другое и что-бы при нажатии этой кнопки предметы упорядочивались по типам в пассивном инвентаре. Задача впринципе на умение работы с массивами=) ZlaYa1000 добавил: к даггерам отнёс все перчатки и браслеты, надо будет переименовать категорию |
04.10.2005, 21:05 | #71
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
ZlaYa1000
1) гляну сколько их там, вполне возможно 2) Тогда следует вводить какие-нить (цвеиа фона) под иконки чтобы классы слотов тоже различались Бутылки Свитки Посохи Если их там больше 5 то можно Тут проблема одна - прописать в каждый слот идентификаторы соотв. ему типов вещей. Это все прописывается в кеш. Так вот количество таких ид для каждого слота ограничено и когда идет проверка совместимости, пробегаются все ид. Поэтому тут ограничения могут сделать только лаги. Проверку сделает скрипт =) |
04.10.2005, 21:21 | #72
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
я в квестовые писал только предметы без смысла, т.е. абил, а в миске только флажки |
04.10.2005, 21:25 | #73
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Ох, хорошо пошло! Спасибо, Тыща, я подредактировал и получил такую классификацию
Код:
Коды классов нафик убрал - ибо гораздо удобнее и легче вместо них использовать четырехсимвольные константы типа 'abcd'. Спасибо Димону, что натолкнул мя на эту идею. Баги Те же, только исправил move item Дополнения Поддержка классов Подсветка доступных слотов для айтема Будет Подбор айтемов только в определенный слот Кнопка сортировки?! NETRAT добавил: Там правда неплохо бы еще со слотами побаловаться - чтобы лучше подобрать классы айтемов и слоты инвентаря под эти классы. Ну да с этой фичей будем баловаться когда будет Желтая версия (теоретически седня-завтра) Отредактировано NETRAT, 05.10.2005 в 03:54. |
05.10.2005, 03:49 | #74
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Желтая версия
Исправления: 1. Вроде бы все команды кроме Use нормально отрабатвают 2. Камеру исправил. Здесь может возникнуть глюк только если героев придерживая Shift переключаешь - так как триггер выключения инва стоит на событые Disselect юнита. 3. Item classification system (ICS?!) Не готово ICS: 1. Нихрена не получается добавить в ICS такую фичу как позиционирование вещи при подборе - триггер на событие pickup просто зацикливается функциями additem (игра просто вылетает, пробовал сохранять подбираемые вещи в кэш и потом игнорить повторяющиеся при подборе, почему-то не получилось) 2. Кнопка сортировки?! EMI: 1. Сохранение 2. Кнопка 5/1 3. Кнопка Equip/Unequip Possible bugs: 1. Drop item 2. Use item ATTACH: Кто скачал файл inv100_EMI_yellow.w3x Всего скачиваний: 16 Ник cHAm ZlaYa1000 VolkPK ILLYA Отредактировано NETRAT, 10.10.2005 в 17:34. |
05.10.2005, 11:56 | #75
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Ну как она? Работает?! |
05.10.2005, 19:45 | #76
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
NETRAT честно криво, если можно пометку слотов доступных сделать постоянной при выделении предмета, а в остальном незнаю, есть какой то дискомфорт в использовании инвентаря, только не пойму какой... кнопку использовать почини, а то она творит страшные вещи
|
05.10.2005, 23:26 | #77
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Sux! ICS 2: Сортирует не до конца - понять не могу - обычный бубльгум, но некоторые вещи вообще не попадают. Не вьезжаю чзх EMI 1: С этим сохранением интересно получается - если инв открываешь, то все нормально работает. А вот если нет - тут нужно куда-то функцию занесения в кэеш MI прописать, не могу понять только куда... Планирую очередной resize/move панелек инвентаря |
06.10.2005, 03:47 | #78
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Вот он, эффект сортировки, и перестановка панелей. Может Тоник иконки может нарисовать? У мя то они ужасть, да и старые не катят
Есть в этом долбаном скриптовом языке такая хрень - похоже, что когда функция превышает лимит (времени, операции, памяти или еще чего), то она прерывается. Вот у мя такие траблы с циклами были - напрямую нифига не получается - сортировку смог всунуть в функцию, а прорисовку пришлось делать как Димон - то есть отдельным триггером по таймеру NETRAT добавил: Димон, как можно сделать чтобы перед сохранением, скажем, функция инициализации inv100_Init запустилась у всех юнитов - ведь некоторые вещи могут быть непрокэшены - то есть когда герой ни разу не открывал инвентарь, то с ним будут проблемы |
06.10.2005, 17:07 | #79
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
KENDO
offline
Опыт:
5,817Активность: |
оффтоп: нетрат по моймк помешался на цветах... серый, красный..а тут еще и желтый.. судя по скринам инв получился нормальным, но протестить самолично пока к сож не могу.. |
06.10.2005, 20:59 | #80
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|