Add guild access grade bits to inventory summary

ryzomclassic-develop
kaetemi 4 years ago
parent 24ceb5df04
commit d512d10f18

@ -216,7 +216,8 @@
<leaf name="ENCHANT" type="I10" />
<leaf name="RM_CLASS_TYPE" type="I3" />
<leaf name="RM_FABER_STAT_TYPE" type="I5" />
<leaf name="PREREQUISIT_VALID" type="I11" />
<leaf name="PREREQUISIT_VALID" type="I1" />
<leaf name="PRICE" type="I32" />
<leaf name="RESALE_FLAG" type="I2" />
<leaf name="WORNED" type="I1" />
<leaf name="INFO_VERSION" type="I8" />
@ -241,13 +242,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<!-- <leaf name="LOCKED" type="I10" /> -->
<!-- <leaf name="ACCESS" type="I2" /> -->
<!-- <leaf name="ACCESS" type="I2" /> --> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -261,13 +263,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<!-- <leaf name="LOCKED" type="I10" /> -->
<!-- <leaf name="ACCESS" type="I2" /> -->
<!-- <leaf name="ACCESS" type="I2" /> --> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -293,13 +296,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<leaf name="LOCKED" type="I10" />
<leaf name="ACCESS" type="I2" />
<leaf name="ACCESS" type="I2" /> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<leaf name="PRICE" type="I32" />
<leaf name="RESALE_FLAG" type="I2" /> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -314,13 +318,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<leaf name="LOCKED" type="I10" />
<leaf name="ACCESS" type="I2" />
<leaf name="ACCESS" type="I2" /> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<leaf name="PRICE" type="I32" />
<leaf name="RESALE_FLAG" type="I2" /> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -345,13 +350,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<!-- <leaf name="LOCKED" type="I10" /> -->
<!-- <leaf name="ACCESS" type="I2" /> -->
<!-- <leaf name="ACCESS" type="I2" /> --> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -371,13 +377,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<!-- <leaf name="LOCKED" type="I10" /> -->
<!-- <leaf name="ACCESS" type="I2" /> -->
<!-- <leaf name="ACCESS" type="I2" /> --> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<!-- <leaf name="WORNED" type="I1" /> --> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -407,14 +414,15 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<leaf name="LOCKED" type="I10" />
<leaf name="ACCESS" type="I2" />
<leaf name="ACCESS" type="I2" /> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<leaf name="RESALE_FLAG" type="I2" /> <!-- TBotChatResaleFlag -->
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
</branch>
@ -538,13 +546,14 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<!-- <leaf name="LOCKED" type="I10" /> -->
<!-- <leaf name="ACCESS" type="I2" /> -->
<!-- <leaf name="ACCESS" type="I2" /> --> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<!-- <leaf name="WORNED" type="I1" /> --> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
@ -713,14 +722,15 @@
<leaf name="QUANTITY" type="I10" />
<leaf name="USER_COLOR" type="I3" />
<leaf name="LOCKED" type="I10" />
<leaf name="ACCESS" type="I2" />
<leaf name="ACCESS" type="I2" /> <!-- TGuildGrade access grade -->
<leaf name="WEIGHT" type="I16" /> <!-- weight. see DB_WEIGHT_SCALE -->
<leaf name="NAMEID" type="I32" /> <!-- 0 or special name of item -->
<leaf name="ENCHANT" type="I10" /> <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
<leaf name="RM_CLASS_TYPE" type="I3" /> <!-- RM_CLASS_TYPE enum -->
<leaf name="RM_FABER_STAT_TYPE" type="I6" /> <!-- RM_FABER_STAT_TYPE enum -->
<leaf name="PREREQUISIT_VALID" type="I1" />
<leaf name="RESALE_FLAG" type="I2" /> <!-- TBotChatResaleFlag -->
<!-- <leaf name="PRICE" type="I32" /> -->
<!-- <leaf name="RESALE_FLAG" type="I2" /> --> <!-- TBotChatResaleFlag -->
<leaf name="WORNED" type="I1" /> <!-- true if item is worned (show a red cross) -->
<leaf name="INFO_VERSION" type="I8" />
</branch>

@ -166,6 +166,9 @@
<leaf name="CLOSE_ROOM_INVENTORY" sendto="" description="EGS wants to close the user inventory" />
<leaf name="USE_ITEM" sendto="EGS" format="u16" description="client wants to use teleport in the specified bag slot or consume an item to trigger its effect" />
<leaf name="STOP_USE_XP_CAT" sendto="EGS" format="b" description="client wants to stop using xp catalyser" />
<leaf name="LOCK" sendto="EGS" format="u16 u16 b" description="lock or unlock an item. inventory, slot, lock" />
<leav name="RENAME" sendot="EGS" format="u16 u16 b s" description="change an item name to a phrase or literal. inventory, slot, literal, name" />
<leav name="WRITE" sendot="EGS" format="u16 u16 s" description="wrrite a crafter's message. inventory, slot, lock" />
</branch>
<branch name="TP">
<leaf name="RESPAWN" sendto="EGS" format="" description="teleport the player to his respawn point" />

