2012-11-16 40 views
0

前段时间我问过类似的问题,但是我正在用一些例子让我的问题变得更具体一些!Actionscript 3将当前位置保存到本地硬盘?

从来就发现这个代码片断/教程从谷歌上搜索,但我似乎无法弄清楚如何修改我的需要:

// open a local shared object called "myStuff", if there is no such object - create a new one 
var savedstuff:SharedObject = SharedObject.getLocal("myStuff"); 
// manage buttons 
btnSave.addEventListener(MouseEvent.CLICK, SaveData); 
btnLoad.addEventListener(MouseEvent.CLICK, LoadData); 

function SaveData(MouseEvent){ 
savedstuff.data.username = nameField.text // changes var username in sharedobject 
savedstuff.flush(); // saves data on hard drive 
} 
function LoadData(MouseEvent){ 
if(savedstuff.size>0){ // checks if there is something saved 
nameField.text = savedstuff.data.username} // change field text to username variable 
} 

// if something was saved before, show it on start 
if(savedstuff.size>0){ 
nameField.text = savedstuff.data.username} 

所以我试图找出如何做,是将用户当前帧保存到本地硬盘,因为我的闪存进度基于帧位置。是的,那么如何修改它以存储当前帧的数据?以及如何改变movieclip中的当前帧?

帮助MUUUCH赞赏!谢谢!

回答

2

在您的例子,它看起来就像是已经保存的东西共享对象:

savedstuff.data.username = nameField.text; 

正好与影片剪辑帧值来代替它,而不是(也可能在其他然后采用不同的属性名“用户名” )。

然后在负荷时,有另一条线在那里加载数据:

nameField.text = savedstuff.data.username; 

这将是同样的方式,除了与你选择的属性名称替换“用户名”。然后,您可能需要再次解析int并使用它来恢复进度,无论您设置的方式如何。

+0

你能告诉我例如,请,所以我更好地理解:P im真的新与sharedobjects –

+1

@EH这个答案给了你所有你需要的信息。为什么不阅读SharedObjects并找出它? http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/SharedObject.html –

+0

我已经在前几天想到了,是的,好吧,stackoverflow感觉更好。我有阅读困难症,所以对我的问题寻求解决方案更容易,通过这种学习而不是寻找信息,然后尝试找出适合我需求的信息。 –