SRC質問掲示板Mk2
(現在 過去ログ102 を表示中)

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

[ 最新記事及び返信フォームをトピックトップへ ]

■18530 / inTopicNo.1)  特殊な性格と被撃墜
  
□投稿者/ ふじま -(2006/05/25(Thu) 20:48:17) [ID:edk9V0PN]
    OG系の特殊な性格のパイロットの気力増減に関してなんですが、例えば味方が撃墜された場合、慎重という性格の味方ユニット全ての気力を+1するにはどうしたらよいのでしょうか?
引用返信/返信 削除キー/
■18531 / inTopicNo.2)  Re[1]: 特殊な性格と被撃墜
□投稿者/ 中箱 -(2006/05/25(Thu) 23:43:39) [ID:7vERprld]
    >例えば味方が撃墜された場合、慎重という性格の味方ユニット全ての気力を+1するにはどうしたらよいのでしょうか?

    味方が破壊された時に起こる「破壊イベント」を「常時イベントラベル」として作り、
    イベント内容を
     「Info関数」によって各味方の性格を調べ、
     それが例えば"慎重"であるならばそのパイロットの気力を+1
    ・・のようにすれば良いと思います。

    条件分岐やループ処理を行うには、ifコマンドやforeachコマンド、forコマンドなどがあります。


    ちなみに、ヘルプにはパイロットの性格について
    >機械、弱気、普通、強気、超強気のいずれかを選んでください
    と書いてありますが、
    現行の本体ではこれら以外の文字列でもエラーにならないようです。
    ヘルプの記述が間違っているのか、ヘルプに書かれているものが本来正しいものなのかまでは私には分かりませんが。


    また、特殊な性格をパイロット特殊能力の一種として・・例えば、
     ダミー能力=慎重,1
    のような形で持たせるのならば、
    Info関数のほかに「パイロット情報関数」の「Skill」関数も使えるはずです。


    書式なども含め、詳しくは本体付属のヘルプに載っていますので活用することをお勧めします。頑張ってください。
    では
引用返信/返信 削除キー/
■18532 / inTopicNo.3)  Re[2]: 特殊な性格と被撃墜
□投稿者/ ふじま -(2006/05/26(Fri) 00:15:46) [ID:edk9V0PN]
    回答ありがとうございます

    破壊 味方:
    ForEach 味方
    If Info(パイロット,性格) = "慎重" Then
    IncreaseMorale "ここ" 1
    Endif
    Next
    Return

    こんな感じになるかと思うんですが、"ここ"の部分に何を入れていいものなのか分からないのですorzそれ以外の部分でも間違いがあるやもしれません…。
引用返信/返信 削除キー/
■18533 / inTopicNo.4)  Re[3]: 特殊な性格と被撃墜
□投稿者/ 中箱 -(2006/05/26(Fri) 01:39:59) [ID:7vERprld]
    結論から言ってしまえば、
     IncreaseMorale 1
    でOKです。

    ヘルプの「イベントコマンド」の下のほう、「デフォルトユニット」に、
    >引数が省略可能なイベントコマンドは引数が省略されたときにデフォルトユニットに対して処理を行います。デフォルトユニットは次のいずれかの条件を満たすユニットです。
    >(中略)
    >・ForEachコマンドの対象になったユニット
    とありますので、 "ここ" の部分は省略可能となります。


    もしくは、
     IncreaseMorale 対象ユニットID 1
    でしょうか。
    まあ、今回の場合はわざわざこのような記述をする必要は無いわけですがー



    また、イベントの他の部分に関してですが、

    ・味方が破壊された時に必ず実行して欲しいイベントなので、
     「常時イベントラベル」にします。
     (詳しくはヘルプの「イベントラベル」項参照で)

    ・Info関数の書式が違います。
     書式に
    > Info([データ区分,]データ,情報種類,…)
     とあるように、"データ"の部分は省略できません。必ず指定する必要があります。
     (データ区分がパイロットならパイロット愛称などの指定が必要)
     この場合は変数「対象パイロット」が使えます。

    ・「Return」は、サブルーチンの終了時に普通用います。
     イベントラベルの場合は"イベントを終了"させる「Exit」コマンドが適切でしょう。


    以上のようなことから、

    *破壊 味方:
    ForEach 味方
    If Info(パイロット,対象パイロット,性格) = "慎重" Then
    IncreaseMorale 1
    Endif
    Next
    Exit

    で動作するかと。


    ついでに、ちと余談気味になりますが、
    Info関数や、「対象ユニットID」「相手ユニットID」「対象パイロット」「相手パイロット」・・・等の変数は色々と便利ですので
    使い方を覚えておいて損はないと思います。


    では長くなりましたがこれで。
引用返信/返信 削除キー/
■18534 / inTopicNo.5)  Re[4]: 特殊な性格と被撃墜
□投稿者/ ふじま -(2006/05/26(Fri) 03:59:11) [ID:edk9V0PN]
    ちゃんと動作しました。重ねて感謝いたします。

    前々からイベントラベルの前に*をちょくちょく見かけまして、これ何なのだろうと思っていた疑問まで解決したので非常に嬉しいです。

    ありがとうございました!
解決済み!
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

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

- Child Tree -
- Antispam Version -