SRC質問掲示板Mk2

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

ツリー一括表示

Nomal 質問が4つあります。 /永藤 雪 (18/07/08(Sun) 22:43) [ID:uHGPnxr5] #22997
Nomal Re[1]: 質問が4つあります。 /d (18/07/09(Mon) 18:29) [ID:5JEzOrrD] #22998
  ├Nomal Re[2]: 質問が4つあります。 /永藤 雪 (18/07/10(Tue) 19:21) [ID:uHGPnxr5] #22999
  └Nomal Re[2]: 質問が4つあります。 /永藤 雪 (18/07/10(Tue) 20:20) [ID:uHGPnxr5] #23000
    └Nomal Re[3]: 質問が4つあります。 /d (18/07/10(Tue) 20:53) [ID:5JEzOrrD] #23001
      └Nomal Re[4]: 質問が4つあります。 /永藤 雪 (18/07/12(Thu) 21:29) [ID:uHGPnxr5] #23003
        └Nomal Re[5]: 質問が4つあります。 /d (18/07/12(Thu) 22:45) [ID:e62NVU0K] #23004
          └Nomal Re[6]: 質問が4つあります。 /永藤 雪 (18/07/15(Sun) 19:59) [ID:uHGPnxr5] #23005
            └Nomal Re[7]: 質問が4つあります。 /永藤 雪 (18/07/15(Sun) 20:51) [ID:uHGPnxr5] #23006
              └Nomal Re[8]: 質問が4つあります。新しい質問.. /永藤 雪 (18/07/16(Mon) 13:49) [ID:uHGPnxr5] #23008
                └Nomal Re[9]: 質問が4つあります。新しい質問.. /d (18/07/16(Mon) 21:23) [ID:lyHwbZhL] #23009
                  └Nomal Re[10]: 質問が4つあります。新しい質問.. /永藤 雪 (18/07/16(Mon) 22:12) [ID:uHGPnxr5] #23010
                    └Nomal Re[11]: 質問が4つあります。新しい質問.. /d (18/07/16(Mon) 23:35) [ID:lyHwbZhL] #23011
                      └Nomal Re[12]: 質問が4つあります。新しい質問.. /永藤 雪 (18/07/17(Tue) 20:30) [ID:uHGPnxr5] #23012
                        └Nomal Re[13]: 質問が4つあります。新しい質問.. /d (18/07/17(Tue) 22:31) [ID:lyHwbZhL] #23013
                          └Nomal ゲームをUPしました。 /永藤 雪 (18/09/14(Fri) 20:13) [ID:uHGPnxr5] #23034 解決済み!


親記事 / ▼[ 22998 ]
■22997 / 親階層)  質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/08(Sun) 22:43:45) [ID:uHGPnxr5]
    ・Globalコマンドで指定しているのに、数値が受け継がれません。
    例)Global トモ出番
      Set トモ出番 1
    とすると、Launchコマンドでトモというキャラが出てこれるのですが、0にすればCreateコマンドで出せるというのをやっています。が、次のストーリーに行くと、1なはずなのに、0ってことになっているのか数値が入ってないことになっているんです。そして「トモはいません」「トモはすでに出撃しています」などのエラーがでてきてキャラ(主人公)一人しか出撃できなくなってしまいます。Exフラグも同じです。

    ・薬草っていうアイテムを数えたいのですが、数値は初期値の0のままでかぞえられません。以下がそのプログラムです。
    Set 採ってきた薬草
    採ってきた薬草 = 0
    採ってきた薬草 = 採ってきた薬草 + Info(キャラ, 薬草, アイテム数) + Info(アイ, 薬草, アイテム数) + Info(ユウ, 薬草, アイテム数) + Info(トモ, 薬草, アイテム数)

    ・Escapeコマンドで指定しても、ロボットたちが消えてくれません。
    以下がそのプログラムです。
    破壊 帝国兵士リーダー:
    Talk 帝国兵士リーダー
    全軍撤退!!
    End
    Escape 帝国兵士(ザコ)
    Escape 帝国兵士リーダー
    Exit

    ユニットIDで指定したら(部隊1、とか)1、2体だけ消えるとかがあったのですが、そのほかは消えてくれません。

    ・脱出したら次の道(マップ)に進むというのをやりたいのですが、次のマップが黒くなってしまいます。
    Set x
    For x = 1 To 5
    x = 1
    Next
    If x < 5 Then
      //敵がやってきた!!
    進入 味方 5 2:
    Create 敵 植物モンスター 0 モンスター 1 5 10
    Create 敵 植物モンスター 0 モンスター 1 5 12
    Create 敵 植物モンスター 0 モンスター 1 5 15
    Talk ナレーター
    植物モンスターがやってきた!!
    End
    勝利条件:
    Talk システム
    勝利条件;「敵の全滅」「一番奥まで行く」
    敗北条件;「味方の全滅」
    End
    ClearEvent
    Exit
    脱出 味方 W:
    //ブランいる
    If Exフラグ1 = 1 Then

    Talk キャラ
    やっと抜けた。
    Talk トモ
    油断するなよ。;
    まだ道は続いている。;
    Talk アイ
    そうそう。;
    ティキたちの本拠地まで、まだまだかかるんだから。
    Talk ユウ
    ええ〜っ!!
    End
    ChangeMap Event04_$(x).map
    Launch キャラ=プロト 2 3
    Launch トモ=メイト 2 5
    Launch ユウ=ジン 2 7
    Launch アイ=タスク 2 9
    Exit 



