Вторник, 23 Апреля 2024, 19:44

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Global.money Сбивается
Global.money Сбивается
GoldAppleДата: Четверг, 20 Февраля 2014, 15:29 | Сообщение # 1
частый гость
Сейчас нет на сайте
У меня в игре надо ловить монетки и там есть переменная global.money, а ещё там есть магазин, и когда я выхожу с уровня то все монеты обнуляются.... как сделать , так что-бы они не обнулялись?
У меня есть объект obj_click_1(монетка)
В событии Left pressed
Код

global.money += 10;

Ещё у меня есть объект obj_score
в Create там написано:
Код

globalvar money;  
global.money = 0;

Эти объекты стоят во всех комнатах.


Сообщение отредактировал GoldApple - Четверг, 20 Февраля 2014, 15:41
Quad69Дата: Четверг, 20 Февраля 2014, 15:40 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
На помощь приходят ini файлы)

Создай в папке с игрой файл "gamedata.ini"

Потом в игре в событии "Конец игры" пиши скрипт:
Код

ini_open('gamedata.ini')
ini_write_real('player','mone',global.money)
ini_close();


В событии котором у тебя создаётся global.money после этого напиши:
Код

ini_open('gamedata.ini')
global.money = ini_read_real('player','mone',0)
ini_close();
zzzzzaДата: Четверг, 20 Февраля 2014, 15:41 | Сообщение # 3
участник
Сейчас нет на сайте
Используй ini файлы или в объекте, в котором стоит global.money=0 поставь галочку "постоянный", тогда событие "create" не будет выполняться при каждом переходе в комнату.
t111Дата: Четверг, 20 Февраля 2014, 15:41 | Сообщение # 4
почетный гость
Сейчас нет на сайте
объект в котором хранится код global.money сделай постоянным. Там окошечко есть такое, галочку поставь. Теперь значение переменной будет одним и темже даже из перехода в другую комнату.

как известно, встречают по
одежке, а провожают
uninstall'ом"

GoldAppleДата: Четверг, 20 Февраля 2014, 15:44 | Сообщение # 5
частый гость
Сейчас нет на сайте
---------------------------------------------
Цитата maksim1221232 ()
Потом в игре в событии "Конец игры" пиши скрипт:

А где это событие?
Я только сегодня узнал в справке про ini файлы, так их и не понял


Сообщение отредактировал GoldApple - Четверг, 20 Февраля 2014, 15:46
Quad69Дата: Четверг, 20 Февраля 2014, 15:46 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
Цитата GoldApple ()
А где это событие?



После всего этого там ищи "Конец игры"
t111Дата: Четверг, 20 Февраля 2014, 15:47 | Сообщение # 7
почетный гость
Сейчас нет на сайте
в событии 'другое', там, при завершении игры

как известно, встречают по
одежке, а провожают
uninstall'ом"

GoldAppleДата: Четверг, 20 Февраля 2014, 15:48 | Сообщение # 8
частый гость
Сейчас нет на сайте
Цитата maksim1221232 ()


После всего этого там ищи "Конец игры"

Спасибо
ЛеонидДата: Четверг, 20 Февраля 2014, 16:00 | Сообщение # 9
постоянный участник
Сейчас нет на сайте
Цитата maksim1221232 ()
На помощь приходят ini файлы)

У него проблема не с сохранением, а с тем, что при создании объекта в другой комнате, переменная обнуляется каждый раз, ини здесь ни к чему.
Самое хорошее решение уже сказали выше. Можно и по-другому, но это будет сложнее и работать будет не так корректно.
Quad69Дата: Четверг, 20 Февраля 2014, 16:10 | Сообщение # 10
заслуженный участник
Сейчас нет на сайте
Цитата GoldApple ()
Ещё у меня есть объект obj_score
в Create там написано:
Код

globalvar money;  
global.money = 0;

Эти объекты стоят во всех комнатах.

Если объект obj_score стоит в каждой комнате, то тут ничего удивительного.
При переходе в другую комнату в которой есть объект obj_score выполняется это:
Цитата GoldApple ()
globalvar money;  
global.money = 0;

global.money у тебя сохраняется, но при переходе в другую комнату срабатывает этот код:

Цитата GoldApple ()
global.money = 0;

и переменная global.money становится 0.

Добавлено (20.02.2014, 16:10)
---------------------------------------------

Цитата Леонид ()
У него проблема не с сохранением, а с тем, что при создании объекта в другой комнате, переменная обнуляется каждый раз

Вроде когда я читал тему там было написано что-то вроде "при выходе из игры у меня не сохраняются...."
ЛеонидДата: Четверг, 20 Февраля 2014, 16:16 | Сообщение # 11
постоянный участник
Сейчас нет на сайте
Зачем ты объяснил суть, я сказал её куда короче уже выше.
Немножко отступлю от темы. Никогда не пользовался свойством "постоянный" у объектов. В справке как-то расплывчато про него написано. Что оно дает, кроме того, что событие создания срабатывает только один раз?
Quad69Дата: Четверг, 20 Февраля 2014, 16:35 | Сообщение # 12
заслуженный участник
Сейчас нет на сайте
Цитата Леонид ()
Никогда не пользовался свойством "постоянный" у объектов

Я такое видел но никогда не пользовался. Даже внимание на это не обращаю
LunarPixelДата: Четверг, 20 Февраля 2014, 17:55 | Сообщение # 13
старожил
Сейчас нет на сайте
Цитата Леонид ()
Что оно дает, кроме того, что событие создания срабатывает только один раз?

Созданный единожды постоянный объект переходит во все комнаты с сохранением параметров. По аналогии с глобальными значениями, только в данном случае сохраняется весь объект. Весьма полезная штука. smile


ЛеонидДата: Четверг, 20 Февраля 2014, 19:36 | Сообщение # 14
постоянный участник
Сейчас нет на сайте
Цитата LunarPixel ()

Созданный единожды постоянный объект переходит во все комнаты с сохранением параметров. По аналогии с глобальными значениями, только в данном случае сохраняется весь объект. Весьма полезная штука.

Спасибо.
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Global.money Сбивается
  • Страница 1 из 1
  • 1
Поиск:

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