掌桥专利:专业的专利平台
掌桥专利
首页

一种角色移动的控制方法及装置

文献发布时间:2023-06-19 09:32:16


一种角色移动的控制方法及装置

技术领域

本申请涉及计算机技术领域,特别涉及一种角色移动的控制方法及装置、计算设备和计算机可读存储介质。

背景技术

在游戏中,会遇到以下场景:玩家在控制角色冲刺并尝试击退boss角色时,如果boss角色开启“霸体”模式,便可以抵抗击退,并阻止玩家角色的前冲。

现有技术中,游戏中的角色冲刺都是提前计算好以后,让客户端与服务器同时执行,且期间不可以发生轨迹的改变。此种方式对于静态障碍的阻挡是很好处理的,因为在角色开始冲刺前就可以预计算,通过修改冲刺终点就行。但是如果是一个会动的障碍(例如开启“霸体”模式的boss角色,他可以在玩家角色对其冲刺时向前移动或者后退移动),这种情况就没办法预计算,需要进行高精度的提前阻挡预判。

对于提前阻挡预判,难点有二:

一是在于角色冲刺的速度往往很快,而物理引擎的碰撞检测往往存在延迟,没法提供这么高精度的检测,否则计算量不够。

二是角色冲刺的轨迹、加速度是多变的,在一个游戏里,特别是MMOPRG游戏中不同的角色有不同的冲刺速度和特异的冲刺轨迹,所以提前阻挡预判的方法必须做的很通用才有很好的适应性,要避免预判晚了角色已经冲过头,或者预判早了导致玩家角色停止而后续攻击技能碰不到boss角色,这无疑增加了处理难度。

发明内容

有鉴于此,本申请实施例提供了一种角色移动的控制方法及装置、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。

本申请实施例提供了一种角色移动的控制方法,所述方法包括:

根据输入指令控制目标角色移动,其中,所述目标角色绑定有固定检测框和可伸缩检测框;

当其他角色进入固定检测框或可伸缩检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测;

在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

可选地,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测,包括:根据所述目标角色和所述其他角色在当前帧的位置和移动状态,并在设定数量的游戏帧后进行当前帧的碰撞位置的预测。

可选地,所述可伸缩检测框的长度和方向与所述目标角色的速度相关联;

所述方法还包括:当其他角色位于所述目标角色的固定检测框内、目标角色继续朝向所述其他角色移动的情况下,根据目标角色的移动速度重新生成可伸缩检测框,并直接根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

可选地,根据目标角色的移动速度重新生成可伸缩检测框,包括:

在所述目标角色的移动速度增大的情况下,控制所述可伸缩检测框拉长;

在所述目标角色的移动速度减小的情况下,控制所述可伸缩检测框缩短。

可选地,在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果,包括:

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态;

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为非霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述目标角色的第一移动状态,并根据所述目标角色的第一移动状态确定所述其他角色的第二移动状态。

可选地,所述其他角色的范围包括角色的技能特效范围和角色本体范围,所述角色本体范围位于所述技能特效范围内;

在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态,包括:

在所述目标角色进入其他角色的技能特效范围内的情况下,取消所述目标角色的第一移动状态,保持所述其他角色的当前状态。

可选地,若所述其他角色的当前状态为朝向所述目标角色移动的第三移动状态;所述方法还包括:在取消所述目标角色的第一移动状态的同时,根据所述其他角色的第三移动状态控制所述目标角色的第四移动状态。

可选地,在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果,包括:

若所述目标角色的当前状态包括水平的第一移动子状态和竖直的第二移动子状态的曲线移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动子状态并控制所述目标角色沿第二移动子状态移动。

可选地,所述目标角色绑定技能碰撞检测框;

所述方法还包括:当所述其他角色进入技能碰撞检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞位置的预测。

本申请实施例公开了一种角色移动的控制装置,所述装置包括:

移动控制模块,被配置为根据输入指令控制目标角色移动,其中,所述目标角色绑定有固定检测框和可伸缩检测框;

