2007年12月21日 星期五

啥SL—【Event—Attach】

這是我做的裝備,每個裝備都有用到attach event

  Attach Event就是當使用者把一物體穿上(右鍵選Pie Menu的Attach或Wear)所啟動的Event
,就是把
attach(key attached)放入state內就可以啟動,attached這個key值所代表的意義是該穿上物品的key值,如果脫下時就是NULL_KEY。因此可以用這個來判斷使用者穿上時與脫下時的狀態。

  範例程式如下:

default
{
attach(key attached)
{

//object has been attached
if (attached != NULL_KEY)
{
llSetScale(<0.01,0.01,0.6>);

}//end if (attached != NULL_KEY) // object has been attached

// object has been detached
else
{
llSetScale(<0.05,0.05,3>);

}//end else // object has been detached

}//end state default attach(key attached)
}


  llSetScale(vector scale)這個method是改變大小用的,裡面傳的vector是改變物體x、y、z方向的大小,簡單來講,這個程式碼是會讓使用者穿上後改變該物體大小,脫下後又變大小。其實這個範例的靈感是想說,他放在地板上看起來很平常,結果一讓使用者戴上後就變成別的東西……

  關於Attach有一點要記住,穿上的物品是無法消失的,所以無法使用llDie

沒有留言: