首页> 中国专利> 一种业务平台中单位状态控制的方法及系统

一种业务平台中单位状态控制的方法及系统

摘要

本发明公开了一种业务平台中单位状态控制的方法,包括:提供外部接口,以接收输入的状态控制指令;根据接收到的状态控制指令生成相应的状态参数;判定所述单位是否满足第一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状态层;根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及若所述目的状态满足所确定的状态层的第二预设条件,则控制所述单位表现所述目的状态。本发明实现了对游戏中单位的状态及功能的控制,从而简化了游戏程序,提高了游戏的稳定性。本发明还提供一种业务平台中单位状态控制的系统。

著录项

  • 公开/公告号CN103777932A

    专利类型发明专利

  • 公开/公告日2014-05-07

    原文格式PDF

  • 申请/专利权人 腾讯科技(深圳)有限公司;

    申请/专利号CN201210406049.8

  • 发明设计人 董航;

    申请日2012-10-23

  • 分类号G06F9/44;G06F19/00;

  • 代理机构广州三环专利代理有限公司;

  • 代理人郝传鑫

  • 地址 518057 广东省深圳市福田区振兴路赛格科技园2栋东403室

  • 入库时间 2024-02-19 23:49:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-10-09

    授权

    授权

  • 2015-11-18

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20121023

    实质审查的生效

  • 2014-05-07

    公开

    公开

说明书

技术领域

本发明涉及游戏技术领域,尤其涉及一种业务平台中单位状态控制的方法 及系统。

背景技术

在现有大中型游戏中,通常采用单一的状态机技术控制游戏单位的状况。 随着游戏中的单位越来越多,单位的状态及功能也越来越复杂,若仍然采用单 一的状态机技术对游戏中单位的多状态及多功能进行控制,则会导致游戏系统 的程序复杂且混乱,从而影响游戏的稳定性。

发明内容

本发明实施例提供了一种业务平台中单位状态控制的方法及系统,以对游 戏中单位的状态及功能进行控制,从而简化游戏系统的程序,提高游戏的稳定 性。

本发明第一方面提供了一种业务平台中单位状态控制的方法,用于控制所 述单位表现目的状态,其特征在于,包括:

提供外部接口,以接收输入的状态控制指令;

根据接收到的状态控制指令生成相应的状态参数;

判定所述单位是否满足第一预设条件;

若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属 的状态层;

根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设 条件;及

若所述目的状态满足所确定的状态层的第二预设条件,则控制所述单位表 现所述目的状态。

本发明第二方面提供了一种业务平台中单位状态控制的系统,用于控制所 述单位表示目的状态,所述系统包括:

外部接口单元,用于提供外部接口,以接收输入的状态控制指令,并根据 接收到的状态控制指令生成相应的状态参数;

判定单元,用于判定所述单位是否满足第一预设条件;若所述单位满足第 一预设条件,则根据所述状态参数来确定所述目的状态所属的状态层;还用于 根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条 件;及

控制单元,用于当所述目的状态满足所确定的状态层的第二预设条件时, 控制所述单位表现所述目的状态。

实施本发明实施例,具有如下有益效果:

本发明实施例通过提供外部接口,以接收输入的状态控制指令;根据接收 到的状态控制指令生成相应的状态参数;判定所述单位是否满足第一预设条件; 若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状 态层;根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预 设条件;及若所述目的状态满足所确定的状态层的第二预设条件,则控制所述 单位表现所述目的状态,从而实现了对游戏中单位的状态及功能的控制。本发 明采用上述方法实现对游戏单位的状态及功能的控制,简化了游戏程序,从而 提高了游戏的稳定性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明第一较佳实施例提供的一种业务平台中单位状态控制的方法 的流程图;

图2A-2B为本发明第二较佳实施例提供的一种业务平台中单位状态控制的 方法的流程图;

图3为本发明第一较佳实施例提供的一种业务平台中单位状态控制的系统 的结构示意图;

图4为本发明第二较佳实施例提供的一种业务平台中单位状态控制的系统 的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面将结合附图1,对本发明实施例提供的一种业务平台中单位状态控制的 方法进行详细介绍。

