mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 05:21:29 +00:00
105 lines
2.8 KiB
C++
105 lines
2.8 KiB
C++
/* EQEMu: Everquest Server Emulator
|
|
|
|
Copyright (C) 2001-2016 EQEMu Development Team (http://eqemulator.net)
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; version 2 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY except by those people which sell it, which
|
|
are required to give you total support for your newly bought product;
|
|
without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
*/
|
|
|
|
#ifndef COMMON_EQ_LIMITS_H
|
|
#define COMMON_EQ_LIMITS_H
|
|
|
|
#include "types.h"
|
|
#include "eq_constants.h"
|
|
#include "emu_versions.h"
|
|
#include "../common/patches/titanium_limits.h"
|
|
#include "../common/patches/sof_limits.h"
|
|
#include "../common/patches/sod_limits.h"
|
|
#include "../common/patches/uf_limits.h"
|
|
#include "../common/patches/rof_limits.h"
|
|
#include "../common/patches/rof2_limits.h"
|
|
|
|
|
|
namespace EQEmu
|
|
{
|
|
namespace constants {
|
|
class LookupEntry {
|
|
public:
|
|
int16 CharacterCreationLimit;
|
|
int LongBuffs;
|
|
int ShortBuffs;
|
|
int DiscBuffs;
|
|
int TotalBuffs;
|
|
int NPCBuffs;
|
|
int PetBuffs;
|
|
int MercBuffs;
|
|
};
|
|
|
|
const LookupEntry* Lookup(versions::ClientVersion client_version);
|
|
|
|
} /*constants*/
|
|
|
|
namespace inventory {
|
|
class LookupEntry {
|
|
public:
|
|
// note: 'PossessionsBitmask' needs to be attuned to the client version with the highest number
|
|
// of possessions slots and 'InventoryTypeSize[typePossessions]' should reflect the same count
|
|
// with translators adjusting for valid slot indices. Server-side validations will be performed
|
|
// against 'PossessionsBitmask' (note: the same applies to Corpse type size and bitmask)
|
|
|
|
int16 InventoryTypeSize[25]; // should reflect EQEmu::invtype::TYPE_COUNT referenced in emu_constants.h
|
|
|
|
uint64 PossessionsBitmask;
|
|
uint64 CorpseBitmask;
|
|
int16 BagSlotCount;
|
|
int16 AugSocketCount;
|
|
|
|
bool AllowEmptyBagInBag;
|
|
bool AllowClickCastFromBag;
|
|
bool ConcatenateInvTypeLimbo;
|
|
bool AllowOverLevelEquipment;
|
|
};
|
|
|
|
const LookupEntry* Lookup(versions::MobVersion mob_version);
|
|
|
|
} /*inventory*/
|
|
|
|
namespace behavior {
|
|
class LookupEntry {
|
|
public:
|
|
bool CoinHasWeight;
|
|
};
|
|
|
|
const LookupEntry* Lookup(versions::MobVersion mob_version);
|
|
|
|
} /*behavior*/
|
|
|
|
} /*EQEmu*/
|
|
|
|
namespace ClientUnknown
|
|
{
|
|
const int16 IINVALID = -1;
|
|
const int16 INULL = 0;
|
|
|
|
} /*ClientUnknown*/
|
|
|
|
namespace Client62
|
|
{
|
|
const int16 IINVALID = -1;
|
|
const int16 INULL = 0;
|
|
|
|
} /*Client62*/
|
|
|
|
#endif /*COMMON_EQ_LIMITS_H*/
|