[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
1-
101-
201-
301-
401-
501-
この機能を使うにはJavaScriptを有効にしてください
|
個人制作ゲームのネタ帳★12
103
:
名無しさん
:2024/11/19(火) 13:45:14
/*:
* @target MZ
* @plugindesc ステートの重ね掛けによる変化を実現するプラグイン
* @author
* @help
* このプラグインでは、特定のステートがすでにかかっている対象に
* 再度同じステートを付与すると、別のステートに変化させることができます。
*
* 【特徴】
* 1. ステートAを持つ対象に再度ステートAを付与 → ステートBに変化
* 2. 重ね掛けの回数制限なし(無限に変化可能)。
*
* 【設定方法】
* - stateTransitionsオブジェクトで変化元と変化先のステートIDを指定してください。
*/
(() => {
// ステート変化設定: ステートA → ステートB
const stateTransitions = {
1: 2, // ステートID1を重ね掛けするとステートID2に変化
2: 3, // ステートID2を重ね掛けするとステートID3に変化
// 必要に応じて追加
};
// ステート追加時の挙動を上書き
const _Game_Battler_addNewState = Game_Battler.prototype.addNewState;
Game_Battler.prototype.addNewState = function(stateId) {
if (!$dataStates[stateId] || !$dataStates[stateTransitions[stateId]]) {
console.warn(`ステートID${stateId}またはその変化先が存在しません。`);
return;
}
if (this.isStateAffected(stateId) && stateTransitions[stateId]) {
console.log(`ステートID${stateId}が${stateTransitions[stateId]}に変化しました。`);
this.removeState(stateId); // 元のステートを削除
this.addNewState(stateTransitions[stateId]); // 変化先ステートを付与
} else {
_Game_Battler_addNewState.call(this, stateId);
}
};
})();
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板