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

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

Info

Publication number
CN103777932B
CN103777932B CN201210406049.8A CN201210406049A CN103777932B CN 103777932 B CN103777932 B CN 103777932B CN 201210406049 A CN201210406049 A CN 201210406049A CN 103777932 B CN103777932 B CN 103777932B
Authority
CN
China
Prior art keywords
state
unit
layer
status
preset condition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210406049.8A
Other languages
English (en)
Other versions
CN103777932A (zh
Inventor
董航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210406049.8A priority Critical patent/CN103777932B/zh
Priority to TW102134018A priority patent/TWI587897B/zh
Publication of CN103777932A publication Critical patent/CN103777932A/zh
Application granted granted Critical
Publication of CN103777932B publication Critical patent/CN103777932B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

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

Description

一种业务平台中单位状态控制的方法及系统
技术领域
本发明涉及游戏技术领域,尤其涉及一种业务平台中单位状态控制的方法及系统。
背景技术
在现有大中型游戏中,通常采用单一的状态机技术控制游戏单位的状况。随着游戏中的单位越来越多,单位的状态及功能也越来越复杂,若仍然采用单一的状态机技术对游戏中单位的多状态及多功能进行控制,则会导致游戏系统的程序复杂且混乱,从而影响游戏的稳定性。
发明内容
本发明实施例提供了一种业务平台中单位状态控制的方法及系统,以对游戏中单位的状态及功能进行控制,从而简化游戏系统的程序,提高游戏的稳定性。
本发明第一方面提供了一种业务平台中单位状态控制的方法,用于控制所述单位表现目的状态,其特征在于,包括:
提供外部接口,以接收输入的状态控制指令;
根据接收到的状态控制指令生成相应的状态参数;
判定所述单位是否满足第一预设条件;
若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状态层;
根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及
若所述目的状态满足所确定的状态层的第二预设条件,则控制所述单位表现所述目的状态。
本发明第二方面提供了一种业务平台中单位状态控制的系统,用于控制所述单位表示目的状态,所述系统包括:
外部接口单元,用于提供外部接口,以接收输入的状态控制指令,并根据接收到的状态控制指令生成相应的状态参数;
判定单元,用于判定所述单位是否满足第一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定所述目的状态所属的状态层;还用于根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及
控制单元,用于当所述目的状态满足所确定的状态层的第二预设条件时,控制所述单位表现所述目的状态。
实施本发明实施例,具有如下有益效果:
本发明实施例通过提供外部接口,以接收输入的状态控制指令;根据接收到的状态控制指令生成相应的状态参数;判定所述单位是否满足第一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状态层;根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及若所述目的状态满足所确定的状态层的第二预设条件,则控制所述单位表现所述目的状态,从而实现了对游戏中单位的状态及功能的控制。本发明采用上述方法实现对游戏单位的状态及功能的控制,简化了游戏程序,从而提高了游戏的稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图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 AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (20)

1.一种业务平台中单位状态控制的方法,其特征在于,包括:
提供外部接口,以接收输入的状态控制指令;
根据接收到的状态控制指令生成相应的状态参数;
判定所述单位是否满足第一预设条件;
若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状态层,其中,预先将所述单位的全部状态按照状态之间互斥的原则进行状态分层,所述互斥的原则包括互斥的状态被分为同一状态层,非互斥的状态被分为不同状态层,所述全部状态为根据所述单位所具有的功能得到;
根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及
若所述目的状态满足所确定的状态层的第二预设条件,则控制所述单位表现所述目的状态。
2.如权利要求1所述的方法,其特征在于,判定所述单位是否满足第一预设条件包括:
判定所述单位的类型是否为支持状态转换控制的类型;及
判定所述单位是否具有生命条件;
当所述单位的类型为支持状态转换控制的类型且所述单位具有生命条件时,则判定所述单位满足第一预设条件。
3.如权利要求1所述的方法,其特征在于,在若所述单位满足第一预设条件,则根据所述状态参数来确定目的状态所属的状态层之前还包括:
记录对所述单位的状态进行分层后的第一状态层及第二状态层,及第一及第二状态层中的状态,其中所述第一状态层的状态为互斥状态,所述第二状态层的状态与第一状态层的状态为非互斥状态;
存储在第一状态层上设置的第一可转换状态列表,存储在第二状态层上设置的第二可转换状态列表,其中,所述第一可转换状态列表存储有当前第一状态层中的状态可转换为的其他状态信息,所述第二可转换状态列表存储有当前在第二状态层中的状态可转换为的其他状态信息;
其中,若所述单位满足第一预设条件,则根据所述状态参数来确定所述目的状态所属第一及第二状态层中的哪一状态层。
4.如权利要求3所述的方法,其特征在于,根据所述状态参数来确定所述目的状态所属的状态层之前包括:
根据所述状态参数来确定所述目的状态是否属于所述第一及第二状态层中的状态;
其中,若所述目的状态是否属于所述第一及第二状态层中的状态,则根据所述状态参数确定所述目的状态所属第一及第二状态层中的哪一状态层。
5.如权利要求4所述的方法,其特征在于,根据所述状态参数判定所述目的状态是否满足确定的状态层的第二预设条件包括:
根据所述状态参数判定所确定的状态层的状态转换列表是否存储有所述目的状态,并判定所述目的状态是否被锁定;
当确定的状态层的状态转换列表存储有所述目的状态且所述目的状态未被锁定时,退出所确定的状态层的当前状态,进入所述目的状态,从而控制所述单位表现所述目的状态。
6.如权利要求5所述的方法,其特征在于,当所述单位退出所确定的状态层的当前状态,并进入所述目的状态时,将所确定的状态层的状态转换列表中的状态修改为为所述目的状态可转换为的其他状态,并存储修改后的状态转换列表,当所述单位退出所述目的状态时,将所确定的状态层的状态转换列表中的状态恢复为默认状态。
7.如权利要求5所述的方法,其特征在于,判定所述目的状态是否被锁定包括:
判定是否接收到了确定所述目的状态所在的状态层的优先级低于第一及第二状态层中的另一状态层优先级的优先级指令,及所述单位当前的状态中是否有属于所述另一状态层的状态;
当判定接收到了优先级指令,且所述单位当前的状态中有属于所述另一状态层的状态时,发送锁定指令;
根据锁定指令锁定所述目的状态所在的状态层,以禁止所述单位表现所述目的状态。
8.如权利要求5所述的方法,其特征在于,在提供外部接口,以接收输入的状态控制指令之前还包括:
记录对所述单位的状态进行分层后的第三状态层;所述第三状态层的状态为非互斥状态,且与所述第一及第二状态层的状态为非互斥状态;
其中,若所述单位满足第一预设条件,则根据所述状态参数来确定所述目的状态所属的状态层之前还包括:
根据所述状态参数来判定所述目的状态是否为第三状态层的状态;
若所述目的状态不属于所述第三状态层的状态时,确定所述目的状态所属的状态层。
9.如权利要求8所述的方法,其特征在于,若所述目的状态属于所述第三状态层的状态时,发送管理指令以将所述目的状态累加至所述单位使所述单位表现出所述目的状态。
10.如权利要求1所述的方法,其特征在于,若所述单位不满足所述第一预设条件,发送第一指令以表明状态表现失败的第一原因,若所述目的状态不满足确定的状态层的第二预设条件时,发送第二指令以表明状态表现失败的第二原因。
11.一种业务平台中单位状态控制的系统,用于控制所述单位表示目的状态,所述系统包括:
外部接口单元,用于提供外部接口,以接收输入的状态控制指令,并根据接收到的状态控制指令生成相应的状态参数;
判定单元,用于判定所述单位是否满足第一预设条件;若所述单位满足第一预设条件,则根据所述状态参数来确定所述目的状态所属的状态层,其中,预先将所述单位的全部状态按照状态之间互斥的原则进行状态分层,所述互斥的原则包括互斥的状态被分为同一状态层,非互斥的状态被分为不同状态层,所述全部状态为根据所述单位所具有的功能得到;还用于根据所述状态参数判定所述目的状态是否满足所确定的状态层的第二预设条件;及
控制单元,用于当所述目的状态满足所确定的状态层的第二预设条件时,控制所述单位表现所述目的状态。
12.如权利要求11所述的系统,其特征在于,所述判定单元还用于判定所述单位的类型是否为支持状态转换控制的类型,及判定所述单位是否具有生命条件,当所述单位的类型为支持状态转换控制的类型且所述单位具有生命条件时,则所述判定单元判定所述单位满足第一预设条件。
13.如权利要求11所述的系统,其特征在于,还包括:
记录单元,用于记录对所述单位的状态进行分层后的第一状态层及第二状态层,及第一及第二状态层中的状态,其中所述单位在第一状态层的状态为互斥状态,所述第二状态层的状态与第一状态层的状态为非互斥状态;
存储单元,用于存储在第一状态层上设置的第一可转换状态列表,存储在第二状态层上设置的第二可转换状态列表,其中,所述第一可转换状态列表存储有当前第一状态层中的状态可转换为的其他状态信息,所述第二可转换状态列表存储有当前在第二状态层中的状态可转换为的其他状态信息。
14.如权利要求13所述的系统,其特征在于,所述判定单元还用于判定所述目的状态是否属于所述第一及第二状态层中的状态,若所述目的状态是属于所述第一及第二状态层中的状态,所述判定单元还用于根据所述状态参数确定所述目的状态所属第一及第二状态层中的哪一状态层。
15.如权利要求14所述的系统,其特征在于,还包括:
进入接口单元,用于提供进入接口,以使所述控制单元调用所述进入接口从而使所述单位进入相应的状态,完成相应的功能并呈现相应的动画效果;及
退出接口单元,用于提供退出接口,以使所述控制单元调用所述退出接口从而使所述单位退出相应的状态,完成退出相应的功能;
其中,所述判定单元还用于根据所述状态参数判定所确定的状态层的状态转换列表是否存储有所述目的状态,并判定所述目的状态是否被锁定;
所述控制单元还用于当确定的状态层的状态转换列表存储有所述目的状态且所述目的状态未被锁定时,退出所确定的状态层的当前状态,进入所述目的状态,从而控制所述单位表现所述目的状态。
16.如权利要求15所述的系统,其特征在于,还包括:
修改单元,用于当所述单位退出所确定的状态层的当前状态,并进入所述目的状态时,将所确定的状态层的状态转换列表中的状态修改所述目的状态可转换为的其他状态;
所述存储单元还用于存储修改后的状态转换列表;
其中,所述修改单元还用于当所述单位退出所述目的状态时,将所述确定的状态层的状态转换列表中的状态修改为默认状态。
17.如权利要求15所述的系统,其特征在于,还包括:
发送单元,用于在所述判定单元判定接收到了优先级指令,且所述单位当前的状态中有属于第一及第二状态层中较高优先级的状态层中的状态时,发送锁定指令;及
状态锁单元,用于根据锁定指令锁定所述目的状态所在的状态层,以禁止控制所述单位表示所述目的状态。
18.如权利要求17所述的系统,其特征在于,所述记录单元还用于记录对所述单位的状态进行分层后的第三状态层;所述第三状态层的状态为非互斥状态,且与所述第一及第二状态层的状态为非互斥状态;
所述判定单元还用于根据所述状态参数判定所述目的状态是否为第三状态层的状态,当所述目的状态不属于所述第三状态层的状态时,确定所述目的状态所属的状态层。
19.如权利要求18所述的系统,其特征在于,所述发送单元还用于当所述目的状态属于所述第三状态层的状态时,发送管理指令以将所述目的状态累加至所述单位使所述单位表现出所述目的状态。
20.如权利要求17所述的系统,其特征在于,所述发送单元还用于当所述单位不满足所述第一预设条件,发送第一指令以表明状态表现失败的第一原因,当所述目的状态不满足确定的状态层的第二预设条件时,发送第二指令以表明状态表现失败的第二原因。
CN201210406049.8A 2012-10-23 2012-10-23 一种业务平台中单位状态控制的方法及系统 Active CN103777932B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210406049.8A CN103777932B (zh) 2012-10-23 2012-10-23 一种业务平台中单位状态控制的方法及系统
TW102134018A TWI587897B (zh) 2012-10-23 2013-09-18 一種業務平台中單位狀態控制的方法及系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210406049.8A CN103777932B (zh) 2012-10-23 2012-10-23 一种业务平台中单位状态控制的方法及系统

Publications (2)

Publication Number Publication Date
CN103777932A CN103777932A (zh) 2014-05-07
CN103777932B true CN103777932B (zh) 2018-10-09

Family

ID=50570216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210406049.8A Active CN103777932B (zh) 2012-10-23 2012-10-23 一种业务平台中单位状态控制的方法及系统

Country Status (2)

Country Link
CN (1) CN103777932B (zh)
TW (1) TWI587897B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6280953B2 (ja) * 2016-06-14 2018-02-14 株式会社バンダイ ゲーム装置、ゲーム用物品及びプログラム
WO2022269318A1 (en) * 2021-06-21 2022-12-29 Sensetime International Pte. Ltd. Methods, apparatuses, devices, and storage media for controlling game states

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010213846A (ja) * 2009-03-16 2010-09-30 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム処理方法、ゲームシステム、ならびに、プログラム
CN102006914A (zh) * 2008-10-02 2011-04-06 科乐美数码娱乐株式会社 游戏装置、游戏装置的控制方法及信息记录介质
TWI399711B (zh) * 2010-02-26 2013-06-21 Univ Nat Taiwan Normal Fire escape education game method and game device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006914A (zh) * 2008-10-02 2011-04-06 科乐美数码娱乐株式会社 游戏装置、游戏装置的控制方法及信息记录介质
JP2010213846A (ja) * 2009-03-16 2010-09-30 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム処理方法、ゲームシステム、ならびに、プログラム
TWI399711B (zh) * 2010-02-26 2013-06-21 Univ Nat Taiwan Normal Fire escape education game method and game device

Also Published As

Publication number Publication date
CN103777932A (zh) 2014-05-07
TWI587897B (zh) 2017-06-21
TW201416117A (zh) 2014-05-01

Similar Documents

Publication Publication Date Title
CN103080920B (zh) 用于无客户端移动电话中的多任务的系统和方法
CN101834842B (zh) 嵌入式环境下的RoboCup平台球员智能控制方法及其系统
US7537523B2 (en) Dynamic player groups for interest management in multi-character virtual environments
US20060258462A1 (en) System and method of seamless game world based on server/client
EffatParvar et al. Improved algorithms for leader election in distributed systems
CN109794064A (zh) 互动剧情实现方法、装置、终端和存储介质
CN104754053B (zh) 一种分布式软件定义网络及在其中动态控制控制器的方法
WO2006025255A1 (ja) 多人数参加型アプリケーションを実行するクライアント端末装置、グループ形成方法及びグループ形成プログラム
CN110380917A (zh) 联邦学习系统的控制方法、装置、终端设备及存储介质
CN103281233B (zh) 一种泛在传感网系统架构及其实现方法
CN103777932B (zh) 一种业务平台中单位状态控制的方法及系统
CN107104824A (zh) 一种网络拓扑确定方法和装置
CN105765955B (zh) 一种用户管理方法、终端及终端设备
CN108419249A (zh) 三维无线传感器网络分簇覆盖方法、终端设备及存储介质
CN107529442A (zh) 虚拟对象控制方法、装置、计算机设备和计算机存储介质
CN107969017A (zh) 实现网络切片的方法及系统
JP5202969B2 (ja) 呼のルーティングを決定するための方法、そのためのデバイス及びサーバ、並びにその方法を実施するためのコンピュータプログラム
CN103377071B (zh) 一种数据批量删除方法和系统
CN103596203B (zh) 一种局部自维护的无线传感器网络节能分簇拓扑控制方法
CN105682170A (zh) 一种基于能耗均衡的分簇式无线传感网数据收集方法
CN105243594A (zh) 基于游戏diy的社交方法及系统
CN115933664A (zh) 物流机器人的调度方法以及系统
Zeng et al. Policy stable states in the graph model for conflict resolution
Harkins Network games with perfect complements
CN112494937A (zh) 一种游戏场景搭建方法及装置、存储介质、计算设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant