我有一个名为gameSprite
的精灵,它包含游戏中的所有元素。我有一个名为myCell
的对象,我正在尝试让单元格始终位于屏幕中间,即800x600。
这个有效:
var panX:Number = myCell.x - 800.0 / 2;
var panY:Number = myCell.y - 600.0 / 2;
但我的问题是我试图让玩家放大和缩小。
放大和缩小会调整gameSprite.scaleX
和gameSprite.scaleY
(请注意,它们的scaleX始终等于scaleY)。
scaleX对于原始尺寸是1.0,并且它越低,播放器缩小的越多。
然后我改变它以便它可以使用缩放,但由于某种原因它不起作用:
var panX:Number = myCell.x - 800.0 / 2 / gameSprite.scaleX;
var panY:Number = myCell.y - 600.0 / 2 / gameSprite.scaleY;
我不知道自己做错了什么。
这是没有任何缩放的屏幕截图:
我缩放得越多,相机离0,0位置越远:
答案 0 :(得分:1)
基本上,您希望能够从中心点缩放对象。 请看以下链接:
http://ryanbosinger.com/blog/2008/actionscript-30-scale-object-from-center-point/