将瓷砖画布置于特定瓷砖上

时间:2013-06-10 11:20:02

标签: canvas easeljs

我有一个用画布和EaselJS生成的二维等距地图。

对于每个磁贴和播放器,我都有x和y坐标。

你可以在这里看到我的地图原型:http://8*8.1*9*1.1*6*1.2*35/moteur_iso/ REMOVE *(播放器右侧的瓷砖尖端是“非步行”。

我想把canva放在玩家的中心..我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点,一种方法是将玩家的等距位置转换为笛卡尔位置(以像素为单位),然后更新地图的注册点,例如:

myMap.regX -= (myMap.player.posX - myMap.player.posY) * myMap.tilesHeight;
myMap.regY += (myMap.player.posX + myMap.player.posY) * myMap.tilesHeight/2;

如果玩家的位置是x = 1且y = 0,它将向右移动地图42px并向上移动21px。 无论初始位置如何,玩家都会居中。