碰撞预测模块,被配置为当其他角色进入固定检测框或可伸缩检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测;

碰撞执行模块,被配置为在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

本申请实施例公开了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现如上所述的角色移动的方法的步骤。

本申请实施例公开了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如上所述的角色移动的方法的步骤。

本申请提供的角色移动的方法及装置,通过为目标角色绑定有固定检测框和可伸缩检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现双检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以通过固定检测框防止预测的失误,以提升预判的准确度。

另外,本申请的角色移动的方法及装置,通过为目标角色绑定有固定检测框、可伸缩检测框和技能碰撞检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框或技能碰撞检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现多检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以防止预测的失误,以提升预判的准确度。

附图说明

图1是本申请实施例的计算设备的结构示意图;

图2是本申请一实施例的角色移动的方法流程示意图;

图3是本申请又一实施例的角色移动的方法流程示意图;

图4是本申请又一实施例的角色移动的装置的结构示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

首先,对本发明一个或多个实施例涉及的名词术语进行解释。

MMORPG游戏:是一种大型多人在线角色扮演的网络游戏,在游戏中玩家都要扮演一个虚构角色,并控制该角色的许多活动。

固定检测框:绑定于玩家角色的一种检测框,用于检测是否有其他角色进入固定检测框,从而预测碰撞。固定检测框通常会比较短小,且在后台加载,不会显示于玩家视窗内。

可伸缩检测框:绑定于玩家角色的另一种检测框,用于检测是否有其他角色进入可伸缩检测框,从而预测碰撞。可伸缩检测框的长度可以根据玩家角色的速度进行伸缩,且在后台加载,不会显示于玩家视窗内。

技能检测框:绑定于玩家角色的再一种检测框,可以根据玩家角色释放的技能而生成,用于检测是否有其他角色进入技能检测框,从而预测碰撞。

特殊角色状态:在本实施例中,特殊角色状态也称为霸体状态,指的是其他角色保持自身的状态,而不会被目标角色的移动状态所影响。在后续实施例中,“霸体状态”与此处含义相同,不再赘述。

在本申请中,提供了一种角色移动的控制方法及装置、计算设备和计算机可读存储介质,在下面的实施例中逐一进行详细说明。

图1是示出了根据本说明书一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。

计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。

在本说明书的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。

其中,处理器120可以执行图2所示方法中的步骤。图2是示出了根据本申请一实施例的角色移动的方法的示意性流程图,包括步骤201至步骤203。

201、根据输入指令控制目标角色移动,其中,所述目标角色绑定有固定检测框和可伸缩检测框。

其中,输入指令可以为玩家基于显示于触摸屏的虚拟按键的点选操控指令,也可以玩家基于其他操控设备输入的操控指令,例如鼠标、键盘等。

控制目标角色移动的方式有多种,本实施例中,在应用于MMOPRG游戏中,可以为控制目标角色朝向boss角色发动冲刺攻击。由于冲刺攻击的速度很快,所以本实施例中需要给目标角色绑定两个检测框进行碰撞预测。

对于固定检测框和可伸缩检测框,其运行于后台,并不在与玩家交互的游戏画面中进行显示。固定检测框和可伸缩检测框可以为根据目标角色的行进方向延伸,一般地,固定检测框和可伸缩检测框的延伸方向为目标角色的前进方向。

固定检测框和可伸缩检测框的横截面大小可以根据实际需求而设置,一般地设置固定检测框和可伸缩检测框的横截面大小与目标角色相适配,过小或过大都容易造成碰撞的误判。

固定检测框的长度一般较小,只需要监听其他角色的“进和出”,被动的响应物理引擎的轮询检测就行,不需要高灵敏度的检测。其中,其他角色可以为另外的玩家角色,也以为NPC(Non-PlayerCharacter,非玩家控制角色)。

