-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMapScript.galaxy
5345 lines (4855 loc) · 258 KB
/
MapScript.galaxy
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
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
//==================================================================================================
//
// Generated Map Script
//
// Name: The Arcadia
//
//==================================================================================================
include "TriggerLibs/NativeLib"
include "TriggerLibs/SwarmLib"
//--------------------------------------------------------------------------------------------------
// Library Initialization
//--------------------------------------------------------------------------------------------------
void InitLibs () {
libNtve_InitLib();
libHots_InitLib();
}
//--------------------------------------------------------------------------------------------------
// Constants
//--------------------------------------------------------------------------------------------------
const int gv_cCHSLPlayerBoxSize = 176;
const int gv_cCHSLPlayerBoxExtra = 16;
const int gv_cCHSLPlayerBoxVerticalGap = 50;
const int gv_cCHSLPlayerBoxBorderSize = 40;
const int gv_cCHSLPlayerBoxnRows = 3;
const int gv_cCHSLPlayerBoxnCols = 2;
const int gv_cCHSLPlayerLabelExtraWidth = 24;
const int gv_cCHSLPlayerPortraitWidth = 120;
const int gv_cCHSLPlayerPortraitHeight = 120;
const int gv_cCHSLPlayerCheckmarkWidth = 160;
const int gv_cCHSLPlayerCheckmarkHeight = 160;
const int gv_cCHSLTimerBoxWidth = 180;
const int gv_cCHSLHeroButtonSize = 84;
const int gv_cCHSLHeroButtonIconSize = 76;
const int gv_cCHSLHeroButtonExtra = 4;
const int gv_cCHSLAbilityButtonSize = 100;
const int gv_cCHSLAbilityButtonIconSize = 92;
const int gv_cCHSLAbilityButtonExtra = 6;
const int gv_cCHSLHeaderHeight = 48;
const int gv_cCHSLHeaderGap = 4;
//--------------------------------------------------------------------------------------------------
// Global Structures
//--------------------------------------------------------------------------------------------------
struct gs_AbilityButton {
string lv_abilityIcon;
text lv_abilityTooltip;
text lv_abilityName;
};
struct gs_HeroButton {
string lv_hero;
string lv_icon;
text lv_tooltip;
int lv_iDNumber;
fixed lv_modelScale;
string lv_previewUnitType;
string lv_previewCamera;
};
//--------------------------------------------------------------------------------------------------
// Global Variables
//--------------------------------------------------------------------------------------------------
playergroup gv_wESTTEAM;
playergroup gv_eASTTEAM;
playergroup gv_humanPlayers;
string[16] gv_playerChampionTypes;
unit[16] gv_playerChampions;
point[4] gv_westteamspawnpoints;
point[4] gv_eastteamspawnpoints;
revealer[16] gv_debugrevealers;
fixed gv_aRLaunchPylonbase;
fixed gv_aRLaunchPylonratio;
fixed gv_aRPylonOverchargeattackbase;
fixed gv_aRPylonOverchargeattackratio;
fixed gv_aRCleavebase;
fixed gv_aRCleaveratio;
fixed gv_aRPersonalWarpattackbase;
fixed gv_aRPersonalWarpattackratio;
fixed gv_aRFluxclawsattackbase;
fixed gv_aRFluxclawsattackratio;
fixed gv_aRNutritiveVomitdirectbase;
fixed gv_aRNutritiveVomitdirectratio;
fixed gv_aRNutritiveVomithealbase;
fixed gv_aRNutritiveVomithealratio;
fixed gv_aRHookedTonguebase;
fixed gv_aRHookedTongueratio;
fixed gv_aRPouncebase;
fixed gv_aRPounceratio;
fixed gv_aRBombbase;
fixed gv_aRBombratio;
fixed gv_aRSnipebase;
fixed gv_aRSniperatio;
fixed gv_aRThrowBanelingdirectbase;
fixed gv_aRThrowBanelingdirectratio;
fixed gv_aRThrowBanelingDoTbase;
fixed gv_aRThrowBanelingDoTratio;
fixed gv_aRBileBlastdirectbase;
fixed gv_aRBileBlastdirectratio;
fixed gv_aRBileBlastzerglingattackbase;
fixed gv_aRBileBlastzerglingattackratio;
fixed gv_aRCorruptreflectbase;
fixed gv_aRCorruptreflectratio;
fixed gv_aRNydusWormdirectbase;
fixed gv_aRNydusWormdirectratio;
fixed gv_aRNydusWormroachattackbase;
fixed gv_aRNydusWormroachattackratio;
fixed gv_aRLightAspecthealbase;
fixed gv_aRLightAspecthealratio;
fixed gv_aRTorpedobase;
fixed gv_aRTorpedoratio;
fixed gv_aRDarkAspectbase;
fixed gv_aRDarkAspectratio;
fixed gv_aRGravityWellbase;
fixed gv_aRGravityWellratio;
fixed gv_aRSeekerBeambase;
fixed gv_aRSeekerBeamratio;
fixed gv_aRPurgedirectbase;
fixed gv_aRPurgedirectratio;
fixed gv_aRPurgebonusbase;
fixed gv_aRPurgebonusratio;
fixed gv_aRLongshockdamagebase;
fixed gv_aRLongshockdamageratio;
fixed gv_aRElectricRazorbase;
fixed gv_aRElectricRazorratio;
playergroup gv_playersnominimap;
playergroup gv_playerswithminimap;
fixed gv_aRSnapperbase;
fixed gv_aRSnapperratio;
fixed gv_aRRocketSentrybase;
fixed gv_aRRocketSentryratio;
fixed gv_aRFirefistGroundbase;
fixed gv_aRFirefistGroundratio;
fixed gv_aRFirefistAirbase;
fixed gv_aRFirefistAirratio;
fixed[9] gv_screamerrange;
fixed gv_screamerrangebonus;
fixed gv_screamerstartingrange;
fixed gv_aRPsionicStorminitialbase;
fixed gv_aRPsionicStorminitialratio;
fixed gv_aRPsionicStormDoTbase;
fixed gv_aRPsionicStormDoTratio;
fixed gv_aRRepeaterLancebase;
fixed gv_aRRepeaterLanceratio;
fixed gv_aRWildfireimpactbase;
fixed gv_aRWildfireimpactratio;
fixed gv_aRWildfirebonusbase;
fixed gv_aRWildfirebonusratio;
fixed gv_aRForceFieldbase;
fixed gv_aRForceFieldratio;
fixed gv_aRBlueFlamebase;
fixed gv_aRBlueFlameratio;
fixed gv_aRTurbobase;
fixed gv_aRTurboratio;
fixed gv_aRNapalmSpraybase;
fixed gv_aRNapalmSprayratio;
fixed gv_aROilPuddlefirebase;
fixed gv_aROilPuddlefireratio;
fixed gv_aRTwingalebase;
fixed gv_aRTwingaleratio;
fixed gv_aRGlacialTrailimpactbase;
fixed gv_aRGlacialTrailimpactratio;
fixed gv_aRGlacialTrailDoTbase;
fixed gv_aRGlacialTrailDoTratio;
fixed gv_aRFrostbiteattackbase;
fixed gv_aRFrostbiteattackratio;
fixed gv_aRIcebreakerbase;
fixed gv_aRIcebreakerratio;
fixed gv_aRThatawayattackbase;
fixed gv_aRThatawayattackratio;
fixed gv_aRLungebase;
fixed gv_aRLungeratio;
fixed gv_aRGraviticStompbase;
fixed gv_aRGraviticStompratio;
fixed gv_aRMaimattackbase;
fixed gv_aRMaimattackratio;
fixed gv_aRRadarMinebase;
fixed gv_aRRadarMineratio;
int gv_maximumRadarMines;
int gv_siegeMinionWaveCurrent;
int gv_siegeMinionInterval;
fixed gv_minionSpawnInterval;
timer gv_minionSpawnTimer;
point[3][3][3][4] gv_minionSpawnPoints;
int gv_jungleRespawnTime;
unitgroup[3][5] gv_jungleCamps;
timer[3][5] gv_jungleTimers;
int[3][5] gv_jungleTimerTextBoxes;
int gv_jungleInitialDelay;
fixed gv_monsterUpgradeInterval;
timer gv_monsterUpgradeTimer;
int gv_upgradeLevel;
int[3] gv_points;
int[3] gv_powerPoints;
fixed gv_pointsSearchRadius;
int gv_pointValueBase;
int gv_meleeModifier;
int gv_casterModifier;
int gv_siegeModifier;
fixed gv_aIKillMultiplier;
int gv_heroKillPointValueBase;
revealer gv_watchtowerRevealer;
int gv_revealerStatus;
int gv_captureTextTag;
fixed gv_watchtowercapturequantity;
fixed gv_watchtowercaptureconstant;
fixed gv_respawntimer;
playergroup gv_deadplayers;
fixed gv_platformHealingCoefficient;
fixed gv_minionUpgradeInterval;
timer gv_minionUpgradeTimer;
int gv_rSPNBox;
int gv_rSPNTimerNumberLabel;
int gv_rSPNTextLabel;
int gv_rSPNBoxWidth;
int gv_rSPNBoxHeight;
int gv_rSPNXOffset;
int gv_rSPNYOffset;
timer[9] gv_rSPNTimers;
int[3] gv_tMPTPointsBoxes;
int[3] gv_tMPTPointBoxBGs;
int[3] gv_tMPTPointBoxLabels;
int gv_tMPTMidBox;
int gv_tMPTTeamBoxWidth;
int gv_tMPTTeamBoxHeight;
int gv_tMPTTeamBoxXOffsetLeft;
int gv_tMPTTeamBoxXOffsetRight;
int gv_tMPTTeamBoxYOffset;
int gv_tMPTPointsLabelWidth;
int gv_tMPTPointsLabelHeight;
int gv_tMPTPointsLabelYOffset;
string gv_tMPTPointsLabelStyle;
int gv_tMPTMidBoxWidth;
int gv_tMPTMidBoxHeight;
int gv_tMPTMidBoxYOffset;
int gv_tMPTMidLabelWidth;
int gv_tMPTMidLabelHeight;
int gv_tMPTMidLabelYOffset;
string gv_tMPTMidLabelStyle;
int gv_championSelect;
int gv_cHSLHeaderLabel;
int[3][4] gv_playerBoxes;
int[3][4] gv_playerBoxLabels;
int[3][4] gv_playerBoxBackgrounds;
int[3][4] gv_playerPortraitImage;
int[3][4] gv_playerPortraitCheckmark;
int[3][4] gv_playerNames;
int[13] gv_heroButtons;
int[13] gv_heroIcons;
int[6] gv_heroAbilityButtons;
int[6] gv_heroAbilityButtonIcons;
int gv_timerDialog;
int gv_timerLabel;
int gv_lockinButton;
int gv_heroModelDialog;
int gv_heroModelItem;
int[16] gv_playerViewBoxID;
int gv_cHSLPlayerBoxHalf;
int gv_cCHSLPlayerLabelExtraWidthHalf;
int gv_cHSLPlayerLabelWidth;
int gv_cHSLPlayerLabelHeight;
int gv_cHSLPlayerPortraitInlayx;
int gv_cHSLPlayerPortraitInlayy;
int gv_cHSLPlayerCheckmarkInlayx;
int gv_cHSLPlayerCheckmarkInlayy;
fixed gv_cCHSLTimerDuration;
fixed gv_cCHSLTimerShortDuration;
timer gv_cCHSLTimer;
int gv_cCHSLTimerBeepstart;
bool gv_cCHSLTimerBeepstarted;
int gv_cCHSLTimerBoxWidthOffset;
int gv_cCHSLTimerBoxHeight;
int gv_cCHSLTimerBoxHeightOffset;
int gv_cCHSLTimerLabelWidth;
int gv_cCHSLTimerLabelHeight;
int gv_cHSLTimerLabelHeightOffset;
int gv_cHSLTimerLabelWidthOffset;
int gv_cHSLnHeroButtons;
int gv_cCHSLHeroButtonnCols;
int gv_cHSLHeroButtonnRows;
int gv_cHSLHeroButtonIconInlay;
int gv_cHSLAbilityButtonnCols;
int gv_cHSLAbilityButtonnRows;
int gv_cHSLAbilityButtonIconInlay;
int gv_cCHSLLockinButtonWidth;
int gv_cCHSLLockinButtonHeight;
int gv_cCHSLLockinButtonGap;
int gv_cCHSLHeroModelDialogWidth;
int gv_cCHSLHeroModelDialogGap;
int gv_cHSLHeroModelDialogHeight;
int gv_cCHSLHeroModelDialogExtraHeight;
int gv_cHSLHeroModelWidth;
int gv_cHSLHeroModelHeight;
int gv_cCHSLHeroModelBottomMargin;
int gv_cCHSLMiddleGapWidth;
int gv_nRows;
int gv_cCHSLHEIGHTBottomMargin;
int gv_cCHSLWIDTHHorizontalMargin;
int gv_cCHSLWIDTHPlayerBoxHorizontalGap;
int gv_cHSLWIDTHHeroButtons;
int gv_cCHSLWIDTHNewColPadding;
int gv_cCHSLHeaderLabelHeight;
int gv_cCHSLHeaderLabelWidth;
gs_AbilityButton[13][6] gv_abilityButton;
int gv_abilityButtonTicker;
gs_HeroButton[13] gv_heroButtonRecords;
int gv_numLockedInPlayers;
void InitGlobals () {
int init_i;
int init_j;
gv_wESTTEAM = GameAttributePlayersForTeam(1);
gv_eASTTEAM = GameAttributePlayersForTeam(2);
gv_humanPlayers = PlayerGroupEmpty();
gv_aRLaunchPylonbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PylonDamage", "Amount", 0);
gv_aRLaunchPylonratio = 0.5;
gv_aRPylonOverchargeattackbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PylonBasicAttackDamage", "Amount", 0);
gv_aRPylonOverchargeattackratio = 0.8;
gv_aRCleavebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "CleaveSpellDamage", "Amount", 0);
gv_aRCleaveratio = 0.75;
gv_aRPersonalWarpattackbase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "PersonalWarpAttack", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRPersonalWarpattackratio = 0.35;
gv_aRFluxclawsattackbase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "Fluxclaws", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRFluxclawsattackratio = 0.5;
gv_aRNutritiveVomitdirectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "VileBurstDamage", "Amount", 0);
gv_aRNutritiveVomitdirectratio = 0.75;
gv_aRNutritiveVomithealbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "VileBurstHeal", "VitalArray[" + IntToString(0) + "].Change", 0);
gv_aRNutritiveVomithealratio = 1.0;
gv_aRHookedTonguebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "HookedTonguesDamage", "Amount", 0);
gv_aRHookedTongueratio = 0.5;
gv_aRPouncebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PounceImpactDamage", "Amount", 0);
gv_aRPounceratio = 1.25;
gv_aRBombbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "BombDamage", "Amount", 0);
gv_aRBombratio = 0.5;
gv_aRSnipebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "SnipeDamage2", "Amount", 0);
gv_aRSniperatio = 0.75;
gv_aRThrowBanelingdirectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "ThrowBanelingDamage", "Amount", 0);
gv_aRThrowBanelingdirectratio = 1.0;
gv_aRThrowBanelingDoTbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "ThrowBanelingDoTDamage", "Amount", 0);
gv_aRThrowBanelingDoTratio = (0.75 / (1.0 / 0.25) / CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "AcidSpray", "Duration", 0));
gv_aRBileBlastdirectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "BileBlastDamage", "Amount", 0);
gv_aRBileBlastdirectratio = 0.8;
gv_aRBileBlastzerglingattackbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "SummonedZerglingClawsDamage", "Amount", 0);
gv_aRBileBlastzerglingattackratio = 0.1;
gv_aRCorruptreflectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "CorruptMissileDamage", "Amount", 0);
gv_aRCorruptreflectratio = 1.3;
gv_aRNydusWormdirectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "NydusWormDamage", "Amount", 0);
gv_aRNydusWormdirectratio = 1.75;
gv_aRNydusWormroachattackbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "BileBlastRoachNeedleSpines", "Amount", 0);
gv_aRNydusWormroachattackratio = 0.2;
gv_aRLightAspecthealbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "LightAspectHealAlly", "VitalArray[" + IntToString(0) + "].Change", 0);
gv_aRLightAspecthealratio = 1.0;
gv_aRTorpedobase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "TorpedoDamage", "Amount", 0);
gv_aRTorpedoratio = 1.0;
gv_aRDarkAspectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "DarkAspectDamage", "Amount", 0);
gv_aRDarkAspectratio = 1.2;
gv_aRGravityWellbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "GravityWellDamage", "Amount", 0);
gv_aRGravityWellratio = (1.0 / (1.0 / 0.25) / (CatalogFieldValueGetAsInt(c_gameCatalogEffect, "GravityWellPersistentDamageEnergy", "PeriodCount", c_playerAny) * 0.25));
gv_aRSeekerBeambase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "SeekerBeamDamage", "Amount", 0);
gv_aRSeekerBeamratio = 0.7;
gv_aRPurgedirectbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PurgeBaseDamage", "Amount", 0);
gv_aRPurgedirectratio = 0.75;
gv_aRPurgebonusbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PurgeBonusDamage", "Amount", 0);
gv_aRPurgebonusratio = 0.15;
gv_aRLongshockdamagebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "LongshockDamage", "Amount", 0);
gv_aRLongshockdamageratio = 0.5;
gv_aRElectricRazorbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "ElectricRazorDamageOutbound", "Amount", 0);
gv_aRElectricRazorratio = 1.0;
gv_playersnominimap = PlayerGroupEmpty();
gv_playerswithminimap = PlayerGroupAll();
gv_aRSnapperbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "SnapperDamage", "Amount", 0);
gv_aRSnapperratio = 0.75;
gv_aRRocketSentrybase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "RocketSentryImpactDamage", "Amount", 0);
gv_aRRocketSentryratio = 0.6;
gv_aRFirefistGroundbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "FirefistGroundDamage", "Amount", 0);
gv_aRFirefistGroundratio = 0.35;
gv_aRFirefistAirbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "FirefistFlyingDamage", "Amount", 0);
gv_aRFirefistAirratio = 1.2;
for (init_i = 0; init_i <= 8; init_i += 1) {
gv_screamerrange[init_i] = 7.0;
}
gv_screamerrangebonus = 0.35;
gv_screamerstartingrange = 9.0;
gv_aRPsionicStorminitialbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PsionicStormInitialDamageInitial", "Amount", 0);
gv_aRPsionicStorminitialratio = 1.0;
gv_aRPsionicStormDoTbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PsionicStormDamage", "Amount", 0);
gv_aRPsionicStormDoTratio = (1.0 / CatalogFieldValueGetAsInt(c_gameCatalogEffect, "PsionicStormInitialPersistent", "PeriodCount", 0));
gv_aRRepeaterLancebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "RepeaterLanceDamageOutbound", "Amount", 0);
gv_aRRepeaterLanceratio = 1.0;
gv_aRWildfireimpactbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "WildfireDamage", "Amount", 0);
gv_aRWildfireimpactratio = 1.0;
gv_aRWildfirebonusbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "WildfireBonusDamage", "Amount", 0);
gv_aRWildfirebonusratio = 1.0;
gv_aRForceFieldbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "ForceFieldInitialDamage", "Amount", 0);
gv_aRForceFieldratio = 0.2;
gv_aRBlueFlamebase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "BlueFlame", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRBlueFlameratio = 0.6;
gv_aRTurbobase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "TurboFireDamage", "Amount", 0);
gv_aRTurboratio = (1.0 / CatalogFieldValueGetAsInt(c_gameCatalogEffect, "TurboFireCreatePersistent", "PeriodCount", 0));
gv_aRNapalmSpraybase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "RacerMeleeSprayDamage", "Amount", 0);
gv_aRNapalmSprayratio = 0.3;
gv_aROilPuddlefirebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "OilPuddleIgnitedUnitDamage", "Amount", 0);
gv_aROilPuddlefireratio = (1.0 / (1.0 / 0.25) / CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "OilIgnited", "Duration", 0));
gv_aRTwingalebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "TradeWindsDamage", "Amount", 0);
gv_aRTwingaleratio = 1.0;
gv_aRGlacialTrailimpactbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "GlacialTrailImpactDamage", "Amount", 0);
gv_aRGlacialTrailimpactratio = 1.25;
gv_aRGlacialTrailDoTbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "GlacialTrailDamage", "Amount", 0);
gv_aRGlacialTrailDoTratio = (1.5 / (1.0 / 0.1) / (CatalogFieldValueGetAsInt(c_gameCatalogAbil, "GlacialTrail", "Range[" + IntToString(0) + "]", c_playerAny) / CatalogFieldValueGetAsInt(c_gameCatalogMover, "GlacialTrailWeapon", "MotionPhases[" + IntToString(0) + "].MaxSpeed", c_playerAny)));
gv_aRFrostbiteattackbase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "FrostbiteAttack", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRFrostbiteattackratio = 0.75;
gv_aRIcebreakerbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "IcebreakerDamage", "Amount", 0);
gv_aRIcebreakerratio = 1.25;
gv_aRThatawayattackbase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "CalledShotAttackBehavior", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRThatawayattackratio = 0.5;
gv_aRLungebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "LungeDamage", "Amount", 0);
gv_aRLungeratio = 0.75;
gv_aRGraviticStompbase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "GraviticStompSpellDamage", "Amount", 0);
gv_aRGraviticStompratio = 0.6;
gv_aRMaimattackbase = CatalogFieldValueGetAsInt(c_gameCatalogBehavior, "Maim", "Modification.DamageDealtScaled[" + IntToString(1) + "]", 0);
gv_aRMaimattackratio = 0.75;
gv_aRRadarMinebase = CatalogFieldValueGetAsInt(c_gameCatalogEffect, "RadarMineDamage", "Amount", 0);
gv_aRRadarMineratio = 0.9;
gv_maximumRadarMines = 3;
gv_siegeMinionWaveCurrent = 1;
gv_siegeMinionInterval = 3;
gv_minionSpawnInterval = 30.0;
gv_minionSpawnTimer = TimerCreate();
gv_jungleRespawnTime = 60;
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 4; init_j += 1) {
gv_jungleCamps[init_i][init_j] = UnitGroupEmpty();
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 4; init_j += 1) {
gv_jungleTimers[init_i][init_j] = TimerCreate();
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 4; init_j += 1) {
gv_jungleTimerTextBoxes[init_i][init_j] = c_textTagNone;
}
}
gv_jungleInitialDelay = 40;
gv_monsterUpgradeInterval = 60.0;
gv_monsterUpgradeTimer = TimerCreate();
gv_pointsSearchRadius = 15.0;
gv_pointValueBase = 100;
gv_casterModifier = -10;
gv_siegeModifier = 20;
gv_aIKillMultiplier = 0.5;
gv_heroKillPointValueBase = 1000;
gv_captureTextTag = c_textTagNone;
gv_watchtowercaptureconstant = 2.5;
gv_respawntimer = 10.0;
gv_deadplayers = PlayerGroupEmpty();
gv_platformHealingCoefficient = 0.008;
gv_minionUpgradeInterval = 180.0;
gv_minionUpgradeTimer = TimerCreate();
gv_rSPNBox = c_invalidDialogId;
gv_rSPNTimerNumberLabel = c_invalidDialogControlId;
gv_rSPNTextLabel = c_invalidDialogControlId;
gv_rSPNBoxWidth = 200;
gv_rSPNBoxHeight = 200;
gv_rSPNXOffset = 200;
gv_rSPNYOffset = 200;
for (init_i = 0; init_i <= 8; init_i += 1) {
gv_rSPNTimers[init_i] = TimerCreate();
}
for (init_i = 0; init_i <= 2; init_i += 1) {
gv_tMPTPointsBoxes[init_i] = c_invalidDialogId;
}
for (init_i = 0; init_i <= 2; init_i += 1) {
gv_tMPTPointBoxBGs[init_i] = c_invalidDialogControlId;
}
for (init_i = 0; init_i <= 2; init_i += 1) {
gv_tMPTPointBoxLabels[init_i] = c_invalidDialogControlId;
}
gv_tMPTMidBox = c_invalidDialogId;
gv_tMPTTeamBoxWidth = 200;
gv_tMPTTeamBoxHeight = 80;
gv_tMPTTeamBoxXOffsetLeft = -100;
gv_tMPTTeamBoxXOffsetRight = (gv_tMPTTeamBoxXOffsetLeft * -1);
gv_tMPTTeamBoxYOffset = -460;
gv_tMPTPointsLabelWidth = 150;
gv_tMPTPointsLabelHeight = 75;
gv_tMPTPointsLabelYOffset = -10;
gv_tMPTPointsLabelStyle = "ModCenterSize20Bold";
gv_tMPTMidBoxWidth = 275;
gv_tMPTMidBoxHeight = 90;
gv_tMPTMidBoxYOffset = -515;
gv_tMPTMidLabelWidth = 190;
gv_tMPTMidLabelHeight = 85;
gv_tMPTMidLabelYOffset = -10;
gv_tMPTMidLabelStyle = "ModCenterSize20Bold";
gv_championSelect = c_invalidDialogId;
gv_cHSLHeaderLabel = c_invalidDialogControlId;
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerBoxes[init_i][init_j] = c_invalidDialogId;
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerBoxLabels[init_i][init_j] = c_invalidDialogControlId;
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerBoxBackgrounds[init_i][init_j] = c_invalidDialogControlId;
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerPortraitImage[init_i][init_j] = c_invalidDialogControlId;
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerPortraitCheckmark[init_i][init_j] = c_invalidDialogControlId;
}
}
for (init_i = 0; init_i <= 2; init_i += 1) {
for (init_j = 0; init_j <= 3; init_j += 1) {
gv_playerNames[init_i][init_j] = c_invalidDialogControlId;
}
}
for (init_i = 0; init_i <= 12; init_i += 1) {
gv_heroButtons[init_i] = c_invalidDialogControlId;
}
for (init_i = 0; init_i <= 12; init_i += 1) {
gv_heroIcons[init_i] = c_invalidDialogControlId;
}
for (init_i = 0; init_i <= 5; init_i += 1) {
gv_heroAbilityButtons[init_i] = c_invalidDialogControlId;
}
for (init_i = 0; init_i <= 5; init_i += 1) {
gv_heroAbilityButtonIcons[init_i] = c_invalidDialogControlId;
}
gv_timerDialog = c_invalidDialogId;
gv_timerLabel = c_invalidDialogControlId;
gv_lockinButton = c_invalidDialogControlId;
gv_heroModelDialog = c_invalidDialogId;
gv_heroModelItem = c_invalidDialogControlId;
gv_cHSLPlayerBoxHalf = (gv_cCHSLPlayerBoxSize / 2);
gv_cCHSLPlayerLabelExtraWidthHalf = (gv_cCHSLPlayerLabelExtraWidth / 2);
gv_cHSLPlayerLabelWidth = (gv_cCHSLPlayerBoxSize + gv_cCHSLPlayerLabelExtraWidth);
gv_cHSLPlayerLabelHeight = 30;
gv_cHSLPlayerPortraitInlayx = ((gv_cCHSLPlayerBoxSize / 2) - (gv_cCHSLPlayerPortraitWidth / 2));
gv_cHSLPlayerPortraitInlayy = ((gv_cCHSLPlayerBoxSize / 2) - (gv_cCHSLPlayerPortraitHeight / 2));
gv_cHSLPlayerCheckmarkInlayx = ((gv_cCHSLPlayerBoxSize / 2) - (gv_cCHSLPlayerCheckmarkWidth / 2));
gv_cHSLPlayerCheckmarkInlayy = ((gv_cCHSLPlayerBoxSize / 2) - (gv_cCHSLPlayerCheckmarkHeight / 2));
gv_cCHSLTimerDuration = 90.0;
gv_cCHSLTimerShortDuration = 11.0;
gv_cCHSLTimer = TimerCreate();
gv_cCHSLTimerBeepstart = 10;
gv_cCHSLTimerBoxWidthOffset = 50;
gv_cCHSLTimerBoxHeight = 140;
gv_cCHSLTimerLabelWidth = 160;
gv_cCHSLTimerLabelHeight = 100;
gv_cHSLTimerLabelHeightOffset = -12;
gv_cHSLnHeroButtons = 1;
gv_cCHSLHeroButtonnCols = 6;
gv_cHSLHeroButtonnRows = 2;
gv_cHSLHeroButtonIconInlay = ((gv_cCHSLHeroButtonSize / 2) - (gv_cCHSLHeroButtonIconSize / 2));
gv_cHSLAbilityButtonnCols = 5;
gv_cHSLAbilityButtonnRows = 1;
gv_cHSLAbilityButtonIconInlay = ((gv_cCHSLAbilityButtonSize / 2) - (gv_cCHSLAbilityButtonIconSize / 2));
gv_cCHSLLockinButtonWidth = (gv_cCHSLAbilityButtonSize + gv_cCHSLAbilityButtonSize + gv_cCHSLAbilityButtonExtra);
gv_cCHSLLockinButtonHeight = 100;
gv_cCHSLLockinButtonGap = 6;
gv_cCHSLHeroModelDialogWidth = (gv_cCHSLAbilityButtonSize + gv_cCHSLAbilityButtonSize + gv_cCHSLAbilityButtonSize + gv_cCHSLAbilityButtonExtra + gv_cCHSLAbilityButtonExtra);
gv_cCHSLHeroModelDialogGap = 52;
gv_cHSLHeroModelDialogHeight = ((gv_cCHSLHeaderHeight + gv_cCHSLHeaderGap + (gv_cCHSLPlayerBoxSize * gv_cCHSLPlayerBoxnRows) + (gv_cHSLPlayerLabelHeight * gv_cCHSLPlayerBoxnRows) + gv_cCHSLHEIGHTBottomMargin) - (gv_cCHSLHeaderHeight + gv_cCHSLHeaderGap + (gv_cCHSLHeroButtonSize * gv_cHSLHeroButtonnRows) + gv_cCHSLHeroModelDialogGap + gv_cCHSLHeroModelDialogGap + gv_cCHSLAbilityButtonSize + gv_cCHSLHEIGHTBottomMargin + gv_cCHSLHeroModelDialogExtraHeight));
gv_cCHSLHeroModelDialogExtraHeight = 120;
gv_cHSLHeroModelWidth = (gv_cCHSLHeroModelDialogWidth * 2);
gv_cHSLHeroModelHeight = (gv_cHSLHeroModelDialogHeight * 2);
gv_cCHSLHeroModelBottomMargin = 20;
gv_cCHSLMiddleGapWidth = ((gv_cCHSLHeroButtonSize * gv_cCHSLHeroButtonnCols) + (gv_cCHSLHeroButtonExtra * (gv_cCHSLHeroButtonnCols - 1)) + (gv_cCHSLPlayerBoxExtra * 2));
gv_nRows = FixedToInt(Ceiling((gv_cHSLnHeroButtons / gv_cCHSLHeroButtonnCols)));
gv_cCHSLHEIGHTBottomMargin = 80;
gv_cCHSLWIDTHHorizontalMargin = 60;
gv_cCHSLWIDTHPlayerBoxHorizontalGap = 40;
gv_cHSLWIDTHHeroButtons = ((gv_cCHSLHeroButtonnCols * gv_cCHSLHeroButtonSize) + (gv_cCHSLHeroButtonExtra * (gv_cCHSLHeroButtonnCols - 1)));
gv_cCHSLWIDTHNewColPadding = 5;
gv_cCHSLHeaderLabelHeight = gv_cCHSLHeaderHeight;
gv_cCHSLHeaderLabelWidth = gv_cCHSLMiddleGapWidth;
gv_abilityButtonTicker = 1;
for (init_i = 0; init_i <= 12; init_i += 1) {
gv_heroButtonRecords[init_i].lv_previewCamera = "Star2CameraLow05";
}
}
//--------------------------------------------------------------------------------------------------
// Global Function Declarations
//--------------------------------------------------------------------------------------------------
void gf_UpdateAnaniasAPvalues (int lp_player);
void gf_UpdateBenguraAPvalues (int lp_player);
void gf_UpdateBrookeAPvalues (int lp_player);
void gf_UpdateDamaskAPvalues (int lp_player);
void gf_UpdateFenixAPvalues (int lp_player);
void gf_UpdateHerodAPvalues (int lp_player);
void gf_UpdateJordanAPvalues (int lp_player);
void gf_UpdateMelchiorAPvalues (int lp_player);
void gf_UpdateNilesAPvalues (int lp_player);
void gf_UpdateKaineAPvalues (int lp_player);
void gf_UpdateTheTorrasqueAPvalues (int lp_player);
void gf_UpdateSilasAPvalues (int lp_player);
void gf_UpdateallAPvalues (int lp_player);
unitgroup gf_SpawnJungleCamp (int lp_side, int lp_monster);
void gf_CheckJungleCamp (int lp_side, int lp_monster, point lp_dyingmonsterpoint);
void gf_CreateJungleTextTag (playergroup lp_players, int lp_side, int lp_monster);
void gf_MaintainJungleTextTag (int lp_texttag, timer lp_timer);
int gf_GetPointValue (unit lp_dyingunit, unit lp_killingunit, int lp_killerowner);
void gf_CreatePointsTextTag (point lp_location, int lp_killerowner, int lp_amountofpoints, unit lp_dyingunit);
void gf_PointsTextTagLife (int lp_texttag);
void gf_RespawnBoxCreate ();
void gf_TeamPointsDialogsCreate ();
string gf_ConvertIntegerToStringWithCommas (int lp_number);
int gf_PlayerNumbertoPlayerTeam (int lp_player);
int gf_PlayerNumbertoPlayerTeamIndex (int lp_player);
int gf_PlayerTeamIndextoPlayerNumber (int lp_team, int lp_index);
void gf_CreateAbilityButton (string lp_image, text lp_tooltipText, text lp_abilityName, int lp_heroID);
void gf_InitializeAbilityButtons (string lp_heroUnitType);
void gf_CreateHeroButton (string lp_unitType, string lp_icon, text lp_tooltip, string lp_previewUnitType, string lp_previewCamera);
void gf_InitializeHeroButtons ();
int gf_DialogItemtoHeroButtonID (int lp_dialogItemUsed);
void gf_BeginCHSLTimer ();
void gf_ChampionSelectDialogCreate ();
void gf_HideSCUI ();
//--------------------------------------------------------------------------------------------------
// Trigger Variables
//--------------------------------------------------------------------------------------------------
trigger gt_InitializeHumanPlayersGroup;
trigger gt_InitializeSpawnPoints;
trigger gt_effecttargetdebugging;
trigger gt_debugoptions;
trigger gt_debugvideomode;
trigger gt_debugabilitycooldowns;
trigger gt_PylonLimit;
trigger gt_resetbomb;
trigger gt_resetsnipe;
trigger gt_resetdart;
trigger gt_Summonroaches;
trigger gt_jammerminimapdisable;
trigger gt_jammerminimapreenable;
trigger gt_jammerreenableperiodiccheck;
trigger gt_longshockcooldownfix;
trigger gt_purge;
trigger gt_burrowcooldown;
trigger gt_limitto1;
trigger gt_takeoffvisionheight;
trigger gt_takeoffvisionheightoff;
trigger gt_screamerrangedefault;
trigger gt_screamerrangeincrease;
trigger gt_screamerrangedecrease;
trigger gt_RepeaterLanceCooldownReset;
trigger gt_WildPowerChanges;
trigger gt_WildfireDistanceCalc;
trigger gt_WildfireLaunch;
trigger gt_WildfireImpact;
trigger gt_MomentumPreserver;
trigger gt_AgainResets;
trigger gt_DisguiseDeselect;
trigger gt_DisguiseReselect;
trigger gt_DisguiseRecolorMinionBars;
trigger gt_TurretBehaviorFix;
trigger gt_EnforceMineCounts;
trigger gt_SpyCloakCooldownFix;
trigger gt_CloakChargeCost;
trigger gt_BasicForwarding;
trigger gt_minionspawnpointassignments;
trigger gt_minionwaves;
trigger gt_InitialJungleSpawn;
trigger gt_JungleDeathResponse;
trigger gt_JungleLeash;
trigger gt_MonsterUpgrades;
trigger gt_PointDeathResponse;
trigger gt_HeroDeathResponse;
trigger gt_HeroKillTag;
trigger gt_UpdatePowerPoints;
trigger gt_revealerinit;
trigger gt_captureperiodic;
trigger gt_revealerperiodic;
trigger gt_WestTopOuterInner;
trigger gt_WestTopInnerInhibT;
trigger gt_WestTopInhibTInhib;
trigger gt_WestBotOuterInner;
trigger gt_WestBotInnerInhibT;
trigger gt_WestBotInhibTInhib;
trigger gt_WestInhibsNexusT;
trigger gt_WestNexusTNexus;
trigger gt_EastTopOuterInner;
trigger gt_EastTopInnerInhibT;
trigger gt_EastTopInhibTInhib;
trigger gt_EastBotOuterInner;
trigger gt_EastBotInnerInhibT;
trigger gt_EastBotInhibTInhib;
trigger gt_EastInhibsNexusT;
trigger gt_EastNexusTNexus;
trigger gt_WestNexusdies;
trigger gt_EastNexusdies;
trigger gt_IncrementRespawnTimer;
trigger gt_DeathResponseIngame;
trigger gt_DeathResponseUI;
trigger gt_UpdateBoxText;
trigger gt_RespawnResponse;
trigger gt_PlatformHealing;
trigger gt_InitialBuildingInvulnerability;
trigger gt_WestTurretBehavior;
trigger gt_EastTurretBehavior;
trigger gt_TurretDeath;
trigger gt_MinionUpgrades;
trigger gt_Recall;
trigger gt_TeamPointsUpdateText;
trigger gt_HeroButtonResponse;
trigger gt_LockinButtonResponse;
trigger gt_UpdateCHSLTimer;
trigger gt_TimerBeeps;
trigger gt_GameInitialization;
trigger gt_ChampSelectEnding;
//--------------------------------------------------------------------------------------------------
// Global Functions
//--------------------------------------------------------------------------------------------------
void gf_UpdateAnaniasAPvalues (int lp_player) {
// Variable Declarations
fixed lv_launchpylon;
fixed lv_pylonovercharge;
fixed lv_personalwarp;
fixed lv_cleave;
// Variable Initialization
lv_launchpylon = (gv_aRLaunchPylonbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRLaunchPylonratio));
lv_pylonovercharge = (gv_aRPylonOverchargeattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPersonalWarpattackratio));
lv_personalwarp = (gv_aRPersonalWarpattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPersonalWarpattackratio));
lv_cleave = (gv_aRCleavebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRCleaveratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "PylonDamage", "Amount", lp_player, FixedToString(lv_launchpylon, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "PylonBasicAttackDamage", "Amount", lp_player, FixedToString(lv_pylonovercharge, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogBehavior, "PersonalWarpAttack", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_personalwarp, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "CleaveSpellDamage", "Amount", lp_player, FixedToString(lv_cleave, c_fixedPrecisionAny));
}
void gf_UpdateBenguraAPvalues (int lp_player) {
// Variable Declarations
fixed lv_fluxclaws;
fixed lv_nutritivevomitdamage;
fixed lv_nutritivevomitheal;
fixed lv_hookedtongue;
fixed lv_pounce;
// Variable Initialization
lv_fluxclaws = (gv_aRFluxclawsattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRFluxclawsattackratio));
lv_nutritivevomitdamage = (gv_aRNutritiveVomitdirectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRNutritiveVomitdirectratio));
lv_nutritivevomitheal = (gv_aRNutritiveVomithealbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRNutritiveVomithealratio));
lv_hookedtongue = (gv_aRHookedTonguebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRHookedTongueratio));
lv_pounce = (gv_aRPouncebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPounceratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogBehavior, "Fluxclaws", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_fluxclaws, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "VileBurstDamage", "Amount", lp_player, FixedToString(lv_nutritivevomitdamage, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "VileBurstHeal", "VitalArray[" + IntToString(0) + "].Change", lp_player, FixedToString(lv_nutritivevomitheal, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "HookedTonguesDamage", "Amount", lp_player, FixedToString(lv_hookedtongue, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "PounceImpactDamage", "Amount", lp_player, FixedToString(lv_pounce, c_fixedPrecisionAny));
}
void gf_UpdateBrookeAPvalues (int lp_player) {
// Variable Declarations
fixed lv_bomb;
fixed lv_snipe;
// Variable Initialization
lv_bomb = (gv_aRBombbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRBombratio));
lv_snipe = (gv_aRSnipebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRSniperatio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "BombDamage", "Amount", lp_player, FixedToString(lv_bomb, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "SnipeDamage2", "Amount", lp_player, FixedToString(lv_snipe, c_fixedPrecisionAny));
}
void gf_UpdateDamaskAPvalues (int lp_player) {
// Variable Declarations
fixed lv_throwbanelingdirect;
fixed lv_throwbanelingdot;
fixed lv_bileblastdirect;
fixed lv_bileblastzerglingattack;
fixed lv_corruptreflect;
fixed lv_nyduswormdirect;
fixed lv_nyduswormroachattack;
// Variable Initialization
lv_throwbanelingdirect = (gv_aRThrowBanelingdirectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRThrowBanelingdirectratio));
lv_throwbanelingdot = (gv_aRThrowBanelingDoTbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRThrowBanelingDoTratio));
lv_bileblastdirect = (gv_aRBileBlastdirectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRBileBlastdirectratio));
lv_bileblastzerglingattack = (gv_aRBileBlastzerglingattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRBileBlastzerglingattackratio));
lv_corruptreflect = (gv_aRCorruptreflectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRCorruptreflectratio));
lv_nyduswormdirect = (gv_aRNydusWormdirectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRNydusWormdirectratio));
lv_nyduswormroachattack = (gv_aRNydusWormroachattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRNydusWormroachattackratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "ThrowBanelingDamage", "Amount", lp_player, FixedToString(lv_throwbanelingdirect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "ThrowBanelingDoTDamage", "Amount", lp_player, FixedToString(lv_throwbanelingdot, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "BileBlastDamage", "Amount", lp_player, FixedToString(lv_bileblastdirect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "SummonedZerglingClawsDamage", "Amount", lp_player, FixedToString(lv_bileblastzerglingattack, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "CorruptMissileDamage", "Amount", lp_player, FixedToString(lv_corruptreflect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "NydusWormDamage", "Amount", lp_player, FixedToString(lv_nyduswormdirect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "BileBlastRoachNeedleSpines", "Amount", lp_player, FixedToString(lv_nyduswormroachattack, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "BileBlastRoachNeedleSpinesMelee", "Amount", lp_player, FixedToString(lv_nyduswormroachattack, c_fixedPrecisionAny));
}
void gf_UpdateFenixAPvalues (int lp_player) {
// Variable Declarations
fixed lv_lightaspectheal;
fixed lv_torpedo;
fixed lv_darkaspect;
fixed lv_gravitywell;
fixed lv_seekerbeam;
// Variable Initialization
lv_lightaspectheal = (gv_aRLightAspecthealbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRLightAspecthealratio));
lv_torpedo = (gv_aRTorpedobase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRTorpedoratio));
lv_darkaspect = (gv_aRDarkAspectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRDarkAspectratio));
lv_gravitywell = (gv_aRGravityWellbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRGravityWellratio));
lv_seekerbeam = (gv_aRSeekerBeambase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRSeekerBeamratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "LightAspectHealAlly", "VitalArray[" + IntToString(0) + "].Change", lp_player, FixedToString(lv_lightaspectheal, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "LightAspectHealSelf", "VitalArray[" + IntToString(0) + "].Change", lp_player, FixedToString(lv_lightaspectheal, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "TorpedoDamage", "Amount", lp_player, FixedToString(lv_torpedo, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "DarkAspectDamage", "Amount", lp_player, FixedToString(lv_darkaspect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "GravityWellDamage", "Amount", lp_player, FixedToString(lv_gravitywell, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "SeekerBeamDamage", "Amount", lp_player, FixedToString(lv_seekerbeam, c_fixedPrecisionAny));
}
void gf_UpdateHerodAPvalues (int lp_player) {
// Variable Declarations
fixed lv_purgedirect;
fixed lv_purgebonus;
fixed lv_longshock;
fixed lv_electricrazor;
// Variable Initialization
lv_purgedirect = (gv_aRPurgedirectbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPurgedirectratio));
lv_purgebonus = (gv_aRPurgebonusbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPurgebonusratio));
lv_longshock = (gv_aRLongshockdamagebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRLongshockdamageratio));
lv_electricrazor = (gv_aRElectricRazorbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRElectricRazorratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "PurgeBaseDamage", "Amount", lp_player, FixedToString(lv_purgedirect, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "PurgeBonusDamage", "Amount", lp_player, FixedToString(lv_purgebonus, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "LongshockDamage", "Amount", lp_player, FixedToString(lv_longshock, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "ElectricRazorDamageOutbound", "Amount", lp_player, FixedToString(lv_electricrazor, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "ElectricRazorDamageInbound", "Amount", lp_player, FixedToString(lv_electricrazor, c_fixedPrecisionAny));
}
void gf_UpdateJordanAPvalues (int lp_player) {
// Variable Declarations
fixed lv_snapper;
fixed lv_rocketsentry;
fixed lv_firefistground;
fixed lv_firefistair;
// Variable Initialization
lv_snapper = (gv_aRSnapperbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRSnapperratio));
lv_rocketsentry = (gv_aRRocketSentrybase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRSnapperratio));
lv_firefistground = (gv_aRFirefistGroundbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRFirefistGroundratio));
lv_firefistair = (gv_aRFirefistAirbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRFirefistAirratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "SnapperDamage", "Amount", lp_player, FixedToString(lv_snapper, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "SnapperDamage2", "Amount", lp_player, FixedToString(lv_snapper, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "RocketSentryImpactDamage", "Amount", lp_player, FixedToString(lv_rocketsentry, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "FirefistGroundDamage", "Amount", lp_player, FixedToString(lv_firefistground, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "FirefistFlyingDamage", "Amount", lp_player, FixedToString(lv_firefistair, c_fixedPrecisionAny));
}
void gf_UpdateMelchiorAPvalues (int lp_player) {
// Variable Declarations
fixed lv_psionicstorminitial;
fixed lv_psionicstormdot;
fixed lv_repeaterlance;
fixed lv_wildfireinitial;
fixed lv_wildfirebonus;
fixed lv_forcefield;
// Variable Initialization
lv_psionicstorminitial = (gv_aRPsionicStorminitialbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPsionicStorminitialratio));
lv_psionicstormdot = (gv_aRPsionicStormDoTbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRPsionicStormDoTratio));
lv_repeaterlance = (gv_aRRepeaterLancebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRRepeaterLanceratio));
lv_wildfireinitial = (gv_aRWildfireimpactbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRWildfireimpactratio));
lv_wildfirebonus = (gv_aRWildfirebonusbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRWildfirebonusratio));
lv_forcefield = (gv_aRForceFieldbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRForceFieldratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "PsionicStormInitialDamageInitial", "Amount", lp_player, FixedToString(lv_psionicstorminitial, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "PsionicStormDamage", "Amount", lp_player, FixedToString(lv_psionicstormdot, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "RepeaterLanceDamageOutbound", "Amount", lp_player, FixedToString(lv_repeaterlance, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "RepeaterLanceDamageInbound", "Amount", lp_player, FixedToString(lv_repeaterlance, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "WildfireDamage", "Amount", lp_player, FixedToString(lv_wildfireinitial, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "WildfireBonusDamage", "Amount", lp_player, FixedToString(lv_wildfirebonus, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "ForceFieldInitialDamage", "Amount", lp_player, FixedToString(lv_forcefield, c_fixedPrecisionAny));
}
void gf_UpdateNilesAPvalues (int lp_player) {
// Variable Declarations
fixed lv_blueflame;
fixed lv_turbo;
fixed lv_napalmspray;
fixed lv_oilpuddle;
// Variable Initialization
lv_blueflame = (gv_aRBlueFlamebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRBlueFlameratio));
lv_turbo = (gv_aRTurbobase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRTurboratio));
lv_napalmspray = (gv_aRNapalmSpraybase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRNapalmSprayratio));
lv_oilpuddle = (gv_aROilPuddlefirebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aROilPuddlefireratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogBehavior, "BlueFlame", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_blueflame, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogBehavior, "BlueFlame", "Modification.DamageDealtScaled[" + IntToString(2) + "]", lp_player, FixedToString(lv_blueflame, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "TurboFireDamage", "Amount", lp_player, FixedToString(lv_turbo, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "RacerMeleeSprayDamage", "Amount", lp_player, FixedToString(lv_napalmspray, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "OilPuddleIgnitedUnitDamage", "Amount", lp_player, FixedToString(lv_oilpuddle, c_fixedPrecisionAny));
}
void gf_UpdateKaineAPvalues (int lp_player) {
// Variable Declarations
fixed lv_twingale;
fixed lv_glacialtrailimpact;
fixed lv_glacialtraildot;
fixed lv_frostbite;
fixed lv_icebreaker;
// Variable Initialization
lv_twingale = (gv_aRTwingalebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRTwingaleratio));
lv_glacialtrailimpact = (gv_aRGlacialTrailimpactbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRGlacialTrailimpactratio));
lv_glacialtraildot = (gv_aRGlacialTrailDoTbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRGlacialTrailDoTratio));
lv_frostbite = (gv_aRFrostbiteattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRFrostbiteattackratio));
lv_icebreaker = (gv_aRIcebreakerbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRIcebreakerratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "TradeWindsDamage", "Amount", lp_player, FixedToString(lv_twingale, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "GlacialTrailImpactDamage", "Amount", lp_player, FixedToString(lv_glacialtrailimpact, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "GlacialTrailDamage", "Amount", lp_player, FixedToString(lv_glacialtraildot, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogBehavior, "FrostbiteAttack", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_frostbite, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogBehavior, "FrostbiteAttack", "Modification.DamageDealtScaled[" + IntToString(2) + "]", lp_player, FixedToString(lv_frostbite, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "IcebreakerDamage", "Amount", lp_player, FixedToString(lv_icebreaker, c_fixedPrecisionAny));
}
void gf_UpdateTheTorrasqueAPvalues (int lp_player) {
// Variable Declarations
fixed lv_lunge;
fixed lv_graviticstomp;
fixed lv_thataway;
// Variable Initialization
lv_lunge = (gv_aRLungebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRLungeratio));
lv_graviticstomp = (gv_aRGraviticStompbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRGraviticStompratio));
lv_thataway = (gv_aRThatawayattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRThatawayattackratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogEffect, "LungeDamage", "Amount", lp_player, FixedToString(lv_lunge, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "GraviticStompSpellDamage", "Amount", lp_player, FixedToString(lv_graviticstomp, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogBehavior, "CalledShotAttackBehavior", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_thataway, c_fixedPrecisionAny));
}
void gf_UpdateSilasAPvalues (int lp_player) {
// Variable Declarations
fixed lv_maim;
fixed lv_radarmine;
// Variable Initialization
lv_maim = (gv_aRMaimattackbase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRMaimattackratio));
lv_radarmine = (gv_aRRadarMinebase + (UnitBehaviorCount(gv_playerChampions[lp_player], "AddPowerPoints") * gv_aRRadarMineratio));
// Implementation
CatalogFieldValueSet(c_gameCatalogBehavior, "Maim", "Modification.DamageDealtScaled[" + IntToString(1) + "]", lp_player, FixedToString(lv_maim, c_fixedPrecisionAny));
CatalogFieldValueSet(c_gameCatalogEffect, "RadarMineDamage", "Amount", lp_player, FixedToString(lv_radarmine, c_fixedPrecisionAny));
}
void gf_UpdateallAPvalues (int lp_player) {
// Implementation
gf_UpdateAnaniasAPvalues(lp_player);
gf_UpdateBenguraAPvalues(lp_player);
gf_UpdateBrookeAPvalues(lp_player);
gf_UpdateDamaskAPvalues(lp_player);
gf_UpdateFenixAPvalues(lp_player);
gf_UpdateHerodAPvalues(lp_player);
gf_UpdateJordanAPvalues(lp_player);
gf_UpdateMelchiorAPvalues(lp_player);
gf_UpdateNilesAPvalues(lp_player);
gf_UpdateKaineAPvalues(lp_player);
gf_UpdateTheTorrasqueAPvalues(lp_player);
gf_UpdateSilasAPvalues(lp_player);
}