Avoid redundant per-frame calls to getDbProp("UI:SAVE:USER_CHAR_FADE")
--HG-- branch : kaetemi-optimize
This commit is contained in:
parent
23ac008cf1
commit
cc2465199c
3 changed files with 7 additions and 2 deletions
|
@ -58,6 +58,7 @@ uint32 MissionRingId = 0;
|
||||||
UInstance selectedInstance;
|
UInstance selectedInstance;
|
||||||
const UInstance noSelectedInstance;
|
const UInstance noSelectedInstance;
|
||||||
string selectedInstanceURL;
|
string selectedInstanceURL;
|
||||||
|
static NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> s_UserCharFade;
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
///////////////
|
||||||
|
@ -273,7 +274,8 @@ void checkUnderCursor()
|
||||||
entity= EntitiesMngr.getEntityUnderPos(cursX, cursY, ClientCfg.SelectionDist, isPlayerUnderCursor);
|
entity= EntitiesMngr.getEntityUnderPos(cursX, cursY, ClientCfg.SelectionDist, isPlayerUnderCursor);
|
||||||
|
|
||||||
// If the mouse is over the player make the player transparent
|
// If the mouse is over the player make the player transparent
|
||||||
CCDBNodeLeaf *pNL = NLGUI::CDBManager::getInstance()->getDbProp("UI:SAVE:USER_CHAR_FADE", false);
|
CCDBNodeLeaf *pNL = s_UserCharFade ? &*s_UserCharFade
|
||||||
|
: (s_UserCharFade = NLGUI::CDBManager::getInstance()->getDbProp("UI:SAVE:USER_CHAR_FADE", false));
|
||||||
if ((pNL != NULL) && (pNL->getValue32() == 1) && UserEntity->selectable())
|
if ((pNL != NULL) && (pNL->getValue32() == 1) && UserEntity->selectable())
|
||||||
{
|
{
|
||||||
// If the nearest entity is the player, hide!
|
// If the nearest entity is the player, hide!
|
||||||
|
|
|
@ -55,6 +55,7 @@ const uint32 DEFAULT_ENTITY_MIN_OPACITY = 128;
|
||||||
|
|
||||||
|
|
||||||
bool CTool::_MouseCaptured = false;
|
bool CTool::_MouseCaptured = false;
|
||||||
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> CTool::_UserCharFade;
|
||||||
|
|
||||||
static const CVector cardinals[] =
|
static const CVector cardinals[] =
|
||||||
{
|
{
|
||||||
|
@ -551,7 +552,8 @@ void CTool::handleMouseOverPlayer(bool over)
|
||||||
{
|
{
|
||||||
//H_AUTO(R2_CTool_handleMouseOverPlayer)
|
//H_AUTO(R2_CTool_handleMouseOverPlayer)
|
||||||
// If the mouse is over the player make the player transparent
|
// If the mouse is over the player make the player transparent
|
||||||
CCDBNodeLeaf *pNL = NLGUI::CDBManager::getInstance()->getDbProp("UI:SAVE:USER_CHAR_FADE", false);
|
CCDBNodeLeaf *pNL = _UserCharFade ? &*_UserCharFade
|
||||||
|
: (_UserCharFade = NLGUI::CDBManager::getInstance()->getDbProp("UI:SAVE:USER_CHAR_FADE", false));
|
||||||
if ((pNL != NULL) && (pNL->getValue32() == 1) && UserEntity->selectable())
|
if ((pNL != NULL) && (pNL->getValue32() == 1) && UserEntity->selectable())
|
||||||
{
|
{
|
||||||
// If the nearest entity is the player, hide!
|
// If the nearest entity is the player, hide!
|
||||||
|
|
|
@ -284,6 +284,7 @@ private:
|
||||||
sint64 _AutoPanDelay;
|
sint64 _AutoPanDelay;
|
||||||
sint64 _NumPans;
|
sint64 _NumPans;
|
||||||
static bool _MouseCaptured;
|
static bool _MouseCaptured;
|
||||||
|
static NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _UserCharFade;
|
||||||
private:
|
private:
|
||||||
/** compute the nearest valid surface at a given position from the island heightmap
|
/** compute the nearest valid surface at a given position from the island heightmap
|
||||||
* (heightmap must not be empty or an assertion is raised)
|
* (heightmap must not be empty or an assertion is raised)
|
||||||
|
|
Loading…
Reference in a new issue