いつもお世話になっています。
表題についてなのですが
分かりづらい表現で申し訳ないのですが
総アイテム数というのは
ポーションが5つということではなく
ポーション/薬草/宝石→3つ
というようにアイテムリストの総数の事です。
総アイテム数を変数に入れる場合のスクリプトの記載が分かる方はいらっしゃるでしょうか。
理由は、
アイテムリストがいっぱいになり、アイテムが持てない状態になった時に
「これ以上持てない」というメッセージを表示したい為です。
なので変数に総アイテム数を代入し、
条件分岐で20以上だったらメッセージ表示…というイベントを作ろうとしているのですが、
総アイテム数を取得する方法が分かりませんでした。
当方スクリプトに疎くて申し訳ないのですが
もし分かる方がいらっしゃいましたら教えて頂ければ幸いです。
【解決】【VXace】総アイテム数を変数に代入する方法など
【解決】【VXace】総アイテム数を変数に代入する方法など
最後に編集したユーザー inu13 [ 2022年7月07日(木) 00:17 ], 累計 1 回
Re: 【VXace】総アイテム数を変数に代入する方法など
コード: 全て選択
# 所持アイテム種類の合計
$game_variables[1] = $game_party.items.size
# 装備品含む全所持アイテム種類の合計
$game_variables[2] = $game_party.all_items.size
# 装備品含む全所持アイテムの個数合計
$game_variables[3] =
$game_party.all_items.inject(0){|sum, item|
sum + $game_party.item_number(item)
}
Re: 【VXace】総アイテム数を変数に代入する方法など
wan1313 様
名無し蛙 様
私もスクリプトを作ってしまいました
自動で格納するように作っていた結果時間が掛かってしまい回答が被ってしまいましたね…
申し訳ありません
名無し蛙 様
私もスクリプトを作ってしまいました
自動で格納するように作っていた結果時間が掛かってしまい回答が被ってしまいましたね…
申し訳ありません
コード: 全て選択
#--------------------------------------------------------------------------
# ● 設定項目
#--------------------------------------------------------------------------
ITEM_SIZE_VARIABLES = 1 #アイテムの所持している種類数を格納する変数ID
WEAPON_SIZE_VARIABLES = 2 #武器の所持している種類数を格納する変数ID
ARMOR_SIZE_VARIABLES = 3 #防具の所持している種類数を格納する変数ID
#--------------------------------------------------------------------------
# ● 現在の所持種類数を格納
#--------------------------------------------------------------------------
def item_size_storage
item_size = $game_party.instance_variable_get(:@items).size
weapon_size = $game_party.instance_variable_get(:@weapons).size
armor_size = $game_party.instance_variable_get(:@armors).size
$game_variables[ITEM_SIZE_VARIABLES] = item_size
$game_variables[WEAPON_SIZE_VARIABLES] = weapon_size
$game_variables[ARMOR_SIZE_VARIABLES] = armor_size
end
class Game_Interpreter
#--------------------------------------------------------------------------
# ● アイテムの増減
#--------------------------------------------------------------------------
alias command_126_deden command_126
def command_126
command_126_deden
item_size_storage
end
#--------------------------------------------------------------------------
# ● 武器の増減
#--------------------------------------------------------------------------
alias command_127_deden command_127
def command_127
command_127_deden
item_size_storage
end
#--------------------------------------------------------------------------
# ● 防具の増減
#--------------------------------------------------------------------------
alias command_128_deden command_128
def command_128
command_128_deden
item_size_storage
end
end
module BattleManager
#--------------------------------------------------------------------------
# ● ドロップアイテムの獲得と表示
#--------------------------------------------------------------------------
def self.gain_drop_items
$game_troop.make_drop_items.each do |item|
$game_party.gain_item(item, 1)
item_size_storage
$game_message.add(sprintf(Vocab::ObtainItem, item.name))
end
wait_for_message
end
end
Re: 【VXace】総アイテム数を変数に代入する方法など
>>名無し蛙様
こちらのスクリプトを入れてみた所、アイテム総数の数値が変数に代入されていました!
色々弄ってみても上手くいかなかったので助かりました…ありがとうございます!
>>DEDEN様
スクリプトを作っていただきありがとうございます!
こちらの入れている他のスクリプトとの競合かと思うのですがエラーが出てしまっていました…
作っていただいたのにすみません…。
【補足】
アイテムの中から「大事なもの」を引いた数を出したかったので
yahoo知恵袋の下記の回答を参考にさせて頂き
https://detail.chiebukuro.yahoo.co.jp/q ... 1197578751
$game_variables[1] = $game_party.items.select{|i| !i.key_item?}.size
と記載したところ大事なものを除いたアイテムの総数を代入することが出来ました。
ありがとうございました!
こちらのスクリプトを入れてみた所、アイテム総数の数値が変数に代入されていました!
色々弄ってみても上手くいかなかったので助かりました…ありがとうございます!
>>DEDEN様
スクリプトを作っていただきありがとうございます!
こちらの入れている他のスクリプトとの競合かと思うのですがエラーが出てしまっていました…
作っていただいたのにすみません…。
【補足】
アイテムの中から「大事なもの」を引いた数を出したかったので
yahoo知恵袋の下記の回答を参考にさせて頂き
https://detail.chiebukuro.yahoo.co.jp/q ... 1197578751
$game_variables[1] = $game_party.items.select{|i| !i.key_item?}.size
と記載したところ大事なものを除いたアイテムの総数を代入することが出来ました。
ありがとうございました!