unity2dでプレイヤーに攻撃力やHPや防御力等のオブジェクトをつけたいのですが、
やりかたがわかりません。コード例を教えてください
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
求める回答からほど遠いものかもしれず申し訳ないのですが、回答させていただきます。
コード例です。
lang
1using UnityEngine; 2using System.Collections; 3 4public class CharaStatus : MonoBehaviour { 5 public int HP = 100; 6 public int Max_HP = 100; 7 public float speed = 1.0f; 8 public float rotateSpeed = 100f; 9 public float gravity = -9.81f; 10 public float angleLimit = 45f; 11} 12
まず、上記のように、自分で体力や移動速度などのパラメータを付け足していって、キャラクターのパラメータを一括して管理するスクリプトを書きます。(ここでは、このスクリプトをCharaStatus.csとします)
そして、そのパラメータをまとめたスクリプトをプレイヤーにコンポーネントとして付けてください(InspectorのAdd Component->Script->CharaStatusを選択して追加)。
そして、ここで設定したパラメータを同一オブジェクトに追加されている他のスクリプトから使う場合、例として、HPをログに出力したい場合、
lang
1using UnityEngine; 2using System.Collections; 3 4public class HogeHoge : MonoBehaviour { 5 private CharaStatus status; 6 7 void Start () { 8 status = GetComponent<CharaStatus>(); 9 Debug.Log(status.HP); 10 } 11} 12
と、このようにして使います。
投稿2015/05/07 04:11
総合スコア37
0
ステータスオブジェクト用スクリプト(using略)
c#
1public class Status : MonoBehaviour { 2 3 private int Attack = 10; 4 private int Block = 5; 5 private int Hp = 650; 6 7 public int PostAttack(){ 8 return Attack; 9 } 10 public int PostBlock(){ 11 return Block; 12 } 13 public int PostHp(){ 14 return Hp; 15 } 16}
ステータス値取得スクリプト(using略)
c#
1public class Charactor : MonoBehaviour { 2 3 const string StatusName = "StatusObject"; 4 private GameObject StatusObj; 5 private Status status; 6 private int Attack; 7 private int Block; 8 private int Hp; 9 private int FullHp; 10 11 void Awake(){ 12 StatusObj = GameObject.Find(StatusName); 13 status = StatusObj.GetComponent<Status>(); 14 } 15 16//必要な時に呼び出す。 17 void GetAttack(){ 18 Attack = status.PostAttack(); 19 } 20 void GetBlock(){ 21 Block = status.PostBlock(); 22 } 23 void GetHp(){ 24 FullHp = status.PostHp(); 25 Hp = FullHp; 26 } 27}
投稿2015/10/21 17:00
編集2015/10/21 17:14総合スコア136
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。