Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
BattlegroundIC.h
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#ifndef SF_BATTLEGROUNDIC_H
7#define SF_BATTLEGROUNDIC_H
8
9#include "Battleground.h"
10#include "Language.h"
11#include "Object.h"
12
14{
15 1732, // Alliance
16 1735 // Horde
17};
18
35
37{
39
43
45
47
48 GO_BENCH_1 = 186896,
49 GO_BENCH_2 = 186922,
50 GO_BENCH_3 = 186899,
51 GO_BENCH_4 = 186904,
52 GO_BENCH_5 = 186897,
53
54 GO_BONFIRE_1 = 195376,
55 GO_BONFIRE_2 = 195208,
56 GO_BONFIRE_3 = 195210,
57 GO_BONFIRE_4 = 195207,
58 GO_BONFIRE_5 = 195209,
59 GO_BONFIRE_6 = 195377,
60
62
64
66
68
70
72
73 GO_CHAIR_1 = 195410,
74 GO_CHAIR_2 = 195414,
75 GO_CHAIR_3 = 160415,
76 GO_CHAIR_4 = 195418,
77 GO_CHAIR_5 = 195416,
78 GO_CHAIR_6 = 160410,
79 GO_CHAIR_7 = 160418,
80 GO_CHAIR_8 = 160416,
81 GO_CHAIR_9 = 160419,
82
83 GO_FLAGPOLE_1 = 195131,
84 GO_FLAGPOLE_2 = 195439,
85
88
90
92
96
98
100
102
105
109
110 GO_STOVE_1 = 174863,
111 GO_STOVE_2 = 160411,
112
113 GO_TELEPORTER_1 = 195314, // 195314 H-OUT 66549
114 GO_TELEPORTER_2 = 195313, // 195313 H-IN 66548
115
116 GO_TELEPORTER_3 = 195315, // 195315 A-OUT 66549
117 GO_TELEPORTER_4 = 195316, // 195316 A-IN 66548
118
120
122
124
125 GO_BRAZIER_1 = 195402,
126 GO_BRAZIER_2 = 195403,
127 GO_BRAZIER_3 = 195425,
128 GO_BRAZIER_4 = 195424,
129
131
133
138
143
148
153
158
163
168
171};
172
173#define MAX_REINFORCEMENTS 300
174
176{
177 WORKSHOP_UPDATE_TIME = 180000, // 3 minutes
178 DOCKS_UPDATE_TIME = 180000, // not sure if it is 3 minutes
179 IC_RESOURCE_TIME = 45000, // not sure, need more research
183};
184
189
190struct ICNpc
191{
195 float x;
196 float y;
197 float z;
198 float o;
199};
200
202{
204
208
214
221
226
239
241
244
246
248
250
253
262
264
266
270
272
274
279
281
283
288
293
295
298
302
315
322
329};
330
332{
368
371
376
381
386
391
396
404};
405
413
434
436{
437 {BG_IC_NPC_OVERLORD_AGMAR, NPC_OVERLORD_AGMAR, TEAM_HORDE, 1295.44f, -765.733f, 70.0541f, 0.0f}, //Overlord Agmar 1
438 {BG_IC_NPC_HIGH_COMMANDER_HALFORD_WYRMBANE, NPC_HIGH_COMMANDER_HALFORD_WYRMBANE, TEAM_ALLIANCE, 224.983f, -831.573f, 60.9034f, 0.0f}, //High Commander Halford Wyrmbane 2
439 {BG_IC_NPC_KOR_KRON_GUARD_1, NPC_KOR_KRON_GUARD, TEAM_HORDE, 1296.01f, -773.256f, 69.958f, 0.292168f}, // 3
440 {BG_IC_NPC_KOR_KRON_GUARD_2, NPC_KOR_KRON_GUARD, TEAM_HORDE, 1295.94f, -757.756f, 69.9587f, 6.02165f}, // 4
441 {BG_IC_NPC_KOR_KRON_GUARD_3, NPC_KOR_KRON_GUARD, TEAM_HORDE, 1295.09f, -760.927f, 69.9587f, 5.94311f}, // 5
442 {BG_IC_NPC_KOR_KRON_GUARD_4, NPC_KOR_KRON_GUARD, TEAM_HORDE, 1295.13f, -769.7f, 69.95f, 0.34f}, // 6
443
444 {BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_1, NPC_SEVEN_TH_LEGION_INFANTRY, TEAM_ALLIANCE, 223.969f, -822.958f, 60.8151f, 0.46337f}, // 7
445 {BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_2, NPC_SEVEN_TH_LEGION_INFANTRY, TEAM_ALLIANCE, 224.211f, -826.952f, 60.8188f, 6.25961f}, // 8
446 {BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_3, NPC_SEVEN_TH_LEGION_INFANTRY, TEAM_ALLIANCE, 223.119f, -838.386f, 60.8145f, 5.64857f}, // 9
447 {BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_4, NPC_SEVEN_TH_LEGION_INFANTRY, TEAM_ALLIANCE, 223.889f, -835.102f, 60.8201f, 6.21642f}, // 10
448
449 {BG_IC_NPC_KEEP_CANNON_1, NPC_KEEP_CANNON, TEAM_ALLIANCE, 415.825f, -754.634f, 87.799f, 1.78024f}, // 11
450 {BG_IC_NPC_KEEP_CANNON_2, NPC_KEEP_CANNON, TEAM_ALLIANCE, 410.142f, -755.332f, 87.7991f, 1.78024f}, // 12
451 {BG_IC_NPC_KEEP_CANNON_3, NPC_KEEP_CANNON, TEAM_ALLIANCE, 424.33f, -879.352f, 88.0446f, 0.436332f}, // 13
452 {BG_IC_NPC_KEEP_CANNON_4, NPC_KEEP_CANNON, TEAM_ALLIANCE, 425.602f, -786.646f, 87.7991f, 5.74213f}, // 14
453 {BG_IC_NPC_KEEP_CANNON_5, NPC_KEEP_CANNON, TEAM_ALLIANCE, 426.743f, -884.939f, 87.9613f, 0.436332f}, // 15
454 {BG_IC_NPC_KEEP_CANNON_6, NPC_KEEP_CANNON, TEAM_ALLIANCE, 404.736f, -755.495f, 87.7989f, 1.78024f}, // 16
455 {BG_IC_NPC_KEEP_CANNON_7, NPC_KEEP_CANNON, TEAM_ALLIANCE, 428.375f, -780.797f, 87.7991f, 5.79449f}, // 17
456 {BG_IC_NPC_KEEP_CANNON_8, NPC_KEEP_CANNON, TEAM_ALLIANCE, 429.175f, -890.436f, 88.0446f, 0.436332f}, // 18
457 {BG_IC_NPC_KEEP_CANNON_9, NPC_KEEP_CANNON, TEAM_ALLIANCE, 430.872f, -775.278f, 87.7991f, 5.88176f}, // 19
458 {BG_IC_NPC_KEEP_CANNON_10, NPC_KEEP_CANNON, TEAM_ALLIANCE, 408.056f, -911.283f, 88.0445f, 4.64258f}, // 20
459 {BG_IC_NPC_KEEP_CANNON_11, NPC_KEEP_CANNON, TEAM_ALLIANCE, 413.609f, -911.566f, 88.0447f, 4.66003f}, // 21
460 {BG_IC_NPC_KEEP_CANNON_12, NPC_KEEP_CANNON, TEAM_ALLIANCE, 402.554f, -910.557f, 88.0446f, 4.57276f}, // 22
461
462 {BG_IC_NPC_KEEP_CANNON_13, NPC_KEEP_CANNON, TEAM_HORDE, 1158.91f, -660.144f, 87.9332f, 0.750492f}, // 23
463 {BG_IC_NPC_KEEP_CANNON_14, NPC_KEEP_CANNON, TEAM_HORDE, 1156.22f, -866.809f, 87.8754f, 5.27089f}, // 24
464 {BG_IC_NPC_KEEP_CANNON_15, NPC_KEEP_CANNON, TEAM_HORDE, 1163.74f, -663.67f, 88.3571f, 0.558505f}, // 25
465 {BG_IC_NPC_KEEP_CANNON_16, NPC_KEEP_CANNON, TEAM_HORDE, 1135.18f, -683.896f, 88.0409f, 3.9619f}, // 26
466 {BG_IC_NPC_KEEP_CANNON_17, NPC_KEEP_CANNON, TEAM_HORDE, 1138.91f, -836.359f, 88.3728f, 2.18166f}, // 27
467 {BG_IC_NPC_KEEP_CANNON_18, NPC_KEEP_CANNON, TEAM_HORDE, 1162.08f, -863.717f, 88.358f, 5.48033f}, // 28
468 {BG_IC_NPC_KEEP_CANNON_19, NPC_KEEP_CANNON, TEAM_HORDE, 1167.13f, -669.212f, 87.9682f, 0.383972f}, // 29
469 {BG_IC_NPC_KEEP_CANNON_20, NPC_KEEP_CANNON, TEAM_HORDE, 1137.72f, -688.517f, 88.4023f, 3.9619f}, // 30
470 {BG_IC_NPC_KEEP_CANNON_21, NPC_KEEP_CANNON, TEAM_HORDE, 1135.29f, -840.878f, 88.0252f, 2.30383f}, // 31
471 {BG_IC_NPC_KEEP_CANNON_22, NPC_KEEP_CANNON, TEAM_HORDE, 1144.33f, -833.309f, 87.9268f, 2.14675f}, // 32
472 {BG_IC_NPC_KEEP_CANNON_23, NPC_KEEP_CANNON, TEAM_HORDE, 1135.29f, -840.878f, 88.0252f, 2.30383f}, // 33
473 {BG_IC_NPC_KEEP_CANNON_24, NPC_KEEP_CANNON, TEAM_HORDE, 1142.59f, -691.946f, 87.9756f, 3.9619f}, // 34
474 {BG_IC_NPC_KEEP_CANNON_25, NPC_KEEP_CANNON, TEAM_HORDE, 1166.13f, -858.391f, 87.9653f, 5.63741f}, // 35
475};
476
478{
479 {751.8281f, -852.732666f, 12.5250978f, 1.46607661f}, // Demolisher
480 {761.809f, -854.2274f, 12.5263243f, 1.46607661f}, // Demolisher
481 {783.4722f, -853.9601f, 12.54775f, 1.71042264f}, // Demolisher
482 {793.055542f, -852.71875f, 12.5671329f, 1.71042264f}, // Demolisher
483 {773.680542f, -884.092041f, 16.8090363f, 1.58824956f} // Siege Engine
484};
485
487{
488 { 779.3125f, -342.972229f, 12.2104874f, 4.712389f }, // Glaive Throwers
489 { 790.029541f, -342.899323f, 12.2128582f, 4.71238f }, // Glaive Throwers
490};
491
493{
494 {757.283f, -341.7795f, 12.2113762f, 4.729842f}, // Catapults
495 {766.947937f, -342.053833f, 12.2009945f, 4.694f}, // Catapults
496 {800.3785f, -342.607635f, 12.1669979f, 4.6774f}, // Catapults
497 {810.7257f, -342.083344f, 12.1675768f, 4.6600f}, // Catapults
498};
499
501{
502 {827.958f, -994.467f, 134.071f, 0.0f}, // Gunship Portal
503 {738.613f, -1106.58f, 134.745f, 2.54818f}, // Gunship Portal
504 {672.283f, -1156.99f, 133.706f, 1.37881f}, // Gunship Portal
505};
506
507struct ICGo
508{
511 float x;
512 float y;
513 float z;
514 float o;
515};
516
518{
519 {BG_IC_GO_TELEPORTER_1_1, GO_TELEPORTER_1, 1143.25f, -779.599f, 48.629f, 1.64061f}, // Teleporter
520 {BG_IC_GO_TELEPORTER_1_2, GO_TELEPORTER_1, 1236.53f, -669.415f, 48.2729f, 0.104719f}, // Teleporter
521 {BG_IC_GO_TELEPORTER_2_1, GO_TELEPORTER_2, 1233.27f, -844.526f, 48.8824f, -0.0174525f}, // Teleporter
522 {BG_IC_GO_TELEPORTER_3_1, GO_TELEPORTER_3, 311.92f, -913.972f, 48.8159f, 3.08918f}, // Teleporter
523 {BG_IC_GO_TELEPORTER_2_2, GO_TELEPORTER_2, 1235.53f, -683.872f, 49.304f, -3.08918f}, // Teleporter
524 {BG_IC_GO_TELEPORTER_4_1, GO_TELEPORTER_4, 397.089f, -859.382f, 48.8993f, 1.64061f}, // Teleporter
525 {BG_IC_GO_TELEPORTER_3_2, GO_TELEPORTER_3, 324.635f, -749.128f, 49.3602f, 0.0174525f}, // Teleporter
526 {BG_IC_GO_TELEPORTER_3_3, GO_TELEPORTER_3, 425.675f, -857.09f, 48.5104f, -1.6057f}, // Teleporter
527 {BG_IC_GO_TELEPORTER_4_2, GO_TELEPORTER_4, 323.54f, -888.361f, 48.9197f, 0.0349063f}, // Teleporter
528 {BG_IC_GO_TELEPORTER_4_3, GO_TELEPORTER_4, 326.285f, -777.366f, 49.0208f, 3.12412f}, // Teleporter
529 {BG_IC_GO_TELEPORTER_1_3, GO_TELEPORTER_1, 1235.09f, -857.898f, 48.9163f, 3.07177f}, // Teleporter
530 {BG_IC_GO_TELEPORTER_2_3, GO_TELEPORTER_2, 1158.76f, -746.182f, 48.6277f, -1.51844f}, // Teleporter
531
532 {BG_IC_GO_TELEPORTER_EFFECTS_A_1, GO_TELEPORTER_EFFECTS_A, 425.686f, -857.092f, 48.51f, -1.62316f}, // Teleporter Effects (Alliance)
533 {BG_IC_GO_TELEPORTER_EFFECTS_A_2, GO_TELEPORTER_EFFECTS_A, 324.634f, -749.148f, 49.359f, 0.0174525f}, // Teleporter Effects (Alliance)
534 {BG_IC_GO_TELEPORTER_EFFECTS_A_3, GO_TELEPORTER_EFFECTS_A, 311.911f, -913.986f, 48.8157f, 3.08918f}, // Teleporter Effects (Alliance)
535 {BG_IC_GO_TELEPORTER_EFFECTS_A_4, GO_TELEPORTER_EFFECTS_A, 326.266f, -777.347f, 49.0215f, 3.12412f}, // Teleporter Effects (Alliance)
536 {BG_IC_GO_TELEPORTER_EFFECTS_A_5, GO_TELEPORTER_EFFECTS_A, 323.55f, -888.347f, 48.9198f, 0.0174525f}, // Teleporter Effects (Alliance)
537 {BG_IC_GO_TELEPORTER_EFFECTS_A_6, GO_TELEPORTER_EFFECTS_A, 397.116f, -859.378f, 48.8989f, 1.64061f}, // Teleporter Effects (Alliance)
538
539 {BG_IC_GO_TELEPORTER_EFFECTS_H_1, GO_TELEPORTER_EFFECTS_H, 1143.25f, -779.623f, 48.6291f, 1.62316f}, // Teleporter Effects (Horde)
540 {BG_IC_GO_TELEPORTER_EFFECTS_H_2, GO_TELEPORTER_EFFECTS_H, 1158.64f, -746.148f, 48.6277f, -1.50098f}, // Teleporter Effects (Horde)
541 {BG_IC_GO_TELEPORTER_EFFECTS_H_3, GO_TELEPORTER_EFFECTS_H, 1233.25f, -844.573f, 48.8836f, 0.0174525f}, // Teleporter Effects (Horde)
542 {BG_IC_GO_TELEPORTER_EFFECTS_H_4, GO_TELEPORTER_EFFECTS_H, 1235.07f, -857.957f, 48.9163f, 3.05433f}, // Teleporter Effects (Horde)
543 {BG_IC_GO_TELEPORTER_EFFECTS_H_5, GO_TELEPORTER_EFFECTS_H, 1236.46f, -669.344f, 48.2684f, 0.087266f}, // Teleporter Effects (Horde)
544 {BG_IC_GO_TELEPORTER_EFFECTS_H_6, GO_TELEPORTER_EFFECTS_H, 1235.6f, -683.806f, 49.3028f, -3.07177f}, // Teleporter Effects (Horde)
545};
546
548{
549 {BG_IC_GO_ALLIANCE_GATE_1, GO_ALLIANCE_GATE_1, 351.615f, -762.75f, 48.9162f, -1.5708f}, // Alliance Gate || Left
550 {BG_IC_GO_ALLIANCE_GATE_2, GO_ALLIANCE_GATE_2, 351.024f, -903.326f, 48.9247f, 1.5708f}, // Alliance Gate || Right
551 {BG_IC_GO_ALLIANCE_GATE_3, GO_ALLIANCE_GATE_3, 413.479f, -833.95f, 48.5238f, 3.14159f}, // Alliance Gate || Front
552
553 {BG_IC_GO_HORDE_GATE_1, GO_HORDE_GATE_1, 1150.9f, -762.606f, 47.5077f, 3.14159f}, // Horde Gate || Front
554 {BG_IC_GO_HORDE_GATE_2, GO_HORDE_GATE_2, 1218.74f, -851.155f, 48.2533f, -1.5708f}, // Horde Gate || Left
555 {BG_IC_GO_HORDE_GATE_3, GO_HORDE_GATE_3, 1217.9f, -676.948f, 47.6341f, 1.5708f}, // Horde Gate || Right
556
557 {BG_IC_GO_HORDE_BANNER, GO_HORDE_BANNER, 1284.76f, -705.668f, 48.9163f, -3.08918f}, // Horde Banner
558 {BG_IC_GO_ALLIANCE_BANNER, GO_ALLIANCE_BANNER, 299.153f, -784.589f, 48.9162f, -0.157079f}, // Alliance Banner
559
560 {BG_IC_GO_WORKSHOP_BANNER, GO_WORKSHOP_BANNER, 776.229f, -804.283f, 6.45052f, 1.6057f}, // Workshop Banner
561 {BG_IC_GO_DOCKS_BANNER, GO_DOCKS_BANNER, 726.385f, -360.205f, 17.8153f, -1.62316f}, // Docks Banner
562 {BG_IC_GO_HANGAR_BANNER, GO_HANGAR_BANNER, 807.78f, -1000.07f, 132.381f, -1.93732f}, // Hangar Banner
563 {BG_IC_GO_QUARRY_BANNER, GO_QUARRY_BANNER, 251.016f, -1159.32f, 17.2376f, -2.25147f}, // Quarry Banner
564 {BG_IC_GO_REFINERY_BANNER, GO_REFINERY_BANNER, 1269.5f, -400.809f, 37.6253f, -1.76278f}, // Refinery Banner
565
566 {BG_IC_GO_BENCH_1, GO_BENCH_1, 834.208f, -461.826f, 22.3067f, 1.5708f}, // Bench
567 {BG_IC_GO_BENCH_2, GO_BENCH_2, 826.153f, -461.985f, 22.5149f, 1.5708f}, // Bench
568 {BG_IC_GO_BENCH_3, GO_BENCH_3, 817.446f, -470.47f, 25.372f, -1.56207f}, // Bench
569 {BG_IC_GO_BENCH_4, GO_BENCH_4, 827.001f, -474.415f, 25.372f, 1.57952f}, // Bench
570 {BG_IC_GO_BENCH_5, GO_BENCH_5, 819.264f, -461.961f, 22.7614f, 1.57952f}, // Bench
571
572 {BG_IC_GO_BONFIRE_1, GO_BONFIRE_1, 1162.91f, -734.578f, 48.8948f, -2.9845f}, // Bonfire
573 {BG_IC_GO_BONFIRE_2, GO_BONFIRE_2, 1282.34f, -799.762f, 87.1357f, -3.13286f}, // Bonfire
574 {BG_IC_GO_BONFIRE_3, GO_BONFIRE_3, 1358.06f, -732.178f, 87.1606f, -3.13284f}, // Bonfire
575 {BG_IC_GO_BONFIRE_4, GO_BONFIRE_4, 1281.76f, -732.844f, 87.1574f, -3.13246f}, // Bonfire
576 {BG_IC_GO_BONFIRE_5, GO_BONFIRE_5, 1358.81f, -797.899f, 87.2953f, 3.13312f}, // Bonfire
577 {BG_IC_GO_BONFIRE_6, GO_BONFIRE_6, 1162.21f, -790.543f, 48.9162f, 2.27765f}, // Bonfire
578
579 {BG_IC_GO_BRAZIER_1, GO_BRAZIER_1, 1262.21f, -751.358f, 48.8133f, 2.26893f}, // Brazier
580 {BG_IC_GO_BRAZIER_2, GO_BRAZIER_2, 1262.58f, -781.861f, 48.8132f, 2.04203f}, // Brazier
581 {BG_IC_GO_BRAZIER_3, GO_BRAZIER_3, 223.818f, -839.352f, 60.7917f, 1.09083f}, // Brazier
582 {BG_IC_GO_BRAZIER_4, GO_BRAZIER_4, 224.277f, -822.77f, 60.7917f, 2.06822f}, // Brazier
583
584 {BG_IC_GO_CHAIR_1, GO_CHAIR_1, 632.876f, -282.461f, 5.45364f, -0.851094f}, // Chair
585 {BG_IC_GO_CHAIR_2, GO_CHAIR_2, 635.796f, -276.295f, 5.48659f, -3.03273f}, // Chair
586 {BG_IC_GO_CHAIR_3_1, GO_CHAIR_3, 762.245f, -444.795f, 22.8526f, -1.98095f}, // Chair
587 {BG_IC_GO_CHAIR_4, GO_CHAIR_4, 632.156f, -304.503f, 5.4879f, 1.15603f}, // Chair
588 {BG_IC_GO_CHAIR_5, GO_CHAIR_5, 643.86f, -270.204f, 5.48898f, 2.36903f}, // Chair
589 {BG_IC_GO_CHAIR_6_1, GO_CHAIR_6, 902.234f, -455.508f, 18.3935f, -1.00356f}, // Chair
590 {BG_IC_GO_CHAIR_7, GO_CHAIR_7, 810.237f, -461.2f, 25.4627f, 1.5708f}, // Chair
591 {BG_IC_GO_CHAIR_3_2, GO_CHAIR_3, 1117.19f, -365.674f, 18.8456f, 0.968657f}, // Chair
592 {BG_IC_GO_CHAIR_6_2, GO_CHAIR_6, 1066.19f, -337.214f, 18.8225f, 0.453785f}, // Chair
593 {BG_IC_GO_CHAIR_8_1, GO_CHAIR_8, 798.324f, -444.951f, 22.5601f, -1.02102f}, // Chair
594 {BG_IC_GO_CHAIR_8_2, GO_CHAIR_8, 1081.81f, -358.637f, 18.5531f, 1.92859f}, // Chair
595 {BG_IC_GO_CHAIR_9, GO_CHAIR_9, 814.931f, -470.816f, 33.6373f, -3.12412f}, // Chair
596
597 {BG_IC_GO_DOODAD_HU_PORTCULLIS01_1, GO_DOODAD_HU_PORTCULLIS01, 401.024f, -780.724f, 49.9482f, -2.52896f}, // Doodad_HU_Portcullis01
598 {BG_IC_GO_DOODAD_HU_PORTCULLIS01_2, GO_DOODAD_HU_PORTCULLIS01, 399.802f, -885.208f, 50.1939f, 2.516f}, // Doodad_HU_Portcullis01
599
600 {BG_IC_GO_DOODAD_ND_HUMAN_GATE_CLOSEDFX_DOOR01, GO_DOODAD_ND_HUMAN_GATE_CLOSEDFX_DOOR01, 413.479f, -833.95f, 48.5238f, 3.14159f}, // Doodad_ND_Human_Gate_ClosedFX_Door01
601
602 {BG_IC_GO_DOODAD_PORTCULLISACTIVE01, GO_DOODAD_PORTCULLISACTIVE01, -832.595f, 51.4109f, -0.0261791f, 0.0f}, // Doodad_PortcullisActive01
603
604 {BG_IC_GO_DOODAD_PORTCULLISACTIVE02, GO_DOODAD_PORTCULLISACTIVE02, 273.033f, -832.199f, 51.4109f, -0.0261791f}, // Doodad_PortcullisActive02
605
606 {BG_IC_GO_DOODAD_VR_PORTCULLIS01_1, GO_DOODAD_VR_PORTCULLIS01, 1156.89f, -843.998f, 48.6322f, 0.732934f}, // Doodad_VR_Portcullis01
607 {BG_IC_GO_DOODAD_VR_PORTCULLIS01_2, GO_DOODAD_VR_PORTCULLIS01, 1157.05f, -682.36f, 48.6322f, -0.829132f}, // Doodad_VR_Portcullis01
608
609 {BG_IC_GO_FLAGPOLE_1_1, GO_FLAGPOLE_1, -400.809f, 37.6253f, -1.76278f, 0.0f}, // Flagpole
610 {BG_IC_GO_FLAGPOLE_2_1, GO_FLAGPOLE_2, 1284.76f, -705.668f, 48.9163f, -3.08918f}, // Flagpole
611 {BG_IC_GO_FLAGPOLE_2_2, GO_FLAGPOLE_2, 299.153f, -784.589f, 48.9162f, -0.157079f}, // Flagpole
612 {BG_IC_GO_FLAGPOLE_1_2, GO_FLAGPOLE_1, 726.385f, -360.205f, 17.8153f, -1.6057f}, // Flagpole
613 {BG_IC_GO_FLAGPOLE_1_3, GO_FLAGPOLE_1, 807.78f, -1000.07f, 132.381f, -1.91986f}, // Flagpole
614 {BG_IC_GO_FLAGPOLE_1_4, GO_FLAGPOLE_1, 776.229f, -804.283f, 6.45052f, 1.6057f}, // Flagpole
615 {BG_IC_GO_FLAGPOLE_1_5, GO_FLAGPOLE_1, 251.016f, -1159.32f, 17.2376f, -2.25147f}, // Flagpole
616 {BG_IC_GO_FLAGPOLE_1_6, GO_FLAGPOLE_1, 1269.502f, -400.809f, 37.62525f, -1.762782f}, // Flagpole
617
618 {BG_IC_GO_HORDE_KEEP_PORTCULLIS, GO_HORDE_KEEP_PORTCULLIS, 1283.05f, -765.878f, 50.8297f, -3.13286f}, // Horde Keep Portcullis
619
620 {BG_IC_GO_STOVE_1_1, GO_STOVE_1, 903.291f, -457.345f, 18.1356f, 2.23402f}, // Stove
621 {BG_IC_GO_STOVE_2_1, GO_STOVE_2, 761.462f, -446.684f, 22.5602f, 0.244344f}, // Stove
622 {BG_IC_GO_STOVE_1_2, GO_STOVE_1, 11068.13f, -336.373f, 18.5647f, -2.59181f}, // Stove
623 {BG_IC_GO_STOVE_2_2, GO_STOVE_2, 1118.32f, -363.969f, 18.5532f, -3.08918f}, // Stove
624
625 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_1, GO_HUGE_SEAFORIUM_BOMB_A, 297.3212f, -851.321167f, 48.91627f, -0.94247663f},
626 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_2, GO_HUGE_SEAFORIUM_BOMB_A, 298.104156f, -861.026062f, 48.916275f, -2.75761318f},
627 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_3, GO_HUGE_SEAFORIUM_BOMB_A, 300.371521f, -818.732666f, 48.91625f, 0.785396755f},
628 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_4, GO_HUGE_SEAFORIUM_BOMB_A, 302.1354f, -810.7083f, 48.91625f, -1.04719758f},
629
630 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_1, GO_HUGE_SEAFORIUM_BOMB_H, 1268.30908f, -745.783f, 48.9187775f, 0.785396755f},
631 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_2, GO_HUGE_SEAFORIUM_BOMB_H, 1268.50867f, -738.1215f, 48.9175f, -1.04719758f},
632 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_3, GO_HUGE_SEAFORIUM_BOMB_H, 1273.066f, -786.572937f, 48.9419174f, -0.94247663f},
633 {BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_4, GO_HUGE_SEAFORIUM_BOMB_H, 1273.849f, -796.2778f, 48.9364281f, -2.75761318f},
634
635 {BG_IC_GO_DOODAD_ND_WINTERORC_WALL_GATEFX_DOOR01, GO_DOODAD_ND_WINTERORC_WALL_GATEFX_DOOR01, 1150.9f, -762.606f, 47.0f, 3.14159f} // Doodad_ND_WinterOrc_Wall_GateFX_Door01 -> this was not sniffed because I only had alliance sniffs
636};
637
639{
640 {750.601f, -864.597f, 13.4754f, 1.93731f},
641 {785.509f, -864.715f, 13.3993f, 2.47837f}
642};
643
657
663
665{
682
688
694
700
706
712
718
724};
725
732
743
758
767
768const uint32 BG_IC_GraveyardIds[MAX_NODE_TYPES + 2] = { 0, 0, 1480, 1481, 1482, 1485, 1486, 1483, 1484 };
769
770const Position TransportMovementInfo = { 7.305609f, -0.095246f, 34.51022f, 0.0f };
771const Position TeleportToTransportPosition = { 661.0f, -1244.0f, 288.0f, 0.0f };
772
774{
775 {0.0f, 0.0f, 0.0f, 0.0f}, // no grave
776 {0.0f, 0.0f, 0.0f, 0.0f}, // no grave
777 {629.57f, -279.83f, 11.33f, 0.0f}, // dock
778 {780.729f, -1103.08f, 135.51f, 2.27f}, // hangar
779 {775.74f, -652.77f, 9.31f, 4.27f}, // workshop
780 {278.42f, -883.20f, 49.89f, 1.53f}, // alliance starting base
781 {1300.91f, -834.04f, 48.91f, 1.69f}, // horde starting base
782 {438.86f, -310.04f, 51.81f, 5.87f}, // last resort alliance
783 {1148.65f, -1250.98f, 16.60f, 1.74f}, // last resort horde
784};
785
787{
788 {-21.401f, -31.343f, 34.173f, 4.62057f},
789 {-12.1064f, -31.9697f, 34.3807f, 4.62057f},
790 {-2.4877f, -31.9885f, 34.8384f, 4.62057f},
791 {10.2664f, -32.0713f, 35.7357f, 4.62057f},
792 {19.4636f, -30.794f, 36.2254f, 4.83106f}
793};
794
796{
797 {-41.7122f, 23.1838f, 22.5605f, 1.60659f},
798 {-31.0354f, 25.1286f, 21.6921f, 1.60659f},
799 {-21.4492f, 25.8326f, 21.6309f, 1.60659f},
800 {-12.4734f, 26.321f, 21.6237f, 1.60659f},
801 {-2.81125f, 26.2077f, 21.6566f, 1.60659f}
802};
803
804// I.E: Hangar, Quarry, Graveyards .. etc
806{
807 uint32 gameobject_type; // with this we will get the GameObject of that point
808 uint32 gameobject_entry; // what gameobject entry is active here.
809 uint8 faction; // who has this node
810 ICNodePointType nodeType; // here we can specify if it is graveyards, hangar etc...
811 uint32 banners[4]; // the banners that have this point
812 bool needChange; // this is used for the 1 minute time period after the point is captured
813 uint32 timer; // the same use for needChange
814 uint32 last_entry; // the last gameobject_entry
815 uint32 worldStates[5]; // the worldstates that represent the node in the map
818};
819
821{
829};
830
836
844
846{
847public:
850
851 /* inherited from BattlegroundClass */
852 void AddPlayer(Player* player) OVERRIDE;
855 void PostUpdateImpl(uint32 diff) OVERRIDE;
856
857 void RemovePlayer(Player* player, uint64 guid, uint32 team) OVERRIDE;
858 void HandleAreaTrigger(Player* player, uint32 trigger) OVERRIDE;
860 void SpawnLeader(uint32 teamid);
861 void HandleKillUnit(Creature* unit, Player* killer) OVERRIDE;
862 void HandleKillPlayer(Player* player, Player* killer) OVERRIDE;
863 void EndBattleground(uint32 winner);
864 void EventPlayerClickedOnFlag(Player* source, GameObject* /*target_obj*/) OVERRIDE;
865
866 void EventPlayerDamagedGO(Player* /*player*/, GameObject* go, uint32 eventType) OVERRIDE;
867 void DestroyGate(Player* player, GameObject* go) OVERRIDE;
868
870
871 /* Scorekeeping */
872 void UpdatePlayerScore(Player* player, uint32 type, uint32 value, bool doAddHonor = true) OVERRIDE;
873
875
876 void DoAction(uint32 action, uint64 var) OVERRIDE;
877
879
880 uint32 GetNodeState(uint8 nodeType) const { return (uint8)nodePoint[nodeType].nodeState; }
881
883
884 bool IsSpellAllowed(uint32 spellId, Player const* player) const OVERRIDE;
885private:
894
897
898 uint32 GetNextBanner(ICNodePoint* nodePoint, uint32 team, bool returnDefinitve);
899
901 {
902 uint32 i = 0;
903 switch (id)
904 {
905 case GO_HORDE_GATE_1: i = BG_IC_H_FRONT; break;
906 case GO_HORDE_GATE_2: i = BG_IC_H_WEST; break;
907 case GO_HORDE_GATE_3: i = BG_IC_H_EAST; break;
908 case GO_ALLIANCE_GATE_3: i = BG_IC_A_FRONT; break;
909 case GO_ALLIANCE_GATE_1: i = BG_IC_A_WEST; break;
910 case GO_ALLIANCE_GATE_2: i = BG_IC_A_EAST; break;
911 }
912 return i;
913 }
914
916 {
917 uint32 uws = 0;
918
919 switch (id)
920 {
921 case GO_HORDE_GATE_1:
923 break;
924 case GO_HORDE_GATE_2:
926 break;
927 case GO_HORDE_GATE_3:
929 break;
932 break;
935 break;
938 break;
939 }
940 return uws;
941 }
942
944 void HandleCapturedNodes(ICNodePoint* nodePoint, bool recapture);
946};
947
948#endif
const uint32 BG_IC_GraveyardIds[MAX_NODE_TYPES+2]
HonorRewards
@ RESOURCE_HONOR_AMOUNT
@ WINNER_HONOR_AMOUNT
Actions
@ ACTION_TELEPORT_PLAYER_TO_TRANSPORT
ICNodePointType
@ NODE_TYPE_GRAVEYARD_A
@ NODE_TYPE_REFINERY
@ NODE_TYPE_DOCKS
@ NODE_TYPE_HANGAR
@ NODE_TYPE_QUARRY
@ MAX_NODE_TYPES
@ NODE_TYPE_WORKSHOP
@ NODE_TYPE_GRAVEYARD_H
creaturesIC
@ NPC_SIEGE_ENGINE_H
@ NPC_KEEP_CANNON
@ NPC_KOR_KRON_GUARD
@ NPC_SIEGE_ENGINE_A
@ NPC_HIGH_COMMANDER_HALFORD_WYRMBANE
@ NPC_GLAIVE_THROWER_A
@ NPC_GLAIVE_THROWER_H
@ NPC_OVERLORD_AGMAR
@ NPC_DEMOLISHER
@ NPC_CATAPULT
@ NPC_ALLIANCE_GUNSHIP_CANNON
@ NPC_HORDE_GUNSHIP_CANNON
@ NPC_SEVEN_TH_LEGION_INFANTRY
@ DOCKS_UPDATE_TIME
@ CLOSE_DOORS_TIME
@ IC_RESOURCE_TIME
@ BANNER_STATE_CHANGE_TIME
@ TRANSPORT_PERIOD_TIME
@ WORKSHOP_UPDATE_TIME
BG_IC_GOs
@ BG_IC_GO_BENCH_3
@ BG_IC_GO_BONFIRE_2
@ BG_IC_GO_TELEPORTER_3_2
@ BG_IC_GO_DOODAD_ND_WINTERORC_WALL_GATEFX_DOOR01
@ BG_IC_GO_HORDE_GATE_3
@ BG_IC_GO_CHAIR_8_2
@ BG_IC_GO_TELEPORTER_EFFECTS_H_5
@ BG_IC_GO_TELEPORTER_2_3
@ BG_IC_GO_TELEPORTER_EFFECTS_H_1
@ BG_IC_GO_TELEPORTER_4_3
@ BG_IC_GO_FLAGPOLE_1_1
@ BG_IC_GO_HANGAR_BANNER
@ BG_IC_GO_CHAIR_3_1
@ BG_IC_GO_HORDE_GATE_2
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_3
@ BG_IC_GO_CHAIR_7
@ BG_IC_GO_BENCH_4
@ BG_IC_GO_TELEPORTER_EFFECTS_A_3
@ BG_IC_GO_ALLIANCE_GATE_3
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_3
@ BG_IC_GO_BRAZIER_2
@ BG_IC_GO_DOODAD_PORTCULLISACTIVE02
@ BG_IC_GO_BONFIRE_3
@ BG_IC_GO_BONFIRE_6
@ BG_IC_GO_HORDE_BANNER
@ BG_IC_GO_STOVE_1_2
@ BG_IC_GO_CHAIR_5
@ BG_IC_GO_BENCH_5
@ BG_IC_GO_BENCH_1
@ BG_IC_GO_TELEPORTER_EFFECTS_A_6
@ BG_IC_GO_CHAIR_3_2
@ BG_IC_GO_HANGAR_TELEPORTER_3
@ BG_IC_GO_WORKSHOP_BANNER
@ BG_IC_GO_CHAIR_9
@ BG_IC_GO_ALLIANCE_BANNER
@ BG_IC_GO_TELEPORTER_1_2
@ BG_IC_GO_BRAZIER_3
@ BG_IC_GO_FLAGPOLE_1_4
@ BG_IC_GO_FLAGPOLE_1_2
@ BG_IC_GO_BONFIRE_1
@ BG_IC_GO_TELEPORTER_EFFECTS_A_2
@ BG_IC_GO_TELEPORTER_EFFECTS_H_6
@ BG_IC_GO_DOODAD_ND_HUMAN_GATE_CLOSEDFX_DOOR01
@ BG_IC_GO_CHAIR_2
@ BG_IC_GO_HANGAR_TELEPORTER_1
@ BG_IC_GO_ALLIANCE_GATE_1
@ BG_IC_GO_CHAIR_6_1
@ BG_IC_GO_TELEPORTER_3_1
@ BG_IC_GO_REFINERY_BANNER
@ BG_IC_GO_FLAGPOLE_1_3
@ BG_IC_GO_SEAFORIUM_BOMBS_1
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_4
@ BG_IC_GO_QUARRY_BANNER
@ BG_IC_GO_TELEPORTER_4_1
@ BG_IC_GO_TELEPORTER_EFFECTS_H_3
@ BG_IC_GO_STOVE_2_2
@ BG_IC_GO_CHAIR_6_2
@ BG_IC_GO_TELEPORTER_EFFECTS_A_4
@ BG_IC_GO_TELEPORTER_1_3
@ BG_IC_GO_DOODAD_VR_PORTCULLIS01_2
@ BG_IC_GO_SEAFORIUM_BOMBS_2
@ BG_IC_GO_DOODAD_HU_PORTCULLIS01_1
@ BG_IC_GO_BONFIRE_4
@ BG_IC_GO_FLAGPOLE_2_2
@ BG_IC_GO_CHAIR_4
@ BG_IC_GO_DOCKS_BANNER
@ BG_IC_GO_FLAGPOLE_1_5
@ BG_IC_GO_HANGAR_TELEPORTER_2
@ BG_IC_GO_HORDE_KEEP_PORTCULLIS
@ BG_IC_GO_TELEPORTER_EFFECTS_A_5
@ BG_IC_GO_BRAZIER_4
@ BG_IC_GO_STOVE_2_1
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_2
@ BG_IC_GO_BRAZIER_1
@ BG_IC_GO_TELEPORTER_EFFECTS_A_1
@ BG_IC_GO_FLAGPOLE_2_1
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_1
@ BG_IC_GO_BENCH_2
@ BG_IC_GO_TELEPORTER_EFFECTS_H_4
@ BG_IC_GO_BONFIRE_5
@ BG_IC_GO_DOODAD_VR_PORTCULLIS01_1
@ BG_IC_GO_HORDE_GATE_1
@ BG_IC_GO_TELEPORTER_3_3
@ BG_IC_GO_TELEPORTER_2_1
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_1
@ BG_IC_GO_STOVE_1_1
@ BG_IC_GO_TELEPORTER_EFFECTS_H_2
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_A_2
@ BG_IC_GO_CHAIR_1
@ BG_IC_GO_CHAIR_8_1
@ BG_IC_GO_ALLIANCE_GATE_2
@ BG_IC_GO_TELEPORTER_4_2
@ BG_IC_GO_TELEPORTER_2_2
@ BG_IC_GO_DOODAD_HU_PORTCULLIS01_2
@ BG_IC_GO_FLAGPOLE_1_6
@ BG_IC_GO_HUGE_SEAFORIUM_BOMBS_H_4
@ BG_IC_GO_TELEPORTER_1_1
@ BG_IC_GO_DOODAD_PORTCULLISACTIVE01
const Position BG_IC_WorkshopVehicles[5]
ICDoorList
@ BG_IC_H_FRONT
@ BG_IC_A_WEST
@ BG_IC_H_WEST
@ BG_IC_A_FRONT
@ BG_IC_MAXDOOR
@ BG_IC_A_EAST
@ BG_IC_H_EAST
const Position hordeGunshipPassengers[5]
const Position TeleportToTransportPosition
@ SPELL_PARACHUTE
@ SPELL_DRIVING_CREDIT_GLAIVE
@ SPELL_DRIVING_CREDIT_SIEGE
@ SPELL_QUARRY
@ SPELL_SLOW_FALL
@ SPELL_DRIVING_CREDIT_DEMOLISHER
@ SPELL_BACK_DOOR_JOB_ACHIEVEMENT
@ SPELL_DESTROYED_VEHICLE_ACHIEVEMENT
@ SPELL_DRIVING_CREDIT_CATAPULT
@ SPELL_OIL_REFINERY
BG_IC_MaxSpawns
@ MAX_WORKSHOP_SPAWNS
@ MAX_SPIRIT_GUIDES_SPAWNS
@ MAX_GLAIVE_THROWERS_SPAWNS_PER_FACTION
@ MAX_NORMAL_GAMEOBJECTS_SPAWNS
@ MAX_AIRSHIPS_SPAWNS
@ MAX_WORKSHOP_BOMBS_SPAWNS_PER_FACTION
@ MAX_DOCKS_SPAWNS
@ MAX_NORMAL_NPCS_SPAWNS
@ MAX_CATAPULTS_SPAWNS_PER_FACTION
@ MAX_DEMOLISHERS_SPAWNS_PER_FACTION
@ MAX_FORTRESS_TELEPORTERS_SPAWNS
@ MAX_FORTRESS_GATES_SPAWNS
@ MAX_HANGAR_TELEPORTERS_SPAWNS
const uint32 BG_IC_Factions[2]
ICWorldStates
@ BG_IC_HANGAR_CONTROLLED_H
@ BG_IC_GATE_WEST_A_WS_OPEN
@ BG_IC_QUARRY_CONTROLLED_H
@ BG_IC_HANGAR_CONTROLLED_A
@ BG_IC_HORDE_RENFORT
@ BG_IC_QUARRY_CONTROLLED_A
@ BG_IC_WORKSHOP_CONFLICT_A
@ BG_IC_WORKSHOP_CONTROLLED_H
@ BG_IC_GATE_FRONT_A_WS_OPEN
@ BG_IC_HORDE_RENFORT_SET
@ BG_IC_GATE_FRONT_H_WS_OPEN
@ BG_IC_QUARRY_CONFLICT_A
@ BG_IC_HORDE_KEEP_CONTROLLED_A
@ BG_IC_HORDE_KEEP_UNCONTROLLED
@ BG_IC_HORDE_KEEP_CONFLICT_H
@ BG_IC_GATE_FRONT_A_WS_CLOSED
@ BG_IC_WORKSHOP_UNCONTROLLED
@ BG_IC_HORDE_KEEP_CONFLICT_A
@ BG_IC_GATE_EAST_H_WS_OPEN
@ BG_IC_GATE_WEST_H_WS_OPEN
@ BG_IC_WORKSHOP_CONTROLLED_A
@ BG_IC_GATE_FRONT_H_WS_CLOSED
@ BG_IC_DOCKS_UNCONTROLLED
@ BG_IC_REFINERY_CONTROLLED_A
@ BG_IC_GATE_EAST_H_WS_CLOSED
@ BG_IC_QUARRY_CONFLICT_H
@ BG_IC_WORKSHOP_CONFLICT_H
@ BG_IC_GATE_WEST_H_WS_CLOSED
@ BG_IC_HANGAR_CONFLICT_A
@ BG_IC_ALLIANCE_RENFORT_SET
@ BG_IC_ALLIANCE_KEEP_UNCONTROLLED
@ BG_IC_REFINERY_CONTROLLED_H
@ BG_IC_HANGAR_CONFLICT_H
@ BG_IC_ALLIANCE_KEEP_CONTROLLED_H
@ BG_IC_HORDE_KEEP_CONTROLLED_H
@ BG_IC_GATE_WEST_A_WS_CLOSED
@ BG_IC_HANGAR_UNCONTROLLED
@ BG_IC_ALLIANCE_KEEP_CONFLICT_A
@ BG_IC_DOCKS_CONTROLLED_H
@ BG_IC_ALLIANCE_KEEP_CONTROLLED_A
@ BG_IC_GATE_EAST_A_WS_OPEN
@ BG_IC_QUARRY_UNCONTROLLED
@ BG_IC_REFINERY_CONFLICT_H
@ BG_IC_ALLIANCE_RENFORT
@ BG_IC_ALLIANCE_KEEP_CONFLICT_H
@ BG_IC_GATE_EAST_A_WS_CLOSED
@ BG_IC_DOCKS_CONTROLLED_A
@ BG_IC_DOCKS_CONFLICT_A
@ BG_IC_DOCKS_CONFLICT_H
@ BG_IC_REFINERY_UNCONTROLLED
@ BG_IC_REFINERY_CONFLICT_A
const float BG_IC_SpiritGuidePos[MAX_NODE_TYPES+2][4]
BG_IC_GateState
@ BG_IC_GATE_DESTROYED
@ BG_IC_GATE_OK
@ BG_IC_GATE_DAMAGED
const Position TransportMovementInfo
const ICGo BG_IC_ObjSpawnlocs[MAX_NORMAL_GAMEOBJECTS_SPAWNS]
const Position BG_IC_HangarTeleporters[3]
const ICNodePoint nodePointInitial[7]
const ICNpc BG_IC_NpcSpawnlocs[MAX_NORMAL_NPCS_SPAWNS]
BannersTypes
@ BANNER_A_CONTROLLED
@ BANNER_H_CONTESTED
@ BANNER_H_CONTROLLED
@ BANNER_A_CONTESTED
const Position workshopBombs[2]
const Position allianceGunshipPassengers[5]
BG_IC_Objectives
@ IC_OBJECTIVE_ASSAULT_BASE
@ IC_OBJECTIVE_DEFEND_BASE
ICNodeState
@ NODE_STATE_CONFLICT_H
@ NODE_STATE_CONTROLLED_A
@ NODE_STATE_CONTROLLED_H
@ NODE_STATE_UNCONTROLLED
@ NODE_STATE_CONFLICT_A
const Position BG_IC_DocksVehiclesGlaives[2]
const Position BG_IC_DocksVehiclesCatapults[4]
gameobjectsIC
@ GO_HORDE_BANNER_GRAVEYARD_A_CONT
@ GO_TELEPORTER_1
@ GO_REFRESHMENT_PORTAL
@ GO_WORKSHOP_BANNER
@ GO_ALLIANCE_BANNER
@ GO_TELEPORTER_3
@ GO_ALLIANCE_BANNER_GRAVEYARD_H_CONT
@ GO_TELEPORTER_EFFECTS_A
@ GO_BONFIRE_5
@ GO_ALLIANCE_GATE_3
@ GO_HORDE_BANNER_WORKSHOP_CONT
@ GO_CHAIR_5
@ GO_ALLIANCE_BANNER_HANGAR_CONT
@ GO_CHAIR_2
@ GO_TELEPORTER_4
@ GO_HORDE_BANNER_HANGAR_CONT
@ GO_BRAZIER_3
@ GO_BENCH_4
@ GO_ALLIANCE_BANNER_WORKSHOP_CONT
@ GO_STOVE_1
@ GO_HORDE_BANNER_GRAVEYARD_H_CONT
@ GO_DOODAD_PORTCULLISACTIVE02
@ GO_DOODAD_PORTCULLISACTIVE01
@ GO_HORDE_GATE_2
@ GO_HUGE_SEAFORIUM_BOMB_H
@ GO_STOVE_2
@ GO_HORDE_BANNER_QUARRY
@ GO_HORDE_GUNSHIP
@ GO_HORDE_BANNER_DOCK
@ GO_HUGE_SEAFORIUM_BOMB_A
@ GO_BENCH_3
@ GO_ALLIANCE_GUNSHIP_PORTAL_EFFECTS
@ GO_DOODAD_ND_WINTERORC_WALL_GATEFX_DOOR01
@ GO_HORDE_BANNER
@ GO_CHAIR_6
@ GO_HORDE_BANNER_GRAVEYARD_H
@ GO_HORDE_BANNER_DOCK_CONT
@ GO_TELEPORTER_EFFECTS_H
@ GO_REFINERY_BANNER
@ GO_HORDE_GUNSHIP_PORTAL_EFFECTS
@ GO_CHAIR_3
@ GO_BENCH_2
@ GO_FLAGPOLE_1
@ GO_BONFIRE_6
@ GO_CHAIR_8
@ GO_ALLIANCE_BANNER_DOCK
@ GO_BONFIRE_1
@ GO_BENCH_5
@ GO_GUNSHIP_PORTAL_1
@ GO_CHAIR_7
@ GO_HORDE_GATE_1
@ GO_CHAIR_4
@ GO_BONFIRE_4
@ GO_SEAFORIUM_BOMBS
@ GO_CHAIR_9
@ GO_HORDE_BANNER_QUARRY_CONT
@ GO_HORDE_BANNER_WORKSHOP
@ GO_DOODAD_ND_HUMAN_GATE_CLOSEDFX_DOOR01
@ GO_HORDE_BANNER_REFINERY_CONT
@ GO_DOODAD_HU_PORTCULLIS01
@ GO_BONFIRE_2
@ GO_ALLIANCE_BANNER_WORKSHOP
@ GO_ALLIANCE_GUNSHIP_PORTAL
@ GO_HORDE_KEEP_PORTCULLIS
@ GO_HANGAR_BANNER
@ GO_TELEPORTER_2
@ GO_BENCH_1
@ GO_ALLIANCE_GUNSHIP
@ GO_HORDE_BANNER_HANGAR
@ GO_ALLIANCE_BANNER_REFINERY_CONT
@ GO_DOODAD_VR_PORTCULLIS01
@ GO_QUARRY_BANNER
@ GO_DOCKS_BANNER
@ GO_ALLIANCE_BANNER_GRAVEYARD_A_CONT
@ GO_HORDE_BANNER_GRAVEYARD_A
@ GO_HORDE_GATE_3
@ GO_HORDE_BANNER_REFINERY
@ GO_ALLIANCE_GATE_2
@ GO_FLAGPOLE_2
@ GO_ALLIANCE_GATE_1
@ GO_BONFIRE_3
@ GO_HORDE_GUNSHIP_PORTAL
@ GO_BRAZIER_1
@ GO_ALLIANCE_BANNER_HANGAR
@ GO_ALLIANCE_BANNER_REFINERY
@ GO_ALLIANCE_BANNER_DOCK_CONT
@ GO_GUNSHIP_PORTAL_2
@ GO_BRAZIER_4
@ GO_BRAZIER_2
@ GO_ALLIANCE_BANNER_GRAVEYARD_H
@ GO_CHAIR_1
@ GO_ALLIANCE_BANNER_QUARRY_CONT
@ GO_ALLIANCE_BANNER_QUARRY
@ GO_ALLIANCE_BANNER_GRAVEYARD_A
BG_IC_NPCs
@ BG_IC_NPC_KEEP_CANNON_4
@ BG_IC_NPC_SPIRIT_GUIDE_6
@ BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_1
@ BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_2
@ BG_IC_NPC_CATAPULT_3_H
@ BG_IC_NPC_KEEP_CANNON_24
@ BG_IC_NPC_KEEP_CANNON_17
@ BG_IC_NPC_GLAIVE_THROWER_1_H
@ BG_IC_NPC_KOR_KRON_GUARD_3
@ BG_IC_NPC_KEEP_CANNON_22
@ BG_IC_NPC_KEEP_CANNON_14
@ BG_IC_NPC_KEEP_CANNON_11
@ BG_IC_NPC_DEMOLISHER_2_H
@ BG_IC_NPC_KEEP_CANNON_13
@ BG_IC_NPC_KOR_KRON_GUARD_4
@ BG_IC_NPC_KOR_KRON_GUARD_1
@ BG_IC_NPC_KEEP_CANNON_19
@ BG_IC_NPC_KEEP_CANNON_3
@ BG_IC_NPC_SIEGE_ENGINE_H
@ BG_IC_NPC_CATAPULT_4_H
@ BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_3
@ BG_IC_NPC_DEMOLISHER_1_H
@ BG_IC_NPC_SPIRIT_GUIDE_3
@ BG_IC_NPC_KEEP_CANNON_2
@ BG_IC_NPC_SPIRIT_GUIDE_4
@ BG_IC_NPC_KEEP_CANNON_16
@ BG_IC_NPC_CATAPULT_1_A
@ BG_IC_NPC_CATAPULT_1_H
@ BG_IC_NPC_DEMOLISHER_2_A
@ BG_IC_NPC_DEMOLISHER_1_A
@ BG_IC_NPC_SPIRIT_GUIDE_5
@ BG_IC_NPC_KEEP_CANNON_8
@ BG_IC_NPC_KEEP_CANNON_25
@ BG_IC_NPC_KEEP_CANNON_6
@ BG_IC_NPC_KEEP_CANNON_18
@ BG_IC_NPC_OVERLORD_AGMAR
@ BG_IC_NPC_CATAPULT_2_A
@ BG_IC_NPC_SIEGE_ENGINE_A
@ BG_IC_NPC_SPIRIT_GUIDE_7
@ BG_IC_NPC_DEMOLISHER_4_A
@ BG_IC_NPC_KEEP_CANNON_5
@ BG_IC_NPC_SEVEN_TH_LEGION_INFANTRY_4
@ BG_IC_NPC_KEEP_CANNON_12
@ BG_IC_NPC_DEMOLISHER_3_H
@ BG_IC_NPC_KEEP_CANNON_21
@ BG_IC_NPC_KEEP_CANNON_23
@ BG_IC_NPC_KEEP_CANNON_10
@ BG_IC_NPC_KEEP_CANNON_9
@ BG_IC_NPC_KEEP_CANNON_1
@ BG_IC_NPC_KEEP_CANNON_7
@ BG_IC_NPC_DEMOLISHER_3_A
@ BG_IC_NPC_CATAPULT_4_A
@ BG_IC_NPC_KOR_KRON_GUARD_2
@ BG_IC_NPC_GLAIVE_THROWER_1_A
@ BG_IC_NPC_CATAPULT_2_H
@ BG_IC_NPC_SPIRIT_GUIDE_1
@ BG_IC_NPC_GLAIVE_THROWER_2_A
@ BG_IC_NPC_HIGH_COMMANDER_HALFORD_WYRMBANE
@ BG_IC_NPC_SPIRIT_GUIDE_2
@ BG_IC_NPC_GLAIVE_THROWER_2_H
@ BG_IC_NPC_KEEP_CANNON_15
@ BG_IC_NPC_KEEP_CANNON_20
@ BG_IC_NPC_CATAPULT_3_A
@ BG_IC_NPC_DEMOLISHER_4_H
const ICGo BG_IC_Teleporters[MAX_FORTRESS_TELEPORTERS_SPAWNS]
std::uint8_t uint8
Definition Define.h:79
std::uint32_t uint32
Definition Define.h:77
#define OVERRIDE
Definition Define.h:60
std::uint64_t uint64
Definition Define.h:76
std::uint16_t uint16
Definition Define.h:78
@ LANG_BG_IC_QUARRY
Definition Language.h:976
@ LANG_BG_IC_HORDE_KEEP
Definition Language.h:963
@ LANG_BG_IC_ALLIANCE_KEEP
Definition Language.h:962
@ LANG_BG_IC_HANGAR
Definition Language.h:977
@ LANG_BG_IC_DOCKS
Definition Language.h:974
@ LANG_BG_IC_WORKSHOP
Definition Language.h:973
@ LANG_BG_IC_REFINERY
Definition Language.h:975
@ TEAM_NEUTRAL
@ TEAM_ALLIANCE
@ TEAM_HORDE
void EventPlayerClickedOnFlag(Player *source, GameObject *) OVERRIDE
void UpdatePlayerScore(Player *player, uint32 type, uint32 value, bool doAddHonor=true) OVERRIDE
void HandleKillPlayer(Player *player, Player *killer) OVERRIDE
void StartingEventOpenDoors() OVERRIDE
uint32 GetNextBanner(ICNodePoint *nodePoint, uint32 team, bool returnDefinitve)
void RemovePlayer(Player *player, uint64 guid, uint32 team) OVERRIDE
bool IsAllNodesControlledByTeam(uint32 team) const OVERRIDE
void EventPlayerDamagedGO(Player *, GameObject *go, uint32 eventType) OVERRIDE
uint32 GetNodeState(uint8 nodeType) const
Transport * gunshipHorde
BG_IC_GateState GateStatus[6]
void EndBattleground(uint32 winner)
void SpawnLeader(uint32 teamid)
void AddPlayer(Player *player) OVERRIDE
uint32 GetGateIDFromEntry(uint32 id)
void FillInitialWorldStates(WorldStateBuilder &builder) OVERRIDE
Transport * gunshipAlliance
void DoAction(uint32 action, uint64 var) OVERRIDE
void DestroyGate(Player *player, GameObject *go) OVERRIDE
bool IsSpellAllowed(uint32 spellId, Player const *player) const OVERRIDE
void HandleAreaTrigger(Player *player, uint32 trigger) OVERRIDE
uint16 factionReinforcements[2]
void HandleContestedNodes(ICNodePoint *nodePoint)
void PostUpdateImpl(uint32 diff) OVERRIDE
Post-update hook.
ICNodePoint nodePoint[7]
void HandleCapturedNodes(ICNodePoint *nodePoint, bool recapture)
uint32 closeFortressDoorsTimer
uint32 siegeEngineWorkshopTimer
void HandlePlayerResurrect(Player *player) OVERRIDE
uint32 GetWorldStateFromGateEntry(uint32 id, bool open)
WorldSafeLocsEntry const * GetClosestGraveYard(Player *player) OVERRIDE
void StartingEventCloseDoors() OVERRIDE
bool SetupBattleground() OVERRIDE
void UpdateNodeWorldState(ICNodePoint *nodePoint)
void HandleKillUnit(Creature *unit, Player *killer) OVERRIDE
float z
uint32 entry
float x
float o
float y
uint32 type
uint32 banners[4]
ICNodeState nodeState
ICNodePointType nodeType
uint32 gameobject_type
uint32 worldStates[5]
uint32 gameobject_entry
uint32 entry
uint32 type
uint32 team