我想发射子弹,点击鼠标生成一颗,点一下生成一颗,而且每生成一颗,程序就会自动计数,结果变成点一下,所有的子弹都一分二位,但是子弹数只加1#pragma strictfunction Start () {}var newobject:Transform;var shedanshu:int=0;function Update () {if(Input.GetButtonDown("Fire1")){var n:Transform=Instantiate(newobject,transform.position,transform.rotation);var fwd:Vector3=transform.TransformDirection(Vector3.forward);n.rigidbody.AddForce(fwd*2800);shedanshu++;gameObject.Find("gt").GetComponent(GUIText).text="射弹数"+shedanshu;}}java语言
1 回答
catspeake
TA贡献1111条经验 获得超0个赞
你这个newobject传递进来绝对是个名称为sedan(clone)的物体,实例化的时候是会在prefeb名称后加上(clone)的,你只要自己命名一下就可以了,n.name = "sedan",那么显示的物体名就是sedan了,然后你这个代码是放在Update里面的,所以在执行按键响应的时候会同时生成多个子弹,然后子弹有rigidbody,所以碰撞弹开让你有一分为二的感觉,所以你需要加上子弹释放CD。利用Timer.delTime来做。顺便说下,你这是javascript 不是java
var time = 0;
function Update()
{
time +=Timer.delTime;
if(Input.GetButtonDown("Fire1")){
if(time > 1)
{
time = 0;
doCreatSedan();
}
}
}
添加回答
举报
0/150
提交
取消