@ -82,7 +82,7 @@ namespace BOTCHATTYPE
ResaleKOBroken,
// this item can't be sold because its Resold time has expired
ResaleKONoTimeLeft,
// this item can't be sold because the owner has locked it (temporary hack to get around modifying database.xml)
// this item can't be sold because the owner has locked it
ResaleKOLockedByOwner,
NumBotChatResaleFlag

@ -26,6 +26,9 @@
namespace CHARACTERISTICS
{
enum TCharacteristics
#ifdef NL_CPP14
: uint8
#endif
{
constitution = 0, //HP max
metabolism, //Hp Regen

@ -122,7 +122,6 @@ namespace INVENTORIES
const char *InfoVersionStr = "INFO_VERSION";
const char *CItemSlot::ItemPropStr [NbItemPropId] =
{ "SHEET", "QUALITY", "QUANTITY", "USER_COLOR", "CREATE_TIME", "SERIAL", "LOCKED", "WEIGHT", "NAMEID", "ENCHANT", "RM_CLASS_TYPE", "RM_FABER_STAT_TYPE", "PRICE", "RESALE_FLAG", "PREREQUISIT_VALID", "WORNED" };
{ "SHEET", "QUALITY", "QUANTITY", "USER_COLOR", "LOCKED", "ACCESS", "WEIGHT", "NAMEID", "ENCHANT", "RM_CLASS_TYPE", "RM_FABER_STAT_TYPE", "PREREQUISIT_VALID", "PRICE", "RESALE_FLAG", "WORNED" };
const uint CItemSlot::DataBitSize [NbItemPropId] =
{ 32, 10, 10, 3, 32, 32, 10, 16, 32, 10, 3, 5, 32, 2, 1, 1 };
}
{ 32, 10, 10, 3, 10, 2, 16, 32, 10, 3, 5, 1, 32, 2, 1, };

@ -263,22 +263,21 @@ namespace INVENTORIES
enum TItemPropId
{
Sheet,
Quality,
Quantity,
UserColor,
CreateTime,
Serial,
Locked,
Weight,
NameId,
Enchant,
ItemClass,
ItemBestStat,
Price,
ResaleFlag,
PrerequisitValid,
Worned,
NbItemPropId
Quality,
Quantity,
UserColor,
Locked,
Access,
Weight,
NameId,
Enchant,
ItemClass,
ItemBestStat,
PrerequisitValid,
Price,
ResaleFlag,
Worned,
NbItemPropId
};
const uint NbBitsForItemPropId = 4; // TODO: replace this constant by an inline function using NbItemPropId

@ -25,6 +25,9 @@ namespace ITEMFAMILY
{
// Mode
enum EItemFamily
#ifdef NL_CPP14
: uint8
#endif
{
UNDEFINED = 0,
SERVICE,

@ -73,7 +73,7 @@ CItemInfos::CItemInfos()
LacustreMagicResistance = 0;
JungleMagicResistance = 0;
PrimaryRootMagicResistance = 0;
PetNumber = 0; // 1 based!
}
void CItemInfos::serial(NLMISC::IStream & s)
@ -128,9 +128,9 @@ void CItemInfos::serial(NLMISC::IStream & s)
s.serial(CastingSpeedFactor[i]);
s.serial(MagicPowerFactor[i]);
}
s.serial( CustomText );
s.serial( R2ItemDescription );
s.serial( R2ItemComment );
s.serial( PetNumber );
}

@ -27,7 +27,7 @@
#include "characteristics.h"
#include "sphrase_com.h"
#include "type_skill_mod.h"
#include "guild_grade.h"
///\structure defining the protection of an item
struct SProtection
@ -136,10 +136,10 @@ public:
CSPhraseCom Enchantment;
float WearEquipmentMalus; // Malus for wearing this equipment (malus is used when execute an magic, forage action, craft action...), malus is only applicable for weapon and armor pieces
ucstring CustomText; // TODO: UTF-8 (serial)
ucstring R2ItemDescription; // TODO: UTF-8 (serial)
ucstring R2ItemComment; // TODO: UTF-8 (serial)
uint8 PetNumber; // 1 based pet index
std::string CustomText;
std::string R2ItemDescription;
std::string R2ItemComment;
//@}
};

