アイテムの表示方法(質問掲示板)
投稿: ミカエル
投稿:2015/11/17 07:23:17(最新:2015/11/18 01:59:18)
初心者の質問ですいません。
持っているアイテム(カード)を選択肢に表示させて
実行させる方法につきまして。
とりあえず、簡単にスクリプトを組んでみたのですが、
もっとスマートにまとめられないかなと思い質問してみました。
アイテム(カード)の配列を取得してみたのですが、
全部IDで表示されてしまい、さらにカード以外のアイテムまでも表示されて
しまいます。カードのみを表示し、かつゲーム内の名前で表示させるには
どのようにしたら良いかアドバイスいただけるとありがたいです。
できれば持っていないアイテム(カード)は
???ではなくて表示自体されないようにしたいです。
例)【持ち物】 【選択肢】
ミカエルカード
ガブリエルカード ミカエルカード
ゴッドハーブ ⇒ ガブリエルカード
ゴッドウッド
HP回復ポーション
ツイート
持っているアイテム(カード)を選択肢に表示させて
実行させる方法につきまして。
とりあえず、簡単にスクリプトを組んでみたのですが、
もっとスマートにまとめられないかなと思い質問してみました。
アイテム(カード)の配列を取得してみたのですが、
全部IDで表示されてしまい、さらにカード以外のアイテムまでも表示されて
しまいます。カードのみを表示し、かつゲーム内の名前で表示させるには
どのようにしたら良いかアドバイスいただけるとありがたいです。
できれば持っていないアイテム(カード)は
???ではなくて表示自体されないようにしたいです。
例)【持ち物】 【選択肢】
ミカエルカード
ガブリエルカード ミカエルカード
ゴッドハーブ ⇒ ガブリエルカード
ゴッドウッド
HP回復ポーション
# スクリプトに関する質問の場合はこの下にスクリプトを記載してください # ↓↓↓スクリプトはここから↓↓↓ michaelcard = getItemParamWithId(20009) gabrielcard = getItemParamWithId(20010) card = createArray() card = getItemIdArray() if 0 <= getItemIndexWithId(20009) card[0] = getValueFromItemParam(michaelcard, getItemViewNameIndex()) else card[0] = "???" end if 0 <= getItemIndexWithId(20010) card[1] = getValueFromItemParam(gabrielcard, getItemViewNameIndex()) else card[1] = "???" end speakWithSelectArray(card, "カードを選んでください。") # ↑↑↑スクリプトはここまで↑↑↑
コメントする
コメントするには、ログインする必要があります。
・4行目はたぶん不要です。これのせいで配列がアイテムIDの配列になってしまっています。
・アイテムの所持を判断するときは、getItemIndexWithId()を使うといいと思います。所持していない場合は「-1」になります。
・カードのみを表示したいということなので、pushArrayを使うのがおすすめです。ためしにスクリプトを書いてみます。
実際に試していないので間違っているところがあるかもしれません(^^;
こちらを参考にしていますので、ぜひ参照なさってください。
http://rmake.jp/boards/2/topics/398
お返事ありがとうございます。
さっそく試してみました。
で、いくつかエラーを吐いてしまいまして、
まず、)がなかったので追加してみました。
ここまではよかったのですが、
line:25
line:27
getValueFromItemParamの第一引数は
配列でなければなりません
と表示されてしまいました。
カードを所持してみてもnullとか表示されて
実行できませんでした。
いろいろ調べながらやってるのですが
なかなか理解できなくて申し訳ありません。
よろしくアドバイスをお願い致します。
getItemParamWithIdに変更したらできました。
やったぁ、idohaka様ありがとうございました。
スクリプト貼り付けておきますね。
やっぱり頭で考えるだけではだめですね・・・(^^;
おめでとうございます。