【解決済】YEP_ItemCoreで1個1個 店売りする以外では所持装備品を減らしてもセーブデーター容量が減りません

返信する
kumatokuma
記事: 34
登録日時: 2017年7月21日(金) 13:50

【解決済】YEP_ItemCoreで1個1個 店売りする以外では所持装備品を減らしてもセーブデーター容量が減りません

投稿記事 by kumatokuma »

似たような質問は見つけたのですが、解決していなかったので質問させていただきます。

YEP_ItemCore1.3のみ入れた状態で、例えば1000個装備を持っていて
1つ1つ売却すれば、何百個も減らすとセーブデータも大幅に減るのですが、
それ以外の方法で装備品を大量に減らして所持品を0個にしても
セーブデーターの容量が減らず、困っています。



どなたか、イベントから正しく減らす方法をご存知の方は
教えていただけるとありがたいです。

以下では所持品が減るだけで、セーブデータを減らすことは出来ませんでした。
●イベントコマンドの武器の増減や防具の増減から減らす。
 (まとめて減らしても、1個ずつ減らすを何度も繰り返してもダメでした)
●イベントコマンドのスクリプトで$gameParty._weapons = {}
●ItemCoreはID3000から始まるからと、
イベントスクリプトで
 for(var i = 3000; i < 5000; i++){
$gameParty.loseItem($dataWeapons, 1)
}
最後に編集したユーザー kumatokuma [ 2019年1月05日(土) 00:14 ], 累計 1 回
アバター
剣崎 宗二
記事: 742
登録日時: 2016年11月12日(土) 20:36
連絡する:

Re: YEP_ItemCoreで1個1個 店売りする以外では所持装備品を減らしてもセーブデーター容量が減りません

投稿記事 by 剣崎 宗二 »

前の質問に対し、時間が無くて回答できていなかった剣崎です。
この度インフルに当たったが故に皮肉にも時間が出来たので改めて解析を掛けました。

結論としては、前回の質問のコードの引用となりますが例えば武器全売りの場合

コード: 全て選択

var price = 0;
var score = 0;
$gameParty.weapons().forEach(function(item){
    if(item.price > 0){//売却可能か
        price = Math.floor($gameParty.numItems(item) * item.price / 2);
        score += price;
        $gameParty.loseItem(item, $gameParty.numItems(item), false);
        DataManager.removeIndependentItem(item); //この1行を追加!!!
    }
});
$gameVariables.setValue(15,score);//第一引数に変数IDを入れて下さい。
とすればセーブデータを削減する事が可能です。
要は
DataManager.removeIndependentItem(item); 
(itemにはアイテムの実データ。$dataWeapons等から取得した物など)
を実行すれば済む話ですね。
----
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
アバター
剣崎 宗二
記事: 742
登録日時: 2016年11月12日(土) 20:36
連絡する:

Re: YEP_ItemCoreで1個1個 店売りする以外では所持装備品を減らしてもセーブデーター容量が減りません

投稿記事 by 剣崎 宗二 »

(以下は仕組みや今回の現象の理由となります。プログラム内容などに興味がない方は見なくても問題ありません)

loseItemの仕組みは実質、量を-にしたgainItemとなります。
YEP_ItemCoreは一見、loseItemの際にremoveIndependentItemが走って問題なく排除されているように見えるのですが、ここで走っているのはGame_Party.prototype.removeIndependentItemの方(所持データから該当アイテムを削除するのを担当している)の方であり、DataManager.removeIndependentItem(アイテム基礎データから削除するのを担当)の方ではありませんでした。

そして、実際にセーブデータに追記されているのは基礎データの方なので…
----
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
kumatokuma
記事: 34
登録日時: 2017年7月21日(金) 13:50

Re: 【解決済】YEP_ItemCoreで1個1個 店売りする以外では所持装備品を減らしてもセーブデーター容量が減りません

投稿記事 by kumatokuma »

剣崎 宗二様、丁寧にご回答頂き、ありがとうございます。
お陰様で、セーブ容量を減らすことができました!!
本当に困っていたので、凄く助かりました。
この度は、ありがとうございました。
返信する

“MV:質問”に戻る