まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
**************************************************************
追記
ON BREAK GOTO @ラベル命令ですが、+ボタンを押した瞬間に割り込みで命令が実行されるようなのでポーズボタンに使用するには適していないようです。終了処理ボタンとして使用するのが良さそうです。
**************************************************************
プチコン4で作られたプログラムを実行した時に+ボタンを押すと通常はプログラムが終了します。
でも、普通のソフトだとポーズボタンとして使われている事が多いですよね。
なのでプチコン4で作られたゲームを遊んでいる時に間違って+ボタンを押してしまって終了したくないのに終了してしまった!って事が良くありました。
なんとか+ボタンをポーズボタンとして使用できないか・・・と思っていたのですが良い命令がありました。
「ON BREAK GOTO @ラベル」命令なのですが公式のリファレンスには「ユーザーがプログラムを停止させようとした時のジャンプ先を登録する」とあります。
つまり+ボタンを押した時にいきなり終了させるのではなく、登録したラベルにジャンプさせる事が出来るんです。
これを上手く使うと+ボタンをポーズボタンとして使えそうだなぁと思ってやってみました。
WHILE 1
@PAUSE_RETURN
ON BREAK GOTO @PAUSE
VSYNC 1
~
色々な処理
~
WEND
@PAUSE
WHILE 1
VSYNC 1
~
PAUSE画面処理
~
ON BREAK GOTO @PAUSE_OUT
WEND
@PAUSE_OUT
GOTO @PAUSE_RETURN
まずメインループ中に+ボタンが押されるとON BREAK GOTO @PAUSEによって
@PAUSEにGOTOします。
その後、ポーズループの中で+ボタンが押された時にON BREAK GOTO @PAUSE_OUT
によって@PAUSE_RETURNにGOTOする感じです。
ポーズループの時にメインループに戻るのかプログラムを終了させるのかを選べるようにしておけば+ボタンをポーズボタンとして使用可能です。
ただ、この方法だとGOTOしまくりで大丈夫なの!?って言うのと、下手に作るとプログラムを終了する事が出来ないプログラムになってしまうので注意が必要です。(+ボタン長押しでの強制終了は可能)
それとON BREAK GOTOの想定された使い方なのか微妙なのでエラーが出たりするかもしれません。
追記
ON BREAK GOTO @ラベル命令ですが、+ボタンを押した瞬間に割り込みで命令が実行されるようなのでポーズボタンに使用するには適していないようです。終了処理ボタンとして使用するのが良さそうです。
**************************************************************
プチコン4で作られたプログラムを実行した時に+ボタンを押すと通常はプログラムが終了します。
でも、普通のソフトだとポーズボタンとして使われている事が多いですよね。
なのでプチコン4で作られたゲームを遊んでいる時に間違って+ボタンを押してしまって終了したくないのに終了してしまった!って事が良くありました。
なんとか+ボタンをポーズボタンとして使用できないか・・・と思っていたのですが良い命令がありました。
「ON BREAK GOTO @ラベル」命令なのですが公式のリファレンスには「ユーザーがプログラムを停止させようとした時のジャンプ先を登録する」とあります。
つまり+ボタンを押した時にいきなり終了させるのではなく、登録したラベルにジャンプさせる事が出来るんです。
これを上手く使うと+ボタンをポーズボタンとして使えそうだなぁと思ってやってみました。
WHILE 1
@PAUSE_RETURN
ON BREAK GOTO @PAUSE
VSYNC 1
~
色々な処理
~
WEND
@PAUSE
WHILE 1
VSYNC 1
~
PAUSE画面処理
~
ON BREAK GOTO @PAUSE_OUT
WEND
@PAUSE_OUT
GOTO @PAUSE_RETURN
まずメインループ中に+ボタンが押されるとON BREAK GOTO @PAUSEによって
@PAUSEにGOTOします。
その後、ポーズループの中で+ボタンが押された時にON BREAK GOTO @PAUSE_OUT
によって@PAUSE_RETURNにGOTOする感じです。
ポーズループの時にメインループに戻るのかプログラムを終了させるのかを選べるようにしておけば+ボタンをポーズボタンとして使用可能です。
ただ、この方法だとGOTOしまくりで大丈夫なの!?って言うのと、下手に作るとプログラムを終了する事が出来ないプログラムになってしまうので注意が必要です。(+ボタン長押しでの強制終了は可能)
それとON BREAK GOTOの想定された使い方なのか微妙なのでエラーが出たりするかもしれません。
PR
この記事にコメントする
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
リンク
カテゴリー
最新記事
(04/04)
(12/26)
(12/25)
(11/17)
(10/11)
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
最古記事