まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
なんとかリプレイが上手く再生されるようになったようです^^;
でも、家の環境での話なので他の環境で上手く行くのかどうかはまだわかりませんが・・・
なにが原因だったかと言うと、やはり変数の初期化がおかしくて、具体的には配列変数の初期化が上手くいってなかったようです。
配列の初期化を↓のようにes_findを使ってやっていたのですが・・・
*************************************
enemy=0 ;検索開始番号
repeat
es_find enemy,0,enemy ;敵(8)スプライト検索
if enemy=-1 : break ;見つからなかったらループ終了
ef.enemy=0
et.enemy=0
espeed.enemy=0
reh.enemy=0
kaiten12.enemy=0
kaiten13.enemy=0
kaiten16.enemy=0
pang91.enemy=0
jikitamaname.enemy=0
eh.enemy=0
ename.enemy=0
eneh.enemy=0
enehx.enemy=0
enehy.enemy=0
eff.enemy=0
es_kill enemy
enemy++
loop
************************************
この方法だと完璧に全ての配列変数が初期化されてなかったようで
↓のような方法で全ての配列変数を0にするように変えると上手く動くようになりました。
*************************************
enemy=0 ;検索開始番号
repeat
ef.enemy=0
et.enemy=0
espeed.enemy=0
reh.enemy=0
kaiten12.enemy=0
kaiten13.enemy=0
kaiten16.enemy=0
pang91.enemy=0
jikitamaname.enemy=0
eh.enemy=0
ename.enemy=0
eneh.enemy=0
enehx.enemy=0
enehy.enemy=0
eff.enemy=0
es_kill enemy
enemy++
if enemy>1540 : break
loop
*************************************
この配列変数の初期化は起動時の1回目のプレイでは読み込みしていなかったので
起動時の1回目の時だけリプレイがおかしくなっていたようです。
これでリプレイは上手く動いてくれる・・・はず^^;
でも、家の環境での話なので他の環境で上手く行くのかどうかはまだわかりませんが・・・
なにが原因だったかと言うと、やはり変数の初期化がおかしくて、具体的には配列変数の初期化が上手くいってなかったようです。
配列の初期化を↓のようにes_findを使ってやっていたのですが・・・
*************************************
enemy=0 ;検索開始番号
repeat
es_find enemy,0,enemy ;敵(8)スプライト検索
if enemy=-1 : break ;見つからなかったらループ終了
ef.enemy=0
et.enemy=0
espeed.enemy=0
reh.enemy=0
kaiten12.enemy=0
kaiten13.enemy=0
kaiten16.enemy=0
pang91.enemy=0
jikitamaname.enemy=0
eh.enemy=0
ename.enemy=0
eneh.enemy=0
enehx.enemy=0
enehy.enemy=0
eff.enemy=0
es_kill enemy
enemy++
loop
************************************
この方法だと完璧に全ての配列変数が初期化されてなかったようで
↓のような方法で全ての配列変数を0にするように変えると上手く動くようになりました。
*************************************
enemy=0 ;検索開始番号
repeat
ef.enemy=0
et.enemy=0
espeed.enemy=0
reh.enemy=0
kaiten12.enemy=0
kaiten13.enemy=0
kaiten16.enemy=0
pang91.enemy=0
jikitamaname.enemy=0
eh.enemy=0
ename.enemy=0
eneh.enemy=0
enehx.enemy=0
enehy.enemy=0
eff.enemy=0
es_kill enemy
enemy++
if enemy>1540 : break
loop
*************************************
この配列変数の初期化は起動時の1回目のプレイでは読み込みしていなかったので
起動時の1回目の時だけリプレイがおかしくなっていたようです。
これでリプレイは上手く動いてくれる・・・はず^^;
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が特に好きで、並木学氏は最高!
ブログ内検索
最古記事