0649ゲーム好き名無しさん (ワッチョイ 614e-24l8)
2017/09/14(木) 23:47:53.48ID:nBZt7BTf0それだと上級職がLV20扱いになっちゃう(returnの部分で処理が終了してしまう)
あと今後Studioの更新でStateItemAIクラスの中にgetItemScore以外のメソッドが追加されても無効化されてしまうから
以下のようなスクリプト書いてPluginフォルダに突っ込んだ方がいい
var LOW_CLASS_MAX_LEVEL = 20;
//StateItemAIのgetItemScoreだけをピンポイントで上書きする(他には影響しない)
StateItemAI.getItemScore = function(unit, combination) {
------------------------中略-----------------------------------
var level = combination.targetUnit.getLv(); //levelという変数に一旦レベルの値を入れる
if (combination.targetUnit.getClass().getClassRank() === ClassRank.HIGH) {
level += LOW_CLASS_MAX_LEVEL; // 上級職の時はLOW_CLASS_MAX_LEVELの値の分加算する
}
return score + level;// levelを加算した値をスコアとする
};
直接20を書かずにわざわざLOW_CLASS_MAX_LEVELとかいう変数を作っているのは
後で見直した時に何を意味するif文なのか連想しやすくするためのお作法