请参见图1,为本发明第一较佳实施例提供的一种业务平台中单位状态控制 的方法的流程图;该方法用于控制所述单位表现目的状态。在本实施方式中, 所述业务平台为游戏。该方法可以包括以下步骤S101-步骤S108。

S101,提供外部接口,以接收外部逻辑模块调用所述外部接口而输入的状 态控制指令。

例如,要使所述单位表现出目的状态如跑时,则外部逻辑模块需要输入状 态控制指令来控制所述单位表现所述目的状态。

S102,根据接收到的状态控制指令生成相应的状态参数。

其中,所述状态参数中包括所述目的状态对应的参数,从而根据所述状态 参数即可得知需要使单位表现出的状态为所述目的状态。

S103,判定所述单位是否满足第一预设条件。当所述单位满足所述第一预 设条件时,则执行步骤S104。当所述单位不满足所述第一预设条件时,则执行 步骤S107。

其中,所述第一预设条件包括单位的类型条件及单位的生命条件。该步骤 可以包括:判定所述单位的类型是否为支持状态转换控制的类型。例如,当所 述单位的类型为静止的物体,如树木等,则所述单位的类型不支持状态转换控 制的类型,即所述单位的类型不满足所述类型条件。当所述单位的类型为动态 的生命体,如人等,则所述单位的类型支持状态转换控制的类型,即所述单位 的类型满足所述类型条件。

判定所述单位是否具有生命条件。

当所述单位是活着的,可以执行状态功能来反应出相应的动画效果,则表 明所述单位具有生命条件,满足所述生命条件。当所述单位是处于死亡状态, 不再能执行状态功能,从而不能反应出相应的动画效果,则表明所述单位不具 有生命条件,不满足所述生命条件。故,通过判定所述单位是否可以执行状态 功能以反应相应的动画效果来判定所述单位是否具有生命条件。

当所述单位的类型满足所述类型条件且所述单位满足生命条件时,则判定 所述单位满足所述第一预设条件。

S104,根据所述状态参数来确定目的状态所属的状态层。

其中,根据游戏中的单位所具有的功能,抽象出所述单位所具有的可能的 全部状态。全部状态包括行走状态(如走、跑、站立、坐等)、动作状态(如攻 击、施法、死亡等)及被动状态(如被限制移动、被限制施法、被限制攻击等)。 根据状态之间互斥的原则对全部状态进行分层。所谓互斥的原则即为互斥的状 态(不能同时存在的状态,例如,单位不能同时处于走状态及跑状态)被分为 同一层上,非互斥的状态(可以同时存在的状态,例如,单位在跑的同时也可 以处于攻击状态)在不同层。故,在本实施方式中,将全部状态分为第一状态 层如行走状态层、第二状态层如动作状态层及第三状态层如被动状态层。其中, 所述动作状态层及所述行走状态层属于主动状态层。所述行走状态层包括全部 行走状态。所述动作状态层包括全部动作状态。所述被动状态层包括全部被动 状态。

因此,根据所述状态参数得知所述目的状态是哪种状态,所述目的状态所 在的状态层即为确定的状态层。

所述步骤S104还可以包括:

若所述单位满足第一预设条件,则根据所述状态参数来确定所述目的状态 是否属于所述第一及第二状态层中的状态。

若所述目的状态属于所述第一及第二状态层中的状态,则根据所述状态参 数确定所述目的状态所属第一及第二状态层中的哪一状态层。

在其他实施方式中,所述单位的全部状态的状态层数量可以根据实际的状 态类型进行调整,并不限于上述的三种状态层。

S105,根据所述状态参数判定所述目的状态是否满足所确定的状态层的第 二预设条件。当所述目的状态满足所确定的状态层的第二预设条件时,执行步 骤S106。当所述目的状态不满足所确定的状态层的第二预设条件时,执行步骤 S108。

具体地,所述第二预设条件包括可转换状态条件及非锁定条件。根据所述 状态参数判定所确定的状态层的状态转换列表是否存储有所述目的状态以判定 是否满足所述可转换状态条件,并判定所述目的状态是否被锁定以判定是否满 足所述非锁定条件。当确定的状态层的状态转换列表存储有所述目的状态且所 述目的状态未被锁定时,表明所述目的状态满足所确定的状态层的第二预设条 件。

