一种基于触屏的搓牌方法及一种扑克游戏装置与流程

文档序号:12347158阅读:222来源:国知局

技术领域

本发明涉及人机交互领域,特别涉及一种基于触屏的搓牌方法及一种扑克游戏装置。



背景技术:

现实的扑克游戏中,为了增加游戏乐趣,玩家可以进行搓牌操作,搓牌具体是指,将两张扑克牌牌面相对摞在一起,下面一张牌面(牌的正面)朝上,上面一张牌面朝下,从而上面的扑克牌将下面的扑克牌牌面盖住,玩家缓慢移动上面的扑克牌(背面朝上),让下面的扑克牌(正面朝上)露出部分或者全部(如只漏出一个角),从而在不能完全看清牌面(扑克的正面)的情况下,预估下面一张牌的牌面具体内容。

但是在手游中,由于扑克牌是虚拟物品,玩家无法对扑克牌进行直接接触,从而无法进行搓牌操作。



技术实现要素:

本发明的目的在于针对现有的扑克手游中,扑克是虚拟物品,因此玩家不能和虚拟扑克直接接触,从而无法进行搓牌操作的问题,提供一种基于触屏的搓牌方法。

为了实现上述发明目的,本发明提供了以下技术方案:

一种基于触屏的搓牌方法,包含如下步骤:

显示一对牌面贴合的扑克牌,其中包括牌面朝上的第一扑克牌和牌面朝下的第二扑克牌;

确定第二扑克牌范围,检测第二扑克牌范围内的触碰点信息;

根据触碰点信息调整控制第二扑克牌的位置和角度。

进一步的,每隔0.08s~0.2s做一次检测,以判断第二扑克牌范围内是否出现触碰点;

根据每次检测的结果调整第二扑克牌的位置和角度。

进一步的,根据触碰点信息调整控制第二扑克牌位置和角度的步骤中,首先判断触碰点数量,如,触碰点数量为一个,

则锁定该触碰点初始位置位于第二扑克牌上的相对位置坐标,第二扑克牌保持角度不变,同时保持第二扑克牌上的该相位位置坐标跟触碰点重合,从而使得第二扑克牌跟随触碰点移动。

进一步的,根据触碰点信息调整控制第二扑克牌位置和角度的步骤中,首先判断触碰点数量,如,触碰点数量为两个,分别为第一触碰点、第二触碰点;

则,检测第一触碰点、第二触碰点的当前坐标,分别形成第一触碰点上一坐标到当前坐标的第一移动向量,以及,第二触碰点上一坐标到当前坐标的第二移动向量;

计算第一移动向量和第二移动向量的大小;向量的大小小于或等于第一阈值时,认为该向量对应的触碰点没有发生移动,为静止触碰点;向量的大小大于第一阈值时,认为该向量对应的触碰点发生了移动,为移动触碰点;

如移动触碰点为一个,则,计算移动触碰点相对静止触碰点移动的角度,控制第二扑克牌以静止触碰点为圆心旋转相同角度。

进一步的,当移动触碰点为两个时,计算第一移动向量和第二移动向量之间的角度,如角度小于或等于第二阈值,则,选取第一移动向量和第二移动向量之间较大的那个作为参考移动向量,计算该参考移动向量在X方向、Y方向的位移,并根据该位移重新设置第二扑克牌的位置。

进一步的,当移动触碰点为两个时,如第一移动向量和第二移动向量之间的角度大于第二阈值时,第二扑克牌不移动。

进一步的,根据触碰点的移动数据控制第二扑克牌的位置时,将触碰点的移动数据乘以第一修正参数获得第一修正数据,根据该第一修正数据控制第二扑克牌的位置;

所述第一修正参数为大于0,小于1的浮点数,该第一修正参数越靠近1则第二扑克牌跟随触碰点移动的灵敏性越高,但是实际操作中,过高的灵敏度不会带个用户更加真实的搓牌体验,因此本发明中,通过第一修正参数适度降低第二扑克牌移动的灵敏度;优选的,第二修正参数值可以是0.6、0.65、0.7、0.75、0.8、0.85中的任意一个。

进一步的,将第一修正数据进一步乘以第二修正参数获得第二修正数据,根据该第二修正数据控制第二扑克的位置;

该第二修正参数为当前屏幕高度/UI当前高度。

本发明同时提供一种实现如上所述的搓牌方法的扑克游戏装置,包括,

显示模块,用于显示一对牌面贴合的扑克牌,其中包括牌面朝上的第一扑克牌和牌面朝下的第二扑克牌;

信号检测模块,用于检测第二扑克牌范围内的触碰点位置信息;

