1. このサイトではcookie (クッキー) を使用しています。サイトの利用を継続した場合、cookieの使用に同意したものとみなさせていただきます。 詳しくはこちらをご覧ください。

戦闘時MPが固定値で開始し、ターン開始時固定値回復するようにしたいetc

anchor2019-05-14に開始した「ツクールMV」の中の討論

  1. anchor

    anchor ユーザー

    最近ツクールを始めたので言葉が足りない事もあると存じますが、よろしくおねがいします。

    TCGのマナコストの様な戦闘システムを作りたいと考えております。
    MPの最大値を10に設定し、戦闘開始にMP3でスタート。
    ターン開始時に2回復。
    戦闘終了後HPは全回復。MPは上記の通り…という形にしたいのですが、
    戦闘開始時に毎回MPを最大値ではなく固定値にする事は出来るでしょうか?
    また、ターン開始時に固定値回復するよう設定したいと考えています。

    そちらと、バトルコマンドに攻撃や防御と同じ様な押したらすぐ発動する
    ターン終了を挿れたいのですが、これもご教授いただければ幸いです。

    恐れ入りますが、どうぞよろしくおねがい致します。

    ツクール本体のバージョン
    1.62
     
    #1
  2. YouChalice

    YouChalice ユーザー

    こんにちは。
    少し違うかもしれませんが、MPではなくTPの方を利用することで比較的簡単に近いものが出来ると思います。
    TPは『TP持ち越し』の設定をしなければ戦闘毎に初期値に戻るので、これを利用します。

    まずTPの最大値を10にする方法ですが、
    こちらはツクマテ様の方でぶちょー様がTPの最大値を設定できるプラグインを公開されておりますので
    そちらを利用されると良いかと思います。
    https://tm.lucky-duet.com/viewtopic.php?t=2757

    次にTPの初期値を3にする方法を記します。
    ①jsフォルダの中にある『rpg_objects』をメモ帳などで開きます。
    ②『rpg_objects』内の以下のコードを探してください。
    PHP:
    Game_Battler.prototype.initTp = function() {
    this.setTp(Math.randomInt(25));
    };
    ③この25の部分がデフォルトのTPの初期値ですので、ここを3に書き換えます。
    これでTPの初期値は3になりました。

    次に攻撃時、被ダメージ時にTPが増えないようにする方法を記します。
    ①データベースのスキルのページのスキルの発動項目内にある『得TP』を0にします。これで攻撃時にTPが増えなくなります。
    ※TPをブーストするようなスキルを作る場合はここに増加値を入れてください。その他のスキルは全て0にします。
    ②データベースのアクター、又は職業のページの特徴の欄の能力値のタブを開き、『特殊能力値』の『TPチャージ率』を0%にします。これで被ダメージ時にもTPが増えなくなります。

    次にターン毎にTPが2増加する方法を記します。
    ※TP回復はバトルイベントで行うため、全ての戦闘にTP回復が適用されるようにツクールweb様で公開されている公式プラグイン『YEP_BaseTroopEvents.js』を導入をおすすめします。
    このプラグインを使うことで、敵グループ1だけに以下の設定を行えば、全ての戦闘に適用されます。
    ①データベースの敵グループのバトルイベントを設定します。条件は『ターン終了』、スパンは『ターン』に設定します。
    ②イベントコマンドで『スクリプト』を選択し、以下のように記述します。
    PHP:
    $gameParty.members().forEach(function(actor) {
    actor.gainTp(2);
    });
    これで次のターンが始まる前にTP2回復するようになります。

    最後に戦闘終了時にHPが全回復する方法ですが、こちらは戦闘のエンカウントの方式により設定が異なります。
    シンボルエンカウント方式(マップ上の敵の歩行グラフィックとの接触で戦闘が始まるタイプ)のエンカウントでしたら
    戦闘の勝利時、敗北時、逃走時に各々イベントの設定が可能ですので、
    勝利時、逃走時の部分に全回復を設定してやればHPが全回復するようになります。
    (上にも記しましたがTPは持ち越しの設定をしない限り戦闘毎に初期値に戻るので満タンにはなりません。)
    また、ランダムエンカウント(歩いてたら突然戦闘が始まるタイプ)を採用される場合やプラグインを利用される場合、
    こちらもぶちょー様がプラグインを公開されておりましたのでこちらをご利用されたらよいかと思います。
    https://tm.lucky-duet.com/viewtopic.php?t=2782

    また、MPを使用しなくなりますので、メニュー画面や戦闘画面からMPのゲージが必要なくなるかもしれません。
    各々のゲージを非表示にするプラグインなどもあると思いますので、もしMPゲージを非表示にする場合は別途探してみてください。

    TCG風の方式とは少し違うかもしれませんが、ご参考になれば幸いです。
     
    #2
    munokura がいいね!しました

このページを共有