| 
				
				Коллекции или карточки
				 | 
 | 
| 123dima321 | Дата: Пятница, 31 Мая 2013, 10:43 | Сообщение # 1 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | Всем привет!   Хочу реализовать такую интересную вещь в своей игре:   Допустим я спрятал в ней по разным комнатам 100 карточек!   После чего в процессе игры при нахождении определенной карточки, она бы высвечивалась в разделе меню, коллекции.   Так вот, в чем проблема?   Подскажите как лучше реализовать эту идею:   ini кодом, dll, или обычными функциями в GM?   Может у кого нибудь есть пример с карточками? 
   В нете смотрел, не нашел(   Кто поможет, ставлю +
 |  
| 
 | 
 |    | 
| XDominator | Дата: Пятница, 31 Мая 2013, 11:21 | Сообщение # 2 |  
| 
 постоянный участник 
Сейчас нет на сайте 
 
 | Проще всего конечно через ini - код, но это небезопасно, т.к. легко подправить, либо придется делать сложную систему шифровки файла. Но по большому счету это - самый оптимальный выход, т.к. стандартная ГМовская функция сохр-загр, сохраняет вообще все, что в данном случае конечно же незачем) 
   Вообще я работаю с кроссплатформенным движком cocos2d-x, и у него есть интересная функция: 
   CCUserDefault:sharedUserDefault():setBoolForKey("key_name", value) 
   Ну конечно же она пишет не только bool, но и integer , и string, и все в таком духе. А для чтения, юзается 
   keyValue = CCUserDefault:sharedUserDefault():getBoolForKey("key_name") 
   Вот такая простейшая связка из 2-х функций - прочитать и записать. А смысл в том, что ключи - это аналоги ключей реестра, и они хранятся в недоступном для простого смертного месте - в эдаком личном "реестре приложения". Таким образом, мы можем просто банально создать 100 ключей для каждой из твоих карточек, и по мере открытия задавать им значение "opened". Не знаю как это в стандартном ГМ реализовано и реализовано ли вообще, но вот в гм:студии, я уверен что должен быть аналог, иначе как там хранить информацию на мобильных платформах) Удачи!
  Ghaarp 
   The soul lighter(Android, logic) 
   Zzzzombie RAGE!!!(For android)
 |  
| 
 | 
 |    | 
| 123dima321 | Дата: Пятница, 31 Мая 2013, 11:31 | Сообщение # 3 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | Спасибо +   Жду еще мнений!  
 |  
| 
 | 
 |    | 
| Saladin | Дата: Пятница, 31 Мая 2013, 11:37 | Сообщение # 4 |  
 
заслуженный участник 
Сейчас нет на сайте 
 
 | Для программы карточек никаких нет, для программы все твои карточки это переменные. Если значение переменной равно какому то значению - карточка есть, если другому - нет. 
   Берем одномерный массив и принимаем номер ячейки за номер карточки, а значение - за индикатор ее наличия. Инициализируем массив в глобальном обьекте и при взятии карточки меняем в соответствующей ячейке значение (1/0 например). В комнате с карточками просто читаем из массива значения по порядку и рисуем карточку, если значение удовлетворяет.
  Анбаннэд. Хэлоу эгин =)
 |  
| 
 | 
 |    | 
| XDominator | Дата: Пятница, 31 Мая 2013, 11:40 | Сообщение # 5 |  
| 
 постоянный участник 
Сейчас нет на сайте 
 
 | Это то все легко и просто. Вопрос в другом - а как ты будешь открытые карточки определять после того, как выйдешь\зайдешь в игру заново? Массив то твой после выхода из игры обнулится  
  Ghaarp 
   The soul lighter(Android, logic) 
   Zzzzombie RAGE!!!(For android)
 |  
| 
 | 
 |    | 
| Saladin | Дата: Пятница, 31 Мая 2013, 11:42 | Сообщение # 6 |  
 
заслуженный участник 
Сейчас нет на сайте 
 
 | Цитата (XDominator) как ты будешь открытые карточки определять после того, как выйдешь\зайдешь в игру заново     Сохраняя датаструктуру в файл.
  Анбаннэд. Хэлоу эгин =)
 |  
| 
 | 
 |    | 
| 123dima321 | Дата: Пятница, 31 Мая 2013, 12:30 | Сообщение # 7 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | Спасибо +   Но вот может быть кто нибудь знает отличный gmk пример?   Было бы круто посмотреть на готовое)))   И взять для себя ценный опыт...
 |  
| 
 | 
 |    | 
| parl | Дата: Пятница, 31 Мая 2013, 12:50 | Сообщение # 8 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | Цитата (XDominator) Вот такая простейшая связка из 2-х функций - прочитать и записать. А смысл в том, что ключи - это аналоги ключей реестра, и они хранятся в недоступном для простого смертного месте - в эдаком личном "реестре приложения". Таким образом, мы можем просто банально создать 100 ключей для каждой из твоих карточек, и по мере открытия задавать им значение "opened". Не знаю как это в стандартном ГМ реализовано и реализовано ли вообще, но вот в гм:студии, я уверен что должен быть аналог, иначе как там хранить информацию на мобильных платформах) Удачи!   
   В гамаке это словари(map). Есть и в гм и в студие.
  Make me fat
 |  
| 
 | 
 |    |