ページ 11

if

Posted: 2009年10月15日(木) 19:50
by けん
あの・・単発なんですが、分からなかったので質問させてください
龍神録で
もしも最後の弾幕ならばという条件はどう書けばいいのか分からなくて
困ってるのですが、誰か助けてください><

Re:if

Posted: 2009年10月15日(木) 21:52
by
1.新規フラグを作ります。
2.通常状態ならフラグが0です。
3.最後の弾幕が発動された瞬間フラグを1にします。
4.もしフラグが1のときは{処理}を行う。
5.必要であれば{処理}が終わった後にフラグを0に戻します。

そうすることで、最後の弾幕が発動したときに行う処理を実行することができます。

見当違いでしたらすいません。

Re:if

Posted: 2009年10月15日(木) 23:45
by Justy

>最後の弾幕ならばという条件

 50章で見ています。

 弾幕の進行状況は boss.kndでだと思われます。
 で、弾幕の最大数は
[color=#d0d0ff" face="monospace]
boss.danmaku_num[0]=1;//中ボスが何個目までの弾幕を出すか
boss.danmaku_num[1]=4;//最後に出るボスが何個目までの弾幕を出すか(47)
[/color]

というコードを見ての通り、ボスごとに定義されています。

 これらの値 - 1が boss.kndの値と一致すれば
最後の弾幕中であると判定できるのではないでしょうか。

Re:if

Posted: 2009年10月16日(金) 00:54
by けん
if(boss.danmaku_num[1]==-1){
}
ではうまくいきませんでしたorz

Re:if

Posted: 2009年10月16日(金) 00:58
by Justy

>>これらの値 - 1が boss.kndの値と一致すれば
boss.danmaku_num[1]==-1

 「これらの値 - 1」の「これらの値」と、boss.kndはどこで比較してるのですか?

Re:if

Posted: 2009年10月16日(金) 01:20
by けん
boss.danmaku_num[1]-boss.knd
ということでしょうか?

Re:if

Posted: 2009年10月16日(金) 02:25
by Justy

>boss.danmaku_num[1]-boss.knd

 まぁその方向で突き詰めていっても判定はできなくはないですが、
そのままでは前は比較になっていたのが、今度はただの引き算になって
-1が消えてしまいました。


 先にこれらの値の値と書きましたが、よくみてみれば boss.danmaku_num[1]だけで
良さそうです。

 従って、これらの値、改め boss.danmaku_num[1] - 1が boss.kndの値と
一致すればいいということは、日本語の通りそのまま当てはめれば
[color=#d0d0ff" face="sans-serif]boss.danmaku_num[1] - 1 == boss.knd[/color] ということなります。

Re:if

Posted: 2009年10月16日(金) 03:02
by けん
なるほど・・
自分は何か勘違いしてました・・
おかげで無事、条件を作れました。ありがとうございます