現在Unityを用いて、にゃんこ大戦争のような2Dゲームを作っているのですが、行き詰まってしまったので質問させて頂きます。
・キャラクターのステータスはScriptableObjectで管理。
・ボタンを押したらキャラクターのインスタンスが作成される
・敵キャラとの接触はrayで検知し、戦闘アニメーションへ遷移
・接触した相手のpowerと、自身の現在のhpを引数にしてダメージ処理
ダメージ処理の方法としては、攻撃アニメーションの終了をOnStateExitを使って検知し、ダメージ処理を行う方法を考えています。
しかし、OnStateExitの入ったスクリプトをアタッチされているオブジェクトの別のスクリプト(ダメージ処理や移動処理の入っているスクリプト)を読み込むことが出来ないため、行き詰まってしまいました。
キャラクターのオブジェクトが1つであれば、publicを使うなどしたやり方が思い浮かぶのですが、今回は複数のキャラクターがそれぞれ固有のHPを持っているという所に躓いて上手く実装できません。
StateMachineBehaviourのスクリプトがアタッチされたオブジェクトの別のスクリプトを、StateMachineBehaviour内で参照する方法などはあるのでしょうか?
また、今の方法と全く違ってもいいので、このようなゲームを作る場合のオススメのダメージ処理実装方法などはありますでしょうか?
よろしくお願いしますm(_ _)m
回答1件
あなたの回答
tips
プレビュー