WinSTOP
Активный участник
   
Репутация: 7
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Unity 3D
Сообщений: 432
|
 |
« : Май 08, 2012, 17:22:09 » |
|
Хай. Возникло два вопроса. 1)как сделать, что бы при подходе к сундуку в плотную или на 1 шаг от него и при нажатии левой кнопкой мыши открывался мой и его инвентарь, и я могу взять из сундука предметы и положить обратно? 2)Как сделать, что бы я мог торговать с продавцом так же подхожу ну на два шага к ниму + - и нажимаю на него мышкой, открываются два инвентаря, мой и его и я торгую с продавцом. Вопросы очень сложные попрошу создать пример или обеснить подробно чё куда писать)) ток не пишите пользуйся поиском т.п я много пересмотрел примеров ток путнего не чё не нашол. Заранее спасибо. Хочу приметить, что инвентари должны открываться если игрок стоит в плотную +- к сундуку, а то будет так стоишь за километр от сундука и его открываешь)) Игра TDS (вид сверху) ну и конечно же за хороший, внятный ответ + в репу. А ещё когда открываються инвентари то пускай всё вокруг замирает типо паузы.. для тех кто будит делать пример)) вот ещё заметка инвентарь как у два кота)) ток по свойму всё))
|
|
|
|
|
Записан
|
|
|
|
Vendet
Гл. Администратор
Репутация: 773
Offline
Пол: 
API: Unity 3D
Сообщений: 3949
HellRoom Games
|
 |
« Ответ #1 : Май 08, 2012, 18:21:59 » |
|
Вопросы очень сложные попрошу создать пример или обеснить подробно чё куда писать)) Для новичков: вопросы и ответы по Game Maker пользуйся поиском
|
|
|
|
|
Записан
|
|
|
|
|
Dva_Kota
|
 |
« Ответ #2 : Май 11, 2012, 10:48:53 » |
|
Вот. TDS_02Может быть не все исправил, т.к. ты не очень четко написал что именно нужно. Сделал так: код из нажатия пробела перенес в степ и немного изменил. Теперь когда игрок подходит к объекту автоматически открываются два инвентаря (расстояние можно поменять), если отходит - закрываются. Другой вариант: TDS_03Здесь код остался в нажатии пробела. Подходишь к объекту, нажимаешь пробел - открываются два инвентаря. Но когда отходишь они не закрываются. Закрытие можно сделать по-разному и это не сложно, например в событии нажатия клавиш движения проверять открыт ли какой-нибудь инвентарь корме главного. Для этого можно проверять для всех инвентарей переменную visible, но я бы добавил одну переменную игроку и менял бы ее при открытии и закрытии каждого (не главного) инвентаря, тогда для закрытия нужно будет проверять только одну переменную. Можно всем не главным инвентарям назначить родителя и закрывать их через родителя, это будет удобнее. Вот пример с автоматическим закрытием инвентаря TDS_04Основной инвентарь не закрывается при этом, если нужно чтобы он тоже закрывался - назначь ему того же родителя что и остальным.
|
|
|
|
Записан
|
|
|
|
WinSTOP
Активный участник
   
Репутация: 7
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Unity 3D
Сообщений: 432
|
 |
« Ответ #3 : Май 11, 2012, 11:55:04 » |
|
ещё вопросик ,а как сделать что бы в инвентаре всё предметы норм перекладывались? если открыт сундук то они перекладываються а если инвентарь, то используються? 2) что бы в одну ячейку помещалось 5 одинаковых предметов, а то если перекладываешь из одной в другую то они по одной кадуться? а к стате в примере с пробелом было бы лучше)
|
|
|
|
|
Записан
|
|
|
|
|
Dva_Kota
|
 |
