質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

2回答

3090閲覧

unityでダメージを与えた際に、ダメージを与えた対象のビジュアルを変更したい

momonoki

総合スコア21

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

1クリップ

投稿2018/02/17 14:22

unityで2dのアクションゲームを作成しています。

プレイヤーが一定以上攻撃を与えると、敵の見た目が変化するような実装を行いたいと思っています。
ちなみに敵の位置は動きません。

スクリプトで、敵のHPが一定以下に減った時に、
Sprites?の敵画像を差し替えれば良いのかなと思っていますが、
具体的にどのような方法で実装すれば良いのかがわかっていません。

一応、現在、プレイヤーが攻撃を与えた時に、敵のHPが減る部分は実装できていますが、
敵のHPが減った時に、敵の見た目を変更するためにはどのような方法がありますでしょうか?

本日Unityを触り始めたばかりで的外れな部分もあるかと思いますが、
直接回答いただければもちろん嬉しいですし、参考になるようなサイトがあればそういったサイトをご教示いただいても嬉しく思います。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

はじめてのUnity
Unityの解説などは色々なサイトで行われていますが
公式のチュートリアルも丁寧に解説されています
まずこちらから学習されてみてはどうでしょうか

ひよこのたまご
こちらのサイトもおすすめです
前回答者さんの実装方法もチュートリアル7辺りで提示されています

もし質問者さんがコードを書くことに抵抗がなく、素早く実装したいのであれば
コード内で空のAnimationControllerなりSpriteなりをpublicで宣言して
コード内で差し替えるといいと思います

投稿2018/02/18 05:36

giit

総合スコア91

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momonoki

2018/02/18 06:35

ご返信ありがとうございます! さきほど、はじめてのUnityの2D Rogue Likeの動画を見ておりました。 公式でこのようなものが公開されているのは嬉しいですね! ひよこのたまごさんのホームページも、疑問点を調べていく中でヒットしたので、今読んでいます。 ちょうどキャラクターの動きに関する説明もあったのですが、ちょっとまだ理解が追いついておりません。 ご指摘のとおり、現在Animator ControllerでTrigger設定し、スクリプトでTriggerを発動させる方法を試みております。 ご教示いただいたサイト等も参照しつつ、もう少し粘ってみたいと思います!
giit

2018/02/18 06:40

頑張ってください
guest

0

ベストアンサー

UnityのAnimationを使用してみてはいかがでしょうか?
遷移条件をTriggerにして、攻撃された時にSetTriggerしてあげると見た目を変えることができると思いますよ。

投稿2018/02/18 03:58

capra314cabra

総合スコア222

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momonoki

2018/02/18 06:31

ご返信ありがとうございます! 手始めに、AnimatorControllにて、Idle状態と被ダメージ状態の2つのコンポーネントを作成しました。 その後、Idle状態から被ダメージ状態へのTransitionを作成し、遷移条件をTriggerにしました。 そして、スクリプトにて、敵のHPが一定以上減った場合に、遷移条件のTriggerが発動するところまでは実装できました! ところが、ここからまたわからなくなってしまいました。 Triggerを発動させた結果、敵の見た目を変化させるためには、 被ダメージ状態の画像を用意し、それをどこかで設定しなければいけないと思っています。 私は、AnimatorControllの被ダメージ状態のコンポーネントに、 被ダメージ状態の画像をドラッグアンドドロップすることによって、紐付けができると考えていたのですが、実際には行うことができませんでした。 被ダメージ状態の画像と、AnimatorControllの被ダメージ状態を紐付けるためには、どのような設定を行えば良いのでしょうか? 重ね重ねの質問となり大変恐縮なのですが、根本的な見当違いとうありましたらご教示頂けますと幸いです。
capra314cabra

2018/02/18 07:14 編集

Animationをしたいオブジェクトを選択しながら、上のメニューのWindow>Animationをクリックします。 そこからAnimationClipの編集を行えばAnimationを作成できます。 Animationは基本的にAnimatiorコンポネント(Unity謹製)で行います。 それをScriptから参照&関数呼び出しでOKです!
momonoki

2018/02/18 07:36

早速のご返信ありがとうございます! 今出先ですので、帰ったら試して見たいと思います!
momonoki

2018/02/21 16:45

遅くなってすみません! 無事、状態変化の動きをつけることができました! 調べていく中で、いろいろとanimationについても理解することができました。 丁寧に教えていただきありがとうございました^^
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問