作者hhg4092 ()
看板GameDesign
标题Re: [请益] 地图卷动问题
时间Sat Sep 27 22:12:52 2008
※ 引述《hhg4092 ()》之铭言:
: 请问有人碰过这样的情况吗?
: 就是我写了个图片卷动程式,在本机上测试OK,不会卷超过视窗
: 但一拿到别台PC上,就会卷超过,和原来预想的有落差,
: 问题是,我边界值设定是常数,而且跟本没改变过.
------------------
| | |
| A | B |
| | |
------------------
这是视窗的判定区,目前只有写右卷,a区内,按右人物会向右走,
碰到b区,人物只在原地动作,地图向左卷动,
地图一开始贴左上角原点(0.0),右卷,则向左减变负值
if(Ptrp1->Getx()>500.0f) //走到screen右边区间,也就是b区
{
//地图卷到底,地不动,人动
if(PtrMap->Getx()<-1827.0f) //图片宽是2627,视窗大小是800,2627-800=1827
{
if(Ptrp1->Getx()>730.0f) ; //视窗的最右边,人物不位移
else
{
if(IsRightBarrier(Ptrp1)) ; //加之前先看有没有barrier
else Ptrp1->Xadd();
}
}
//地图还没到底,
else
{
if(IsRightBarrier(Ptrp1)) ; //加之前先看有没有barrier
else
{
barrierMove();
ItemMove();
PtrMap->Xsub();
}
}
else //在a区内
{
if(IsRightBarrier(Ptrp1)) ; //加之前先看有没有barrier
else Ptrp1->Xadd();
}
Ptrp1->ChangeFrame(); //人物动作图切换
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.195.7.64
1F:推 killman:我建议数字部份不要直接写在code里面 10/01 00:08
2F:→ killman:用imgWidth winWidth这种表示方法比较确实一点 10/01 00:09
3F:→ hhg4092:了解~~ 10/01 00:38