销毁Transform和gameobject

*注意:如果不是代码中的括号,代表是解释信息

这个是NGUI相关知识(不提供NGUI,可以自行在Unity资源商店购买【90dollar≈600+RMB】或者其他地方获取),只是想介绍一下transform和gameobject  但是多用点东西会更有印象

简单介绍完成界面:点击按钮让坦克发射子弹

建议:一个程序拥有多个脚本,拥有面向对象思维(如果在所有代码都写在一个脚本中,思维会很乱,不管你技术如何 都会有一定的乱,之后如果想要扩展什么的 也会很难;在一个大一点的工程中,写起来也会比较困难 所以,建议慢慢来 分多个脚本,慢慢拥有面向对象思维)

三个脚本:子弹、玩家、NGUI按钮

第一步:子弹脚本(Bullet 生成后让它一直往它的正前方移动,在指定时间中销毁 降低性能消耗)

脚本代码:void Start()
    {
        //这里我经常会写错,写成transform
        //gameobject代表的是对象   而transform是组件(如果把组件删除了  脚本也自然无法执行了)
        //发射子弹  总不会只发一颗  所以,销毁的是gameobject(对象)
        Destroy(gameObject, 3.0f);
    }
    public float speed = 15f;
    void Update()
    {
        //移动                   方向          速度         差值
        transform.Translate(Vector3.forward * speed * Time.deltaTime);
    }

第二步:玩家脚本(生成子弹),也可以设置子弹实例化的位置,比如:不是在玩家中心点创建对象,而是在枪口的位置

代码:public void Fire()
    {
        //实例化对象  简单理解(创建一个物体)
        //             指定路径      类型          路径加载对象
        Instantiate(Resources.Load<GameObject>("Tank/Bullet"));
    }

第三步:NGUI按钮脚本

 1.先按流程创建一个图片集,图片集要放在当前Unity的Assets文件下(自己随便找个图片做成图片集  第三步是要选中图片,才可以进行第四步)

 代码:public UIButton btn;
    public playeObj tank;
    void Start()
    {
        //实例化  也可以把函数改成静态,就不需要这一行代码了
        playeObj p = new playeObj();
        //按钮监听(就是点击按钮  做出反应)
        //               添加事件委托  lambda表达式(委托里面包含
        //               函数,运行函数逻辑)
        btn.onClick.Add(new EventDelegate(() =>
        {
            //执行子弹发射效果
            tank.Fire();
        }));
    }

最后会实现,点击一下按钮发射一颗子弹。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值