【发布时间】:2010-04-23 12:21:53
【问题描述】:
您好,为了简短起见,假设我有一个 400x400 像素大小的舞台,但我绘制了一张 1000x1000 像素大小的地图。我希望我的播放器能够在舞台上“走动”,但似乎 stage.x 和 stage.y 是只读的?是否有任何方法或方式让舞台“滚动”,而无需移动地图上的每个对象?
【问题讨论】:
标签: actionscript-3 actionscript stage
您好,为了简短起见,假设我有一个 400x400 像素大小的舞台,但我绘制了一张 1000x1000 像素大小的地图。我希望我的播放器能够在舞台上“走动”,但似乎 stage.x 和 stage.y 是只读的?是否有任何方法或方式让舞台“滚动”,而无需移动地图上的每个对象?
【问题讨论】:
标签: actionscript-3 actionscript stage
不要移动舞台,移动 1000x1000 的物体,然后看起来整个物体都在移动。
【讨论】:
您应该看到像窗户一样的舞台。根据窗口的大小,您可以看到它后面的所有内容。你不能改变舞台的大小,也不能移动它。
就像一个窗口,您可以测量舞台的大小。例如,您可以使用它通过动作脚本在舞台上导航电影剪辑。
为什么不把地图和其他对象放在一个单独的层中,然后移动地图。其他对象(例如,告诉用户其在地图上的位置的大红点)位于地图上的固定位置。只需按照红点的路径移动地图即可。
不完全确定你想做什么,但不可能移动舞台。
【讨论】:
您可以将所有影片剪辑(播放器和地图,如果需要)放在一个影片剪辑中,仅将该影片剪辑放在舞台上并移动它。
但如果您只想滚动地图,只需移动地图即可。
【讨论】:
其他答案都是正确的,但除了移动地图还有其他选择:
在地图的 scrollRect 属性上附加一个矩形。移动该矩形将具有与移动舞台相同的明显效果。
使用 scrollRect 与移动世界有一些小的优点和缺点,但请同时尝试它们,看看哪个更适合你。
【讨论】: