限时活动是指在某段时间内存在的活动,比如用于公告一些新道具的产出,累积充值或者累积登陆送奖励,限购礼包,完成某些任务给奖励等。这种限时类活动可以做成一个通用的功能,策划只需要配置,就可以开启活动。实现方式如下:
//限时活动管理器
class LimitActivMgr
{
};
//公告类限时活动,用于打广告
class LimitActivBase
{
};
//累积类限时活动,比如累积充值多少两金子就送多少两金子
class LimitActivAccu : public LimitActivBase
{
};
//限购类限时活动,比如限购礼包
class LimitActivBuy : public LimitActivBase
{
};
//任务类限时活动,比如完成某种日常类活动就给道具
class LimitActivTask : public LimitActivBase
{
};
除了上述几个类外,还需要一些管理这写限时活动数据的类,主要涉及到活动id,分支id,活动名称,活动的值等。这些数值都是存在玩家身上的。
//限时活动最小数值单位,单个分支数值管理类
class ActivBranchValue
{
};
//玩家参与的一个限时活动数据管理类
class ActivValue
{
};
//玩家参与的所有限时活动数据管理类
class ActivValueList
{
};
通过给LimitActivMgr类传递ActivValue类型的变量让数值类与活动管理类关联起来,从而实现了限时活动。