其中,每一状态层均存储有状态转换列表。每一状态转换列表存储有当前 所述单位在此状态层可以转换为的其他状态信息。根据所述状态参数判定所述 确定的状态层的状态转换列表中的其他状态信息是否有所述目的状态。

根据游戏的具体要求,所述动作状态层与所述行走状态层之间可以设置优 先级。在本实施方式中,设定所述动作状态层的优先级高于所述行走状态层, 从而所述动作状态层的状态可以禁止所述行走状态层的状态转换。例如,当所 述单位处于死亡状态时,所述单位则不能再表现走或跑的状态等,以符合实际 逻辑需求。

判定所述目的状态是否被锁定可以包括:

判定是否接收到了确定所述目的状态所在的状态层的优先级低于主动状态 层中的另一状态层优先级的优先级指令,及所述单位当前的状态中是否有属于 所述另一状态层中的状态。

当判定接收到了优先级指令,且所述单位当前的状态中有属于所述另一状 态层的状态时,则表明所述目的状态被锁定,发送锁定指令;当判定未接收到 优先级指令,则表明所述目的状态未被锁定。例如,所述单位处于躺着并死亡 的状态,死亡状态所在的状态层的优先级被确定高于躺着状态所在的状态层的 优先级,若所述目的状态为走时,则表明所述走的状态被锁定。

根据锁定指令锁定所述目的状态所在的状态层,以禁止所述单位表现所述 目的状态。

S106,控制所述单位表现所述目的状态。

其中,每一状态均对应一个进入接口及一个退出接口。所述进入接口用于 使所述单位进入相应的状态,完成相应的功能并呈现相应的动画效果。所述退 出接口用于使所述单位退出相应的状态,完成退出相应的功能。所述单位通过 所述目的状态所在状态层的当前状态的退出接口退出该状态层的当前状态,并 通过所述目的状态的进入接口进入所述目的状态,从而控制所述单位表现所述 目的状态。而与所述目的状态不同状态层的当前状态继续维持其状态。例如, 所述单位目前的状态处于走并进行攻击。所述目的状态为跑。其中跑的状态与 走的状态为同一状态层。攻击的状态与走及跑的状态不为同一状态层。要使所 述单位表现跑的状态。则需要通过走状态的退出接口退出走状态,并通过跑状 态的进入接口进入跑状态。所述攻击状态继续维持。此时,所述单位表示跑并 进行攻击,从而实现了控制所述单位表示跑的状态。

初始时,每一状态层的状态转换列表的状态均为默认状态。当所述单位退 出与目的状态同一状态层的当前状态,且进入所述目的状态时,将该状态层的 状态转换列表中的状态修改为所述目的状态可转换的其他状态,并存储修改后 的状态转换列表。当所述单位退出所述目的状态时,将该状态层的状态转换列 表中的状态恢复为默认状态。

S107,发送第一指令以表明状态表现失败的第一原因。

S108,发送第二指令以表明状态表现失败的第二原因。

在其他实施方式中,若无需明确切换失败的原因是,则所述步骤S107及 S108可以省略。

在本较佳实施方式中,本发明通过提供外部接口,以接收外部逻辑模块调 用所述外部接口而输入的状态控制指令;根据接收到的状态控制指令生成相应 的状态参数;判定所述单位是否满足第一预设条件;若所述单位满足第一预设 条件,则根据所述状态参数来确定目的状态所属的状态层;根据所述状态参数 判定所述目的状态是否满足所确定的状态层的第二预设条件;及若所述目的状 态满足所确定的状态层的第二预设条件时,则控制所述单位表现所述目的状态。 本发明实现了对游戏中单位的状态及功能的控制,从而简化了游戏程序,提高 了游戏的稳定性。

请参见图2,为本发明第二较佳实施例提供的一种业务平台中单位状态控制 的方法的流程图;在本实施方式中,所述业务平台为游戏。该方法还包括以下 步骤S201-步骤S215。

