Mercurial > mm7
view DecorationList.h @ 1243:766ec1e7f4ea
fixing monster portrait not drawing when rightclicking + out of bounds error when opening inventory
author | Grumpy7 |
---|---|
date | Sun, 09 Jun 2013 23:51:53 +0200 |
parents | 39eaa6b00141 |
children | 7ef4b64f6329 |
line wrap: on
line source
#pragma once /* 321 */ enum DECORATION_FLAGS { DECORATION_MOVE_THROUGH = 0x1, DECORATION_DONT_DRAW = 0x2, DECORATION_FLICKER_SLOW = 0x4, DECORATION_FICKER_AVERAGE = 0x8, DECORATION_FICKER_FAST = 0x10, DECORATION_MARKER = 0x20, DECORATION_SLOW_LOOP = 0x40, DECORATION_EMITS_FIRE = 0x80, DECORATION_SOUND_ON_DAWN = 0x100, DECORATION_SOUND_ON_DUSK = 0x200, DECORATION_EMITS_SMOKE = 0x400, }; /* 54 */ #pragma pack(push, 1) struct DecorationDesc { inline bool CanMoveThrough() {return (uFlags & DECORATION_MOVE_THROUGH) != 0;} inline bool DontDraw() {return (uFlags & DECORATION_DONT_DRAW) != 0;} inline bool SoundOnDawn() {return (uFlags & DECORATION_SOUND_ON_DAWN) != 0;} inline bool SoundOnDusk() {return (uFlags & DECORATION_SOUND_ON_DUSK) != 0;} char pName[32]; char field_20[32]; __int16 uType; unsigned __int16 uDecorationHeight; __int16 uRadius; __int16 uLightRadius; unsigned __int16 uSpriteID; __int16 uFlags; __int16 uSoundID; __int16 _pad; unsigned __int8 uColoredLightRed; unsigned __int8 uColoredLightGreen; unsigned __int8 uColoredLightBlue; char __padding; }; #pragma pack(pop) /* 55 */ #pragma pack(push, 1) struct DecorationList { inline DecorationList(): //----- (00458380) pDecorations(nullptr), uNumDecorations(0) {} void ToFile(); void FromFile(void *pSerialized); bool FromFileTxt(const char *Args); void InitializeDecorationSprite(unsigned int uDecID); unsigned __int16 GetDecorIdByName(const char *pName); unsigned int uNumDecorations; struct DecorationDesc *pDecorations; }; #pragma pack(pop) extern struct DecorationList *pDecorationList;