@ -26,6 +26,9 @@
namespace ITEM_ORIGIN
{
enum EItemOrigin
#ifdef NL_CPP14
: uint8
#endif
{
COMMON = 0,
FYROS,

@ -26,6 +26,9 @@ namespace ITEM_TYPE
// Mode
// nb : sell filter uses two 64b database values to build a bitfield, so the item type limit is 128 for now
enum TItemType
#ifdef NL_CPP14
: uint8
#endif
{
DAGGER,
SWORD,

@ -27,6 +27,9 @@
namespace SKILLS
{
enum ESkills
#ifdef NL_CPP14
: uint8
#endif
{
SC = 0,
SCA,

@ -1155,6 +1155,15 @@ void CGameItem::setLockedByOwner(bool value)
}
}
void CGameItem::setAccessGrade(EGSPD::CGuildGrade::TGuildGrade value)
{
if (value != _AccessGrade)
{
_AccessGrade = value;
callItemChanged(INVENTORIES::TItemChangeFlags(INVENTORIES::itc_lock_state));
}
}
//-----------------------------------------------
// getCopy :
//-----------------------------------------------

@ -34,6 +34,7 @@
#include "game_share/type_skill_mod.h"
#include "game_share/resistance_type.h"
#include "game_share/skills.h"
#include "game_share/guild_grade.h"
#include "egs_log_filter.h"
#include "player_inventory.h"
@ -442,7 +443,7 @@ public :
// get maximum piercing protection
uint32 maxPiercingProtection() const;
// get color
uint8 color() const { return _CraftParameters == 0 ? 1 : _CraftParameters->Color; }
uint8 color() const { return _CraftParameters == 0 ? DefaultColor : _CraftParameters->Color; }
// get one of the three possible protection, legal protection number are 1,2 or 3
void magicProtection(uint32 protectionNumber, PROTECTION_TYPE::TProtectionType& protectionType, uint32& protectionValue) const;
@ -659,6 +660,8 @@ public :
inline bool getLockedByOwner() const { return _LockedByOwner; }
void setLockedByOwner(bool value);
inline EGSPD::CGuildGrade::TGuildGrade getAccessGrade() const { return _AccessGrade; }
void setAccessGrade(EGSPD::CGuildGrade::TGuildGrade value);
inline bool getMovable() const { return _Movable; }
inline void setMovable(bool value) { _Movable = value; }
@ -699,7 +702,7 @@ public :
protected:
friend class CFaberPhrase;
// set Default Color (for craft only)
void setDefaultColor() { if( _CraftParameters ) _CraftParameters->Color = 1; }
void setDefaultColor() { if( _CraftParameters ) _CraftParameters->Color = DefaultColor; }
/// set link information between item and container inventory (used by CInventoryBase)
void setInventory(const CInventoryPtr &inv, uint32 slot);
@ -866,13 +869,15 @@ private:
uint32 _LockCount;
// required skill
SKILLS::ESkills _RequiredSkill;
SKILLS::ESkills _RequiredSkill2;
CHARACTERISTICS::TCharacteristics _RequiredCharac;
uint16 _RequiredSkillLevel;
uint16 _RequiredSkillLevel2;
/// min required stat level and required stat
uint16 _RequiredCharacLevel;
// required skill
SKILLS::ESkills _RequiredSkill;
SKILLS::ESkills _RequiredSkill2;
/// min required stat level and required stat
CHARACTERISTICS::TCharacteristics _RequiredCharac;
/// whether the item has any skill requirements
bool _HasPrerequisit;
bool _UseNewSystemRequirement;
@ -881,6 +886,8 @@ private:
bool _PhraseLiteral;
bool _LockedByOwner;
EGSPD::CGuildGrade::TGuildGrade _AccessGrade;
bool _UnMovable;
bool _Movable;
uint8 _PetIndex;
@ -892,6 +899,10 @@ private:
// true if the item is on the ground
// bool _IsOnTheGround;
public:
static const EGSPD::CGuildGrade::TGuildGrade DefaultAccessGrade = EGSPD::CGuildGrade::HighOfficer;
static const uint8 DefaultColor = 1;
};
/**

@ -138,14 +138,15 @@ void CGuildInventoryView::updateClientSlot(uint32 slot)
itemSlot.setItemProp( INVENTORIES::Quantity, item->getStackSize() );
itemSlot.setItemProp( INVENTORIES::UserColor, item->color() );
itemSlot.setItemProp( INVENTORIES::Locked, 0 );
itemSlot.setItemProp( INVENTORIES::Access, item->getAccessGrade() );
itemSlot.setItemProp( INVENTORIES::Weight, item->weight() / 10 );
itemSlot.setItemProp( INVENTORIES::NameId, 0 ); // TODO: name of guild (item->sendNameId())
itemSlot.setItemProp( INVENTORIES::Enchant, item->getClientEnchantValue() );
itemSlot.setItemProp( INVENTORIES::Price, 0 );
itemSlot.setItemProp( INVENTORIES::ResaleFlag, 0 );
itemSlot.setItemProp( INVENTORIES::ItemClass, item->getItemClass() );
itemSlot.setItemProp( INVENTORIES::ItemBestStat, item->getCraftParameters() == 0 ? RM_FABER_STAT_TYPE::Unknown : item->getCraftParameters()->getBestItemStat() );
itemSlot.setItemProp( INVENTORIES::PrerequisitValid, 1 );
itemSlot.setItemProp( INVENTORIES::PrerequisitValid, 1 ); // TODO: per user prereq
itemSlot.setItemProp( INVENTORIES::Price, 0 );
itemSlot.setItemProp( INVENTORIES::ResaleFlag, 0 );
_GuildInvUpdater.setItemProps( INVENTORIES::CInventoryCategoryForGuild::GuildInvId, itemSlot );
}

@ -1071,6 +1071,14 @@ void CCharacterInvView::updateClientSlot(uint32 slot, const CGameItemPtr item)
{
resaleFlag = BOTCHATTYPE::ResaleKOLockedByOwner;
}
else if (item->durability() == item->maxDurability())
{
resaleFlag = BOTCHATTYPE::ResaleOk;
}
else
{
resaleFlag = BOTCHATTYPE::ResaleKOBroken;
}
const INVENTORIES::TItemId &itemId = item->getItemId();
@ -1079,9 +1087,8 @@ void CCharacterInvView::updateClientSlot(uint32 slot, const CGameItemPtr item)
itemSlot.setItemProp( INVENTORIES::Quality, item->quality() );
itemSlot.setItemProp( INVENTORIES::Quantity, item->getStackSize() );
itemSlot.setItemProp( INVENTORIES::UserColor, item->color() );
itemSlot.setItemProp( INVENTORIES::CreateTime, itemId.getCreateTime() );
itemSlot.setItemProp( INVENTORIES::Serial, itemId.getSerialNumber() );
itemSlot.setItemProp( INVENTORIES::Locked, item->getLockCount() );
itemSlot.setItemProp( INVENTORIES::Access, item->getAccessGrade() );
itemSlot.setItemProp( INVENTORIES::Weight, item->weight() / 10 );
itemSlot.setItemProp( INVENTORIES::NameId, item->sendNameId(getCharacter()) );
itemSlot.setItemProp( INVENTORIES::Enchant, item->getClientEnchantValue() );

@ -2385,8 +2385,8 @@ void CCharacter::sendItemInfos( uint16 slotId )
const R2::TMissionItem * itemDesc = CR2MissionItem::getInstance().getR2ItemDefinition( currentSessionId(), item->getSheetId() );
if( itemDesc != 0 )
{
infos.R2ItemDescription = itemDesc->Description;
infos.R2ItemComment = itemDesc->Comment;
infos.R2ItemDescription = itemDesc->Description.toUtf8();
infos.R2ItemComment = itemDesc->Comment.toUtf8();
}
}
}
@ -2442,6 +2442,8 @@ void CCharacter::sendItemInfos( uint16 slotId )
infos.TypeSkillMods = item->getTypeSkillMods();
infos.AccessGrade = item->getAccessGrade();
infos.CustomText = item->getCustomText();
CMessage msgout( "IMPULSION_ID" );

@ -1366,8 +1366,9 @@ private:
LPROP2(_CustomName, string, if (false), string(), setPhraseId(val, true)) /* Ryzom Forge compatibility, replaced by _PhraseLiteral */ \
PROP(bool, _Movable)\
PROP(bool, _UnMovable)\
PROP(bool, _LockedByOwner) /* Ryzom Forge compatibility */\
PROP(bool, _LockedByOwner)\
LPROP2(_AccessGrade, string, if (_AccessGrade != DefaultAccessGrade), CGuildGrade::toString(_AccessGrade), _AccessGrade = CGuildGrade::fromString(val))\
//#pragma message( PERSISTENT_GENERATION_MESSAGE )
#include "game_share/persistent_data_template.h"
@ -1402,7 +1403,7 @@ private:
LPROP(float,MaxSlashingProtection,if (MaxSlashingProtection!=0.0f))\
LPROP(float,MaxBluntProtection,if (MaxBluntProtection!=0.0f))\
LPROP(float,MaxPiercingProtection,if (MaxPiercingProtection!=0.0f))\
LPROP(uint8,Color,if (Color!=1))\
LPROP(uint8,Color,if (Color!=CGameItem::DefaultColor))\
LPROP(sint32,HpBuff,if (HpBuff!=0))\
LPROP(sint32,SapBuff,if (SapBuff!=0))\
LPROP(sint32,StaBuff,if (StaBuff!=0))\

Loading…
Cancel
Save