Unity 游戏黑暗之光笔记

第四章 任务系统的实现

具体步骤可以看RPG游戏《黑暗之光》流程介绍与代码分析之(四)

注意要点

在把鼠标放在任务面板上点击时,为了让角色不移动,在PlayerDir脚本的Update方法中的第一个if判定语句中添加一句,由于NGUI版本的原因使用下面一行代码

 if (Input.GetMouseButtonDown(0)&& UICamera.isOverUI==false)
  • NPCBar脚本
    public TweenPosition questTween;public UILabel desLabel;public GameObject acceptBtnGo;public GameObject okBtnGo;public GameObject cancelBtnGo;public bool isInTask = false;//表示是否在任务中public int killCount = 0;//表示任务进度,已经杀死了几只小野狼private PlayerStatus status;void Start(){//查找方法,获取状态status = GameObject.FindGameObjectWithTag(Tags.player).GetComponent<PlayerStatus>();}void OnMouseOver(){//当鼠标位于这个collider之上的时候,会在每一帧调用这个方法if (Input.GetMouseButtonDown(0)){//当点击了老爷爷if (isInTask){ShowTaskProgress();}else{ShowTaskDes();}ShowQuest();}}void ShowQuest(){questTween.gameObject.SetActive(true);questTween.PlayForward();}void HideQuest(){questTween.PlayReverse();// questTween.gameObject.SetActive(false);}void ShowTaskDes(){desLabel.text = "任务:\n杀死了10只狼\n\n奖励:\n1000金币";okBtnGo.SetActive(false);acceptBtnGo.SetActive(true);cancelBtnGo.SetActive(true);}void ShowTaskProgress(){desLabel.text = "任务:\n你已经杀死了" + killCount + "\\10只狼\n\n奖励:\n1000金币";okBtnGo.SetActive(true);acceptBtnGo.SetActive(false);cancelBtnGo.SetActive(false);}//任务系统 任务对话框上的按钮点击时间的处理public void OnCloseButtonClick(){HideQuest();}public void OnAcceptButtonClick(){ShowTaskProgress();isInTask = true;//表示在任务中}public void OnOkButtonClick(){if (killCount >= 10){//完成任务//获得金币status.GetCoint(1000);//数量归零killCount = 0;ShowTaskDes();}else{//没有完成任务HideQuest();}}public void OnCancelButtonClick(){HideQuest();}
  • 鼠标指针管理

创建GameSetting游戏物体加载CursorManager组件并且制定好指针图片

public static CursorManager _instance;public Texture2D cursor_normal;public Texture2D cursor_npc_talk;public Texture2D cursor_attack;public Texture2D cursor_lockTarget;//锁定目标public Texture2D cursor_pick;//设置热点private Vector2 hotspot = Vector2.zero;//指针的类型,自动选择鼠标软硬件的指针private CursorMode mode = CursorMode.Auto;//设置为单例模式void Start(){_instance = this;}public void SetNormal(){Cursor.SetCursor(cursor_normal, hotspot, mode);}public void SetNpcTalk(){Cursor.SetCursor(cursor_npc_talk, hotspot, mode);}

创建NPC脚本并且是NPCBar继承NPC

    //每一帧都要调用private void OnMouseEnter(){CursorManager._instance.SetNpcTalk();}private void OnMouseExit(){CursorManager._instance.SetNormal();}

