ngl_server 1.0
基于 Actor 模型的 C++ 服务器框架
ngl::item_create Class Referenceabstract

#include <itme.h>

Inheritance diagram for ngl::item_create:
ngl::item_create_card ngl::item_create_equip ngl::item_create_material ngl::item_create_money

Static Public Member Functions

static bool create (actor_role *arole, int32_t atid, int32_t acount, std::vector< pbdb::item > &avec)

Protected Member Functions

 item_create (EItemType atype)
virtual bool mode (actor_role *arole, int32_t atid, int32_t acount, std::vector< pbdb::item > &avec)=0

Detailed Description

创建不同类型物品的工厂模式基类。

本类实现了注册表模式,每个物品类型注册自己的创建逻辑。 当需要创建物品时,工厂根据物品类型查找对应的创建器, 并将创建操作委托给注册的处理器。

用法:

  • 继承此类并为每个物品类型实现mode()方法
  • 在构造函数中通过传入物品类型注册创建器
  • 调用create()来实例化任何已注册类型的物品

Constructor & Destructor Documentation

◆ item_create()

ngl::item_create::item_create ( EItemType atype)
inlineexplicitprotected

注册特定物品类型创建器的构造函数。

Parameters
atype此创建器处理的物品类型

Member Function Documentation

◆ create()

bool ngl::item_create::create ( actor_role * arole,
int32_t atid,
int32_t acount,
std::vector< pbdb::item > & avec )
inlinestatic

创建任何已注册类型物品的静态工厂方法。

Parameters
arole创建物品的角色Actor
atid配置表中的物品模板ID
acount要创建的物品数量
avec输出向量,存储创建的物品数据
Returns
创建成功返回true,物品类型未找到或创建失败返回false

◆ mode()

virtual bool ngl::item_create::mode ( actor_role * arole,
int32_t atid,
int32_t acount,
std::vector< pbdb::item > & avec )
protectedpure virtual

实现特定类型物品创建逻辑的纯虚方法。

Parameters
arole创建物品的角色Actor
atid配置表中的物品模板ID
acount要创建的物品数量
avec输出向量,存储创建的物品数据
Returns
创建成功返回true,否则返回false

The documentation for this class was generated from the following files: