Unity 3D坦克大战案列学习(二)
实现坦克的攻击
using UnityEngine;
using System.Collections;
/// <summary>
/// 坦克的攻击
/// </summary>
public class TankAttack : MonoBehaviour
public GameObject shellPrefab;//子弹预制体
public KeyCode fireKey = KeyCode.Space;//坦克攻击按键
public float shellSpeed = 10;//子弹速度
public AudioClip shotAudio;//坦克攻击音效
private Transform firePosition;
// Use this for initialization
void Start ()
{
firePosition = transform.Find("FirePosition");
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(fireKey))//当按下空格键调用子弹预制体
{
//播放坦克攻击音效
AudioSource.PlayClipAtPoint(shotAudio,transform.position);
GameObject go = GameObject.Instantiate(shellPrefab, firePosition.position, firePosition.rotation)as GameObject;
go.GetComponent<Rigidbody>().velocity = go.transform.forward * shellSpeed;
}
}
}