游戏制作之路(18)隐藏游戏里的鼠标

栏目: 后端 · 发布时间: 7年前

内容简介:前面介绍使用子弹来杀伤怪物,但是总是有一个鼠标在界面里显示,这样感觉起来非常不舒服,因为你玩别人的游戏时,发现这个鼠标没有显示的,并且不小心点了别的窗口,也会失去焦点。因此,下面就来解决这个问题。先按下图来创建一个脚本,把脚本的名称叫做:MouseLock,然后命名如下图:

前面介绍使用子弹来杀伤怪物,但是总是有一个鼠标在界面里显示,这样感觉起来非常不舒服,因为你玩别人的游戏时,发现这个鼠标没有显示的,并且不小心点了别的窗口,也会失去焦点。因此,下面就来解决这个问题。先按下图来创建一个脚本,把脚本的名称叫做:MouseLock,

游戏制作之路(18)隐藏游戏里的鼠标

然后命名如下图:

游戏制作之路(18)隐藏游戏里的鼠标

这样就往Scene里添加一个脚本,然后修改Update方法,在里面添加下面的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MouseLock : MonoBehaviour {

	// Use this for initialization
	void Start () {
		
	}
	
	// Update is called once per frame
	void Update () {
        if (Input.GetButtonDown("Fire1"))
        {
            Cursor.lockState = CursorLockMode.Locked;
            Cursor.visible = false;
        }

        if (Input.GetKeyDown(KeyCode.Escape))
        {
            Cursor.lockState = CursorLockMode.None;
            Cursor.visible = true;
        }
    }
}

脚本代码输入之后,就是创建一个空的游戏对象,以便脚本与场景关联在一起,才可以运行代码,如下图:

游戏制作之路(18)隐藏游戏里的鼠标

这时按play之后,就可以开火,发现鼠标给隐藏了,并且鼠标永远锁定在游戏窗口里了,可以无限地转动,不怕点击到别的窗口了。如果要想把鼠标取消隐藏,只要按下键盘的ESC键,就可以了。

接着下来,我们来看一下代码,

Input.GetButtonDown("Fire1")

这行代码,其实在前面已经使用过,它就是获取开火键,它可以是鼠标左键,也可以是键左ctrl键,也可以是游戏手柄里按键。当你按下鼠标左键时,就会触发这个事件。

接着下来看到这一行:

Cursor.lockState = CursorLockMode.Locked;

Cursor.lockState是表示鼠标是否被锁住,以及它的状态设置。CursorLockMode是一个枚举变量,主要下面三种状态:

None 光标行为不作修改
Locked 锁住光标在游戏窗口中间。
Confined 限制光标在游戏窗口。

接着下来下一行:

Cursor.visible = false;

这一行是设置光标的可见性,设置false为隐藏。

if (Input.GetKeyDown(KeyCode.Escape))

这一行是获取键盘的ESC键是否按下,如果按下就取消鼠标隐藏,如下:

Cursor.lockState = CursorLockMode.None;

Cursor.visible = true;

通过这样的代码设置,就可达到隐藏鼠标,或者显示出来。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

物联网导论(第2版)

物联网导论(第2版)

刘云浩 / 科学出版社 / 2013-8 / 45.00元

物联网是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。它具有普通对象设备化、自治终端互联化和普适服务智能化三个重要特征。 《物联网工程专业系列教材:物联网导论(第2版)》从物联网的感知识别层、网络构建层、管理服务层和综合应用层这四层分别进行阐述,深入浅出地为读者拨开萦绕于物联网这个概念的重重迷雾,引领求知者渐渐步入物联网世界,帮助探索者把握第三......一起来看看 《物联网导论(第2版)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具