[ □ Tree ] 返信/引用返信 削除キー/

▲[ 22997 ] / ▼[ 22999 ] ▼[ 23000 ]
■22998 / 1階層)  Re[1]: 質問が4つあります。
□投稿者/ d -(2018/07/09(Mon) 18:29:22) [ID:5JEzOrrD]
    2018/07/09(Mon) 18:39:04 編集(投稿者)
    >>・Globalコマンドで指定しているのに、数値が受け継がれません。
    Globalコマンドの指定に不備は見当たらないので、おそらく分岐(Ifコマンド)の不備ではないでしょうか?
    
    (例)
    
    If トモ出番 = 1 Then
    	// Launchコマンド記載
    Else
    	// Createコマンド記載
    EndIf
    
    
    >>・薬草っていうアイテムを数えたいのですが、数値は初期値の0のままでかぞえられません。
    Infoに特定キャラの特定アイテムをの装備数を参照する機能はありません。
    なので下記@の様なサブルーチンを用意して、下記Aの様に実行して下さい。
    
    //  @  //////////////////////////////////////////
    GetItemCount:
    // 引数1 = ユニットID
    // 引数2 = アイテム名
    Local i
    Local uid = Args(1)
    Local itm = Args(2)
    Local cnt = 0
    For i = 1 To CountItem(uid)
    	If Item(uid,i) = itm Then
    		Inr cnt 1
    	EndIf
    Next
    Return cnt
    //  A  //////////////////////////////////////////
    Set 採ってきた薬草 0
    Incr 採ってきた薬草 GetItemCount(キャラ, 薬草)
    Incr 採ってきた薬草 GetItemCount(アイ, 薬草)
    Incr 採ってきた薬草 GetItemCount(ユウ, 薬草)
    Incr 採ってきた薬草 GetItemCount(トモ, 薬草)
    //////////////////////////////////////////////////
    
    
    >>・Escapeコマンドで指定しても、ロボットたちが消えてくれません。
    >>Escape 帝国兵士(ザコ)
    >>Escape 帝国兵士リーダー
    
    この場合は「帝国兵士(ザコ)」と「帝国兵士リーダー」が一体ずつしか撤退しません。
    陣営名(「味方」「敵」「中立」「NPC」)を指定すれば陣営の全ユニットを撤退させられます。
    
    特定のグループを撤退させたい場合はCreateで作成時にグループIDを設定して下記の様に実行すれば撤退できます。
    
    //////////////////////////////////////////////////
    ForEach グループID 出撃
    	Escape
    Next
    //////////////////////////////////////////////////
    
    
    >>・脱出したら次の道(マップ)に進むというのをやりたいのですが、次のマップが黒くなってしまいます。
    単純に考えて「Event04_$(x).map」が存在していないファイルを指定しているからだと思います。
    
    >>Set x
    >>For x = 1 To 5
    >>x = 1
    >>Next
    
    どういった処理を担ってるのかが解りません。
    もし実行されると永遠にループし続けると思います。
    
    >>If x < 5 Then
    >>
    >>If Exフラグ1 = 1 Then
    
    整合性が取れていません。EndIfが必要です。
    
    脱出した際の場所で個別にファイル名指定ではダメなのですか?
    共通部分があるのなら、共通部分をサブルーチン化して実行する手もあります。
    
    //////////////////////////////////////////////////
    脱出 味方 N:
    Call 脱出共通
    ChangeMap Event04_1.map
    Exit
    
    脱出 味方 S:
    Call 脱出共通
    ChangeMap Event04_2.map
    Exit
    
    脱出 味方 W:
    Call 脱出共通
    ChangeMap Event04_3.map
    Exit
    
    脱出 味方 E:
    Call 脱出共通
    ChangeMap Event04_4.map
    Exit
    
    脱出共通:
    //ブランいる
    If Exフラグ1 = 1 Then
    	Talk キャラ
    	やっと抜けた。
    	Talk トモ
    	油断するなよ。;
    	まだ道は続いている。;
    	Talk アイ
    	そうそう。;
    	ティキたちの本拠地まで、まだまだかかるんだから。
    	Talk ユウ
    	ええ〜っ!!
    	End
    EndIf
    Return
    //////////////////////////////////////////////////

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 22998 ] / 返信無し
■22999 / 2階層)  Re[2]: 質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/10(Tue) 19:21:01) [ID:uHGPnxr5]
    No22998に返信(dさんの記事)
    > 2018/07/09(Mon) 18:39:04 編集(投稿者)
    >
    > >>・Globalコマンドで指定しているのに、数値が受け継がれません。
    > Globalコマンドの指定に不備は見当たらないので、おそらく分岐(Ifコマンド)の不備ではないでしょうか?
    >
    If トモ出番 = 1 Then
    Launch キャラ=プロト 2 3
    ElseIf トモ出番 = 0 Then
    Set トモ出番 1
    Create
    Else
    Launch
    EndIf

    とやっているのですが、どうしても0にひっかかってしまうようで。
    0の時にトモ出番に1足しているのは、次回を考えてのことです。
    初期値を0にしているわけでもありません。
    >
    >
    > >>・薬草っていうアイテムを数えたいのですが、数値は初期値の0のままでかぞえられません。

    // @ //////////////////////////////////////////
    GetItemCount:
    // 引数1 = ユニットID
    // 引数2 = アイテム名
    Local i
    Local uid = Args(1)
    Local itm = Args(2)
    Local cnt = 0
    For i = 1 To CountItem(uid)
    If Item(uid,i) = itm Then
    Inr cnt 1
    EndIf
    Next
    Return cnt
    // A //////////////////////////////////////////
    Set 採ってきた薬草 0
    Incr 採ってきた薬草 GetItemCount(キャラ, 薬草)
    Incr 採ってきた薬草 GetItemCount(アイ, 薬草)
    Incr 採ってきた薬草 GetItemCount(ユウ, 薬草)
    Incr 採ってきた薬草 GetItemCount(トモ, 薬草)
    //////////////////////////////////////////////////
    で、やってみたのですが、Inrにひっかかって数えられませんでした。何かの間違いでしょうか?


    > >>・脱出したら次の道(マップ)に進むというのをやりたいのですが、次のマップが黒くなってしまいます。
    > 単純に考えて「Event04_$(x).map」が存在していないファイルを指定しているからだと思います。
    >
    Set x
    For x = 1 To 5
    x = 1

    キャラクターのセリフとかイベントなど
    Next

    脱出したら、(フラグ=1の場合)
    > If Exフラグ1 = 1 Then
    > Talk キャラ
    > やっと抜けた。
    > Talk トモ
    > 油断するなよ。;
    > まだ道は続いている。;
    > Talk アイ
    > そうそう。;
    > ティキたちの本拠地まで、まだまだかかるんだから。
    > Talk ユウ
    > ええ〜っ!!
    > End
    > EndIf
    というのを左に脱出したらを4回くらい繰り返して行いたいのです。5回目は敵(ボス)との戦闘です。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 22998 ] / ▼[ 23001 ]
