`
夜枫舞影
  • 浏览: 50479 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

游戏状态

阅读更多
只是聊天记录,自己记着自己看

这个游戏状态我总算弄明白了..
应该是这样的..

方向状态{左,右}
活动状态{活动,静止}
这2个是最顶层状态,是可以进行组合的.

活动状态又分有子状态
{跳跃,移动,攻击}

跳跃状态又分有子状态,其子状态产生过程是在 当前为跳跃状态所产生的事件所分出的子状态
{跳跃攻击,跳跃移动,跳跃}
移动状态,攻击状态与跳跃状态差不多
{移动,移动跳跃}
{攻击,攻击跳跃}

其实最后那几个才是实际产生行为的状态,再将其与方向进行组合产生 对应行为.

我刚刚开始分析的时候.
只看见了
{移动,移动跳跃}
{攻击,攻击跳跃}
{跳跃,移动,攻击}
这几个状态,所以才会很疑惑.

虽然知道这是这几个状态的组合,但是  攻击,跳跃,移动这些状态我觉得他们应该是可以切换的才对.  但是偏偏他们也可以组合成新状态,所以我觉得他们应该是一个大状态.
跳跃 就不是 移动  也不是攻击.
跳跃攻击,只是跳跃里一个子状态了.
攻击跳跃才是攻击里一个子状态.

因为他们实现的行为可能是一样,所以才乱了..

原来状态是有层次的.

而且层次有时候还很不明显.

switch(行为)
case:静止
     switch(方向)
       case:左
            左攻击
       case:右
            右攻击
case:运动
    switch(行为)
        case:跳跃
           stitch(方向)
              case:左
                  左跳攻击
              case:右
                  右跳攻击
分享到:
评论

相关推荐

    Unity游戏状态脚本控制思考

    本文将探讨如何使用C++与C#的结合来实现游戏状态脚本的控制,这对于大型项目或者跨平台开发尤其有用,因为C++提供了更好的性能和更低级别的系统访问。 首先,我们要理解Unity的引擎结构。Unity主要基于C#编写,但...

    网络游戏-能够通过卷轴动作广播游戏状态的游戏机.zip

    在“网络游戏-能够通过卷轴动作广播游戏状态的游戏机”这个主题中,我们主要关注的是利用卷轴动作来实现游戏状态更新的一种创新技术。卷轴动作,通常是指在游戏过程中,玩家通过滚动、滑动或类似的动作来触发游戏...

    网络游戏-游戏状态转移方法、终端和系统.zip

    在网络游戏领域,游戏状态转移是一项关键技术,它涉及玩家在不同设备间无缝切换游戏进程,确保游戏体验的连贯性。本文件"网络游戏-游戏状态转移方法、终端和系统.zip"包含了一个名为"游戏状态转移方法、终端和系统....

    网络游戏-用于保存游戏状态的方法和装置.zip

    在网络游戏领域,保存游戏状态是至关重要的功能,它能让玩家在退出游戏或遇到网络问题时,能够恢复到之前的游戏进度,避免损失。本文件“网络游戏-用于保存游戏状态的方法和装置.zip”包含了一份名为“用于保存游戏...

    Python-视频游戏和家庭自动化基于游戏中状态控制物联网设备

    本项目“Python-视频游戏和家庭自动化基于游戏中状态控制物联网设备”旨在将这两个领域结合,通过编程实现游戏状态与实际家庭智能设备的联动,为用户带来前所未有的互动体验。 在Python开发中,硬件操作通常涉及到...

    人物状态栏_游戏_

    这个特定的压缩包文件"人物状态栏--改.lua"暗示我们关注的是一个使用Lua语言编写的游戏状态栏系统,而且可能已经过了一些修改。 Lua是一种轻量级的脚本语言,被广泛应用于游戏开发,尤其是作为嵌入式脚本语言来控制...

    CSGSI:一个简单的C#库,可与Counter-Strike:Global Offensive的游戏状态集成

    中国标准学会一个简单的C#库,可与Counter-Strike交互:全球进攻性游戏状态集成目录什么是游戏状态整合解释了GSI的概念。关于CSGSI 该库提供了侦听游戏客户端HTTP POST请求的特定端口的方法。 一旦收到请求,便会...

    非常好的基于状态帧同步的战斗系统游戏源代码100%好用.zip

    接收方根据接收到的帧数据更新本地游戏状态,以达到与服务器或其他玩家保持一致的目的。 这种同步方法的核心优点在于减少了对实时网络条件的依赖,因为它不需要每一帧都进行全量数据交换,而是只传输关键状态变化。...

    有限状态机算法的实现

    在实现这个足球小游戏时,开发者可能首先定义了各种游戏状态,然后为每种状态定义了响应的逻辑和行为。例如,“控球”状态下的行为可能包括移动球员、控制球的方向;“射门”状态则可能涉及到计算射门参数并执行射门...

    Unity显示Android手机状态栏

    这个脚本可能含有更新状态栏显示的函数,以及监听和响应用户输入或游戏状态变化的事件。 为了在Unity中实际使用这些功能,你需要将这两个脚本挂载到一个游戏对象上,并在合适的时候调用它们的方法。同时,确保在...

    网络游戏-同步游戏中对象的状态的方法和系统.zip

    例如,使用一致性哈希或分布式数据存储来管理游戏状态,可以提高系统的可扩展性和容错性。同时,设计良好的冲突解决机制,如最后写者获胜(Last Write Wins)或者时间戳优先原则,能够确保游戏的正常运行。 总的来...

    网络游戏-检测状态估计网络模型数据误差.zip

    这种模型通常采用卡尔曼滤波、粒子滤波等概率统计方法来更新和预测游戏状态。 二、数据误差来源 1. 网络延迟:网络传输中的延迟会导致客户端和服务器之间的数据不同步,产生误差。 2. 更新频率差异:服务器和...

    tictactoe-gamestate:井字游戏游戏状态

    5. **游戏状态可视化**:为了帮助用户理解游戏当前情况,可能还需要一个`printBoard()`函数,将游戏状态以人类可读的形式打印出来。 6. **自述文件**:自述文件(通常是README.md)会详细介绍这些函数的工作原理、...

    网络游戏-设备网络状态信息.zip

    保持设备良好的散热条件有助于维持最佳游戏状态。 10. **软件优化**:定期更新驱动程序和操作系统,关闭后台不必要的应用程序,也能提高设备性能和网络效率。 通过理解以上知识点,玩家不仅能更好地了解影响网络...

    H5版本的推箱子小游戏源码

    1. **游戏状态管理**:这部分代码用于维护游戏的状态,如玩家的位置、箱子的位置、墙壁的位置以及游戏是否结束等。通常会有一个数据结构(如二维数组)来存储游戏地图,并且有相应的函数来更新和读取这些状态。 2. ...

    Cocos2d-x游戏暂停、继续游戏、重新开始界面的实现---之游戏开发《赵云要格斗》

    通过阅读源代码,理解如何将这些概念应用到实际游戏中,包括如何处理游戏状态,创建暂停界面,以及如何响应用户交互。 总之,实现游戏暂停、继续和重新开始功能是游戏开发中的常见任务,Cocos2d-x提供了丰富的API来...

    网络游戏-基于状态的策略管理方法、网络单元和策略服务器.zip

    综上所述,基于状态的策略管理方法是网络游戏中的重要技术手段,通过实时监控游戏状态、动态调整策略,可以有效提升游戏的运营效率和玩家体验。而策略服务器和网络单元则是实现这一方法的基础架构,它们共同构建了...

    verilog 拔河游戏机

    当`in1`为高电平,表示一方用力,如果当前游戏状态允许,那么`d`值加1;反之,如果`in2`为高电平,`d`值减1。当`d`值达到某个边界条件时,相应的玩家得分增加,并且游戏进入下一状态。 该Verilog模块`bahe`包含以下...

    GameMonitor:将在所有游戏上运行以检索游戏状态的插件

    《GameMonitor:全面解析游戏状态监控插件的Java实现》 在当今的数字娱乐领域,游戏已经成为不可或缺的一部分,而随着技术的发展,游戏的复杂性和玩家的需求也在不断提升。为了更好地理解和优化游戏体验,开发者们...

    网络游戏-基于网络状态控制访问.zip

    2. **状态同步**:网络游戏中的每个玩家动作都需要在网络中同步,确保所有参与者看到相同的游戏状态。这可以通过几种不同的同步机制实现,如状态预测、delta压缩、一致性算法(如CRDTs)等。 3. **网络状态检测**:...

Global site tag (gtag.js) - Google Analytics