Nextrek
@ 168
Nextrek / 3DSpace / Assets / Resources / Holographic / Scripts / bullets.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
using UnityEngine; using System.Collections; public class bullets : MonoBehaviour { public static float bullets_n = 10; public static float bullets_max = 10; GameObject bullet; private float cacheNumber = 10; private Transform _transform; void Start() { _transform = transform; createBullets (); drawBullets(); } void createBullets () { for (int i=0;i<bullets_max;i++) { bullet = (GameObject)Instantiate(Resources.Load("Holographic/output/main/bullets/bullet_prefab"),_transform.position,Quaternion.identity); bullet.transform.eulerAngles = _transform.rotation.eulerAngles; bullet.name="bullet"+i.ToString(); bullet.GetComponent<Renderer>().material.color = new Color(this.GetComponent<Renderer>().material.color.r,this.GetComponent<Renderer>().material.color.b,this.GetComponent<Renderer>().material.color.g,0); bullet.transform.parent = _transform; } } void drawBullets() { for (int i=0;i<bullets_n;i++) { Transform tp = _transform.FindChild("bullet"+i); tp.transform.eulerAngles = _transform.rotation.eulerAngles; tp.transform.localScale = new Vector3(16f/bullets_n,tp.transform.localScale.y,tp.transform.localScale.z); tp.transform.Rotate(Vector3.up,-39.5f-i*9f*16f/bullets_n+(1f-16f/bullets_n)*4f); tp.GetComponent<Renderer>().material.color = new Color(1,1,1,0.65f); } for (int i1=(int)bullets_n;i1<bullets_max;i1++) { _transform.FindChild("bullet"+i1).GetComponent<Renderer>().material.color = new Color(this.GetComponent<Renderer>().material.color.r,this.GetComponent<Renderer>().material.color.b,this.GetComponent<Renderer>().material.color.g,0); } } void Update () { if(cacheNumber!=bullets_n) { cacheNumber = bullets_n; deleteOneBullet(); } } void deleteOneBullet() { int id = (int)(bullets_n+0.1f); Transform tp = _transform.FindChild("bullet"+id); Destroy(tp.gameObject); } } |