Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 Flash Actionscript 3-简单Btn点击保存游戏/应用_Actionscript 3_Flash_Mouseevent_Shared Objects_Local Shared Object - Fatal编程技术网

Actionscript 3 Flash Actionscript 3-简单Btn点击保存游戏/应用

Actionscript 3 Flash Actionscript 3-简单Btn点击保存游戏/应用,actionscript-3,flash,mouseevent,shared-objects,local-shared-object,Actionscript 3,Flash,Mouseevent,Shared Objects,Local Shared Object,我正在做一个项目,要求我保存舞台第二帧上的所有片段。这是一款华丽的装扮游戏,用户游戏在其中进行设计或制作一件艺术品,保存项目,然后单击“还原”按钮返回 这将在第二帧的舞台上有多个“可拖动”位和块。有人能告诉我一些关于如何使应用程序可以保存在桌面上的见解吗?当用户打开应用程序并单击“还原”按钮时,他们最后的设计会加载到舞台上?谢谢你的帮助。我已经有点拖网,我找不到任何简单的图坦卡门,我需要什么 添加了代码,以防万一 p、 让我们保持简单,因为我是设计师。:-) 是的,阿特瑞斯有正确的想法。看看这个

我正在做一个项目,要求我保存舞台第二帧上的所有片段。这是一款华丽的装扮游戏,用户游戏在其中进行设计或制作一件艺术品,保存项目,然后单击“还原”按钮返回

这将在第二帧的舞台上有多个“可拖动”位和块。有人能告诉我一些关于如何使应用程序可以保存在桌面上的见解吗?当用户打开应用程序并单击“还原”按钮时,他们最后的设计会加载到舞台上?谢谢你的帮助。我已经有点拖网,我找不到任何简单的图坦卡门,我需要什么

添加了代码,以防万一

p、 让我们保持简单,因为我是设计师。:-)


是的,阿特瑞斯有正确的想法。看看这个:

干杯,
德雷克·斯瓦齐(Drake Swartzy)

这太长了,无法在评论中回答,所以这里是:

import flash.net.SharedObject;
import flash.geom.Point;
import flash.events.MouseEvent;

var restore_values:SharedObject=SharedObject.getLocal("dress_up_game");

if(!restore_values.data.shirt_point){
    restore_values.data.shirt_point=new Point(shirt.x,shirt.y);
    restore_values.flush();
}

restore_btn.addEventListener(MouseEvent.CLICK,restore);
function restore(e:MouseEvent){
    if(restore_values.data.shirt_point){
        shirt.x=restore_values.data.shirt_point.x;
        shirt.y=restore_values.data.shirt_point.y;
    }
}

shirt.addEventListener(MouseEvent.MOUSE_DOWN,start_shirt_drag);
function start_shirt_drag(e:MouseEvent){
    shirt.startDrag()


}
shirt.addEventListener(MouseEvent.MOUSE_UP,stop_shirt_drag);
function stop_shirt_drag(e:MouseEvent){
    shirt.stopDrag()
    restore_values.data.shirt_point=new Point(shirt.x,shirt.y);
    restore_values.flush();
}
我花了几分钟才把它划掉。同样,按钮的实例名称是“restore_btn”。衣服或“可拖动位”与实例名称“衬衫”相同。如果单击“还原”按钮,代码将衬衫放置在上次保存的位置。您应该能够根据自己的项目情况调整此代码

干杯,
德雷克·斯瓦奇

很好。看来你能省点钱了。你能找回它吗?之后,你需要把你保存的信息放在舞台上。恐怕不会很简单。哈哈,听起来很棘手?有一个按钮,我已经设置到我以后要分配给恢复功能的阶段,叫做。。。“恢复”有什么线索吗?我是否需要让它存储x和y的数据,或者每一个电影片段的数据?我希望有一种方法可以在一次点击中保存它的全部内容?谢谢,这取决于您的设计,但最终需要保存每个剪辑的坐标并在恢复后应用它们。循环浏览您的
SharedObject
,并将其与您的舞台项目相匹配。您好,谢谢您的提醒。等我有时间的时候我会看看的。我可能会回到这里,因为我是AS3的新手,而且。。。我从来没有使用过保存功能:-)你好,德雷克,谢谢你把图坦卡蒙发给我。。。唯一的问题是当我单击“刷新”时,剪辑不在我留下的地方。这东西会自动复位吗?:-)不管怎样,这种方法是否也适用于本地?干杯,等我有时间的时候,我会去看戏的。你好,JimHello Drake,谢谢你把图坦卡蒙指给我看。由于某种原因,它在3个小时后就开始工作了,我跟着图坦卡蒙。太棒了,我甚至将它作为SharedObject附加到了鼠标事件(save_btn)上。再次感谢。现在我所要做的就是找出如何让它恢复最后一次保存。真棒@user3082874!很抱歉反应太晚。我很高兴教程对我有所帮助。如果你还有什么问题,就问吧!是的,我非常好-印象深刻。:-)有关于如何恢复的线索吗?太好了!我去看看。我将需要对其进行调整,以适应我的代码的其他部分,包括名称等。不过,我在想,将var restore_值:SharedObject=SharedObject.getLocal(“化妆游戏”);与我的保存共享对象有冲突吗?var saveData:SharedObject=SharedObject.getLocal(“MyDesign”);干杯,是的,说得好。只需将所需的所有数据存储在一个共享对象下。你好,德雷克,刚刚发现了另一件事。您是否附加了它,以便将还原功能绑定到衬衫的stopDrag功能中?或者它只是存储数据-如果是这样,我有一个保存btn。。。我为迟来的答复道歉。如果要同时创建保存按钮和加载按钮,则必须重新编写代码。此代码为每个版本保存它。使加载功能工作的方便信息,与保存相反。bones_mc.x=mySO.data.my_x;bones_mc.y=mySO.data.my_y;
import flash.net.SharedObject;
import flash.geom.Point;
import flash.events.MouseEvent;

var restore_values:SharedObject=SharedObject.getLocal("dress_up_game");

if(!restore_values.data.shirt_point){
    restore_values.data.shirt_point=new Point(shirt.x,shirt.y);
    restore_values.flush();
}

restore_btn.addEventListener(MouseEvent.CLICK,restore);
function restore(e:MouseEvent){
    if(restore_values.data.shirt_point){
        shirt.x=restore_values.data.shirt_point.x;
        shirt.y=restore_values.data.shirt_point.y;
    }
}

shirt.addEventListener(MouseEvent.MOUSE_DOWN,start_shirt_drag);
function start_shirt_drag(e:MouseEvent){
    shirt.startDrag()


}
shirt.addEventListener(MouseEvent.MOUSE_UP,stop_shirt_drag);
function stop_shirt_drag(e:MouseEvent){
    shirt.stopDrag()
    restore_values.data.shirt_point=new Point(shirt.x,shirt.y);
    restore_values.flush();
}