S201,记录对所述单位的状态进行分层后的第一状态层、第二状态层及第 三状态层,及第一至第三状态层中的状态。其中所述第一状态层的状态为互斥 状态,所述第二状态层的状态与第一状态层的状态为非互斥状态,所述第三状 态层的状态为非互斥状态,且与所述第一及第二状态层的状态为非互斥状态。

其中,根据游戏中的单位所具有的功能,抽象出所述单位所具有的可能的 全部状态。全部状态包括行走状态(如走、跑、站立、坐等)、动作状态(如攻 击、施法、死亡等)及被动状态(如被限制移动、被限制施法、被限制攻击等)。 根据状态之间互斥的原则对全部状态进行分层。所谓互斥的原则即为互斥的状 态(不能同时存在的状态,例如,单位不能同时处于走状态及跑状态)被分为 同一层上,非互斥的状态(可以同时存在的状态,例如,单位在跑的同时也可 以处于攻击状态)在不同层。故,在本实施方式中,将全部状态分为第一状态 层如行走状态层、第二状态层如动作状态层及第三状态层如被动状态层。其中, 所述动作状态层及所述行走状态层属于主动状态层。所述行走状态层包括全部 行走状态。所述动作状态层包括全部动作状态。所述被动状态层包括全部被动 状态。

所述被动状态层的状态可以进行累加。例如,所述单位在被限制移动的同 时可以被限制攻击。所述被动状态层为用一个占用预设位空间的数字来存储各 个状态。每一位代表一个状态。若该位的值为“1”,则代表有相应的被动状态。 该位的值为“0”,则代表无相应的被动状态。所述预设位的位数由被动状态的 个数来决定。所述被动状态层的状态的增加和删除就可以利用位操作实现。

在其他实施方式中,所述单位的全部状态的状态层数量可以根据实际的状 态类型进行调整,并不限于上述的三种状态层。

S202,存储在第一状态层上设置的第一可转换状态列表,存储在第二状态 层上设置的第二可转换状态列表。其中,所述第一可转换状态列表存储有当前 第一状态层中的状态可转换为的其他状态信息,所述第二可转换状态列表存储 有当前在第二状态层中的状态可转换为的其他状态信息。

S203,提供外部接口,以接收外部逻辑模块调用所述外部接口而输入的状 态控制指令。

例如,要使所述单位表现出目的状态如跑时,则外部逻辑模块需要输入状 态控制指令来控制所述单位表现所述目的状态。

S204,根据接收到的状态控制指令生成相应的状态参数。

其中,所述状态参数中包括所述目的状态对应的参数,从而根据所述状态 参数即可得知需要使单位表现出的状态为所述目的状态。

S205,判定所述单位的类型是否为支持状态转换控制的类型且所述单位是 否具有生命条件。当判定所述单位的类型为支持状态转换控制的类型且所述单 位具有生命条件时,执行步骤S206。当判定所述单位的类型不支持状态转换控 制的类型或所述单位不具有生命条件时,执行步骤S211。

例如,当所述单位的类型为静止的物体,如树木等,则所述单位的类型不 支持状态转换控制的类型,即所述单位的类型不满足所述类型条件。当所述单 位的类型为动态的生命体,如人等,则所述单位的类型支持状态转换控制的类 型,即所述单位的类型满足所述类型条件。

当所述单位是活着的,可以执行状态功能来反应出相应的动画效果,则表 明所述单位具有生命条件,满足所述生命条件。当所述单位是处于死亡状态, 不再能执行状态功能,从而不能反应出相应的动画效果,则表明所述单位不具 有生命条件,不满足所述生命条件。故,通过判定所述单位是否可以执行状态 功能以反应相应的动画效果来判定所述单位是否具有生命条件。

S206,根据所述状态参数来判定所述目的状态是否为第三状态层的状态。 若所述目的状态不属于所述第三状态层的状态时,执行步骤S207。若所述目的 状态属于所述第三状态层的状态时,执行步骤S212。

