扩展Hierarchy之后的效果:

我们调试战斗的时候,需要在Hierarchy界面选中对应的武将,然后操作快捷键控制武将。由于多个操作我觉得比较麻烦,就在网上查找了一下扩展Hierarchy菜单的方法。

代码如下:

 [InitializeOnLoadMethod]private static void StartInitializeOnLoadMethod(){EditorApplication.hierarchyWindowItemOnGUI += OnHierarchyGUI;}private static void OnHierarchyGUI(int instanceID, Rect selectionRect){if (!Application.isPlaying)return;var data = Selection.activeGameObject;if (data == null){return;}if (Event.current != null&& selectionRect.Contains(Event.current.mousePosition)&& Event.current.button == 1&& Event.current.type <= EventType.MouseUp&& CheckShow()){Vector2 mousePosition = Event.current.mousePosition;EditorUtility.DisplayPopupMenu(new Rect(mousePosition.x, mousePosition.y, 0, 0), "Tools/战斗脚本控制", null);Event.current.Use();}}[MenuItem("Tools/战斗脚本控制/控制该武将")]public static void SelectGameObject1(){if (Application.isPlaying){var data = Selection.activeGameObject;if (data != null){var roleControll = data.GetComponent<RoleController>();if (roleControll != null){roleControll.PlayerControl = !roleControll.PlayerControl;}}}}private static bool CheckShow(){var data = Selection.activeGameObject;if (data != null){var roleControll = data.GetComponent<RoleController>();if (roleControll != null){return true;}}return false;}

注意一定要添加自己的条件,不然会把Unity原生的菜单覆盖掉。

参考:

Unity编辑器Hierarchy扩展中文教程——Chinar图文详解_ChinarCSDN的博客-CSDN博客

【Unity编辑器扩展实践】、扩展Hierarchy菜单相关推荐

  1. Unity 编辑器扩展菜单

    Unity 编辑器扩展菜单 目录 Unity 编辑器扩展菜单 一.MenuItem 特性 菜单栏扩展 1.创建多级菜单 2.创建可使用快捷键的菜单项 3.创建可被勾选的菜单项 4.检查菜单是否使用 5 ...

  2. 【Unity编辑器扩展实践】、查找所有引用该图片的预制体

    上一篇Unity编辑器扩展实践二.通过代码查找所有预制中已经查到到所有的预制体了. 然后我们就可以用这些预制体做一些其他的操作了,比如查找该预制的资源引用.可以直接遍历预制,找到预制里面的所有Imag ...

  3. Unity编辑器扩展之EditorWindow

    Unity编辑器扩展之EditorWindow 继承这个类的编辑器脚本可以用来创建一个编辑器窗口,类似Inspector窗口 若要在这个类中添加一些控件,可以使用GUI和GUILayout控件,还可以 ...

  4. 【Unity编辑器扩展】(二)PSD转UGUI Prefab, 图层解析和碎图导出

    书接上回:[Unity编辑器扩展](一)PSD转UGUI Prefab, Aspose.PSD和Harmony库的使用_TopGames的博客-CSDN博客 工具使用预览: 工具目标: 1. 实现将p ...

  5. 【Unity编辑器扩展】(三)PSD转UGUI Prefab, 一键拼UI解放美术/程序(完结)

    工具效果: 第一步,把psd图层转换为可编辑的节点树,并自动解析UI类型.自动绑定UI子元素: 第二步, 点击"生成UIForm"按钮生成UI预制体 (若有UI类型遗漏可在下拉菜单 ...

  6. Unity 编辑器扩展总结 一:编辑器开发入门

    编辑器扩展总结 工欲善其事必先利其器 引言: 在项目开发中,编辑器扩展为开发者提供了开发自定义工具的功能,让开发者更加便利地使用编辑器开发项目.如若博客中存在错误,还请不吝赐教.所有参考的博客或者视频 ...

  7. Unity编辑器扩展 UI控件篇

    前摇 :认识编辑器扩展的必要性 由于各种各样的原因,无论是移动端亦或是主机/PC端,进几年的发行的游戏体量是越来越大.通常来说大体量的游戏开发需要一套很成熟完善的工作流,亦或说有很强的工业化的能力,像 ...

  8. Unity编辑器扩展: 程序化打图集工具

    开始前的声明:该案例中图集所使用图片资源均来源于网络,仅限于学习使用 一.前言 关于编辑器扩展相关的知识,在前面的两篇内容中做了详细的描述,链接地址: 第一篇 :Unity编辑器扩展 UI控件篇 第二 ...

  9. 【Unity编辑器扩展】(一)PSD转UGUI Prefab, Aspose.PSD和Harmony库的使用

    [Unity编辑器扩展](二)PSD转UGUI Prefab, 图层解析和碎图导出_psd导入unity_TopGames的博客-CSDN博客 [Unity编辑器扩展](三)PSD转UGUI Pref ...

最新文章

  1. 【数论】排列组合学习笔记
  2. 域名无法加入域解决方法
  3. 一个19岁美国少年眼中的各种社交应用
  4. Java学习笔记(九)--数组及Arrays类
  5. php只能写入7字符,如何在PHP 7之前解决“必须是字符串的实例,字符串给定”?...
  6. (需求实战_进阶_04)SSM集成RabbitMQ 通配符模式 关键代码讲解、开发、测试
  7. 选举学生会(洛谷P1271题题解,Java/C++语言描述)
  8. 099 元类( 控制对象产生和控制类产生)模板
  9. 2017-5-29学习记录——WebApi(1)
  10. 新建raw data 分区
  11. 使用pgd和fgsm方法进行攻击并使用map方法评估
  12. 多传感器融合理论及其应用——2
  13. 制作png格式透明图片的简易方法
  14. 林轩田《机器学习基石》(十一)—— Linear models for classification
  15. Matlab读取Excel各个子表的数据进行拟合
  16. Pycharm十大常用快捷键
  17. mybatis-plus 属性为空时判断问题
  18. 阿里云 ECS 7 天实践训练营 - day01 -基于ECS搭建FTP服务
  19. MATLAB-将数据读取/写入excel表格
  20. 如何通过互联网赚钱?

热门文章

  1. 学计算机语言从何开始,小孩学编程从哪开始
  2. 微信打开网址提示在浏览器中打开的办法
  3. android 开屏广告动画,Android 开屏广告
  4. java 数据库 事务 只读_Spring 事务 readOnly 到底是怎么回事?
  5. 微信好友数目限制突破5000人? 这点钉钉、BTchat链语早就做到了
  6. 已解决:注册kaggle人机验证出不来
  7. 实时商业智能BI(二):合理的ETL架构设计实现准实时商业智能BI
  8. Anton and Fairy Tale
  9. Fairy Tail - Main Theme Slow Version guitar (solo)
  10. 单片机c语言中断意义,51单片机中断系统的重要性