设计模式 --- 状态模式

Posted cygm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式 --- 状态模式相关的知识,希望对你有一定的参考价值。

状态模式:是游戏中应用最频繁的一种模式

状态经常应用到游戏设计的环节当中;比如 AI人工智能 账号登陆状态 角色状态 场景状态

状态模式说明

技术分享图片

Context:状态拥有者

  是一个具有状态属性的类,可以制定相关的接口,让外界能够得知状态的改变或通过操作让状态改变

  有状态属性的类:比如游戏角色有潜行,攻击,施法等状态  好友上线,脱机,忙碌等状态

  技术分享图片

State:状态接口类

  制定状态的接口,负责规范Context在特定状态下要表现的行为

  技术分享图片

ConcreteState:具体状态类

  继承State 实现Context在特定状态下该有的行为

  技术分享图片技术分享图片

 

  测试结果

  技术分享图片

  输出:

  技术分享图片

以上是关于设计模式 --- 状态模式的主要内容,如果未能解决你的问题,请参考以下文章

Golang设计模式——状态模式

设计模式---状态变化模式之state状态模式(State)

设计模式 --- 状态模式

23种设计模式(十七)——状态模式状态变化

设计模式状态模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

设计模式之状态模式