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

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

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

■20155 / inTopicNo.1)  地形適応固定変更について
  
□投稿者/ リュー -(2007/07/15(Sun) 15:20:42) [ID:ugR0efwe]
    2007/07/15(Sun) 15:29:08 編集(投稿者)

    どうも、リューです。
    今回、資金を出してユニットの地形適応をAからSに上昇させるインクルードを作ったのですが、うまく動作してくれません

    ===以下、インクル===

    プロローグ:
    UnSet ユニット名
    Cls
    show

    ForEach 味方 待機
    If Unit() <> "" Then
    ユニット名[Unit()] = Nickname(Unit())
    Endif
    Next

    ユニットリスト:

    Cls
    Refresh
    Ask ユニット名 "ユニットを選択してください(右クリックでインターミッションへ)" キャンセル可

    If 選択 = "" Then
    Continue
    Else
    EndIf
    枠描画Mk-2
    表描画
    Call 強化開始
    Continue


    表描画:

    Font 12pt RGB(0,0,0)
    PaintString 50 40 "上昇させる地形を選んでください"
    PaintString 50 60 "現在の資金 $(資金)"
    PaintString 50 90 "地形"
    PaintString 300 90 "必要資金"

    Local C_List CP
    C_List[1] = 空適応上昇
    CP[1] = 空適応をSに上昇
    C_COST[1] = 12000

    C_List[2] = 陸適応上昇
    CP[2] = 陸適応をSに上昇
    C_COST[2] = 12000

    C_List[3] = 海適応上昇
    CP[3] = 海適応をSに上昇
    C_COST[3] = 9000

    C_List[4] = 宇宙適応上昇
    CP[4] = 宇宙適応をSに上昇
    C_COST[4] = 12000

    C_List[5] = ユニット選択へ戻る
    CP[5] = ユニット選択へ戻る
    C_List[6] = インターミッションへ戻る
    CP[6] = インターミッションへ戻る

    BaseY = 120

    For i = 1 To 6
    PaintString 50 0 C_List[i]
    PaintString 300 0 C_COST[i]
    HotPoint i 50 0 300 TextHeight(C_List[i]) CP[i]
    BaseY = BaseY + TextHeight(C_List[i])
    Next
    BaseY = 0
    Return


    強化開始:


    Do
    Wait Click
    If 選択 <> "" Then
    Break
    EndIf

    Loop While 1


    Switch 選択

    Case 1
    If 資金 < 12000 Then
    Talk システム
    資金が足りません
    End
    Else
    Item 空S
    Equip 対象ユニットID 空S
    資金 = 資金 - 12000
    Talk システム
    強化されました
    End
    EndIf

    Case 2
    If 資金 < 12000 Then
    Talk システム
    資金が足りません
    End
    Else
    Item 陸S
    Equip 対象ユニットID 陸S
    資金 = 資金 - 12000
    Talk システム
    強化されました
    End
    EndIf

    Case 3
    If 資金 < 9000 Then
    Talk システム
    資金が足りません
    End
    Else
    Item 海S
    Equip 対象ユニットID 海S
    資金 = 資金 - 9000
    Talk システム
    強化されました
    End
    EndIf

    Case 4
    If 資金 < 12000 Then
    Talk システム
    資金が足りません
    End
    Else
    Item 宇宙S
    Equip 対象ユニットID 宇宙S
    資金 = 資金 - 12000
    Talk システム
    強化されました
    End
    EndIf

    Case 5
    Escape
    ClearPicture
    ClearObj
    Goto ユニットリスト

    Case 6
    Continue

    EndSw
    ClearPicture
    ClearObj
    PaintPicture Event\夜.jpg - -
    枠描画Mk-2
    表描画
    Goto 強化開始
    Exit


    #===============================================================================================

    枠描画Mk-2:
    Line 30 30 451 465 RGB(230, 200, 100) BF
    F_Line 横 30 30 453 30
    F_Line 縦 30 30 30 465
    F_Line 横 30 463 453 463
    F_Line 縦 451 30 451 465

    F_Line 横 30 80 453 80

    Return

    #================================================================================================

    F_Line:
    Switch Args(1)
    Case 縦
    Line (Args(2)) Args(3) (Args(4)) Args(5) #B46400
    Line (Args(2) + 1) Args(3) (Args(4) + 1) Args(5) #8C3C00
    Line (Args(2) + 2) Args(3) (Args(4) + 2) Args(5) #641400
    Case 横
    Line Args(2) (Args(3)) Args(4) (Args(5)) #B46400
    Line Args(2) (Args(3) + 1) Args(4) (Args(5) + 1) #8C3C00
    Line Args(2) (Args(3) + 2) Args(4) (Args(5) + 2) #641400
    EndSw
    Return

    ===ここまで===

    Info関数を使って調べてみたところ、アイテムは装備されているようなのですが、ユニットの能力に反映されないのです。

    ===以下、アイテムデータ===

    空S
    空S, そらえす, 汎用, 非表示
    特殊能力
    地形適応固定変更=5 0 0 0
    0, 0, 0, 0, 0

    陸S
    陸S, りくえす, 汎用, 非表示
    特殊能力
    地形適応固定変更=0 5 0 0
    0, 0, 0, 0, 0

    海S
    海S, うみえす, 汎用, 非表示
    特殊能力
    地形適応固定変更=0 0 5 0
    0, 0, 0, 0, 0

    宇宙S
    宇宙S, うちゅうえす, 汎用, 非表示
    特殊能力
    地形適応固定変更=0 0 0 5
    0, 0, 0, 0, 0

    ===ここまで===

    書式ミスでしょうか、それともバグでしょうか?
    よろしくお願いします
    ちなみに、インクルードは 星夜 雪様のパイロット養成インクルードを基に作成させていただいております