可伸缩检测框的长度会根据实际条件而变化,例如本实施例中,可伸缩检测框可以根据目标角色的速度进行变化。在所述目标角色的移动速度增大的情况下,控制所述可伸缩检测框拉长;在所述目标角色的移动速度减小的情况下,控制所述可伸缩检测框缩短,从而实现目标角色进行高速移动时,可以较早地进行碰撞预测,避免角色“冲过头”。

202、当其他角色进入固定检测框或可伸缩检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测。

实际使用时,对于固定检测框和可伸缩检测框是分开响应的,无论在固定检测框还是可伸缩检测框,只要其他角色进入了检测框范围内,就进行碰撞预测。只要其中之一的碰撞预测准确,就可以保证后续步骤中两个角色的准确碰撞。

一般地,根据游戏的物理引擎,碰撞预测都会延后一定数量的游戏帧进行,步骤202中根据目标角色和其他角色的状态以及位置进行碰撞预测,包括:

根据所述目标角色和所述其他角色在当前帧的位置和移动状态,并在设定数量的游戏帧后进行当前帧的碰撞位置的预测。

其中,设定数量可以根据实际需求而设置,例如1个游戏帧、2个游戏帧等。

例如,其他角色为boss角色,目标角色和boss角色在当前帧的移动状态为相对移动,则根据目标角色和boss角色的位置和移动速度在2个游戏帧后预测两个角色的碰撞位置。

在另一种使用场景下,当目标角色已经与其他角色相贴合的情况下,由于其他角色一直在固定伸缩框内,不需要频繁的检测,从而可以减少可伸缩检测框的碰撞预测。具体地,所述方法还包括:

当其他角色位于所述目标角色的固定检测框内、目标角色继续朝向其他角色移动的情况下,根据目标角色的移动速度重新生成可伸缩检测框,并直接执行下述步骤203对于碰撞效果的执行。

需要解释的是,本实施例中的可伸缩检测框为根据目标角色的速度而生成,其并不会因为目标角色和其他角色已经处于碰撞的状态下而取消生成。

但是作为优化,在目标角色没有移动的情况下,也即目标角色的速度为0时,可以关掉可伸缩检测框,从而可以降低很大的计算量。

203、在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

具体地,步骤203包括:

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态。

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为非霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述目标角色的第一移动状态,并根据所述目标角色的第一移动状态确定所述其他角色的第二移动状态。

需要解释的是,以其他角色为boss角色为例,霸体状态指的是boss角色会保持自身的状态而不会被目标角色的移动状态所影响。例如在目标角色的高速冲刺的情况下,其他角色会被“弹起”或者“后退”;但是对于处于霸体状态的其他角色,则会保持自身的“静止”或者“移动”状态,而使目标角色对其他角色的冲刺无效。

当然,若boss角色的霸体状态消失的情况下,在目标角色和boss角色进行碰撞时,保持目标角色的第一移动状态,并根据目标角色的第一移动状态确定boss角色的第二移动状态为“弹起”或者“后退”。

更进一步地,目标角色与其他角色可以直接发生碰撞,也可以目标角色与其他角色的外延范围发生碰撞。

具体地,其他角色的范围包括角色的技能特效范围和角色本体范围,所述角色本体范围位于所述技能特效范围内。对于此种情况下,目标角色和其他角色并不直接发生贴合,而是目标角色与其他角色的技能特效范围发生碰撞。

具体地,仍以其他角色为boss角色为例,boss角色的霸体状态的技能特效范围为一环绕boss角色周边的圆形高亮区域。那么,目标角色在移动至boss角色的技能特效范围贴合的情况下,则确定目标角色与boss角色发生碰撞。

那么对应地,步骤203中在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态,包括:

若目标角色的当前状态为第一移动状态、其他角色的当前状态为霸体状态,在目标角色进入其他角色的技能特效范围内的情况下,保持其他角色的当前状态,取消目标角色的第一移动状态。

在另一种情况下,对于其他角色处于霸体状态的情形,若所述其他角色的当前状态为朝向目标角色移动的第三移动状态,所述方法还包括:在取消所述目标角色的第一移动状态的同时,根据所述其他角色的第三移动状态控制所述目标角色的第四移动状态。