■23000 / 2階層)  Re[2]: 質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/10(Tue) 20:20:18) [ID:uHGPnxr5]
    敵を全軍撤退させることは成功しました。ありがとうございます。

    あと、
    If (ザコリーダー)= 2 Then
    Create ザコパイロット


    ElseIf 植物モンスター = 1 Then
    Create 植物モンスター


    Else
    ElseIf

    というのをやりたいのですが、実行してくれません。
    どうしても敵数でやるしかないでしょうか。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23000 ] / ▼[ 23003 ]
■23001 / 3階層)  Re[3]: 質問が4つあります。
□投稿者/ d -(2018/07/10(Tue) 20:53:31) [ID:5JEzOrrD]
    2018/07/10(Tue) 20:56:07 編集(投稿者)
    >>とやっているのですが、どうしても0にひっかかってしまうようで。
    
    試しに下記の様な処理を行って記述の整合性を確認した所。
    2(トモ出番 = 0)→1(トモ出番 = 1)と処理されていました。ので記述的には間違っていないと思います。
    
    思い付く原因としては、
    1.Globalコマンドが設定されていない状態でステージを跨いだ。
    2.処理前に「トモ出番」が書きえられている。
    
    以上のことが考えられます。一度シナリオを確認してみては如何でしょうか?
    
    //////////////////////////////////////////////////
    If トモ出番 = 1 Then
    	Talk システム
    	1
    	End
    ElseIf トモ出番 = 0 Then
    	Set トモ出番 1
    	Talk システム
    	2
    	End
    Else
    	Talk システム
    	3
    	End
    EndIf
    
    If トモ出番 = 1 Then
    	Talk システム
    	1
    	End
    ElseIf トモ出番 = 0 Then
    	Set トモ出番 1
    	Talk システム
    	2
    	End
    Else
    	Talk システム
    	3
    	End
    EndIf
    //////////////////////////////////////////////////
    
    
    >>で、やってみたのですが、Inrにひっかかって数えられませんでした。何かの間違いでしょうか?
    
    Incrコマンドが「Inr」になっていました。
    
    //  訂正版
    GetItemCount:
    // 引数1 = ユニットID
    // 引数2 = アイテム名
    Local i
    Local uid = Args(1)
    Local itm = Args(2)
    Local cnt = 0
    For i = 1 To CountItem(uid)
    	If Item(uid,i) = itm Then
    		Incr cnt 1
    	EndIf
    Next
    Return cnt
    //////////////////////////////////////////////////
    
    
    >>というのを左に脱出したらを4回くらい繰り返して行いたいのです。5回目は敵(ボス)との戦闘です。
    
    下記の様な感じではダメですか?これなら解りやすいと思うのですが。
    それと「脱出カウント」は適当に設定したので適当に変更して下さい。
    
    //////////////////////////////////////////////////
    脱出 味方 W:
    Incr 脱出カウント 1
    Switch 脱出カウント
    Case 1
    	// 脱出1回目のイベント
    Case 2
    	// 脱出2回目のイベント
    Case 3
    	// 脱出3回目のイベント
    Case 4
    	// 脱出4回目のイベント
    Case 5
    	// 脱出5回目のイベント
    EndSw
    
    ChangeMap "Event04_$(脱出カウント).map"
    Exit
    //////////////////////////////////////////////////
    
    
    >>If (ザコリーダー)= 2 Then
    >>ElseIf 植物モンスター = 1 Then
    >>どうしても敵数でやるしかないでしょうか。
    
    えー、推測するに特定ユニットの数によって処理をしたいって事ですか?
    でしたら下記の様な感じでどうですか?
    まあユニット数によっては処理が重くなってしまいますけど…
    
    //////////////////////////////////////////////////
    GetUnitCount:
    // 引数1 = 陣営名
    // 引数2 = ユニット名
    Local i
    Local cnt = 0
    Local uname = Args(2)
    ForEach Args(1) 出撃
    	If Info(ユニット, UnitID(), 名称) = uname Then
    		Incr cnt 1
    	EndIf
    Next
    Return cnt
    //////////////////////////////////////////////////
    If GetUnitCount(敵, ザコリーダー) = 2 Then
    	//
    ElseIf GetUnitCount(敵, 植物モンスター) = 1 Then
    	//
    Else
    	//
    EndIf
    //////////////////////////////////////////////////

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23001 ] / ▼[ 23004 ]
■23003 / 4階層)  Re[4]: 質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/12(Thu) 21:29:34) [ID:uHGPnxr5]
    > 2018/07/10(Tue) 20:56:07 編集(投稿者)

    トモ出番、ExフラグはGlobalコマンドを書いてなかったからだったことが判明しました。
    トモは出てきてくれましたし、ちゃんとExで味方になってくれる子が出てきてくれました。
    >

    > // 訂正版
    > GetItemCount:
    > // 引数1 = ユニットID
    > // 引数2 = アイテム名
    > Local i
    > Local uid = Args(1)
    > Local itm = Args(2)
    > Local cnt = 0
    > For i = 1 To CountItem(uid)
    > If Item(uid,i) = itm Then
    > Incr cnt 1
    > EndIf
    > Next
    > Return cnt
    > //////////////////////////////////////////////////
    エラーは出なかったのですが、シナリオが途中で消えてしまいました。



    > >>というのを左に脱出したらを4回くらい繰り返して行いたいのです。5回目は敵(ボス)との戦闘です。
    >
    > //////////////////////////////////////////////////
    > 脱出 味方 W:
    > Incr 脱出カウント 1
    > Switch 脱出カウント
    > Case 1
    > // 脱出1回目のイベント
    > Case 2
    > // 脱出2回目のイベント
    > Case 3
    > // 脱出3回目のイベント
    > Case 4
    > // 脱出4回目のイベント
    > Case 5
    > // 脱出5回目のイベント
    > EndSw
    >
    > ChangeMap "Event04_$(脱出カウント).map"
    > Exit
    > //////////////////////////////////////////////////
    イベントは普通に動いて、最後にボスが出てきてくれたのですが、そのとたんにマップが変わってボスが消えてしまいました。ClearEventでやったのですが、引数の数が違いますとでました。脱出 味方 E あるいは、ChangeMap"Event04_$(脱出カウント).map"です。その後も動いてくれたんですけど。イベント終わりまでいきました。




    > >>If (ザコリーダー)= 2 Then
    > >>ElseIf 植物モンスター = 1 Then
    > >>どうしても敵数でやるしかないでしょうか。
    >
    > えー、推測するに特定ユニットの数によって処理をしたいって事ですか?
    > でしたら下記の様な感じでどうですか?
    > まあユニット数によっては処理が重くなってしまいますけど…
    >
    > //////////////////////////////////////////////////
    > GetUnitCount:
    > // 引数1 = 陣営名
    > // 引数2 = ユニット名
    > Local i
    > Local cnt = 0
    > Local uname = Args(2)
    > ForEach Args(1) 出撃
    > If Info(ユニット, UnitID(), 名称) = uname Then
    > Incr cnt 1
    > EndIf
    > Next
    > Return cnt
    > //////////////////////////////////////////////////
    > If GetUnitCount(敵, ザコリーダー) = 2 Then
    > Create 敵
    > ElseIf GetUnitCount(敵, 植物モンスター) = 1 Then
    > Create 敵
    > Else
    > //
    > EndIf
    > //////////////////////////////////////////////////

    ユニット名やパイロット名を入れてもその処理を行ってくれません。


    何度もすみません。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23003 ] / ▼[ 23005 ]
