Send characteristic buff flags, kaetemi/ryzomclassic#210

ryzomclassic-develop
kaetemi 4 years ago
parent 45bc21e5c9
commit 59ee36332c

@ -95,6 +95,7 @@ void CActionPhraseFaber::fillDBWithMP(const std::string &sheetBase, const CIte
NLGUI::CDBManager::getInstance()->getDbProp(sheetBase + ":QUALITY")->setValue32(item.Quality);
NLGUI::CDBManager::getInstance()->getDbProp(sheetBase + ":QUANTITY")->setValue32(item.Quantity);
NLGUI::CDBManager::getInstance()->getDbProp(sheetBase + ":USER_COLOR")->setValue32(item.UserColor);
NLGUI::CDBManager::getInstance()->getDbProp(sheetBase + ":CHARAC_BUFFS")->setValue32(item.CharacBuffs);
NLGUI::CDBManager::getInstance()->getDbProp(sheetBase + ":WEIGHT")->setValue32(item.Weight);
}
@ -470,6 +471,7 @@ void CActionPhraseFaber::validateFaberPlanSelection(CSBrickSheet *itemPlanBrick
_InventoryMirror[i].Quality= itemImage->getQuality();
_InventoryMirror[i].Quantity= itemImage->getQuantity();
_InventoryMirror[i].UserColor= itemImage->getUserColor();
_InventoryMirror[i].CharacBuffs= itemImage->getCharacBuffs();
_InventoryMirror[i].Weight= itemImage->getWeight();
// Bkup original quantity from inventory
_InventoryMirror[i].OriginalQuantity= _InventoryMirror[i].Quantity;
@ -1384,6 +1386,7 @@ void CActionPhraseFaber::onInventoryChange()
newInvItem.Quality= itemImage->getQuality();
newInvItem.Quantity= itemImage->getQuantity();
newInvItem.UserColor= itemImage->getUserColor();
newInvItem.CharacBuffs= itemImage->getCharacBuffs();
newInvItem.Weight= itemImage->getWeight();
newInvItem.OriginalQuantity= newInvItem.Quantity;
newInvItem.LockedByOwner = bLockedByOwner;
@ -1417,6 +1420,7 @@ void CActionPhraseFaber::onInventoryChange()
sameMp= curInvItem.Sheet == newInvItem.Sheet &&
curInvItem.Quality == newInvItem.Quality &&
curInvItem.UserColor == newInvItem.UserColor &&
curInvItem.CharacBuffs == newInvItem.CharacBuffs &&
curInvItem.LockedByOwner == newInvItem.LockedByOwner;
// if the Mp was deleted from this slot, delete it from all faber execution

@ -91,6 +91,7 @@ private:
sint32 Quality;
sint32 Quantity;
sint32 UserColor;
uint8 CharacBuffs;
sint32 Weight;
// BitField to know which itemReqLine has selected this Item
uint Selected;
@ -102,7 +103,8 @@ private:
{
Quality= 0;
Quantity= 0;
UserColor= 0;
UserColor= 1;
CharacBuffs= 0;
Weight= 0;
Selected= 0;
OriginalQuantity= 0;
@ -115,7 +117,8 @@ private:
Sheet= NLMISC::CSheetId::Unknown;
Quality= 0;
Quantity= 0;
UserColor= 0;
UserColor= 1;
CharacBuffs= 0;
Weight= 0;
Selected= 0;
OriginalQuantity= 0;

@ -126,6 +126,7 @@ CItemImage::CItemImage()
Quality = NULL;
Quantity = NULL;
UserColor = NULL;
CharacBuffs = NULL;
Price = NULL;
Weight= NULL;
NameId= NULL;
@ -140,6 +141,7 @@ void CItemImage::build(CCDBNodeBranch *branch)
Quality = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("QUALITY"), false));
Quantity = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("QUANTITY"), false));
UserColor = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("USER_COLOR"), false));
CharacBuffs = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("CHARAC_BUFFS"), false));
Price = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("PRICE"), false));
Weight = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("WEIGHT"), false));
NameId = dynamic_cast<CCDBNodeLeaf *>(branch->getNode(ICDBNode::CTextId("NAMEID"), false));

