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

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

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

■14624 / inTopicNo.1)  名前付きザコユニット用の名前について
  
□投稿者/ ドラモンスター(仮) -(2004/07/18(Sun) 03:10:17) [ID:57T32sOL]
http://www5f.biglobe.ne.jp/~dramonster/index.html
    私はドラモンスターです。

    ↓パイロットデータここから

    エレメント名前付き男性兵(汎用)
    $(外国人風男性名), エレメント出身者, BAAB, 80
    特殊能力
    S防御Lv1, 1
    切り払いLv1, 1
    術Lv1, 1
    浄化, 1
    135, 135, 145, 145, 150, 160, 弱気
    SP, 30, 根性, 1, 勇気, 5
    TO_Msoldier.bmp, T-Ogre.mid

    ↑パイロットデータここまで

    上記のパイロットデータは、タクティクスオウガのザコユニット再現用のデータです。
    愛称の部分にはCall関数で算出されるランダムな文字列が入り、
    その文字列の扱いに関して以下のような制約が存在します。
    因みに使用するCall関数の処理には、
    Localコマンド、Doコマンド、Switchコマンド、Ifコマンド以外使う予定はありません。

    ・出てくるたびに名前が変わるが、1つのマップで同名は1ユニットしか存在できない。
    ・味方に同名がいる場合、その名前の敵は出てこない。
    ・除名されたり死んだりして味方からその名前の者がいなくなった場合、再び敵として登場する可能性がある。

    列挙した仕様の殆どは変数の処理で再現可能ですが、
    肝心の名前を入れる変数(上記のデータでは「外国人風男性名」)に、
    どのタイミングでCall関数で算出した値を入れればいいのかがわかりません。
    教えていただけないでしょうか。
引用返信/返信 削除キー/
■14625 / inTopicNo.2)  Re[1]: 名前付きザコユニット用の名前について
□投稿者/ TomTom -(2004/07/18(Sun) 08:22:13) [ID:xuAeOXO7]
    2004/07/18(Sun) 08:24:19 編集(投稿者)

    TomTomです。

    まずこの場合、パイロットデータの愛称に直接変数を設定することは出来ません。
    #変数は使用出来ますが、「外国人風男性名」という変数名を与えても、
    #愛称が「$(外国人風男性名)」のパイロットすべてが、同じ名前になるだけです。

    また、愛称を記録するの変数名は、「外国人風男性名」などとパイロット別にせずに、
    「汎用パイロット愛称」など、すべての愛称が流動的なパイロットで共通にした方がよいでしょう。

    処理としては、パイロットデータにユニット特殊能力として
     パイロット愛称=$(汎用パイロット愛称[UnitID()])
    と追加して、Createした直後に「汎用パイロット愛称[UnitID()]」に名前を代入すればよいでしょう。

    #なお、パイロット愛称に直接「$(汎用パイロット愛称[UnitID()])」と設定しないのは、
    #該当個所では「UnitID()」関数が使用出来ないためです。

引用返信/返信 削除キー/
■14628 / inTopicNo.3)  Re[2]: 名前付きザコユニット用の名前について
□投稿者/ ドラモンスター(仮) -(2004/07/19(Mon) 03:42:46) [ID:57T32sOL]
http://www5f.biglobe.ne.jp/~dramonster/index.html
    No14625に返信(TomTomさんの記事)
    > 2004/07/18(Sun) 08:24:19 編集(投稿者)

    私はドラモンスターです。

    > TomTomです。
    >
    > まずこの場合、パイロットデータの愛称に直接変数を設定することは出来ません。
    > #変数は使用出来ますが、「外国人風男性名」という変数名を与えても、
    > #愛称が「$(外国人風男性名)」のパイロットすべてが、同じ名前になるだけです。

    愛称に配列変数が使えればよかったんですけど。

    > また、愛称を記録するの変数名は、「外国人風男性名」などとパイロット別にせずに、
    > 「汎用パイロット愛称」など、すべての愛称が流動的なパイロットで共通にした方がよいでしょう。

    私は返す値の種類が異なるサブルーチンをいくつか用意しており、
    「外国人風男性名」というのはそのサブルーチンに対応した配列変数の名前です。

    男性として設定されたユニットに女性の名前のパイロットが登場するのは変なので。

    > 処理としては、パイロットデータにユニット特殊能力として
    >  パイロット愛称=$(汎用パイロット愛称[UnitID()])
    > と追加して、Createした直後に「汎用パイロット愛称[UnitID()]」に名前を代入すればよいでしょう。

    代入自体は正常に行えましたが、これらのユニットの愛称算出時に不都合が起きます。
    Nickname関数やInfo関数による愛称の算出の際に
    一番最初に

    「外国人風男性名[UnitID()] = Call(外国人風男性名算出)」
    (↑「外国人風男性名」は、
      パイロットデータに追加したユニット用特殊能力「パイロット愛称」で指定した配列の名前で、
      「外国人風男性名算出」は、
      パイロットの名前を算出するために使用しているCall関数で使うサブルーチンの名前です。)

    を適用したパイロットの愛称が算出され、正常な値を返しません。
    これでは同名のパイロットがいるかどうかの判定も出来ないので、困っています。
    どうすればいいのでしょうか。

    > #なお、パイロット愛称に直接「$(汎用パイロット愛称[UnitID()])」と設定しないのは、
    > #該当個所では「UnitID()」関数が使用出来ないためです。

    個人的にはなぜ使用できないのかが気になります。
    使えることによる不都合は私には思い当たりません。