S207,根据所述状态参数来确定所述目的状态是否属于所述第一及第二状 态层中的状态。当判定所述目的状态属于所述第一及第二状态层中的状态时, 执行步骤S208。当判定所述目的状态不属于所述第一及第二状态层中的状态时, 执行步骤S214。

S208,根据所述状态参数确定所述目的状态所属第一及第二状态层中的哪 一状态层。

其中,当所述目的状态为所述第一状态层中的状态时,则所述目的状态所 属的状态层为所述第一状态层。当所述目的状态为所述第二状态层中的状态时, 则所述目的状态所属的状态层为所述第二状态层。

S209,根据所述状态参数判定所确定的状态层的状态转换列表是否存储有 所述目的状态及所述目的状态是否被锁定。当判定所确定的状态层的状态转换 列表存储有所述目的状态且所述目的状态未被锁定时,执行步骤S210。当判定 所确定的状态层的状态转换列表未存储有所述目的状态或所述目的状态被锁定 时,执行步骤S215。

其中,每一状态层均存储有状态转换列表。每一状态转换列表存储有当前 所述单位在此状态层可以转换为的其他状态信息。根据所述状态参数判定所述 确定的状态层的状态转换列表中的其他状态信息是否有所述目的状态。

根据游戏的具体要求,所述动作状态层与所述行走状态层之间可以设置优 先级。在本实施方式中,设定所述动作状态层的优先级高于所述行走状态层, 从而所述动作状态层的状态可以禁止所述行走状态层的状态转换。例如,当所 述单位处于死亡状态时,所述单位则不能再表现走或跑的状态等,以符合实际 逻辑需求。

判定所述目的状态是否被锁定可以包括:

判定是否接收到了确定所述目的状态所在的状态层的优先级低于主动状态 层中的另一状态层优先级的优先级指令,及所述单位当前的状态中是否有属于 所述另一状态层中状态的状态。

当判定接收到了优先级指令,且所述单位当前的状态中有属于所述另一状 态层的状态时,则表明所述目的状态被锁定,发送锁定指令;当判定未接收到 优先级指令,则表明所述目的状态未被锁定。例如,所述单位处于躺着并死亡 的状态,死亡状态所在的状态层的优先级被确定高于躺着状态所在的状态层的 优先级,若所述目的状态为走时,则表明所述走的状态被锁定。

根据锁定指令锁定所述目的状态所在的状态层,以禁止所述单位表现所述 目的状态。

S210,控制所述单位退出所述目的状态所在的状态层中的当前状态,进入 所述目的状态,从而控制所述单位表现所述目的状态。

其中,每一状态均对应一个进入接口及一个退出接口。所述进入接口用于 使所述单位进入相应的状态,完成相应的功能并呈现相应的动画效果。所述退 出接口用于使所述单位退出相应的状态,完成退出相应的功能。所述单位通过 所述目的状态所在状态层的当前状态的退出接口退出该状态层的当前状态,并 通过所述目的状态的进入接口进入所述目的状态,从而控制所述单位表现所述 目的状态。而与所述目的状态不同状态层的当前状态继续维持其状态。例如, 所述单位目前的状态处于走并进行攻击。所述目的状态为跑。其中跑的状态与 走的状态为同一状态层。攻击的状态与走及跑的状态不为同一状态层。要使所 述单位表现跑的状态。则需要通过走状态的退出接口退出走状态,并通过跑状 态的进入接口进入跑状态。所述攻击状态继续维持。此时,所述单位表示跑并 进行攻击,从而实现了控制所述单位表示跑的状态。

初始时,每一状态层的状态转换列表的状态均为默认状态。当所述单位退 出与目的状态同一状态层的当前状态,且进入所述目的状态时,将该状态层的 状态转换列表中的状态修改为所述目的状态可转换的其他状态,并存储修改后 的状态转换列表。当所述单位退出所述目的状态时,将该状态层的状态转换列 表中的状态恢复为默认状态。

S211,发送第一指令以表明状态表现失败的第一原因。

S212,发送管理指令。

S213,根据管理指令将所述目的状态累加至所述单位使所述单位表现出所 述目的状态。

S214,发送第二指令以表明状态表现失败的第二原因。

