Mercurial > mm7
view DecorationList.h @ 908:e2c1cb9b46f6
m
author | Ritor1 |
---|---|
date | Mon, 22 Apr 2013 09:25:05 +0600 |
parents | 2f67762d04f6 |
children | 39eaa6b00141 |
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;} inline bool DontDraw() {return uFlags & DECORATION_DONT_DRAW;} inline bool SoundOnDawn() {return uFlags & DECORATION_SOUND_ON_DAWN;} inline bool SoundOnDusk() {return uFlags & DECORATION_SOUND_ON_DUSK;} 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;