Dear!くろうどぃあ!

このブログでは、私、くろうどの趣味に関する事を記述します。
当面は、「RPGツクールMV」をメインにします。

多言語プラグイン&くろうどゲッターパターン

2022-07-13 03:09:31 | RPGツクールMZ
さて皆さん。
お久しぶりです。

今回は、久しぶりの投稿テストを兼ねて、私の「多言語プラグイン」の紹介を少しだけ。

このプラグインでは、オプション等から言語の切替ができるようになります。

↓ダウンロードはGitHub↓

GitHub - kuroudo119/RPGMZ-Plugin: RPGツクールMZ用プラグイン置き場。

RPGツクールMZ用プラグイン置き場。. Contribute to kuroudo119/RPGMZ-Plugin development by creating an account on GitHub.

GitHub


以下は、「くろうどゲッターパターン」と勝手に呼んでいる処理の記述方法です。
ゲッターを含むオブジェクトを戻り値にしています。
車輪の再発明なのかどうかは分かりませんが、この処理のおかげで、他のプラグインとの競合が減っているはずです。

Game_System.prototype.resetDatabase = function(database) { database.forEach(data => { if (data) { data.name_0 = data.name_0 ? data.name_0 : data.name; data.desc_0 = data.desc_0 ? data.desc_0 : data.description; Object.defineProperties(data, { name: { get: function() { return KRD_MULTILINGUAL.getData(data).name; }, configurable: true }, description: { get: function() { return KRD_MULTILINGUAL.getData(data).description; }, configurable: true } }); } }); };

KRD_MULTILINGUAL.getData = function(data) {
	return {
		get name() {
			return KRD_MULTILINGUAL.getReturnData(data, "name_", "name");
		},
		get nickname() {
			return KRD_MULTILINGUAL.getReturnData(data, "nickname_", "nickname");
		},
		get profile() {
			return KRD_MULTILINGUAL.getReturnData(data, "profile_", "profile_1st", "profile_2nd");
		},
		get description() {
			return KRD_MULTILINGUAL.getReturnData(data, "desc_", "desc_1st", "desc_2nd");
		},
		get message1() {
			return KRD_MULTILINGUAL.getReturnData(data, "message1_", "message1");
		},
		get message2() {
			return KRD_MULTILINGUAL.getReturnData(data, "message2_", "message2");
		},
		get message3() {
			return KRD_MULTILINGUAL.getReturnData(data, "message3_", "message3");
		},
		get message4() {
			return KRD_MULTILINGUAL.getReturnData(data, "message4_", "message4");
		},
		get iconIndex() {
			return data.iconIndex;
		},
		get id() {
			return data.id;
		}
	};
};

それでは今回はこの辺で。
ごきげんよう。


最新の画像もっと見る