2dの横スクロールシューテイングを作っていて
背景をスクロールするまではいけるのですが(自機は固定せず、画面内を動き回る)、背景がある特定の座標値に来ると
スクロールをとめる、という動作をさせたいのですが、うまく動いてくれません
背景は、x軸:3840 y軸:480で
自機が 背景x=3200の位置に来たら、背景のスクロールを停止させたいです
if(右を押されたら){
自機x++して
背景xをーーする
}
if(stage_x>=-3200){
背景x+=0;
}
最後のif文で背景のスクロールを止めさせたいのですが
とまりません。
どのようにしたらいいですか?
背景スクロールのこと
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 背景スクロールのこと
「背景xをーーする」は止まっていないからではないですか?
「背景x+=0;」は0を足すと言う意味が無い動作をするので停止させることは出来ません。
if(stage_x>=-3200){なら「背景xをーーする」そのものを止めるべきです。
「背景x+=0;」は0を足すと言う意味が無い動作をするので停止させることは出来ません。
if(stage_x>=-3200){なら「背景xをーーする」そのものを止めるべきです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 背景スクロールのこと
一応、「背景x+=0;」の代わりに「背景xを++する」にすることで「背景xをーーする」を相殺するという方法もありますが、
わかりにくくなるのであまりおすすめはできません。
わかりにくくなるのであまりおすすめはできません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 背景スクロールのこと
softya みけCATさん、ありがとうございました。
もし(背景x<=-3200+32){
背景x=-3200+32;
}else もし(背景x>=0){
背景x=0;
}
として、キャラクタの移動制御と同じようにすれば停止させることができました。
もし(背景x<=-3200+32){
背景x=-3200+32;
}else もし(背景x>=0){
背景x=0;
}
として、キャラクタの移動制御と同じようにすれば停止させることができました。