271 lines
16 KiB
C
271 lines
16 KiB
C
#ifndef _SOLAR_SLOT_SCSLOTHEADER_H
|
||
#define _SOLAR_SLOT_SCSLOTHEADER_H
|
||
#pragma once
|
||
|
||
//==================================================================================================
|
||
/// 슬롯 헤더
|
||
/**
|
||
@author Kim Min Wook < taiyo@webzen.co.kr >
|
||
@since 2004. 12. 29
|
||
@remark
|
||
- 常用槽相关的常用常量
|
||
@note
|
||
-
|
||
@history
|
||
- 09.09.06 | waverix | code rearrangement
|
||
*/
|
||
//==================================================================================================
|
||
|
||
//enum eUPDATE_BIT
|
||
//{
|
||
// UB_TYPE = 1,
|
||
// UB_SERIAL = (1<<1),
|
||
// UB_CODE = (1<<2),
|
||
// UB_DURA = (1<<3),
|
||
//
|
||
// UB_ALL = ((1<<4)-1), ///< 更新所有参数
|
||
//};
|
||
|
||
enum eSlotContainerIndex // (WAVERIX) (CHANGES) //eSlotContainerIndex -> eSlotContainerIndex부활.
|
||
{
|
||
SI_TEMPINVENTORY = 0,
|
||
SI_INVENTORY,
|
||
SI_EQUIPMENT,
|
||
SI_WAREHOUSE,
|
||
SI_SKILL,
|
||
SI_QUICK,
|
||
SI_STYLE,
|
||
SI_GUILDWAREHOUSE,
|
||
SI_MAX, ///< 因为它只被客户端使用。 > SI_MAX
|
||
SI_EVENT_INVENTORY,
|
||
SI_TRADE,
|
||
SI_NPCSTORE,
|
||
SI_ENCHANT,
|
||
SI_ENCHANT_MATERIAL,// 增强材料
|
||
SI_ENCHANT_OPTION, // 加固附加添加剂(用于最高级加固)
|
||
SI_RANKUP,
|
||
SI_VENDOR_SELL,
|
||
SI_VENDOR_BUY,
|
||
SI_ITEM_COMPOSE,
|
||
SI_ITEM_CRYSTALIZE,
|
||
SI_ITEM_ETC_COMPOSE,
|
||
SI_QUEST_REWARD,
|
||
SI_QUEST_LIST_CONTENT,
|
||
SI_EXTENSION,
|
||
SI_LOTTERY,
|
||
SI_LOTTO,
|
||
SI_RIDER,
|
||
SI_DOMINATION_TOKEN,
|
||
SI_AUTOMATIC_INFO, //!< //! 2010.8.9 / i4u4me / 오토툴
|
||
SI_CUBE,
|
||
SI_PERK,
|
||
SI_SOCKET_COMPOSITE,
|
||
SI_GM_ITEM,
|
||
SI_VENDOR_SEARCH,
|
||
SI_CHAOSZONE_BATTLEGROUND,
|
||
SI_CHAOSZONE_SSQ,
|
||
SI_SMARTNPC,
|
||
#ifdef _NA_007114_20140313_CHAOSZONE_GOLDRUSH
|
||
SI_CHAOSZONE_GOLDRUSH,
|
||
#endif // _NA_007114_20140313_CHAOSZONE_GOLDRUSH
|
||
#ifdef _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM
|
||
SI_EQUIPMENT_AWAKENING,
|
||
#endif // _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM
|
||
#ifdef _NA_008121_20150318_EQUIPMENT_EVOLUTION_SYSTEM
|
||
SI_EQUIPMENT_EVOLUTION,
|
||
#endif // _NA_008121_20150318_EQUIPMENT_EVOLUTION_SYSTEM
|
||
SI_MAX_TOTAL // (WAVERIX) (ADD-IN) 上限设定用.
|
||
};
|
||
|
||
enum eSlotType
|
||
{
|
||
ST_NONE,
|
||
ST_ITEM,
|
||
ST_SKILL,
|
||
ST_QUICK,
|
||
ST_STYLE_QUICK,
|
||
ST_DUMMY_ITEM,
|
||
ST_TRADE,
|
||
ST_VENDOR,
|
||
ST_EVENT,
|
||
ST_LOTTERY,
|
||
ST_VENDORSEARCH,
|
||
ST_MAX,
|
||
};
|
||
|
||
enum eDecDuraType
|
||
{
|
||
DECDURA_TYPE_ATTACK, // 受到攻击或被攻击时耐久度降低
|
||
DECDURA_TYPE_LEAVE_ROOM, // 在任务期间故意退出时,耐用性会降低
|
||
};
|
||
|
||
enum eSLOT_SERIALIZE
|
||
{
|
||
eSLOT_SERIALIZE_LOAD = 1 << 1,
|
||
eSLOT_SERIALIZE_SAVE = 1 << 2,
|
||
|
||
eSLOT_SERIALIZE_CLIENT_LOAD = eSLOT_SERIALIZE_LOAD | ( 1 << 4),
|
||
eSLOT_SERIALIZE_RENDER_LOAD = eSLOT_SERIALIZE_LOAD | ( 2 << 4),
|
||
|
||
eSLOT_SERIALIZE_CLIENT_SAVE = eSLOT_SERIALIZE_SAVE | (10 << 4),
|
||
eSLOT_SERIALIZE_RENDER_SAVE = eSLOT_SERIALIZE_SAVE | (11 << 4),
|
||
};
|
||
|
||
enum eCHARGE_TYPE
|
||
{
|
||
eCHARGE_GENERAL,
|
||
eCHARGE_CHARGE,
|
||
eCHARGE_CHARGE_PPCARD, //_NA00XXXX_090111_CASH_TYPE_SHARED_
|
||
};
|
||
|
||
//--------------------------------------------------------------------------------------------------
|
||
// (REFERENCE) 'ChargeSubType' in ItemScripts
|
||
// (DESCRIPTION)
|
||
// - 湮灭法(基于时间)
|
||
// (NOTE)
|
||
// - eCHARGE_SUB_GENERAL | eCHARGE_PC_ROOM
|
||
// 功能相同:PC机房是否分类(PC机房专属项目)
|
||
// - eCHARGE_SUB_FIXED_AMOUNT
|
||
//
|
||
// - eCHARGE_SUB_FIXED_AMOUNT_EX
|
||
//
|
||
// - eCHARGE_SUB_FIXED_QUANTITY
|
||
//
|
||
// - eCHARGE_SUB_COORDINATE
|
||
// 那种不知道他为什么这样做的人——这是谁做的? - 灭绝方法不是基于时间的。
|
||
// - eCHARGE_SUB_FIXED_AMOUNT_WAIT
|
||
// 使用一定期限后,到期后等待7天删除
|
||
// - eCHARGE_SUB_FATE
|
||
// 幸运物品,如果认证后设置了有效期,到了有效期就不能使用了
|
||
// - eCHARGE_SUB_COORDINATE_EX
|
||
// 删除个人航点信息后重新注册的处罚时间 +
|
||
// 使用期限到期后,等待7天到期后删除
|
||
// - eCHARGE_SUB_RIDER_WITH_PART
|
||
// Rider Item : 从获取时起使用一段时间后,设置为不可用
|
||
// Rider Parts Item : 延长订阅期(最多 30 天)- 从安装之日起使用一段时间后,
|
||
// 设置为不可用
|
||
// - eCHARGE_SUB_FIXED_AMOUNT_EX2
|
||
// 自获取之日起使用一段时间后删除
|
||
enum eCHARGE_SUB_TYPE
|
||
{
|
||
eCHARGE_SUB_GENERAL = 0, //< [00]没有限制
|
||
// 最小单位为:小时,计算为:秒
|
||
eCHARGE_SUB_FIXED_AMOUNT, //< [01]订阅:固定期限(30일=30*24시간 ->(생성시) 2007-06-07 24:12:00)
|
||
eCHARGE_SUB_FIXED_AMOUNT_EX, //< [02]扩展定额制:从佩戴时起使用一段时间(30小时->(首次安装时)2007-06-07 24:12:00)
|
||
eCHARGE_SUB_FIXED_QUANTITY, //< [03]定量剂:使用期限 (30시간)
|
||
eCHARGE_SUB_COORDINATE, //< [04]좌표
|
||
eCHARGE_SUB_FIXED_AMOUNT_WAIT, //< [05]订阅:固定期限+ 7天待机
|
||
eCHARGE_SUB_FATE, //< [06]命运物品(Lucky Item)
|
||
eCHARGE_PC_ROOM, //< [07]电脑室物品
|
||
//__NA001164_20081024_CHAR_WAY_POINT_ITEM
|
||
eCHARGE_SUB_COORDINATE_EX, //< [08]坐标列表链接项.
|
||
//__NA1390_1391_090915_RIDING_SYSTEM_ITEM_PART__
|
||
eCHARGE_SUB_RIDER_WITH_PART, //< [09]订阅 + 幸运物品 + 零件是延长订阅(最多 30 天)
|
||
eCHARGE_SUB_RIDER_WITH_PART_NOTIMER, //< [10] [09]车辆无周期变化 - 很难设置为 0,因为它作为关联计时器工作
|
||
eCHARGE_SUB_FIXED_AMOUNT_EX2, //< [11]확장정액제2 : 自取得之日起一定期间内使用 //_NA_000000_20130710_CHARGE_SUB_FIXED_AMOUNT_EX2
|
||
#ifdef _NA_008440_20150818_ADD_CHARGE_SUB_IMMEDIATELY_USE
|
||
eCHARGE_SUB_IMMEDIATELY_USE, //< [12]即时使用:获得后立即使用的物品。
|
||
eCHARGE_SUB_IMMEDIATELY_USE_AND_DELETE, //< [13]立即使用删除:获取后立即使用并删除的项目
|
||
#endif // _NA_008440_20150818_ADD_CHARGE_SUB_IMMEDIATELY_USE
|
||
eCHARGE_SUB_COUNTS //upperbound
|
||
};
|
||
|
||
enum eMIXTURE_FLAG
|
||
{ // (WAVERIX) (NOTE) 설정되면, Block contents
|
||
MIXTURE_ALL = 0,
|
||
MIXTURE_ENCHANT = (1 << 0), //可以附魔
|
||
MIXTURE_RANKUP = (1 << 1), //排名可能
|
||
MIXTURE_CRYSTALIZE = (1 << 2), //可结晶的
|
||
MIXTURE_COMPOSE = (1 << 3), //可组合
|
||
MIXTURE_EXTRASTONE = (1 << 4),
|
||
MIXTURE_SOCKET_HOLE_FILL = (1 << 5), //填充插座孔
|
||
MIXTURE_SOCKET_EXTRACT = (1 << 6), //删除套接字属性
|
||
MIXTURE_PERIOD_EXTEND = (1 << 7), //延展期
|
||
MIXTURE_EXCEPTALL = ((1<< 8)-1), //所有未使用
|
||
};
|
||
|
||
//__NA1390_1391_090915_RIDING_SYSTEM_ITEM_PART__
|
||
// 骑手项目的零件索引,项目内部可以包含3个项目.
|
||
enum eRIDER_PARTS_SLOT_IDX {
|
||
eRIDER_PARTS_SLOT_IDX_HEAD = 0,
|
||
eRIDER_PARTS_SLOT_IDX_BODY ,
|
||
eRIDER_PARTS_SLOT_IDX_LEGS ,
|
||
eRIGER_PARTS_SLOT_IDX_COUNT // == 3
|
||
};
|
||
|
||
//_NA000109_100427_ITEM_CUSTOMIZING_CONTENTS_
|
||
struct eEtheriaHistory
|
||
{
|
||
enum eHistory {
|
||
None = 0, // default spec.
|
||
Combined, // the combination item, this item is combined from etheria
|
||
Shell, // the shell item, this item is extracted options
|
||
Etheria, // the etheria item, this item has contained all options of the item
|
||
};
|
||
typedef uint8_t value_type;
|
||
value_type value;
|
||
};
|
||
|
||
//_NA001202_101104_ITEM_CUSTOMIZING_CONTENTS_ETHEREALIZABLE_LUCKYITEM
|
||
struct eEtherealizeMode
|
||
{
|
||
enum eMode {
|
||
NoFilter = 0, // keep the kind of item
|
||
CantEtherealize, // can't etherealize
|
||
ExtractEtheriaOnly, // extract to the etheria item not the shell(skin)
|
||
ExtractShellOnly, // extract to the skin item not the etheria
|
||
Mode_Counts
|
||
};
|
||
typedef uint8_t value_type;
|
||
eEtherealizeMode() : value(0)
|
||
{
|
||
}
|
||
value_type value;
|
||
};
|
||
|
||
struct KindOfItemType
|
||
{
|
||
typedef uint8_t value_type;
|
||
enum {
|
||
Default = 0,
|
||
Divine,
|
||
Etheria,
|
||
EtheriaWithDivine,
|
||
Shell,
|
||
Counts,
|
||
};
|
||
value_type value;
|
||
};
|
||
|
||
// reference : _NA000424_GLOBAL_CASH_ITEM_RENEWAL_
|
||
struct KindOfItemTag
|
||
{
|
||
typedef uint8_t value_type;
|
||
enum {
|
||
Tag_None = 0,
|
||
Tag_TradeSkip = 0x01,
|
||
Tag_PCoinPurchase = Tag_TradeSkip
|
||
// upperbound. this tag is used in a binary stream of itemslots. the tag size is '1'bit
|
||
};
|
||
value_type value;
|
||
};
|
||
|
||
// CHANGES: f110329.5L, moved from const.h
|
||
enum eITEM_EXCERCISE_EFFECT
|
||
{
|
||
eITEM_EFFECT_NONE = 0,
|
||
eITEM_EFFECT_ON_EQUIP , // 必须装备才能有效
|
||
eITEM_EFFECT_ON_INVEN , // 只是在您的库存中是有效的
|
||
eITEM_EFFECT_UPPERBOUND ,
|
||
};
|
||
|
||
//==================================================================================================
|
||
//#define DEPRECATE_RESERVED __declspec(deprecated)
|
||
#define DEPRECATE_RESERVED
|
||
|
||
#define DEPRECATE_CODE_DELETE_RESERVED (1)
|
||
//==================================================================================================
|
||
|
||
#endif //_SOLAR_SLOT_SCSLOTHEADER_H
|
||
|