アイテムのIDからアイテムの所持数を取得(質問掲示板

投稿: 000 1  mini naoki 投稿:2011/08/15 13:59:15(最新:2012/06/20 00:17:20)
大体分かったのですが、所持数が分かりません。
a = getItemParamWithId(36) 
speak("アイテムID:36 = ", getValueFromItemParam(a, getItemIdIndex())) 
speak("アイテムName:36 = ", getValueFromItemParam(a, getItemViewNameIndex()))

でIDと名前が出てきますが、所持数は分かりません。
誰か、このバカを助けてください。お願いします。

コメントする

コメントするには、ログインする必要があります。

コメント一覧

User icon mini 退会したユーザー(投稿日:2011/09/03 13:47, 履歴)
あ、僕もう分かりましたwちょっと考えれば分かると思いますよ。

ヒント。
getItemIdArray関数でででくる配列の中身はアイテムのIDです。

あとはアイテムのIDから対応する
パラメーターを取得する関数、ありませんでした?
User icon mini 退会したユーザー(投稿日:2012/06/20 00:17, 履歴)
今更ながら補足~。

>アイテムのIDから対応するパラメーターを取得する関数
これは不要でした。
ID配列取得したら調べたいアイテムのIDの数を数えさせるだけでした。
Nyan mini rurun9(投稿日:2011/08/20 23:03, 履歴)
その、自分で考えてつくる努力をする気さえ最初から全く0のままなのは、どうかと思います。

スクリプト/配列
スクリプト/つくってみよう1

じゃ、がんばって。

覚えるのヤダー、とか読むの面倒、と思うなら止めましょー。
既にコピペで完成する領域を超えてしまったのです。
「○○というようなのをつくりたい」ではなく
「△△ならつくれる」という考え方で組み合わせていくのです。
000 1  mini naoki(投稿日:2011/08/20 21:27, 履歴)
配列に関しては、素人以下なので、使い方が分かりません。
a=getItemIdArray()

これを使ってどうすればいいか、分かりません。
どうするのか、スクリプトで教えてください。よろしくお願いします。
Nyan mini rurun9(投稿日:2011/08/20 17:30, 履歴)
せめてこのスレッドくらい、全部読み直してみましょーよw
a=getItemIdArray()
で変数aに所持アイテムのID番号が並んだ配列が入ります。
装備中の品は入ってないので注意。

配列は、確か図鑑やってたくらいだから扱える筈ですよね?
本当に数える事ができるのかどうかカナリ疑わしいと思ってる所ですが、
一応完成したらどんなスクリプトになったのか、ココに貼り付けといてくださいねー。
質問板で「自己解決しました」で終了するのって、本人だけワカって逃げるようなものですから。
000 1  mini naoki(投稿日:2011/08/19 22:01, 履歴)
「アイテムの所持配列を得る方法は関数ひとつ書くだけ。 」
これのスクリプトが分かりません。
これが分かれば、出来ます。よろしくお願いします。
Nyan mini rurun9(投稿日:2011/08/19 18:44, 履歴)
アイテムの所持数を数えて、それを変数に入れる。

アイテムの所持配列を得る方法は関数ひとつ書くだけ。
その配列の中に目当てのアイテムIDがいくつ含まれているかを数えるだけ。

手順は全部書いてありますやん。
で、何がわからないの?
   mini ___(投稿日:2011/08/19 18:12, 履歴)
所持数の取得は出来るんじゃなかったの?
って思ったんですけど如何かえー。
 アイテムについて
 アイテムのIDから名前と所持数を

def F_getItemQty(iID)  # 個数を返す関数としておくと便利か
 ~;          # 何かしら数える処理
 return Qty;      # 個数を返す
end;

speak(F_getItemQty(3215) , "個だとよ。");
とかそんな感じなんじゃないでしょーか。
所持アイテムと装備アイテムは別配列で管理されてるんですかー。

000 1  mini naoki(投稿日:2011/08/19 16:01, 履歴)
え~と、私がやろうとしている事は、
下のスクリプトが分かれば出来ます。
speak("現在の回復薬の所持数は、~個です。")

の「~」にどんなスクリプトを入れれば、
「現在の回復薬の所持数は、4個です。」とか表示できるのですか?
これが分かれば良いのです。
誰か、教えてください!
Nyan mini rurun9(投稿日:2011/08/19 14:30, 履歴)
>パラメータに無かったのですかー

アイテムのパラメータて、アイテム作成時に自分で設定してるんだから、何があるのか全部知ってる筈。

>みたいなスクリプトはどうするの

ありゃりゃ。
if文の書き方まで忘れたとか…なのに何故所持アイテムを数える事が出来るのか既にワケワカラン
えーと、再びヘルプとwikiを全部読むところから出直しましょー(定期的にコレ書いてますが、決して冗談などではアリマセン)
000 1  mini naoki(投稿日:2011/08/19 12:23, 履歴)
なるほど。
パラメータに無かったのですかー。
もし、IDが3000のアイテムを何個持っているかを取得して、
5個以上持っていたら、イベント発生、みたいなスクリプトはどうするの
ですか?
Nyan mini rurun9(投稿日:2011/08/15 17:15, 履歴)
所持数は、アイテムのパラメータには無いですよー。

関数リファレンス、アイテム関連の中から

・getItemIdArray()
 所持アイテムのID配列を取得

・getPartyMemberEquipmentIdArray(getPartyMember(キャラID))
 装備アイテムのID配列を取得
 プレイヤーキャラの場合は"playerCharacter"と指定

を使って、この中に目当てのIDがいくつあるか、を数えましょー。