« Ответ #4 : Май 16, 2012, 22:06:26 » |
|
WinSTOP, SUPCHIK, вот то что вы хотели. Качайте, тестируйте, пишите об ошибках (если есть). Подробно описывать нет уже времени, скажу лишь что в кнопку открытия инвентаря добавил одну проверку (первая строка), и добавил еще два инвентаря - один дублирует основной инвентарь при открытии "окна передачи предметов", второй показывает содержимого конкретного "сундука" (спрайты для сундуков не было времени делать, вместо них спрайты ячеек инвентаря). Окно передачи предметов открывается ниже, чтобы было видно основной инвентарь, по идее оно должно открываться вместо инвентаря (в событии Draw уберите +200 во второй строке у обоих новых инвентарей, а вообще расположите их как вам больше нравится). Этот пример я делал из инвентрая 1.0064, но для переноса в старую версию (если ее кто-то использует) можно их просто туда скопирывать, должно работать (если там основной инвентарь по другому называется - переименовать в коде). http://rghost.ru/38122005 Добавлено: Май 16, 2012, 22:10:41 В комнате два обычных стандартных пустых сундука. В событии создания игрока создается еще один сундук - тас задается какой у него будет размер, и какие будут лежать в нем предметы (две бутылки маны в слоте [0,0]).
|
|
|
|
|
Записан
|
|
|
|
WinSTOP
Активный участник
   
Репутация: 7
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Unity 3D
Сообщений: 432
|
 |
« Ответ #5 : Май 17, 2012, 06:16:36 » |
|
спс те огромное)) поставлю ща +
|
|
|
|
|
Записан
|
|
|
|
skypo
GM Pro user
Репутация: 63
Offline
Пол:  Награды:  ![За постоянность! [50 дней на форуме] За постоянность! [50 дней на форуме]](http://forum.hellroom.ru/awards/d09ba76b977b84fd4f5dcfae1f2918ff_hellroomforum_time_copper.gif)
API: GameMaker Studio Pro
Сообщений: 809
|
 |
« Ответ #6 : Май 18, 2012, 12:55:29 » |
|
Примеры открываются в ГМ, но при попытке "запуска игры" у Винды вылезает ошибка "прекращена работа программы" ГМ 8про.
|
|
|
|
|
Записан
|
|
|
|
|
Dva_Kota
|
 |
« Ответ #7 : Май 18, 2012, 14:15:56 » |
|
У кого еще такое было?
|
|
|
|
|
Записан
|
|
|
|
WinSTOP
Активный участник
   
Репутация: 7
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Unity 3D
Сообщений: 432
|
 |
« Ответ #8 : Май 18, 2012, 14:18:59 » |
|
у мя не было всё норм))
|
|
|
|
|
Записан
|
|
|
|
|
Dva_Kota
|
 |
« Ответ #9 : Май 18, 2012, 14:30:59 » |
|
skypo, попробуй этот пример запустить: http://rghost.ru/38147558WinSTOP, ошибок никаких не было? Может предметы не правильно перетаскиваются, или еще что-то. Его еще доделывать нежно, оптимизировать, но времени не было на это.
|
|
|
|
|
Записан
|
|
|
|
Nordok
Активный участник
   
Репутация: 19
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Master
Сообщений: 412
Осязаю неосязаемое
|
 |
« Ответ #10 : Май 18, 2012, 16:21:09 » |
|
Его еще доделывать нежно...
Класс ))))  обожаю такие опечатки
|
|
|
|
|
Записан
|
|
|
|
|
Dva_Kota
|
 |
« Ответ #11 : Май 29, 2012, 14:55:25 » |
|
1. Исправил ошибку: если забрать предметы из сундука при повторном открытии сундука они опять появлялись. 2. Добавление предметов в сундук (нажатие клавиши Enter) 3. Добавил скрипт добавления предметов в сундук (вызывается при нажатии клавиши 3) (то же самое что п.2, только скриптом - удобно если нужно добавлять много разных предметов) p.s.: WinSTOP, хотел я тебе плюсик поставить, за то что благодаря тебе мне пришлось сделать этот пример, но не буду, т.к. плохо ты его протестировал. Скачать версию 1.0073 Добавлено: Май 31, 2012, 13:09:11 Исправил ошибку с оружием и одеждой: Инвентарь 1.0074 сундуки Добавлено: Июнь 20, 2012, 20:20:22 Инвентарь 1.0075 сундуки - исправлена глубина инвентарей обмена, добавлен спрайт сундука (когда сундук открыт - спрайт меняется на открытый сундук, когда закрывается сундук - спрайт опять меняется на закрытый). Можно убрать обратное изменение спрайта, т.е. чтобы те сундуки, в которые мы уже заглядывали, оставались открытыми. Исправлено отображение количества предметов в инвентаре обмена - теперь если один предмет то количество не пишется, как было в основном инвентаре. Инвентарь 1.0078 сундуки+перетаскивание окон - реализовано перетаскивание окон инвентаря (только для окна обмена) ПКМ. Положение окон запоминается. Окно сундука всегда сверху. Если расположить окна обмена одно над другим, то активны будут только те ячейки нижнего окна, которые не перекрывает верхнее. Можно было бы сделать чтобы окно, которое перетаскивали последним, было сверху, но думаю что это уже лишнее. И еще небольшое изменение - теперь запоминается состояние инвентаря при открытии сундука (если инвентарь был открыт, то после закрытия сундука он останется открытым). перезалил пример. Nordok, спасибо за идею.
|
|
|
|
« Последнее редактирование: Июнь 21, 2012, 19:29:10 от Dva_Kota »
|
Записан
|
|
|
|
Nordok
Активный участник
   