S215,发送第三指令以表明状态表现失败的第三原因。

其中,发送状态表现失败的第一至第三原因用于指示状态表现失败的原因。

在本较佳实施方式中,本发明通过提供外部接口,以接收外部逻辑模块调 用所述外部接口而输入的状态控制指令;根据接收到的状态控制指令生成相应 的状态参数;判定所述单位是否满足第一预设条件;若所述单位满足第一预设 条件,则根据所述状态参数来确定目的状态所属的状态层;根据所述状态参数 判定所述目的状态是否满足所确定的状态层的第二预设条件;及若所述目的状 态满足所确定的状态层的第二预设条件时,则控制所述单位表现所述目的状态。 本发明实现了对游戏中单位的状态及功能的控制,从而简化了游戏程序,提高 了游戏的稳定性。

下面将结合附图3及附图4,对本发明实施例提供的一种业务平台中单位状 态控制的系统进行详细介绍。可以理解的是,下述的系统可以应用于上述图1 及图2所示方法中。在本实施方式中,所述业务平台为游戏。

请参见图3,为本发明实施例提供的一种业务平台中单位状态控制的系统的 结构示意图;该业务平台中单位状态控制的系统用于控制所述单位表示目的状 态。该系统可以包括:外部接口单元101、判定单元102及控制单元103。

所述外部接口单元101用于提供外部接口,以接收外部逻辑模块调用所述 外部接口而输入的状态控制指令,并根据接收到的状态控制指令生成相应的状 态参数。

例如,要使所述单位表现出目的状态如跑时,则外部逻辑模块需要输入状 态控制指令来控制所述单位表现所述目的状态。其中,所述状态参数中包括所 述目的状态对应的参数,从而根据所述状态参数即可得知需要使单位表现出的 状态为所述目的状态。

所述判定单元102用于判定所述单位是否满足第一预设条件。

具体地,所述第一预设条件包括单位的类型条件及单位的生命条件。

所述判定单元102用于判定所述单位的类型是否为支持状态转换控制的类 型。例如,当所述单位的类型为静止的物体,如树木等,则所述单位的类型不 支持状态转换控制的类型,即所述单位的类型不满足所述类型条件。当所述单 位的类型为动态的生命体,如人等,则所述单位的类型支持状态转换控制的类 型,即所述单位的类型满足所述类型条件。

所述判定单元102还用于判定所述单位是否具有生命条件。当所述单位是 活着的,可以执行状态功能来反应出相应的动画效果,则表明所述单位具有生 命条件,满足所述生命条件。当所述单位是处于死亡状态,不再能执行状态功 能,从而不能反应出相应的动画效果,则表明所述单位不具有生命条件,不满 足所述生命条件。故,所述判定单元102通过判定所述单位是否可以执行状态 功能以反应相应的动画效果来判定所述单位是否具有生命条件。当所述单位的 类型满足所述类型条件且所述单位满足生命条件时,则判定所述单位满足所述 第一预设条件。

所述判定单元102还用于在所述单位满足第一预设条件时,根据所述状态 参数来确定目的状态所属的状态层。

其中,根据游戏中的单位所具有的功能,抽象出所述单位所具有的可能的 全部状态。全部状态包括行走状态(如走、跑、站立、坐等)、动作状态(如攻 击、施法、死亡等)及被动状态(如被限制移动、被限制施法、被限制攻击等)。 根据状态之间互斥的原则对全部状态进行分层。所谓互斥的原则即为互斥的状 态(不能同时存在的状态,例如,单位不能同时处于走状态及跑状态)被分为 同一层上,非互斥的状态(可以同时存在的状态,例如,单位在跑的同时也可 以处于攻击状态)在不同层。故,在本实施方式中,将全部状态分为第一状态 层如行走状态层、第二状态层如动作状态层及第三状态层如被动状态层。其中, 所述动作状态层及所述行走状态层属于主动状态层。所述行走状态层包括全部 行走状态。所述动作状态层包括全部动作状态。所述被动状态层包括全部被动 状态。

所述被动状态层的状态可以进行累加。例如,所述单位在被限制移动的同 时可以被限制攻击。所述被动状态层为用一个占用预设位空间的数字来存储各 个状态。每一位代表一个状态。若该位的值为“1”,则代表有相应的被动状态。 该位的值为“0”,则代表无相应的被动状态。所述预设位的位数由被动状态的 个数来决定。所述被动状态层的状态的增加和删除就可以利用位操作实现。

在其他实施方式中,所述单位的全部状态的状态层数量可以根据实际的状 态类型进行调整,并不限于上述的三种状态层。

具体地,所述判定单元102用于在所述单位满足第一预设条件,则根据所 述状态参数来确定所述目的状态是否属于所述第一及第二状态层中的状态。若 所述目的状态是否属于所述第一及第二状态层中的状态,所述判定单元102用 于根据所述状态参数确定所述目的状态所属第一及第二状态层中的哪一状态 层。

所述判定单元102还用于根据所述状态参数判定所述目的状态是否满足所 确定的状态层的第二预设条件。

具体地,所述第二预设条件包括可转换状态条件及非锁定条件。所述判定 单元102根据所述状态参数判定所确定的状态层的状态转换列表是否存储有所 述目的状态以判定是否满足所述可转换状态条件,并判定所述目的状态是否被 锁定以判定是否满足所述非锁定条件。当确定的状态层的状态转换列表存储有 所述目的状态且所述目的状态未被锁定时,表明所述目的状态满足所确定的状 态层的第二预设条件。

其中,每一状态层均存储有状态转换列表。每一状态转换列表存储有当前 所述单位在此状态层可以转换为的其他状态信息。根据所述状态参数判定所述 确定的状态层的状态转换列表中的其他状态信息是否有所述目的状态。

根据游戏的具体要求,所述动作状态层与所述行走状态层之间可以设置优 先级。在本实施方式中,设定所述动作状态层的优先级高于所述行走状态层, 从而所述动作状态层的状态可以禁止所述行走状态层的状态转换。例如,当所 述单位处于死亡状态时,所述单位则不能再表现走或跑的状态等,以符合实际 逻辑需求。

所述控制单元103用于当所述目的状态满足所确定的状态层的第二预设条 件时,控制所述单位表现所述目的状态。

其中,每一状态均对应一个进入接口及一个退出接口。所述进入接口用于 使所述单位进入相应的状态,完成相应的功能并呈现相应的动画效果。所述退 出接口用于使所述单位退出相应的状态,完成退出相应的功能。所述单位通过 所述目的状态所在状态层的当前状态的退出接口退出该状态层的当前状态,并 通过所述目的状态的进入接口进入所述目的状态,从而控制所述单位表现所述 目的状态。而与所述目的状态不同状态层的当前状态继续维持其状态。例如, 所述单位目前的状态处于走并进行攻击。所述目的状态为跑。其中跑的状态与 走的状态为同一状态层。攻击的状态与走及跑的状态不为同一状态层。要使所 述单位表现跑的状态。则需要通过走状态的退出接口退出走状态,并通过跑状 态的进入接口进入跑状态。所述攻击状态继续维持。此时,所述单位表示跑并 进行攻击,从而实现了控制所述单位表示跑的状态。

初始时,每一状态层的状态转换列表的状态均为默认状态。当所述单位退 出与目的状态同一状态层的当前状态,且进入所述目的状态时,将该状态层的 状态转换列表中的状态修改为所述目的状态可转换的其他状态,并存储修改后 的状态转换列表。当所述单位退出所述目的状态时,将该状态层的状态转换列 表中的状态恢复为默认状态。

在本较佳实施方式中,本发明通过外部接口单元101提供外部接口,以接 收外部逻辑模块调用所述外部接口而输入的状态控制指令,并根据接收到的状 态控制指令生成相应的状态参数;所述判定单元102判定所述单位是否满足第 一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定目的 状态所属的状态层;根据所述状态参数判定所述目的状态是否满足所确定的状 态层的第二预设条件;及所述控制单元103在所述目的状态满足所确定的状态 层的第二预设条件时,控制所述单位表现所述目的状态。本发明实现了对游戏 中单位的状态及功能的控制,从而简化了游戏程序,提高了游戏的稳定性。

