unity初写游戏(四)怪物产生方式
生活随笔
收集整理的這篇文章主要介紹了
unity初写游戏(四)怪物产生方式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一個游戲怪物的產(chǎn)生方式也多遠話的話,會很好的,我有了一點隨機函數(shù)來實現(xiàn)。
public Rigidbody2D Cloud;
?public Rigidbody2D ufo;
private int clo = 0;
// Update is called once per frame
?void Awake () {
???InvokeRepeating ("begin", 0, 3f);??//時間計時器,意思為從0秒開始每過3秒執(zhí)行一次begin函數(shù)
?}
void begin () {
??if (clo <= 2) {
???int i = Random.Range (0, 100);//隨機函數(shù),從0-100之間隨機產(chǎn)生一個數(shù)字,隨機函數(shù)最好這么使用就像是概率一樣,這樣才有一定的準度。
???if (i > 0 && i <= 30) {//實現(xiàn)云的產(chǎn)生
????Clouds ();
????clo++;
???} else if (i > 30 && i <= 100) {//實現(xiàn)敵人的產(chǎn)生
????Ufo ();
????clo++;
???}
??}
?}
void Clouds() {
??float y = Random.Range (0, 8);//我隨機了產(chǎn)生的位置
??Vector3 the = camera.transform.TransformPoint (20, y, 15);
??Rigidbody2D ri = Instantiate (Cloud, the, Quaternion.Euler (new Vector3 (0, 0, 0))) as Rigidbody2D;//實例化函數(shù),Instantiate(實例化的物體,實例化的位置,實例化的物體角度) as 作為什么格式輸出。
??ri.velocity = new Vector2 (-2, 0);//加入一個初始速度。
?}
void Ufo() {
??float y = Random.Range (0, 8);
??Vector3 the = camera.transform.TransformPoint (20, y, 15);
??Rigidbody2D ri = Instantiate (ufo, the, Quaternion.Euler (new Vector3 (0, 0, 0))) as Rigidbody2D;
??ri.velocity = new Vector2 (-2, 0);
?}
public void fixclo() {
??clo --;
?}
public Rigidbody2D Cloud;
?public Rigidbody2D ufo;
private int clo = 0;
// Update is called once per frame
?void Awake () {
???InvokeRepeating ("begin", 0, 3f);??//時間計時器,意思為從0秒開始每過3秒執(zhí)行一次begin函數(shù)
?}
void begin () {
??if (clo <= 2) {
???int i = Random.Range (0, 100);//隨機函數(shù),從0-100之間隨機產(chǎn)生一個數(shù)字,隨機函數(shù)最好這么使用就像是概率一樣,這樣才有一定的準度。
???if (i > 0 && i <= 30) {//實現(xiàn)云的產(chǎn)生
????Clouds ();
????clo++;
???} else if (i > 30 && i <= 100) {//實現(xiàn)敵人的產(chǎn)生
????Ufo ();
????clo++;
???}
??}
?}
void Clouds() {
??float y = Random.Range (0, 8);//我隨機了產(chǎn)生的位置
??Vector3 the = camera.transform.TransformPoint (20, y, 15);
??Rigidbody2D ri = Instantiate (Cloud, the, Quaternion.Euler (new Vector3 (0, 0, 0))) as Rigidbody2D;//實例化函數(shù),Instantiate(實例化的物體,實例化的位置,實例化的物體角度) as 作為什么格式輸出。
??ri.velocity = new Vector2 (-2, 0);//加入一個初始速度。
?}
void Ufo() {
??float y = Random.Range (0, 8);
??Vector3 the = camera.transform.TransformPoint (20, y, 15);
??Rigidbody2D ri = Instantiate (ufo, the, Quaternion.Euler (new Vector3 (0, 0, 0))) as Rigidbody2D;
??ri.velocity = new Vector2 (-2, 0);
?}
public void fixclo() {
??clo --;
?}
總結
以上是生活随笔為你收集整理的unity初写游戏(四)怪物产生方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android清理缓存实现,androi
- 下一篇: cuba study