■23004 / 5階層)  Re[5]: 質問が4つあります。
□投稿者/ d -(2018/07/12(Thu) 22:45:58) [ID:e62NVU0K]
    2018/07/12(Thu) 22:49:19 編集(投稿者)
    >>エラーは出なかったのですが、シナリオが途中で消えてしまいました。
    
    何度か試しましたが特に問題は無かったです。
    なのでGetItemCountを導入している状態で下記を実行してみて下さい。
    -1が表示されたあと0以上が表示されればGetItemCount以外の問題です。
    
    //////////////////////////////////////////////////
    Set 採ってきた薬草 0
    Talk システム
    -1
    End
    Incr 採ってきた薬草 GetItemCount(キャラ, 薬草)
    Incr 採ってきた薬草 GetItemCount(アイ, 薬草)
    Incr 採ってきた薬草 GetItemCount(ユウ, 薬草)
    Incr 採ってきた薬草 GetItemCount(トモ, 薬草)
    Talk システム
    $(採ってきた薬草)
    End
    //////////////////////////////////////////////////
    
    
    >>イベントは普通に動いて、最後にボスが出てきてくれたのですが、そのとたんにマップが変わってボスが消えてしまいました。
    
    ChangeMapの実行タイミングの差なので方法としては、移動前イベントと移動後イベントを分ければ良いだけかと。
    設定例を下記に記載しておきます。
    
    >>ClearEventでやったのですが、引数が足りませんとでました。脱出 味方 E あるいは、ChangeMap"Event04_$(脱出カウント).map"です。
    >>その後も動いてくれたんですけど。イベント終わりまでいきました。
    
    ちょっと理解できませんでした。
    
    //////////////////////////////////////////////////
    //@
    脱出 味方 W:
    Incr 脱出カウント 1
    Switch 脱出カウント
    Case 1
    	// マップ移動前1回目のイベント
    Case 2
    	// マップ移動前2回目のイベント
    Case 3
    	// マップ移動前3回目のイベント
    Case 4
    	// マップ移動前4回目のイベント
    Case 5
    	// マップ移動前5回目のイベント
    EndSw
    
    ChangeMap "Event04_$(脱出カウント).map"
    
    Switch 脱出カウント
    Case 1
    	// マップ移動後1回目のイベント
    Case 2
    	// マップ移動後2回目のイベント
    Case 3
    	// マップ移動後3回目のイベント
    Case 4
    	// マップ移動後4回目のイベント
    Case 5
    	// マップ移動後5回目のイベント
    EndSw
    
    Exit
    //////////////////////////////////////////////////
    //A
    脱出 味方 W:
    Incr 脱出カウント 1
    Switch 脱出カウント
    Case 1
    	// 1回目の移動前イベント
    	ChangeMap "Event04_$(脱出カウント).map"
    	// 1回目の移動後イベント
    Case 2
    	// 2回目の移動前イベント
    	ChangeMap "Event04_$(脱出カウント).map"
    	// 2回目の移動後イベント
    Case 3
    	// 3回目の移動前イベント
    	ChangeMap "Event04_$(脱出カウント).map"
    	// 3回目の移動後イベント
    Case 4
    	// 4回目の移動前イベント
    	ChangeMap "Event04_$(脱出カウント).map"
    	// 4回目の移動後イベント
    Case 5
    	// 5回目の移動前イベント
    	ChangeMap "Event04_$(脱出カウント).map"
    	// 5回目の移動後イベント
    EndSw
    Exit
    //////////////////////////////////////////////////
    
    
    >>ユニット名やパイロット名を入れてもその処理を行ってくれません。
    
    こちらも何度か試しましたが特に問題は無かったです。
    一応確認ですが愛称で指定してないですよね? 下記の様に設定されていれば「テスト(てすと)」を指定する必要があります。
    それと前提としてGetUnitCountは出撃状態のユニットをカウントします。
    
    とりあえずユニットの愛称対応版も用意しておきます。
    
    >>If GetUnitCount(敵, ザコリーダー) = 2 Then
    >>ElseIf GetUnitCount(敵, 植物モンスター) = 1 Then
    
    あと気になる所と言えば↑の処理です。
    ↑は「ザコリーダーがちょうど2体」「植物モンスターがちょうど1体」のいずれかの時に実行する。
    と解釈されますが想定道理でしょうか?
    
    //////////////////////////////////////////////////
    テスト(てすと)
    テスト, てすと, 汎用, 1, 0
    //////////////////////////////////////////////////
    // ユニット愛称対応版
    GetUnitCount:
    // 引数1 = 陣営名
    // 引数2 = ユニット名称 or ユニット愛称
    Local i
    Local uid
    Local cnt = 0
    Local uname = Args(2)
    ForEach Args(1) 出撃
    	Set uid UnitID()
    	If Info(ユニット, uid, 名称) = uname Then
    		Incr cnt 1
    	ElseIf Info(ユニット, uid, 愛称) = uname Then
    		Incr cnt 1
    	EndIf
    Next
    Return cnt
    //////////////////////////////////////////////////

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23004 ] / ▼[ 23006 ]
■23005 / 6階層)  Re[6]: 質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/15(Sun) 19:59:55) [ID:uHGPnxr5]
    2018/07/15(Sun) 20:17:22 編集(投稿者)
    2018/07/15(Sun) 20:03:16 編集(投稿者)
    2018/07/15(Sun) 20:02:57 編集(投稿者)
    No23004に返信(dさんの記事)
    > 2018/07/12(Thu) 22:49:19 編集(投稿者)
    >
    > 何度か試しましたが特に問題は無かったです。
    > なのでGetItemCountを導入している状態で下記を実行してみて下さい。
    > -1が表示されたあと0以上が表示されればGetItemCount以外の問題です。
    >
    エピローグイベントの中とEndとExitの間に入れてみたらイベントが再生されなくなるということが起きるみたいです。エピローグイベントの前の方に入れたのですが、0の処理で「採ってきた薬草本」と表示されました。キャラたちにも薬草を装備させたのに、です。

    何度かテストをしましたが、0も−1も表示されず、機能してくれないようです。


    スタートイベント、GetItemカウントという風に入力していました。@Aとも入れています。

    EndとExitの中間に入れると、CallコマンドとReturnコマンドが対応していませんと出ます。間違ってはいないのに、です。

    現在エピローグイベントの前の方に入れています。

    任務イベントの時に使いたいので、あきらめたくはないです。

    > >>イベントは普通に動いて、最後にボスが出てきてくれたのですが、そのとたんにマップが変わってボスが消えてしまいました。
    >
    こちらの問題は解決しました。
    実はClearEventをしたのは、マップが変わって敵が消えてしまうというのを防ぐ意味で行ったのですが、ほとんど意味かったです。引数の数が違いますって出てきてよくわからなかったです。おかげで解決しました。丁寧な回答ありがとうございました。
    >
    > >>ユニット名やパイロット名を入れてもその処理を行ってくれません。
    >
    > こちらも何度か試しましたが特に問題は無かったです。
    > 一応確認ですが愛称で指定してないですよね? 下記の様に設定されていれば「テスト(てすと)」を指定する必要があります。
    > それと前提としてGetUnitCountは出撃状態のユニットをカウントします。
    >
    > とりあえずユニットの愛称対応版も用意しておきます。
    >
    名称も愛称も同じです。1回動きましたが、ザコリーダーが消えたあとだったので、思うようには行きませんでした。

    出撃状態ですか。確か5ターンは敵が出てこないようにという状態で設定してました。5ターン目になると敵が出てくる、とか。場所が悪いのでしょうか。ターン 全 敵のところにこの処理があります。

    > あと気になる所と言えば↑の処理です。
    > ↑は「ザコリーダーがちょうど2体」「植物モンスターがちょうど1体」のいずれかの時に実行する。
    > と解釈されますが想定道理でしょうか?

    想定通りです。
    ザコリーダーがいるときにザッコが大量発生していくというのを作りたかったんです。植物モンスターも一匹いれば大量発生する、とか。


    あと、おまけの質問ですが、エクセルで言うIFErrorみたいな変数ってありませんか?もし、このエラーが発生したらこの処理をする、という変数。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23005 ] / ▼[ 23008 ]