@ -64,6 +64,7 @@ public:
NLMISC::CCDBNodeLeaf *Quality;
NLMISC::CCDBNodeLeaf *Quantity;
NLMISC::CCDBNodeLeaf *UserColor;
NLMISC::CCDBNodeLeaf *CharacBuffs;
NLMISC::CCDBNodeLeaf *Price;
NLMISC::CCDBNodeLeaf *Weight;
NLMISC::CCDBNodeLeaf *NameId;
@ -79,7 +80,8 @@ public:
uint32 getSheetID() const { return (uint32) (Sheet ? Sheet->getValue32() : 0); }
uint16 getQuality() const { return (uint16) (Quality ? Quality->getValue16() : 0); }
uint16 getQuantity() const { return (uint16) (Quantity ? Quantity->getValue16() : 0); }
uint8 getUserColor() const { return (uint8) (UserColor ? UserColor->getValue16() : 0); }
uint8 getUserColor() const { return (uint8) (UserColor ? UserColor->getValue8() : 0); }
uint8 getCharacBuffs() const { return (uint8) (CharacBuffs ? CharacBuffs->getValue8() : 0); }
uint32 getPrice() const { return (uint32) (Price ? Price->getValue32() : 0); }
uint32 getWeight() const { return (uint32) (Weight ? Weight->getValue32() : 0); }
uint32 getNameId() const { return (uint32) (NameId ? NameId->getValue32() : 0); }
@ -91,6 +93,7 @@ public:
void setQuality(uint16 quality) { if (Quality) Quality->setValue16((sint16) quality); }
void setQuantity(uint16 quantity) { if (Quantity) Quantity->setValue16((sint16) quantity); }
void setUserColor(uint8 uc) { if (UserColor) UserColor->setValue8((sint8) uc); }
void setCharacBuffs(uint8 uc) { if (CharacBuffs) CharacBuffs->setValue8((sint8) uc); }
void setPrice(uint32 price) { if (Price) Price->setValue32((sint32) price); }
void setWeight(uint32 wgt) { if (Weight) Weight->setValue32((sint32) wgt); }
void setNameId(uint32 nid) { if (NameId) NameId->setValue32((sint32) nid); }

@ -139,6 +139,7 @@ void CPlayerTrade::restoreItem(CDBCtrlSheet *exchangeSlot)
im.getBagItem(emptySlot).setQuality((uint16) exchangeSlot->getQuality());
im.getBagItem(emptySlot).setQuantity((uint16) quantityLeft);
im.getBagItem(emptySlot).setUserColor((uint8) exchangeSlot->getItemColor());
im.getBagItem(emptySlot).setCharacBuffs((uint8) exchangeSlot->getItemCharacBuffs());
im.getBagItem(emptySlot).setWeight((uint32) exchangeSlot->getItemWeight());
im.getBagItem(emptySlot).setNameId(exchangeSlot->getItemNameId());
im.getBagItem(emptySlot).setInfoVersion(exchangeSlot->getItemInfoVersion());

