Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
SpellTargeting.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#include "
Common.h
"
7
#include "
SpellTargeting.h
"
8
#include "
Util.h
"
9
10
uint32
GetTargetFlagMask
(
SpellTargetObjectTypes
objType)
11
{
12
switch
(objType)
13
{
14
case
TARGET_OBJECT_TYPE_DEST
:
15
return
TARGET_FLAG_DEST_LOCATION
;
16
case
TARGET_OBJECT_TYPE_UNIT_AND_DEST
:
17
return
TARGET_FLAG_DEST_LOCATION
|
TARGET_FLAG_UNIT
;
18
case
TARGET_OBJECT_TYPE_CORPSE_ALLY
:
19
return
TARGET_FLAG_CORPSE_ALLY
;
20
case
TARGET_OBJECT_TYPE_CORPSE_ENEMY
:
21
return
TARGET_FLAG_CORPSE_ENEMY
;
22
case
TARGET_OBJECT_TYPE_CORPSE
:
23
return
TARGET_FLAG_CORPSE_ALLY
|
TARGET_FLAG_CORPSE_ENEMY
;
24
case
TARGET_OBJECT_TYPE_UNIT
:
25
return
TARGET_FLAG_UNIT
;
26
case
TARGET_OBJECT_TYPE_GOBJ
:
27
return
TARGET_FLAG_GAMEOBJECT
;
28
case
TARGET_OBJECT_TYPE_GOBJ_ITEM
:
29
return
TARGET_FLAG_GAMEOBJECT_ITEM
;
30
case
TARGET_OBJECT_TYPE_ITEM
:
31
return
TARGET_FLAG_ITEM
;
32
case
TARGET_OBJECT_TYPE_SRC
:
33
return
TARGET_FLAG_SOURCE_LOCATION
;
34
default
:
35
return
TARGET_FLAG_NONE
;
36
}
37
}
38
39
bool
SpellImplicitTargetInfo::IsArea
()
const
40
{
41
return
GetSelectionCategory
() ==
TARGET_SELECT_CATEGORY_AREA
||
GetSelectionCategory
() ==
TARGET_SELECT_CATEGORY_CONE
;
42
}
43
44
SpellTargetSelectionCategories
SpellImplicitTargetInfo::GetSelectionCategory
()
const
45
{
46
return
_data
[
_target
].SelectionCategory;
47
}
48
49
SpellTargetReferenceTypes
SpellImplicitTargetInfo::GetReferenceType
()
const
50
{
51
return
_data
[
_target
].ReferenceType;
52
}
53
54
SpellTargetObjectTypes
SpellImplicitTargetInfo::GetObjectType
()
const
55
{
56
return
_data
[
_target
].ObjectType;
57
}
58
59
SpellTargetCheckTypes
SpellImplicitTargetInfo::GetCheckType
()
const
60
{
61
return
_data
[
_target
].SelectionCheckType;
62
}
63
64
SpellTargetDirectionTypes
SpellImplicitTargetInfo::GetDirectionType
()
const
65
{
66
return
_data
[
_target
].DirectionType;
67
}
68
69
float
SpellImplicitTargetInfo::CalcDirectionAngle
()
const
70
{
71
switch
(
GetDirectionType
())
72
{
73
case
TARGET_DIR_FRONT
:
74
return
0.0f;
75
case
TARGET_DIR_BACK
:
76
return
static_cast<
float
>
(
M_PI
);
77
case
TARGET_DIR_RIGHT
:
78
return
static_cast<
float
>
(-
M_PI
/ 2);
79
case
TARGET_DIR_LEFT
:
80
return
static_cast<
float
>
(
M_PI
/ 2);
81
case
TARGET_DIR_FRONT_RIGHT
:
82
return
static_cast<
float
>
(-
M_PI
/ 4);
83
case
TARGET_DIR_BACK_RIGHT
:
84
return
static_cast<
float
>
(-3 *
M_PI
/ 4);
85
case
TARGET_DIR_BACK_LEFT
:
86
return
static_cast<
float
>
(3 *
M_PI
/ 4);
87
case
TARGET_DIR_FRONT_LEFT
:
88
return
static_cast<
float
>
(
M_PI
/ 4);
89
case
TARGET_DIR_RANDOM
:
90
return
float(
rand_norm
()) *
static_cast<
float
>
(2 *
M_PI
);
91
default
:
92
return
0.0f;
93
}
94
}
95
96
Targets
SpellImplicitTargetInfo::GetTarget
()
const
97
{
98
return
_target
;
99
}
100
101
uint32
SpellImplicitTargetInfo::GetExplicitTargetMask
(
bool
& srcSet,
bool
& dstSet)
const
102
{
103
uint32
targetMask = 0;
104
if
(
GetTarget
() ==
TARGET_DEST_TRAJ
)
105
{
106
if
(!srcSet)
107
targetMask =
TARGET_FLAG_SOURCE_LOCATION
;
108
if
(!dstSet)
109
targetMask |=
TARGET_FLAG_DEST_LOCATION
;
110
}
111
else
112
{
113
switch
(
GetReferenceType
())
114
{
115
case
TARGET_REFERENCE_TYPE_SRC
:
116
if
(srcSet)
117
break
;
118
targetMask =
TARGET_FLAG_SOURCE_LOCATION
;
119
break
;
120
case
TARGET_REFERENCE_TYPE_DEST
:
121
if
(dstSet)
122
break
;
123
targetMask =
TARGET_FLAG_DEST_LOCATION
;
124
break
;
125
case
TARGET_REFERENCE_TYPE_TARGET
:
126
switch
(
GetObjectType
())
127
{
128
case
TARGET_OBJECT_TYPE_GOBJ
:
129
targetMask =
TARGET_FLAG_GAMEOBJECT
;
130
break
;
131
case
TARGET_OBJECT_TYPE_GOBJ_ITEM
:
132
targetMask =
TARGET_FLAG_GAMEOBJECT_ITEM
;
133
break
;
134
case
TARGET_OBJECT_TYPE_UNIT_AND_DEST
:
135
case
TARGET_OBJECT_TYPE_UNIT
:
136
case
TARGET_OBJECT_TYPE_DEST
:
137
switch
(
GetCheckType
())
138
{
139
case
TARGET_CHECK_ENEMY
:
140
targetMask =
TARGET_FLAG_UNIT_ENEMY
;
141
break
;
142
case
TARGET_CHECK_ALLY
:
143
targetMask =
TARGET_FLAG_UNIT_ALLY
;
144
break
;
145
case
TARGET_CHECK_PARTY
:
146
targetMask =
TARGET_FLAG_UNIT_PARTY
;
147
break
;
148
case
TARGET_CHECK_RAID
:
149
targetMask =
TARGET_FLAG_UNIT_RAID
;
150
break
;
151
case
TARGET_CHECK_PASSENGER
:
152
targetMask =
TARGET_FLAG_UNIT_PASSENGER
;
153
break
;
154
case
TARGET_CHECK_RAID_CLASS
:
155
// nobreak;
156
default
:
157
targetMask =
TARGET_FLAG_UNIT
;
158
break
;
159
}
160
break
;
161
default
:
162
break
;
163
}
164
break
;
165
default
:
166
break
;
167
}
168
}
169
170
switch
(
GetObjectType
())
171
{
172
case
TARGET_OBJECT_TYPE_SRC
:
173
srcSet =
true
;
174
break
;
175
case
TARGET_OBJECT_TYPE_DEST
:
176
case
TARGET_OBJECT_TYPE_UNIT_AND_DEST
:
177
dstSet =
true
;
178
break
;
179
default
:
180
break
;
181
}
182
return
targetMask;
183
}
184
185
SpellImplicitTargetInfo::StaticData
SpellImplicitTargetInfo::_data
[
TOTAL_SPELL_TARGETS
] =
186
{
187
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
//
188
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 1 TARGET_UNIT_CASTER
189
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 2 TARGET_UNIT_NEARBY_ENEMY
190
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 3 TARGET_UNIT_NEARBY_PARTY
191
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 4 TARGET_UNIT_NEARBY_ALLY
192
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 5 TARGET_UNIT_PET
193
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 6 TARGET_UNIT_TARGET_ENEMY
194
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_NONE
},
// 7 TARGET_UNIT_SRC_AREA_ENTRY
195
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_NONE
},
// 8 TARGET_UNIT_DEST_AREA_ENTRY
196
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 9 TARGET_DEST_HOME
197
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 10
198
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 11 TARGET_UNIT_SRC_AREA_UNK_11
199
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 12
200
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 13
201
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 14
202
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 15 TARGET_UNIT_SRC_AREA_ENEMY
203
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 16 TARGET_UNIT_DEST_AREA_ENEMY
204
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 17 TARGET_DEST_DB
205
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 18 TARGET_DEST_CASTER
206
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 19
207
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 20 TARGET_UNIT_CASTER_AREA_PARTY
208
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 21 TARGET_UNIT_TARGET_ALLY
209
{
TARGET_OBJECT_TYPE_SRC
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 22 TARGET_SRC_CASTER
210
{
TARGET_OBJECT_TYPE_GOBJ
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 23 TARGET_GAMEOBJECT_TARGET
211
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_FRONT
},
// 24 TARGET_UNIT_CONE_ENEMY_24
212
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 25 TARGET_UNIT_TARGET_ANY
213
{
TARGET_OBJECT_TYPE_GOBJ_ITEM
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 26 TARGET_GAMEOBJECT_ITEM_TARGET
214
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 27 TARGET_UNIT_MASTER
215
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 28 TARGET_DEST_DYNOBJ_ENEMY
216
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 29 TARGET_DEST_DYNOBJ_ALLY
217
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 30 TARGET_UNIT_SRC_AREA_ALLY
218
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 31 TARGET_UNIT_DEST_AREA_ALLY
219
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_LEFT
},
// 32 TARGET_DEST_CASTER_SUMMON
220
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 33 TARGET_UNIT_SRC_AREA_PARTY
221
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 34 TARGET_UNIT_DEST_AREA_PARTY
222
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 35 TARGET_UNIT_TARGET_PARTY
223
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 36 TARGET_DEST_CASTER_UNK_36
224
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_LAST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_PARTY
,
TARGET_DIR_NONE
},
// 37 TARGET_UNIT_LASTTARGET_AREA_PARTY
225
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_NONE
},
// 38 TARGET_UNIT_NEARBY_ENTRY
226
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 39 TARGET_DEST_CASTER_FISHING
227
{
TARGET_OBJECT_TYPE_GOBJ
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_NONE
},
// 40 TARGET_GAMEOBJECT_NEARBY_ENTRY
228
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_RIGHT
},
// 41 TARGET_DEST_CASTER_FRONT_RIGHT
229
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_RIGHT
},
// 42 TARGET_DEST_CASTER_BACK_RIGHT
230
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_LEFT
},
// 43 TARGET_DEST_CASTER_BACK_LEFT
231
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_LEFT
},
// 44 TARGET_DEST_CASTER_FRONT_LEFT
232
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ALLY
,
TARGET_DIR_NONE
},
// 45 TARGET_UNIT_TARGET_CHAINHEAL_ALLY
233
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_NONE
},
// 46 TARGET_DEST_NEARBY_ENTRY
234
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT
},
// 47 TARGET_DEST_CASTER_FRONT
235
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK
},
// 48 TARGET_DEST_CASTER_BACK
236
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RIGHT
},
// 49 TARGET_DEST_CASTER_RIGHT
237
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_LEFT
},
// 50 TARGET_DEST_CASTER_LEFT
238
{
TARGET_OBJECT_TYPE_GOBJ
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 51 TARGET_GAMEOBJECT_SRC_AREA
239
{
TARGET_OBJECT_TYPE_GOBJ
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 52 TARGET_GAMEOBJECT_DEST_AREA
240
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 53 TARGET_DEST_TARGET_ENEMY
241
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_FRONT
},
// 54 TARGET_UNIT_CONE_ENEMY_54
242
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 55 TARGET_DEST_CASTER_FRONT_LEAP
243
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_RAID
,
TARGET_DIR_NONE
},
// 56 TARGET_UNIT_CASTER_AREA_RAID
244
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_RAID
,
TARGET_DIR_NONE
},
// 57 TARGET_UNIT_TARGET_RAID
245
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_NEARBY
,
TARGET_CHECK_RAID
,
TARGET_DIR_NONE
},
// 58 TARGET_UNIT_NEARBY_RAID
246
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_ALLY
,
TARGET_DIR_FRONT
},
// 59 TARGET_UNIT_CONE_ALLY
247
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_ENTRY
,
TARGET_DIR_FRONT
},
// 60 TARGET_UNIT_CONE_ENTRY
248
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_RAID_CLASS
,
TARGET_DIR_NONE
},
// 61 TARGET_UNIT_TARGET_AREA_RAID_CLASS
249
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 62 TARGET_UNK_62
250
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 63 TARGET_DEST_TARGET_ANY
251
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT
},
// 64 TARGET_DEST_TARGET_FRONT
252
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK
},
// 65 TARGET_DEST_TARGET_BACK
253
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RIGHT
},
// 66 TARGET_DEST_TARGET_RIGHT
254
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_LEFT
},
// 67 TARGET_DEST_TARGET_LEFT
255
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_RIGHT
},
// 68 TARGET_DEST_TARGET_FRONT_RIGHT
256
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_RIGHT
},
// 69 TARGET_DEST_TARGET_BACK_RIGHT
257
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_LEFT
},
// 70 TARGET_DEST_TARGET_BACK_LEFT
258
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_LEFT
},
// 71 TARGET_DEST_TARGET_FRONT_LEFT
259
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 72 TARGET_DEST_CASTER_RANDOM
260
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 73 TARGET_DEST_CASTER_RADIUS
261
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 74 TARGET_DEST_TARGET_RANDOM
262
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 75 TARGET_DEST_TARGET_RADIUS
263
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CHANNEL
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 76 TARGET_DEST_CHANNEL_TARGET
264
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CHANNEL
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 77 TARGET_UNIT_CHANNEL_TARGET
265
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT
},
// 78 TARGET_DEST_DEST_FRONT
266
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK
},
// 79 TARGET_DEST_DEST_BACK
267
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RIGHT
},
// 80 TARGET_DEST_DEST_RIGHT
268
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_LEFT
},
// 81 TARGET_DEST_DEST_LEFT
269
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_RIGHT
},
// 82 TARGET_DEST_DEST_FRONT_RIGHT
270
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_RIGHT
},
// 83 TARGET_DEST_DEST_BACK_RIGHT
271
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_BACK_LEFT
},
// 84 TARGET_DEST_DEST_BACK_LEFT
272
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT_LEFT
},
// 85 TARGET_DEST_DEST_FRONT_LEFT
273
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 86 TARGET_DEST_DEST_RANDOM
274
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 87 TARGET_DEST_DEST
275
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 88 TARGET_DEST_DYNOBJ_NONE
276
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 89 TARGET_DEST_TRAJ
277
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 90 TARGET_UNIT_TARGET_MINIPET
278
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_RANDOM
},
// 91 TARGET_DEST_DEST_RADIUS
279
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 92 TARGET_UNIT_SUMMONER
280
{
TARGET_OBJECT_TYPE_CORPSE
,
TARGET_REFERENCE_TYPE_SRC
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_NONE
},
// 93 TARGET_CORPSE_SRC_AREA_ENEMY
281
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 94 TARGET_UNIT_VEHICLE
282
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_TARGET
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_PASSENGER
,
TARGET_DIR_NONE
},
// 95 TARGET_UNIT_TARGET_PASSENGER
283
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 96 TARGET_UNIT_PASSENGER_0
284
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 97 TARGET_UNIT_PASSENGER_1
285
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 98 TARGET_UNIT_PASSENGER_2
286
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 99 TARGET_UNIT_PASSENGER_3
287
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 100 TARGET_UNIT_PASSENGER_4
288
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 101 TARGET_UNIT_PASSENGER_5
289
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 102 TARGET_UNIT_PASSENGER_6
290
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 103 TARGET_UNIT_PASSENGER_7
291
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_ENEMY
,
TARGET_DIR_FRONT
},
// 104 TARGET_UNIT_CONE_ENEMY_104
292
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 105 TARGET_UNIT_UNK_105
293
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CHANNEL
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 106 TARGET_DEST_CHANNEL_CASTER
294
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_DEST
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 107 TARGET_UNK_DEST_AREA_UNK_107
295
{
TARGET_OBJECT_TYPE_GOBJ
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT
},
// 108 TARGET_GAMEOBJECT_CONE
296
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 109
297
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_CONE
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_FRONT
},
// 110 TARGET_DEST_UNK_110
298
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 111
299
{
TARGET_OBJECT_TYPE_DEST
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_DEFAULT
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 112
300
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 113
301
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 114
302
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 115
303
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 116
304
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 117
305
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 118
306
{
TARGET_OBJECT_TYPE_UNIT
,
TARGET_REFERENCE_TYPE_CASTER
,
TARGET_SELECT_CATEGORY_AREA
,
TARGET_CHECK_RAID
,
TARGET_DIR_NONE
},
// 119
307
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 120
308
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 121
309
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 122
310
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 123
311
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 124
312
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 125
313
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 126
314
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 127
315
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 128
316
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 129
317
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 130
318
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 131
319
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 132
320
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 133
321
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 134
322
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 135
323
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 136
324
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 137
325
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 138
326
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 139
327
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 140
328
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 141
329
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 142
330
{
TARGET_OBJECT_TYPE_NONE
,
TARGET_REFERENCE_TYPE_NONE
,
TARGET_SELECT_CATEGORY_NYI
,
TARGET_CHECK_DEFAULT
,
TARGET_DIR_NONE
},
// 143
331
};
Common.h
M_PI
#define M_PI
Definition
Common.h:192
uint32
std::uint32_t uint32
Definition
Define.h:77
Targets
Targets
Definition
SharedDefines.h:1610
TARGET_DEST_TRAJ
@ TARGET_DEST_TRAJ
Definition
SharedDefines.h:1694
TOTAL_SPELL_TARGETS
@ TOTAL_SPELL_TARGETS
Definition
SharedDefines.h:1748
GetTargetFlagMask
uint32 GetTargetFlagMask(SpellTargetObjectTypes objType)
Definition
SpellTargeting.cpp:10
SpellTargeting.h
SpellTargetSelectionCategories
SpellTargetSelectionCategories
Definition
SpellTargeting.h:44
TARGET_SELECT_CATEGORY_CONE
@ TARGET_SELECT_CATEGORY_CONE
Definition
SpellTargeting.h:49
TARGET_SELECT_CATEGORY_AREA
@ TARGET_SELECT_CATEGORY_AREA
Definition
SpellTargeting.h:50
TARGET_SELECT_CATEGORY_DEFAULT
@ TARGET_SELECT_CATEGORY_DEFAULT
Definition
SpellTargeting.h:46
TARGET_SELECT_CATEGORY_NEARBY
@ TARGET_SELECT_CATEGORY_NEARBY
Definition
SpellTargeting.h:48
TARGET_SELECT_CATEGORY_NYI
@ TARGET_SELECT_CATEGORY_NYI
Definition
SpellTargeting.h:45
TARGET_SELECT_CATEGORY_CHANNEL
@ TARGET_SELECT_CATEGORY_CHANNEL
Definition
SpellTargeting.h:47
SpellTargetCheckTypes
SpellTargetCheckTypes
Definition
SpellTargeting.h:80
TARGET_CHECK_PASSENGER
@ TARGET_CHECK_PASSENGER
Definition
SpellTargeting.h:88
TARGET_CHECK_PARTY
@ TARGET_CHECK_PARTY
Definition
SpellTargeting.h:85
TARGET_CHECK_ENEMY
@ TARGET_CHECK_ENEMY
Definition
SpellTargeting.h:83
TARGET_CHECK_DEFAULT
@ TARGET_CHECK_DEFAULT
Definition
SpellTargeting.h:81
TARGET_CHECK_ENTRY
@ TARGET_CHECK_ENTRY
Definition
SpellTargeting.h:82
TARGET_CHECK_RAID_CLASS
@ TARGET_CHECK_RAID_CLASS
Definition
SpellTargeting.h:87
TARGET_CHECK_ALLY
@ TARGET_CHECK_ALLY
Definition
SpellTargeting.h:84
TARGET_CHECK_RAID
@ TARGET_CHECK_RAID
Definition
SpellTargeting.h:86
TARGET_FLAG_GAMEOBJECT
@ TARGET_FLAG_GAMEOBJECT
Definition
SpellTargeting.h:25
TARGET_FLAG_NONE
@ TARGET_FLAG_NONE
Definition
SpellTargeting.h:13
TARGET_FLAG_UNIT_RAID
@ TARGET_FLAG_UNIT_RAID
Definition
SpellTargeting.h:16
TARGET_FLAG_UNIT_ENEMY
@ TARGET_FLAG_UNIT_ENEMY
Definition
SpellTargeting.h:21
TARGET_FLAG_CORPSE_ALLY
@ TARGET_FLAG_CORPSE_ALLY
Definition
SpellTargeting.h:29
TARGET_FLAG_ITEM
@ TARGET_FLAG_ITEM
Definition
SpellTargeting.h:18
TARGET_FLAG_UNIT_PASSENGER
@ TARGET_FLAG_UNIT_PASSENGER
Definition
SpellTargeting.h:34
TARGET_FLAG_GAMEOBJECT_ITEM
@ TARGET_FLAG_GAMEOBJECT_ITEM
Definition
SpellTargeting.h:28
TARGET_FLAG_DEST_LOCATION
@ TARGET_FLAG_DEST_LOCATION
Definition
SpellTargeting.h:20
TARGET_FLAG_UNIT_ALLY
@ TARGET_FLAG_UNIT_ALLY
Definition
SpellTargeting.h:22
TARGET_FLAG_SOURCE_LOCATION
@ TARGET_FLAG_SOURCE_LOCATION
Definition
SpellTargeting.h:19
TARGET_FLAG_UNIT
@ TARGET_FLAG_UNIT
Definition
SpellTargeting.h:15
TARGET_FLAG_CORPSE_ENEMY
@ TARGET_FLAG_CORPSE_ENEMY
Definition
SpellTargeting.h:23
TARGET_FLAG_UNIT_PARTY
@ TARGET_FLAG_UNIT_PARTY
Definition
SpellTargeting.h:17
SpellTargetDirectionTypes
SpellTargetDirectionTypes
Definition
SpellTargeting.h:92
TARGET_DIR_FRONT_RIGHT
@ TARGET_DIR_FRONT_RIGHT
Definition
SpellTargeting.h:98
TARGET_DIR_NONE
@ TARGET_DIR_NONE
Definition
SpellTargeting.h:93
TARGET_DIR_BACK
@ TARGET_DIR_BACK
Definition
SpellTargeting.h:95
TARGET_DIR_BACK_RIGHT
@ TARGET_DIR_BACK_RIGHT
Definition
SpellTargeting.h:99
TARGET_DIR_RIGHT
@ TARGET_DIR_RIGHT
Definition
SpellTargeting.h:96
TARGET_DIR_FRONT_LEFT
@ TARGET_DIR_FRONT_LEFT
Definition
SpellTargeting.h:101
TARGET_DIR_FRONT
@ TARGET_DIR_FRONT
Definition
SpellTargeting.h:94
TARGET_DIR_LEFT
@ TARGET_DIR_LEFT
Definition
SpellTargeting.h:97
TARGET_DIR_BACK_LEFT
@ TARGET_DIR_BACK_LEFT
Definition
SpellTargeting.h:100
TARGET_DIR_RANDOM
@ TARGET_DIR_RANDOM
Definition
SpellTargeting.h:102
SpellTargetObjectTypes
SpellTargetObjectTypes
Definition
SpellTargeting.h:64
TARGET_OBJECT_TYPE_UNIT
@ TARGET_OBJECT_TYPE_UNIT
Definition
SpellTargeting.h:68
TARGET_OBJECT_TYPE_ITEM
@ TARGET_OBJECT_TYPE_ITEM
Definition
SpellTargeting.h:72
TARGET_OBJECT_TYPE_CORPSE
@ TARGET_OBJECT_TYPE_CORPSE
Definition
SpellTargeting.h:73
TARGET_OBJECT_TYPE_UNIT_AND_DEST
@ TARGET_OBJECT_TYPE_UNIT_AND_DEST
Definition
SpellTargeting.h:69
TARGET_OBJECT_TYPE_NONE
@ TARGET_OBJECT_TYPE_NONE
Definition
SpellTargeting.h:65
TARGET_OBJECT_TYPE_DEST
@ TARGET_OBJECT_TYPE_DEST
Definition
SpellTargeting.h:67
TARGET_OBJECT_TYPE_GOBJ
@ TARGET_OBJECT_TYPE_GOBJ
Definition
SpellTargeting.h:70
TARGET_OBJECT_TYPE_CORPSE_ALLY
@ TARGET_OBJECT_TYPE_CORPSE_ALLY
Definition
SpellTargeting.h:76
TARGET_OBJECT_TYPE_CORPSE_ENEMY
@ TARGET_OBJECT_TYPE_CORPSE_ENEMY
Definition
SpellTargeting.h:75
TARGET_OBJECT_TYPE_GOBJ_ITEM
@ TARGET_OBJECT_TYPE_GOBJ_ITEM
Definition
SpellTargeting.h:71
TARGET_OBJECT_TYPE_SRC
@ TARGET_OBJECT_TYPE_SRC
Definition
SpellTargeting.h:66
SpellTargetReferenceTypes
SpellTargetReferenceTypes
Definition
SpellTargeting.h:54
TARGET_REFERENCE_TYPE_SRC
@ TARGET_REFERENCE_TYPE_SRC
Definition
SpellTargeting.h:59
TARGET_REFERENCE_TYPE_TARGET
@ TARGET_REFERENCE_TYPE_TARGET
Definition
SpellTargeting.h:57
TARGET_REFERENCE_TYPE_LAST
@ TARGET_REFERENCE_TYPE_LAST
Definition
SpellTargeting.h:58
TARGET_REFERENCE_TYPE_NONE
@ TARGET_REFERENCE_TYPE_NONE
Definition
SpellTargeting.h:55
TARGET_REFERENCE_TYPE_CASTER
@ TARGET_REFERENCE_TYPE_CASTER
Definition
SpellTargeting.h:56
TARGET_REFERENCE_TYPE_DEST
@ TARGET_REFERENCE_TYPE_DEST
Definition
SpellTargeting.h:60
rand_norm
double rand_norm(void)
Definition
Util.cpp:50
Util.h
SpellImplicitTargetInfo::GetDirectionType
SpellTargetDirectionTypes GetDirectionType() const
Definition
SpellTargeting.cpp:64
SpellImplicitTargetInfo::GetCheckType
SpellTargetCheckTypes GetCheckType() const
Definition
SpellTargeting.cpp:59
SpellImplicitTargetInfo::IsArea
bool IsArea() const
Definition
SpellTargeting.cpp:39
SpellImplicitTargetInfo::GetReferenceType
SpellTargetReferenceTypes GetReferenceType() const
Definition
SpellTargeting.cpp:49
SpellImplicitTargetInfo::GetSelectionCategory
SpellTargetSelectionCategories GetSelectionCategory() const
Definition
SpellTargeting.cpp:44
SpellImplicitTargetInfo::GetObjectType
SpellTargetObjectTypes GetObjectType() const
Definition
SpellTargeting.cpp:54
SpellImplicitTargetInfo::_data
static StaticData _data[TOTAL_SPELL_TARGETS]
Definition
SpellTargeting.h:185
SpellImplicitTargetInfo::_target
Targets _target
Definition
SpellTargeting.h:118
SpellImplicitTargetInfo::CalcDirectionAngle
float CalcDirectionAngle() const
Definition
SpellTargeting.cpp:69
SpellImplicitTargetInfo::GetExplicitTargetMask
uint32 GetExplicitTargetMask(bool &srcSet, bool &dstSet) const
Definition
SpellTargeting.cpp:101
SpellImplicitTargetInfo::GetTarget
Targets GetTarget() const
Definition
SpellTargeting.cpp:96
SpellImplicitTargetInfo::StaticData
Definition
SpellTargeting.h:136
src
server
game
Spells
SpellTargeting.cpp
Generated on
for Project SkyFire Core by
1.17.0