载入中...
搜索中...
未找到
eve::card::Card类 参考

卡牌模块入口(eve.Card):定义注册、对象工厂与每帧 update/render。 更多...

#include <Card.h>

类 eve::card::Card 继承关系图:
eve::Module

Public 成员函数

 Module_REG (Card)
 
 Card ()=default
 
 ~Card () override
 
int registerCardsFromJson (const std::string &json)
 从 JSON 注册卡牌类型;返回成功注册数量。
 
void clearCardDefinitions ()
 清空全部卡牌类型定义。
 
int getCardDefinitionCount ()
 已注册卡牌类型数量。
 
bool hasCardDefinition (const std::string &id)
 卡牌类型查询。
 
std::string getCardDefinitionName (const std::string &id)
 
std::string getCardDefinitionKind (const std::string &id)
 
int getCardDefinitionCost (const std::string &id)
 
int getCardDefinitionAttack (const std::string &id)
 
int getCardDefinitionHealth (const std::string &id)
 
float getCardDefinitionTintR (const std::string &id)
 
float getCardDefinitionTintG (const std::string &id)
 
float getCardDefinitionTintB (const std::string &id)
 
LayoutConfignewConfig ()
 工厂:对象由 ECS 表持有,脚本持有的是非拥有句柄。
 
CardDatanewCard (const std::string &defId)
 
DecknewDeck ()
 
ZonenewZone (const std::string &id, const std::string &label, float x, float y, float w, float h)
 创建一个落牌区。
 
HandnewHand (LayoutConfig *cfg)
 创建一个手牌布局。
 
void setConfig (LayoutConfig *cfg)
 游戏状态:当前布局、手牌、落牌区、牌库。
 
LayoutConfiggetConfig () const
 
int handCount () const
 
HandgetHand (int index) const
 
HandfindHand (const std::string &owner) const
 
int zoneCount () const
 
ZonegetZone (int index) const
 
DeckgetDeck () const
 
CardDatadrawCard (const std::string &handOwner)
 从牌库抽一张牌加入指定手牌;无牌时返回 nullptr。
 
void update (float dt, float mx, float my, bool down)
 每帧更新布局与交互。
 
void render (graphics::Graphics *gfx)
 绘制手牌/落牌区(与牌库)。
 
void renderDeck (graphics::Graphics *gfx)
 
void clearEvents ()
 交互事件队列(抽牌/出牌/拖拽等)。
 
int getEventCount () const
 
std::string getEventType (int index) const
 
std::string getEventHand (int index) const
 
std::string getEventZone (int index) const
 
std::string getEventCardId (int index) const
 
std::string getEventReason (int index) const
 
- Public 成员函数 继承自 eve::Module
virtual ~Module ()
 
virtual std::string getName () const =0
 

详细描述

卡牌模块入口(eve.Card):定义注册、对象工厂与每帧 update/render。

在文件 Card.h26 行定义.

构造及析构函数说明

◆ Card()

eve::card::Card::Card ( )
default

◆ ~Card()

eve::card::Card::~Card ( )
override

在文件 Card.cpp84 行定义.

成员函数说明

◆ clearCardDefinitions()

void eve::card::Card::clearCardDefinitions ( )

清空全部卡牌类型定义。

在文件 Card.cpp111 行定义.

◆ clearEvents()

void eve::card::Card::clearEvents ( )

交互事件队列(抽牌/出牌/拖拽等)。

在文件 Card.cpp310 行定义.

◆ drawCard()

CardData * eve::card::Card::drawCard ( const std::string &  handOwner)

从牌库抽一张牌加入指定手牌;无牌时返回 nullptr。

在文件 Card.cpp250 行定义.

引用了 c, eve::card::Deck, eve::card::LayoutConfig::deckX, eve::card::LayoutConfig::deckY, eve::card::Deck::draw(), findHand() , 以及 h.

◆ findHand()

Hand * eve::card::Card::findHand ( const std::string &  owner) const

在文件 Card.cpp233 行定义.

引用了 h.

被这些函数引用 drawCard().

◆ getCardDefinitionAttack()

int eve::card::Card::getCardDefinitionAttack ( const std::string &  id)

在文件 Card.cpp137 行定义.

引用了 d.

◆ getCardDefinitionCost()

int eve::card::Card::getCardDefinitionCost ( const std::string &  id)

在文件 Card.cpp132 行定义.

引用了 d.

◆ getCardDefinitionCount()

int eve::card::Card::getCardDefinitionCount ( )

已注册卡牌类型数量。

在文件 Card.cpp113 行定义.

◆ getCardDefinitionHealth()

int eve::card::Card::getCardDefinitionHealth ( const std::string &  id)

在文件 Card.cpp142 行定义.

引用了 d.

◆ getCardDefinitionKind()