引用返信/返信 削除キー/
■14629 / inTopicNo.4)  Re[3]: 名前付きザコユニット用の名前について
□投稿者/ TomTom -(2004/07/19(Mon) 09:56:35) [ID:xuAeOXO7]
    2004/07/19(Mon) 11:38:39 編集(投稿者)

    > 私は返す値の種類が異なるサブルーチンをいくつか用意しており、
    > 「外国人風男性名」というのはそのサブルーチンに対応した配列変数の名前です。
    >
    > 男性として設定されたユニットに女性の名前のパイロットが登場するのは変なので。

    UnitID()を引数として渡しているので、Info関数で性別を調べればよいだけでしょう。

    また取得用の関数が複数あるなら、ユニット能力に「名前取得関数名=非表示 関数名」とでも付け、
    値によって処理を分岐させればよいでしょう。
    まあ、この辺は好みの問題なので、関数を分けたいならそれでかまいませんが。


    > 代入自体は正常に行えましたが、これらのユニットの愛称算出時に不都合が起きます。
    > Nickname関数やInfo関数による愛称の算出の際に

    せっかく変数に代入しているのですから、関数をなど使わずに直接、変数を参照すればよいだけだと思いますが。
    「外国人風男性名[UnitID()]」(当然「UnitID()」の部分は、使用する状況によって適宜、
    「対象ユニットID」などに変更してください)だけで、該当パイロットの愛称を取得できるはずですが?

    なお、IsVarDefined関数で「外国人風男性名[UnitID()]」を調べれば、関数で動的に設定された愛称であるかどうかが判ります。


    > これでは同名のパイロットがいるかどうかの判定も出来ないので、困っています。
    > どうすればいいのでしょうか。

    使用されている名前は配列「外国人風男性名」にすべて入っているので、総当りで同名の名前が無いかを調べてください。


    >>#なお、パイロット愛称に直接「$(汎用パイロット愛称[UnitID()])」と設定しないのは、
    >>#該当個所では「UnitID()」関数が使用出来ないためです。
    >
    > 個人的にはなぜ使用できないのかが気になります。
    > 使えることによる不都合は私には思い当たりません。

    そんな事を私が知っているわけはないので、バグ報告なり何なりかってにしてください。

引用返信/返信 削除キー/
■14634 / inTopicNo.5)  Re[4]: 名前付きザコユニット用の名前について
□投稿者/ ドラモンスター(仮) -(2004/07/19(Mon) 17:27:01) [ID:57T32sOL]
http://www5f.biglobe.ne.jp/~dramonster/index.html
    私はドラモンスターです。

    とりあえず私は出撃中のパイロット全ての愛称を調査し、
    現状で出撃中のパイロットとかぶらないようにします。
    出撃中のパイロットと同じ名前のザコが登場したら変ですから。

    それから私は現在読み込まれている作品に定義されている
    パイロットデータ及びノンパイロットデータの愛称を瞬時に算出する方法を知りたいです。
    そんな方法はなくて自分で変数を制御して扱うしかないのならそれで構いませんが。
引用返信/返信 削除キー/
■14636 / inTopicNo.6)  Re[5]: 名前付きザコユニbト用の名前について
□投稿者/ TomTom -(2004/07/19(Mon) 17:51:29) [ID:xuAeOXO7]
    2004/07/19(Mon) 18:02:24 編集(投稿者)

    > それから私は現在読み込まれている作品に定義されている
    > パイロットデータ及びノンパイロットデータの愛称を瞬時に算出する方法を知りたいです。
    > そんな方法はなくて自分で変数を制御して扱うしかないのならそれで構いませんが。

    Info(パイロットデータ(および、非戦闘員), [調べる愛称],グラフィック)
    とすれば、データ上に同じ愛称がある場合はBitmap名が返って来ます。
    データが存在し無い場合は空文字列が返ります。
引用返信/返信 削除キー/
■14637 / inTopicNo.7)  Re[6]: 名前付きザコユニbト用の名前について
□投稿者/ ドラモンスター(仮) -(2004/07/19(Mon) 21:00:50) [ID:57T32sOL]
http://www5f.biglobe.ne.jp/~dramonster/index.html
    No14636に返信(TomTomさんの記事)
    > 2004/07/19(Mon) 18:02:24 編集(投稿者)

    私はドラモンスターです。

    >>それから私は現在読み込まれている作品に定義されている
    >>パイロットデータ及びノンパイロットデータの愛称を瞬時に算出する方法を知りたいです。
    >>そんな方法はなくて自分で変数を制御して扱うしかないのならそれで構いませんが。
    >
    > Info(パイロットデータ(および、非戦闘員), [調べる愛称],グラフィック)
    > とすれば、データ上に同じ愛称がある場合はBitmap名が返って来ます。
    > データが存在し無い場合は空文字列が返ります。

    これは結果が複数出る可能性が十分に考えられますが、
    結果は数も一定していませんね。
    そういうときに使用する処理は私は思いつきません。
    Doコマンドでは不可能な気がします。
    今までこういった処理を行ったことがないのです。

    どういった処理をすればいいのでしょうか。
引用返信/返信 削除キー/
■14638 / inTopicNo.8)  Re[7]: 名前付きザコユニbト用の名前について
□投稿者/ TomTom -(2004/07/19(Mon) 21:29:32) [ID:xuAeOXO7]
    >>Info(パイロットデータ(および、非戦闘員), [調べる愛称],グラフィック)
    >>とすれば、データ上に同じ愛称がある場合はBitmap名が返って来ます。
    >>データが存在し無い場合は空文字列が返ります。
    >
    > これは結果が複数出る可能性が十分に考えられますが、
    > 結果は数も一定していませんね。
    > そういうときに使用する処理は私は思いつきません。

    私はてっきり、作成した名前がデータフォルダ内の愛称と重複していないかどうかを調べるために、
    データフォルダ内で設定されている愛称を知りたいのだと思ったのですが。

    これは今までの名前の設定の話とは別の話なのですか?
    そうであれば、断りを入れて置いていただきたく思います。

    さて「データフォルダ内で設定されている愛称を知りたい」ということでよいのなら、同じ愛称が複数あろうがなかろうが、
    「指定した愛称が、データフォルダ内に存在する(または、存在しない)」
    事さえ判れば十分だと思うのですが?

    まったく違った話で、データフォルダ内に存在する愛称をすべて知りたい、
    と言うことなら、すべてのデータのテキストファイルをOpenコマンドなどで一行ずつ読み取り、
    一つずつ変数に格納する、という処理を行ってください。

    ちなみに、ややっこしいので面倒は見切れません。

引用返信/返信 削除キー/
■14639 / inTopicNo.9)  Re[8]: 名前付きザコユニbト用の名前について
□投稿者/ ドラモンスター(仮) -(2004/07/19(Mon) 21:46:29) [ID:57T32sOL]
http://www5f.biglobe.ne.jp/~dramonster/index.html
    私はドラモンスターです。

    どちらの方法も知りたかったのです。
    教えていただきありがとうございました。TomTomさん。
解決済み!
引用返信/返信 削除キー/



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

このトピックに書きこむ

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

Pass/

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

- Child Tree -
- Antispam Version -