Инвентарь.
|
|
Veliky_Virus | Дата: Пятница, 16 Июля 2010, 03:52 | Сообщение # 1 |
ДьявоЛ
Сейчас нет на сайте
| И так. Мне захотелось (чисто для своего опыта) сделать инвентарь. (не текстовый) Я его в принципе сделал. Но надо бы чтобы при столковении героя с предметом ложилось в инвентарь. Я сделал только при нажатии на предмет он удерживался на мышке и клался в открытый инвентарь. Вот исходник. Заранее спасибо!
Сообщение отредактировал Veliky_Virus - Пятница, 16 Июля 2010, 04:02 |
|
| |
NeZnayu | Дата: Пятница, 16 Июля 2010, 11:57 | Сообщение # 2 |
__танцуй!__
Сейчас нет на сайте
| Исходник к сожалению посмотреть не могу, но инвентарь надо делать через массив или дата-структуру, иначе получится фигня (т.е. например делать ячейки отдельными объектами - это не инвентарь) Вообще рекомендую осваивать массивы - очень полезная штука.
CombatForce - 2d TDS долгожданный релиз Noobster - самый простой конструктор игр в мире LaLaLaLAMA! - игра не про Ламу
|
|
| |
Decedent | Дата: Пятница, 16 Июля 2010, 12:24 | Сообщение # 3 |
почетный гость
Сейчас нет на сайте
| А можно пример для ну совсем имбецилов (в смысле закомментированный, разжеванный, для нуба в общем). Даже не пример а урок по работе с массивами в разных случаях. Полистал документацию, что делают массивы понял, а на практике ничерта не понятно зачем они это делают. В общем урок по массивам для ньюбаев вантед.
|
|
| |
NeZnayu | Дата: Пятница, 16 Июля 2010, 12:40 | Сообщение # 4 |
__танцуй!__
Сейчас нет на сайте
| И так мини-урок Под рукой нет ГМ буду писать "по приборам" ) Вообще не знаю будет ли это реально полезно, комментарии ставить не буду для пущего "обучающего" эффекта. Открываем пустой проект, создаем объект. У него в create пишем: i=0 massiv_max=6 massiv[0]="Monday" massiv[1]="Tuesday" massiv[2]="Wednesday" massiv[3]="Thursday" massiv[4]="Friday" massiv[5]="Saturday" massiv[6]="Sunday" В событии нажатия кнопки вниз (keyboard pressed <down>) if i<massiv_max i+=1 else i=0 В кнопке вверх: if i>0 i-=1 else i=massiv_max В draw: draw_text(0,0,"Week day: "+massiv[i]) Сохраняем, запускаем, тыкаем вверх-вниз.
CombatForce - 2d TDS долгожданный релиз Noobster - самый простой конструктор игр в мире LaLaLaLAMA! - игра не про Ламу
|
|
| |
|
NeZnayu | Дата: Пятница, 16 Июля 2010, 13:01 | Сообщение # 6 |
__танцуй!__
Сейчас нет на сайте
| Тут простой одномерный массив ячейки прокручиваются по очереди, есть еще двумерные массивы - там для каждой ячейки можно создавать "под-ячейки" и прокручивать их отдельно. На двумерных массивах можно сделать фактически все что угодно от системы оружия и инвентаря до записи и сохранения карт уровней.
CombatForce - 2d TDS долгожданный релиз Noobster - самый простой конструктор игр в мире LaLaLaLAMA! - игра не про Ламу
Сообщение отредактировал NeZnayu - Пятница, 16 Июля 2010, 13:04 |
|
| |
Decedent | Дата: Пятница, 16 Июля 2010, 13:09 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| NeZnayu, хм, урок-то полезный, но я немного не об этом. Мне более интересна практическая ценность, с механикой я разобрался. Вот человеку нужно использовать массивы для создания ячеек инвентаря, еще можно для реализации "колоды карт" в карточной игре, еще для чего-то. Меня это интересует. Где стоит применять массивы, а где не стоит, и почему именно массивы а не, скажем, переменные. Для наглядности: Гвозди забивают молотком. Хотя можно и шурупы забивать молотком. Но мало мальски понимающий человек возьмет отвертку и закрутит а не задолбит. Вот я как раз ничего не понимаю в молотках и шурупах, поэтому мне нужно понять почему шуруп все таки нужно закручивать отверткой, а гвозди забивать молотком.
|
|
| |
NeZnayu | Дата: Пятница, 16 Июля 2010, 13:16 | Сообщение # 8 |
__танцуй!__
Сейчас нет на сайте
| Удобство массивов состоит в том что они хранят данные под порядковыми номерами (ака индексы) в отличие от переменных, где нужно указывать отдельное имя для каждой. Попробуй мой пример выше сделать при помощи обычных переменных - думаю сразу поймешь почему массивы рулят
CombatForce - 2d TDS долгожданный релиз Noobster - самый простой конструктор игр в мире LaLaLaLAMA! - игра не про Ламу
|
|
| |
lumennes | Дата: Пятница, 16 Июля 2010, 13:43 | Сообщение # 9 |
Убийца Diablo
Сейчас нет на сайте
| Да, с массивами урок был полезный. Сейчас думаю с помощью их сделать редактор карт, который бы записывал данные в txt файл и из него же читалось. В общем спасибо что разъяснил:)
Как мало вы знаете, как громко вы судите...
|
|
| |
Veliky_Virus | Дата: Пятница, 16 Июля 2010, 16:12 | Сообщение # 10 |
ДьявоЛ
Сейчас нет на сайте
| И чтоже это получается? Я незнаю как написать чтобы при столкновении с предметом ложилось в инвентарь. И всё.
|
|
| |
Decedent | Дата: Суббота, 17 Июля 2010, 11:53 | Сообщение # 11 |
почетный гость
Сейчас нет на сайте
| Create обьекта player: massive_items[0]=noitem //тут индекс это название ячейки. можно например написать massive_items[left_arm]=noitem massive_items[1]=noitem massive_items[2]=noitem massive_items[3]=noitem massive_items[4]=noitem massive_items[5]=noitem Collision итема с обьектом player: instance_destroy() massive_items[0]=item1 //тут индекс это ячейка в которую ложится итем и собственно название итема
|
|
| |
FedenkoVadik | Дата: Суббота, 17 Июля 2010, 14:55 | Сообщение # 12 |
Level 5 Gentleman
Сейчас нет на сайте
| а поему обычные массивы это аналог (упрощенный) списка, а двумерные - это как (упрощенная) сетка... хм... жаль в ГМ нет тремерных массивов...
|
|
| |
Veliky_Virus | Дата: Суббота, 17 Июля 2010, 21:58 | Сообщение # 13 |
ДьявоЛ
Сейчас нет на сайте
| Вообще ничего не понял
|
|
| |
Saracen | Дата: Воскресенье, 18 Июля 2010, 13:03 | Сообщение # 14 |
участник
Сейчас нет на сайте
| Сперва разберись в массивах, а уже потом пытайся понимать
|
|
| |