ページ 11

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

Posted: 2017年9月15日(金) 03:59
by しろやまめ
初のトピック失礼致します。

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

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

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

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

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

Posted: 2017年9月15日(金) 04:15
by しぐれん
アイテムでレベルアップとありますが、ポケモンの「ふしぎなアメ」のような処理であってますか?

経験値を加算するか、レベルを直に変更するかで作り方が少し異なります。
アイテムごとに通貨のように10,50,100,500と名声ポイントが決まっているのか。
あるいは名声ポイント自体が数値として管理されているか。
これらの仕様を確認しておきたいです。

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

Posted: 2017年9月15日(金) 07:57
by しろやまめ
>>しぐれん様

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

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

仕様は、次の必要経験値(記載には名声値)と同じポイントを消費して、一つずつレベルが上がる形が理想的です。(アイテム数の上限は、別のプラグインにて解放済みです)

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

Posted: 2017年9月15日(金) 08:22
by しぐれん
通常のアイテムとして格納されているのであれば、以下の方法で行けます。

コード: 全て選択

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();
  };

アイテムの個数は表示していないので表示はおかしいですが、実行部分はこんな感じです。

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

Posted: 2017年9月15日(金) 23:00
by しろやまめ
>>しぐれん様

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

プラグインのコードの中の該当部分をご提示頂いたように書き換えてみたところ、
「reference error : $dataItem is not defined」というエラーが出てしまいました。
アイテムIDを$dataItem[1]として指定している筈なのですが…。

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

Posted: 2017年9月15日(金) 23:37
by まっつUP
$dataItemではなく$dataItemsでは。

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

Posted: 2017年9月16日(土) 03:52
by しろやまめ
>>まっつUP様

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

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

こちらを解消する方法はないでしょうか。

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

Posted: 2017年9月16日(土) 04:41
by しぐれん
プラグインを書き換えて再アップしました。
あと何回か修正して調整しますので、確認お願いします。

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

Posted: 2017年9月17日(日) 11:16
by しろやまめ
>>しぐれん様

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