作者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
推 killman:我建議數字部份不要直接寫在code裡面 10/01 00:08
→ killman:用imgWidth winWidth這種表示方法比較確實一點 10/01 00:09
→ hhg4092:了解~~ 10/01 00:38