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

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

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

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Q&A

0回答

733閲覧

Unityで クラロワの様にカードをステージに出したいです!

leeee1019

総合スコア9

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

0グッド

0クリップ

投稿2020/01/06 11:06

編集2020/02/10 23:04

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

エラーメッセージ 特にないですが、キャラは自動生成です。 ### 該当のソースコード using UnityEngine; using UnityEngine.AI; [RequireComponent(typeof(NavMeshAgent))] public class Character : MonoBehaviour { private GameObject target; private NavMeshAgent agent; [SerializeField] private GameObject[] enemies; [SerializeField] private string attackTag; [SerializeField] private string attackTag1;//Inspectorで設定 private float stopDistance; private float attackTimer; private bool isAttack; //ここから public int distance; public int hp; public int power; public int attackTime; //ここまでInspectorで設定 private enum targetType { normal, castle, } private targetType currentTargetType; private void Awake() { agent = GetComponent<NavMeshAgent>(); } private void Start() { target = GameObject.Find(attackTag+attackTag1 + "Castle"); isAttack = false; } private void Update() { if (target == null) { target = GameObject.Find(attackTag+ attackTag1 + "Castle"); } SetStopDistance(); FintTarget(); agent.SetDestination(target.transform.position); if (Vector3.Distance(transform.position, target.transform.position) <= stopDistance) { isAttack = true; agent.speed = 0; } if (isAttack) { CheckNearTarget(); SetStopDistance(); //攻撃中にtargetが変わった時のためにここでも記述 Attack(); } } //targetが近くにいるのかどうか判定する private void CheckNearTarget() { if (Vector3.Distance(transform.position, target.transform.position) > stopDistance) { isAttack = false; agent.speed = 1; } } private void SetStopDistance() { if (target.gameObject.name.Contains("Castle")) { currentTargetType = targetType.castle; stopDistance = distance; } else { currentTargetType = targetType.normal; stopDistance = distance; } } private void FintTarget() { enemies = GameObject.FindGameObjectsWithTag(attackTag+ attackTag1); float closestDistance = Vector3.Distance(transform.position, target.transform.position); foreach (GameObject enemy in enemies) { if (Vector3.Distance(transform.position, enemy.transform.position) < closestDistance) { target = enemy; } } } private void Attack() { attackTimer += Time.deltaTime; switch (currentTargetType) { case (targetType.normal): if (attackTimer > 1) { target.GetComponent<Character>().hp -= power; attackTimer = 0f; } if (target.GetComponent<Character>().hp <= 0) { isAttack = false; Destroy(target.gameObject); agent.speed = 1; } break; case (targetType.castle): if (attackTimer > attackTime) { target.GetComponent<Castle>().hp -= power; attackTimer = 0f; } break; } } } C♯ここに言語名を入力 ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

クラロワとゆうのは、フィールドにキャラを出して戦うカードゲームです
https://clashroyale.com/ja/

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

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

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

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

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

y_waiwai

2020/01/06 12:06

質問は編集できます 追記修正しましょう
rsu

2020/01/06 12:12

何をしてどういう状況ですか?全然わからないので編集してください。
leeee1019

2020/02/04 10:32

これでどうでしょうか?
rsu

2020/02/04 11:11

「クラロワのように」 よくわかりません。もっと具体的で細かく書いてください。プログラム以外にも追加することがあると思います。
alg

2020/02/04 11:17

「クラロワのように」という説明だと、「クラロワ」がどういうものかわかっている人でないと回答が難しくなります。 つまり、回答できる可能性のある人が単純に減ってしまうのです。 「クラロワ」を知らない人にも伝わるような書き方だと、回答がより付きやすくなると思いますよ。
yuuyu

2020/02/11 01:52

結局質問したいことは何でしょう? 補足情報に「クラロワとゆうのは、フィールドにキャラを出して戦うカードゲームです」と付け足され、urlだけが付け足されていますが、それだけでは全く伝わりません。(ちなみに公式サイトのurlを貼ったからゲーム内容が理解できる人はいないと思いますが) というか、「カードゲーム」なのに「NavMeshAgent」を使ってる時点で、普通みなさんが思うカードゲームではないと思われます。 そしてソースコードも提示されていますが、パッとみる限りどこでつまづいているのかも分かりません。 まずは自分がどこで分からなくなっているのか、うまく出来ないところが何かを理解した上で、どういう風に実現したいのか、そのためには何が足りてないのか、もっと具体的に記述してください。 後質問内容が出来たら一度(可能な範囲で)第三者視点として読み返してみて、誰が読んでもどこが分からないのか理解できる文章で質問してください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問