0
|
1 #pragma once
|
|
2 #include "Render.h"
|
|
3
|
|
4
|
|
5 /* 120 */
|
|
6 #pragma pack(push, 1)
|
|
7 struct stru6_stru1_indoor_sw_billboard
|
|
8 {
|
|
9 //----- (004775B1) --------------------------------------------------------
|
|
10 inline stru6_stru1_indoor_sw_billboard()
|
|
11 {
|
|
12 field_10 = 0;
|
|
13 uNumVec4sInArray1 = 0;
|
|
14 uNumVec3sInArray2 = 0;
|
|
15 pArray1 = nullptr;
|
|
16 pArray2 = nullptr;
|
|
17 }
|
|
18
|
|
19 //----- (004775C4) --------------------------------------------------------
|
|
20 virtual ~stru6_stru1_indoor_sw_billboard()
|
|
21 {
|
|
22 if (pArray1)
|
|
23 delete [] pArray1;
|
|
24 pArray1 = nullptr;
|
|
25
|
|
26 if (pArray2)
|
|
27 delete [] pArray2;
|
|
28 pArray2 = nullptr;
|
|
29 }
|
|
30
|
|
31 int _4775ED(float a2);
|
|
32 int _477927(float a2);
|
|
33 int sub_477C61();
|
|
34 bool sub_477F63();
|
|
35 int sub_47802A();
|
|
36 void Initialize(int a2);
|
|
37 void _47829F_fireball_collision(float arg0, float a3, float a4, float a5, int a2);
|
|
38
|
|
39
|
|
40 unsigned int uNumVec4sInArray1;
|
|
41 struct stru16x *pArray1;
|
|
42 unsigned int uNumVec3sInArray2;
|
|
43 struct stru160 *pArray2;
|
|
44 int field_10;
|
|
45 int field_14[80];
|
|
46 };
|
|
47 #pragma pack(pop)
|
|
48
|
|
49
|
|
50 /* 122 */
|
|
51 #pragma pack(push, 1)
|
|
52 struct PlayerBuffAnim
|
|
53 {
|
|
54 __int16 bRender;
|
|
55 __int16 field_2;
|
|
56 int uSpellIconID;
|
|
57 __int16 uSpellID;
|
|
58 __int16 field_A;
|
|
59 int uSpellIconID_;
|
|
60 };
|
|
61 #pragma pack(pop)
|
|
62
|
|
63
|
|
64 /* 307 */
|
|
65 #pragma pack(push, 1)
|
|
66 struct ProjectileAnim
|
|
67 {
|
|
68 float srcX;
|
|
69 float srcY;
|
|
70 float srcZ;
|
|
71 float dstX;
|
|
72 float dstY;
|
|
73 float dstZ;
|
|
74 int uTextureID;
|
|
75 };
|
|
76 #pragma pack(pop)
|
|
77
|
|
78
|
|
79 /* 306 */
|
|
80 #pragma pack(push, 1)
|
|
81 struct stru6_stru2
|
|
82 {
|
|
83 int uSpellAnimLength;
|
|
84 float flt_4;
|
|
85 float flt_8;
|
|
86 float flt_C;
|
|
87 };
|
|
88 #pragma pack(pop)
|
|
89
|
|
90
|
|
91
|
|
92 /* 121 */
|
|
93 #pragma pack(push, 1)
|
|
94 struct stru6
|
|
95 {
|
|
96 //----- (004A7155) --------------------------------------------------------
|
|
97 stru6()
|
|
98 {
|
|
99 this->pPlayerBuffs[0].bRender = 0;
|
|
100 this->pPlayerBuffs[1].bRender = 0;
|
|
101 this->pPlayerBuffs[2].bRender = 0;
|
|
102 this->pPlayerBuffs[3].bRender = 0;
|
|
103 this->field_204 = 0;
|
|
104 this->uFadeTime = 0;
|
|
105 this->uNumProjectiles = 0;
|
|
106 this->array_0[0].uSpellAnimLength = 0;
|
|
107
|
|
108 pStru1 = new stru6_stru1_indoor_sw_billboard;
|
|
109 pStru1->Initialize(0xFF3C1Eu);
|
|
110 }
|
|
111 //----- (004A71DC) --------------------------------------------------------
|
|
112 ~stru6()
|
|
113 {
|
|
114 if (pStru1)
|
|
115 delete pStru1;
|
|
116 pStru1 = nullptr;
|
|
117 }
|
|
118
|
|
119 void DoAddProjectile(float srcX, float srcY, float srcZ, float dstX, float dstY, float dstZ, unsigned int uTextureID);
|
|
120 int DrawProjectiles();
|
|
121 void _4A73AA_hanging_trace_particles___like_fire_strike_ice_blast_etc(struct LayingItem *a2, unsigned int uDiffuse, unsigned int uTextureID);
|
|
122 void _4A75CC_single_spell_collision_particle(struct LayingItem *a1, unsigned int uDiffuse, unsigned int uTextureID);
|
|
123 void _4A7688_fireball_collision_particle(struct LayingItem *a2);
|
|
124 void _4A77FD_some_stuff_d3d(struct LayingItem *a1);
|
|
125 void _4A78AE_sparks_spell(struct LayingItem *a1);
|
|
126 void _4A7948_mind_blast_after_effect(struct LayingItem *a1);
|
|
127 bool AddMobileLight(struct LayingItem *a1, unsigned int uDiffuse, int uRadius);
|
|
128 void _4A7A66_miltiple_spell_collision_partifles___like_after_sparks_or_lightning(LayingItem *a1, unsigned int uDiffuse, unsigned int uTextureID, float a4);
|
|
129 void _4A7C07(struct LayingItem *a2);
|
|
130 void AddProjectile(struct LayingItem *a2, int a3, unsigned int uTextureID);
|
|
131 int _4A7E89_sparkles_on_actor_after_it_casts_buff(struct Actor *pActor, unsigned int uDiffuse);
|
|
132 void _4A7F74(int x, int y, int z);
|
|
133 int _4A806F(struct Actor *pActor);
|
|
134 void _4A80DC_some_stuff_sw(struct LayingItem *a2);
|
|
135 bool _4A81CA(struct LayingItem *a2);
|
|
136 int SetPlayerBuffAnim(unsigned __int16 uSpellID, unsigned __int16 uPlayerID);
|
|
137 void FadeScreen__like_Turn_Undead_and_mb_Armageddon(unsigned int uDiffuseColor, unsigned int uFadeTime);
|
|
138 int _4A8BFC();
|
|
139 HRESULT RenderSpecialEffects();
|
|
140 void DrawPlayerBuffAnims();
|
|
141 void LoadAnimations();
|
|
142
|
|
143
|
|
144 stru6_stru2 array_0[32];
|
|
145 int field_200;
|
|
146 int field_204;
|
|
147 PlayerBuffAnim pPlayerBuffs[4];
|
|
148 ProjectileAnim pProjectiles[32];
|
|
149 int uNumProjectiles;
|
|
150 stru6_stru1_indoor_sw_billboard *pStru1;
|
|
151 int field_5D0;
|
|
152 int uAnimLength;
|
|
153 int uFadeTime;
|
|
154 int uFadeTime2;
|
|
155 int uFadeColor;
|
|
156 unsigned int uTextureID_effpar1;
|
|
157 unsigned int uTextureID_effpar2;
|
|
158 unsigned int uTextureID_effpar3;
|
|
159 unsigned int uSpriteID_sp57c;
|
|
160 int field_5F4;
|
|
161 };
|
|
162 #pragma pack(pop)
|
|
163
|
|
164
|