乗り物の通行設定

アバター
カフェイン
記事: 8
登録日時: 2019年3月23日(土) 17:23
お住まい: 山口県
連絡を取る:

乗り物の通行設定

投稿記事by カフェイン » 2023年9月26日(火) 12:39

こんにちは、いつもお世話になっております。

フィールドマップの溶岩の上を大型船で通行したいのですが、
乗り物ごとの通行設定はどのように行うのでしょうか。
プラグインで設定しない限り不可能だと思いますので、どなたか詳しい方がいらっしゃいましたら、恐れ入りますがよろしくお願いいたします。

名無し蛙
記事: 304
登録日時: 2015年11月23日(月) 02:46

Re: 乗り物の通行設定

投稿記事by 名無し蛙 » 2023年9月26日(火) 20:50

船の通行判定はデフォルトだと
素材規格の深海タイルに設定されたタイルセット情報と密接な関りがあり
この辺は弄る事が出来ないので
地形タグで指定した地形は大型船が通行出来るように拡張する、という改造が安牌だと思いますね。

プラグイン化するならこんな感じですかね

コード: 全て選択

/*:

 * @param shipPassableTerrainTag
 * @text 大型船が通行可能な地形タグ
 * @default 7
 * @desc 大型船が通行可能な地形タグを指定してください。(1-7)
 * @type number
 * @min 1
 * @max 7
 *
 */

(() => {
    'use strict'
    const pluginName                = decodeURIComponent(document.currentScript.src).match(/^.*\/js\/plugins\/(.+)\.js$/)[1];
    const parameters                = PluginManager.parameters(pluginName);
    const shipPassableTerrainTag    = Number(parameters['shipPassableTerrainTag']) || 7;

    const _Game_Map_isShipPassable = Game_Map.prototype.isShipPassable;
    Game_Map.prototype.isShipPassable = function(x, y) {
        const passable = _Game_Map_isShipPassable.apply(this, arguments);
        return passable || (this.terrainTag(x, y) === shipPassableTerrainTag);
    };
})();
アバター
カフェイン
記事: 8
登録日時: 2019年3月23日(土) 17:23
お住まい: 山口県
連絡を取る:

Re: 乗り物の通行設定

投稿記事by カフェイン » 2023年9月28日(木) 21:22

名無し蛙様

ありがとうございます!
ちゃんと動作しました!

“MV:質問” へ戻る