【解決済】装備中のアイテム名やアイテムのIDを変数に代入

返信する
べんね
記事: 2
登録日時: 2019年2月03日(日) 17:57

【解決済】装備中のアイテム名やアイテムのIDを変数に代入

投稿記事 by べんね »

現在 アクターが
武器 武器 防具 防具 防具 防具
という風に装備可能な状態にしています。

このときに
➀パーティメンバー1番が 1番目に装備中アイテムのIDを
変数1に代入する
②パーティメンバー1番が1番目に装備中のアイテム名を
変数1に代入する

上記の2つのような 処理をスクリプトで
実行するには どのようなソースを書けば良いでしょうか?
また アイテムを装備していない場合も
なんらかの数値 例えば0や アイテム名なら なし
というような値を変数に入れる事はできますでしょうか?


初心者です 自分なりに 調べてみたのですが
うまく いきません。 頭の悪い質問失礼致します。
ご教示お願い致します。
最後に編集したユーザー べんね [ 2019年2月04日(月) 09:24 ], 累計 1 回
astral
記事: 106
登録日時: 2018年11月14日(水) 00:21
連絡する:

Re: 装備中のアイテム名やアイテムのIDを変数に代入

投稿記事 by astral »

こんばんは。

例えば次のスクリプトで実現可能です。
上3行のみ数字を書き換えてください。
変数番号は連番で、1番にアイテムID、2番にアイテム名が代入されます。
存在しないパーティ番号と未装備、アイテム名がない場合は、0となしが変数に代入されます。
パーティ番号とスロット番号は、0番目から始まります。

このスクリプトでは装備スロットのみで、武器か防具は判定していません。

コード: 全て選択

var variableId = 1; //変数番号
var partyId = 0;    //パーティ番号
var slot = 0;       //装備スロット番号

var actor = $gameParty.members()[partyId];
var equip = actor && actor.equips()[slot];
var name = equip && equip.name || 'なし';
var id = equip && equip.id || 0;
$gameVariables.setValue(variableId, id);
$gameVariables.setValue(variableId + 1, name);
べんね
記事: 2
登録日時: 2019年2月03日(日) 17:57

Re: 装備中のアイテム名やアイテムのIDを変数に代入

投稿記事 by べんね »

astral様
ありがとうございます
なるほど とても参考になるうえ
使い方の 分かりやすいソースまで
あげて頂きありがとうございます

これをベースに 勉強してみたいと思います♪
返信する

“MV:質問”に戻る