Unity 游戏黑暗之光笔记第四章 任务系统的实现相关推荐

  1. Unity 游戏黑暗之光笔记第五章 背包系统的实现

    Unity 游戏黑暗之光笔记 第五章 背包系统的实现 详细过程参考,笔者一直有BUG--导致后面的很多内容没法写全 1.开发功能按钮 注意Anchors的位置,可以让图标在窗口变化时保持相对位置不会变 ...

  2. Unity 游戏黑暗之光笔记第一章 完善场景

    Unity 游戏黑暗之光笔记 第一章 完善场景 1. 导入资地形.地貌资源,新建场景,导入地形.地貌prefab 2. 设置相机与视野匹配 选中主摄像机,点选菜单栏中GameObject > A ...

  3. Ruby‘s Adventrue游戏制作笔记(四)Unity绘制其他元素

    Ruby's Adventrue游戏制作笔记(四)Unity绘制其他元素 前言 一.修改地图层级,将Order in Layer 提高到-10 二.创建Prefabs 三.调整人物在其他元素的位置 四 ...

  4. 深入理解 C 指针阅读笔记 -- 第四章

    Chapter4.h #ifndef __CHAPTER_4_ #define __CHAPTER_4_/*<深入理解C指针>学习笔记 -- 第四章*//*指针数组 -- 意思就是这是一个 ...

  5. 管理系统中计算机应用第四章重点,管理系统中计算机应用课堂笔记第四章(4)...

    管理系统中计算机应用课堂笔记第四章(4) 分类:自考 | 更新时间:2016-07-08| 来源:转载 这个分析和抽象工作可分以下三步进行: 5.2.1数据流程图的绘制 数据流程图既是对原系统进行分析 ...

  6. Android群英传笔记——第四章:ListView使用技巧

    Android群英传笔记--第四章:ListView使用技巧 近期也是比較迷茫.可是有一点点还是要坚持的,就是学习了.近期离职了,今天也是继续温习第四章ListView,也拖了事实上也挺久的了,lis ...

  7. [云炬创业基础笔记] 第四章测试17

    [云炬创业基础笔记] 第四章测试7

  8. [云炬创业基础笔记] 第四章测试15

    [云炬创业基础笔记] 第四章测试7

  9. [云炬创业基础笔记] 第四章测试8

    [云炬创业基础笔记] 第四章测试7

最新文章

  1. socket通信流程图
  2. VTK:PolyData之ExtractNormals
  3. hello,你知道获取元素有哪几种方式吗?
  4. 富士通台式电脑_电脑bios怎么进入-电脑bios进入方法介绍
  5. Webpack入门教程二
  6. 我从构建生产型数据库中学到的42件事
  7. ELK下Elasticsearch如何关掉服务
  8. 【MySQL学习】Unknown column 'PASSWORD'|Access denied for user 'root'@'localhost'
  9. Android 系统广播
  10. android 手机 屏幕镜像,怎样将手机屏幕镜像到电视上(屏幕镜像连接方式)
  11. 报错:/ma.jsp (line: [1], column: [45]) The JSP specification requires that an attribute name is preced
  12. 电气防火限流式保护器及其过电流故障检测方法
  13. esc键 qt 退出菜单_Qt中Esc键触发事件处理
  14. 计算机二级考试干货内容,干货分享,如何备考计算机二级?
  15. Ubuntu18.04便签工具xpad安装
  16. R 多变量数据预处理_R语言常用统计方法包+机器学习包(名称、简介)
  17. softlayer iso_在IBM SoftLayer上使用Datameer从大数据中获得敏锐的见解
  18. 专家系统 - CLIPS学习(2)depth strategy 各种指令 变量与通配符
  19. 洛谷——T156530 儒略历
  20. 笔记本电池使用及维护

热门文章

  1. root开启有什么坏处吗,root打开有什么影响
  2. 怎么将vue的移动端项目打包成手机的app软件apk格式的。hbuilderx 云打包。
  3. leetcode雕虫小技medium 5. Longest Palindromic Substring
  4. _findnext x64报错
  5. 网络编程:1. 网络IO与select
  6. 弘辽科技:拼多多农货“百亿补贴”逻辑正在改变
  7. 全盘加密分析技术的简单介绍,只针对未开启预启动认证的情况
  8. 电脑中毒该怎么办?电脑中病毒后的处理步骤!电脑感染病毒怎么办?电脑中病毒的症状!怎么知道电脑中毒了
  9. 「游戏建模」制作高模的基本流程
  10. 长春新高三数学物理辅导班哪家好?一对一补习培优