ページ 11

ステートを時間経過性にする方法

Posted: 2021年5月21日(金) 00:39
by りるり
初めまして。
今回「ステートの解消を時間制にする」プラグインを作りたくて質問しています

具体的には、ターン終了時に発生しているバッドステート(毒 など)によるダメージとターン加算の処理を
各キャラのパラメータに依存せずに3秒に1回発生させる仕様

にしたいのですが
①ステートを付与するメソッドが不明
②バトラーの変数のthis._buffs と this._states の違いがいまいちわからない。
③ダメージ処理ってどこでやっているの?

の3点を1週間かけても解明できないのでこの質問スレッドに書くことにしました

上記①~③に対する回答を知っている方がいたら教えていただきたいです。
宜しくお願い致します。

Re: ステートを時間経過性にする方法

Posted: 2021年5月21日(金) 02:03
by Plasma Dark
ステートを付与するメソッドが不明
Game_Action.prototype.apply からコードを追っていけばわかるかと思います。
このメソッドは、スキル等の行動を適用する処理を行っています。
バトラーの変数のthis._buffs と this._states の違いがいまいちわからない。
_buffsが強化/弱体の状態、_statesがかかっているステートを表します。
ダメージ処理ってどこでやっているの?
ステートによって毎ターン受けるダメージの処理のことであれば、 Game_Battler.prototype.onTurnEnd からコードを追ってみてください。
このメソッドは毎ターン終了時にバトラーごとに行うべき処理が書かれています。