@ -118,7 +118,9 @@ void CTempInventory::clearDisp(uint32 slot)
// _Char->_PropertyDatabase.setProp(sDBPath+":QUANTITY", 0);
tempEntry.setQUANTITY(_Char->_PropertyDatabase, 0);
// _Char->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", 0);
tempEntry.setUSER_COLOR(_Char->_PropertyDatabase, 0);
tempEntry.setUSER_COLOR(_Char->_PropertyDatabase, 1);
// _Char->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", 0);
tempEntry.setCHARAC_BUFFS(_Char->_PropertyDatabase, 0);
// _Char->_PropertyDatabase.setProp(sDBPath+":WEIGHT", 0);
tempEntry.setWEIGHT(_Char->_PropertyDatabase, 0);
// _Char->_PropertyDatabase.setProp(sDBPath+":NAMEID", 0);
@ -272,6 +274,8 @@ void CTempInvView::updateClientSlot(uint32 clientSlot, const CGameItemPtr item)
tempItem.setQUANTITY(getCharacter()->_PropertyDatabase, uint16(item->getStackSize()));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", item->color());
tempItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, item->color());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", item->buffFlags());
tempItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, item->buffFlags());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", item->weight() / 10);
tempItem.setWEIGHT(getCharacter()->_PropertyDatabase, uint16(item->weight()/10));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", item->sendNameId(getCharacter()));
@ -295,7 +299,9 @@ void CTempInvView::updateClientSlot(uint32 clientSlot, const CGameItemPtr item)
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":QUANTITY", 0);
tempItem.setQUANTITY(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", 0);
tempItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 0);
tempItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 1);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", 0);
tempItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", 0);
tempItem.setWEIGHT(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", 0);

@ -326,6 +326,8 @@ void CExchangeView::onInterlocutorSlotChanged(uint32 interlocutorGiveSlot)
recvItem.setQUANTITY(getCharacter()->_PropertyDatabase, uint16(exchangeQuantity));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", item->color());
recvItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, item->color());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", item->buffFlags());
recvItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, item->buffFlags());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", item->weight() / 10);
recvItem.setWEIGHT(getCharacter()->_PropertyDatabase, uint16(item->weight() / 10));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", item->sendNameId(getCharacter()));
@ -349,7 +351,9 @@ void CExchangeView::onInterlocutorSlotChanged(uint32 interlocutorGiveSlot)
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":QUANTITY", 0);
recvItem.setQUANTITY(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", 0);
recvItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 0);
recvItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 1);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", 0);
recvItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", 0);
recvItem.setWEIGHT(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", 0);
@ -396,6 +400,8 @@ void CExchangeView::updateExchangeSlot(uint32 exchangeSlot)
giveItem.setQUANTITY(getCharacter()->_PropertyDatabase, uint16(exchangeQuantity));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", item->color());
giveItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, item->color());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", item->buffFlags());
giveItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, item->buffFlags());
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", item->weight() / 10);
giveItem.setWEIGHT(getCharacter()->_PropertyDatabase, uint16(item->weight() / 10));
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", item->sendNameId(getCharacter()));
@ -419,7 +425,9 @@ void CExchangeView::updateExchangeSlot(uint32 exchangeSlot)
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":QUANTITY", 0);
giveItem.setQUANTITY(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":USER_COLOR", 0);
giveItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 0);
giveItem.setUSER_COLOR(getCharacter()->_PropertyDatabase, 1);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":CHARAC_BUFFS", 0);
giveItem.setCHARAC_BUFFS(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":WEIGHT", 0);
giveItem.setWEIGHT(getCharacter()->_PropertyDatabase, 0);
// getCharacter()->_PropertyDatabase.setProp(sDBPath+":NAMEID", 0);

