一种游戏地图显示方法及其装置、移动客户端、电脑客户端的制作方法_3

文档序号:9442796阅读:来源:国知局
量,游戏地图向下移动1为负量,向上移动,T 2为正量。
[0110]该地点按钮判断子模块122进一步用于:通过获取智能终端的屏幕分辨率参数,得到屏幕的长h和宽W,判断\是否小于0,小于O则表示该地点按钮处于屏幕显示区域的左侧未显示区域,判断\是否大于h,大于h则表示该地点按钮处于屏幕显示区域的右边未显示区域;同理,判断yu是否小于0,小于O则表示该地点按钮处于屏幕显示区域的下边未显示区域,判断yu是否大于w,大于w则表示该地点按钮处于屏幕显示区域的上边未显示区域。因此,该地点按钮判断子模块122同时还可进一步获得各地点按钮相对于屏幕显示区域的方位信息。
[0111]该储存子模块123进一步用于接收地点按钮判断子模块122发送来的未显示区域的地点按钮信息,包括地点按钮中心点在屏幕坐标系的x、Y轴坐标值。另外,还可以用于保存地点按钮在游戏地图坐标系中的坐标值、或地点按钮的编号等信息。以及,还可用于保存地点按钮相对于屏幕显示区域的方位信息。
[0112]进一步,为了实现未显示区域的地点按钮在智能终端的屏幕上显示的位置与该地点按钮相对于屏幕显示区域的方位一致,该显示模块13还包括方位分组模块131和排序显不丰旲块132。
[0113]该方位分组模块131用于从地点按钮判断子模块122或储存子模块123中读取未显示区域的地点按钮相对于屏幕显示区域的方位信息,将未显示区域中不同方位的地点按钮按照方位进行分组,每组方位的地点按钮根据坐标值进行排序。
[0114]该排序显示模块132用于读取方位分组模块131的排序结果并将地点按钮根据排序结果显示在屏幕的对应方位的边缘上。设定屏幕左侧的未显示区域内的地点按钮显示在屏幕的左侧边缘,屏幕右边的未显示区域内的地点按钮显示在屏幕的右边边缘,屏幕上方的未显示区域内的地点按钮显示在屏幕的上边边缘,屏幕下边的未显示区域内的地点按钮显示在屏幕的下边边缘。
[0115]相对于现有技术,本实施例的游戏地图显示方法及装置,将未显示区域的地点按钮显示在智能终端的屏幕上,让玩家可以直观地选择到未显示区域的地点按钮,而不需要不断拖动游戏地图寻找所要到达的地点按钮,增加了游戏体验感。进一步,还将未显示区域的地点按钮根据其相对于屏幕显示区域的方位显示在屏幕对应方位的边缘上,更加方便玩家查找和点击。
[0116]实施例2
[0117]对于实施例1的技术方案,在游戏地图在智能终端屏幕显示区域移动时,游戏地图上的地点按钮从屏幕显示区域到未显示区域过渡的过程中,会存在跳跃感,即地点按钮的在屏幕上的切换是从一个位置跳到另一个位置的。
[0118]为了让游戏地图在智能终端屏幕显示区域移动时,游戏地图上的地点按钮从屏幕显示区域到未显示区域过渡的过程中,地点按钮从屏幕显示区域的游戏地图上的位置切换到屏幕显示区域对应的边缘位置时,地点按钮位于屏幕显示区域的边缘的位置与其在原游戏地图上的位置接近或一致,以达到一个平滑衔接的效果,方便玩家查找和增强视觉体验,本实施例2在实施I的基础上,进一步增加了对在未显示区域的地点按钮进行修正性的排序及显示的方法,使得地点按钮从游戏地图切换至屏幕边缘上显示时与其在原来游戏地图屏幕显示区域的位置相关对应或一致。
[0119]具体的,请参阅图9,其为本实施例2的游戏地图显示方法的方法步骤流程图,包括以下步骤:
[0120]S21:响应于针对游戏地图的拖动信号,获取游戏地图的移动量。
[0121]S22:在每帧游戏地图显示时,查找所述游戏地图中当前屏幕显示区域范围以外的未显示区域的地点按钮。
[0122]具体地,通过比较游戏地图按钮的坐标与屏幕显示区域边缘的坐标来确定未显示的地点按钮。请同时参阅图10,其为查找智能终端的游戏地图中当前屏幕显示区域范围以外的未显示区域的地点按钮的实现步骤流程图,具体包括以下步骤:
[0123]S221:将地点按钮在游戏地图坐标系中的中心坐标映射到屏幕坐标系,获得其相对于屏幕坐标系的坐标值。
[0124]地点按钮在游戏地图坐标系中的坐标为yv),当游戏地图被拖动的时候,由于游戏地图坐标系V到屏幕坐标系U的变换T为平移变换,将地点按钮的中心坐标也经过变换T,转化为屏幕坐标系U的坐标值U0 (xu,yu),其中,Xu= X ν+?\,yu= y v+T2,这里T1是游戏地图在X轴的移动量,游戏地图向左移动!\为负量,向右移动,T i为正量;、T 2是游戏地图在Y轴的移动量,游戏地图向下移动1为负量,向上移动,T 2为正量。
[0125]以下,地点按钮的坐标值变换均指的是基于屏幕坐标系的坐标值变换。
[0126]S222:判断各地点按钮是否在所述游戏地图中当前屏幕显示区域范围以外的未显示区域。
[0127]通过获取移动智能终端的屏幕分辨率参数,得到屏幕的长h和宽W。判断Xu是否小于0,若小于O则表示该地点按钮处于屏幕显示区域的左侧未显示区域;判断Xv是否大于h,若大于h则表示该地点按钮处于屏幕显示区域的右边未显示区域;同理,判断yu是否小于0,若小于O则表示该地点按钮处于屏幕显示区域的下边未显示区域;判断yu是否大于W,若大于w则表示该地点按钮处于屏幕显示区域的上边未显示区域。因此,在该步骤中,还可同时获得各地点按钮相对于屏幕显示区域的方位信息。
[0128]S223:创建存储序列,将未显示区域的地点按钮根据其相对于屏幕显示区域的方位方向的坐标值有序地保存至存储序列中。
[0129]具体地,建立表示左、右、下、上的4个方位的存储序列,根据步骤S222中获得的各地点按钮相对于屏幕显示区域的方位信息,将各未显示区域的地点按钮分别存储在左、右、上、下四个存储序列中。进一步,每一个方位存储序列中的未显示区域的地点按钮根据其在屏幕坐标系中的相对于屏幕显示区域的方位方向的坐标值顺序地保存。
[0130]在此,每个地点按钮作为一个数据元素存储到存储序列中,每个数据元素都包含了 X,Y轴两个坐标值数据项,表示该地点按钮在屏幕坐标系统上的显示位置。
[0131]在每一个存储序列中,地点按钮的顺序排列的规则为:(I)对于屏幕显示区域左右两边未显示区域,以X轴坐标绝对值从大到小的顺序排列;该顺序是游戏地图在被拖动的过程中,X轴坐标绝对值越大的未显示区域的地点按钮越早出现在显示屏幕的左右两边边缘。即,对于屏幕左侧未显示区域,按照地点按钮在屏幕坐标系的X轴坐标值由小到大排列到左存储序列,对于屏幕右边未显示区域,按照地点按钮屏幕坐标系的X轴坐标值由大到小排列到右存储序列。(2)对于屏幕显示区域上下两边未显示区域,以Y轴坐标绝对值从大到小的顺序排列;该顺序是游戏地图在被拖动的过程中,Y轴坐标绝对值越大的未显示区域的地点按钮越早出现在显示屏幕的上下两边边缘。即,对于屏幕下边未显示区域,按照地点按钮屏幕坐标系的Y轴坐标值由小到大排列到下存储序列,对于屏幕上边未显示区域,按照地点按钮屏幕坐标系的Y轴坐标值由大到小排列到上存储序列。
[0132]以智能终端屏幕显示的游戏地图左侧的未显示区域的地点按钮为例,按照这些地点按钮的屏幕坐标系的X轴坐标值由小到大排序,保存到左存储序列数组A中,对于第j个地点按钮,其X轴的值要小于第j+Ι个地点按钮的值,即A[j].x〈 = A[j+l].Xo
[0133]S23:将所述未显示区域的地点按钮根据其相对于屏幕显示区域的非方位方向的坐标值有序地显示在屏幕显示区域上。
[0134]在本步骤中,使游戏地图上的地点按钮从屏幕显示区域到未显示区域过渡的过程中,地点按钮从屏幕显示区域的游戏地图上的位置切换到屏幕显示区域对应的边缘位置时,地点按钮位于屏幕显示区域的边缘的位置与其在原游戏地图上的位置平滑衔接。
[0135]请同时参阅图11,其为将未显示区域的地点按钮根据其坐标值有序地显示在智能终端屏幕显示的游戏地图范围上的方法步骤流程图,具体包括以下步骤:
[0136]S231:创建显示序列,遍历在步骤S223中建立的存储序列中未显示区域的地点按钮,逐一加入显示序列中;每加入一个地点按钮时,对显示序列中所有的地点按钮进行重新排序后保存。之后转到步骤S232,对地点按钮的坐标值进行重叠判断与调整。
[0137]具体地,建立的显示序列包括分别与4个方位的存储序列的对应的4个方位的显示序列。对显示序列中的地点按钮进行重新排序的规则为:根据地点按钮相对于屏幕显示区域的非方位方向的坐标值由小到大进行排序。
[0138]对于屏幕左侧未显示区域,遍历步骤S223建立的左存储序列中的未显示区域的地点按钮,该左存储序列中的未显示区域的地点按钮已经是按照屏幕坐标系的X轴坐标值由小到大的顺序排列。对该左存储序列中的未显示区域的地点按钮,逐个加入左显示序列;每加入一个地点按钮时,都根据地点按钮Y轴的坐标值由小到大的排序规则,对左显示序列中所有的地点按钮进行重新排序。每加一个地点按钮,对显示序列中的地点按钮进行重新排序后,就转到步骤S232,进行对地点按钮显示位置的重叠判断与调整。
[0139]同理,对于屏幕右边未显示区域,遍历步骤S223建立的右存储序列中未显示区域的地点按钮,该右存储序列中的未显示区域的地点按钮已经是按照屏幕坐标系X轴坐标值由大到小的顺序排列。对该右存储序列中的未显示区域的地点按钮,逐个加入右显示序列;每加入一个地点按钮时,都根据地点按钮Y轴的坐标值由小到大的排序规则,对右显示序列中所有的地点按钮进行重新排序。该新加入的地点按钮的坐标值不变,每加一个地点按钮进行重新排序后,就转到步骤S232,进行对地点按钮显示位置的重叠判断与调整。
[0140]对于屏幕下边未显示区域,遍历步骤S223建立的下存储序列中未显示区域的地点按钮,该下存储序列中的未显示区域的地点按钮已经是按照屏幕坐标系Y轴坐标值由小到大的顺序排列。对该下存储序列中的未显示区域的地点按钮,逐个加入下显示序列;每加入一个地点按钮时,都根据地点按钮X轴的坐标值由小到大的排序规则,对下显示序列中所有的地点按钮进行重新排序。该新加入的地点按钮的坐标值不变,每加一个地点按钮进行重新排序后,就转到步骤S232,进行对地点按钮显示位置的重叠判断与调整。
[0141]同理,对于屏幕上边未显示区域,遍历步骤S223建立的上存储序列中未显示区域的地点按钮,该上存储序列中的未显示区域的地点按钮已经是按照屏幕坐标系Y轴坐标值由大到小的顺序排列。对该上存储序列中的未显示区域的地点按钮,逐个加入上显示序列;每加入一个地点按钮时,都根据地点按钮X轴的坐标值由小到大的排序规则,对上显示序列中所有的地点按钮进行重新排序。该新加入的地点按钮的坐标值不变,每加一个地点按钮进行重新排序后,就转到步骤S232,进行对地点按钮显示位置的重叠判断与调整。
[0142]在此,需解释说明的是,地点按钮的坐标值是保存在序列数组中的,地点按钮是基于其坐标值属性在屏幕上进行显示的。因此,显示序列包含了地点按钮的坐标参数,其决定了地点按钮在屏幕上的显示位置。
[0143]具体实现中,以智能终端屏幕显示的游戏地图左侧的未显示区域的地点按钮为例,建立一左显示序列数组B,将左存储序列数组A中的地点按钮一个个依序加入到左显示序列数组B,从地点按钮数组A中第一个地点按钮A[l]开始,也就是从屏幕坐标系X轴坐标值最小的地点按钮开始遍历。在数组B中逐个加入A[2],A[3],一A[i](未显示区域总共有i个地点按钮),每加入一个地点按钮A[n] (I < η < i),均根据数组B中已有的地点按钮A[2],A[3],…A[η]的屏幕坐标系的Y轴坐标值A[j].y的大小来决定这些地点按钮在移动智能终端屏幕显示的游戏地图左侧缘的位置,即按Y轴坐标值由小到大排序。例如对于地点按钮数组A中的地点按钮A[j],前面的j-Ι个按钮已经按Y轴坐标值由小到大排列好,并存入显示数组B,这时要将A [j].y插到B数据中,使得显示数组B中地点按钮A [2],A[3],…A[j]依然按Y轴坐标值由小到大排列。
[0144]S232:判断新加入的地点按钮是否与显示序列中其他地点按钮重叠;若出现地点按钮重叠的情况,则调整显示序列中地点按钮相对于屏幕显示区域的非方位方向的坐标值,以调整地点按钮在屏幕边缘上的位置。
[0145]上述的地点按钮重叠,是指两个地点按钮相对于屏幕显示区域的非方位方向的中心坐标值之差小于两地点按钮相切时的中心距离,这时在屏幕的显示上是发生图像的重叠。由于每个地点按钮,都有一定的点击区域,本申请以圆形区域为例,每个地点按钮的半径为L。对于屏幕左右两边未显示区域,如果两个地点按钮的中心点在Y轴上的坐标差值大于等于2L,则两个地点按钮没有重叠,如果小于2L,则两个地点按钮发生重叠;对于屏幕上下两边未显示区域,如果两个地点按钮的中心点在X轴上的坐标差值大于等于2L,则两个地点按钮没有重叠,如果小于2L,则两个地点按钮发生重叠。
[0146]如果没有出现位置重叠的情况,则进入步骤S233。
[0147]在本实施例中,如果在显示序列中新加入的地点按钮与之前存在于显示序列中的其他地点按钮发生重叠时,则调整其他地点按钮的相对于屏幕显示区域的非方位方向的坐标值,以保证当前新加入的地点按钮的坐标值不变。其他地点按钮的相对于屏幕显示区域的非方位方向的坐标值被调整后更新保存至显示序列中,从而在屏幕的显示上该被调整的地点按钮的显示位置做了改变。具体的调整方法为:
[0148]对于屏幕左右两边未显示区域,使当前新加入的地点按钮的坐标保持不变,如果当前新加入的地点按钮与其相邻的上边的地点按钮发生重叠,调整与其相邻的上边的地点按钮在Y轴上的坐标值,将上边的地点按钮的屏幕坐标系的Y轴坐标值增大,从而将其上移;如果当前新加入的地点按钮与其相邻的下边的地点按钮发生重叠,调整与其相邻的下边的地点按钮在Y轴上的坐标值,将下边的地点按钮的屏幕坐标系的Y轴坐标值减小,从而将其下移;从而消除当前新加入的地点按钮与其相邻的上下两边的地点按钮的重叠。由于与当前新加入的地点按钮相邻的上下边地点按钮在Y轴上的位置发生了改变,有可能会跟它们相邻的地点按钮重叠,如果重叠了,继续调整与它们相邻的地点按钮在Y轴上的位置,让跟它们相邻的地点按钮上移或下移,以此继续下去,直到显示序列中的全部地点按钮在Y轴上都不重叠,调整之后,保存调整后的显示序列中的地点按钮的最新坐标值。
[0149]对于屏幕上下两边未显示区域,使当前新加入的地点按钮的坐标保持不变,如果当前新加入的地点按钮与其相邻的右边的地点按钮发生重叠,调整与其相邻的右边的地点按钮在X轴上的坐标值,将右边的地点按钮的屏幕坐标系的X轴坐标值增
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1