2014年4月29日 星期二

[ Unity篇 ] 腳本與腳本間的變數傳遞

腳本跟腳本間的傳遞,每次我都忘記怎麼用…



其實Uinty的函式我記得的非常之少,忘記就馬上查
但是今天我用了一個BLOGGER就是要把他紀錄下來!
才不用每次都去幫別人衝人氣~ 哈哈哈哈哈
 --------------------------
其實很腳本與腳本間的變數傳遞很簡單,但是前提是要在同一個scene裡面,如果是在不同scnce的話,就要用不同的方法傳遞囉!
       





//舉例來說,今天我A腳本有變數hp=10;並且該腳本賦予怪物A
//然後我的B腳本賦予主角,並且B腳本有變數Attack=2;
//我想要在主角攻擊怪物的時候,直接扣除怪物的血量
//--------以下實作-------------------------

//script A

var hp:int=10; //宣告血量10,型別int

function Update(){

if(hp <= 0) Destroy(gameObject); //血量低於0,銷毀自己

}


//script B

var attack:int=2;  //宣告攻擊力2,型別int
var enemyHP:A;  //A指的是腳本A,enemyHP指的是在B腳本中用來載入A的容器

function Start() {

enemyHP = GameObject.Find("enemy").GetComponent(A);
//載入名稱為enemy的物件,並取得該物件身上的腳本A

}
function Update() {

if(Input.GetMouseButtonDown(0)) enemyHP.hp -= attack;
//每按一次滑鼠左鍵,A腳本中的hp變數就減一次attack的數值

}

如果看到喜歡的廣告,不仿點下去看看,或者+1作者,都可以給作者一些鼓勵唷!

沒有留言:

張貼留言