@ -188,7 +188,8 @@ void CInventoryUpdaterForCharacter::resetItemIntoClassicDatabase( INVENTORIES::
arrayItem.setSHEET(*_PropertyDatabasePt, CSheetId::Unknown);
arrayItem.setQUALITY(*_PropertyDatabasePt, 0);
arrayItem.setQUANTITY(*_PropertyDatabasePt, 0);
arrayItem.setUSER_COLOR(*_PropertyDatabasePt, 0);
arrayItem.setUSER_COLOR(*_PropertyDatabasePt, 1);
arrayItem.setCHARAC_BUFFS(*_PropertyDatabasePt, 0);
// arrayItem.setLOCKED(_PropertyDatabasePt, 0);
arrayItem.setWEIGHT(*_PropertyDatabasePt, 0);
arrayItem.setNAMEID(*_PropertyDatabasePt, 0);

@ -9476,6 +9476,8 @@ void CCharacter::fillTradePage(uint16 session, bool enableBuildingLossWarning)
itemElem.setQUALITY(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:USER_COLOR",index ), 1 );
itemElem.setUSER_COLOR(_PropertyDatabase, 1);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:CHARAC_BUFFS",index ), 0 );
itemElem.setCHARAC_BUFFS(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:WEIGHT",index ), 0 );
itemElem.setWEIGHT(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:INFO_VERSION",index ), 0 );
@ -9518,6 +9520,8 @@ void CCharacter::fillTradePage(uint16 session, bool enableBuildingLossWarning)
itemElem.setQUALITY(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:USER_COLOR",index ), 1 );
itemElem.setUSER_COLOR(_PropertyDatabase, 1);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:CHARAC_BUFFS",index ), 0 );
itemElem.setCHARAC_BUFFS(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:WEIGHT",index ), 0 );
itemElem.setWEIGHT(_PropertyDatabase, 0);
// _PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:INFO_VERSION",index ), 0 );

@ -599,6 +599,8 @@ void CCharacterShoppingList::fillTradePage( uint16 session )
trade->ItemTrade->getItemPtr()->recommended( trade->ItemTrade->getLevel() );
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:USER_COLOR",index ), trade->ItemTrade->getItemPtr()->color() );
tradeElem.setUSER_COLOR(_Character->_PropertyDatabase, trade->ItemTrade->getItemPtr()->color());
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:CHARAC_BUFFS",index ), trade->ItemTrade->getItemPtr()->buffFlags() );
tradeElem.setCHARAC_BUFFS(_Character->_PropertyDatabase, trade->ItemTrade->getItemPtr()->buffFlags());
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:WEIGHT",index ), (uint16) (trade->ItemTrade->getItemPtr()->weight() / 10 ) );
tradeElem.setWEIGHT(_Character->_PropertyDatabase, (uint16) (trade->ItemTrade->getItemPtr()->weight() / 10 ));
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:NAMEID",index ), trade->ItemTrade->getItemPtr()->sendNameId(_Character) );
@ -619,6 +621,8 @@ void CCharacterShoppingList::fillTradePage( uint16 session )
const CStaticItem * staticSheet = CSheets::getForm( trade->ItemTrade->getSheetId() );
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:USER_COLOR",index ), 1 );
tradeElem.setUSER_COLOR(_Character->_PropertyDatabase, 1);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:CHARAC_BUFFS",index ), 0 );
tradeElem.setCHARAC_BUFFS(_Character->_PropertyDatabase, 0);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:WEIGHT",index ), staticSheet != NULL ? staticSheet->Weight / 10 : 0 );
tradeElem.setWEIGHT(_Character->_PropertyDatabase, uint16(staticSheet != NULL ? staticSheet->Weight / 10 : 0));
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:NAMEID",index ), 0 );
@ -644,7 +648,9 @@ void CCharacterShoppingList::fillTradePage( uint16 session )
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:QUALITY",index ), 0);
tradeElem.setQUALITY(_Character->_PropertyDatabase, 0);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:USER_COLOR",index ), 1);
tradeElem.setUSER_COLOR(_Character->_PropertyDatabase, 0);
tradeElem.setUSER_COLOR(_Character->_PropertyDatabase, 1);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:CHARAC_BUFFS",index ), 0);
tradeElem.setCHARAC_BUFFS(_Character->_PropertyDatabase, 0);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:WEIGHT",index ), 0 );
tradeElem.setWEIGHT(_Character->_PropertyDatabase, 0);
// _Character->_PropertyDatabase.setProp( NLMISC::toString("TRADING:%u:NAMEID",index ), 0 );

@ -258,8 +258,10 @@ bool CRewardSharing::userValidSelect(const TDataSetRow & userRow, uint8 state)
shareItem.setQUALITY(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:QUANTITY",j), 0 );
shareItem.setQUANTITY(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:USER_COLOR",j), 0 );
shareItem.setUSER_COLOR(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:USER_COLOR",j), 1 );
shareItem.setUSER_COLOR(user->_PropertyDatabase, 1);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:CHARAC_BUFFS",j), 0 );
shareItem.setCHARAC_BUFFS(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:WEIGHT",j), 0 );
shareItem.setWEIGHT(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:NAMEID",j), 0 );
@ -361,6 +363,8 @@ void CRewardSharing::setUsersDb()
shareItem.setQUANTITY(user->_PropertyDatabase, checkedCast<uint16>(quantity));
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:USER_COLOR",j), item->color() );
shareItem.setUSER_COLOR(user->_PropertyDatabase, item->color());
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:CHARAC_BUFFS",j), item->buffFlags() );
shareItem.setCHARAC_BUFFS(user->_PropertyDatabase, item->buffFlags());
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:WEIGHT",j), (uint16)(item->weight() / 10 ) );
shareItem.setWEIGHT(user->_PropertyDatabase, checkedCast<uint16>(item->weight() / 10 ));
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:NAMEID",j), item->sendNameId(user) );
@ -411,8 +415,10 @@ void CRewardSharing::setUsersDb()
shareItem.setQUALITY(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:QUANTITY",j), 0 );
shareItem.setQUANTITY(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:USER_COLOR",j), 0 );
shareItem.setUSER_COLOR(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:USER_COLOR",j), 1 );
shareItem.setUSER_COLOR(user->_PropertyDatabase, 1);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:CHARAC_BUFFS",j), 0 );
shareItem.setCHARAC_BUFFS(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:WEIGHT",j), 0 );
shareItem.setWEIGHT(user->_PropertyDatabase, 0);
// user->_PropertyDatabase.setProp( NLMISC::toString("INVENTORY:SHARE:%u:NAMEID",j), 0 );

Loading…
Cancel
Save