Save(сохранение).

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Save(сохранение).

Сообщение be-cool 18 ноя 2011, 15:22

Привет ребят!
Вот я столкнулся с такой проблемой, как сохранения. Ведь не буду же я делать одноразовую игру, над денюшек накрутить.
Итак подскажите пожалуйста: какие методы сохранения есть, команды сохранения.
Знаю, есть реесторное сохранение, но оно мне не нужно, слишком тягостно!
Мне нужно знать команды сохранения в файл: т.е. положить, даже, пусть переменную числовую N%, в файл. И затем, при следующем запуске извлечь. Можете сказать,пожалуйста , какие это будут команды?
Аватара пользователя
be-cool
UNIт
 
Сообщения: 83
Зарегистрирован: 12 сен 2011, 10:41
  • ICQ

Re: Save(сохранение).

Сообщение Neyl 18 ноя 2011, 16:52

Аватара пользователя
Neyl
UNIверсал
 
Сообщения: 404
Зарегистрирован: 20 июн 2010, 10:17

Re: Save(сохранение).

Сообщение be-cool 18 ноя 2011, 19:07

спасибо, но я ленивый и там не то, как бы. НУжен Unityscript(javascript)!
Аватара пользователя
be-cool
UNIт
 
Сообщения: 83
Зарегистрирован: 12 сен 2011, 10:41
  • ICQ

Re: Save(сохранение).

Сообщение BlackMamba 18 ноя 2011, 20:10

простейшую инфу можно в тхт сохранить, на офф форуме где-то была тема про сохранения в тхт, но я не нашел, поэтому приведу свои кракозябры, а вы докурите их, там все просто:

Синтаксис:
Используется javascript
import System;
import System.IO;
import System.Text;

function WriteGameConfig() {                    //пишем в конфиг-файл готовые выражения
        SaveToConfig = new StreamWriter("Assets/Scripts/GameConfig.txt");
        SaveToConfig.WriteLine("ResolutionNumbSlider = " +ResolutionNumbSlider+";");
        if (FullScreen == false) {
                FS = "false";
        }
        else {
                FS = "true";
        }
        SaveToConfig.WriteLine("FullScreen = " +FS+";");
        SaveToConfig.WriteLine("FrameRateSlider = " +FrameRateSlider+";");
        SaveToConfig.Flush();
        SaveToConfig.Close();
}

function ApplySetts() //функция чтения из конфиг-файла
        {
        ReadGameConfigGraph = new File.OpenText("Assets/Scripts/GameConfig.txt");
        while (true)
                {
                input = ReadGameConfigGraph.ReadLine();
                if (input == null) {break;}
        eval (input);
                }
        ReadGameConfigGraph.Close();
        GetScreenResFromSlider();       //определяем разрешение по положению слайдера
        Screen.SetResolution (ScreenWidth, ScreenHeight, FullScreen, FrameRateSlider*10);
        }


в данном случае записываем позицию слайдера(по которому потом определяем разрешение экрана), фулл скрин и частоту кадров в виде готовых выражений в тхт-файл, и при чтении эти выражения через eval присваивают нужным переменным сохраненные значения. как оно в готовом проекте работает - хз, но в едиторе все норм запускается :D
может можно и проще, но я только до такого додумался.
mail: _gdeMoiGusi@gmail.com
skype: Ellseworth
Аватара пользователя
BlackMamba
UNITрон
 
Сообщения: 305
Зарегистрирован: 06 янв 2011, 16:16
Откуда: Москва

Re: Save(сохранение).

Сообщение be-cool 19 ноя 2011, 11:12

Короче основными операторами являются
Синтаксис:
Используется javascript
var mygame : int =1;
SaveToConfig = new StreamWriter ("gamesave.txt");
SaveToConfig = Writeline("played =" + mygame);
ReadGameConfigGraph.ReadLine(0);
if (input == 1) {
Application.LoadLevel(1);
}

ТАк или чото неправильно?
Как мне достать ту или иную переменную?
ReadGameConfigGraph.ReadLine(0);

Здесь я имел ввиду строку 1, праильно сделал?
Аватара пользователя
be-cool
UNIт
 
Сообщения: 83
Зарегистрирован: 12 сен 2011, 10:41
  • ICQ

Re: Save(сохранение).

Сообщение alexmarch 17 дек 2011, 11:50

be-cool писал(а):спасибо, но я ленивый и там не то, как бы. НУжен Unityscript(javascript)!

После такого заявления меня бы тоже обломило что либо отвечать (popcorn)
Аватара пользователя
alexmarch
UNITрон
 
Сообщения: 286
Зарегистрирован: 04 май 2009, 19:54


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot] и гости: 28