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

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

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

■18912 / inTopicNo.1)  気力消費のスペシャルパワーに関して
  
□投稿者/ hakutokuon -(2006/07/29(Sat) 00:08:07) [ID:o6TVWHmz]
    初めまして、hakutokuonと申します。
    最近SRCのシナリオを書こう!と思い立ったものですが
    関数やらなにやら、まだまだよくわからず、思い通りの動作をしてくれません。
    そこで、お力をお貸しねがえないでしょうか。

    【求めたい動作:スペシャルパワーをSPではなく気力消費にする】

    ・まず、以下のようなオリジナルSPをsp.txtに追加しました。
    (名称を変えていますが、基本的に上は『愛』、下は『加速』です)

     Affection, えふぇくしょん
     愛, 0, 自分, 即効, -, -, 愛
     イベント=Affection使用
     味方の全ユニットのHPを全快する。気力70消費。

     Hasten, へいすん
     加, 0, 自分, ターン, -, -, 加速
     イベント=Hasten使用
     1ターンの間、移動力+2。気力10消費。

    ・そしてinclude.txtに以下のようなテキストを追加。

     Affection使用:
     If Morale(対象ユニットID) >= 120 Then
      SpecialPower 対象ユニットID 愛
      Morale(対象ユニットID) = Morale(対象ユニットID) - 70
     Else
         Talk システム パイロットの気力が足りません。;気力が120必要です。
    End
     EndIf
     Return

     Hasten使用:
     If Morale(対象ユニットID) >= 60 Then
        SpecialPower 対象ユニットID 加速
        Morale(対象ユニットID) = Morale(対象ユニットID) - 10
     Else
        Talk システム パイロットの気力が足りません。;気力が60必要です。
        End
     EndIf
     Return

    動作的には
    SPを使用→include内のイベント『**使用』に移行。
    気力判定をし、気力が必要以上あったらSp使用、なかったら
    それを示すテキスト文章という流れなのですが、
    正常に動作してくれません。
    おそらくIfの条件式 Morale(対象ユニットID) が間違っているのでしょうが、
    どうすれば使用パイロットの気力を取り出せるのかがわかりません。

    よろしければどなたか、ご教授ねがいます。
引用返信/返信 削除キー/
■18914 / inTopicNo.2)  Re[1]: 気力消費のスペシャルパワーに関して
□投稿者/ 中箱 -(2006/07/29(Sat) 00:56:34) [ID:7vERprld]
    はじめまして、中箱と申します。


    とりあえず一つ気になったのですが

    >・そしてinclude.txtに以下のようなテキストを追加。
    ええと、include.eve ではないのでしょうか? SRCが自動で読み込むのはinclude.eveです。
    別個にファイル名を指定すればtxtファイルでも読み込んでくれますが・・


    ちゃんと指定してあるのでしたら失礼しました。
    では。
引用返信/返信 削除キー/
■18915 / inTopicNo.3)  include.eveでした
□投稿者/ hakutokuon -(2006/07/29(Sat) 01:18:32) [ID:o6TVWHmz]
    初めまして、中箱さん。
    …ってすいません、.txtの方は記述ミスです。
    一応、データはinclude.eveの方に書き込んでいます。

    引き続き、情報提供お願いします。