■23006 / 7階層)  Re[7]: 質問が4つあります。
□投稿者/ 永藤 雪 -(2018/07/15(Sun) 20:51:34) [ID:uHGPnxr5]
    2018/07/15(Sun) 22:59:51 編集(投稿者)

    薬草を数えるの、解決しました!!お騒がせしてごめんなさい。
    エピローグイベントのところに、Aを入力するとできるようです。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23006 ] / ▼[ 23009 ]
■23008 / 8階層)  Re[8]: 質問が4つあります。新しい質問です。
□投稿者/ 永藤 雪 -(2018/07/16(Mon) 13:49:44) [ID:uHGPnxr5]
    @アビリティが表示されません。
    召喚の技を持っているキャラクターなのですが。
    なにが原因なのでしょうか。

    ===
    回復魔法, 回復Lv4, 1, -, 20, -, - M全援
    使い魔召喚, 召喚Lv4=使い魔, 0, -, 30, 0, -



    A戦闘アニメが表示されません。セリフのところに戦闘アニメの名前が表示されるだけです。アニメーションは最新のを入れているはずです。アニメーションの部分を探してみたら、ファイルはありましたので、ファイルがないとかいうのはないとおもうのですが。

    ビームライフル(準備), ライフル3
    ビームライフル(攻撃), 小ビーム連続描画(赤)
    ビームライフル(命中), 点打連続描画(赤) 
    ライフルで殴る(準備), ライフル3

    ファイアー(準備), 大型バズーカ
    ファイアー(攻撃), 大ビーム連続描画(赤)
    ファイアー(命中), ビームショットガン命中連続描画(赤)

    ファイアーボール(準備), 火炎弾(赤)
    ファイアーボール(攻撃), 火炎弾連続描画(赤)
    ファイアーボール(命中), 炎連続描画(赤)
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23008 ] / ▼[ 23010 ]
■23009 / 9階層)  Re[9]: 質問が4つあります。新しい質問です。
□投稿者/ d -(2018/07/16(Mon) 21:23:39) [ID:lyHwbZhL]
    2018/07/16(Mon) 21:35:41 編集(投稿者)
    >>GetUnitCount
    
    少なくとも私の場合は想定通り機能しているので「ターン 全 敵」の内容を確認しなければ
    これ以上アドバイスの仕様がありません。
    
    
    >>エクセルで言うIFErrorみたいな変数ってありませんか?
    
    IIf関数ではダメですか?
    
    ※ヘルプ解説
    IIf(条件式,値1,値2)
    指定した条件式が成り立つ場合(値が0以外)は値1を、そうでなければ値2を返します。
    
    
    >>@アビリティが表示されません。
    
    適当なデータに挿入して確認しましたが普通に表示されました。
    なので思いつく限りでは、
    
    @Disableコマンドで封印されている。
    Aアビリティの定義している箇所が違う。
    Bアビリティ使用条件を満たしていない。
    
    これくらいしか思いつきません。
    ですがAは定義場所を間違っている場合はエラーが表示されるので原因としては低いかと。
    
    
    >>A戦闘アニメが表示されません。
    
    _GetWeaponBmpInfo、_GetEffectBmpInfoは画像情報を取得するためにあるので、
    定義されているからと言って全てが戦闘アニメとしては定義されている訳ではありません。
    戦闘アニメを定義する場合は「汎用戦闘アニメマニュアル.html」参照したほうが確実だと思います。
    
    手直しすると↓みたいな感じでしょうか。
    
    
    ビームライフル(準備), 射撃武器 _SelectWPBN(ライフル3) _SelectWPBS(ライフル3)
    ビームライフル(攻撃), 小ビーム 赤
    ビームライフル(命中), 点打 赤
    ライフルで殴る(準備), 射撃武器 _SelectWPBN(ライフル3) _SelectWPBS(ライフル3)
    
    ファイアー(準備), 射撃武器 _SelectWPBN(大型バズーカ) _SelectWPBS(大型バズーカ)
    ファイアー(攻撃), 大ビーム 赤
    ファイアー(命中), ビームショットガン 赤
    
    ファイアーボール(準備), 火炎弾 赤 
    ファイアーボール(攻撃), 火炎弾 赤
    ファイアーボール(命中), 炎 赤
    
    ※「(準備), 火炎弾」は定義されいますが、実際のところは「(準備), -」と変わりません。
    
    ※↓でも良いかも
    ビームライフル(準備), ビームライフル 赤 _SelectWPBN(ライフル3) _SelectWPBS(ライフル3)
    ビームライフル(攻撃), ビームライフル 赤 _SelectWPBN(ライフル3) _SelectWPBS(ライフル3)
    ビームライフル(命中), 点打 赤
    
    ファイアー(準備), バスタービームライフル 赤 _SelectWPBN(大型バズーカ) _SelectWPBS(大型バズーカ)
    ファイアー(攻撃), バスタービームライフル 赤 _SelectWPBN(大型バズーカ) _SelectWPBS(大型バズーカ)
    ファイアー(命中), ビームショットガン 赤

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23009 ] / ▼[ 23011 ]
■23010 / 10階層)  Re[10]: 質問が4つあります。新しい質問です。
□投稿者/ 永藤 雪 -(2018/07/16(Mon) 22:12:02) [ID:uHGPnxr5]
    こんな感じです。

    ターン 5 味方:
    Create
    End
    Exit

    //特定のユニットの数を数える
    ////////////////////////////////////////////////
    GetUnitCount:

    Local i
    Local cnt = 0
    Local uname Args(2)
    ForEach Args(1) 出撃
    If Info(ユニット, UnitID(), 名称) = uname Then
    Incr cnt 1
    EndIf

    Next
    Return cnt
    /////////////////////////////////////////////////

    ターン 全 敵:
    If GetUnitCount(敵, キングザッコ) = 2 Or GetUnitCount(敵, エンペラーザッコ) = 1 Then
    //If 敵数 >= 1 And 敵数 < 2 Then
    Create 敵 植物モンスター 0 モンスター 1 10 10
    Create 敵 植物モンスター 0 モンスター 1 10 12
    Create 敵 植物モンスター 0 モンスター 1 12 10
    Create 敵 ザッコ 0 帝国兵士(ザコ) 1 11 10 部隊1
    Create 敵 ザッコ 0 帝国兵士(ザコ) 1 11 12 部隊1
    Create 敵 ザッコ 0 帝国兵士(ザコ) 1 12 15 部隊1
    Talk キャラ
    さらに入ってきた!!
    Talk アイ
    さっきザッコたちが木を切り倒したせいね
    Talk ユウ
    リーダーを倒せばいなくなるかも
    End
    ElseIf GetUnitCount(敵, モンスター) = 1 Then
    Create 敵 植物モンスター 0 モンスター 1 10 10
    Create 敵 植物モンスター 0 モンスター 1 10 12
    Create 敵 植物モンスター 0 モンスター 1 12 10
    Talk アイ
    さっきザッコたちが木を切り倒したせいね
    End
    Else

    EndIf
    Exit

    Ifエラーみたいなの、これから実験してみようと思います。

    アニメの設定、丁寧な回答ありがとうございます。少し難しいと思ったので、そういう設定の仕方が、どこに書いてあるのか書いていただけると助かります。見落としているだけかもしれません。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23010 ] / ▼[ 23012 ]
