/
CombatProfile.h
238 lines (212 loc) · 8.56 KB
/
CombatProfile.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
//
// CombatProfileActionController.h
// Pocket Gnome
//
// Created by Josh on 1/19/10.
// Copyright 2010 Savory Software, LLC. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "IgnoreEntry.h"
#import "FileObject.h"
@class Unit;
@class Player;
@interface CombatProfile : FileObject {
NSMutableArray *_combatEntries;
NSMutableArray *_gatherList;
BOOL combatEnabled, onlyRespond, attackNeutralNPCs, attackHostileNPCs, attackPlayers, attackPets;
BOOL attackAnyLevel, ignoreElite, ignoreLevelOne, ignoreFlying;
// Healing
BOOL healingEnabled, autoFollowTarget, mountEnabled;
float healingRange;
// Party
UInt64 tankUnitGUID;
UInt64 assistUnitGUID;
UInt64 followUnitGUID;
float followDistanceToMove, yardsBehindTargetStart, yardsBehindTargetStop;
BOOL assistUnit, tankUnit, followUnit, partyEnabled;
BOOL disableRelease;
float attackRange, engageRange;
int attackLevelMin, attackLevelMax;
// New additions
BOOL partyDoNotInitiate;
BOOL partyIgnoreOtherFriendlies;
BOOL partyEmotes;
int partyEmotesIdleTime;
int partyEmotesInterval;
BOOL followEnabled;
BOOL followStopFollowingOOR;
float followStopFollowingRange;
BOOL followDoNotAssignLeader;
float followDoNotAssignLeaderRange;
BOOL followEnemyFlagCarriers;
BOOL followFriendlyFlagCarriers;
// PvP
BOOL pvpQueueForRandomBattlegrounds;
BOOL pvpStopHonor;
int pvpStopHonorTotal;
BOOL pvpLeaveIfInactive;
BOOL pvpDontMoveWithPreparation;
BOOL pvpWaitToLeave;
float pvpWaitToLeaveTime;
BOOL pvpStayInWintergrasp;
BOOL resurrectWithSpiritHealer;
BOOL checkForCampers;
float checkForCampersRange;
BOOL avoidMobsWhenResurrecting;
float moveToCorpseRange;
BOOL partyLeaderWait;
float partyLeaderWaitRange;
// Looting and Gathering
BOOL DoGasClouds;
BOOL DoMining;
int MiningLevel;
BOOL DoHerbalism;
int HerbalismLevel;
float GatheringDistance;
BOOL DoNetherwingEggs;
BOOL ShouldLoot;
BOOL StopLoot;
BOOL DoSkinning;
int SkinningLevel;
BOOL DoNinjaSkin;
BOOL GatherUseCrystallized;
BOOL GatherNodesHostilePlayerNear;
float GatherNodesHostilePlayerNearRange;
BOOL GatherNodesFriendlyPlayerNear;
float GatherNodesFriendlyPlayerNearRange;
BOOL GatherNodesMobNear;
float GatherNodesMobNearRange;
BOOL GatherNodesEliteNear;
float GatherNodesEliteNearRange;
unsigned GatherNodesHostilePlayerNearNum;
unsigned GatherNodesFriendlyPlayerNearNum;
unsigned GatherNodesMobNearNum;
unsigned GatherNodesEliteNearNum;
unsigned GatherNodesHostilePlayerNearQuality;
unsigned GatherNodesFriendlyPlayerNearQuality;
unsigned GatherNodesMobNearQuality;
unsigned GatherNodesEliteNearQuality;
BOOL DoFishing;
BOOL FishingApplyLure;
int FishingLureID;
BOOL FishingUseContainers;
BOOL FishingOnlySchools;
BOOL FishingRecast;
float FishingGatherDistance;
BOOL waitForResToFade;
}
+ (id)combatProfile;
+ (id)combatProfileWithName: (NSString*)name;
// ignore list
- (BOOL)unitShouldBeIgnored: (Unit*)unit;
- (unsigned)entryCount;
- (IgnoreEntry*)entryAtIndex: (unsigned)index;
- (void)addEntry: (IgnoreEntry*)entry;
- (void)removeEntry: (IgnoreEntry*)entry;
- (void)removeEntryAtIndex: (unsigned)index;
// gather list
- (unsigned)gatherCount;
- (BOOL)removeGatherItemAtIndex:(unsigned)index;
- (void)addGatherItem:(NSDictionary *)entry;
- (NSDictionary *)gatherItemAtIndex:(unsigned)index;
- (void)updateGatherItem:(id)value withKey:(NSString*)key atIndex:(unsigned)index;
- (BOOL)validGatherList;
@property (readwrite, retain) NSArray *entries;
@property (readwrite, retain) NSArray *gatherList;
@property (readwrite, assign) UInt64 tankUnitGUID;
@property (readwrite, assign) UInt64 assistUnitGUID;
@property (readwrite, assign) UInt64 followUnitGUID;
@property (readwrite, assign) BOOL combatEnabled;
@property (readwrite, assign) BOOL onlyRespond;
@property (readwrite, assign) BOOL attackNeutralNPCs;
@property (readwrite, assign) BOOL attackHostileNPCs;
@property (readwrite, assign) BOOL attackPlayers;
@property (readwrite, assign) BOOL attackPets;
@property (readwrite, assign) BOOL attackAnyLevel;
@property (readwrite, assign) BOOL ignoreElite;
@property (readwrite, assign) BOOL ignoreLevelOne;
@property (readwrite, assign) BOOL ignoreFlying;
@property (readwrite, assign) BOOL assistUnit;
@property (readwrite, assign) BOOL tankUnit;
@property (readwrite, assign) BOOL followUnit;
@property (readwrite, assign) BOOL partyEnabled;
@property (readwrite, assign) BOOL healingEnabled;
@property (readwrite, assign) BOOL autoFollowTarget;
@property (readwrite, assign) float followDistanceToMove;
@property (readwrite, assign) float yardsBehindTargetStart;
@property (readwrite, assign) float yardsBehindTargetStop;
@property (readwrite, assign) float healingRange;
@property (readwrite, assign) BOOL mountEnabled;
@property (readwrite, assign) BOOL disableRelease;
@property (readwrite, assign) float attackRange;
@property (readwrite, assign) float engageRange;
@property (readwrite, assign) int attackLevelMin;
@property (readwrite, assign) int attackLevelMax;
// New additions
@property (readwrite, assign) BOOL checkForCampers;
@property (readwrite, assign) BOOL partyDoNotInitiate;
@property (readwrite, assign) BOOL partyIgnoreOtherFriendlies;
@property (readwrite, assign) BOOL partyEmotes;
@property (readwrite, assign) int partyEmotesIdleTime;
@property (readwrite, assign) int partyEmotesInterval;
@property (readwrite, assign) BOOL followEnabled;
@property (readwrite, assign) BOOL followStopFollowingOOR;
@property (readwrite, assign) float followStopFollowingRange;
@property (readwrite, assign) BOOL followDoNotAssignLeader;
@property (readwrite, assign) float followDoNotAssignLeaderRange;
@property (readwrite, assign) BOOL followEnemyFlagCarriers;
@property (readwrite, assign) BOOL followFriendlyFlagCarriers;
@property (readwrite, assign) BOOL resurrectWithSpiritHealer;
@property (readwrite, assign) float checkForCampersRange;
@property (readwrite, assign) BOOL avoidMobsWhenResurrecting;
@property (readwrite, assign) float moveToCorpseRange;
@property (readwrite, assign) BOOL partyLeaderWait;
@property (readwrite, assign) float partyLeaderWaitRange;
// PvP
@property (readwrite, assign) BOOL pvpQueueForRandomBattlegrounds;
@property (readwrite, assign) BOOL pvpStopHonor;
@property (readwrite, assign) int pvpStopHonorTotal;
@property (readwrite, assign) BOOL pvpLeaveIfInactive;
@property (readwrite, assign) BOOL pvpDontMoveWithPreparation;
@property (readwrite, assign) BOOL pvpWaitToLeave;
@property (readwrite, assign) float pvpWaitToLeaveTime;
@property (readwrite, assign) BOOL pvpStayInWintergrasp;
// Gathering and Looting
@property (readwrite, assign) BOOL DoGasClouds;
@property (readwrite, assign) BOOL DoMining;
@property (readwrite, assign) int MiningLevel;
@property (readwrite, assign) BOOL DoHerbalism;
@property (readwrite, assign) int HerbalismLevel;
@property (readwrite, assign) float GatheringDistance;
@property (readwrite, assign) BOOL DoNetherwingEggs;
@property (readwrite, assign) BOOL ShouldLoot;
@property (readwrite, assign) BOOL StopLoot;
@property (readwrite, assign) BOOL DoSkinning;
@property (readwrite, assign) int SkinningLevel;
@property (readwrite, assign) BOOL DoNinjaSkin;
@property (readwrite, assign) BOOL GatherUseCrystallized;
@property (readwrite, assign) BOOL GatherNodesHostilePlayerNear;
@property (readwrite, assign) float GatherNodesHostilePlayerNearRange;
@property (readwrite, assign) BOOL GatherNodesFriendlyPlayerNear;
@property (readwrite, assign) float GatherNodesFriendlyPlayerNearRange;
@property (readwrite, assign) BOOL GatherNodesMobNear;
@property (readwrite, assign) float GatherNodesMobNearRange;
@property (readwrite, assign) BOOL GatherNodesEliteNear;
@property (readwrite, assign) float GatherNodesEliteNearRange;
@property (readwrite, assign) unsigned GatherNodesHostilePlayerNearNum;
@property (readwrite, assign) unsigned GatherNodesFriendlyPlayerNearNum;
@property (readwrite, assign) unsigned GatherNodesMobNearNum;
@property (readwrite, assign) unsigned GatherNodesEliteNearNum;
@property (readwrite, assign) unsigned GatherNodesHostilePlayerNearQuality;
@property (readwrite, assign) unsigned GatherNodesFriendlyPlayerNearQuality;
@property (readwrite, assign) unsigned GatherNodesMobNearQuality;
@property (readwrite, assign) unsigned GatherNodesEliteNearQuality;
@property (readwrite, assign) BOOL DoFishing;
@property (readwrite, assign) BOOL FishingApplyLure;
@property (readwrite, assign) int FishingLureID;
@property (readwrite, assign) BOOL FishingUseContainers;
@property (readwrite, assign) BOOL FishingOnlySchools;
@property (readwrite, assign) BOOL FishingRecast;
@property (readwrite, assign) float FishingGatherDistance;
@property (readwrite, assign) BOOL waitForResToFade;
@end