查看: 1207|回复: 0
打印 上一主题 下一主题

Unity3D脚本中文教程1.4

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-5-11 15:00:01 |只看该作者 |倒序浏览
4.作为参数传递

一些事件消息在事件包含详细信息。例如,触发器事件传递碰撞物体的Collider组件到处理函数。

OnTriggerStay给我们一个到碰撞器的引用。从这个碰撞器我们可以获取附加到其上的刚体。

function OnTriggerStay( other : Collider ) {

// 如果另一个碰撞器也有一个刚体

// 应用一个力到它上面

if (other.rigidbody) {

other.rigidbody.AddForce(0, 2, 0);

}

}

或者我们可以通过碰撞器获取附加在同一个物体上的任何组件。

function OnTriggerStay( other : Collider ) {

// 如果另一个碰撞器附加了OtherScript

// 调用它上面的DoSomething

// 大多数时候碰撞器不会附加脚本

// 所以我们需要首先检查以避免null引用异常

if (other.GetComponent(OtherScript)) {

other.GetComponent(OtherScript).DoSomething();

}

}

注意通过上述例子中的other变量,你可以访问碰撞物体中的任何组件。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-29 12:30 , Processed in 0.085064 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部