Вторник, 24 Мая 2022, 14:43

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker Studio » Сохранение того, что объект удалён (сабж внутри)
Сохранение того, что объект удалён
XageuДата: Суббота, 20 Августа 2011, 20:22 | Сообщение # 1
Хадей - Друг Детей
Сейчас нет на сайте
У меня возник вопрос, решение которого, скорее всего, будет заключаться в функциях, которых я в ГМе еще не использовал (или использовал мало). Так вот, вопрос.

У меня в игре есть уровни, а на уровнях есть предметы (много монеток). Их можно собирать, и, после окончания уровня, на этот же уровень можно вернуться. Но собранных монеток (т.е. должны быть только те монетки, которые мы не собирали) в нём быть не должно. Как это осуществить, если монетки ставятся вручную в комнате?

Через список, быть может?




Сообщение отредактировал Загё - Суббота, 20 Августа 2011, 20:22
LunarPixelДата: Суббота, 20 Августа 2011, 20:32 | Сообщение # 2
старожил
Сейчас нет на сайте
Ну например так, первое что пришло в голову:
Задаем в каком нибудь объекте obj_controll массив:

for (i=1;i<100;i+=1)
mas[i]=0


У этого же объекта в событии Room Start пишем:
for (i=1;i<100;i+=1)
{
if instance_number(mas[i])!=0
with mas[i] instance_destroy()
}


При столкновении с монеткой пишем:
for (i=1;i<100;i+=1)
if obj_controll.mas[i]=0
{
obj_controll.mas[i]=id
break
}
instance_destroy()


Аналогично можно и со списками сделать, просто давно не работал с ними. smile




Сообщение отредактировал LunarPixel - Суббота, 20 Августа 2011, 20:34
XageuДата: Суббота, 20 Августа 2011, 21:06 | Сообщение # 3
Хадей - Друг Детей
Сейчас нет на сайте
Хм, но если я возвращаюсь в комнату, массив не будет снова обнулен? Или данные в нем сохранятся? Массив это global?

LunarPixelДата: Суббота, 20 Августа 2011, 21:15 | Сообщение # 4
старожил
Сейчас нет на сайте
Загё, забыл написать. obj_controll сделай постоянным (галочка Persistent) smile

Добавлено (20.08.2011, 21:15)
---------------------------------------------
На всякий случай только что проверил, всё работает. smile


XageuДата: Суббота, 20 Августа 2011, 21:21 | Сообщение # 5
Хадей - Друг Детей
Сейчас нет на сайте
Да, я уже ввёл в игру. Только ещё обнуление массива добавил в главном меню smile

LunarPixelДата: Суббота, 20 Августа 2011, 21:24 | Сообщение # 6
старожил
Сейчас нет на сайте
Загё, ой ой ой, забыл я кое про что. biggrin Проверь, попробуй просто комнату на вкладке settings сделать постоянной (галочка Persistent). Весь мой код убери. smile
Должно работать, но этот способ не всегда подойдет. Может у тебя в комнате ещё что то меняется, но сохраняться не должно. smile Так что тут уже сам смотри, что тебе подходит больше.




Сообщение отредактировал LunarPixel - Суббота, 20 Августа 2011, 21:28
XageuДата: Суббота, 20 Августа 2011, 21:32 | Сообщение # 7
Хадей - Друг Детей
Сейчас нет на сайте
Не, всё именно так, как нужно. Не все предметы должны исчезать smile

MyACTДата: Воскресенье, 21 Августа 2011, 14:50 | Сообщение # 8
C# CODERS
Сейчас нет на сайте
Я так понимаю что-бы монеток при возврате в комнату не было то в комнате поставь галочку в Постоянном.

3дэшечки: https://sketchfab.com/myactyindie
Курентли воркс он: https://myacty.itch.io/raskopnik
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker Studio » Сохранение того, что объект удалён (сабж внутри)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2022 Рейтинг