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

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

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

■16903 / inTopicNo.1)  battle.txtの使い方
  
□投稿者/ イロネ -(2005/07/03(Sun) 18:02:20) [ID:iKjqqsLg]
    2005/07/03(Sun) 18:05:35 編集(投稿者)

    始めまして

    2.15より実装されたバトルコンフィグについて関数の扱いで今ひとつわからない点がございましたので、質問させて頂きます。

    攻撃側の属性によって回避値の公式を変える関数を作っています。

    battle.txt上では

    回避補正
    Call(回避属性,攻撃側ユニットID,防御側ユニットID,武器番号) + 運動性

    とし、関数上で攻撃側が「魔」属性を持っている場合は反応を、そうでない場合は回避を関数「回避属性」戻り値として返すようにしました。

    ここで問題となったのが、
    攻撃側ユニットID、防御側ユニットID、武器番号というバトルコンフィグ独自の変数に関する問題です。

    関数上でこれらの変数を引数として渡した場合、
    先攻、後攻に関わらず、攻撃を仕掛けた側が常に攻撃側ユニットIDなのか
    それとも敵の反撃時には、攻撃を仕掛けた側が防御側IDに変更されるのか。

    また、武器番号の扱いは反撃時は、反撃武器の番号が渡されるのか。

    色々と検証してみましたが上手く行きません。
    命中予測値と実際の命中値が食い違っていたり、攻撃側、防御側共に攻撃側の数値が使用されていたりしてしまいました。

    参考までに自分で作った関数を張り付けてみます。

    回避属性:
    Set アタックユニット PilotID(Args(1))
    Set ガードユニット PilotID(Args(2))
    Set アタックウェポン Args(3)
    If Info(ユニット,アタックユニット,武器, アタックウェポン, 属性所有, 物) = 1 Then
    Set 回避種別 Info(ガードユニット,回避)
    ElseIf Info(ユニット,アタックユニット,武器, アタックウェポン, 属性所有, 魔) = 1 Then
    Set 回避種別 Info(ガードユニット,反応)
    Else
    Set 回避種別 ((Info(ガードユニット,回避) + Info(ガードユニット,反応)) / 2)
    EndIf
    Return 回避種別


    この内容では、予測値には攻撃側、反撃側共に攻撃側の回避値を使った値が表示され、実際の回避には、自分の回避値を使った値になってしまい、0%と表示されているのに命中してしまうという奇妙な現象が起こってしまいました。

    ここまで内容を弄る関数はサポート外かも知れませんが、もしわかる方がいらっしゃればよろしくお願いします。

    また回避補正の値をIf文で変更するというやり方をもっと簡単に出来る方法をご存知でしたら教えて頂ければと思います。
引用返信/返信 削除キー/
■16909 / inTopicNo.2)  Re[1]: battle.txtの使い方
□投稿者/ gaine -(2005/07/04(Mon) 02:55:49) [ID:fWmDQdEd]
    はじめまして。gaineです。

    まず、「攻撃側ユニットID、防御側ユニットID、武器番号」について。
    攻撃(あるいは反撃)によって変化します。
    先攻、後攻は関係ありません。
    サブルーチンに変数を渡したときに、Talk システムあたりで表示させればわかりやすいかと思います。

    そして、書かれている関数で気になったのは、「Info(ユニット,アタックユニット」の部分です。
    拝見したところ、アタックユニットにはパイロットIDが入っていると思うのですが、いかがでしょう?
    ここを直せば希望通りに動いたりしませんでしょうか?
引用返信/返信 削除キー/
■16919 / inTopicNo.3)  Re[2]: battle.txtの使い方
□投稿者/ イロネ -(2005/07/04(Mon) 20:52:23) [ID:iKjqqsLg]
    始めまして、イロネです。

    ご指導の通り、アタックユニット、ガードユニットには攻撃側、防御側の引数をそのまま入れて、回避と反応を参照する時だけ、Info(Pilot(ガードユニット),回避)のようにしました。

    その結果、今のところ期待通りに動きました。
    細かい問題点等、今後も浮上するかも知れませんが検証していきます。

    回答ありがとう御座いました。
解決済み!
引用返信/返信 削除キー/



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

このトピックに書きこむ

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

Pass/

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

- Child Tree -
- Antispam Version -