地道開発日記 状態変化(武装)システム周り 攻撃1回単位で攻撃力アップを制御する処理 70%完成
武装システム周り
攻撃1回単位で攻撃力アップを制御する処理70%完成。
(他処理も並行してバグがないか地道にテスト中)
あと1つ決め手にかけて作りきれず保留していた
1回単位で攻撃力アップを制御する処理が、
図らずも左右武器攻撃力独立処理の副産物的効果により
実現可能となったため作製。
攻撃力独立処理用に作った関数が
何故か一定期間並列処理的に、攻撃Up状態変化の付加量を監視して、
連続攻撃中に攻撃力アップの状態変化(武装)が解除されると
即時攻撃力がダウンする処理となったため、それを応用して作製。
このゲーム、バンバン連続攻撃が撃てる仕様なので、
ターン単位で攻撃力が上がると、連続攻撃全弾が攻撃力アップして
簡単に攻撃力が3倍4倍になりバランス崩壊するので、
どうにか1回単位で攻撃力アップを制御できないか
悩んでいたのだけれど、何とかそれが解消。
しかしこのシステムも無駄に複雑な構造(スクリプト力が低いため)
なためパズル度が高く、
攻撃開始時に敵に状態変化をかける
↓
その状態変化を攻撃のダメージにより解除する
(ダメージ無し無傷でも状態変化が解除されるプラグイン使用)
↓
その状態変化の解除時に処理を挟み込めるので、
そこから自分にかかった攻撃力アップの、状態変化を解除する。
という構造。
この形だと攻撃を1回行う毎に処理を挟めるので、
3回攻撃中1回だけ攻撃力アップする
みたいな事が可能だったりする次第。
(他の方法だと連続攻撃3回分を一括りでアップさせる
みたいになりがち)
そしてこの挙動の実現を助けてくれる、
ダメージ無しでも状態変化を解除してくれる
BarrierStateプラグイン(ecf5DTTzl6h6lJj02さん)と
細かいタイミングで処理を差し挟める
YEP_SkillCore&YEP_BuffsStatesCore
&YEP X State Categories(追記)プラグイン(yanflyさん)
には感謝しきり。
こんなややこしい処理をするなら
コアスクリプトをいじった方が速いやも?と思う所もあるも、
スクリプトが得意ではない&時間不足で、
少しずつしかコアスクリプトを把握していけないので、その辺りは致し方無し。
これと最近作った処理等で、武装のバリエーションを増やすための
素材が程よく揃った感じ。
本格的に武装や魔法の量を増やして行けそうな気配で、
やる気も増してきた次第。
果たして効率的増産体制に入れるか、
それともまだまだ素材が足りないのか、
武装道は道が険しすぎるので、早いところ抜けていきたいところ。