本文整理汇总了C++中CObjectManager::GetMySelf方法的典型用法代码示例。如果您正苦于以下问题:C++ CObjectManager::GetMySelf方法的具体用法?C++ CObjectManager::GetMySelf怎么用?C++ CObjectManager::GetMySelf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CObjectManager
的用法示例。
在下文中一共展示了CObjectManager::GetMySelf方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CheckObjectTransparent
// 检测是否要透明
void CEngineInterface::CheckObjectTransparent()
{
if(!m_pFairySystem)
return ;
CObjectManager* objMng = CObjectManager::GetMe();
fVector3 fvPos;
if( objMng->GetMySelf()->GetRenderInterface() )
{
objMng->GetMySelf()->GetRenderInterface()->Actor_GetLocator( GetCharaLocatorName(LOCATOR_CHAR_ATTACK), fvPos ); // 取人物绑定点的位置, 判断起来比较合理 "人物身体受击点"
}
Axis_Trans(tGfxSystem::AX_GAME, fvPos, tGfxSystem::AX_GFX, fvPos);
Ogre::Camera* pOgreCamera = m_pFairySystem->getCamera();
Ogre::Vector3 origin = pOgreCamera->getPosition();
// 屏掉下边这句了by czg 200911-30
m_pFairySystem->makeObjectTransparent(origin, Ogre::Vector3(fvPos.x, fvPos.y, fvPos.z), 0.8, 1, NULL);
}
示例2: mapPos
uint GCNewPlayerHandler :: Execute( GCNewPlayer* pPacket, Player* pPlayer )
{
//__ENTER_FUNCTION
//当前流程是主流程
if(CGameProcedure::GetActiveProcedure() == (CGameProcedure*)CGameProcedure::s_pProcMain)
{
CObjectManager* pObjectManager = CObjectManager::GetMe();
//检查位置是否合法
if(!CWorldManager::GetMe()->GetActiveScene()->IsValidPosition(fVector2(pPacket->getWorldPos().m_fX, pPacket->getWorldPos().m_fZ)))
{
TDThrow("ERROR POSITION @ GCNewPlayerHandler");
}
//创建玩家
CObject_PlayerOther* pOther = (CObject_PlayerOther*)(pObjectManager->FindServerObject( (INT)pPacket->getObjID()));
fVector3 fvGame;
CGameProcedure::s_pGfxSystem->Axis_Trans(
CRenderSystem::AX_PLAN, fVector3(pPacket->getWorldPos().m_fX, 0.0f, pPacket->getWorldPos().m_fZ),
CRenderSystem::AX_GAME, fvGame);
FLOAT fFaceDir = pPacket->getDir();
if ( pOther == NULL )
{
pOther = pObjectManager->NewPlayerOther( (INT)pPacket->getObjID() );
SObjectInit initPlayerOther;
initPlayerOther.m_fvPos = fvGame;
initPlayerOther.m_fvRot = fVector3( 0.f, fFaceDir, 0.f );
pOther->Initial( &initPlayerOther );
fVector2 mapPos(fvGame.x, fvGame.z);
pOther->SetMapPosition( mapPos );
}
else
{
fVector2 mapPos(fvGame.x, fvGame.z);
pOther->SetMapPosition( mapPos );
pOther->SetFaceDir( fFaceDir );
pOther->Enable( OSF_VISIABLE );
pOther->Disalbe( OSF_OUT_VISUAL_FIELD );
}
//更新装备信息
pOther->GetCharacterData()->Set_EquipVer(pPacket->getEquipVer());
pOther->GetCharacterData()->Set_MoveSpeed(pPacket->getMoveSpeed());
////激活鼠标查询
//if(pOther->GetRenderInterface())
//{
// pOther->Enable(OSF_RAY_QUERY);
//}
SCommand_Object cmdTemp;
cmdTemp.m_wID = OC_IDLE;
cmdTemp.m_afParam[0] = fvGame.x;
cmdTemp.m_afParam[1] = fvGame.z;
cmdTemp.m_abParam[2] = FALSE;
pOther->PushCommand(&cmdTemp );
//放入Ask队列
CObjectManager::GetMe()->GetLoadQueue()->TryAddLoadTask(pOther->GetID(), CObject_Character::CT_PLAYEROTHER);
// tempcode{
// 此版不做服务器繁忙客户端延后发消息的处理
// CGCharAskBaseAttrib msgAskBaseAttrib;
// msgAskBaseAttrib.setTargetID( (INT)pPacket->getObjID() );
// CNetManager::GetMe()->SendPacket( &msgAskBaseAttrib );
//AxTrace(0, 0, "[%d]Ask %d", m_hmObject.size(), pPacket->getObjID());
// }
//如果是自己,退出死亡效果
if(pOther == (CObject_PlayerOther*)pObjectManager->GetMySelf())
{
CGameProcedure::s_pGfxSystem->Scene_SetPostFilter_Death(FALSE);
}
pOther->PushDebugString("GCNewPlayer");
pOther->SetMsgTime(CGameProcedure::s_pTimeSystem->GetTimeNow());
}
return PACKET_EXE_CONTINUE ;
//__LEAVE_FUNCTION
return PACKET_EXE_ERROR ;
}