Как сохранить информацию

  1. 2 г. назад

    Дорогие друзья, братья и товарищи) столкнулся вот с какой дилеммой, при попытке использования SaveString, MonkeyX ругается что неверный синтаксис, я уже перепробовал почти все модули импортировать, а он все никак и ни как, в чём может быть дело? И может кто подскажет как сделать сохранение на Android'е.

    'Модуль доступен для Android, iOS, Win8, Glfw, Stdcpp
    Import brl.filestream
    
    Function SaveGameState:Void(str:String)
    	Local stream:FileStream = FileStream.Open("monkey://internal/save.dat", "w")
    	stream.WriteString(str)
    	stream.Close()
    End Function
    
    Function LoadGameState:String()
    	Local stream:FileStream = FileStream.Open("monkey://internal/save.dat", "r")
    	Local result:String = stream.ReadString()
    	stream.Close()
    	Return result
    End Function

    @ReallShin В чем может быть дело?

    Какая версия Monkey? Возможно не импортирован mojo.app

  2. devolonter

    3 Jul 2015 Администратор

    Приветствую! Для сохранения состояния игры нужно использовать SaveState. SaveString функция из модуля OS - сохраняет строку в файл. Она используется в основном в билдерах и трансляторе.

  3. Можно попросить пример использования с записью файла, у меня на SaveState компилятор ругается. В чем может быть дело?

  4. devolonter

    4 Jul 2015 Администратор Ответ
    2 г. назад исправил devolonter
    'Модуль доступен для Android, iOS, Win8, Glfw, Stdcpp
    Import brl.filestream
    
    Function SaveGameState:Void(str:String)
    	Local stream:FileStream = FileStream.Open("monkey://internal/save.dat", "w")
    	stream.WriteString(str)
    	stream.Close()
    End Function
    
    Function LoadGameState:String()
    	Local stream:FileStream = FileStream.Open("monkey://internal/save.dat", "r")
    	Local result:String = stream.ReadString()
    	stream.Close()
    	Return result
    End Function

    @ReallShin В чем может быть дело?

    Какая версия Monkey? Возможно не импортирован mojo.app

  5. Версия последняя с mojo2

  6. devolonter

    4 Jul 2015 Администратор

    Странно. Попробовал с mojo2. Все норм:

    Import mojo2
    
    Function Main()
    	New Game()
    End
    
    Class Game Extends App
    
    	Method OnCreate()
    		SaveState("Hello!")
    		Print LoadState()	
    	End
    
    End Class

    Какую ошибку выдает?

  7. Спасибо огромное, всё получилось!) Оказалось у меня коряво скачался дистрибутив, перекачал и всё заработало)

или зарегистрируйтесь чтобы комментировать!