Flash AS3:等距网格运动

1 flash actionscript-3 flash-cs4

对于这个 Flash AS3 问题,真的非常需要帮助。我目前正在创建一款类似于咖啡馆世界、farmville 等(社交游戏)的游戏。想知道当鼠标移动时如何使物体沿等距方向移动。例如,当我想要建造一座房子时,我单击房屋建造按钮,当我的鼠标移动时,我希望我的房子对象(存储在库中)与我的鼠标一起沿等距方向移动。为了让大家更好地了解我正在寻找的解决方案,请单击此链接查看草图:http://www.flickr.com/photos/58743938@N07/5497636770/

所以我想要这样的东西,只有当我的鼠标移动比原始鼠标位置多 20 个单位时,我的房屋项目才应该移动到下一个网格。

如果有任何不清楚的地方请向我澄清。多谢!:)

Tre*_*yle 5

您可能想探索 as3isolib... http://code.google.com/p/as3isolib/

这里有一个很好的介绍... http://www.gotoandlearn.com/play.php?id=136

你所看到的可能是这样的......

house.x = Math.floor(this.mouseX/SQUARE_SIZE)*SQUARE_SIZE;
house.y = Math.floor(this.mouseY/SQUARE_SIZE)*SQUARE_SIZE;
Run Code Online (Sandbox Code Playgroud)

您可能需要对鼠标位置执行一些 globalToLocal 或反之亦然,再加上网格的偏移量等。