个人理财 如何为您的HTML5游戏创建虚拟游戏杆 - 傻瓜

如何为您的HTML5游戏创建虚拟游戏杆 - 傻瓜

视频: 【TibaMe遊戲工廠】就是要學Unity - 2018最新版!超級入門 2025

视频: 【TibaMe遊戲工廠】就是要學Unity - 2018最新版!超級入門 2025
Anonim

许多基于触摸的HTML5游戏使用虚拟游戏杆机制。用户触摸屏幕开始输入,然后滑动以提供输入。向左滑动就像向左移动操纵杆一样。用户滑动越远,输入值越大。 simpleGame库有一个虚拟游戏杆对象,可以很容易地在您的基于触摸的设备上实现虚拟游戏杆。

<! --1 - >

虚拟操纵杆通过返回数字数据来工作。在将其映射到可视元素之前查看数字输出,通常最容易理解它是如何工作的。

游戏杆测试var游戏; var输出; var joystick;函数init(){game = new Scene();输出=文档。的getElementById( “输出”); if(game。touchable){ joystick = new Joy(); }其他{ 提示(“此测试需要一个基于触摸的界面”); } 的游戏。 start();} //结束init函数update(){ if(game。touchable){ jx = joystick。 getMouseX(); jy =操纵杆。 getMouseY(); jdx =操纵杆。 getDiffX(); jdy =操纵杆。 getDiffY(); result =“joystick x:”+ jx +“ ”; result + =“joystick y:”+ jy +“ ”; 

result + =“joystick dx:”+ jdx +“ ”;

result + =“joystick dy:”+ jdy +“ ”;

输出。这个虚拟游戏杆很容易使用: <!>这个虚拟游戏杆很容易使用:

<! - 2 - > 为游戏杆创建一个变量。 你可以把它叫做摇杆。那种吸引人的。

如果可能,创建操纵杆。

使用游戏。触摸属性来确定是否存在触摸界面。如果不是,则发送消息给用户。获取鼠标位置。
  1. 当虚拟手柄对象在屏幕上检测到触摸时,触发mouseX和mouseY值。使用操纵杆的getMouseX()和getMouseY()方法来确定触摸的X和Y位置。这样,触摸界面就像传统的鼠标一样。

  2. 从操纵杆获取diffX和diffY读数。

    当用户触摸屏幕时,库会跟踪初始触摸的坐标。然后测量用户已经滑过多远。 X中的差异称为diffX,Y中的差异称为diffY。使用虚拟手柄对象的getDiffX()和getDiffY()方法来确定用户在触摸屏幕后X和Y中有多少像素。显示当前值。

  3. 对于第一遍来说,理解操纵杆显示的内容很重要,所以只需将这些值输出到屏幕输出。

    当然,虚拟游戏杆的重点是在屏幕上移动东西。

    这里是代码:
  4. 游戏杆测试var游戏; var球; var操纵杆;函数init(){game = new Scene(); ball = new Sprite(game,“redBall.png”,50,50);如果(game。touchable){joystick = new Joy();} else {alert(“这个游戏需要一个触摸屏”);} //结束如果球。 (0)setSpeed;球。 setPosition(400,300);游戏。 start();} //结束init函数update(){游戏。明确();如果(比赛。触摸){球。 setDX(joystick。getDiffX());球。 setDY(joystick。getDiffY());} //结束可触摸的球。 update();} //结束更新

    这个例子比前一个更简单。

  5. 创建一个简单的球精灵。

    在这个例子中,使用了一个简单的球。创建它像任何其他基本精灵。

构建一个游戏杆对象。

制作一个虚拟手柄对象。

将游戏杆的diffX和diffY映射到球的dx和dy值。

这样会产生极其敏感的运动,因此您可能需要通过将diffX和diffY除以某个比例因子来调整灵敏度。

如何为您的HTML5游戏创建虚拟游戏杆 - 傻瓜

编辑的选择

Sql数据类型 - 虚拟

Sql数据类型 - 虚拟

这里是ISO / IEC标准SQL识别的所有形式数据类型的列表。除此之外,您可以定义从这些派生的其他数据类型。精确数字:INTEGER SMALLINT BIGINT NUMERIC DECIMAL近似数字:REAL DOUBLE PRECISION FLOAT二进制字符串:BINARY BINARY VARYING BINARY LARGE OBJECT布尔值:BOOLEAN字符串:CHARACTER ...

SQL WHERE子句谓词 - 虚拟子

SQL WHERE子句谓词 - 虚拟子

谓词归结为TRUE或FALSE结果。您可以通过应用WHERE子句(其谓词排除不需要的行)来从SQL查询的结果中筛选出不需要的行。比较谓词=等于 不等于 小于等于>大于> =大于...

编辑的选择

如何在QuickBooks 2014电子邮件发票 - 傻瓜

如何在QuickBooks 2014电子邮件发票 - 傻瓜

您可以通过电子邮件发票QuickBooks的。要做到这一点,请点击电子邮件按钮,它出现在主选项卡的创建发票屏幕的顶部。当QuickBooks显示“发送发票”对话框时,指定要使用哪个电子邮件帐户(网络邮件,电子邮件应用程序(例如Microsoft Outlook)或...

如何在QuickBooks 2010中输入帐单 - 傻瓜

如何在QuickBooks 2010中输入帐单 - 傻瓜

如果您在设置过程中告诉QuickBooks您要跟踪未付帐单(也称为应付帐款),您可以在收到帐单时输入帐单。当你这样做时,QuickBooks会跟踪未付帐单。如果您以前没有在QuickBooks中记录过物品收据如果您输入的钞票是...

如何在QuickBooks Online中输入帐单 - 虚拟币

如何在QuickBooks Online中输入帐单 - 虚拟币

输入您从供应商处收到的帐单QuickBook Online的帐单交易。 QBO跟踪账单作为应付款项,这是您的业务的责任 - 您欠的钱,但尚未支付。大多数进行账单交易的公司都是这样做的,因为他们收到了相当数量的账单,并且...

编辑的选择

虚拟主机常见的电子邮件问题 - 虚拟人物

虚拟主机常见的电子邮件问题 - 虚拟人物

最大最简单的方法发现您的网站托管电子邮件存在问题时,您尝试拿起您的新邮件,发现您长时间没有收到任何邮件。这不是一个科学的方法,但不接收电子邮件,或从其他人那里得到的报告...

如何备份您的虚拟主机数据库 - 虚拟机

如何备份您的虚拟主机数据库 - 虚拟机

使数据库备份成为优先事项。在发生损坏或丢失的情况下,可以轻松地重新创建网站设计,但是数据库中的数据更难重建,除非您有一个好的备份。您的主机可能已经将您的数据库备份为其数据库的一部分...

为您的网站和店面找到一个主机 - 傻瓜

为您的网站和店面找到一个主机 - 傻瓜

计划阶段,寻找您的网站的主机,您的博客,以及您设置销售您的产品的任何店面是一个基本要求。您可以设置多种托管服务的商店,从拍卖网站到网上商城到您自己的互联网服务...