Сохранение скриншотов
|
|
MrSlap | Дата: Среда, 06 Мая 2015, 02:47 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Решил сделать сэйвы со скриншотами (по слотам). В игре - всё отлично работает, скриншотик грузится в слот. потом с него считываются все переменные. Само сохранение происходит через ini файл. И проблема в том, что скриншоты исчезают после выхода из игры. Не врубаюсь, как после add_sprite сохранить в игре эту картинку.
Сумбурно написал, наверное. В общем попробовал в ини записать, чему должна быть равна переменная спрайта скриншота. Ну и конечно, после перезапуска игры он не находит в переменной никакого скрина. Есть способ вписать добавленный спрайт в игру? Может я опять проглазел что-либо в справке?
Создаю интерактивную повесть.
|
|
| |
PoidetLi | Дата: Среда, 06 Мая 2015, 03:09 | Сообщение # 2 |
участник
Сейчас нет на сайте
| Цитата MrSlap ( ) скриншотик грузится в слот. потом с него считываются все переменные. извращюга или перепутал сохранение и скриншотик?
в еюдуго прсхлуренц http://gcup.ru/forum/9-44187-1 мой Project 96
|
|
| |
MrSlap | Дата: Среда, 06 Мая 2015, 03:14 | Сообщение # 3 |
почетный гость
Сейчас нет на сайте
| PoidetLi, сорян, как и в предыдущей теме, выложил вопрос, основательно всё не обдумав... При запуске игры просто спрайт надо повторно добавлять, и тогда всё работает, как часы. =)Добавлено (06 мая 2015, 03:14) --------------------------------------------- PoidetLi, да и неправильно написал. Мол - скриншотик должен быть в слоте, а уже из слота считываются переменные... Всё это в draw нарисовал, чтобы оттедалться одним объектом create =) котороче не самый удобный кодец получается. Зато менюшка красивая )
Пора спать...
Создаю интерактивную повесть.
|
|
| |
XDominator | Дата: Среда, 06 Мая 2015, 09:32 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| Новый спрайт в exe ты не запишешь, естественно что он у тебя исчезает после выхода
Скриншоты нужно сохранять отдельно как внешние картинки, давая им определенные имена или распихивая по отдельным папкам с нужными ini, но вариант только один - по алгоритму потом все это подгружать извне при старте игры, и никак иначе.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
YellowAfterlife | Дата: Среда, 06 Мая 2015, 10:15 | Сообщение # 5 |
Сейчас нет на сайте
| Сохранять скриншот (screen_save) в файл, имя которого совпадает с именем слота сохранения (к примеру). После (при загрузке сохранения) заменять спрайт\фон на скриншот с помощью sprite_replace/background_replace (чтобы не создавать утечек памяти при повторной загрузке сохранения).
|
|
| |
MrSlap | Дата: Среда, 06 Мая 2015, 22:49 | Сообщение # 6 |
почетный гость
Сейчас нет на сайте
| YellowAfterlife, а если я перед сохранением игры и загрузкой нового скриншота удаляю предыдущий спрайт Код if sprite[slot]!=spr_default_load {sprite_delete(sprite[slot])}; А уже потом сохраняю скриншот и подгружаю его add_sprite'ом. Принцип работы тот же? Или есть причины, по которым sprite_replace эффективнее?
Создаю интерактивную повесть.
|
|
| |
YellowAfterlife | Дата: Среда, 06 Мая 2015, 23:30 | Сообщение # 7 |
Сейчас нет на сайте
| Цитата MrSlap ( ) Принцип работы тот же? Или есть причины, по которым sprite_replace эффективнее? Принцип работы тот же. sprite_replace лишь немного удобнее тем, что он исключает вероятность случайного создания утечки памяти (поскольку заменяется один и тот же спрайт, а не создаются\удаляются новые).
|
|
| |
MrSlap | Дата: Пятница, 08 Мая 2015, 21:02 | Сообщение # 8 |
почетный гость
Сейчас нет на сайте
| YellowAfterlife, понятно, благодарю. Хоть и постоянно втыкаю в справку GMS, а многие вещи всё-равно как-то мимо проскальзывают. И не всегда всё понятно =) Добавлено (08 мая 2015, 21:02) --------------------------------------------- YellowAfterlife, ещё такой вопрос, при добавлении тайлов в комнату, код screen_save начал выполняться довольно долго. Есть способ избежать этой проблемы?
Создаю интерактивную повесть.
|
|
| |