Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Инвентарь (http://www.flasher.ru/forum/showthread.php?t=118878)

CROL 05.12.2008 23:49

Инвентарь
 
собственно думал, думал...видимо плохо думал, но так и не дошло как сделать инвентарь... Мне необходимо реализовать следующее:
при перетаскивании предметов в инвентарь они должны ложиться туда не там где кнопку мыши отпустили, а слева-направо, сверху-вниз.

Для этого нужно отслеживать есть ли предметы в инвентаре, если есть - искать место для предмета который хотят перетащить, иначе пихать в левый верхний угол инвентаря...

Проблема с проверкой что есть в инвентаре и с поиском места... чем нужно пользоваться чтобы делать это?

Wolsh 06.12.2008 00:18

Всё же зависит от того, как именно у Вас реализован инвентарь)
Допустим, есть массив объектов, а может быть это XML или вообще простой Обжект.
Но допустим массив - при отпускании объекта над полем клипа инвентаря Вы добавили push'ем объект в этот массив и перерисовали клип инвентаря в соответствии с новым массивом. Или у Вас что-то конкретное не получается?

CROL 07.12.2008 22:20

есть ХМЛ, в нем указаны параметры объектов и откуда грузится изображение самих объектов...

"при отпускании объекта над полем клипа инвентаря Вы добавили push'ем объект в этот массив и перерисовали клип инвентаря в соответствии с новым массивом" так наверно и сделаю, но вот не разобрался с математической частью - как отыскать объекту который хотят сунуть в инвентарь свободное место?

Брать размеры всех вещей которые есть в инвентаре.. а дальше что?

Wolsh 07.12.2008 22:35

Определение места должно быть в функции, отрисовывающей содержание массива!
Объект добавили в массив, и ПОЛНОСТЬЮ по-новой перерисовали клип инвентаря, соответственно объект займет последнее свободное место.
Проще всего если для иконки каждого объекта предусмотрена одна ячейка с известным размером. Но если и нет, ничего сложного. При аттаче иконок суммируете их ширину и проверяете оставшееся место. Вот при разной высоте иконок будут сложности. Лучше этого избежать.
pS : про XML я говорил не как про отдельный файл, а как про объект XML в памяти флэшки во время выполнения - это тоже способ хранить список, в каком-то смысле аналог массива.

CROL 07.12.2008 23:20

вот как раз из-за того что разная высота у иконок и возникает проблема =(

"Проще всего если для иконки каждого объекта предусмотрена одна ячейка с известным размером" а вот это исключено...инвентарь представляет из себя просто некое пространство

Wolsh 08.12.2008 01:56

Вложений: 1
Однако Вы же не думаете, что можно, не сжигая процессор, раскидать по этому пространству скажем, 50 клипов совершенно разного размера, заполнив его максимально плотным (оптимальным) образом? Я, честно сказать, сразу даже не соображу как бы так сделать)))
Но вот так могу... Высота каждой строки будет такой, чтобы влезла самая высокая иконка в этой строке...

CROL 08.12.2008 14:55

Спасибо, Wolsh, не совсем то что нужно, но тоже сойдёт :))


Часовой пояс GMT +4, время: 13:34.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.