控制模块,将第一扑克牌位置固定,根据触碰点位置信息得出触碰点移动数据,根据所述移动数据调整第二扑克牌的具体位置。

进一步的,所述显示模块和信号检测模块由触屏实现。

与现有技术相比,本发明的有益效果:本发明提供一种基于触屏的搓牌方法,在触屏中显示一对牌面(牌面指扑克牌的正面)相对的扑克牌,通过检测触碰点的移动,控制背面朝上的第二扑克牌的位置,通过选取最佳的检测时间,根据触碰点数量,触碰点的移动角度、移动距离的不同,对虚拟显示的第二扑克牌进行不同的移动,从而让玩家有非常接近于现实的搓牌体验。

附图说明:

图1为本发明提供的搓牌方法的流程图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。

实施例1:如图1所示,本实施例提供一种基于触屏的搓牌方法,包含如下步骤:

S100:显示一对牌面贴合的扑克牌,其中包括牌面朝上的第一扑克牌和牌面朝下的第二扑克牌;

S200:确定第二扑克牌范围,检测第二扑克牌范围内的触碰点信息;触碰点信息包括但不限于,触碰点位于触碰上的坐标,触碰点的移动轨迹,如,本实施例中,利用两侧连续检测到的触碰点坐标形成的向量来表示触碰点轨迹;即,如果检测到触碰点没有在第二扑克牌的范围之内时,忽略该触摸信息。具体的,每隔0.08s~0.2s做一次检测,以判断第二扑克牌范围内是否出现触碰点,这是由于,如果检测间隔过小,一方面系统压力过大,另一发面,扑克对触碰移动会过于敏感,造成用户明明感觉没有移动,而扑克牌却移动了的状况,从而会降低客户真实体验度,而检测间隔过长,又会导致第二扑克牌反应迟钝,明明用户触碰点已经移动,但是第二扑克牌却没有移动的情况,同样降低用户真实体验度;本实施例中,采取每隔0.09s检测一次触碰点信息。

S300:根据触碰点信息调整控制第二扑克牌的位置和角度,由于S200中,是每隔0.09s检测一次触碰点信息,因此本步骤也是每隔0.09s就根据触碰点信息调整控制一次第二扑克牌位置和角度。

具体的,包括,

S310:判断触碰点数量,如,触碰点数量为一个,则进入S311;如,触碰点数量为两个,分别为第一触碰点、第二触碰点,则进入S320:

S311:锁定该触碰点初始位置位于第二扑克牌上的相对位置坐标,第二扑克牌保持角度不变,同时保持第二扑克牌上的该相位位置坐标跟触碰点重合,从而使得第二扑克牌跟随触碰点移动。

S320:检测第一触碰点、第二触碰点的当前坐标,分别形成第一触碰点上一坐标(0.09s之前测得的第一触碰点坐标)到当前坐标的第一移动向量,以及,第二触碰点上一坐标(0.09s之前测得的第二触碰点坐标)到当前坐标的第二移动向量;

计算第一移动向量和第二移动向量的大小(向量的大小又称向量的模);向量的大小小于或等于第一阈值时,认为该向量对应的触碰点没有发生移动,为静止触碰点;向量的大小大于第一阈值时,认为该向量对应的触碰点发生了移动,为移动触碰点; 如移动触碰点为一个,则进入S321;如移动触碰点为两个,则进入S322:

S321:计算移动触碰点相对静止触碰点移动的角度,控制第二扑克牌以静止触碰点为圆心旋转相同角度。

S322:计算第一移动向量和第二移动向量之间的角度,如角度小于或等于第二阈值,则进入S323; 如第一移动向量和第二移动向量之间的角度大于第二阈值时,则进入S324:

S323:选取第一移动向量和第二移动向量之间较大的那个作为参考移动向量,计算该参考移动向量在X方向、Y方向的位移,并根据该位移重新设置第二扑克牌的位置。

S324:第二扑克牌不移动。

S400:如连续N次没有检测到触碰点信息,则第二扑克牌回归初始坐标位置,N可以是2以上的自然数,比如3、5、10等。

应注意的是,本实施例中,根据触碰点的移动数据控制第二扑克牌的位置时,将触碰点的移动数据乘以第一修正参数获得第一修正数据,根据该第一修正数据控制第二扑克牌的位置;所述第一修正参数为介于0~1的浮点数,该第一修正参数越靠近1则第二扑克牌跟随触碰点移动的灵敏性越高,但是实际操作中,过高的灵敏度不会带个用户更加真实的搓牌体验,因此本发明中,通过第一修正参数适度降低第二扑克牌移动的灵敏度;优选的,第二修正参数值可以是0.6、0.65、0.7、0.75、0.8、0.85中的任意一个。同时,本实施例中,还将第一修正数据进一步乘以第二修正参数获得第二修正数据,根据该第二修正数据控制第二扑克牌的位置;该第二修正参数为当前屏幕高度/UI当前高度,当前屏幕高度是指,如采用智能手机应用本发明方法时,如果智能手机竖屏使用时,当前屏幕高度即为手机高度,当智能手机横屏使用时,当前屏幕高度实际是指手机的宽度;同理,UI是显示扑克牌的界面,UI的当前高度是指,竖屏使用时,UI的实际高度,或横屏使用时,UI的实际高度,这是由于,由于UI的高度会根据屏幕的高度自动进行调整,如,屏幕高度为2000时,UI的高度会被设置成1136,则第二修正参数为2000/1136。

另外,本实施例提供的搓牌方法,可通过单独的结束指令进行终结。

实施例2:本实施例提供一种扑克游戏装置,包括,

显示模块,用于显示一对牌面贴合的扑克牌,其中包括牌面朝上的第一扑克牌和牌面朝下的第二扑克牌;

信号检测模块,用于检测第二扑克牌范围内的触碰点位置信息;

控制模块,将第一扑克牌位置固定,根据触碰点位置信息得出触碰点移动数据,根据所述移动数据调整第二扑克牌的具体位置。

所述显示模块和信号检测模块由触屏实现。

具体的,该扑克游戏装置按照如下步骤运行:

S100:显示一对牌面贴合的扑克牌,其中包括牌面朝上的第一扑克牌和牌面朝下的第二扑克牌;

S200:确定第二扑克牌范围,检测第二扑克牌范围内的触碰点信息;即,如果检测到触碰点没有在第二扑克牌的范围之内时,忽略该触摸信息。具体的,每隔0.08s~0.2s做一次检测,以判断第二扑克牌范围内是否出现触碰点,这是由于,如果检测间隔过小,一方面系统压力过大,另一发面,扑克对触碰移动会过于敏感,造成用户明明感觉没有移动,而扑克牌却移动了的状况,从而会降低客户真实体验度,而检测间隔过长,又会导致第二扑克牌反应迟钝,明明用户触碰点已经移动,但是第二扑克牌却没有移动的情况,同样降低用户真实体验度;本实施例中,采取每隔0.09s检测一次触碰点信息。

S300:根据触碰点信息调整控制第二扑克牌的位置和角度。

具体的,包括,

S310:判断触碰点数量,如,触碰点数量为一个,则进入S311;如,触碰点数量为两个,分别为第一触碰点、第二触碰点,则进入S320:

S311:锁定该触碰点初始位置位于第二扑克牌上的相对位置坐标,第二扑克牌保持角度不变,同时保持第二扑克牌上的该相位位置坐标跟触碰点重合,从而使得第二扑克牌跟随触碰点移动。

S320:检测第一触碰点、第二触碰点的当前坐标,分别形成第一触碰点上一坐标(0.09s之前测得的第一触碰点坐标)到当前坐标的第一移动向量,以及,第二触碰点上一坐标(0.09s之前测得的第二触碰点坐标)到当前坐标的第二移动向量;

计算第一移动向量和第二移动向量的大小(向量的大小又称向量的模);向量的大小小于或等于第一阈值时,认为该向量对应的触碰点没有发生移动,为静止触碰点;向量的大小大于第一阈值时,认为该向量对应的触碰点发生了移动,为移动触碰点; 如移动触碰点为一个,则进入S321;如移动触碰点为两个,则进入S322:

S321:计算移动触碰点相对静止触碰点移动的角度,控制第二扑克牌以静止触碰点为圆心旋转相同角度。

S322:计算第一移动向量和第二移动向量之间的角度,如角度小于或等于第二阈值,则进入S323; 如第一移动向量和第二移动向量之间的角度大于第二阈值时,则进入S324:

S323:选取第一移动向量和第二移动向量之间较大的那个作为参考移动向量,计算该参考移动向量在X方向、Y方向的位移,并根据该位移重新设置第二扑克牌的位置。

S324:第二扑克牌不移动。

应注意的是,本实施例中,并不采用第一修正参数对触碰点的移动数据进行修正,而是直接在控制第二扑克牌移动时,将触碰点的移动数据乘以第二修正参数获得修正后的数据,让第二扑克牌根据修正后的数据控制第二扑克牌的位置;同样的,该第二修正参数为当前屏幕高度/UI当前高度。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1