プログラム研究 備忘録

java,C#,Unity等の備忘録です。経済理論も少し。

アイテム生成①

・モデルデータとテクスチャデータを用意

・モデルにテクスチャを貼り付ける

・作りたいアイテムのプレハブを用意する

 

・アイテムを区別するために、種類を追加。

public class DropItem : MonoBehaviour {
public enum ItemKind
{
Attack,
Heal,
};
public ItemKind kind;

 

 

・InspectorビューでItemKindに攻撃強化ならAttack,回復ならHealを設定。

 判定内に入ったら取得。

void OnTriggerEnter(Collider other)
{
// Playerか判定
if( other.tag == "Player" ){
// アイテム取得
CharacterStatus aStatus = other.GetComponent<CharacterStatus>();
aStatus.GetItem(kind);
// 取得したらアイテムを消す
Destroy(gameObject);
}
}

 

・敵の位置にアイテムを出すと、プレイヤーが即獲得になってしまうので、

 上空へ飛ばします。

void Start () {
Vector3 velocity = Random.insideUnitSphere * 2.0f + Vector3.up * 8.0f;
rigidbody.velocity = velocity;
}

 

Start()関数に入れておくことで、最初に呼び出されますので、

ポーンと上に飛ぶわけです。

 

Updateではありませんので、注意して下さい。

 

public class DropItem : MonoBehaviour {
public enum ItemKind
{
Attack,
Heal,
};
public ItemKind kind;

void OnTriggerEnter(Collider other)
{
// Playerか判定
if( other.tag == "Player" ){
// アイテム取得
CharacterStatus aStatus = other.GetComponent<CharacterStatus>();
aStatus.GetItem(kind);
// 取得したらアイテムを消す
Destroy(gameObject);
}
}

// Use this for initialization
void Start () {
Vector3 velocity = Random.insideUnitSphere * 2.0f + Vector3.up * 8.0f;
rigidbody.velocity = velocity;
}

// Update is called once per frame
void Update () {

}
}