生成和发射子弹代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class guncontral : MonoBehaviour
[
//枪口火焰生成位置
public Transform firepoint;
//枪口火焰物体
public GameObject fireper;
//子弹生成位置
public Transform bulletpoint;
//子弹物体
public GameObject bulletper;
//子弹个数
private int bulletCount=10;
/1开火间隔
private float cd = 0.2f;
//实际开火的时间 计时器
private float timer=0;
// Start is called before the first frame update
void Start()
(
)
// Update is called once per frame
void Update()
(
1/计算实际开火间隔
timer = timer + Time.deltaTime;
if (Input.GetMouseButton(0)&& bulletCount>0&&timer>cd) (
timer= 0;
//火焰生成
Instantiate(fireper, firepoint,position, firepoint.rotation);//子弹生成
Instantiate(bulletper, bulletpoint.position, bulletpoint.rotation); bulletCount--;
)
开枪音效代码
1/2 System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class quncontral :MonoBehaviour
//枪口火焰生成位置
public Transform firepoint;
//枪口火焰物体
public GameObject fireper,
/子弹生成位置
public Transform bulletpoint;
//子弹物体
public GameObject bulletper;
/1子弹个数
private int bulletCount=10;
// 开火间隔
private float cd = 0.2f;
//实际开火的时间 计时器
private float timer=0;
private AudioSource gunvoice;
public AudioClip clip;
// Start is called before the first frame update
void Start()
(
gunvoice =GetComponent<AudioSource>0);
)
// Update is called once per frame
void Update()
(
//计算实际开火间隔
timer = timer + Time.deltaTime;
if (Input.GetMouseButton(0)&& bulletCount>0&&timer>cd) (
timer = 0;
11火焰生成
Instantiate(fireper, firepoint,position, firepoint.rotation);
//子弹生成
Instantiate(bulletper, bulletpoint.postion,bulletpoint.rotation);
bulletCount--;
gunvoice.PlayOneShot(dlip);
)
)