每当光标悬停在屏幕边缘附近时,如何移动图像

时间:2011-11-16 16:14:24

标签: actionscript-3 loops move slide

我需要为学校做这个项目,我很想念这一件事。我正在使用actionscript3并拥有一个房间的全景图片,只要鼠标光标悬停在屏幕边缘附近,我就会移动/滑动(左右)。我也想循环那个图像,这样你就可以永久地滑动它了。)

我试图找到一个脚本,但显然语言障碍对我来说太过分了。

1 个答案:

答案 0 :(得分:0)

首先考虑逻辑,然后再实现它:)

首先你需要为你的图像设置一个容器,为了让这个图像循环,你可以添加相同的图像

 - in front of the current image when the current image x > 0
 - after the current image when 
   image.x = - (image.width + stage.stageWidth )//in full screen 

要对此进行测试,您可以设置一个输入帧事件监听器,该监听器负责将容器x向一个方向移动

     //going right
     container.x += 10

     //going left
     container.x -= 10

总而言之,您只需要两张图片,并且一旦离开屏幕就会保持交换位置。

当你使这个部件工作时,你需要根据容器的位置计算出鼠标位置。

例如,为了使容器以最大速度向右移动,您需要将mouseX值接近0,以使容器不移动,mouseX值应等于stage.stageWidth / 2 ,屏幕的中心,以及容器以最大速度向左移动,mouseX值应为stage.stageWidth。

有了这个,你只需要计算出一个公式,它可以改变速度以及容器运动相对于这些值的方向。方向会根据正值或负值变化,速度会根据鼠标相对于屏幕中心的距离而减小或增加。

在输入框架事件监听器中,您将更改为:

     container.x += speed;

这应该可以帮助你入门;)