请参见图4,为本发明第二较佳方式提供的一种业务平台中单位状态控制的 系统与第一较佳实施方式相同。本发明第二较佳实施方式相较于第一较佳实施 方式的区别在于:第二较佳实施方式提供的一种业务平台中单位状态控制的系 统还包括记录单元104、存储单元105、进入接口单元106、退出接口单元107、 修改单元108、发送单元109、状态锁单元110。

所述记录单元104用于记录对所述单位的状态进行分层后的第一状态层、 第二状态层及第三状态层,及第一至第三状态层中的状态。

在本实施方式中,所述第一状态层为行走状态层。所述第二状态层为动作 状态层。所述第三状态层为被动状态层。

在其他实施方式中,所述单位的全部状态的状态层数量可以根据实际的状 态类型进行调整,并不限于上述的三种状态层。

所述存储单元105用于存储在第一状态层上设置的第一可转换状态列表, 存储在第二状态层上设置的第二可转换状态列表,其中,所述第一可转换状态 列表存储有当前第一状态层中的状态可转换为的其他状态信息,所述第二可转 换状态列表存储有当前在第二状态层中的状态可转换为的其他状态信息。

所述判定单元102还用于根据所述状态参数来判定所述目的状态是否为第 三状态层的状态,并当所述目的状态不属于所述第三状态层的状态时确定所述 目的状态是否属于所述第一及第二状态层中的状态。

所述进入接口单元106用于提供进入接口,以使所述控制单元103调用所 述进入接口从而使所述单位进入相应的状态,完成相应的功能并呈现相应的动 画效果。

所述退出接口单元107用于提供退出接口,以使所述控制单元103调用所 述退出接口从而使所述单位退出相应的状态,完成退出相应的功能。

其中,每一状态均对应进入接口及退出接口。所述进入接口单元106用于 调用所述进入接口,以使所述单位进入相应的状态,完成相应的功能并呈现相 应的动画效果。所述退出接口单元107用于调用所述退出接口,以使所述单位 退出相应的状态,完成退出相应的功能。

所述修改单元108用于当所述单位退出与所述目的状态同一状态层的当前 状态,且进入所述目的状态时,将该状态层的状态转换列表中的状态修改为所 述目的状态可转换的其他状态。

所述存储单元105还用于存储修改后的状态转换列表。

其中,所述修改单元108还用于当所述单位退出所述目的状态时,将所述 目的状态所在的状态层的状态转换列表中的状态恢复为默认状态。

所述发送单元109用于在所述判定单元105判定接收到了优先级指令,且 所述单位当前的状态中有属于更高优先级的状态层的状态时时,发送锁定指令。 所述发送单元109还用于当所述目的状态属于所述第三状态层的状态时,发送 管理指令以将所述目的状态累加至所述单位使所述单位表现出所述目的状态。

所述状态锁单元110用于根据锁定指令锁定所述目的状态所在的状态层, 以禁止控制所述单位表现所述目的状态。

所述发送单元109还用于当所述单位不满足所述第一预设条件,发送第一 指令以表明状态表现失败的第一原因,当判定所述目的状态不属于所述第一及 第二状态层中的状态时,发送第二指令以表明状态表现失败的第二原因;及当 判定所确定的状态层的状态转换列表未存储有所述目的状态或所述目的状态被 锁定时,发送第三指令以表明状态表现失败的第三原因。

在本较佳实施方式中,本发明通过外部接口单元101提供外部接口,以接 收外部逻辑模块调用所述外部接口而输入的状态控制指令,并根据接收到的状 态控制指令生成相应的状态参数;所述判定单元102判定所述单位是否满足第 一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定目的 状态所属的状态层;根据所述状态参数判定所述目的状态是否满足所确定的状 态层的第二预设条件;及所述控制单元103在所述目的状态满足所确定的状态 层的第二预设条件时,控制所述单位表现所述目的状态。本发明实现了对游戏 中单位的状态及功能的切换控制,从而简化了游戏程序,提高了游戏的稳定性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算 机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之 权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号