■23011 / 11階層)  Re[11]: 質問が4つあります。新しい質問です。
□投稿者/ d -(2018/07/16(Mon) 23:35:36) [ID:lyHwbZhL]
    2018/07/16(Mon) 23:36:30 編集(投稿者)
    >>GetUnitCount
    
    @「ターン 全 敵:」が複数定義されている。
    「ターン 全 敵:」を「*ターン 全 敵:」に変更する。
    
    A演算子が想定と違う。
    >>If GetUnitCount(敵, キングザッコ) = 2 Or GetUnitCount(敵, エンペラーザッコ) = 1 Then
    キングザッコが3体以上、エンペラーザッコが1体以上ステージに出撃する可能性があるのなら機能しない。
    ↓なら機能する。
    If GetUnitCount(敵, キングザッコ) >= 2 Or GetUnitCount(敵, エンペラーザッコ) >= 1 Then
    
    >>ElseIf GetUnitCount(敵, モンスター) = 1 Then
    モンスターが1体以上ステージに出撃する可能性があるのなら機能しない。
    ↓なら機能する。
    ElseIf GetUnitCount(敵, モンスター) >= 1 Then
    
    ただモンスターがユニット愛称もしくはパイロット名称・愛称なら「GetUnitCount」は機能しない。
    
    >>Create 敵 植物モンスター 0 モンスター 1 10 10
    複数の同パイロットを出撃させる場合は(ザコ)もしくは(汎用)指定が必須。
    
    Bユニット・パイロットの名称・愛称対応版に変えてみる。
    
    //////////////////////////////////////////////////
    // ユニット・パイロットの名称・愛称対応版
    GetUnitCount:
    // 引数1 = 陣営名
    // 引数2 = ユニット名称 or ユニット愛称
    Local i
    Local pid uid
    Local cnt = 0
    Local uname = Args(2)
    ForEach Args(1) 出撃
    	Set uid UnitID()
    	Set pid PilotID()
    	If Info(ユニット, uid, 名称) = uname Then
    		Incr cnt 1
    	ElseIf Info(ユニット, uid, 愛称) = uname Then
    		Incr cnt 1
    	ElseIf Info(パイロット, pid, 名称) = uname Then
    		Incr cnt 1
    	ElseIf Info(パイロット, pid, 愛称) = uname Then
    		Incr cnt 1
    	EndIf
    Next
    Return cnt
    //////////////////////////////////////////////////
    
    
    >>アニメの設定
    
    基本的なアニメ設定解説「SRC.HLP」→「データの作成」→「戦闘アニメデータ」
    基本的なアニメ設定「汎用戦闘アニメマニュアル.html」→左上ウィンドウ「説明書」→左下ウィンドウ「通常アニメ説明書 Top」

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23011 ] / ▼[ 23013 ]
■23012 / 12階層)  Re[12]: 質問が4つあります。新しい質問です。
□投稿者/ 永藤 雪 -(2018/07/17(Tue) 20:30:54) [ID:uHGPnxr5]
    ありがとうございます。
    これで今のところ悩んでいたことが解決しました。

    もしこのゲームが全てできて、ネットにUPしたとき、dさんの名前を入れてもいいですか?

    URLも入れるので、今回は解決済みにはチェックしません。
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23012 ] / ▼[ 23034 ]
■23013 / 13階層)  Re[13]: 質問が4つあります。新しい質問です。
□投稿者/ d -(2018/07/17(Tue) 22:31:01) [ID:lyHwbZhL]
    2018/07/17(Tue) 22:46:33 編集(投稿者)
    解決したようで何よりです。
    
    >>名前を入れてもいいですか?
    Readme辺りに記載して頂く分には問題ありません。
    もっとも態々記載して頂く様なことでは無いとは思いますけど。

[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/

▲[ 23013 ] / 返信無し
■23034 / 14階層)  ゲームをUPしました。
□投稿者/ 永藤 雪 -(2018/09/14(Fri) 20:13:06) [ID:uHGPnxr5]
解決済み!
[ 親 22997 / □ Tree ] 返信/引用返信 削除キー/


Pass/

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

- Child Tree -
- Antispam Version -