std::string eve::card::Card::getCardDefinitionKind ( const std::string &  id)

在文件 Card.cpp127 行定义.

引用了 d.

◆ getCardDefinitionName()

std::string eve::card::Card::getCardDefinitionName ( const std::string &  id)

在文件 Card.cpp122 行定义.

引用了 d.

◆ getCardDefinitionTintB()

float eve::card::Card::getCardDefinitionTintB ( const std::string &  id)

在文件 Card.cpp157 行定义.

引用了 d.

◆ getCardDefinitionTintG()

float eve::card::Card::getCardDefinitionTintG ( const std::string &  id)

在文件 Card.cpp152 行定义.

引用了 d.

◆ getCardDefinitionTintR()

float eve::card::Card::getCardDefinitionTintR ( const std::string &  id)

在文件 Card.cpp147 行定义.

引用了 d.

◆ getConfig()

LayoutConfig * eve::card::Card::getConfig ( ) const

在文件 Card.cpp224 行定义.

◆ getDeck()

Deck * eve::card::Card::getDeck ( ) const

在文件 Card.cpp248 行定义.

◆ getEventCardId()

std::string eve::card::Card::getEventCardId ( int  index) const

在文件 Card.cpp329 行定义.

◆ getEventCount()

int eve::card::Card::getEventCount ( ) const

在文件 Card.cpp312 行定义.

◆ getEventHand()

std::string eve::card::Card::getEventHand ( int  index) const

在文件 Card.cpp319 行定义.

◆ getEventReason()

std::string eve::card::Card::getEventReason ( int  index) const

在文件 Card.cpp334 行定义.

◆ getEventType()

std::string eve::card::Card::getEventType ( int  index) const

在文件 Card.cpp314 行定义.

引用了 type.

◆ getEventZone()

std::string eve::card::Card::getEventZone ( int  index) const

在文件 Card.cpp324 行定义.

◆ getHand()

Hand * eve::card::Card::getHand ( int  index) const

在文件 Card.cpp228 行定义.

◆ getZone()

Zone * eve::card::Card::getZone ( int  index) const

在文件 Card.cpp243 行定义.

◆ handCount()

int eve::card::Card::handCount ( ) const

在文件 Card.cpp226 行定义.

◆ hasCardDefinition()

bool eve::card::Card::hasCardDefinition ( const std::string &  id)

卡牌类型查询。

在文件 Card.cpp115 行定义.

◆ Module_REG()

eve::card::Card::Module_REG ( Card  )

◆ newCard()

CardData * eve::card::Card::newCard ( const std::string &  defId)

在文件 Card.cpp174 行定义.

引用了 c, eve::card::CardData::createCard() , 以及 d.

◆ newConfig()

LayoutConfig * eve::card::Card::newConfig ( )

工厂:对象由 ECS 表持有,脚本持有的是非拥有句柄。

在文件 Card.cpp166 行定义.

◆ newDeck()

Deck * eve::card::Card::newDeck ( )

在文件 Card.cpp189 行定义.

引用了 eve::card::Deck::createDeck() , 以及 d.

◆ newHand()

Hand * eve::card::Card::newHand ( LayoutConfig cfg)

创建一个手牌布局。

在文件 Card.cpp209 行定义.

引用了 eve::card::Hand::createHand() , 以及 h.

◆ newZone()

Zone * eve::card::Card::newZone ( const std::string &  id,
const std::string &  label,
float  x,
float  y,
float  w,
float  h 
)

创建一个落牌区。

在文件 Card.cpp196 行定义.

引用了 eve::card::Zone::createZone(), h, id, w, x, y , 以及 z.

◆ registerCardsFromJson()

int eve::card::Card::registerCardsFromJson ( const std::string &  json)

从 JSON 注册卡牌类型;返回成功注册数量。

在文件 Card.cpp97 行定义.

引用了 n, eve::json::Document::parse(), eve::json::Document::root() , 以及 eve::json::Document::valid().

◆ render()

void eve::card::Card::render ( graphics::Graphics gfx)

绘制手牌/落牌区(与牌库)。

在文件 Card.cpp279 行定义.

引用了 h, eve::card::LayoutConfig::showZones , 以及 z.

◆ renderDeck()

◆ setConfig()

void eve::card::Card::setConfig ( LayoutConfig cfg)

游戏状态:当前布局、手牌、落牌区、牌库。

在文件 Card.cpp220 行定义.

◆ update()

void eve::card::Card::update ( float  dt,
float  mx,
float  my,
bool  down 
)

每帧更新布局与交互。

在文件 Card.cpp268 行定义.

引用了 h , 以及 z.

◆ zoneCount()

int eve::card::Card::zoneCount ( ) const

在文件 Card.cpp241 行定义.


该类的文档由以下文件生成: