diff stru6.h @ 0:8b8875f5b359

Initial commit
author Nomad
date Fri, 05 Oct 2012 16:07:14 +0200
parents
children bcc051713d20
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stru6.h	Fri Oct 05 16:07:14 2012 +0200
@@ -0,0 +1,164 @@
+#pragma once
+#include "Render.h"
+
+
+/*  120 */
+#pragma pack(push, 1)
+struct stru6_stru1_indoor_sw_billboard
+{
+  //----- (004775B1) --------------------------------------------------------
+  inline stru6_stru1_indoor_sw_billboard()
+  {
+    field_10 = 0;
+    uNumVec4sInArray1 = 0;
+    uNumVec3sInArray2 = 0;
+    pArray1 = nullptr;
+    pArray2 = nullptr;
+  }
+
+  //----- (004775C4) --------------------------------------------------------
+  virtual ~stru6_stru1_indoor_sw_billboard()
+  {
+    if (pArray1)
+      delete [] pArray1;
+    pArray1 = nullptr;
+
+    if (pArray2)
+      delete [] pArray2;
+    pArray2 = nullptr;
+  }
+
+  int _4775ED(float a2);
+  int _477927(float a2);
+  int sub_477C61();
+  bool sub_477F63();
+  int sub_47802A();
+  void Initialize(int a2);
+  void _47829F_fireball_collision(float arg0, float a3, float a4, float a5, int a2);
+
+
+  unsigned int uNumVec4sInArray1;
+  struct stru16x *pArray1;
+  unsigned int uNumVec3sInArray2;
+  struct stru160 *pArray2;
+  int field_10;
+  int field_14[80];
+};
+#pragma pack(pop)
+
+
+/*  122 */
+#pragma pack(push, 1)
+struct PlayerBuffAnim
+{
+  __int16 bRender;
+  __int16 field_2;
+  int uSpellIconID;
+  __int16 uSpellID;
+  __int16 field_A;
+  int uSpellIconID_;
+};
+#pragma pack(pop)
+
+
+/*  307 */
+#pragma pack(push, 1)
+struct ProjectileAnim
+{
+  float srcX;
+  float srcY;
+  float srcZ;
+  float dstX;
+  float dstY;
+  float dstZ;
+  int uTextureID;
+};
+#pragma pack(pop)
+
+
+/*  306 */
+#pragma pack(push, 1)
+struct stru6_stru2
+{
+  int uSpellAnimLength;
+  float flt_4;
+  float flt_8;
+  float flt_C;
+};
+#pragma pack(pop)
+
+
+
+/*  121 */
+#pragma pack(push, 1)
+struct stru6
+{
+  //----- (004A7155) --------------------------------------------------------
+  stru6()
+  {
+    this->pPlayerBuffs[0].bRender = 0;
+    this->pPlayerBuffs[1].bRender = 0;
+    this->pPlayerBuffs[2].bRender = 0;
+    this->pPlayerBuffs[3].bRender = 0;
+    this->field_204 = 0;
+    this->uFadeTime = 0;
+    this->uNumProjectiles = 0;
+    this->array_0[0].uSpellAnimLength = 0;
+
+    pStru1 = new stru6_stru1_indoor_sw_billboard;
+    pStru1->Initialize(0xFF3C1Eu);
+  }
+  //----- (004A71DC) --------------------------------------------------------
+  ~stru6()
+  {
+    if (pStru1)
+      delete pStru1;
+    pStru1 = nullptr;
+  }
+
+  void DoAddProjectile(float srcX, float srcY, float srcZ, float dstX, float dstY, float dstZ, unsigned int uTextureID);
+  int DrawProjectiles();
+  void _4A73AA_hanging_trace_particles___like_fire_strike_ice_blast_etc(struct LayingItem *a2, unsigned int uDiffuse, unsigned int uTextureID);
+  void _4A75CC_single_spell_collision_particle(struct LayingItem *a1, unsigned int uDiffuse, unsigned int uTextureID);
+  void _4A7688_fireball_collision_particle(struct LayingItem *a2);
+  void _4A77FD_some_stuff_d3d(struct LayingItem *a1);
+  void _4A78AE_sparks_spell(struct LayingItem *a1);
+  void _4A7948_mind_blast_after_effect(struct LayingItem *a1);
+  bool AddMobileLight(struct LayingItem *a1, unsigned int uDiffuse, int uRadius);
+  void _4A7A66_miltiple_spell_collision_partifles___like_after_sparks_or_lightning(LayingItem *a1, unsigned int uDiffuse, unsigned int uTextureID, float a4);
+  void _4A7C07(struct LayingItem *a2);
+  void AddProjectile(struct LayingItem *a2, int a3, unsigned int uTextureID);
+  int _4A7E89_sparkles_on_actor_after_it_casts_buff(struct Actor *pActor, unsigned int uDiffuse);
+  void _4A7F74(int x, int y, int z);
+  int _4A806F(struct Actor *pActor);
+  void _4A80DC_some_stuff_sw(struct LayingItem *a2);
+  bool _4A81CA(struct LayingItem *a2);
+  int SetPlayerBuffAnim(unsigned __int16 uSpellID, unsigned __int16 uPlayerID);
+  void FadeScreen__like_Turn_Undead_and_mb_Armageddon(unsigned int uDiffuseColor, unsigned int uFadeTime);
+  int _4A8BFC();
+  HRESULT RenderSpecialEffects();
+  void DrawPlayerBuffAnims();
+  void LoadAnimations();
+
+
+  stru6_stru2 array_0[32];
+  int field_200;
+  int field_204;
+  PlayerBuffAnim pPlayerBuffs[4];
+  ProjectileAnim pProjectiles[32];
+  int uNumProjectiles;
+  stru6_stru1_indoor_sw_billboard *pStru1;
+  int field_5D0;
+  int uAnimLength;
+  int uFadeTime;
+  int uFadeTime2;
+  int uFadeColor;
+  unsigned int uTextureID_effpar1;
+  unsigned int uTextureID_effpar2;
+  unsigned int uTextureID_effpar3;
+  unsigned int uSpriteID_sp57c;
+  int field_5F4;
+};
+#pragma pack(pop)
+
+