本文整理汇总了C++中Heroes::GetDirection方法的典型用法代码示例。如果您正苦于以下问题:C++ Heroes::GetDirection方法的具体用法?C++ Heroes::GetDirection怎么用?C++ Heroes::GetDirection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Heroes
的用法示例。
在下文中一共展示了Heroes::GetDirection方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SpriteFlag
Sprite SpriteFlag(const Heroes & hero, int index, bool reflect, bool rotate)
{
int icn_flag = ICN::UNKNOWN;
int index_sprite = 0;
switch(hero.GetColor())
{
case Color::BLUE: icn_flag = hero.isShipMaster() ? ICN::B_BFLG32 : ICN::B_FLAG32; break;
case Color::GREEN: icn_flag = hero.isShipMaster() ? ICN::G_BFLG32 : ICN::G_FLAG32; break;
case Color::RED: icn_flag = hero.isShipMaster() ? ICN::R_BFLG32 : ICN::R_FLAG32; break;
case Color::YELLOW: icn_flag = hero.isShipMaster() ? ICN::Y_BFLG32 : ICN::Y_FLAG32; break;
case Color::ORANGE: icn_flag = hero.isShipMaster() ? ICN::O_BFLG32 : ICN::O_FLAG32; break;
case Color::PURPLE: icn_flag = hero.isShipMaster() ? ICN::P_BFLG32 : ICN::P_FLAG32; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown color"); break;
}
if(rotate) index_sprite = 45;
else
switch(hero.GetDirection())
{
case Direction::TOP: index_sprite = 0; break;
case Direction::TOP_RIGHT: index_sprite = 9; break;
case Direction::RIGHT: index_sprite = 18; break;
case Direction::BOTTOM_RIGHT: index_sprite = 27; break;
case Direction::BOTTOM: index_sprite = 36; break;
case Direction::BOTTOM_LEFT: index_sprite = 27; break;
case Direction::LEFT: index_sprite = 18; break;
case Direction::TOP_LEFT: index_sprite = 9; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown direction"); break;
}
return AGG::GetICN(icn_flag, index_sprite + (index % 9), reflect);
}
示例2: SpriteFroth
Sprite SpriteFroth(const Heroes & hero, int index, bool reflect)
{
int index_sprite = 0;
switch(hero.GetDirection())
{
case Direction::TOP: index_sprite = 0; break;
case Direction::TOP_RIGHT: index_sprite = 9; break;
case Direction::RIGHT: index_sprite = 18; break;
case Direction::BOTTOM_RIGHT: index_sprite = 27; break;
case Direction::BOTTOM: index_sprite = 36; break;
case Direction::BOTTOM_LEFT: index_sprite = 27; break;
case Direction::LEFT: index_sprite = 18; break;
case Direction::TOP_LEFT: index_sprite = 9; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown direction"); break;
}
return AGG::GetICN(ICN::FROTH, index_sprite + (index % 9), reflect);
}
示例3: SpriteShad
Sprite SpriteShad(const Heroes & hero, int index)
{
int icn_shad = hero.isShipMaster() ? ICN::BOATSHAD : ICN::SHADOW32;
int index_sprite = 0;
switch(hero.GetDirection())
{
case Direction::TOP: index_sprite = 0; break;
case Direction::TOP_RIGHT: index_sprite = 9; break;
case Direction::RIGHT: index_sprite = 18; break;
case Direction::BOTTOM_RIGHT: index_sprite = 27; break;
case Direction::BOTTOM: index_sprite = 36; break;
case Direction::BOTTOM_LEFT: index_sprite = 45; break;
case Direction::LEFT: index_sprite = 54; break;
case Direction::TOP_LEFT: index_sprite = 63; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown direction"); break;
}
return AGG::GetICN(icn_shad, index_sprite + (index % 9));
}
示例4: SpriteHero
Sprite SpriteHero(const Heroes & hero, int index, bool reflect, bool rotate)
{
int icn_hero = ICN::UNKNOWN;
int index_sprite = 0;
if(hero.isShipMaster()) icn_hero = ICN::BOAT32;
else
switch(hero.GetRace())
{
case Race::KNGT: icn_hero = ICN::KNGT32; break;
case Race::BARB: icn_hero = ICN::BARB32; break;
case Race::SORC: icn_hero = ICN::SORC32; break;
case Race::WRLK: icn_hero = ICN::WRLK32; break;
case Race::WZRD: icn_hero = ICN::WZRD32; break;
case Race::NECR: icn_hero = ICN::NECR32; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown race"); break;
}
if(rotate) index_sprite = 45;
else
switch(hero.GetDirection())
{
case Direction::TOP: index_sprite = 0; break;
case Direction::TOP_RIGHT: index_sprite = 9; break;
case Direction::RIGHT: index_sprite = 18; break;
case Direction::BOTTOM_RIGHT: index_sprite = 27; break;
case Direction::BOTTOM: index_sprite = 36; break;
case Direction::BOTTOM_LEFT: index_sprite = 27; break;
case Direction::LEFT: index_sprite = 18; break;
case Direction::TOP_LEFT: index_sprite = 9; break;
default: DEBUG(DBG_GAME, DBG_WARN, "unknown direction"); break;
}
return AGG::GetICN(icn_hero, index_sprite + (index % 9), reflect);
}