引用返信/返信 削除キー/
■20156 / inTopicNo.2)  Re[1]: 地形適応固定変更について
□投稿者/ 千奈 -(2007/07/16(Mon) 13:12:02) [ID:JK58Kupu]
    アイテムが装備されているのでしたら、特に問題は無いと思われます。


    MAP上などで表示されている地形適応はパイロットデータの影響を受けます。
    Optionによって影響の受け方は変わりますが、
    いずれにせよパイロットの地形適応をSにしない限り、ユニット全体の地形適応はSにはならなかったような気がします。
    地形適応SSSSのパイロットを乗せて試してみてください。
引用返信/返信 削除キー/
■20157 / inTopicNo.3)  Re[2]: 地形適応固定変更について
□投稿者/ リュー -(2007/07/16(Mon) 13:29:27) [ID:ugR0efwe]
    千奈さん、始めまして

    ええと、Optionには地形適応総和計算を使っているのですが、先ほど適応SSSSの
    パイロットに登場させて試してみたたころ、適応はSとして計算されたのですが、上記インクルードで強化しても戦闘の結果に影響を与えませんでした(適応がAとして計算される)。  ユニットの適応を弄っても戦闘時の計算には影響を与えないということでしょうか? 理解が遅くてすみません。
引用返信/返信 削除キー/
■20158 / inTopicNo.4)  Re[3]: 地形適応固定変更について
□投稿者/ コウ -(2007/07/16(Mon) 17:14:06) [ID:AZy6pg4a]
    2007/07/16(Mon) 17:14:46 編集(投稿者)

    戦闘の結果とは
    ・与えたダメージ
    ・受けたダメージ
    のどちらでしょうか?

    与ダメが少ないなら武器の適応に引っ張られている可能性があります。
    ダメージ計算時は一番適応の低いものが選ばれますので。

    受ダメが多い場合はバグという可能性もありますが
    試してみたらダメージ量はS<Aだったので正常に動作しているようです。


    ちなみにアイテム自体は正常に動作します。
引用返信/返信 削除キー/
■20159 / inTopicNo.5)  Re[3]: 地形適応固定変更について
□投稿者/ misakura -(2007/07/16(Mon) 17:17:01) [ID:O2aiWyQe]
    地形適応固定はあくまでユニットの適応を変えるコマンドなので
    戦闘結果に影響するのは武器の地形適応なので戦闘には反映されませんよ。

    例外で格闘武器(武)、突進技(突)、接近戦攻撃(接)の3つだけ
    ユニットの適応が反映されますが。
引用返信/返信 削除キー/
■20160 / inTopicNo.6)  Re[4]: 地形適応固定変更について
□投稿者/ リュー -(2007/07/16(Mon) 19:29:48) [ID:ugR0efwe]
    2007/07/16(Mon) 19:43:05 編集(投稿者)
    2007/07/16(Mon) 19:42:20 編集(投稿者)
    2007/07/16(Mon) 19:31:14 編集(投稿者)
    2007/07/16(Mon) 19:31:05 編集(投稿者)

    レスが遅れて申し訳ありません
    なんともお恥ずかしい限りですが、問題はまったく別のところにあったようです。
    自分はシナリオの1話でA、B、C、Dの四機の順にCreateコマンドで作成しており、この場合最初のユニット選択の場面でも上から






    の順で表示されます。 しかし、この時A、B、Cのどれを選択してもDのユニットが選択されていることになってしまっているのです。(Info関数で調べた時はこのようなことになっているとは思いもよらず、データには対象ユニットIDを使用していました) 
     つまり、どれだけやってもDにアイテムが装備されてしまうのです。   順番をA、D、B、Cにしてみたところ、Cしか選択されませんでした。   自分でもインクルードを見直しましたが、何故このような事態に陥っているのか見当がつきません。よろしければもう少し御教授お願いします。

    戦闘の結果云々に関しては、Dのユニットで試したら正常に動きました
引用返信/返信 削除キー/
■20161 / inTopicNo.7)  Re[5]: 地形適応固定変更について
□投稿者/ 千奈 -(2007/07/16(Mon) 20:13:32) [ID:JK58Kupu]
    > Equip 対象ユニットID 陸S
    が原因ではないでしょうか?
    "対象ユニットID"は直前に起きた『ユニットを指定する(特定できる)イベントコマンド』
    を参照します。
    この場合、多分
    > Ask ユニット名 "ユニットを選択してください(右クリックでインターミッションへ)" キャンセル可
    を参照したいのだと思いますが、ここのユニット名とは
    > ユニット名[Unit()] = Nickname(Unit())
    で作った"変数"で、"ユニット"ではありません。
    そのため、もっと前に実行したコマンドが参照されているのだと思います。



    ですから、ちゃんと参照できるようにするためには
    > Ask ユニット名 "ユニットを選択してください(右クリックでインターミッションへ)" キャンセル可
    > If 選択 = "" Then
    > Continue
    > Else
    > EndIf
    装備させるユニット = 選択
    > 枠描画Mk-2
    > 表描画
    > Call 強化開始
    のように、選択の結果を別の変数に保存しておき

    > Equip 対象ユニットID 空S
    などの4つの"対象ユニットID"を保存した変数(例の場合は"装備させるユニット")に変えればよいと思います。
引用返信/返信 削除キー/
■20162 / inTopicNo.8)  Re[6]: 地形適応固定変更について
□投稿者/ リュー -(2007/07/16(Mon) 20:59:43) [ID:ugR0efwe]
    千奈さんの仰るとおりにしたところ、ユニットの選択は動作しましたが

    C:\Users\yuuki\Desktop\srwANBURA\anbura\Lib\地形適応上昇.eve:95行目
    「ガイア・アバストル(ユニット名称)」というパイロットが見つかりません
    94: Item 空S
    95: Equip 装備するユニット 空S
    96: 資金 = 資金 - 12000

    と出てしまいます。
引用返信/返信 削除キー/
■20163 / inTopicNo.9)  Re[7]: 地形適応固定変更について
□投稿者/ 千奈 -(2007/07/16(Mon) 22:06:41) [ID:JK58Kupu]
    2007/07/16(Mon) 22:09:31 編集(投稿者)

    > ユニット名[Unit()] = Nickname(Unit())
    の"Unit()"を、両方ともUnitID()にすれば大丈夫だと思います。
    副作用としてAskコマンドの選択肢が、ユニット名50音順だったのがユニットID順(大抵は生成された順)になってしまいますが…



    Equip(というかイベントコマンド全般)にはメインパイロット名称か、ユニットIDしか使えませんよね…
    "選択"に入っているのは
    > ユニット名[Unit()] = Nickname(Unit())
    の"Unit()"の部分なのでユニット名称だということをすっかり忘れていました。
    一度にアドバイス出来なくて申し訳ないです。
引用返信/返信 削除キー/
■20164 / inTopicNo.10)  Re[8]: 地形適応固定変更について
□投稿者/ リュー -(2007/07/16(Mon) 22:16:39) [ID:ugR0efwe]
    予定通りの動作ができました!
    こちらも自分の知識不足を棚に上げて「できてねーじゃねーか!」みたいな文章にしてしまいました。  すみません。
    千奈さん、misakuraさん、コウさん、本当にありがとうございました!
解決済み!
引用返信/返信 削除キー/



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

このトピックに書きこむ

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

Pass/

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

- Child Tree -
- Antispam Version -