本文整理汇总了C++中CMoveShape::GetPosX方法的典型用法代码示例。如果您正苦于以下问题:C++ CMoveShape::GetPosX方法的具体用法?C++ CMoveShape::GetPosX怎么用?C++ CMoveShape::GetPosX使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMoveShape
的用法示例。
在下文中一共展示了CMoveShape::GetPosX方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnSkillMessage
//.........这里部分代码省略.........
float fDir = pMsg->GetFloat(); // 释放者朝向
long lSkillKey = pMsg->GetDWord(); // 从服务器取得技能键值和ID
long lSkillID = pMsg -> GetLong();
long lLevel = pMsg->GetByte(); // 技能等级
long lCurType = pMsg->GetByte(); // 技能的释放状态(吟唱/释放)
long lTime = pMsg->GetLong(); // 技能的吟唱时间(吟唱阶段有用)
long lRestoreTime = pMsg->GetLong(); // 技能的冷却时间
long lDestX = pMsg->GetShort(); // 释放目标的坐标(x,y)
long lDestY = pMsg->GetShort();
long lTypeSize = pMsg->GetByte(); // 释放目标的个数
vector<long> vecType; // 目标类型列表
vector<CGUID> vecID; // 目标类型的GUID
CGUID destID;
for (int i =0; i<lTypeSize; i++)
{
vecType.push_back(pMsg->GetLong());
pMsg->GetGUID(destID);
vecID.push_back(destID);
}
// 确定基本攻击技能
if(lSkillID == SKILL_BASE_BUFF)
lSkillID = GetGame()->GetMainPlayer()->GetDefaultAttackSkillID();
// 技能释放者
CMoveShape* pMoveShape = (CMoveShape*)pMsg->GetRegion()->FindChildObject(ID);
if(pMoveShape)
{
long lType = pMoveShape->GetType();
//判断是否是怪物,如果是怪物,播放怪物音效
if(lType == TYPE_MONSTER)
{
GetGame()->GetAudioList()->Play(pMoveShape,TYPE_MONSTER,0xFFF0,Vector3(pMoveShape->GetPosY(),pMoveShape->GetHeight(),pMoveShape->GetPosX()));
}
if(lCurType == 1) // 吟唱阶段
{
CPlayer::tagSkill *ptagS = GetGame()->GetMainPlayer()->GetSkill(lSkillID);
if(ptagS)
{
UpdateHotKeyCoolDownEffect(lSkillID);
}
if(pMoveShape->GetType() == TYPE_PET)
{
CPet *pPet = (CPet*)pMoveShape;
//更新当前技能的开始冷却时间
tagPetSkillInfo *pSkill = pPet->GetPetSkillInfoByID(lSkillID);
if(pSkill)
pSkill->lRestorTimeLength = lRestoreTime;
pPet->SkillSuccReceived();
}
/***********************************************************************/
/* 赵航 fix */
//CSkillXml *m_pSkill = new CSkillXml();
/***********************************************************************/
ConcreteSkillComp* SkillCom = new ConcreteSkillComp();
//SkillCom的内存交给了CSkillXml的析构来管理
CSkillXml* pSkill = new ConcreteDecSkillXml(SkillCom);
CSkillListXml::tagSkill *pTagSkill = CSkillListXml::GetProperty(lSkillID);
if (pTagSkill && pTagSkill->dwSkillType == CSkillListXml::SKILLTYPE_PLAY) // 直接施放
{
// 引导类技能添加吟唱条显示时间
DWORD dwlev = pTagSkill->vectorLevels.size() >= (DWORD)lLevel? (DWORD)lLevel-1:((DWORD)pTagSkill->vectorLevels.size() - 1);
long lAiID = pTagSkill->vectorLevels[dwlev].dwSkillLevelAI;