diff --git a/code/ryzom/client/src/interface_v3/action_handler_item.cpp b/code/ryzom/client/src/interface_v3/action_handler_item.cpp index 2523899a0..371316882 100644 --- a/code/ryzom/client/src/interface_v3/action_handler_item.cpp +++ b/code/ryzom/client/src/interface_v3/action_handler_item.cpp @@ -1758,17 +1758,18 @@ class CHandlerItemMenuCheck : public IActionHandler CViewTextMenu *pMoveToGuild = dynamic_cast(pMenu->getView("guild")); CViewTextMenu *pMoveToRoom = dynamic_cast(pMenu->getView("room")); CViewTextMenu *pMoveToPa[MAX_INVENTORY_ANIMAL]; + bool bIsLockedByOwner = pCS->getLockedByOwner(); for(i=0;i(pMenu->getView(toString("pa%d", i))); - } CViewTextMenu *pItemInfos = dynamic_cast(pMenu->getView("infos")); CViewTextMenu *pItemTextDisplay = dynamic_cast(pMenu->getView("item_text_display")); CViewTextMenu *pItemTextEdition = dynamic_cast(pMenu->getView("item_text_edition")); + // **** Active Entries // Active Enchant / Reload for a subset of items if(pCrisEnchant) pCrisEnchant->setActive(false); @@ -1779,7 +1780,6 @@ class CHandlerItemMenuCheck : public IActionHandler if(pItemTextDisplay) pItemTextDisplay->setActive(false); if(pItemTextEdition) pItemTextEdition->setActive(false); - if(pLockUnlock) pLockUnlock->setActive(true); const CItemSheet *pIS = pCS->asItemSheet(); @@ -1860,10 +1860,7 @@ class CHandlerItemMenuCheck : public IActionHandler // cannot move to other animals! :) if(pMoveToBag) pMoveToBag->setActive(false); for(i=0;isetActive(false); - } - // additionnaly, cannot drop/destroy/lock an animal item. if(pDrop) pDrop->setActive(false); @@ -1889,8 +1886,10 @@ class CHandlerItemMenuCheck : public IActionHandler if (pMoveToGuild) pMoveToGuild->setActive(invId==INVENTORIES::bag && invMngr.isInventoryPresent(INVENTORIES::guild)); + if (pMoveToRoom) pMoveToRoom->setActive(invId==INVENTORIES::bag && invMngr.isInventoryPresent(INVENTORIES::player_room)); + // std case: can drop / destroy if(pDrop) pDrop->setActive(invId!=INVENTORIES::guild); if(pDestroy) pDestroy->setActive(invId!=INVENTORIES::guild); @@ -1902,11 +1901,9 @@ class CHandlerItemMenuCheck : public IActionHandler if(pMoveSubMenu) { if(pMoveToBag) someMovePossible= someMovePossible || pMoveToBag->getActive(); - for(i=0;igetActive(); - } if(pMoveToGuild) someMovePossible= someMovePossible || pMoveToGuild->getActive(); if(pMoveToRoom) someMovePossible= someMovePossible || pMoveToRoom->getActive(); @@ -1989,7 +1986,6 @@ class CHandlerItemMenuCheck : public IActionHandler if(pLockUnlock) pLockUnlock->setGrayed(true); if(pMoveSubMenu) pMoveSubMenu->setGrayed(true); if(pMoveToBag) pMoveToBag->setGrayed(true); - for(i=0;isetGrayed(true); @@ -2011,7 +2007,6 @@ class CHandlerItemMenuCheck : public IActionHandler // check each inventory dest if available if(pMoveToBag) pMoveToBag->setGrayed(!invMngr.isInventoryAvailable(INVENTORIES::bag)); - for(i=0;isetGrayed(!invMngr.isInventoryAvailable( diff --git a/code/ryzom/client/src/interface_v3/interface_manager.cpp b/code/ryzom/client/src/interface_v3/interface_manager.cpp index 94ffeb989..413b8bcc5 100644 --- a/code/ryzom/client/src/interface_v3/interface_manager.cpp +++ b/code/ryzom/client/src/interface_v3/interface_manager.cpp @@ -2997,6 +2997,7 @@ void CInterfaceManager::initEmotes() uint32 nEmoteNb = (*it).EmoteId; string sState = (*it).Anim; string sName = (*it).Path; + // Check that the emote can be added to UI // --------------------------------------- if( (*it).UsableFromClientUI == false )