DB/ScreenEffect

From wowdev
Revision as of 11:52, 23 February 2016 by Mjollna (talk | contribs)

Jump to: navigation, search

This one is used for on-screen-effects that modify colors. They can be seen in several questlines such as those in Ebon Hold. The file got added in Wrath of the Lich King. Its called from several spells like BOTM - Jungle Brew - Jungle Madness Vision Effect (Apply Aura: #260 (61 ["BOTM - Jungle Madness"]).

1 ID int
2 Name str
3 Type int
  0: ffxEffectGlow
  1: ffxEffectDeath
  2: ffxEffectNetherWorld
  3: ffxEffectSwirlingFog
4 Col color, see in hex. rrggbbxx
5 edge int Screen Edge Size
6 bw int (the higher this is.. the more Black and White the screen will go)
7 unk null
8 LightParams iRefId
9 SoundAmbience iRefId
10 ZoneMusic iRefId

16464

struct ScreenEffectRec
{
  enum ScreenEffectType : unsigned int
  {
    ffxEffectGlow = 0,
    ffxEffectDeath = 1,
    ffxEffectNetherWorld = 2,
    ffxEffectSwirlingFog = 3,
    ffxEffectUnconscious = 4, // new in MoP or Cataclysm?
  };
  int id;
  const char* name;
  ScreenEffectType type; 
  union
  {
    int data[4];
    struct
    {
      int unused[3];
      int flags; // &2: use skybox from lightParams
    } glow;
    struct
    {
      int _1; // parameter for PassFogSeed. tint color?
      int _2; // parameter for PassPropagateFog: _2 / 255.0 * 0.9
      int _3; // parameter for PassFogCombine: _3 / 100.0
    } swirlingFog;
    struct
    {
      int _[3]; // parameters for PassGlowFade
      int flags; // &1: ?, &2: use skybox from lightParams
    } unconscious;
  } params;
  foreign_key<uint32_t, &LightParamsRec::m_ID> lightParamsId; // ignored unless params.*.flags & 2. Only uses skybox.
  foreign_key<uint32_t, &SoundAmbienceRec::m_ID> soundAmbienceId;
  foreign_key<uint32_t, &ZoneMusicRec::m_ID> zoneMusicId;
  int todOverride; // new with MoP or Cataclysm? -1 for none, [0, 1440]
};

6.0.1.18179

struct ScreenEffectRec {
  uint32_t m_id;
  stringref m_name;
  uint32_t m_effect;
  uint32_t m_param[4];
  foreign_key<uint32_t, &LightParamsRec::m_ID> m_lightParamsID;
  uint32_t m_lightParamsFadeIn;
  uint32_t m_lightParamsFadeOut;
  uint32_t m_lightFlags;
  foreign_key<uint32_t, &SoundAmbienceRec::m_ID> m_soundAmbienceID;
  foreign_key<uint32_t, &ZoneMusicRec::m_ID> m_zoneMusicID;
  uint32_t m_timeOfDayOverride;
  uint32_t m_effectMask;
};