引用返信/返信 削除キー/
■18917 / inTopicNo.4)  (2:30ごろ大きく追記しました)(Re[3]: include.eveでした
□投稿者/ 中箱 -(2006/07/29(Sat) 01:52:48) [ID:7vERprld]
    2006/07/29(Sat) 02:37:18 編集(投稿者)

    includeについては記述ミスでしたか、こちらこそ失礼しました。


    ・・はじめに聞くべきだったかと思いましたが
    「正常に動作してくれません」とはどのような状態なのでしょう?
    エラーが出てしまうのか、エラーは出ないが結果が予定していた違うのか、などあると思いますが。

    できれば、例えば
    「気力は130あるのに、Affectionを使って「愛」の効果が出ない」
    など、具体的に書いていただけると助かります。



    私が今現在で気付いたものとしては
    ・Talkコマンドの記述が間違っている

    ・SP:Hastenの持続期間が違う
    ヘルプの「スペシャルパワーデータ」項に
    イベント=サブルーチン名 については
    >サブルーチンは即時型の効果と同様に持続期間が「即効」であればスペシャルパワーを使った瞬間に、そうでなければ持続期間の終了時に実行されます。
    とあります。
    よって、Hastenの持続を「ターン」にしてしまうと、
    実際にSP加速の効果がかかるのは次の自軍フェイズの開始時になってしまいます。


    (*以下、2:30ごろ追記しました。一度に書かず混乱させたのならすいません。
    ・気力を、Morale関数を使って直接増減させる事はできない
    パイロット操作関連のイベントコマンドにそれ用のコマンドがあります。


    実働させていないので恐縮ですが、以上の点を改めてみてください。
    その上で正常に動作しないようであれば、イベント内容や動作させた場合の状況もいっしょに書いていただけると幸いです。
    では
引用返信/返信 削除キー/
■18918 / inTopicNo.5)  Re[1]: 気力消費のスペシャルパワーに関して
□投稿者/ 黒川 -(2006/07/29(Sat) 05:28:56) [ID:pCfzchsP]
    どうも黒川と申します。
    Moraleは、HPやSPと異なり、式の左辺値としては使用できないんですよね(^_^A
    「式の左辺値として使用できます」と書かれている物だけがそういった使い方をする事ができます。

    この様に直せば、おそらくhakutokuonさんの望む作動が再現できるかと思います。

    Affection使用:
     If Morale(対象ユニットID) >= 120 Then
      SpecialPower 対象ユニットID 愛
      IncreaseMorale 対象パイロット -70
     Else
     Talk システム
    パイロットの気力が足りません。;気力が120必要です。
    End
     EndIf
     Return
引用返信/返信 削除キー/
■18920 / inTopicNo.6)  解決できました。
□投稿者/ hakutokuon -(2006/07/29(Sat) 12:46:19) [ID:o6TVWHmz]
    黒川さん、中箱さん、お二人のアドバイスのおかげで解決しました。
    ありがとうございます。

    一応…私の間違っていた点をリストアップしておきました。

    ・Moraleを式の左辺値として使用していた。
    →気力減少を確認できず。

    ・Talkの記述式を間違っていた。
    →メッセージが正常に作動せず。

    ・SP:Hastenの持続期間が間違っていた。
    →Hastenが正常に作動せず。
    (動作テストはほとんどお手軽に使えるHastenのみでやっていたので、誤解にぜんぜんきづかず…)


    上の間違いに全く気づかず、別な部分に問題があるんじゃないかと誤解したために
    間違いに気づけなかったようです。
    ……って、どれもHelpをよく見ていれば書いてあるミスでしたね…。

    お手をわずらわせてすみません。
    大変助かりました。

    ちなみに
    >「正常に動作してくれません」とはどのような状態なのでしょう?
    エラー文章は出ませんが、思い通りの動作をしてくれない…ということです。
    上のを全てなおすと動作してくれました。

    あと、最初の書き込み
    >おそらくIfの条件式 Morale(対象ユニットID) が間違っているのでしょうが、
    は、Helpを見るとMorale関数の記述の仕方は「Morale(パイロット名)」となって
    いるので、他の方の作ったシナリオを見様見真似で(パイロット名)の部分を(対象
    ユニットID)でしたけど、パイロット名じゃないし
    間違っているんじゃないか…?と思った次第です。
    が、正しかったようですね。


    お二人には丁寧に解答していただき、ありがとうございました。
解決済み!
引用返信/返信 削除キー/



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

このトピックに書きこむ

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

Pass/

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

- Child Tree -
- Antispam Version -