Репутация: 19
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Master
Сообщений: 412
Осязаю неосязаемое
|
 |
« Ответ #12 : Июнь 20, 2012, 22:50:35 » |
|
Nordok, спасибо за идею.
Незачто  сделаю все возможное чтобы твой инвентарь становился все лучше и лучше!
|
|
|
|
|
Записан
|
|
|
|
Покров
Новичок
Репутация: 0
Offline
Пол: 
API: Game Maker 8.0 Pro
Деятельность: полный цикл
Сообщений: 4
|
 |
« Ответ #13 : Январь 06, 2013, 01:46:38 » |
|
1. Исправил ошибку: если забрать предметы из сундука при повторном открытии сундука они опять появлялись. 2. Добавление предметов в сундук (нажатие клавиши Enter) 3. Добавил скрипт добавления предметов в сундук (вызывается при нажатии клавиши 3) (то же самое что п.2, только скриптом - удобно если нужно добавлять много разных предметов) p.s.: WinSTOP, хотел я тебе плюсик поставить, за то что благодаря тебе мне пришлось сделать этот пример, но не буду, т.к. плохо ты его протестировал. Скачать версию 1.0073 Добавлено: Май 31, 2012, 13:09:11 Исправил ошибку с оружием и одеждой: Инвентарь 1.0074 сундуки Добавлено: Июнь 20, 2012, 20:20:22 Инвентарь 1.0075 сундуки - исправлена глубина инвентарей обмена, добавлен спрайт сундука (когда сундук открыт - спрайт меняется на открытый сундук, когда закрывается сундук - спрайт опять меняется на закрытый). Можно убрать обратное изменение спрайта, т.е. чтобы те сундуки, в которые мы уже заглядывали, оставались открытыми. Исправлено отображение количества предметов в инвентаре обмена - теперь если один предмет то количество не пишется, как было в основном инвентаре. Инвентарь 1.0078 сундуки+перетаскивание окон - реализовано перетаскивание окон инвентаря (только для окна обмена) ПКМ. Положение окон запоминается. Окно сундука всегда сверху. Если расположить окна обмена одно над другим, то активны будут только те ячейки нижнего окна, которые не перекрывает верхнее. Можно было бы сделать чтобы окно, которое перетаскивали последним, было сверху, но думаю что это уже лишнее. И еще небольшое изменение - теперь запоминается состояние инвентаря при открытии сундука (если инвентарь был открыт, то после закрытия сундука он останется открытым). перезалил пример. Nordok, спасибо за идею. Если есть возможность, скиньте примеры с инвентарем еще раз. По ссылкам файлы уже удалены. Заранее благодарен.
|
|
|
|
|
Записан
|
|
|
|
depict
GM Pro user
Репутация: 116
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker 8.1 Standard
Сообщений: 450
Наведу на мысль. За последствия не отвечаю :)
|
 |
« Ответ #14 : Январь 07, 2013, 13:03:06 » |
|
Если есть возможность, скиньте примеры с инвентарем еще раз. По ссылкам файлы уже удалены. Заранее благодарен.
вот главная тема этого примера: Пример инвентаря
|
|
|
|
|
Записан
|
|
|
|
|