Bounds用法参考
using UnityEngine;
using System.Collections;[RequireComponent(typeof(AudioSource))]
public class ObjectDamage : MonoBehaviour {public float Damage = 10;public float NextDamageDelay = 1;public float Impuls;public Vector3 Size;private Bounds Bounds = new Bounds();public AudioClip[] SoundHit = null;public float SoundRange = 2;private Transform Transform;private AudioSource Audio;private float TestTime = 0;void Awake(){Transform = transform;Audio = GetComponent<AudioSource>();Bounds.size = Size;}void Start(){Bounds.size = Size;}// Update is called once per framevoid Update () {Vector3 playerPos = Player.Instance.Agent.Position;//   float distance = (playerPos - Transform.position).sqrMagnitude;// Debug.Log(playerPos.ToString() + " " + myPos + " " + Transform.position + " " +  distance);if (TestTime < Time.timeSinceLevelLoad){if (PointInsideObject(playerPos)){//Debug.Log("play hit ");TestTime = Time.timeSinceLevelLoad + NextDamageDelay;if (SoundHit != null && SoundHit.Length > 0)Audio.PlayOneShot(SoundHit[Random.Range(0, SoundHit.Length)]);Player.Instance.Agent.ReceiveEnviromentDamage(Damage, Player.Instance.Agent.Forward * -2);}}}// We'll draw a gizmo in the scene view, so it can be found....void OnDrawGizmos(){Gizmos.color = Color.red;Bounds.size = Size;Gizmos.matrix = transform.localToWorldMatrix;Gizmos.DrawCube(Vector3.zero, Bounds.size);//    Gizmos.matrix = Matrix4x4.identity;}<strong> </strong><span style="color:#ff0000;">public bool PointInsideObject(Vector3 point){// Transform the point to the box space Vector3 localPoint =  Transform.InverseTransformPoint(point);return Bounds.Contains(localPoint);} </span><strong>
</strong>}

Bounds用法参考相关推荐

  1. LZMA压缩/解压缩工具命令行用法参考

    原网址:http://blog.csdn.net/lihangde1990/article/details/22172525 听说了一个Graphicsmagick,一个从2002年发布的ImageM ...

  2. 一个很简短的 JS 生成器入门和用法参考

    生成器函数 在写其他 js 代码时会经常用到 debugger 的东西,能够让当前运行的函数暂停住.生成器函数里的 yield 关键词也能使得函数暂停运行,同时还能用来做数据的输入输出(如果是 deb ...

  3. iScroll.js 用法参考 (share)

    http://www.cnblogs.com/asqq/archive/2012/04/23/2466132.html http://www.nb88.net/Index/p/id/406 http: ...

  4. dmdecode 与 megacli 命令用法参考

    https://blog.csdn.net/signmem/article/details/42424695 dmdecode 常用命令 机器型号 [root@test_raid ~]# dmidec ...

  5. Python 异常处理--raise函数用法

    Python 异常处理--raise函数用法 参考文章: (1)Python 异常处理--raise函数用法 (2)https://www.cnblogs.com/darkgui34/p/405074 ...

  6. c++并行计算库TBB和PPL的基本用法

    c++并行计算库TBB和PPL的基本用法 参考:http://www.cnblogs.com/qicosmos/p/3517166.html 并行库充分利用多核的优势,通过并行运算提高程序效率,本文主 ...

  7. vim-commentary 插件用法

    vim-commentary 插件用法 参考 vim-commentary 插件用法 1. 插件地址 https://github.com/tpope/vim-commentary 2. 插件用法 单 ...

  8. Firebug高级用法 - Web开发的利器

    Firebug是一个Firefox插件,是Web开发的利器.从此处下载.工具用好了能大大提高开发效率.下面介绍一些用法: 查看编辑HTML和CSS,查看DOM 两个方法,一个是在新窗口中打开Fireb ...

  9. 【Linux】27.Markdown的用法

    Markdown的用法 参考https://www.jianshu.com/p/de9c98bba332 (1)在markdown中正确显示数学公式 Vistual Studio Code天生支持Ma ...

  10. 正则 ?= 和 ?= 用法 以及零宽断言等概念

    正则 ?<=  和 ?= 用法 参考网址:http://baike.baidu.com/link?url=2zORJF9GOjU8AkmuHDLz9cyl9yiL68PdW3frayzLwWQh ...

最新文章

  1. Deepsort + Yolo 实现行人检测和轨迹追踪
  2. Vue教程5【vuex】getters,mapState,mapGetters,mapActions,mapMutations,模块化namespace
  3. 自定义Android菜单背景
  4. golang微服务框架对比_微服务里程碑,Golang与Spring Cloud Alibaba完美结合
  5. C++ 接口 函数导出_Python玩转Excel:实现函数自动填充、数据排序
  6. string和json转换的简单应用
  7. matlab中sum函数
  8. python上传图片到服务器_Flask入门之上传文件到服务器的方法示例
  9. 感知机中任一点到超平面的距离的公式推导
  10. shiro(一)简介、理论知识
  11. Spark配置启动脚本分析
  12. Windows 系统软件有哪些「必备」软件?
  13. 小微个人网站如何接入免费短信验证码
  14. java毕业设计总结
  15. Java:Hutool工具箱之Hutool-crypto加密解密
  16. TutorialsPoint NumPy 教程
  17. vue3使用swiper+animate.css动效
  18. (验证文件)validateJarFile...报错
  19. 如何自定义el-dialog的具体宽度,而不影响页面内的其他el-dialog的宽度
  20. 大数据Spark实战第七集 机器学习和数据处理

热门文章

  1. 从顺序数组1到10中查找数字 并打印下标
  2. java 水晶按钮图片_JAVA GUI 开发---水晶图片按钮
  3. win7 可以装matlab 吗,win7系统怎么安装matlab软件(图文教程)
  4. console接口是干嘛的(console接口是干嘛的电信室外光猫)
  5. 神经网络编程的34个案例,人工神经网络编程内容
  6. win10系统声音很大,微信等应用声音很小的问题
  7. 《大数据大创新:阿里巴巴云上数据中台之道》:解密阿里数据中台建设
  8. 吕布机器人评测_999元的吕布机器人到底怎么样?听听玩家们怎么说
  9. java BMI体重测量代码
  10. 不变的人生无常,变化的朋友来去