123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477 |
- /*
- * Copyright (c) 2010-2015 OTClient <https://github.com/edubart/otclient>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
- #ifndef CLIENT_CONST_H
- #define CLIENT_CONST_H
-
- namespace Otc
- {
- enum {
- TILE_PIXELS = 32,
- MAX_ELEVATION = 24,
-
- SEA_FLOOR = 7,
- MAX_Z = 15,
- UNDERGROUND_FLOOR = SEA_FLOOR+1,
- AWARE_UNDEGROUND_FLOOR_RANGE = 2,
-
- INVISIBLE_TICKS_PER_FRAME = 500,
- ITEM_TICKS_PER_FRAME = 500,
- ANIMATED_TEXT_DURATION = 1000,
- STATIC_DURATION_PER_CHARACTER = 60,
- MIN_STATIC_TEXT_DURATION = 3000,
- MAX_STATIC_TEXT_WIDTH = 200,
- MAX_AUTOWALK_STEPS_RETRY = 10,
- MAX_AUTOWALK_DIST = 127
- };
-
- enum DrawFlags {
- DrawGround = 1,
- DrawGroundBorders = 2,
- DrawOnBottom = 4,
- DrawOnTop = 8,
- DrawItems = 16,
- DrawCreatures = 32,
- DrawEffects = 64,
- DrawMissiles = 128,
- DrawCreaturesInformation = 256,
- DrawStaticTexts = 512,
- DrawAnimatedTexts = 1024,
- DrawAnimations = 2048,
- DrawBars = 4096,
- DrawNames = 8192,
- DrawLights = 16384,
- DrawWalls = DrawOnBottom | DrawOnTop,
- DrawEverything = DrawGround | DrawGroundBorders | DrawWalls | DrawItems |
- DrawCreatures | DrawEffects | DrawMissiles | DrawCreaturesInformation |
- DrawStaticTexts | DrawAnimatedTexts | DrawAnimations | DrawBars | DrawNames |
- DrawLights
- };
-
- enum DatOpts {
- DatGround = 0,
- DatGroundClip,
- DatOnBottom,
- DatOnTop,
- DatContainer,
- DatStackable,
- DatForceUse,
- DatMultiUse,
- DatWritable,
- DatWritableOnce,
- DatFluidContainer,
- DatSplash,
- DatBlockWalk,
- DatNotMoveable,
- DatBlockProjectile,
- DatBlockPathFind,
- DatPickupable,
- DatHangable,
- DatHookSouth,
- DatHookEast,
- DatRotable,
- DatLight,
- DatDontHide,
- DatTranslucent,
- DatDisplacement,
- DatElevation,
- DatLyingCorpse,
- DatAnimateAlways,
- DatMinimapColor,
- DatLensHelp,
- DatFullGround,
- DatIgnoreLook,
- DatCloth,
- DatAnimation, // lastest tibia
- DatLastOpt = 255
- };
-
- enum InventorySlot {
- InventorySlotHead = 1,
- InventorySlotNecklace,
- InventorySlotBackpack,
- InventorySlotArmor,
- InventorySlotRight,
- InventorySlotLeft,
- InventorySlotLegs,
- InventorySlotFeet,
- InventorySlotRing,
- InventorySlotAmmo,
- InventorySlotPurse,
- InventorySlotExt1,
- InventorySlotExt2,
- InventorySlotExt3,
- InventorySlotExt4,
- LastInventorySlot
- };
-
- enum Statistic {
- Health = 0,
- MaxHealth,
- FreeCapacity,
- Experience,
- Level,
- LevelPercent,
- Mana,
- MaxMana,
- MagicLevel,
- MagicLevelPercent,
- Soul,
- Stamina,
- LastStatistic
- };
-
- enum Skill {
- Fist = 0,
- Club,
- Sword,
- Axe,
- Distance,
- Shielding,
- Fishing,
- LastSkill
- };
-
- enum Direction {
- North = 0,
- East,
- South,
- West,
- NorthEast,
- SouthEast,
- SouthWest,
- NorthWest,
- InvalidDirection
- };
-
- enum FluidsColor {
- FluidTransparent = 0,
- FluidBlue,
- FluidRed,
- FluidBrown,
- FluidGreen,
- FluidYellow,
- FluidWhite,
- FluidPurple
- };
-
- enum FluidsType {
- FluidNone = 0,
- FluidWater,
- FluidMana,
- FluidBeer,
- FluidOil,
- FluidBlood,
- FluidSlime,
- FluidMud,
- FluidLemonade,
- FluidMilk,
- FluidWine,
- FluidHealth,
- FluidUrine,
- FluidRum,
- FluidFruidJuice,
- FluidCoconutMilk,
- FluidTea,
- FluidMead
- };
-
- enum FightModes {
- FightOffensive = 1,
- FightBalanced = 2,
- FightDefensive = 3
- };
-
- enum ChaseModes {
- DontChase = 0,
- ChaseOpponent = 1
- };
-
- enum PVPModes {
- WhiteDove = 0,
- WhiteHand = 1,
- YellowHand = 2,
- RedFist = 3
- };
-
- enum PlayerSkulls {
- SkullNone = 0,
- SkullYellow,
- SkullGreen,
- SkullWhite,
- SkullRed,
- SkullBlack,
- SkullOrange
- };
-
- enum PlayerShields {
- ShieldNone = 0,
- ShieldWhiteYellow, // 1 party leader
- ShieldWhiteBlue, // 2 party member
- ShieldBlue, // 3 party member sexp off
- ShieldYellow, // 4 party leader sexp off
- ShieldBlueSharedExp, // 5 party member sexp on
- ShieldYellowSharedExp, // 6 // party leader sexp on
- ShieldBlueNoSharedExpBlink, // 7 party member sexp inactive guilty
- ShieldYellowNoSharedExpBlink, // 8 // party leader sexp inactive guilty
- ShieldBlueNoSharedExp, // 9 party member sexp inactive innocent
- ShieldYellowNoSharedExp, // 10 party leader sexp inactive innocent
- ShieldGray // 11 member of another party
- };
-
- enum PlayerEmblems {
- EmblemNone = 0,
- EmblemGreen,
- EmblemRed,
- EmblemBlue,
- EmblemMember,
- EmblemOther
- };
-
- enum CreatureIcons {
- NpcIconNone = 0,
- NpcIconChat,
- NpcIconTrade,
- NpcIconQuest,
- NpcIconTradeQuest
- };
-
- enum PlayerStates {
- IconNone = 0,
- IconPoison = 1,
- IconBurn = 2,
- IconEnergy = 4,
- IconDrunk = 8,
- IconManaShield = 16,
- IconParalyze = 32,
- IconHaste = 64,
- IconSwords = 128,
- IconDrowning = 256,
- IconFreezing = 512,
- IconDazzled = 1024,
- IconCursed = 2048,
- IconPartyBuff = 4096,
- IconPzBlock = 8192,
- IconPz = 16384,
- IconBleeding = 32768,
- IconHungry = 65536
- };
-
- enum MessageMode {
- MessageNone = 0,
- MessageSay = 1,
- MessageWhisper = 2,
- MessageYell = 3,
- MessagePrivateFrom = 4,
- MessagePrivateTo = 5,
- MessageChannelManagement = 6,
- MessageChannel = 7,
- MessageChannelHighlight = 8,
- MessageSpell = 9,
- MessageNpcFrom = 10,
- MessageNpcTo = 11,
- MessageGamemasterBroadcast = 12,
- MessageGamemasterChannel = 13,
- MessageGamemasterPrivateFrom = 14,
- MessageGamemasterPrivateTo = 15,
- MessageLogin = 16,
- MessageWarning = 17,
- MessageGame = 18,
- MessageFailure = 19,
- MessageLook = 20,
- MessageDamageDealed = 21,
- MessageDamageReceived = 22,
- MessageHeal = 23,
- MessageExp = 24,
- MessageDamageOthers = 25,
- MessageHealOthers = 26,
- MessageExpOthers = 27,
- MessageStatus = 28,
- MessageLoot = 29,
- MessageTradeNpc = 30,
- MessageGuild = 31,
- MessagePartyManagement = 32,
- MessageParty = 33,
- MessageBarkLow = 34,
- MessageBarkLoud = 35,
- MessageReport = 36,
- MessageHotkeyUse = 37,
- MessageTutorialHint = 38,
- MessageThankyou = 39,
- MessageMarket = 40,
- MessageBeyondLast = 41,
-
- // deprecated
- MessageMonsterYell = 42,
- MessageMonsterSay = 43,
- MessageRed = 44,
- MessageBlue = 45,
- MessageRVRChannel = 46,
- MessageRVRAnswer = 47,
- MessageRVRContinue = 48,
- MessageGameHighlight = 49,
- MessageNpcFromStartBlock = 50,
- LastMessage = 51,
- MessageInvalid = 255
- };
-
- enum GameFeature {
- GameProtocolChecksum = 1,
- GameAccountNames = 2,
- GameChallengeOnLogin = 3,
- GamePenalityOnDeath = 4,
- GameNameOnNpcTrade = 5,
- GameDoubleFreeCapacity = 6,
- GameDoubleExperience = 7,
- GameTotalCapacity = 8,
- GameSkillsBase = 9,
- GamePlayerRegenerationTime = 10,
- GameChannelPlayerList = 11,
- GamePlayerMounts = 12,
- GameEnvironmentEffect = 13,
- GameCreatureEmblems = 14,
- GameItemAnimationPhase = 15,
- GameMagicEffectU16 = 16,
- GamePlayerMarket = 17,
- GameSpritesU32 = 18,
- // 19 unused
- GameOfflineTrainingTime = 20,
- GamePurseSlot = 21,
- GameFormatCreatureName = 22,
- GameSpellList = 23,
- GameClientPing = 24,
- GameExtendedClientPing = 25,
- GameDoubleHealth = 28,
- GameDoubleSkills = 29,
- GameChangeMapAwareRange = 30,
- GameMapMovePosition = 31,
- GameAttackSeq = 32,
- GameBlueNpcNameColor = 33,
- GameDiagonalAnimatedText = 34,
- GameLoginPending = 35,
- GameNewSpeedLaw = 36,
- GameForceFirstAutoWalkStep = 37,
- GameMinimapRemove = 38,
- GameDoubleShopSellAmount = 39,
- GameContainerPagination = 40,
- GameThingMarks = 41,
- GameLooktypeU16 = 42,
- GamePlayerStamina = 43,
- GamePlayerAddons = 44,
- GameMessageStatements = 45,
- GameMessageLevel = 46,
- GameNewFluids = 47,
- GamePlayerStateU16 = 48,
- GameNewOutfitProtocol = 49,
- GamePVPMode = 50,
- GameWritableDate = 51,
- GameAdditionalVipInfo = 52,
- GameBaseSkillU16 = 53,
- GameCreatureIcons = 54,
- GameHideNpcNames = 55,
- GameSpritesAlphaChannel = 56,
- GamePremiumExpiration = 57,
- GameBrowseField = 58,
- GameEnhancedAnimations = 59,
- GameOGLInformation = 60,
- GameMessageSizeCheck = 61,
- GamePreviewState = 62,
- GameLoginPacketEncryption = 63,
- GameClientVersion = 64,
- GameContentRevision = 65,
- GameExperienceBonus = 66,
- GameAuthenticator = 67,
- GameUnjustifiedPoints = 68,
- GameSessionKey = 69,
- GameDeathType = 70,
-
- LastGameFeature = 101
- };
-
- enum PathFindResult {
- PathFindResultOk = 0,
- PathFindResultSamePosition,
- PathFindResultImpossible,
- PathFindResultTooFar,
- PathFindResultNoWay
- };
-
- enum PathFindFlags {
- PathFindAllowNotSeenTiles = 1,
- PathFindAllowCreatures = 2,
- PathFindAllowNonPathable = 4,
- PathFindAllowNonWalkable = 8
- };
-
- enum AutomapFlags {
- MapMarkTick = 0,
- MapMarkQuestion,
- MapMarkExclamation,
- MapMarkStar,
- MapMarkCross,
- MapMarkTemple,
- MapMarkKiss,
- MapMarkShovel,
- MapMarkSword,
- MapMarkFlag,
- MapMarkLock,
- MapMarkBag,
- MapMarkSkull,
- MapMarkDollar,
- MapMarkRedNorth,
- MapMarkRedSouth,
- MapMarkRedEast,
- MapMarkRedWest,
- MapMarkGreenNorth,
- MapMarkGreenSouth
- };
-
- enum VipState {
- VipStateOffline = 0,
- VipStateOnline = 1,
- VipStatePending = 2
- };
-
- enum SpeedFormula {
- SpeedFormulaA = 0,
- SpeedFormulaB,
- SpeedFormulaC,
- LastSpeedFormula
- };
-
- enum Blessings {
- BlessingNone = 0,
- BlessingAdventurer = 1,
- BlessingSpiritualShielding = 1 << 1,
- BlessingEmbraceOfTibia = 1 << 2,
- BlessingFireOfSuns = 1 << 3,
- BlessingWisdomOfSolitude = 1 << 4,
- BlessingSparkOfPhoenix = 1 << 5
- };
-
- enum DeathType {
- DeathRegular = 0,
- DeathBlessed = 1
- };
- }
-
- #endif
|