打砖块

来源:互联网 发布:淘宝功能介绍百度百科 编辑:程序博客网 时间:2024/05/03 08:50
复制代码
using UnityEngine;using System.Collections;public class CubeInit : MonoBehaviour {    //砖块预设体    public GameObject cubePrefab;    //砖墙宽高    public Vector2 W_H = new Vector2(8,8);    void Start()    {        for (int i = 0; i < W_H.x; i++) {            for (int j = 0; j < W_H.y; j++) {                //砖块位置                Vector3 pos = new Vector3 (i,j,0);                //生成砖块                Instantiate (cubePrefab, pos, Quaternion.identity);            }        }    }}
复制代码

要发射的子弹预设体

复制代码
using UnityEngine;using System.Collections;public class Fire : MonoBehaviour {    //子弹预设体    public GameObject bulletPrefab;    //子弹飞行速度    public float speed = 3f;    //鼠标转换的射线    private Ray mouseRay;    //射线碰撞检测器    private RaycastHit hit;    void Update()    {        //按下鼠标左键        if (Input.GetMouseButtonDown (0)) {            //获取射线对象            mouseRay = Camera.main.ScreenPointToRay (Input.mousePosition);            //如果射线检测到碰撞体            if (Physics.Raycast (mouseRay, out hit)) {                //生成子弹                GameObject currentBullet = Instantiate (bulletPrefab,                     Camera.main.transform.position,                    Quaternion.identity) as GameObject;                //子弹飞行方向                Vector3 dir = hit.point - Camera.main.transform.position;                //给子弹施加一个力                currentBullet.GetComponent<Rigidbody> ().AddForce (dir.normalized * speed);                //2秒后销毁子弹                Destroy (currentBullet, 2f);            }        }    }}
原创粉丝点击