预计这是一个系列文章,一篇可能讲不完
废话不多说,先上图

一个简易的触发器实现(一)

上图是用vs2015生成的

简单介绍下类图:

  • WorldEventTrigger,抽象类,描述一个通用意义上的触发器的行为与属性:

    1. IsValid()触发器是否还有效
    2. IsTrigger()触发器是否被触发
    3. GetTriggerTip()获取触发器提示,一般是某些条件描述,比如达到5级触发
    4. Exec()执行外界set进来的回调函数
  • LevelTrigger,实现类,描述了一个等级触发器:

  • QuestTrigger,实现类,描述了一个任务触发器:

  • TriggerExec,定义的一个委托类型函数,外界传进来的回调必须是这个格式的才可以用

  • WorldEventTriggerManager,负责以下事务:

    1. 生成触发器,并保存在一个list中
    2. 检查无效触发器,并删除
    3. 检查触发器是否生效,并执行回调

    下一篇发代码,这几个类并不是独立的,还引用到了工程里的其他类,不过不影响看懂这个结构
    第二篇传送门:点我传送

开源是一种精神

相关文章:

  • 2021-11-27
  • 2021-12-10
  • 2021-07-20
  • 2021-11-09
  • 2021-04-02
  • 2022-12-23
  • 2021-08-15
猜你喜欢
  • 2021-08-12
  • 2022-12-23
  • 2022-01-03
  • 2022-12-23
  • 2021-12-17
  • 2021-06-04
相关资源
相似解决方案