幻世(OurDream)2D图形引擎使用教程8——处理操作输入(2)
声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst
谢谢合作!
今天的教程,我们将学习如何通过代码设置鼠标指针的位置。有些时候,我们也许需要强制的将用户的鼠标指针移动到我们需要他们关注的位置,例如,当用户在玩游戏的时候出现了一些需要提醒用户操作的事情:生命值低,需要使用急救包等等,这时候,我们可以通过移动用户的当前的鼠标指针来引起他们的注意。
在幻世引擎中,开发者可以使用输入器提供的函数SetMousePos来强制的移动鼠标到指定的屏幕坐标位置,不过要注意的是,这个坐标位置仅仅只绘图窗口的坐标,是无法移动到绘图窗口之外的。
[移动鼠标指针]
好了,现在我们开始编写代码,我们继续使用上一篇教程的代码。
1、首先,我们找到“帧处理函数”部分,然后在其中编写代码移动鼠标。
我们通过代码将鼠标指针强制的移动到了绘图窗口的右下角,并且由于每一次帧处理函数过程都会强制性的重新设置位置,因此鼠标应该无法在移动到别的位置去了(呵呵,有些不完美呀,要是能够有某些事件引起这个操作的话,就会更好啦,不过在演示中,就我们现在所学的来说,目前还做不到)。
2、一行代码即可,现在我们编译并运行一下。温馨提示:该程序运行后,可能无法通过鼠标操作退出,此时请不要惊慌,直接使用快捷键Alt+F4关闭窗口即可。
看起来很成功,我们看到鼠标被强制的移动到了右下角,并且如我们所想的那样,无法移动到别的位置了。
[完成]
前面说了,这个演示的效果不是很理想,因为鼠标被强制的固定住了,下篇教程我们将学习如果检测按键操作,届时我们将会借助那一篇学到的知识,重新优化这个例程,让他的效果更好!
[示例代码下载]
全部源代码下载:http://kuai.xunlei.com/d/BiIvAKaxMGuqUgQA4b4
幻世(OurDream)2D图形引擎使用教程8——处理操作输入(2)的更多相关文章
- 幻世(OurDream)2D图形引擎使用教程9——处理操作输入(3)
声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst 谢谢合作! 现在我们该 ...
- 幻世(OurDream)2D图形引擎使用教程11——播放媒体文件(1)
声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst 谢谢合作! 播放媒体是 ...
- 幻世(OurDream)2D图形引擎易语言汉化版更新提示
幻世引擎的易语言汉化专版到目前为止已经累积了多个BUG,其中多个BUG是影响引擎功能使用的问题,我将会在近期发布修复所有问题的更新版本(此更新版本同时也将会支持最新的对加入的粒子系统的支持),敬请各位 ...
- 幻世(OurDream)2D图形引擎大更新——炫丽粒子特效强势回归!
本次更新终于让各位期待已久的绚丽粒子系统特效强势回归到幻世当中了.凭借新引擎强大而又高效的绘图,新的粒子系统将比旧有版本(原Ycnd 2D)在性能上有极大幅度的增强,增幅超过十倍! 更强的性能!更好的 ...
- 幻世(OurDream)TM 2D图形引擎开通捐赠渠道
为了支持幻世(OurDream)TM 2D图形引擎更好的发展,同一时候也是为了给希望支持引擎发展的朋友一个安全快捷的渠道,Lizcst Software Lab于今日正式在官方旗舰店增设了一个捐赠捐款 ...
- Unity 2D游戏开发教程之精灵的死亡和重生
Unity 2D游戏开发教程之精灵的死亡和重生 精灵的死亡和重生 目前为止,游戏项目里的精灵只有Idle和Walking这两种状态.也就是说,无论精灵在游戏里做什么,它都不会进入其它的状态,如死亡.于 ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
- Unity 2D游戏开发教程之使用脚本实现游戏逻辑
Unity 2D游戏开发教程之使用脚本实现游戏逻辑 使用脚本实现游戏逻辑 通过上一节的操作,我们不仅创建了精灵的动画,还设置了动画的过渡条件,最终使得精灵得以按照我们的意愿,进入我们所指定的动画状态. ...
- Unity 2D游戏开发教程之游戏精灵的开火状态
Unity 2D游戏开发教程之游戏精灵的开火状态 精灵的开火状态 “开火”就是发射子弹的意思,在战争类型的电影或者电视剧中,主角们就爱这么说!本节打算为精灵添加发射子弹的能力.因为本游戏在后面会引入敌 ...
随机推荐
- django 基础入门(二)
一.关于数据库 1.首先django 1.9以上等版本不支持pymysql,因此需要做一些调整. 比如在settings.py 加入一段代码: import pymysql pymysql.insta ...
- Linux系统目录(转载)
/ (这就是著名的根)├── bin (你在终端运行的大多数程序,比如cp.mv...)├── boot (内核放在这里,这个目录也经常被作为某个独立分 ...
- 深入select_related与prefetch_related函数
阅读博客http://blog.jobbole.com/74881/的笔记 在数据库有外键的时候,使用select_related()和prefetch_related()可以很好的减少数据库请求的次 ...
- Microsoft Jet 数据库引擎找不到对象'Sheet1$_'。请确定对象是否存在,并正确地写出它的名称和路径
We have a CRM add-on for Importing Price Lists into CRM. For this tool, we expect the details to be ...
- 在Xcode中使用C++与Objective-C混编
有时候,出于性能或可移植性的考虑,需要在iOS项目中使用到C++. 假设我们用C++写了下面的People类: // // People.h // MixedWithCppDemo // // ...
- IOS SWIFT基本画图教程
OS SWIFT基本画图教程 其实这是以前做过的一个例子,方便自己参考的代码!希望对大家也有点参考. 首先,建立一个Swift类,继承UIView这个类,然后重写 func drawRect(rect ...
- apache2.4.x三种MPM介绍
三种MPM介绍 Apache 2.X 支持 ...
- ceph增加osd流程
假如需要新增一个主机名:osd4 ip:192.168.0.110的OSD1.在osd4创建挂载目录及放置配置文件的目录 ssh 192.168.0.110 (这里是从mon主机ssh到osd4主机) ...
- [HDU 1016]--Prime Ring Problem(回溯)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 Prime Ring Problem Time Limit: 4000/2000 MS (Jav ...
- applicationContext.xml详解
http://blog.csdn.net/heng_ji/article/details/7022171