谈谈游戏开发中用到设计模式

1. 单例模式。 不用多讲了

2. 观察者模式  class player { ... }

  onPlayerHpChanged()

  onPlayerMpChanged()

  onPlayerPositionChanged()

  ...

3. 命令模式

  class buff {

    void do()

    void undo()  

  }

4. 代理模式

  客户端通常需要显示其它玩家,而又不需要知道其它玩家的全部信息,只需要代理其他玩家。

5. 工厂模式

  XXFactory::createPlayer()

  XXFactory::createMonster()

6. 适配器模式

  曾经写的战斗系统, 需要从不同的游戏系统进入战斗,例如副本 秘诀 决斗

  FightFromQuest()

  FightFromSercret()

  FightFromDuel()

7. 状态机模式

  控制游戏物体移动时,会遇到各种移动方式 移动策略(策略模式?笔者分不清了,笔者认为设计模式只是一种思想,当代码更加优雅,清晰)

  SliderMove()

  FlyMove()

  FreeFallMove()

  PathMove()

 

posted @ 2015-04-26 22:00  light_world  阅读(887)  评论(0编辑  收藏  举报