仍以其他角色为boss角色为例,boss角色的霸体状态的技能特效范围为一环绕boss角色周边的圆形高亮区域。在目标角色高速冲刺至与boss的技能特效范围相碰撞的情况下,取消目标角色的第一移动状态(高速冲刺)。如果在此过程中boss角色保持朝向目标角色移动的第三移动状态,那么,在取消目标角色的第一移动状态的同时,目标角色还会执行第四移动状态,即目标角色跟随boss角色的前进而后退,或者目标角色被boss角色“弹飞”等等。

还有一种情况下,目标角色的移动状态并非直线运动状态,而是特殊的曲线移动状态。例如目标角色的曲线移动状态包括水平的第一移动子状态和竖直的第二移动子状态。那么,步骤203包括:若所述目标角色的当前状态包括水平的第一移动子状态和竖直的第二移动子状态的曲线移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动子状态并控制所述目标角色沿第二移动子状态移动。

仍以其他角色为boss角色为例,目标角色在高速移动至与boss角色相碰撞的情况下,由于boss角色的霸体状态,目标角色取消第一移动子状态,但是仍旧保持竖直的第二移动子状态而呈现“向上飞起”的运动效果。

本实施例提供的角色移动的方法,通过为目标角色绑定有固定检测框和可伸缩检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现双检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以通过固定检测框防止预测的失误,以提升预判的准确度。

本实施例还提供了一种角色移动的控制方法,参见图3,包括步骤301~303:

301、根据输入指令控制目标角色移动,其中,所述目标角色绑定有固定检测框、可伸缩检测框和技能碰撞检测框。

本实施例中,进一步地,目标角色还绑定有技能碰撞检测框,从而不仅可以目标角色的移动来进行后续步骤的碰撞检测,还可以根据目标角色发出的技能来进行后续步骤的碰撞检测。

其中,技能碰撞检测框会根据目标角色发出的技能而生成,例如目标角色释放的近战技能。

对于固定检测框、可伸缩检测框以及技能碰撞检测框,其运行于后台,并不在与玩家交互的游戏画面中进行显示。固定检测框和可伸缩检测框可以为根据目标角色的行进方向延伸,一般地,固定检测框和可伸缩检测框的延伸方向为目标角色的前进方向;而技能碰撞检测框的延伸方向是跟随技能发出的方向。

对于固定检测框和可伸缩检测框的解释,参见前述实施例的详细解释,在此便不再赘述。

对于技能碰撞检测框,其长度和大小可以为固定值,也可以跟随技能的等级而变化,本实施例并不做具体限定。

302、当其他角色进入固定检测框或可伸缩检测框或技能碰撞检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测。

实际使用时,对于固定检测框、可伸缩检测框以及技能碰撞检测框是分开响应的,无论是固定检测框、可伸缩检测框还是技能碰撞检测框,只要其他角色进入了检测框范围内,就进行碰撞预测。只要其中之一的碰撞预测准确,就可以保证后续步骤中两个角色的准确碰撞。

一般地,根据游戏的物理引擎,碰撞预测都会延后一定数量的游戏帧进行,步骤302中当其他角色进入技能碰撞检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,包括:

当其他角色进入技能碰撞检测框的范围内,根据目标角色和其他角色在当前帧的位置和移动状态,并在设定数量的游戏帧后进行当前帧的碰撞位置的预测。

其中,设定数量可以根据实际需求而设置,例如1个游戏帧、2个游戏帧等。

对于其他角色进入固定检测框或可伸缩检测框的范围内的情形,参见前述实施例的详细解释,在此便不再赘述。

303、在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

具体地,步骤303包括:若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态。

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为非霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述目标角色的第一移动状态,并根据所述目标角色的第一移动状态确定所述其他角色的第二移动状态。

对于执行碰撞效果的各种情形,参见前述实施例,在此便不再赘述。

本实施例提供的角色移动的方法,通过为目标角色绑定有固定检测框、可伸缩检测框和技能碰撞检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框或技能碰撞检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现多检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以防止预测的失误,以提升预判的准确度。

