这段代码是用来实现Flash AS2中的图片复制和拖动功能的。以下是代码解析:
首先定义了两个变量copiedClip
和originalClip
,分别用于存储被复制的影片剪辑和原始影片剪辑。
然后使用for循环遍历9个影片剪辑,并为每一个剪辑设置鼠标左键抬起事件处理程序和鼠标右键按下事件处理程序。
当鼠标左键抬起时,如果当前没有已复制的影片剪辑,则将该剪辑作为原始影片剪辑存储,并通过调用duplicateMovieClip()
方法复制该剪辑。接着调用startDrag()
方法开始拖动并设置全局onMouseMove事件处理程序,以跟随鼠标移动。
当鼠标右键按下时,如果当前有已复制的影片剪辑且不是原始影片剪辑,则删除已复制的影片剪辑;如果当前没有已复制的影片剪辑且是原始影片剪辑,则创建新的副本替换当前已删除的对象。
最后,通过设置全局onMouseDown事件处理程序,在有已复制的影片剪辑时停止拖动并将其放置在当前鼠标位置,并将其添加到舞台上。同时清除对被复制的影片剪辑和原始影片剪辑的引用,并删除复制后的影片剪辑。
需要注意的是,这段代码中缺少了判断CTRL键是否按下的逻辑,因此无法实现原本预期的功能。如果想要实现类似的功能,需要在onMouseDown事件处理程序中添加该逻辑。另外,由于Flash AS2已经过时,建议使用更加先进的技术实现类似的功能。