【发布时间】:2011-08-31 08:47:22
【问题描述】:
我有一个 4*4 的网格。我有 16 个电影剪辑散布在网格周围。每个 MovieClip 是 40*40 并且它们是可拖动的。用户可以将影片剪辑拖放到网格中。每个剪辑都有正确的位置。例如对于
剪辑 0 : x=0 , y=0
剪辑 1:x=40,y=0
剪辑 2:x=120,y=0
剪辑 3:x=160,y=0
剪辑 15:x=160,y=160
当所有剪辑都处于正确位置时,游戏结束。所以它很容易检查游戏结束。使用循环和 ENTER_FRAME 来监视所有剪辑的位置。
有一个小问题我无法解决。当用户拖动剪辑时,无论它是否正确,它都会捕捉到网格中的位置。在这种情况下,可捕捉位置将是 40 的倍数。两个剪辑可能会捕捉到一个位置,必须避免这种情况。如果我在 (40,120) 处放置了一个剪辑,我应该无法将另一个 MovieClip 放在那里。实际上,我应该能够得到一些迹象,告诉我这个位置已被占用。
使用指示,我将让 MovieClip 返回到原始位置。
如何才能做到这一点。 MovieClips 的注册点在左上角。
【问题讨论】:
标签: arrays flash actionscript-3 logic