本申请一实施例还提供一种角色移动的控制装置,参见图4,包括:

移动控制模块401,被配置为根据输入指令控制目标角色移动,其中,所述目标角色绑定有固定检测框和可伸缩检测框;

第一碰撞预测模块402,被配置为当其他角色进入固定检测框或可伸缩检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞预测;

碰撞执行模块403,被配置为在所述目标角色和所述其他角色进行碰撞的情况下,根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

可选地,第一碰撞预测模块402,被配置为:

根据所述目标角色和所述其他角色在当前帧的位置和移动状态,并在设定数量的游戏帧后进行当前帧的碰撞位置的预测。

可选地,所述可伸缩检测框的长度和方向与所述目标角色的速度相关联;

所述装置还包括:第二碰撞模块,被配置为当其他角色位于所述目标角色的固定检测框内、所述目标角色继续朝向所述其他角色移动的情况下,根据所述目标角色的移动速度重新生成可伸缩检测框,并直接根据所述目标角色的当前状态和所述其他角色的当前状态执行碰撞效果。

可选地,所述第二碰撞模块,进一步被配置为:在所述目标角色的移动速度增大的情况下,控制所述可伸缩检测框拉长;

在所述目标角色的移动速度减小的情况下,控制所述可伸缩检测框缩短。

可选地,碰撞执行模块403,具体被配置为:

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动状态;

若所述目标角色的当前状态为第一移动状态、所述其他角色的当前状态为非霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述目标角色的第一移动状态,并根据所述目标角色的第一移动状态确定所述其他角色的第二移动状态。

可选地,所述其他角色的范围包括角色的技能特效范围和角色本体范围,所述角色本体范围位于所述技能特效范围内;

碰撞执行模块403,具体被配置为:在所述目标角色进入其他角色的技能特效范围内的情况下,取消所述目标角色的第一移动状态,保持所述其他角色的当前状态。

可选地,若所述其他角色的当前状态为朝向所述目标角色移动的第三移动状态;

碰撞执行模块403,具体被配置为:在取消所述目标角色的第一移动状态的同时,根据所述其他角色的第三移动状态控制所述目标角色的第四移动状态。

可选地,碰撞执行模块403,具体被配置为:若所述目标角色的当前状态包括水平的第一移动子状态和竖直的第二移动子状态的曲线移动状态、所述其他角色的当前状态为霸体状态,在所述目标角色和所述其他角色进行碰撞的情况下,保持所述其他角色的当前状态,取消所述目标角色的第一移动子状态并控制所述目标角色沿第二移动子状态移动。

可选地,所述目标角色绑定技能碰撞检测框;

所述装置还包括:

第二碰撞预测模块,被配置为:当其他角色进入技能碰撞检测框的范围内,根据所述目标角色和所述其他角色的状态以及位置进行碰撞位置的预测。

本实施例提供的角色移动的装置,通过为目标角色绑定有固定检测框和可伸缩检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现双检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以通过固定检测框防止预测的失误,以提升预判的准确度。

另外,本申请的角色移动的装置,通过为目标角色绑定有固定检测框、可伸缩检测框和技能碰撞检测框,以适用于不同场景下的碰撞检测,当其他角色进入固定检测框或可伸缩检测框或技能碰撞检测框的范围内,根据目标角色和其他角色的状态以及位置进行碰撞预测,以确定将要发生碰撞的位置和效果;并在目标角色和其他角色进行碰撞的情况下,根据目标角色的当前状态和其他角色的当前状态执行碰撞效果,从而可以实现多检测框对碰撞位置的预测和碰撞效果的预判,在角色高速移动的情况下可以防止预测的失误,以提升预判的准确度。

本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述角色移动的方法的步骤。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的角色移动的方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述角色移动的方法的技术方案的描述。

所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

相关技术
  • 一种二维游戏角色移动控制方法、装置及存储介质
  • 一种角色移动控制方法、装置和系统
技术分类

06120112206505