特定のアイテムを使用してレベルアップするシステム

しろやまめ
記事: 5
登録日時: 2017年9月15日(金) 03:46

特定のアイテムを使用してレベルアップするシステム

投稿記事by しろやまめ » 2017年9月15日(金) 03:59

初のトピック失礼致します。

私は現在制作予定のゲーム内で、隠しアイテムを利用して、お金とは別のポイントを扱っているのですが(例:名声ポイント、など)、これをパーティ共通の経験値にも置き換えてレベルアップに消費するシステムを作りたいと考えています。

イメージとしては、ひきも記様の公開なさっている「お金でレベルアップ」【http://hikimoki.sakura.ne.jp/plugin/plugin_system.html 】が非常に近く、
これをお金(G)ではなく前途の特定のアイテムを消費して行うことができれば理想的なのですが、プラグインやスクリプトに明るくなく改変の仕方も読んでもどこをいじれば良いか分かりません。

新しいプラグインの提供とまでは行かずとも、プラグインの改変方法だけでもどなたかご助力頂けましたら幸いです。

よろしくお願い致します。

アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しぐれん » 2017年9月15日(金) 04:15

アイテムでレベルアップとありますが、ポケモンの「ふしぎなアメ」のような処理であってますか?

経験値を加算するか、レベルを直に変更するかで作り方が少し異なります。
アイテムごとに通貨のように10,50,100,500と名声ポイントが決まっているのか。
あるいは名声ポイント自体が数値として管理されているか。
これらの仕様を確認しておきたいです。
現在、プラグイン依頼はお休み中です。
しろやまめ
記事: 5
登録日時: 2017年9月15日(金) 03:46

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しろやまめ » 2017年9月15日(金) 07:57

>>しぐれん様

お早い返信ありがとうございます。

アイテムと言っているのはポイントを隠れアイテム(アイテム欄には現れない)としてゲーム内に置いているからで、実際は数値として管理されている、かと思います。

仕様は、次の必要経験値(記載には名声値)と同じポイントを消費して、一つずつレベルが上がる形が理想的です。(アイテム数の上限は、別のプラグインにて解放済みです)
アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しぐれん » 2017年9月15日(金) 08:22

通常のアイテムとして格納されているのであれば、以下の方法で行けます。

コード: 全て選択

Scene_GoldLevelUp.prototype.commandLevelUp = function() {
    var actor = this.actor();
    $gameParty.loseItem($dataItem[名声のID],actor.nextRequiredGold());
    actor.changeExp(actor.currentExp() + actor.nextRequiredExp(), false);
    this._commandWindow.refresh();
    this._statusWindow.refresh();
//    this._commandWindow.deselect();
    this._commandWindow.activate();
  };

アイテムの個数は表示していないので表示はおかしいですが、実行部分はこんな感じです。
現在、プラグイン依頼はお休み中です。
しろやまめ
記事: 5
登録日時: 2017年9月15日(金) 03:46

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しろやまめ » 2017年9月15日(金) 23:00

>>しぐれん様

返信ありがとうございます。

プラグインのコードの中の該当部分をご提示頂いたように書き換えてみたところ、
「reference error : $dataItem is not defined」というエラーが出てしまいました。
アイテムIDを$dataItem[1]として指定している筈なのですが…。
アバター
まっつUP
記事: 1155
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by まっつUP » 2017年9月15日(金) 23:37

$dataItemではなく$dataItemsでは。
RPGで笑顔を・・・

ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup

github
https://github.com/mattuup/RPGMakerMZ
しろやまめ
記事: 5
登録日時: 2017年9月15日(金) 03:46

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しろやまめ » 2017年9月16日(土) 03:52

>>まっつUP様

ご指摘の通りItemをItemsに直しましたところ、
確かに実行部分は成功しました!ありがとうございます。

しかしScene上では消費するアイテムではなく所持金が表記されていること、
そしてもう一つ問題なのですが、レベルアップできるかどうかの判定が消費するアイテムではなく所持金に依存していることが気がかりです。(アイテムを消費し切っていても、所持金があればそれを消費せずにレベルアップできてしまう)

こちらを解消する方法はないでしょうか。
アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しぐれん » 2017年9月16日(土) 04:41

プラグインを書き換えて再アップしました。
あと何回か修正して調整しますので、確認お願いします。
添付ファイル
TMGoldLevelUp.js
(17.25 KiB) ダウンロード数: 94 回
現在、プラグイン依頼はお休み中です。
しろやまめ
記事: 5
登録日時: 2017年9月15日(金) 03:46

Re: 特定のアイテムを使用してレベルアップするシステム

投稿記事by しろやまめ » 2017年9月17日(日) 11:16

>>しぐれん様

改変プラグインの配布ありがとうございます!
導入してみたところ理想的に動作しています!
大変ありがとうございました。

“MV:プラグイン素材のリクエスト” へ戻る