SRC質問掲示板Mk2

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

■22808 / 親記事)  同一ターン内に特定のパイロットを複数撃墜を取得するには?
  
□投稿者/ Shun -(2014/07/23(Wed) 14:04:30) [ID:hW3IgLQg]
    敵の全滅を勝利条件に設定した上で、
    「パイロットA、パイロットB、パイロットCを同一ターン内に撃墜して勝利条件を達成する」
    という熟練度獲得条件を設定したいのですが、うまくいかず困っています。

    以下のようにしています。

    ##########

    破壊 パイロットA:
    Incr ネームド撃墜 1
    Set ネームド撃墜開始 ターン数
    Exit

    破壊 パイロットB:
    Incr ネームド撃墜 1
    Set ネームド撃墜開始 ターン数
    Exit

    破壊 パイロットC:
    Incr ネームド撃墜 1
    Set ネームド撃墜開始 ターン数
    Exit

    全滅 敵:
    If ネームド撃墜 = 3 Then
    If ターン数 = (ネームド撃墜開始) Then
    Talk システム
    熟練度を獲得しました。
    End
    EndIf
    EndIf
    Continue

    ##########

    パイロットA、B、Cを同じターンの内に撃破し、
    なおかつ他の敵も全滅させるという勝利条件を満たすことで熟練度獲得としたいのですが、
    上記の表記だと指定のパイロットを同一ターン内に全て倒しきれなかった場合…
    つまり別々のターンで倒した場合でも熟練度を獲得してしまうので、
    どこが間違っているか教えていただきたいと思います。
引用返信/返信 削除キー/
■22809 / ResNo.1)  Re[1]: 同一ターン内に特定のパイロットを複数撃墜を取得するには?
□投稿者/ テルス -(2014/07/24(Thu) 13:45:50) [ID:96UMAww3]
    それぞれ撃墜時にSet関数にてターンを取得しておられるようですが
    ここの部分が多分問題なのでは無いかと

    A,B,Cどのキャラでも撃墜時にSet関数にてターン数を取得しているため
    別のターン時に撃墜した場合、それより前のターンに取得したターン数を恐らく上書きしてしまっています

    なので相手撃墜時のターン数を取得する際に既に取得しているかどうかをif関数で確認するように処理してやれば、問題は無いかと思います
    ご参考になれば幸いです
引用返信/返信 削除キー/
■22810 / ResNo.2)  Re[2]: 同一ターン内に特定のパイロットを複数撃墜を取得するには?
□投稿者/ Shun -(2014/07/24(Thu) 22:25:49) [ID:hW3IgLQg]
    アドバイスをもとに、
    以下のようにターン数とともに
    新たに対象のパイロットの一人を初めて撃墜したかを取得させ、
    それの有無でターン数の取得の確認をするようにしました。

    ##########

    破壊 パイロットA:
    Incr ネームド撃墜 1
    If ネームド初撃墜 Exit
    Set ネームド初撃墜
    Set ネームド撃墜開始 ターン数
    Exit

    破壊 パイロットB:
    Incr ネームド撃墜 1
    If ネームド初撃墜 Exit
    Set ネームド初撃墜
    Set ネームド撃墜開始 ターン数
    Exit

    破壊 パイロットC:
    Incr ネームド撃墜 1
    If ネームド初撃墜 Exit
    Set ネームド初撃墜
    Set ネームド撃墜開始 ターン数
    Exit

    全滅 敵:
    If ネームド撃墜 = 3 Then
    If ターン数 = (ネームド撃墜開始) Then
    Talk システム
    熟練度を獲得しました。
    End
    EndIf
    EndIf
    Continue

    ##########

    これで、ターンをまたいで対象パイロットを撃墜した時には
    ターン数が上書きされず熟練度が獲得できないようになり、
    正常に機能するようになりました。
    このたびはどうもありがとうございました。
解決済み!
引用返信/返信 削除キー/



スレッド内ページ移動 / << 0 >>

このスレッドに書きこむ

Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -